Jaklub Opublikowano 27 Stycznia 2009 Udostępnij Opublikowano 27 Stycznia 2009 Tym razem mam bardzo dziwaczny problem. Otóż gdy testuję moją grę na multiplayerze (2 okna z grą włączone na raz), jest taki problem, że na hoście pocisk leci dobrze, a na cliencie... spada szybciej. Nie wiem, jak to możliwe, ale precyzyjne testy z zrobionym przez siebie debugiem wykazały, że hspeed jest dobry, a vspeed szybciej wzrasta na cliencie. Skrypt jest banalny i jest w stepie: GML if vspeed<12 vspeed+=0.2; else vspeed=12; Od razu mówię, że gra przesyła i odbiera dane wyłącznie dotyczące działającego robala. Wszystko teoretycznie powinno być ok, ale nie jest. Wysyłanie pozycji pocisku nie wchodzi w grę. Pytanie: jak temu zapobiec? Oczywiście gwarantuję miejsce w creditsach. =p Z góry dzięki. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Marek.S Opublikowano 27 Stycznia 2009 Udostępnij Opublikowano 27 Stycznia 2009 możesz sobie z podejścia fizycznego wyliczyć pozycję i tylko raz przy strzale wysłać wiadomość jest możliwe, że na kliencie masz jakieś opóźnienia fps Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 27 Stycznia 2009 Autor Udostępnij Opublikowano 27 Stycznia 2009 możesz sobie z podejścia fizycznego wyliczyć pozycję i tylko raz przy strzale wysłać wiadomość jest możliwe, że na kliencie masz jakieś opóźnienia fps Właśnie wiadomość wysyłam tylko raz. W temacie strzału wysyła się tylko kąt i siła. Poza tym, fps nie powinien mieć nic do robienia z pociskami, powinny lecieć normalnie. edit: wyliczyłem różnicę w vspeedzie pomiędzy pociskami po 20 klatkach - 0,2. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Marek.S Opublikowano 27 Stycznia 2009 Udostępnij Opublikowano 27 Stycznia 2009 a uwzględniłeś czas przesyłania informacji? zapewne te info wysyłasz przy tworzeniu pocisku. Tak więc na serwerze obiekt już leci, a do klienta jeszcze nie doleciały instrukcje o stworzeniu :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 27 Stycznia 2009 Autor Udostępnij Opublikowano 27 Stycznia 2009 zapewne te info wysyłasz przy tworzeniu pocisku. Tak więc na serwerze obiekt już leci, a do klienta jeszcze nie doleciały instrukcje o stworzeniu Tak, ale pocisk powinien lecieć "sobie". Problem jest taki, że jakimś cudem na cliencie vspeed zamiast o 0,2 zwiększa się o 0,21. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Marek.S Opublikowano 27 Stycznia 2009 Udostępnij Opublikowano 27 Stycznia 2009 to prześlij tą wartość jako string. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 27 Stycznia 2009 Autor Udostępnij Opublikowano 27 Stycznia 2009 to prześlij tą wartość jako string. Wolałbym nie (z tego, co się zorientowałem, 39dll może wysyłać i odbierać jedną wiadomość na raz), ale wygląda na to, że to jedyne wyjście. Jeszcze czekam na rozwiązanie. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Marek.S Opublikowano 27 Stycznia 2009 Udostępnij Opublikowano 27 Stycznia 2009 sprawdzałeś najnowszą wersję 39dll? jeszcze masz opcję.. możesz wysłać wartość pomnożoną o 10, a po odebraniu podziel ją przez to 10 :D Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 27 Stycznia 2009 Autor Udostępnij Opublikowano 27 Stycznia 2009 sprawdzałeś najnowszą wersję 39dll? Sprawdzałem - 25 - najnowsza. jeszcze masz opcję.. możesz wysłać wartość pomnożoną o 10, a po odebraniu podziel ją przez to 10 Tak robię zawsze. edit: Jednak będę wysyłać te dane pocisków. Temat można zamknąć, a Marek dostaje creditsy. 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ę