Ich werde einen Server für einen Online-Multiplayer mit folgenden Anforderungen schreiben:
- Ziemlich einfaches rundenbasiertes Spiel (denken Sie an ein Kartenspiel), das vollständig auf dem Server gespielt wird (Sicherheitsgründe)
- Muss in der Lage sein, mehrere Spiele (Tische) mit 4 Spielern pro Tisch auszuführen, aber kein Lobby-System erforderlich (ein anderer Server kümmert sich darum)
- Kann so viele Spieler wie möglich gleichzeitig unterstützen; Benötigt möglicherweise mehrere Server
- Chatten Sie zwischen Spielern
- Socket-Verbindung zu einem Flash / AIR-Client
- Muss in der Lage sein, mit anderen Servern zu kommunizieren (für Spielerkonten und dergleichen)
Jetzt denke ich über zwei Optionen nach:
- Smartfox (oder gleichwertig)
- Eine benutzerdefinierte Java-Lösung in so etwas wie Tomcat
Warum Smartfox?
- Es verwaltet mehrere Räume und chattet nativ
- Es hat vermutlich Lösungen für bekannte Multiplayer-Gaming-Probleme
Warum Brauch?
- Smartfox hat viele nicht benötigte Funktionen, die die Leistung beeinträchtigen
- Smartfox kommuniziert mit einem XML-basierten Format, ich könnte ein effizienteres Binärformat verwenden.
- Ich weiß nicht, ob das Ausführen des gesamten Spielmodells auf dem Server mit dem Erweiterungsmechanismus von Smartfox bequem ist
- Mehrere Räume und Chat lassen sich leicht neu implementieren
- Tomcat oder ein leichter Container ist einfacher bereitzustellen als Smartfox
- Bessere IDE-Unterstützung für die Entwicklung auf Tomcat (automatische Bereitstellung usw.)
Was denken Sie? Sind meine Annahmen richtig? Haben Sie etwas hinzuzufügen? Welche Option sollte ich wählen (oder vielleicht eine ganz andere)?