Möglichkeiten Multiplayershooter + Physik



  • Hallo allerseits,

    ums gleich klarzustellen : Ich kann nicht programmieren.

    Meine Frage kommt aus einer Diskussion die ich mit meinen Mitgamerfreunden heute hatte, was wir gerne in einem Multiplayer Taktik Shooter hätten.

    Ich würde gerne erfahren was mit der jetzigen Hardware und heutigen Bandbreiten im Shooterbereich möglich wäre.

    Mal von Quadcore 2GB RAM Geforce 9 als Schnitt GamerPC mit 10MBit Anbindung ausgehend.

    Mich würde interessieren ob man einen Battelfield 2 ähnlichen Shooter
    mit aktueller DX10 Grafik + Halflife2 ähnlicher Physik (Havoc Physik Engine) + Verformbaren Terain wie
    in Söldner Secred Wars designen könnte.

    Am Ende unsere Diskussion gings eher darum wieviele physikalisch korrekt bewegte Objekte in einem Online Spiel mit über 50 Spielern am Server möglich wären und ob die Hardware oder eher die Internetleitung den Flaschenhals bilden würden.

    Ein Beispielszenario:
    Ein großer Panzer fährt quer durch ein Dorf.
    Kleinere Holzhütten verlangsamen ihn nichtmal und zerbrechen in ihre Einzelteile
    Er schiesst auf ein Größer Betonhaus. Ein Drittel des Hauses mit Innenausstattung fliegt umher, verletzt andere Mitspieler
    Feuer brechen aus. Umfallende Bäume beschädigen den Panzer (Aussehen und Funktion).
    Das ganze eben Online mit ca. 50 Spielern.

    So in etwa wäre es Traumhaft 🙂

    In wie weit wäre sowas möglich ?


  • Mod

    ist das bei crysis nicht schon moeglich?

    das problem ist einfach die datenmenge die mit sehr vielen updates in sync gehalten werden muss, wenn die physis spielentscheident ist. und wenn so ein panzer durch ein haus faehrt, hast du locker 1000 objekte die da rumfliegen muessen.
    bei "breakable" dingen wie in crysis musst du nicht nur die objekt positionen in sync halten, sondern auch die mesh daten. sonst koennte es sein dass jemand in nem objekt ein loch sieht und dadurch die ganze level snipen kann, ohne dass ihn die anderen sehen koennen weil sie an dem objekt gerade kein loch haben.

    Wie komplex das ist siehst du z.b. bei der lottoziehung, jedesmal die selben kugeln drinnen, jedesmal passiert sehr genau das selbe und trotzdem wird es vermutlich erst nach ein paar millionen ziehungen mal das selbe resultat geben.
    wenn man das spiel netzwerkfaehig machen wollen wuerde, braeuchte man in jeder sekunde sicher mehr als die paar updates in shootern, damit nicht jeder am ende ganz andere nummern hat. natuerlich koennte man auch nur die resultate uebertragen, ja, aber das ist hier nur ein beispiel. in online shootern siehst du auch oft nur die resultate und kein physic an sich, bzw sehr limitiert.

    manche dinge, vor allem wenn sie traege sind, kann man noch simulieren und synchronisieren. ein flugzeug fliegt sehr vorhersehbar, ein hubschrauber ebenfalls, ein jeep faehrt auch relativ vorhersehbar und falls der mal aufs dach faellt, koennte man das ding explodieren lassen und dann ist es auch egal wo der schrott landet.

    das ist auch was man zZ als physic am meisten sieht, nicht spielrelevante objekte. z.b. abgeschossene gegner, da ist es relativ egal wohin die leiche faellt, wohin die truemmer fliegen wenn sie danach verschwinden etc.

    my2cent 😉



  • naja crysis is schon sehr gut eigentlich.
    Heute hat mir ein Kollege das Battlefield Bad Company gezeigt.
    Das ist im Prinzip ziemlich genau dass was wir wollen!
    Gestern kannte ich das Game noch nicht...

    Eine Frage zu der Lotterie.
    Wenn ich eine Lotterie Simulieren würde.
    Würde da nicht immer das gleiche Ergebnis rauskommen?
    Diese kleinen Änderungen die das zufallsprinzip ergeben (kleinste Erschütterungen, Luftdrücke, usw) existieren ja in der Game Physik nicht.



  • Cowboy-Saber schrieb:

    Eine Frage zu der Lotterie.
    Wenn ich eine Lotterie Simulieren würde.
    Würde da nicht immer das gleiche Ergebnis rauskommen?
    Diese kleinen Änderungen die das zufallsprinzip ergeben (kleinste Erschütterungen, Luftdrücke, usw) existieren ja in der Game Physik nicht.

    Da musst du den "Zufall" auch simulieren, zum Beispiel, indem du die die Startanordnung der Kugeln zufällig wählst. Den Rest erledigt dann die Kollisionsbehandlung der Kugeln, wenn sich die Trommel dreht.


  • Mod

    es reicht schon ne winzige float ungenauigkeit, z.b. dadurch dass gerade eine andere zeit auf einem pc ist als auf nem anderen, oder dass die cpu von nem anderen hersteller ist, oder dass mal anders gerundet wurde weil das eine ein 32bit und das andere ein 64bit binary ist usw. und schon kann sich ein winziger unterschied durch die ganze simulation propagieren.

    spiele exakt gleich zu simulieren ist eine kunst, und man macht es auch, z.b. bei RTS, bei denen nur die inputs der spieler per netzwerk geschickt werden (wie sonst koennten alte RTS spiele hunderte einheiten per 14.4k modem synchronisieren?). aber das perfekt hinzubekommen, dass jeder schuss, jeder treffer, jede bewegung 100% gleich ablaufen ist nicht trivial und viele RTS haben das auch nicht hinbekommen, damals.

    Unter anderem darf man dann nicht mehr mit float rechnen...


Anmelden zum Antworten