Na dann muss ich ja mal eine Lanze für Java bzw. die JVM brechen. Ein MMO mit Serverprozessen, die parallel und effizient laufen sollen und das von der Codebasis so groß ist, dass man die Unterstützung einer "echten" IDE haben will und wo auch Installation und Betrieb standardisiert sein sollen, wird man in Java IMHO besser als in Python schreiben können.
Natürlich kommt das zu einem Preis - Python ist definitiv einfacher. Vielleicht sollte man gleich Scala wegen der eleganteren Syntax wählen, doch das ist noch mal zwei Nummern komplexer als Java.
Vor Jahren habe ich mal regelmäßig auf
www.javagaming.org/ mitgelesen, doch ich weiß nicht, wie groß diese Gemeinschaft noch oder inzwischen ist. Jedenfalls gibt es auch für Java 3D-Engines und Rahmenwerke, diesen ganzen "Open-GL-Kram" zu bauen.
Bei einem OOM würde ich jedoch vermuten, dass die Server-Seite, die das Spiel steuert, der komplexeste Teil ist. Um hier die beste Parallelität zu erreichen, böte sich das Actor-Framework von Scala (oder Akka, welches noch besser sein soll) an oder der konsequent funktionale Weg von Clojure an. Selbst wenn man Lisp als Sprache nicht mag, kann man die gleichen Datenstrukturen auch in Java oder Scala benutzen. Mangels Erfahrung in der Entwicklung eines OOMs kann ich da aber nicht mehr sagen. Ich vermute jedoch, dass ist auch nicht so viel anders als die Server, die ich beruflich gebaut habe.
Bei Python hätte ich glaube ich Angst, durch GIL (und das fehlende echte Multitasking) und die doch vergleichsweise langsame Geschwindigkeit des Interpreters Probleme zu bekommen, die durch eine andere Programmiersprache vermeidbar wären. Teile, die ich skripten will, kann ich ja auch (und gerade) in Java skripten. Allerdings habe ich den Vorteil, Python und Java (und ein Dutzend weitere Programmiersprachen) zu beherrschen und so nicht das Problem, mich erst einzuarbeiten.
Denn letztlich gilt glaube ich, man ist immer in der Sprache am besten, die man auch kennt.
Stefan