Online-Spiele sind der Boom der letzten Jahre. World of Warcraft, Guild Wars, Lord of The Rings Online die von der Spielercommunity sehnlich erwarteten Conan und Warhammer Online vereinen Millionen von Spielern auf der ganzen Welt. In diesem Arikel geht es um die Technik hinter diesen Spielen und Project Darkstar, den großartigen freien Gameserver, den Sun unter einer OpenSource-Lizenz freigegeben hat.
Project Darkstar ist ein vollständig in der Programmiersprache Java geschriebener Gameserver, mit dem man beliebige Multiplayer-Spiele und auch andere kommunikationsintensive Netzanwendungen entwickeln kann. Darkstar ist also kein fertiges Spiel, sondern eine Plattform, um eigene Spiele zu entwickeln.
Normalerweise verschlingt bei einem MMORPG (Massive Multiplayer Onlline Role Playing Game - Multiplayer Online Rollenspiel) die Entwicklung des Servers und der Kommunikationsinfrastruktur entweder immense Geldsummen, wenn die Technologie zugekauft wird, oder einen erheblichen Anteil der Entwicklerkapazität. Die Infrastruktur eines Massiven Online Spieles ist eine sehr große Herausforderung, besonders wenn sie auch noch mit der Anzahl der Spieler skalierbar sein soll. Zusättzlich wird das Programmiermodell für die Entwickler mit steigender Komplexität der Serveranforderungen immer unübersichtlicher, da eine ganze Reihe von Faktoren berücksichtigt werden müssen, die mit dem eigentlichen Spiel nichts zu tun haben.
Project Darkstar baut auf den Erfahrungen mit den Online-Spielen der letzten Jahre auf und bietet unter anderem Lösungen für folgende Probleme:
Sun bietet im Zuge des Project Darkstar vielversprechenden Projekten auch eine Hardwareplattform mit entsprechenden Ressourcen. Der im SDK enthaltene Entwicklungsserver ist ausdrücklich nicht für einen produktiven Betrieb bestimmt und benutzt als Backend eine recht einfache Datenbanklösung (Berkeley DB), die im Produktionsbetrieb wohl eher durch bekannt gut skalierende Datenbanken ersetzt wird.
Die Homepage des Projektes: http://www.projectdarkstar.com
Ein einführendes Tutorial als eBook: http://www.oreilly.com/catalog/9780596514846/