Piotr Opublikowano 26 Kwietnia 2012 Udostępnij Opublikowano 26 Kwietnia 2012 Browser-Based Massively Multiplayer Online Game Tytuł: Demo Technologiczne (DT).Opis: Test protokołu sieciowego. Własna implementacja protokołu P2P dla przeglądarek internetowych. Wygląda jak podstawa pod grę RPG Online. Prawdopobnie projekt pójdzie w tym kierunku, ale to zależy przyszłego teamu. Jest to pierwsza wersja protokołu, więc pewnie wyjdą na wierzch błędy i o to chodzi. Dostępny jest chat oraz plansza do zwiedzania. W czasie gry wszyscy gracze znajdują na tej samej planszy. Piszemy wiadomości na klawiaturze, a myszką zwiedzamy mapę. Protokół jest wielowarstwowy, korzysta z trackera, który przechowuje adresy podłączonych graczy. Dane są przesyłane od przeglądarki do przeglądarki, nie obciążają serwera, podobnie jak w torrentach. Wymagania odnośnie PC: Dwurdzeniowy procesor, zaktualizowana przeglądarka. Polecam Chrome, IE 9. Osobiście Firefoxa używam. Na Safari gra działa niestabilnie i prędzej czy później zakończy się wysypaniem przeglądarki. Muzyką i grafiką proszę się nie sugerować, bo nie jest to cel prezentacji. W wolnym czasie zostanie ona zastąpiona. Dźwięki dotyczące ruchu są dodane w celach testowych (sprawdzałem czy kanały się miksują, zmienia się odległość od źródła itp). Odgłosy pozostałych graczy są domyślnie wyłączone.Link: strona z grą onlineAutorzy: Programowanie: Piotr.Grafika: David Gervais (Creative Commons license). Pomocnicy: Mateusz (Tester, być może przyszły tile mapper).Screeny: Poszukuję chętnych do wzięcia udziału w tworzeniu gry w oparciu o ten protokół sieciowy. Ewentualnie mogę zostać wcielony do komercyjnego studia, ale tylko na tym etapie. Jak już zbiorę zespół nie przyjmę takiej propozycji. Nie udzielam informacji osobom, które nie są zainteresowane udziałem w projekcie. Chętnie przyjmę do projektu osoby: - posiadające dużo chęci - komunikatywne przynajmniej raz w tygodniu, przynajmniej żeby poinformować nad czym pracują. W szczególności będą potrzebne: - osoby układające mapy z gotowych zestawów grafiki. - koderzy do pisania skryptów - funkcji (głównie w GML). Każdy programista będzie pisał w miarę niezależnie grupy współpracujących funkcji. - graficy i muzycy są zawsze mile widziani choć nie są wymagani do projektu Gdyby zebrała się większa grupa osób wyznaczę osoby koordynujące, tak aby dana grupa wiedziała do kogo się zwracać z pytaniami. Najważniejsze komendy konsoli:start - wymusza rozpoczęcie gry, nawet gdy nie ma graczy./name NICK - zmiana nicku np: /name Piotr./kolor ANGIELSKA_NAZWA - zmiana koloru postaci np: /kolor white./exit - jest to prawidłowe opuszczenie gry, w przeciwnym przypadku peery decydują o usunięciu gracza z trackera./w - pomaga wpisać polecenie lub wiadomości do innych graczy, umożliwia używanie polskich znaków. [Przez bugi w GM STUDIO BETA nie działa poprawnie wykrywanie klawisza ALT pod HTML5, stąd w konsoli nie można używać polskich znaków]/fps - wyświetla w prawym górnym rogu ilość klatek na sekundę. Max to 30. Jeżeli wartość jest poniżej 20 to oznacza, że mamy za słaby sprzęt./music - włącza i wyłącza muzykę./dzwiek chodzenia - wyłącza odgłos tupania przy ruchu postaci./dzwiek otoczenia - włącza wykrywanie odgłosu chodzenia pozostałych graczy. (Dźwięki na razie prawidłowo działają na przeglądarce Chrome) Klawiszologia: - myszka, klikamy lewym przyciskiem myszy na planszy aby ruszyć naszą postacią. - klawiszem Escape i Tab rozszerzamy i chowamy konsole. - klawisz Enter służy do wysłania polecenia/wiadomości. Ogólnie potencjał jest olbrzymi z p2p można tworzyć gry na setki graczy online, modyfikując odpowiednio topologie sieci. Co do szczegółów przyszłego projektu to wszystko jest na razie do ustalenia. Pozdrawiam, Piotr Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
karolo320 Opublikowano 26 Kwietnia 2012 Udostępnij Opublikowano 26 Kwietnia 2012 Nie odnaleziono adresu Firefox nie może odnaleźć serwera adventure.somee.com. Wymagania odnośnie PC: Dwurdzeniowy procesor :( Dane są przesyłane od przeglądarki do przeglądarki, nie obciążają serwera, podobnie jak w torrentach. czy to znaczy, ze bede wysylal 3 bity na klatke do kazdego gracza, ktory jest online? e:juz odnajduje serwer Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Piotr Opublikowano 26 Kwietnia 2012 Autor Udostępnij Opublikowano 26 Kwietnia 2012 Nie odnaleziono adresu Firefox nie może odnaleźć serwera adventure.somee.com. Nawet przez proxy działa, więc nie powinno być z tym problemu. czy to znaczy, ze bede wysylal 3 bity na klatke do kazdego gracza, ktory jest online? Każdy jest tu serwerem, wysyłasz dane do wszystkich graczy jednocześnie. Można to zmodyfikować na różne warianty, że gracze o szybszym łączu wysyłają dane od tych ze słabszym itd. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 26 Kwietnia 2012 Udostępnij Opublikowano 26 Kwietnia 2012 Ale jakiś main server musi chyba być, no bo gdzie by się miały zapisywać dane graczy. Wgl wytłumacz jak to działa bo się nie znam :D Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
karolo320 Opublikowano 26 Kwietnia 2012 Udostępnij Opublikowano 26 Kwietnia 2012 z tego co obliczylem to moj upload siadłby gdyby na serwerze było >70 graczy :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Piotr Opublikowano 26 Kwietnia 2012 Autor Udostępnij Opublikowano 26 Kwietnia 2012 Ale jakiś main server musi chyba być, no bo gdzie by się miały zapisywać dane graczy. No właśnie na razie się nie zapisują :jezor:. Potem się oczywiście zrobi połączenie do bazy danych w celu zapisywania stanów gry. Demo obejmuje test protokołu sieciowego, a nie właściwej gry. Gra prawdopodobnie będzie zupełnie inaczej wyglądała. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
I am Lord Opublikowano 26 Kwietnia 2012 Udostępnij Opublikowano 26 Kwietnia 2012 Weź tam wstaw info o liczbie połączonych osób. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Tymon Opublikowano 26 Kwietnia 2012 Udostępnij Opublikowano 26 Kwietnia 2012 Strasznie duże różnice w komunikacji między klient-klient. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Piotr Opublikowano 26 Kwietnia 2012 Autor Udostępnij Opublikowano 26 Kwietnia 2012 Protokół nie jest jeszcze zoptymalizowany, wysyła tyle danych ile zdoła w 30 klatkach na sekundę :P. Na razie ważne, żeby nie gubił pakietów, nie zrywał połączenia, nie mylił adresata itd. Ogólnie gra może działać dużo szybciej, demo jest powiedzmy w wersji "debug". Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 26 Kwietnia 2012 Administratorzy Udostępnij Opublikowano 26 Kwietnia 2012 Znaczy rozumiem z WebSocket korzystasz? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
TheMarcQ Opublikowano 27 Kwietnia 2012 Udostępnij Opublikowano 27 Kwietnia 2012 Zryty ten pomysł.zamiast zrobić normalny system serwerów ty kombinujesz z maksymalnie niewydajnym rozwiązaniem. Gdy na przykład zrobiłbyś mmorpg na przykład 100 graczy na mapie słabsze komputery ze słabszym łączem padłyby. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Piotr Opublikowano 27 Kwietnia 2012 Autor Udostępnij Opublikowano 27 Kwietnia 2012 Kwestia topologii sieci. Demo testowe łączy w następujący sposób: Czyli jak masz słabe łącze to nie pozwoli na grę z dużą ilością graczy. Natomiast nic nie stoi na przeszkodzie, żeby to zmienić: Dla klientów o słabym uploadzie można zastosować ten sposób: A dla dużej ilości graczy taki sposób: Tzn. łączenie się tylko graczy w zasięgu np. dwóch ekranów. W ten sposób można stworzyć grę nawet na tysiąc graczy. A w rzeczywistości klient będzie się dynamicznie łączył tylko do potrzebnych. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Utermiko Opublikowano 27 Kwietnia 2012 Udostępnij Opublikowano 27 Kwietnia 2012 Może za kilka lat, jak ludzie będą mieli szybszy internet to to się sprawdzi, ale na chwilę obecną chyba będzie ciężko wyeliminować lagi, żeby ping był taki jak w normalnych sieciówkach (klienci podłączają się do 1 serwera). Poza tym i tak potrzebujesz jakiegoś serwera z bazą, który by przechowywał statystyki graczy, IP itp. Ale ogólnie to nawet ciekawy projekt, tylko, że strasznie dużo czasu zajmuje. Ogólnie rzecz biorąc, życzę powodzenia w projekcie :) Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kt1117 Opublikowano 27 Kwietnia 2012 Udostępnij Opublikowano 27 Kwietnia 2012 Wg. mnie to ma sens. Jak zrobisz dobrą konfigurację tych połączeń to powinno być ok. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się