Skocz do zawartości

Zablokowane Pocisk w grze online..


Rekomendowane odpowiedzi

Opublikowano

Tworzę mmo strzelankę. :P

 

Nareszcie udało mi się zrobić coś konkretnego. Gierka się odpala. Z tego jestem bardzo szczęśliwy.

Jednak po testach z kolegą zauważyłem, że nie widzimy swoich pocisków..

 

Jak zrobić żeby każdy je widział?

Wiem, że trzeba umieścić w obj_pocisk, w alarm 0 coś co odnosi się do jego pozycji..

A później jakoś to wywołać.. Ale jak??

Ktoś mógłby sprezentować kod i objaśnić? Pamiętajcie, że tych którzy mi bardzo pomogą na pewno umieszcze w CREDITS! :lol2:

Opublikowano

Po prostu przy oddawaniu strzału wysyłasz innym graczom wiadomość o tworzeniu pocisku. Gracz po odebraniu tworzy pocisk w sowiej grze :P

potem pozostaje tylko wysyłanie wiadomości z pozycją pocisku, ale to już chyba potrafisz :P

Opublikowano

Gdy strzelasz to wysyłasz wiadomość z (jeżeli kilka pocisków to: nazwę obiektu), pozycja x, pozycja y i kierunek. To te najważniejsze zmienne.

U drugiego gracza wszystko dzieje się odwrotnie: odbierasz wiadomość, tworzysz pocisk o danej nazwie, ustawiasz x, y i kierunek.

Tak to będzie wyglądać, chyba że gra jest kontrolowana przez serwer. To wtedy to wygląda inaczej: jeżeli chcesz strzelić wysyłasz do serwera wiadomość, że chcesz wystrzelić pocisk i podajesz jego dane, ale go nie tworzysz. Dopiero, kiedy serwer otrzyma wiadomość, sprawdza czy to możliwe i jeżeli tak to wysyła do wszystkich graczy wiadomość, aby stworzyli pocisk, i tak dalej.

Opublikowano
Gdy strzelasz to wysyłasz wiadomość z (jeżeli kilka pocisków to: nazwę obiektu), pozycja x, pozycja y i kierunek. To te najważniejsze zmienne.

U drugiego gracza wszystko dzieje się odwrotnie: odbierasz wiadomość, tworzysz pocisk o danej nazwie, ustawiasz x, y i kierunek.

Tak to będzie wyglądać, chyba że gra jest kontrolowana przez serwer. To wtedy to wygląda inaczej: jeżeli chcesz strzelić wysyłasz do serwera wiadomość, że chcesz wystrzelić pocisk i podajesz jego dane, ale go nie tworzysz. Dopiero, kiedy serwer otrzyma wiadomość, sprawdza czy to możliwe i jeżeli tak to wysyła do wszystkich graczy wiadomość, aby stworzyli pocisk, i tak dalej.

 

Jak wiem , nie wszystko jest wykonywanie po stronie servera ; p Np. w starym soldat typ strzału ustawiał gracz, nie server, więc jak ktoś mial 'haka' mógł strzelać rakietami przez kałasznikow :]

 

Sztuką też jest przesłanie jak najwięcej informacji, więc często informacje przesylane są szyfrowane by zmniejszyc jak najbardziej ; p

 

btw. jestem zmęczony moge cos pieprzyc od rzeczy...

Opublikowano

To co mówicie mi pomaga, ale niewiele :) Ciągle nad tym myślę..

Zawsze trzeba użyć "clearbuffer();"? A jak używać "writeshort(); i writebyte();"? Czym to się różni..

Opublikowano
Gdy strzelasz to wysyłasz wiadomość z (jeżeli kilka pocisków to: nazwę obiektu), pozycja x, pozycja y i kierunek. To te najważniejsze zmienne.
Jeśli wysyła infirmacje o położeniu gracza i jego kierunku, to nie trzeba tego samego wywsyłać z pociskiem, wystarczy że wysle informacje o strzelaniu.
Opublikowano

Na klawiszu strzelającym u jednego klienta wysyłasz wiadomość, w której znajdzie się położenie, kierunek pocisku (i ewentualnie inne opcje). Wysyłasz to serwerowi, który tworzy pocisk u siebie, a następnie wysyła położenie i kierunek całej reszcie klientów. Klient odbiera to na stepie. A kodu nie ma tu co pisać bo wszystko będzie na writebyte'ach i writeshortach.

Opublikowano
Kocham kopiowanie examplów bez patrzenia w nie...

Dokładnie... Jak można robić grę online nie wiedząc jak przesyłać wiadomości i pozycje? ;'(

Opublikowano

A skąd wiesz, że nie wiem?? Ja po prostu nie rozumiem jak ma to wyglądać. NIE JAK TO ROBIĆ! Wiem jakie kody są..

 

PYTANIE: kiedy wysyłam dane do servera, a kiedy do klienta, graczy? A kiedy mam je czytać?

Opublikowano

Po przeczytaniu "artykułu" w moim innym temacie stwierdzam, że dam radę =) Dzięki za zaangażowanie. Ten temat zamykam już.

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...