Frage

Ich entwickle ein Online-Strategiespiel mit .Net v2.Obwohl das Spiel in erster Linie strategisch ausgerichtet ist, enthält es einige taktische Elemente, die eine angemessene Netzwerkleistung erfordern.Ich habe vor, TCP-Pakete für strategische Daten und UDP-Pakete für taktische Daten zu verwenden.

{BEARBEITEN} Ich habe vergessen zu erwähnen, dass ich mich aus mehreren Gründen von WCF und .NET 3+ abwende.Erstens, weil ich meinen Download klein halten möchte und die meisten meiner Kunden bereits über .NET 2.0 verfügen.Zweitens, weil ich gerne die Möglichkeit hätte, auf Mac und Linux zu portieren, und mir nicht sicher bin, ob WCF in Mono verfügbar ist.{/BEARBEITEN}

Ich suche nach Empfehlungen für Netzwerkbibliotheken.Ich habe ein paar Optionen gefunden, wie zum Beispiel die Torque Network Library (C++), RakNet (C++) und die Lidgren-Netzwerkbibliothek (C#) von GarageGames:

http://www.opentnl.org/ http://www.jenkinssoftware.com/ http://code.google.com/p/lidgren-network/

Hat jemand praktische Erfahrungen mit diesen oder anderen Bibliotheken?


Ich bin gerade auf RakNetDotNet gestoßen:

http://code.google.com/p/raknetdotnet/

Das könnte sei, was ich suche...

War es hilfreich?

Lösung

Warum sollten Sie sich auf .NET 2.0 beschränken?.NET 3.0 (oder 3.5) enthält WCF und ist ein solides, leistungsstarkes Kommunikationssubsystem mit guter Sicherheit..NET 3.0 ist nur .NET 2.0 mit zusätzlichen Bibliotheken (WCF, WF, WPF).

Andere Tipps

Microsofts eigenes .NET basiert XNA ermöglicht die Erstellung vernetzter Spiele auf Windows und XBox 360.

http://code.google.com/p/lidgren-network-gen3/

Lidgren.network ist eine Netzwerkbibliothek für .NET Framework, die einen einzelnen UDP -Socket verwendet, um eine einfache API zum Anschließen eines Clients mit einem Server, Lesen und Senden von Nachrichten zu liefern.

Ich möchte auch darauf hinweisen, dass „Games for Windows“, das XNA mit seinem Live!Netzwerk-APIs sind jetzt kostenlos ...Das heißt, wenn Sie ein XNA-Spiel schreiben, das die Netzwerkfunktionen nutzt, werden Ihre Benutzer nicht Man muss eine Gold-Mitgliedschaft haben :-)

http://www.engadget.com/2008/07/22/games-for-windows-live-now-free/

Sie könnten einen Blick auf Entanglar werfen ( http://entanglar.dunnchurchill.com ), wenn Sie etwas Höheres suchen.Entanglar bietet den vollständigen Lebenszyklus und die Synchronisierung von Entitäten.

Obwohl diese Frage schon ziemlich alt ist, ist dies bei einem System auf etwas höherem Niveau, das speziell für Spiele entwickelt wurde, der Fall Ein Spiel - Zu den unterstützten Plattformen gehört auch C#.Es gibt Testversionen und sie sind für den persönlichen Gebrauch kostenlos.

Sie definieren Ihre Spielobjekte auf UML-ähnliche Weise und ein Online-Codegenerator erstellt Assemblys, die Ihre Spielobjekte enthalten.Das Senden von Statusaktualisierungen ist dann so einfach wie das Aufrufen von Setter-Methoden.

Nicht das Richtige, wenn Sie Steckdosen selbst in den Griff bekommen möchten.Bitte beachten Sie auch, dass ich ein Entwickler von APlay bin, daher ist dies eine voreingenommene Antwort.

Eine alte Frage, aber ich werde sie für alle anderen veröffentlichen, die darüber stolpern.Wir verwenden OpenTNL für unser Spiel Bitfighter und ich bin immer wieder überrascht, wie gut es funktioniert.Und es ist kostenlos, wenn Sie mit der GPL leben können.

Wenn Sie neu in der Spieleentwicklung sind, würde ich XNA empfehlen – es ist einfach zu programmieren.Der Vorteil von Torque besteht jedoch darin, dass es über Tools zur Asset-Erstellung verfügt, die ebenfalls von unschätzbarem Wert sein können.Für ein High-End-Spiel oder FPS ist die Source-Engine großartig.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top