Gerçek zamanlı strateji oyunlarında ağ oluşturma


10

Gerçek zamanlı strateji oyunlarını ağa bağlamak için en son teknoloji nedir?

Birkaç yıl önce, bazı AAA oyunlarının sadece oyuncu girdilerini (Starcraft 1, Age of Empires) aktardığını hatırlıyorum. Bu, diğer her şeyi tamamen deterministik tutmanızı gerektirdiğinden, bu hala geçerli bir seçenek midir? Rastgele sayı üreteçlerini senkronize etmek mümkün görünmektedir, ancak FPU uygulamalarında vb.

Veya strateji oyunları, aksiyon oyunu ağına daha yakın bir şey kullanıyor, bunun yerine tek tek varlıkların iletildiği (bir tür tahmin ve (delta) sıkıştırma ile)?

Öyleyse, mermiler gibi uçucu maddeler nasıl tedavi edilir?

İstemci / sunucu ile eşler arası ne olacak? Tüm bunların birbiriyle yakından ilişkili olduğunu tahmin ediyorum.

Zaman ayırdığınız için teşekkür ederim!


Kopyası RTS Oyun Protokolü - nasıl yapıldığını evet bu hala. Farklı FPU uygulamalarına gelince, buraya ve buraya bakınız .
BlueRaja - Danny Pflughoeft

Yanıtlar:


5

http://www.gamasutra.com/view/feature/3094/1500_archers_on_a_288_network_.php RTS oyunlarında hala ağ oluşturma bu şekilde yapılır. P2P aynı zamanda bağlantıların ele alınmasının normal yoludur. Bununla birlikte, bir kilit zaman çizelgesi modeli kullanmak, rahatsız edici desync ve hile işlemine neden olur. Bir desync gerçekleştiğinde iyileşmenin iyi bir yolu vardır ve tüm RTS oyunları basitçe "Maçtan çık" der. Hata izleme desync hataları da bir kabus.


1
Kilitli timestep ağ oyunları hakkında başka bir iyi makale: altdevblogaday.com/2011/07/09/…
tenpn


1

Bu harika bir okuma ve birçok sorunuza cevap verecektir:

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

Strateji / kule savunma oyunumda, bir müşteri / sunucu modeli kullanıyorum ve şimdiye kadar her şeyi belirleyici tutabiliyorum. İstemci yalnızca şeyler yapmak için sunucu istekleri gönderir (ama hiç gerçekten değil yapmak bir şey) ve sunucu işler değişir müşterilerine aşağı güncellemeleri, yarattıkları ve silme gönderir. Oyunum şu anda deterministik olmasına rağmen, müşterilerime hiçbir şeyi doğru yapma konusunda asla güvenmiyorum, sunucu patron ve oyun üzerinde tam kontrole sahip. İstemci sadece aptal bir terminal.

Her şeyi gerçekten basitleştirmek için, varlıklarımın ağ tarafı hakkında tamamen karanlıkta tutmak için bir Yansıma ve Etkinlik kombinasyonunu kullanıyorum. Ayrıca bir Aktör ve bir "Kuvvet" kavramını da kullanıyorum (Unreal gibi bir FPS'de bir Aktör ve Piyonun aksine). Bu gerçekten güzel bir kapsülleme ve Kuvvetin para ve eşyalarını saklamak için bir yer sağlar.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.