Paqoo Opublikowano 11 Kwietnia 2009 Udostępnij Opublikowano 11 Kwietnia 2009 Chodzi o to, że sobie strzelam i każdy ma to widzieć, a nie tylko moja skromna osoba. Więc co mam z tym zrobić? Trzeba alarm wstawić w ten pocisk i wysłać dane na serwer z pozycją, a ten ma rozsyłać do graczy, tak? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 11 Kwietnia 2009 Udostępnij Opublikowano 11 Kwietnia 2009 Przy strzelaniu wysyłasz do graczy informację z pozycją pocisku i kierunkiem strzału Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 11 Kwietnia 2009 Administratorzy Udostępnij Opublikowano 11 Kwietnia 2009 Jeżeli to jest gra online (bo tego nie zaznaczyłeś), to wystarczy, że w momencie strzału gracz wysyła pakiet informujący o stworzeniu pocisku (ew. dla lepszej synchronizacji, także z kierunkiem, bo pozycja na której jest tworzony to pozycja gracza). Gdy serwer ją dostanie, wysyła do wszystkich graczy info, żeby stworzyć pocisk dla tamtego gracza, więc klienci tworzą pocisk na pozycji danego gracza, w kierunku takim jak przesłał serwer (ale jak powiedziałem, można w kierunku w którym odwrócony jest gracz, można kierunek pocisku wysłać w pakiecie z informacją o jego stworzeniu, zeby w razie opóźnień nie poleciał w złą stronę). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pental Stary Opublikowano 11 Kwietnia 2009 Udostępnij Opublikowano 11 Kwietnia 2009 Tak, ale co wtedy, gdy ping jest ogromny i dane dotrą za późno? Czy to będzie po prostu tzw. "lag", czy zmieni nieco postać rzeczy? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Cekol Opublikowano 11 Kwietnia 2009 Udostępnij Opublikowano 11 Kwietnia 2009 Ja zrobiłem to tak. Serwer co klatkę, wysyła pakiet, ze swoim "current_time" do wszystkich graczy. Potem gdy gracz strzela pocisk, to wysyła x , y , kierunek , rodzajpocisku , i current_time serwera. Potem serwer to odbiera, i wysyła reszcie graczy. Potem jak gracz odbiera pakiet od serwera , to mierzy różnicę, current_tima zawartego w pakiecie z pociskiem, a z current_time'm serwera , i pocisk dodatkowo 'popycha' w zależności od obliczonego laga xD Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Pental Stary Opublikowano 11 Kwietnia 2009 Udostępnij Opublikowano 11 Kwietnia 2009 Au! To najgorsze co może być! Wolę mieć laga, niż mieć kompletnie inny obraz gry niż inny gracz i psuć rozgrywkę :o . Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Dawidds Opublikowano 11 Kwietnia 2009 Udostępnij Opublikowano 11 Kwietnia 2009 Cekol, ale dorypałeś. A co, jak klient ma ustawioną inną godzinę niż serwer...? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 11 Kwietnia 2009 Administratorzy Udostępnij Opublikowano 11 Kwietnia 2009 jak będzie lag i pocisk się stworzy nie w tym miejscu, to i ta serwer powinien decydować kto ginie od pocisku - więc wyśle ci info, że zginąłeś :) po prostu zobaczysz nabój z opóźnieniem, no trudno... nawet jak wyślesz pozycję pocisku i będzie lag, to u siebie w grze będziesz już w innym miejscu - i tak nim nie oberwiesz, więc po co wysyłać jego pozycję? można wysyłać mniej danych i tworzyć go na pozycji gracza, który go wystrzelił, w pozycji jaką ostatnio podał serwer. proste. 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ę