Eressea Hex Map Viewer (EHMV)
Der EHMV ist ein Client für das PbEM Eressea.
Wie ging's los?
Die Entwicklung der Originalversion begann Mitte 1999 als Eressea die Eressea-Welt hexagonal reparkettiert wurde und es damals schlichtweg kein Programm gab, welches damit zurecht kam (mal ganz davon abgesehen, daß die bis dahin existierenden Eressea-Clients meiner Meinung auch vorher nicht wirklich brauchbar waren). Binnen weniger Wochen wurde daraus ein mehr oder weniger brauchbarer Client, welcher durch kontinuierliche Weiterentwicklung über einen Zeitraum von ca. 18 Monaten stetig verbessert wurde und irgendwann im Jahre 2000 den Höhepunkt seiner Verbreitung fand (einer Umfrage der Eressea Spielleitung zufolge war er zu einem Zeitpunkt der am meisten genutzte Eressea-Client). Da die bestehende Architektur des Programmes aber (mild formuliert) suboptimal war und damit ziemlich schwer zu warten beschoß ich irgendwann im Jahre 2000 die Entwicklung einzustellen und komplett von vorne zu beginnen.
Wie ging's weiter?
Nachdem auch die zweite Version des EHMV (EHMV 2) anfänglich in Borland Delphi entwickelt wurde, was leider erst viel zu spät aufgegen wurde (Delphi und DLLs vertrugen sich damals nicht so toll, keine Ahnung ob sich da was geändert hat in letzter Zeit, mit eigentlich auch egal mittlerweile). Darauf folgte der EHMV 2b welcher komplett in C geschrieben wurde mit deutlich verbesserten Innereien. Hauptsächlich hab ich mich dabei um einen schnellen Parser und effiziente Speicherverwaltung gekümmert. Flexibilität sollte diese Version durch die Einbindung von TCL (allle EHMV 2b Plugins sollten spezielle TCL-Plugins sein). Dies war eigentlich auch nicht ganz verkehrt, sah auch gut aus, knirschte aber an einigen Stellen und sah außerdem nicht schön aus (TCL mag schön sein für textlastige Verarbeitung, für rein berechnende Aufgaben wie sie im EHMV vorwiegend vorkommen ist es zwar geeignet, aber meiner Meinung nach alles andere als optimal).
Was bleibt?
Nicht viel. Im Moment existiert keine EHMV-Version welche als Client zu gebrauchen wäre, als Mapviewer alleine mögen beide Versionen taugen, wenn EHMV 2b meiner Meinung nach auch deutlich besser aussieht (und schneller ist, weniger Speicher braucht, nur die Einrichtung ist mit dem TCL-Kram deutlich aufwendiger). Trotzdem war die Entwicklung nicht umsonst: zum einen hab ich ein bißchen was dabei gelernt, zum anderen finden sich viele (wenn auch bei weitem nicht alle) Funktionen des EHMV im Magellan (und wahrscheinlich auch anderen Clients) wieder.
Was wird?
Mittelfristig werde ich wohl noch einen 4. Anlauf wagen. Da es mir wohl kaum gelingen wird einen schnelleren Java-Client als den Magellan zu entwickeln, wird es am Ende wohl wieder auf C/C++ hinauslaufen. Angedacht war eine Kartendarstellung mittels OpenGL (in der Hoffnung, daß die dann halbwegs hardwareunabhängig zügig ist), evtl. mit 2D-Fallback für 3D-lose-Rechner (Software 3D ist ja dann doch immer noch ein bißchen langsamer). Aber der Beginn der Implementierung wird wohl frühestens 2005 beginnen.
Downloads
EHMV 1 und EHMV 2 (nicht 2b!) konnte ich erfolgreich mit WINE (unter Linux) testen, 2b startet zwar, hat aber scheinbar Probleme beim Laden der TCL-Infrastruktur, wahrscheinlich wird dasselbe Problem unter Windows auftreten, Ursache derzeit unbekannt.