Neues von den Ameisen (v 1.7.3)

Veröffentlicht: 24 Juni 2015 in AntMe!

AntvatarVor einiger Zeit kam ganz schleichend mal wieder ein kleines AntMe! Update um die Ecke: Version 1.7.3.. Bei diesem Update stand die Lokalisierung und Dokumentation ganz im Vordergrund.

  • Breaking Changes in der englischen Ameisen API
    Nachdem die ersten aktiven englisch sprechenden User mit AntMe! ihre ersten Erfahrungen gemacht haben, kam enorm viel Feedback zur mittelmäßigen Übersetzung ;) Da musste nachgelegt werden. Diverse Begriffe innerhalb der API haben sich dadurch geändert. Unter anderem wurde „Target“ konsequent mit „Destination“ ersetzt.

    • Modificator -> Modifier
    • Waits -> Waiting
    • BecomesTired -> GettingTired
    • GoAhead -> GoForward
    • Target -> Destination
    • GoBackToAnthill -> GoToAnthill
    • SmellsFriend -> DetectedScentFriend
    • SpotsPartner -> SpotsTeammate
    • ChooseType -> ChooseCaste
  • Lokalisierung der Benutzeroberfläche vollständig in englisch
  • Beschreibungstexte für Events, Methoden und Eigenschaften (deutsch und englisch) vervollständigt.
  • Ameisen-Templates nun vollständig dokumentiert
  • Professionelle API-Hilfe im Projekt.
  • Ausführliche Dokumentation im AntMe! Wiki (deutsch und englisch)

Die Arbeiten am nächsten Update sind auch bereits in vollem Gange. Hier wird der Fokus auf der Anbindung des Online Systems liegen. Die Einbindung einer Highscore und Achievements werden hier den Anfang machen. Andere Dinge werden folgen.

Inzwischen funktioniert auch den „Sende Fehler“-Button im Fehlerdialog der Anwendung. Ansonsten gibt es den Bug-Tracker (http://bugs.antme.net) und natürlich der direkte Weg: Schicke Fehler, Verbesserungsvorschläge und sonstige Anregungen an info@antme.net

Zum Download: http://service.antme.net/

Ich wünsche euch ganz viel Spaß mit AntMe!

Der Tom

Hallo liebe Freunde der Programmierung,

Moontaximöglicherweise erinnert sich der eine oder andere von euch an das kleine Spaß-Projekt das ich vor Jahren mal erstellt habe? Es nennt sich MoonTaxi und ist im Grunde ein Spiel, das die Idee aus Space Taxi (C64) übernommen hat. Ein kleines, schwebendes Taxi (a la fünftes Element), gesteuert vom Spieler, muss in einem mehr oder weniger komplizierten Level verschiedene Taxi-Gäste aufsammeln. Gesteuert wird mit Steuerdüsen und zum Trotz der Gravitation und der Trägheit.

In ein paar ausführlichen Blog-Einträgen hatte ich damals detailiert beschrieben, wie das Spiel funktionert. (Teil 1, Teil 2, Teil 3). Damals noch mit XNA. Letzte Woche hatte ich aber mal spontan Lust das Ganze nochmal schnell mit MonoGame zu reproduzieren und habe dazu eine 6-teilige Video-Reihe gemacht. Wer also lieber Videos schaut anstatt zu lesen, der sei herzlich willkommen.

Viel Spaß damit
Tom

AntMe! 1.7.2 is out

Veröffentlicht: 16 Februar 2015 in AntMe!
Schlagwörter:, ,

Und wieder gibt’s ein kleines Update für unser allseits beliebtes Ameisenspiels. Diesmal gehen die Veränderungen aber eher Richtung Bugfixing und interne Änderungen. Aber das offensichtlichste zuerst: Der neue Dialog für die Konfiguration eines freien Spiels. Er orientiert sich jetzt etwas mehr an gängigen Strategiespielen und bietet die verfügbaren Spielerslots für die KI-Zuweisung an. Damit einher gingen ein paar Änderungen im Ablauf der Spiel-Konfiguration.

freegame

Warum das Ganze? Ganz einfach. Mit der Online Anbindung und weiteren Ideen werden neue Spiel-Modi in Form von neuen Plugins hinzukommen. Dabei teilen sich diese Modi ein paar zentrale Funktionen wie beispielsweise die Auswahl der Spieler KI. Deshalb gibt es jetzt auch eine weitere Assembly „PlayerManagement“ für diverse Auswahl-Dialoge.

Sonstige Veränderungen in der Schnell-Übersicht

  • Plugins werden jetzt nur noch aus dem Programm-Pfad geladen
  • Änderungen bei der Plugin-Selektierung werden sofort gespeichert (dann wichtig, wenn man im Spielmodus das Programm direkt über Visual Studio stoppt)
  • Source oder Quelle heißt jetzt Mode bzw. Modus. Außerdem ist die Auswahl-Combo Box im Hauptfenster durch ein ordentliches Menü ersetzt.
  • XNA Anzeige hat eine Info-Seite zur Steuerung bekommen
  • XNA Lokalisierung funktioniert jetzt richtig
  • Es gibt jetzt einen VB.NET Code Generator für deutsch und englisch
  • Kaputte Kreis-Ameisen entfernt ;)

Für kommende Update stehen noch ein paar wirklich wichtige Dinge auf dem Plan. Lasst mich aber wie immer gerne wissen, was ihr vermisst, dringend braucht, cool fändet,…

  • Fehlerhafte Simulation (Falsche Angaben bei “ZurückgelegteStrecke”, Berechnung von “BrauchtNochTräger” und maximale Markierungsgröße,…)
  • Zufallsgenerator für die Maps überarbeiten
  • Dokumentation

Also direkt mal downloaden!!!

Ich wünsche wie immer ganz viel mit den Ameisen
Euer Tom

AntMe! 1.7.1 – Der Debug Mode

Veröffentlicht: 31 Januar 2015 in Uncategorized
Schlagwörter:, ,

Seit einigen Minuten steht die Version 1.7.1 unseres allerliebsten Ameisen-Programmierspiels zum Download bereit. Wie bereits im letzten Blog-Post angekündigt, versuche ich die Fortschritte in Version 2 soweit es geht auch in Version 1 zu verarbeiten. So kommt ihr schneller an den neuen hippen Kram.

Was gibt’s denn Neues?

  • Wir haben eine neue Visualisierung
    Mit Hilfe der Bit Barons (https://www.facebook.com/bitbarons) habe ich es geschafft der bisherigen 3D-Ansicht zu neuem Glanz zu verhelfen. Ein paar neue Shader, eine hübsche Skybox und ein paar hilfreiche Texturen lassen sich sehen.
    Debug View
  • Neue Befehle
    Zuerst mal nur einen: „Denke(…)“ oder „Think(…)“ erlaubt dem Programmierer der Ameise Debug-Informationen mitzugeben, die anschließend in der Ansicht als Denkblase über der Ameise angezeigt werden. Das ist etwa das Gegenstück zu „Console.Write“. Lass die Ameise etwa „Hurra! Zucker gesehen“ rufen, wenn sie in das „Sieht(Zucker)“ Ereignis läuft.
  • Debug-Infos in 3D
    Auf vielfachen Wunsch gibt es in der neuen Ansicht ein paar weitere hilfreiche Infos zum Verlauf der Programmierung. Schaltet man einmal die Debug-Ansicht ein (Druck auf D genügt), so erhält man wertvolle Infos zum Verlauf:

    • Ameisen bekommen einen Ring zur Anzeige ihrer Sichtweite
    • Sollten Ameisen ein konkretes Ziel haben (Bau, Zucker, Wanzen,…), so wird dieses Ziel durch eine direkte Linie angezeigt.
    • Die oben erwähnten Denkblasen werden auch nur im Debug-Mode angezeigt
  • Tech-Background
    Im Hintergrund gibt es noch ein paar kleinere Verbesserungen die aber dennoch Erwähnung finden sollten. Wir speichern jetzt für Plugins, die garkeine Settings haben, keine unnötigen Settings-Files mehr. Außerdem wird der Start-Screen jetzt beim Umschalten in eine andere Sprache direkt mit übersetzt.

So! Das wars erstmal. Ich freue mich wie immer auf euer Feedback. Und looooooos gehts zum Download: http://service.antme.net

Euer Tom

AntMe! Classic Refresh: AntMe! 1.7

Veröffentlicht: 6 Januar 2015 in AntMe!
Schlagwörter:, , ,

Wer das Projekt schon eine Weile verfolgt, der weiß, dass die Entwicklung an Version 2.0 in vollem Gange sind. Leider geht es aber dann doch nicht so schnell, wie ich es mir gewünscht hätte. Durch die gescheiterte Crowdfunding Kampagne beschränkt sich die Arbeit am Projekt wieder einmal auf die verfügbare Zeit fernab anderer Projekte, mit denen ich die Finanzierung sichern muss. Keine Sorge: Es bleibt dennoch genügend Zeit um kontinuierlich weiter zu arbeiten.

Ich will euch aber meine Fortschritte in einzelnen Bereichen nicht vorenthalten, weshalb ich einige der Features Stück für Stück parallel auch in die „alte“ Version integrieren möchte. Die ist schließlich auch schon etwas in die Jahre gekommen und hat mal ein Update verdient.

Natürlich lassen sich die Verbesserungen an der Ameisen-API nur schwer auf die alte Version anwenden, aber so gibt es auch Dinge, die sich schlichtweg aufdrängen. Einige der Sachen sind bereits in der angehängten Version integriert, andere werden in weiteren Updates folgen.

Aber was meine ich damit?

AntMe! auf Framework 4.0

Die vermutlich wichtigste Änderung mit 1.7 ist die Verwendung eines etwas moderneren .NET Frameworks. Wo die bisherige Version auf Version 2.0 aufgebaut hat, können nun alle Sprach- und Framework Features der 4.0 verwendet werden. Warum nur 4.0 und nicht 4.5 oder gar 4.5.1? Mir persönlich wären neuere Versionen auch lieber, aber mit 4.0 kann AntMe! weiterhin die Kompatibilität mit Windows XP garantieren, was für viele Bildungseinrichtungen leider immer noch ein wichtiges Thema ist. Aber immerhin. LINQ und Co sind dabei!

3D Darstellung auf XNA

xna previewIch sehe einige von euch beim Lesen mit Fragezeichen über dem Kopf ;) Der eine oder andere wird sich fragen, warum ich mich dafür entschieden habe. Die Antwort ist einfach: Die bisherige Darstellung wurde mit den Managed DirectX Libraries realisiert, die mit dem neuen Framework leider nicht mehr kompatibel sind. In Anbetracht der vorhandenen Assets und des Codes lag eine DirectX-basierte Library naheliegend. XNA kann ich schon, es existiert eine funktionierende Content Pipeline und es gibt ordentliche Integrationen für den msi-Installer. Im Vergleich zum Ärger, den unsere Spieler mit der Abhängigkeit zu MDX hatten, ist XNA dennoch eine klare Verbesserung. (Stichwort LoaderLock Exception).

Leider ist der Umstieg auf XNA auch einer der größten Problemkinder des Updates. Leider ist der Code nicht 100% kompatibel und die Assets machen unter XNA auch andere Sachen als erwartet. Aus diesem Grund stellt die aktuelle Version beispielsweise noch keine Markierungen und Labels dar. Bin dran…

Ein richtiges Setup mit installierten Binaries

SetupWorauf ich besonders stolz bin, ist die radikale Verbesserung der „Installations Experience“, wenn man das bei der alten Version überhaupt so nennen kann. Version 1.7 kommt als Installer-File und installiert die fertig kompilierten Libs ordnungsgemäß in das Programme-Verzeichnis. AntMe! lässt sich jetzt also ordentlich installieren und anschließend auch wieder deinstallieren. Das fixt ein paar kleinere Probleme. Das Prominenteste: Das CHM-File, in dem die Tutorials sind, musste bei der alten Version noch manuell vom Spieler als „sicherer Inhalt“ markiert werden. Mit der Installation erübrigt sich dieses Problem. Was mich zum nächsten Spielzeug führt:

Der Ameisen Projekt Generator

AmeisengeneratorNachdem das Programm ja nun richtig installiert wird, fehlt das Standard Ameisen-Template aus dem bisherigen Download Paket. Das wird aber durch ein weiteres tolles Feature ersetzt: Den Template Generator. Damit kann man für jede neue Ameise auch gleich ein komplett neues Set an Solution-, Project- und Class-File erzeugen. Der Generator sorgt auch automatisch dafür, dass die Namespaces und Klassennamen dank der vorherigen Namenseingabe etwas mehr Variation kriegen und nicht alle Spieler mit dem selben Projekt arbeiten.

Multi Language

Was mich dazu führt zu erwähnen, dass der Generator auch Code für unterschiedliche Muttersprachen erzeugt. AntMe! konnte zwar schon seit Version 1.6 mehrere Sprachen (genaugenommen deutsch und englisch), aber das Template war bisher nur in deutscher Sprache. Wer also englisch coden wollte, musste sich das Template selbst basteln. Da lohnt es sich ja fast nicht zu erwähnen, dass die UI inzwischen auch übersetzt ist.

Online Anbindung

Aus Entwicklungssicht ist aber die Anbindung an das Online System das vermutlich wichtigste Feature. Man kann sich nun mit Hilfe seiner Zugangsdaten der Website am Client anmelden. Das ist die Grundlage für jegliches Online Feature (Multiplayer, Achievements, Nachrichtensystem,…) das in Zukunft von allen Plugins angesprochen werden kann. Da lohnt es sich ja schon garnicht mehr zu sagen, dass das Spiel inzwischen auch selbst rausfinden kann, ob es online eine neue Version gibt – ihr werdet also automatisch über eine Version 1.7.1 informiert.

Neue Spiel-Settings

Game SettingsZuletzt dann noch ein fast schon unscheinbares Feature, das ich einfach mal mit aufgenommen habe, weil die Sachen eh schon fertig waren. Ich hatte mal vor Jahren ein paar alternative Game Settings für einen Wettbewerb gemacht. Diese Settings fanden aber nie den Weg in die Release und wurden auch sonst nirgends verwendet. Eine Verschwendung. Neben dem Default-Setting gibt es nun auch einen Spielmodus namens „Capture the Apple“ ;)

So! Das soll‘s erstmal gewesen sein. Bitte lasst mich wissen, wie euch dieses Update gefällt, ob es für euch Sinn macht, was noch fehlt. Ich würde diesen Entwicklungs-Pfad auch nutzen, um in der alten Version noch den einen oder anderen Bug zu entfernen. Da stehen noch einige Sachen auf meiner Todo.

Zum Download

Doch jetzt endlich der lang ersehnte Download-Link:
https://service.antme.net/Download