Danke euch beiden!
Und Sry für die verspätete Antwort!
Große Firmen werden wohl viele ihrer Tools im eigenen Haus entwickeln.
Das ist mir auch schon aufgefallen.
Ich habe mittlerweile auch etwas mehr Recherche dazu betrieben und möchte meine Erkenntnisse mal mit euch teilen, falls noch jemand anderes auf das selbe Thema trifft.
Game Engines
BlueByte / Ubisoft scheint wohl für Anno / Die Siedler eine eigene Game Engine mit externen Tools entwickelt zu haben.
Der Executive Producer von Anno 1800 (
Burkhard Ratheiser) hat dazu wohl einen Blog Post verfasst:
The evolution of the Anno engine
Einige Zitate sind mir dabei besonders aufgefallen:
"For Anno 1404, the 3D engine was developed completely from scratch."
Scheinbar entwickeln große Firmen ihre Game Engines wirklich komplett von Scratch selbst, statt auf fertige Game Engines wie Unity / Unreal Engine usw. zu bauen.
Das erklärt wohl auch die sehr gute Qualität der (AAA) Spiele. Die Performance von Anno 1800 würde man mit einer Game Engine wie Unity / Unreal Engine, die für alle Spiele zugeschnitten sind, statt auf eins speziell, wohl nie erreichen.
Bei Anno 2070 haben sie die Game Engine zwar wiederverwendet, aber umgeschrieben.
Bei Anno 2205 haben sie dann wieder eine komplett neue Game Engine geschrieben:
Starting from scratch again – but properly this time: For Anno 2205, a completely new engine architecture was designed from scratch, which incorporated all the experience gained from the previous games.
Bei Anno 1800 hat man wohl wieder eine komplett neue Game Engine von Scratch geschrieben.
Ehrlich gesagt hat mich das Vorgehen erst etwas verwundert.
Ich bin bis dahin davon ausgegangen, dass auch große Game Studios ihre internen Game Engines & Tools einmal entwickeln und immer wieder verwenden, aber das Gegenteil scheint der Fall zu sein.
Sie schreiben fast immer wieder eine neue, eigene Game Engine, die scheinbar perfekt auf das Spiel zugeschnitten ist.
Tools
Zum Thema Tools ist mir auch etwas aufgefallen:
Es gab nie eine Art "Super Tool" (Editor), welches alles konnte.
Also nicht so wie z.B. in Unity / Unreal.
It should be mentioned as well that an engine is basically just half of the story. The tools and workflows which are used to create and implement the content are just as important. There are two very different philosophies behind all that: On the one hand the one big »uber tool« which incorporates everything. On the other hand, there may be a certain number of highly specialized individual tools. For Anno, we always opted for the latter one, and so far it has worked out nicely for us
@Oiewjr Du hattest also vollkommen recht.
Die großen Firmen scheinen ihre Tools alle selbst zu bauen.
Versionierung
Die Versionierung ist nicht besonders kompliziert, letztenendes wird der Aufbau auch nur in einem
Textdokument im XYZ Format persistiert und kann so ganz einfach regulär versioniert werden, ob extern
oder intern. Meistens erfolgt die Kompression dieser Dateien dann erst im produktiven Deployment.
Ja, das hatte ich auch schon gedacht.
Allerdings war mir nicht klar, ob das im großen Stil noch funktioniert.
z.B. wenn du Spielwelten generierst und die Daten nur noch in eine Datenbank schreibst o.ä.
Ich kann mir noch nicht so richtig vorstellen, dass Blizzard für WOW die Spielwelt komplett mit einem externen Tool entwickelt und nie "live" noch Eingriffe wagt.
Das würde ja bedeuten, dass sie erst die Spielwelt im externen Tool generieren und dann jedes mal das Spiel neu starten müssten, ehe sie das ganze im Game sehen - hört sich nach einem komplizierten Workflow an.
Das mit den Zwischenebenen war mir natürlich schon klar, aber das hatte ich so eig. gar nicht gemeint.
Als ich WoW gespielt hatte gab es immer pre-Expansion Patches, die schon sämtliche Änderungen am bestehenden Content enthalten haben. Der neue Content war dabei ebenfalls im Client und Server vorhanden, aber hinter einem Feature Flag versteckt. Das Flag lässt sich dann einfach zum Releasezeitpunkt umschalten oder auch wieder zurückschalten wenn es Probleme mit dem neuen Content gibt. Verschiedenen Cluster würden auch dafür sorgen das Spieler mit und ohne Expansion nicht mehr miteinander spielen können.
Ah, interessant!
Dann wird das also mit Feature Flags gelöst.
Auch dein Argument zu den verschiedenen Clustern scheint einleuchtend - vermutlich haben sie da wirklich nur ein Cluster.