Schlachtfeld

Der Stafflerblog von Warzone2100.de

08.10.2007

Spezialinterview #1: Warzone 2100 2.1

Filed under: Deutsch,Entwicklung von Kreuvf um 16:10:24

Wie im Board angekündigt hatte ich ein Interview mit DevUrandom über die kommende Version 2.1 von Warzone 2100. Zuerst gibt es aber ein paar Fakten zu DevUrandom, dann folgt das Interview:
Derzeit studiert er Mathematik und Informatik in Deutschland. In seiner Freizeit betreibt er Sport und interessiert sich für das Mittelalter.

Seinen ersten Kontakt zu WZ hatte er am 8. Juli 2005, was auch der Tag war, an dem er das erste Mal Hand am Quellcode angelegt hatte. Damals hieß das Projekt Warzone ReDev und der Quellcode war bei BerliOS untergebracht. Version 0.1 war bei LinuxGames.com und Linux-Gamers.net angekündigt worden, zwei Wochen bevor DevUrandom in die Welt von Warzone eingetaucht ist. Er war sofort von Warzone 2100 fasziniert (es war das einzige Echtzeitstrategiespiel für Linux, dass er damals kannte) und die Art eigene Fahrzeuge durch Zusammenbauen einzelner Teile zu erschaffen erinnerte ihn an sein Allzeitlieblingsspiel der Kategorie rundenbasierter Strategiespiele, Sid Meier’s Alpha Centauri.
Einige Tage später begann sein Einsatz für Warzone mit einer riesigen Wunschliste und einige Wochen später war er Teil des Projekts.

Seither hat er an vielen Teilen von Warzone gearbeitet. Derzeit ist er verantwortlich für das Erstellen von Releases (Installer kompilieren, Quellcode-Tarballs, Ankündigen bei verschiedenen Spieleseiten und Benachrichtigen von Linuxdistributionen).

Einige Leute halten ihn für einen Projektleiter, was er aber nicht ist. Das Kernteam arbeitet völlig demokratisch und jenen, die als „Experten“ auf dem gefragten Gebiet betrachtet werden, wird die meiste Beachtung geschenkt, mit einer leicht schwereren Gewichtung der „älteren“ Mitglieder. Die letzte Entscheidung liegt jedoch bei der Person, die die eigentliche Arbeit verrichtet.

Kreuvf: Guten Tag, DevUrandom, schön dich heute hier zu haben. Wie du schon weißt werde ich gewisse Fragen zur kommenden Version 2.1 von Warzone 2100 stellen.
DevUrandom: Klar, fang‘ an.

Kreuvf: Die Version ist für Weihnachten 2007 angesetzt und es wurde als ein Netzwerk-Release angekündigt. Könntest du erklären was dies im Detail bedeutet?
DevUrandom: Wir wollen 2.1 in etwa Ende des Jahres rausbringen. Wir garantieren nicht, dass es fertig sein wird, um unter Eurem Weihnachtsbaum zu liegen (oder wie auch immer Ihr Weihnachten feiert, wenn überhaupt), aber das ist das Ziel, das wir anstreben. Das Haupt“feature“ ist es die Netzwerkfähigkeiten zwischen allen Systemen stabil zu bekommen, daher auch der Name.

Deshalb werden wir den zugrunde liegenden Netzwerkcode durch etwas ersetzen, das nicht so anfällig für Unterschiede ist, die durch die Verwendung unterschiedlicher Betriebssysteme und 32bit/64bit-Systeme entstehen können. Dieses System (der Autor nennt es „netprimitives“) wird zu großen Teilen von Freddie Witherden (EvilGuru) geschrieben und wird derzeit in Warzone eingebaut.

Kreuvf: Also wird man tatsächlich in der Lage sein ohne Probleme gegen jemanden zu spielen, der Linux benutzt, jemanden, der Mac OS X benutzt, und jemanden, der Windows benutzt?
DevUrandom: Dies ist das Ziel, ja. Da wir einem Entwicklungsmodell folgen, bei dem das Spiel mit jedem Patch stabiler wird, mag es bei 2.1.0 vielleicht nicht optimal sein, aber wir tun unser Bestes, um die bestmögliche Spielerfahrung abzuliefern.

Nebenbemerkung zum Warzone-Versionsschema: 2.1.0 -> Hauptversion = 2, Nebenversion = 1, Patchversion = 0. Erhöhungen der Hauptversion finden nur sehr, sehr selten statt, wenn etwas wirklich Bahnbrechendes geändert wurde. Nebenversionen könnten auch Featureversion genannt werden: Wir bauen neue Features in diese ein. Patchversionen, auch „Bugfixversionen“, sind nur dazu gedacht Fehler zu beheben.

Kreuvf: Welche anderen Änderungen sind für 2.1 geplant neben den Netzwerkcode-Änderungen? Und wie werden sich diese Änderungen auf die minimalen Systemanforderungen für Warzone 2100 auswirken?
DevUrandom: Was bisher fertig ist:

  • AIVolution von Troman: Eine verbesserte KI mit Lernfähigkeiten.
  • Multiturrets von Watermelon: Droids (so nennt Warzone Einheiten intern) können mehrere Waffentürme statt nur einem haben. Stelle dir das vor wie einen Panzer: Er hat ein Geschütz für Schüsse auf hohe Distanz gegen gepanzerte Einheiten und ein MG zur Verteidigung in der Nähe gegen weiche Ziele.
  • Verbesserte Zielwahl-KI (afaik Troman+Watermelon): Droids sollten die Ziele, die sie angreifen, intelligenter auswählen.
  • Kollisionsbasiertes Treffersystem von Watermelon: Ob ein Ziel von einem Projektil getroffen wird oder nicht, wird nicht länger durch ein Würfelsystem bestimmt. Stattdessen schädigen Projektile nur das Ziel, das sie auch treffen. Wenn sich die Einheit, auf die gefeuert wurde, wegbewegt während das Projektil in der Luft ist, wird es, weil es eben nicht getroffen wird, nicht mehr geschädigt werden.
  • Von Troman wurde die Skriptsprache verbessert. Sie unterstützt nun Strings, Funktionen mit lokalen Variablen und und und…
  • Ein System, das die Fähigkeit zur Verfügung stellt einem Droid von jeder Seite Panzerung zur Verfügung zu stellen (statt dem gesamten Droid an sich nur eine Panzerung), wurde von Watermelon geschrieben. Das bedeutet, dass man Panzer haben kann, die oben und hinten schwach gepanzert sind, dafür aber vorne sehr stark. Dies sollte Mods mit einem höheren Fokus auf Taktik unterstützen. (Derzeit noch nicht in Warzone selbst benutzt.)

Neben dem Netzcode teste/arbeite ich gerade an verschiedenen Dingen im Zusammenhang mit Grafik, eines davon ist ein neugeschriebener Terrainrenderer, ein anderer TrueType-Schriftarten. Der Renderer ändert sich derzeit häufig und Rendertechniken werden ausprobiert und wieder verworfen, weshalb es sein könnte, dass es nicht zum Freeze (Testperiode vor dem Release) und damit nicht für 2.1 fertig ist, auch wenn ich mein Bestes versuche.
Da die TrueType-Schriften sehr nützlich für Übersetzungen sein können (man kann theoretisch jede Sprache damit unterstützen), richte ich mein Hauptaugenmerk jetzt darauf. (Und es ist auch ein wenig einfacher einzubauen, weil es nicht 1001 Wege gibt das zu tun.) (Anmerkung der Redaktion: Interview wurde am 23.09.2007 gehalten, mittlerweile durch Giel mithilfe der Bibliothek QuesoGLC eingebaut) Was mich zur nächsten großen Änderung bringt, die noch nicht genannt wurde: NLS (Native Language Support, Muttersprachenunterstützung)

Wenn du die aktuellen Testversionen ausprobiert hast (oder du die Mailingliste oder die SVN/Trunk-Version beobachtet hast), hast du vielleicht die Option „NLS“ in der Kompotentenauswahl bemerkt. Das bedeutet, dass es jetzt möglich ist (sein sollte) Warzone in so gut wie jede Sprache zu übersetzen und der Benutzer die gewünschte Sprache wählen kann, während Warzone läuft. Vorher war jeder Text in den Menüs fest in der ausführbaren Datei verankert und Dinge wie Einheitenbeschreibungen und Missionseinweisungen waren in viele Textdateien zerstreut. Jetzt befinden sich alle Strings an einem Ort und können einfacher übersetzt werden. Man braucht Warzone nicht neuzuinstallieren, um die Sprache zu wechseln.

Anforderungen: Das neue Treffersystem kann ein wenig fordernder für die CPU sein, aber ich zweifle, dass man das bemerken wird. Die Rendertechniken für den Terrainrenderer ändern sich momentan zu sehr, um da auch nur irgendeine Abschätzung geben zu können.

Allgemein versuchen wir so viele Leute wie möglich und sinnvoll zu unterstützen. Es wird daher keine Rückkehr des Softwarerenderers geben und wenn man irgendwas auf der Höhe einer Radeon- oder GeForce-Karte hat, sollte man auf der sicheren Seite sein. Wenn es der Renderer rechtzeitig schafft, werden Vertex Arrays (VA) auf jeden Fall benötigt werden, was aber sogar Karten der TNT-Reihe unterstützen so weit ich weiß.

Kreuvf: Wow, das ist überwältigend. Diese verbesserte KI von Troman: In wie weit wird diese „verbessert“ sein? Wird diese bessere Taktikentscheidungen treffen und wie funktioniert das Lernen?
DevUrandom: Besser fragst du da Troman. Ich kann dir sagen, dass sie von Grund auf neu geschrieben wurde und dass sie sich merkt wo man sie gewöhnlich angreift und mit welchen Waffen, damit sie für das nächste Mal bessere Verteidigung errichten kann.

Kreuvf: Also umfasst das Lernen nicht das Lernen zwischen den Spielen, sondern eher sowas wie match-bezogenes Lernen – die KI lernt für ein Spiel und speichert nichts?
DevUrandom: Nein, ich denke, dass es kartenbasierte Daten speichert, damit es Vorteile aus früheren Spielen ziehen kann und die Taktik über mehrere Sessions hinweg verbessert. Was ich definitiv weiß, ist, dass selbst erfahrenere Spieler schwere Zeiten mit der neuen KI haben werden.

Kreuvf: Hört sich nach einer stärkeren KI an – etwas, wonach sich die Leute seit dem Release von Warzone im Jahre 1999 gesehnt haben.

Ich will zu meinem letzten Thema für heute kommen: Balancing. Wie du sehr wahrscheinlich weißt, bin ich ein Balancefanatiker und all diese Dinge scheinen, für mich, das gesamte Balancing stark zu beeinflussen. Die Frage ist nun: Wie spürbar sind diese Änderungen in Bezug auf das Balancing, sind z. B. einige Waffen, die vorher schwach waren, jetzt stark?
DevUrandom: Besonders das Treffersystem beeinflusst das Balancing sehr. Attacken auf hohe Reichweiten und Schüsse auf sich schnell bewegende Ziele können ziemlich ungenau sein. Das letztere gilt z. B. für VTOLs, die sehr schwer zu treffen waren. Dies wurde durch größere Trefferboxen ausgeglichen (man kennt das vielleicht von Spielen wie Counter-Strike), um den Effekt weniger sichtbar zu machen. Artillerie mit hoher Reichweite kann jetzt auch einige Probleme haben. Wir werden versuchen dies bis zum Release auszugleichen und stimmen das Balancing während der 2.1er- und der 2.2er-Reihe (die für Sommer nächsten Jahres angepeilt ist) ab. Aber Schüsse auf hohe Reichweite und auf sich schnell bewegende Ziele werden auf jeden Fall schwerer als vorher. Dies sollte mehr Taktiken erlauben und kleinen, aber schnellen Einheiten helfen, wie Cyborgs zum Beispiel.

Hinweis: Ich bin weder so sehr mit dem Balancing oder dem eigentlichen Spielen vertraut, noch spiele ich seit dem Anfang, genieße meine Antworten daher mit Vorsicht.

Kreuvf: Okay, DevUrandom. Vielen Dank für dieses Interview und dafür, dass du alle Fragen erschöpfend beantwortet hast.
DevUrandom: Gern geschehen.

Kommentare zu diesem Artikel abgeben (benötigt Boardaccount)

Special interview #1: Warzone 2100 2.1

Filed under: Development,English von Kreuvf um 16:10:09

As announced in the board I had an interview with DevUrandom about the upcoming version 2.1 of Warzone 2100. First some facts about DevUrandom, then the interview:
Currently he is studying mathematics and computer science in Germany. In his freetime he does sports and is interested in the middle ages.

His first contact with WZ was on the 8th of July, 2005, which also was the day he touched the source-code for the first time. Back then the name was Warzone ReDev and the source-code was hosted at BerliOS. Version 0.1 had been announced on LinuxGames.com and Linux-Gamers.net two weeks prior to DevUrandom immerging into the world of Warzone. He was immediately fascinated by it (it was the only realtime strategy game for Linux he knew of at that time) and the way to design own vehicles by assembling parts reminded him of his all-time-favorite turn-based strategy game Sid Meier’s Alpha Centauri.
Some days later his commitment to Warzone started with a huge wishlist and a few weeks afterwards he was involved with the project.

Since then he worked on many parts of Warzone. Currently he is responsible for creating releases (compiling installers, source-code tarballs, announcing on various game sites and notifying Linux distributions).

Some people confuse him with a project leader, which he is not. The core team works fully democratic and those who are considered „experts“ in the area in question are usually getting paid the most attention, with a slight focus on the „older“ members. However, the final decision goes to the person actually doing the work.

Kreuvf: Good day, DevUrandom, nice to have you here today. As you already know I am about to ask you certain questions regarding the upcoming version 2.1 of Warzone 2100.
DevUrandom: Sure, go on.

Kreuvf: The version is scheduled for x-mas 2007 and it was announced as a network-release. Could you explain what that means in detail?
DevUrandom: We want to get 2.1 out roughly at the end of the year. We don’t guarantee that it will be ready to lie under your christmas tree (or however you celebrate christmas, if at all), but that is the target we aim at. The main „feature“ is to get the networking stable on and between all systems, hence the name.

Therefore we will replace the underlying network code with something that is not so prone to differences which may arrise from using different operating systems and 32bit/64bit systems. That system (the author calls it „netprimitives“) is to large parts written by Freddie Witherden (EvilGuru) and currently being merged into Warzone.

Kreuvf: So you will actually be able to have a match vs. someone who uses Linux, someone who uses Mac OS X and someone who uses Windows without any problems?
DevUrandom: That is the goal, yes. As we follow a development model which makes the game more and more stable as the patch version increases, it may not be optimal at 2.1.0, but we always do our best to deliver the best possible gaming experience.

Sidenote on Warzone versioning: 2.1.0 -> major version = 2, minor version = 1, patch version = 0. Major version increases happen only very very seldomly when something really groundbreaking is changed. Minor version may also be called feature version: We include new features into those. Patch version, aka bugfix versions are only intended to fix bugs.

Kreuvf: Besides the changes on the net-code, what other changes are scheduled for 2.1? And how will those changes affect the minimum requirements for Warzone 2100?
DevUrandom: What is already done:

  • AIVolution by Troman: An enhanced AI with learning capabilites.
  • Multiturrets by Watermelon: Droids (which is how Warzone calls the units) can have multiple turrets instead of just one. Think of it like a tank: It has a cannon for long distance shooting on armored vehicles and an MG for close range defense against soft targets.
  • Improved AI target selection (afaik Troman+Watermelon): Droids should select the targets they attack more intelligently.
  • Collision-based hit-system by Watermelon: If a target is hit by a projectile or not is no longer predicted by a dice system. Instead the projectiles really damage only the target which they hit. If the unit that was fired at moves away while the projectile is in flight, it won’t be damaged anymore as it is not hit.
  • The scripting language was enhanced by Troman. It now supports strings, functions with local variables and and and…
  • A system which provides the ability to assign armor to each side of a droid (as opposed to the droid as a whole) was written by Watermelon. This means that you could have tanks which are weakly armored on the top and behind, but very strong on the front. This should support mods with higher focus on tactics. (It is not yet used in Warzone itself.)

Besides the netcode, I am currently working/testing different things with graphics, of which one is a rewritten terrain renderer and another is TrueType fonts. The renderer is a lot in flux currently and techniques of rendering are tried and thrown away a lot, so it may not be ready for the freeze (testing period before the release) and thus not 2.1, even though I try my best.
As the TrueType fonts may be very useful for translations (you can theoretically support every language), I am focussing on that now. (And it is a little bit easier to implement as well, since there are not 1001 ways of doing it.) (Editor’s note: interview was held on 23rd Sep. 2007 and TrueType has by date of publication been implemented by Giel using QuesoGLC) Which brings me to another major change not mentioned yet: NLS (Native Language Support)

If you have tried the current snapshots (or been watching the mailinglist or svn/trunk), you may already have noticed the option „NLS“ in the component selection. It means that now it is [should be] possible to translate Warzone to virtually every language and have users select which language they want while Warzone runs. Before every piece of text in the menus was hardcoded in the executable and things like unit descriptions, mission briefings came in lots of textfiles. Now the strings are all in one location and can be translated more easily. You don’t have to reinstall Warzone to change the language.

Requirements: The new hitsystem may be slightly more demanding on the CPU, but I doubt you will notice that. The rendering techniques for the terrain renderer are too much changing at the moment as that I could give any estimate on that.

Generally we try to support as many people as possible and reasonable. So there won’t be a return of the software renderer and if you have something on par with a Radeon or GeForce card you should be on the safe side. If the renderer makes it in time, Vertex Arrays (VA) will definitely be required, but even TNT grade cards support that as far as I know.

Kreuvf: Wow, that’s overwhelming. That enhanced AI by Troman: In what way will it be „enhanced“? Will it make better tactic-decisions and how does the learning take place?
DevUrandom: You better ask Troman himself about this. I can tell you that it was rewritten from ground up and that it can remember where you attack it usually and with which weapons, so that it can build better defenses against you the next time.

Kreuvf: So the learning does not imply inter-game-learning, it’s more like match-restricted learning – the AI learns for one match and doesn’t save anything?
DevUrandom: No, I think it saves per-map data so it can gain advantage from earlier games and improve its tactics over multiple sessions. What I definitely know is that messing with it is a tough task, even for more experienced players.

Kreuvf: Sounds like a tougher AI – something people have looked for since Warzone’s initial release in 1999.

I want to come to my last topic for today: Balancing. As you most probably know I am a balance-fanatic and all those changes seem, to me, to affect the overall-balancing alot. The question now is: How noticeable regarding the balancing are those changes, e.g. are some weapons that were weak before strong now?
DevUrandom: Especially the hitsystem affects balancing a lot. Long range attacks or shooting on fast moving targets can be quite inaccurate now. The latter applies e.g. to VTOLs, which became quite hard to hit. This was compensated by bigger hitboxes (you may know that from games like Counter-Strike), to make the effect less visible. Long range artillery may also have some problems now. We will try to compensate for that till the release and tune balancing during the 2.1 release cycle and for 2.2 (which is targeted summer next year). But long range shots and shots on fast targets will definitely be harder than before. This should bring in more tactics and help smaller but faster units, like Cyborgs.

Note: I am not too much involved with balancing or playing and neither do I play since the beginning, so take my answer with caution.

Kreuvf: Okay, DevUrandom. Thank you very much for this interview and for exhaustingly answering all the questions.
DevUrandom: You are welcome.

Comment on this article (requires board-account)

01.09.2007

2.0.8 in den Startlöchern?

Filed under: Deutsch,Entwicklung von Kreuvf um 20:12:10

In letzter Zeit war im Entwicklerchat immer öfter die Rede von 2.0.8, es besteht also Grund zur Annahme, dass wir uns vielleicht demnächst schon auf 2.0.8 freuen dürfen.

In der Changelog sind derzeit u. a. folgende Änderungen für 2.0.8 vermerkt:

  • Tasten werden wiederholt, wenn sie lange genug gedrückt werden („A“ wird dann „AAAAAAAAA“)
  • Crash beim Übergang von Kampagne 1 zu 2 und Kampagne 2 zu 3 behoben (Fehler #9497)
  • Crash beim Empfang ungültiger Sound-IDs behoben (Fehler #9694)
  • Verhindern eines Durch-Null-Teilen-Fehlers, wenn VTOLs angewiesen werden eine Einheit mit den selben X- und Y-Koordinaten anzugreifen (Fehler #9704)
  • Fortschrittsanzeige ist endlich wieder weiß

Kommentare zu diesem Artikel abgeben (benötigt Boardaccount)

29.08.2007

Neuer Webmaster

Filed under: Deutsch,Homepage von Kreuvf um 11:09:54

Seit dem 17.08.2007 bin ich offiziell Domaininhaber der Domain „warzone2100.de“, das Impressum ist bereits entsprechend aktualisiert.

Was wird sich ändern?

Nichts.. oder zumindest nicht viel, denn MaC bleibt nach wie vor Administrator auf der Seite und ich werde ebenfalls nach wie vor die Seite so gut es geht pflegen.

Nachdem das Board jetzt eingerichtet ist und der Versand von Newslettern kein Problem bereitet, wird als nächstes unser Download Center dran sein, die Überarbeitung kann sich allerdings noch einige Monate hinziehen.

Kommentare zu diesem Artikel abgeben (benötigt Boardaccount)

12.08.2007

Kein Umzug auf einen Rootserver

Filed under: Deutsch,Homepage von Kreuvf um 18:45:42

Entgegen unserem eigentlichen Vorhaben dieses Jahr auf einen eigenen Server mit Rootzugriff (auf Deutsch: Wir könnten mit dem Server so gut wie alles machen, was wir wollten) umzuziehen, werden wir lediglich auf einen höheren Webhosting-Tarif bei unserem Webhoster, all-inkl.com, wechseln.

Der Hauptgrund für diesen Rückzieher ist, dass Warzone2100.de noch nicht bereit ist auf einen eigenen Server mit all seinen Möglichkeiten umzusteigen. Es fehlt vor allem an entsprechend fachkundigen Stafflern, die in der Lage sind all die vielen Arbeiten, die durch einen solchen Server anfielen, fehlerfrei zu erledigen.

Der nächste Aspekt hängt mit dem schon genannten eng zusammen: Serverkonfiguration kostet viel Zeit, vor allem Einarbeitungszeit. Die Zeit ist aber knapp und sich an etwas Neues unter Zeitdruck heranzuwagen, führt fast zwangsläufig dazu, dass die Konfiguration entweder langsam oder unsicher oder langsam und unsicher ist. Da wir auf der Seite eine möglichst hohe Verfügbarkeit erreichen wollen, ist so ein Zustand selbstverständlich nicht hinnehmbar.

Ein letzter Grund ist der Preis für so einen eigenen Server. Über 50 EUR pro Monat ist ein durchaus angemessener Preis, allerdings verglichen mit den nicht mal 5 EUR pro Monat für das Webhosting dann doch wieder ein ganzer Batzen. Zudem ist der Server das Geld nicht wert, wenn man zwar für den Server zahlt, ihn aber nicht perfekt bedienen kann.

All jene, die sich schon die wildesten Dinge nach unserer Ankündigung ausgemalt haben, müssen wir damit leider enttäuschen, wir werden uns aber weiterhin über jedes konstruktive Feedback zur Seite freuen und uns größte Mühe geben der Seite den letzten Schliff zu verleihen.

Links

Neujahrsansprache 2007 (beinhaltet Ankündigung für den Serverumzug)
all-inkl.com – Webhost von Warzone2100.de

Kommentare zu diesem Artikel abgeben (benötigt Boardaccount)

« Vorherige SeiteNächste Seite »