Entwicklungs-Log 2007
(17.9.2007) Abschluss Milestone 1
So heute habe ich noch die fehlenden Funktionen des Milestone 1 eingebaut. Somit ist dieser Entwicklungsschritt abgeschlossen und es kann weitergehen zu MS 2 ;)

| Client | Server | Common | |
| Zeilen total: | 5888 | 3518 | 385 |
| Codezeilen: | 3943 | 2236 | 236 |
| Anz. Dateien: | 59 | 38 | 4 |
(16.9.2007) [Client & Server] Zwei Spieler
Heute habe ich den ersten Test mit mehr als einem Spieler gleichzeitig gemacht. Und auch da musste fand ich natürlich zuerst wieder einen schönen Bug.


(14.9.2007) [Client & Server] Bugsuche 3
Und schon wieder musste ich einen Bug suchen. Beim drehen der Spielfigur gab es das Problem, das sich die Darstellung im Client von den Daten im Server gelösst hat. Und ich wusste nicht wieso. Dieses Problem trat allerdings nur bei einer Rechts-Rotation auf und auch nur wenn wir von der Roationsposition 0 auf die Rotationsposition 7 gewechselt haben (die Ausrichtung wird mit den Werten 0 bis 7 bezeichnet).
Nach längerer Suche habe ich dann herausgefunden dass das Problem im Server liegt und zwar bei der folgenden Code:
int d = char.getRotation() - 1) % 8;
Man sollte dabei einfach wissen, das die Java Modulofunktion anders arbeitet als man das aus dem Matheunterricht gewöhnt ist. Der Code gibt bei einem input von 0 eben dann -1 und nicht 7. *drop*Naja der Bug ist behoben und der nächste kommt bestimmt
(13.9.2007) [Client & Server] Bugsuche 2
Auch heute habe ich ein grossteil meiner Zeit damit verbracht komische Bugs im Code zu suchen. Aber es gibt nebenbei auch noch wieder ein paar neue Erfolge. Die Anderen Objekte in der Map werden jetzt auch im Client dargestellt:

(12.9.2007) [Server] Bugsuche
Nachdem es jetzt wieder möglich ist mit dem Client in die Welt zu kommen, habe ich einen kleinen Pseudobug im Server entdeckt. Naja es war nicht wirklich ein Bug.
Das Problem war, das sobald man in die Welt kommt, auch automatisch alle sichtbaren Objekte angezeigt werden sollten. Nur passierte das leider nicht. Also habe ich mich gewundert an was es lag, da der Code der das machen sollte ja eigentlich vorhanden war. Naja nur leider hat sich dort ein Überlegungsfehler reingeschlichen. Jetzt ist der Fehler jedenfalls behoben und es werden die Objekte korrekt angezeigt.
(7.9.2007) [Client] Bugsuche
Heute war es so weit, ich habe mich daran gemacht den Bug zu suchen, der mir beim Betreten oder neu laden der Map alle Farben des GUIs zerstört.

Hier sieht man wie die Farbe bei den Steuerelementen fehlt.

Und hier ist es gut, dafür fehlt die Gitteranzeige auf dem Grass.
(6.9.2007) [Client] Enter the world
So jetzt kann man wieder in die Welt rein. Aber viel mehr geht noch nicht.

(30.8.2007) [Client] Deployment
In dieser Woche habe ich mal ein kleines Ant-Skript geschrieben, damit ich den Client auch ausserhalb meiner Entwicklungsumgebung einsetzten kann.
Das ganze war gar nicht so einfach, da der Client von ca 4 andern Projekten abhängt, die auf dem Classpath sein müssen und ich noch nie ein Ant-Skript selber geschrieben habe. Wobei mit dem Ant hatte ich eigentlich keine Probleme, mehr mit Java selber. Vorallem da Java beim laden eines Jars (java -jar XXX.jar) das -cp Flag nicht mehr berücksichtigt und ich mich die ganze Zeit gewundert habe wieso es nicht geht, die Abhängigkeiten waren ja angegeben.
Naja nachdem ich das dann alles im Manifest angegeben habe ging es alles ganz ohne Probleme.

(21.8.2007) [Client] Online
Heute war ich das erste mal mit dem neuen Client online ;). Es ist jetzt möglich, sich bis in die Lobby zu begeben und es werden alle Charakter angezeigt die man hat.

Weiter habe ich noch festgestellt, das ich inzwischen schon ein ganzes Jahr an dieser Version am arbeiten bin. Die Schule fordert halt schon ihren Tribut, ich habe nicht so viel Zeit wie ich gerne haben würde um hier herumzubasteln. Auf der anderen Seite denke ich sollte ich dann auch wieder besser vorwärts kommen, sobald mal die Grundsachen aufgebaut sind und es nur darum geht weitere Funktionen einzubauen. Sprich dann wenn Milestone 1 fertig ist ;)
(17.8.2007) [Client] Fortschritt
Hier mal wieder ein paar neue Screenshots, bin der ganze Client nocheinmal am aufbauen. Jetzt wo ich begriffen habe, wie ich Guis in JME machen kann.

Der Client am Starten

Das Login-Fenster

Ingame Szene, im Moment noch eine TestMap, die Statisch im Client eingebaut ist. Das Interface ist schon fast fertig.
(Aug 07) [Client] Neueinstieg
Dank den Ferien hatte ich jetzt wieder Zeit und habe mich mal wieder an den Clienten gemacht, genauer genommen, an den Prototyp des Clienten, da ich ja mit meiner ersten Implementation gewisse Probleme hatte.
Inzwischen schaue ich aber etwas besser bei der 3D-Engine durch und ich komme darum auch mit dem Entwickeln besser voran.

(5. März 2007 - 5.8.2007) Entwicklungspause
Dank der Schule hatte ich keine Zeit für mein Hobby.
(28. Feb - 5. März 2007) [Client] 3d Rally 3
So die Engine für den Client befindet sich auf gutem Wege. Der Code ist inzwischen strukturiert und die meistens Bugs habe ich entfernen können. Ein Bug denn ich noch lösen muss, ist die Anpassung des Spielers an den Untergrund das sieht noch nicht besonders schön aus. Dann fehlt im Moment noch ein wichtiges Freature, dass ich noch implementieren will und zwar die Selektion, das ist in meinen Augen sehr wichtig, da ich das für die Interaktion im Spiel brauchen werde. Man muss ja irgendwie die Gegner anwählen können, damit man sie angreifen kann ;)
Nebenbei bin ich mir am überlegen, wie ich die Engine jetzt am besten in den Client einbauen soll, damit das ganze modular bleibt. Ich denke da finde ich aber auch noch eine brauchbare Lösung.
(26. Feb - 27. Feb 2007) [Client] 3d Rally 2
Habe am Client-Prototypen weitergearbeitet und bin mal ausnahmsweise recht gut vorangekommen. Man kann sich inzwischen bewegen und das ganze ist auch animiert (man sollte es also nicht mehr so gut merken, das man sich auch hier immer noch in einem Gitternetz bewegt.).
Und heute gibt es mal ein Film und keine Screenshots :)
(20. Feb - 25. Feb 2007) [Client] 3d Rally
So, so langsam komme ich im 3d-Universum zurecht. Ich habe die letzte Tage an einen neuen Prototypen für den Client gearbeitet. Da ich mit dem bisherigen Code komische, für mich nicht nachzuvollziehende Fehler hatte.
Und wie immer, bei Clientarbeiten, gibt es ein paar neue Bilder.



Es ist jetzt möglich Objekte genau zu positionieren und diese auch zu verschieben. Was jetzt noch fehlt, sind das laden von Models und das wiedereinbauen des Terrains.
(18. Feb - 19. Feb 2007) [Server] Bugsuche
Dank den Ferien äh Unterrichtfreienzeit die ich jetzt habe, hatte ich wieder Zeit mich um Terya zu kümmern.
Als erstes habe ich mal ein kleines Review des Server-Codes gemacht und dabei noch ein paar Bugs gefunden. Unter anderem konnte man mehrmals mit dem gleichen Account online kommen. Und es wurde kein Passwort überprüft. Jetzt sind die Bugs jedenfalls behoben und ich kann weiter machen.
(1. Jan - 4. Jan 2007) [Client] Bugsuche
Ich bin fleissig am Bug suchen komme aber nicht so vorwärts wie ich mir wünschen würde.
Nebenbei lese ich mich tiefer in die Theorie der 3d Engines ein. Damit ich auch mal verstehe, was ich da eigentlich am machen bin.