Archive for the ‘KolonialKampf Classic’ Category

Es gab intern ein paar Umstellung bei einer wichtigen Systembibliotheken und eine komplette Bereinigung der freigegebenen APIs.

Kampfsystem TestGUI v0.7.0.10 (285 KB)

Hier die Änderungen in der aktuellen Version:

========================================================================
Release 0.7.0.10 – 05.02.2008
========================================================================

* Kleines Update der Systembibliotheken.

Heute ein kleines Update von KolonialKampf classic.

————————————————————————
Version 0.8.2 – 03.02.2008
————————————————————————

* Statusnachrichten können abgeschaltet werden. Dies kann über das Menü
Einstellungen -> Statusnachrichten eingestellt werden.

* Die Statusnachrichten können alle auf einmal jetzt gelöscht werden.
Dafür wurde ein neuer Button im Nachrichtenbereich eingeführt.

* Verschiedene kleinere Bugfixes, welche im Forum unter “erledigtes” zu
finden sind.

Es gab intern ein paar Umstellung bei einer wichtigen Systembibliothek und einen Splitt in eine weitere Bibliothek, deshalb hier ist nun die neue Version…

Kampfsystem TestGUI v0.7.0.9 (285 KB)

Hier die Änderungen in der aktuellen Version:

========================================================================
Release 0.7.0.9 – 28.01.2008
========================================================================

* Splitt der Systembibliotheken und Einführung der Kampfsystem.dll.


Wenn man schon nicht schlafen kann, dann kann man die Zeit auch nutzen. Gesagt getan…

Deshalb gibt es ab sofort 3 neue Features.

1. Das Hinzufügen der maximalen Arbeiterzahl und sein Gegenstück dazu.


2. Die Anzeige des Speicherlimits bei der jeweiligen Inseln in der Auftragslos-Übersichtsseite.

3. Und das Zufallsscript ist ab sofort aktiviert. Da gibt es sowohl gute Dinge die Spielern passieren können, als auch negative Dinge. Damit nicht alles zu positiv oder negativ wird, gibt es Schwellwerte. Keine Sorge… das ist erprobt und nein ich verrate nicht was alles passieren kann :D

Der erste Testkampf ist gelaufen. Es war ein ziemlich steiniger Weg bis ich den C# und den PHP Part halbwegs verheiratet hatte.

Im Moment ist alles noch extrem wackelig und der Zufallszahlengenerator wurde aufgrund von Reproduzierbaren Testläufen von mir auf einen definierten Startwert gesetzt. Dadurch habe ich immer die gleichen “Zufallszahlen”.

Was jetzt als nächstes noch kommt ist das Auswerten der Angriffsbefehle. Im Moment schweben mir die folgenden vor:

  • Gebäude zerstören
  • Resourcen plündern
  • Waffen plündern
  • Insel erobern

Der Kampfbericht ist im Moment auch noch nicht komplett verfügbar. Vieles ist noch eine Baustelle.

* Schiffe benötigen immer Seemänner, welche als “Resource” beim Bau schon definiert sein werden.

* Es wird ein neues Gebäude geben, welches ins Kampfsystemkonzept gehört. Welches, wird jetzt noch nicht verraten. Nur so viel, daß man den Gegner damit ärgern kann ;)

* Die Datenbankschnittstellen werden im Moment komplett neu geschrieben. Damit wird eine Erhöhung der Sicherheit und Performance erreicht. Außerdem ist dies notwendig, um neue Features leichter integrieren zu können.

* Ein Tool zum Anzeigen der verbliebenen Bauzeit und regelmässigem Prüfen auf Ingame Nachrichten ist in Planung. Das Tool wird nur eine Hilfe darstellen und eine Erinnerungsfunktion darstellen. Mit ihm werden keine Automatismen möglich sein.

* Die Kampfroutinen von Koka 2 werden direkt in Koka classic integriert. Deshalb solltet ihr euch mal die Kampfsystem TestGUI ansehen, welche über das Blog zu bekommen ist. Oder über diesen Link. Es wäre gut, wenn wir noch mehr Tester bekommen, damit wir später weniger Arbeit beim Balancing haben.

Einen Termin für das alles gibt es noch nicht. Die Arbeiten an der Datenbankschnittstelle werden noch ein paar Wochen dauern.

Und wieder beginnt mein Leidensweg mit OpenSource Software.

Diesmal wollte ich mittels PDO, welche eine Datenbankschnittstelle unter PHP darstellt, auf einen SQL Server zugreifen.

Nach dem üblichen Hürdenlauf mit dem immer (!) noch verhunzten MSI-Installer von PHP, hatte ich zwar PDO am Laufen, aber es wollte nicht mit dem SQL Server reden.

Der SQL Server war korrekt konfiguriert, ich konnte mich mit einem extra für diesen Zweck angelegten Account auch einloggen und ihn verwenden. TCP/IP war auch aktiviert als Kommunikationsweg, der Port war definiert und in der Firewall freigegeben, es konnte also nichts mehr blockieren.

Trotzdem wollte PHP/PDO nicht mit dem SQL Server reden.

Hier nun meine Ergebnisse der Stundenlange Analyse, welche dann folgte:

In folgender PDO Doku steht das PDO_DBLIB für FreeTDS / Microsoft SQL Server / Sybase zuständig ist.

Folgt man dem Link der sich unter PDO_DBLIB verbirgt, dann kommt man zu einer Subseite der PHP-Doku, welche folgende Warnung beinhaltet:

Diese Erweiterung ist EXPERIMENTELL. Das Verhalten dieser Erweiterung, einschließlich der Funktionsnamen, und alles Andere was hier dokumentiert ist, kann sich in zukünftigen PHP-Versionen ohne Ankündigung ändern. Seien Sie gewarnt und verwenden Sie diese Erweiterung auf eigenes Risiko.

Im ersten Kommentar wird auf die PECL Page von PDO hingewiesen, welche dann unter anderem das Release 1.0 mit Datum 2005-11-26 enthält.

Vorhin war ich Neugierig und habe einfach mal auf den Link hinter dem zugehörigen Changelog Eintrag geklickt und da kam dann das:

Update code for API changes in PDO; no actual changes have been made to this driver.

Windows binaries can be found at:
http://pecl4win.php.net/ext.php/php_pdo_mssql.dll

however: you are *strongly* recommended to use PDO_ODBC instead of this driver on
Windows platforms.

** Changes **
- Fix Bug #34777; segfault when retrieving non-existent error info
- Fix Bug #35032; didn't find FreeTDS includes on some systems

PDO_ODBC werde ich auf gar keinen Fall verwenden, dafür ist die Gesamtperformance von ODBC zu schlecht. MySQL mit InnoDB will ich nicht einsetzen. Im Moment bewege ich mich dort wo es sofort geht, von OpenSource Software weg und setze immer mehr auf kommerzielle Kauflösungen.

Von daher fällt für mich der Zwischenschritt der Migration von MySQL nach MS-SQL weg und ich werde zusätzlich die Migration von PHP nach C# angehen müssen.

Das gefällt mir im Moment überhaupt nicht, aber ich werde wohl damit leben müssen.

Und was bleibt mir noch zu tun?

Genau! Die Benotung des Ganzen Konstrukts, wo da wäre, das…

Frickler Award

  • …die Doku von PHP alles andere als aktuell ist.
  • …bei PHP Sachen als Stable maskiert werden, welche noch nicht mal Ansatzweise als Stable gelten können.
  • …der Hinweis auf Probleme nur im Changelog auftaucht.
  • …man lieber auf den langsamen ODBC Treiber setzt, anstatt die vorhandenen Bugs zu fixen.
  • …man nur so zu aggieren scheint, weil es sich hier um eine Microsoft Datenbank handelt.

DING DING DING Und da war er der 5. Fricklerpunkt!

Und somit bekommt PHP/PDO den Frickler-Award der Woche!

Im Moment bemüht sich PHP redlich den Frickler-Award des Jahres zu bekommen.

So langsam stelle ich mir eine Frage… ist OpenSource Software immer so unreif?

Das Ziel ist für einige schon in greifbare Nähe gerückt.

In wenigen Tagen steht der Sieger der Speedrunde von KolonialKampf classic fest.

Bevor jetzt einige das Handtuch in die Ecke werfen und aufgeben, kann ich Entwarnung geben!

Das Spiel wird danach auch noch weiter gehen.

Die Spielgeschwindigkeit wird wieder normalisiert, die Resourcen alle 15 Minuten berechnet wobei ich bei den Resourcen nicht auf normal, sondern von 10fach auf 5fach zurück stellen werde.

Da das Spielziel der Speedrunde vermutlich zu einem Zeitpunkt erreicht wird, an welchem ich nicht zuhause bin, werde ich diese Umstellung erst Abends durchführen können.

Wieso mache ich das Ganze?

Wir haben jetzt ein paar sehr aktive Spieler, welche Lust am Spiel haben und sich auch daran beteiligen wollen.

Von daher habe ich überlegt zusätzliche Zeit in KolonialKampf classic zu investieren, neue Features einzubauen, versprochene und niemals fertig gewordene zu realisieren und das ganze auf einen stabilen Stand zu heben.

So können wir neue Dinge leichter ausprobieren, mit euch zusammen das Spiel weiter entwickeln und uns somit eine eigene Spielwelt erschaffen.

Die in KolonialKampf classic gewonnenen Erkenntnisse werden dann nach und nach in die Entwicklung von KolonialKampf 2 einfließen.

Heute ein kleines Update von KolonialKampf classic.

————————————————————————
Version 0.8.1 – 08.01.2008
————————————————————————

* Die Mindesanzahl in einer Allianz wurde von 4 auf 3 Mitglieder
verringert.

* Channel auf swissirc.net registriert unter dem Namen #kolonialkampf

* JAVA-Chat unter dem Navigationslink “Hafenkneipe” eingebaut.

KolonialKampf Classic Es ist soweit!

KolonialKampf classic ist verfügbar! Verändert hat sich für die Spieler nichts.

Im Laufe der Zeit wird das eine oder andere Feature noch dazu kommen, aber grundsätzlich werde ich erstmal nichts verändern.

Hier geht es zum Spiel: http://www.koka-classic.de

Das Ziel der Speedrunde stellt die Erreichung von 50.000 Punkten dar.