Paqoo Opublikowano 5 Kwietnia 2008 Udostępnij Opublikowano 5 Kwietnia 2008 Tworzę grę sieciową, czyli MMO. I mam pytanie. Jeśli chcę wysłać pozycje wroga/gracza jest taka możliwość, żeby dać writebyte(2) w dwóch przypadkach? Bo przecież odczytuję to samo.. Trzeba oddzielnie to wysyłać? Numerować writebyte(4) - np.? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PsichiX Opublikowano 5 Kwietnia 2008 Udostępnij Opublikowano 5 Kwietnia 2008 w swoim xenon online mialem (chyba) taka strukture: *id danych *id gracza ktory wyslal te dane *dane Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Paqoo Opublikowano 5 Kwietnia 2008 Autor Udostępnij Opublikowano 5 Kwietnia 2008 Ale chodzi mi o to, czy za każdym razem muszę dawać inne id danych? Bo w obu przypadkach odczytuję na serwerze to samo.. Konieczne jest odczytywanie oddzielnie dwóch tego samego typu danych? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Nobody Opublikowano 5 Kwietnia 2008 Udostępnij Opublikowano 5 Kwietnia 2008 No jeżeli masz np. poruszanie się jakiegoś gracza to wysyłasz ID wiadomości odpowiadającą poruszaniu się gracza, a jak chcesz poruszyć wroga wysyłasz ID wiadomości odpowiadającą poruszaniu się wroga... Proste. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PsichiX Opublikowano 5 Kwietnia 2008 Udostępnij Opublikowano 5 Kwietnia 2008 zalezy jak skonstruowales serwer. ja uzywam innego id transferu server->klient, a innego klient->server. To pomaga uniknac nakladania sie danych Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Paqoo Opublikowano 5 Kwietnia 2008 Autor Udostępnij Opublikowano 5 Kwietnia 2008 Ale jeśli mam te same dane. Moge użyć tego tylko raz? Dać w obu przypadkach writebyte(2); ? Czyli wysyła na serwer i odbiór z serwera dwóch pakietów? Będzie działać poprawnie? Czy muszę nadawać im inne id, nawet jeśli są identyczne dane? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PsichiX Opublikowano 5 Kwietnia 2008 Udostępnij Opublikowano 5 Kwietnia 2008 mozesz, ale na wlasna odpowiedzialnosc. jak mowilem - przy roznych id dla s->k i k->s dane nie beda uciekac i nie bedzie bledow przy wiekszej ilosci graczy Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Paqoo Opublikowano 5 Kwietnia 2008 Autor Udostępnij Opublikowano 5 Kwietnia 2008 Dlaczego tworzą się takie błędy? PsichiX lognij się jeszcze raz zobaczymy, czy będziemy widzieć swoje pozycje i animacje. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
PsichiX Opublikowano 5 Kwietnia 2008 Udostępnij Opublikowano 5 Kwietnia 2008 Bo jak juz Ci mowilem: Po pierwsze uzywasz Online Engine 2 - prosty ale nieswiadomie zabugowany i mulacy system. Po drugie struktura przesylania danych jest prosta: najpierw dane o graczu wysylane sa na serwer: client:[msg_id,player_id,data] -> server serwer je przetwarza, wykorzystuje i wysyla do innych graczy: server:[msg_id,player_id,data] -> client wiec jesli pakiety maja takie same identyfikatory na serwerze i u klienta to jesli kod gdzies zezwala na przecieki w stylu: server:[msg_id,player_id,data] -> server to jasne ze serwer odbierze te dane i wykona ponownie. A propos: jesli jacys gracze na serverze maja takie samo id to beda bledy - trzeba sie tego pilnowac. EDIT: klient nie dziala - masz cos z serwerem namieszane, bo logowac sie nie mozna Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Paqoo Opublikowano 5 Kwietnia 2008 Autor Udostępnij Opublikowano 5 Kwietnia 2008 Dobra dzięki za pomoc. Muszę naprawić ten serwer.. Zamykam temat. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi