Sieć w grach strategicznych w czasie rzeczywistym


10

Jaka jest obecnie najnowocześniejsza gra sieciowa w czasie rzeczywistym?

Wydaje mi się, że kilka lat temu niektóre tytuły AAA transmitowały tylko dane wejściowe gracza (Starcraft 1, Age of Empires). Skoro wymaga to zachowania wszystkiego całkowicie deterministycznego, czy jest to nadal realna opcja? Synchronizacja generatorów liczb losowych wydaje się możliwa, ale co z subtelnymi różnicami we wdrożeniach FPU itp.?

Czy też gry strategiczne wykorzystują coś bliższego sieciom gier akcji, w których zamiast tego przesyłane są poszczególne byty (z pewną formą przewidywania i kompresji (delta))?

Jeśli tak, w jaki sposób leczy się przedmioty lotne, takie jak pociski?

Co z klientem / serwerem a peer-to-peer? Zgaduję, że wszystko to jest ściśle powiązane.

Dziękuję za Twój czas!


Duplikat protokołu gry RTS - tak, nadal tak jest. Jeśli chodzi o różne implementacje FPU, zobacz tutaj i tutaj .
BlueRaja - Danny Pflughoeft

Odpowiedzi:


5

http://www.gamasutra.com/view/feature/3094/1500_archers_on_a_288_network_.php Tak właśnie działa sieć w grach RTS. P2P to także normalny sposób obsługi połączeń. Użycie modelu blokowania timepeptera powoduje jednak irytujący przypadek desynchronizacji i oszustwa. Istnieje dobry sposób na odzyskanie, gdy nastąpi desynchronizacja, a wszystkie gry RTS po prostu mówią „Wyjdź z meczu”. Błąd śledzenia błędów desynchronizacji to także koszmar.


1
Kolejny dobry artykuł na temat zablokowanych gier sieciowych timestep
tenpn


1

To świetna lektura i odpowie na wiele twoich pytań:

http://udn.epicgames.com/Three/NetworkingOverview.html

W mojej grze strategicznej / tower defense używam modelu klient / serwer i jestem w stanie zachować wszystko jak dotąd deterministyczne. Klient wysyła tylko żądania serwera do zrobienia czegoś (ale nigdy tak naprawdę nie jest nic nie robi ), a serwer wysyła do klientów aktualizacje, kreacje i usunięcia, gdy rzeczy się zmieniają. Mimo że moja gra jest obecnie deterministyczna, nigdy nie ufam moim klientom, że zrobią coś dobrze, serwer jest szefem i ma pełną kontrolę nad grą. Klient to tylko głupi terminal.

Aby wszystko było naprawdę proste, używam kombinacji Refleksji i Eventingu, aby moje istoty były całkowicie w ciemności na temat sieciowej strony rzeczy. Korzystam również z koncepcji aktora i „siły” (w przeciwieństwie do aktora i pionka w FPS, takim jak Unreal). Pozwala to na naprawdę fajną enkapsulację i miejsce do przechowywania pieniędzy Mocy i innych rzeczy.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.