Schlachtfeld

Der Stafflerblog von Warzone2100.de

25.04.2010

User-generated Content Fail

Filed under: Deutsch,Homepage von Kreuvf um 18:15:25

Das Newsvorschlägeboard existiert bereits seit einigen Jahren und kann als eine Art Experiment zum Thema „User-generated Content“, also Inhalten, die die Nutzer erstellt haben, angesehen werden. Die Idee hinter dem Newsvorschlägeboard war, dass die Leute zum einen selbst lernen bessere News zu schreiben und zum anderen uns mit News zu versorgen, die wir dann auf die Seite posten können, damit ein breiteres Themengebiet abgedeckt wird. Das wäre dann im Austausch für die Publicity gewesen, dass man in einer News auf der größten deutschen (muahahaha, einzigen XD) Warzone-2100-Seite erwähnt wird.

Natürlich spielt da immer der Hintergedanke mit rein sich um die lästige Arbeit des Newsschreibens zu drücken, aber im Vordergrund stand jederzeit mehr News auf die Seite zu bekommen. Vor allem, da ich von der Annahme ausging, dass die Zahl der möglichen Warzone-2100-News rapide ansteigen würde. Nun ist dies entweder nicht eingetreten oder niemand hatte Lust News so zu schreiben, dass die auf die Hauptseite gekommen wären. Auf jeden Fall ist die Zahl an Newsvorschlägen nicht hoch genug, um dafür ein gesondertes Board zu haben.

Daher wird das Newsvorschlägeboard künftig nicht mehr weiter wertvolle Bildschirmfläche verschwenden und ins Archiv wandern.

Kommentare zu diesem Artikel abgeben (benötigt Boardaccount)

18.04.2010

Neosys Abschied

Filed under: Deutsch,Homepage von Kreuvf um 16:12:52

Bereits letzte Woche hat Neosys intern verkündet das Warzone2100.de-Team zu verlassen. Während ich letzte Woche auch bereits die Teamseite entsprechend aktualisiert und die Rechte im Board entsprechend angepasst hatte, habe ich es nicht mehr geschafft einen Blogpost dazu zu verfassen.

Als Grund gibt Neosys an zu wenig Zeit zu haben, um sich um die Seite zu kümmern. Ich möchte hiermit einen unserer langjährigsten Teammitglieder alles Gute auf seinem weiteren Lebensweg wünschen und hoffe, dass es ihn vielleicht eines Tages wieder ein wenig stärker zu Warzone 2100 hinzieht und auch die Zeit dafür da ist.

In diesem Sinne: Vielen Dank für knapp 9 Jahre im Warzone2100.de-Team,
– Kreuvf

Kommentare zu diesem Artikel abgeben (benötigt Boardaccount)

25.02.2010

Modder-Interview #1: DyDo-KI/DylanDog

Filed under: Deutsch,Sonstiges von Kreuvf um 13:50:06

DylanDog, Autor der wohlbekannten DyDoKI, wird dieses Mal interviewt. Kurz und schmerzlos: Er ist ein Mod-Entwickler und kein Programmierer. Er hat sich bislang mit JavaScript, PHP und AJAX befasst. Echtzeitstrategiespiele wie C&C, Warcraft oder Empire Earth gehörten immer zu seinen Leidenschaften. Heute ist seine Freizeit sehr eingeschränkt, weshalb er meistens im Zug an DyDo arbeitet, auf den Hin- und Rückfahrten zu und von der Arbeit. Falls sich doch mal ein wenig Freizeit am Abend ergibt, so kann auch diese für die Arbeit an DyDo genutzt werden, wohingegen nur eine sehr geringe Chance für ihn besteht an Wochenenden zu entwickeln.

Kreuvf: Wie bist du das erste Mal mit Warzone 2100 in Kontakt gekommen? Und wie lange liegt das zurück?
DylanDog: Ich denke ich habe es Anfang 2009 mit Google gefunden, während ich nach Freeware-RTS-Spielen gesucht hatte. Dann irgendwann im Mai 2009 entschloss ich mich mir die BecomePrey-KI näher anzuschauen, ich weiß nicht mehr warum. Ich fing damit an einige Ereignisse zu verbessern, stellte dann aber fest, dass die Dinge, die ich einbauen wollte, eine vollständig neue KI benötigen würden.

Kreuvf: Was war dein Grund überhaupt mit einer anderen KI anzufangen? War die Standard-KI zu schwach? Worin unterscheidet sich BecomePrey? Und was ist im Vergleich zu DyDo anders?
DylanDog: Es war einfach Neugier! Ich fing an mir das BP-Script anzuschauen, weil jeder dachte es wäre die beste KI. Ich stellte dann schnell fest, dass ich in der Lage war die Script-Sprache zu verstehen und es eine tolle Sache wäre an einer KI für ein Echtzeitstrategiespiel zu arbeiten. Der größte Unterschied zwischen DyDo und BP? Alles!!! Vom Ernten (Bau von Ölbohrtürmen) bis zum Basenbau, von der Energieverwaltung (BP hat keine) hin zur Verwaltung von Gruppen (BP hat keine Verteidigergruppe, seine Basis ist praktisch unverteidigt, sofern ich mich recht entsinne). Auch die Forschungswege sind unterschiedlich… und DyDo ist sogar mit 4 verschiedenen Persönlichkeiten angelegt, selbst wenn die Unterschiede noch nicht wirklich ausgeprägt sind. Ich habe Niker, BP-Entwickler, zu danken, da er wirklich eine ausgezeichnete Dokumentation zu BP erstellt hat, was die Dinge echt einfacher macht. Noch dazu sind einige Teile aus DyDos KI-Script-Code (nur paar Funktionen) aus der Standard-KI und Aivolution, die ich für eine bessere KI halte als die Standard-KI und die BPKI, übernommen.

Kreuvf: Bei all den Features, welches davon a) funktioniert am besten, b) erfüllt dich am stärksten mit Stolz und c) ist am problematischsten, was die Implementierung anbelangt?
DylanDog: Zu a: Ich kann nicht wirklich sagen, welches das beste ist, da dort so viele gute Dinge sind. Es gibt da aber ein paar Features, die gut funktionieren:

  • DyDo verwaltet zwei Verteidiger- und zwei Angreifergruppen aus Einheiten (zusätzlich zu einer VTOL– und einer Unterstützergruppe).
  • Eine der Gruppen ist gemischt (Cyborgs + Panzer).
  • Es sendet niemals zwei LKW zu selben Ölquelle.
  • LKW sind ebenfalls in Gruppen organisiert: Bauen (baut Gebäude), Verteidigung (baut Verteidigungsanlagen) und Ernte (baut Ölbohrtürme).
  • Zielauswahl ist nicht zufällig: Benötigt eine KI Energie, so werden die feindlichen Bohrtürme angegriffen, nicht deren Basen.
  • Die Zahl an zu bauenden Gebäuden hängt von der Zahl an Ölbohrtürmen ab.
  • Forschung geschieht nicht zufällig.
  • Die Energieverwaltung funktioniert auch gut, denke ich.

Zu b: In sämtlichen anderen KI werden Entscheidungen, was zu tun ist, von zahlreichen Einzelereignissen im Skript bestimmt, in DyDo nicht. Ich habe ein zentralisiertes Ereignis für die Kontrolle der meisten wichtigen Aktionen eingeführt, das ich „AIbrain“ nenne. Dieses Ereignis wird sekündlich ausgeführt, sammelt einige Statistiken und entscheidet dann welche anderen Ereignisse aktiviert werden sollen und welche nicht. Die Energieverwaltung findet hier statt. Mir gefällt auch der Umstand, dass ich KI-Stärke-Stufen eingeführt habe… und offensichtlich bin ich stolz darauf, dass DyDo nicht schummelt! Es erhält nicht mehr Energie, es gewährt sich nicht selbst Zugang zu irgendwelchen Forschungsthemen und es erhält keinerlei Geschenke (Einheiten oder Gebäude). Die einzige Sache, die es tut, die kein Mensch tun kann, ist die Sammlung von Statistiken über die Feinde.
Zu c: Die VTOL-Verwaltung könnte stark verbessert werden und ich werde das auch tun… problematisch ist auch den verschiedenen KI-Persönlichkeiten unterschiedliche Verhalten zu geben. Aber wirklich problematisch ist es die Erwartungen der WZ-Spieler zu erfüllen!!! Viele denken, dass eine KI wie ein Mensch agieren könne, aber das wird niemals der Fall sein. Ein guter WZ-Spieler ist in der Lage eine KI durch verschiedene Taktiken zu schlagen. Die Fähigkeit mehrere Taktiken zu benutzen (wie etwa die Entscheidungen einen bestimmten Forschungspfad für ein bestimmtes Ziel zu verfolgen) ist schwierig zu implementieren. Was die KI-Stärke anbelangt: Ein Spiel 1 KI gegen 1 menschlichen Spieler wird immer der Mensch gewinnen, „Jeder gegen jeden“ in einem 4er-Spiel ist eine andere Sache (und sogar noch schwieriger, wenn DyDo auf eine Stärke von 5 gesetzt ist).

Kreuvf: Was denkst du sind die begrenzenden Faktoren der KI-Engine des Spiels für dich als KI-Entwickler? Welche Dinge würdest du gerne einbauen, kannst es aufgrund der Beschränkungen aber nicht?
DylanDog: Ich habe keinerlei Erfahrung mit anderen KI-Engines, aber ich muss sagen, dass die Warzone-KI-Engine echt großartig ist. Als KI-Entwickler hast du so gut wie alles, was du zum Entwickeln einer guten KI brauchst. Sicher gibt es ein paar Dinge, die man noch einbauen könnte, aber nichts davon würde große Veränderungen bewirken. Es gibt da eine Sache, die ich ein wenig einschränkend finde: Entfernungsberechnungen basierend auf Wegsuche. Was ich meine ist, dass man die Länge einer Route, die ein LKW bis zu einem bestimmten Punkt braucht, nicht wissen kann. Es gibt eine Funktion, die den Abstand zweier Punkte liefert, aber das ist „nur“ der reine Punkt-zu-Punkt-Abstand „in der Luft“, diese Funktion führt keine Wegsuche durch oder berechnet die Route, die der LKW nehmen würde. Eine neue Funktion, die die Weglänge zum Objekt ausgibt, wäre wirklich toll, aber ich denke, dass es zu schwierig zu implementieren ist.

Kreuvf: Zusammengefasst heißt dies, dass das Spiel an sich die nötigen Voraussetzungen erfüllt, um eine herausfordernde KI zu erstellen und du versuchst genau das, richtig? Die Entwickler planen Aivolution mit der Dydo-KI zu ersetzen. Aivolution war eines von Tromans Projekten und er wollte eine lernfähige KI. Was denkst du über lernfähige KI? Was denkst du sind die Chancen einer solchen KI und wo liegen ihre Grenzen?
DylanDog: Nun… ich habe nicht versucht eine zu bauen, ich habe schon eine gebaut! Ich hätte das bis November/Dezember 2009 nicht sagen können, aber jetzt bin ich ziemlich zufrieden mit der geleisteten Arbeit. Ich habe immer noch einige Ideen im Kopf wie man DyDo weiter verbessern könnte, aber ich sehe es jetzt schon als eine wirklich herausfordernde KI an.
Soweit ich weiß kannst du mit dem derzeitigen Engine-Interface keine lernende KI aufstellen, weil es dir an Wegen mangelt eine Datenbank zu verwalten, in der Informationen permanent gespeichert werden (ich meine auch nach Spielende). Troman konnte das vermutlich durch ein ad hoc eingebautes Feature für AIvolution im Warzone-2100-C-Code tun, irgendwie erkennt Warzone, dass AIvolution geladen ist und speichert einige Informationen. Lernfähigkeiten wären sicher eine tolle Sache für eine KI.

Dies ist eine Übersetzung des englischen Originals „Modder interview #1: DyDo AI/DylanDog“.

Kommentare zu diesem Artikel abgeben (benötigt Boardaccount)

Modder interview #1: DyDo AI/DylanDog

Filed under: English,Miscellaneous von Kreuvf um 13:46:16

DylanDog, author of the well-known DyDo AI, is the one interviewed this time. Plain and simple: He is a mod developer and no programmer. He used to play with JavaScript, PHP and AJAX in the past. Playing RTS games such as C&C, Warcraft or Empire Earth always have been one of his passions. Nowadays the amount of free time has been reduced a lot, which is why he’s developing DyDo mostly in the train, when going and returning to and from work. If there is some spare time in the evening, then he might use that as well for developing, while there is only a slight chance to find him developing on weekends.

Kreuvf: How did you get in touch with Warzone 2100 first? And how long ago is it?
DylanDog: I think I have found it at the beginning of 2009 with Google while searching for freeware RTS games. Then at some point in May 2009 I decided to take a look at BecomePrey AI, I do not remember why I did it. I started by improving few events, then I realized that the things I wanted to implement would have required a complete new AI.

Kreuvf: What was your reason to actually start trying another AI? Was the standard AI too weak? How is BecomePrey different? And what’s different in DyDo?
DylanDog: It was just curiousity! I started looking at the BP script because everyone thought it was the best AI. Then I soon realized that I was able to understand the scripting language and that it would have been a great thing working on an AI for an RTS game. The biggest difference between DyDo and BP? Everything!!! From harvesting (building derricks) to base building, from power management (BP has none) to droid-teams management (BP has no defending team, its base is basically undefended if I remember well). Research paths are also different… and DyDo is intended to have 4 different personalities even if the differences between them are not really pronounced yet. I have to thank Niker, BP developer, as he really made a great documentation about BP which really made things easier. Also some part of DyDo AI scripting code (few functions) is taken from both the standard AI and AIvolution, which I think is a better AI then both the Standard AI and BPAI.

Kreuvf: Among all those features, which one would you say is the one that a) is working best, b) is the one you are most proud of and c) is the most problematic one implementation-wise?
DylanDog: To a: I can’t really say which one’s the best as there are so many good working things. There are quite few features which work well:

  • DyDo manages well two droid defending teams and two droid attacking teams (plus the VTOL and the helping teams).
  • One of the teams is mixed (cyborgs + tanks).
  • It never sends two trucks to the same oil derrick.
  • Trucks are also organized in teams building (builds structures), defending (builds defences) and harvesting (builds derricks).
  • Target selection is not random: If the AI requires power, then enemies‘ derricks are attacked and not enemies‘ bases.
  • The number of structures to build is related to the number of oil derricks.
  • Research isn’t done randomly.
  • The power management is also working fine, I think.

To b: In all other AIs the decisions of what to do are mostly taken by various single events in the script, in DyDo not. I have introduced a centralized event to control the most important actions, I called it „AIbrain“. This event is executed every second, collects some statistics and decides which other events should be activated and which not. The power management is made here. I also like the fact I introduced the AI strength levels… and obviously I am proud of DyDo is not cheating! It does not get any more power, it does not make any research available to itself and it gets no gifts at all (droids or structures). The only thing it does which a human player cannot do is to collect statistics about the enemies.
To c: VTOL management could be improved a lot, and I will do it… problematic is also to give a real different behavior to the AI personalities. But really problematic is to meet the expectations of WZ players!!! Many think that an AI can act like a human player, but this will never be the case. A good WZ player is able to beat an AI by using different tactics. The capability to use multiple tactics (like the decision to choose a specific research path for a precise purpose) is difficult to implement. Concerning the AI strength: Playing a game 1 AI vs. 1 human player, the human player will always win, „all vs. all“ in a 4 game is a different thing (and even more difficult if the DyDo strength is set to 5).

Kreuvf: What do you think are limiting factors of the game’s AI engine for you as an AI developer? Which things would you like to add, but can’t due to those limitations?
DylanDog: I have no experience with other AI engines, but I have to say that the warzone AI engine is really great. As AI developer you almost have everything you need to develop a good AI. Surely there are few things which still could be implemented but they would not really make big changes. There is one thing which is a bit limiting: Distance calculation via real path-finding. What I mean is that actually I cannot know how long is the route that a truck would use to reach a certain point. There is a function which gives the distance between two points but this is „just“ the pure point to point distance „on the air“, this function does not make a path finding or calculates the route that a truck would take. A new function which would give the route distance to reach an object would be great but I think it is really difficult to implement.

Kreuvf: Summarised this does mean that the game itself has the requirements necessary for building a challenging AI and you try to build one, right? The developers are planning to replace Aivolution with DyDo AI. Aivolution was one of Troman’s projects and he wanted the AI to be able to learn. What do you think about AIs learning? What do you think are the chances of such an AI and what are its limitations?
DylanDog: Well… I am not trying to build one, I made it already! I couldn’t state that until November-December 2009 but now I am quite satisfied with the job done. I still have some ideas in mind on how to improve DyDo but I already consider it a real challenging AI.
As far as I know with the current Engine Interface you cannot deploy an AI which is learning, because there is no way to manage a database where to store permanent information (I mean also after the game is over). Troman was able to do this possibly because of some feature implemented „ad-hoc“ for AIvolution in Warzone 2100 „C“ code, in some way Warzone recognizes that AIvolution is loaded and saves some info. Learning capabilities would be a great thing for an AI for sure.

This article has been translated into German and is available under the title „Modder-Interview #1: DyDo-KI/DylanDog“.

Comment on this article (board-account required)

05.01.2010

Uploads gesperrt

Filed under: Deutsch,Homepage von Kreuvf um 18:44:18

Ich habe soeben die Uploads im Board auf unbestimmte Zeit gesperrt. Es ist daher nicht mehr möglich neue Dateien hochzuladen. Alte Dateien bleiben erhalten.

Grund: Es können aufgrund des vollen Uploadverzeichnisses sowieso keine neuen Dateien mehr hochgeladen werden.

Kommentare abgeben (benötigt Boardaccount)

« Vorherige SeiteNächste Seite »