Auf Galaxynews habe ich vor einiger Zeit angekündigt ein Winterprojekt zu starten...und suchte nach Mitstreitern....
Das Pjojekt gibt es immernoch und ich habe auch zwei Menschen an meiner Seite, die daran mitentwickelt haben: TheUndeadable und Rederick.
Der Erste Milestone beinhaltet folgende Features:
- Der Spieler soll sich registrieren können.
- Der Spieler soll sich anmelden können.
- Die Karte soll angezeigt werden.
- Der Spieler soll ein Flugzeug besitzen.
- Die Aktion ‘Warte eine bestimmte Zeit’ soll implementiert sein.
- Die Gameloop soll obige Aktion verarbeiten können.
-
Das Flugzeug soll folgende Befehle annehmen können:
- Fliege zur Koordinate X,Y
- Fliege zurück zur Basis
- Die Gameloop soll obige Aktionen verarbeiten können.
- Der Spieler soll auf der Karte das Flugzeug beobachten können.
Diese Features wurden alle implementiert und sind unter http://176.9.12.50:8080/plenty-planes einsehbar.
Verwendete Technologien... Serverseitig:
- Java
- Jetty Webcontainer
- Spring 3.x
- mongoDB für die Persistenz
- Spring Data for mongo als Abstraktionslayer
- cometD event routing über Bayeux Protokoll
- Quartz Scheduler
- gson
- Stripes MVC Framework
Clientside:
- jQuery
- CAAT Scene Graph Manager
- HTML5-canvas rendering
- comet-client
Der Entwicklungsprozess läuft iterativ. Jede Iteration fängt damit an ein Featureset zu bestimmen, dass implementiert werden soll. Es gibt also kein Designdokument, dass definiert, wie es am Ende auszusehen hat. Denn genauso wie unsere Ideen sich ändern, ändert sich auch die Vorstellung davon, was gemacht werden kann.
Im Moment wird grade darüber diskutiert, was im "Milestone 2" für Features enthalten sein sollen. Favorsiert wird bisher:
- die Befehlsqueue der Flugzeuge wird graphisch dargestellt
- Befehle an Flugzeuge werden über eine in die Karte integrierte UI abgegeben (nicht mehr über das Formular)
- Jeder Spieler hat eine Basis
- Basen produzieren Flugzeuge
- Basen können von Flugzeugen angegriffen werden
- Basen können nicht komplett zerstört werden
- Basen stellen den Flugzeugbau ein, wenn sie mehr als 30% Schaden haben
- Basen reparieren sich selbst mit der Zeit
Falls es interessierte Entwickler gibt, die Interessiert sind mitzumachen...ich bin hier erreichbar...und es fehlt eindeutig eine PM-Funktione auf ibgdb!!!
So long...
MrMaxx