Ausprobieren von Fabrik-Layouts in Factorio
Ich hatte im Computerspiel Valheim großen Spaß am Bauen mit dem Snap-Grid. In Gary's Mod fand ich das Bauen ziemlich unbefriedigend. Nun spiele ich Factorio und habe da ziemlich viel Spaß daran, immer größere Fabriken zu bauen.
Die Geschichte von Factorio ist eigentlich ganz einfach: Man stürzt mit seinem Raumschiff auf einem Planeten ab, der Rest der Besatzung stirbt. Man muss also selbst eine Wirtschaft aufbauen, mit der man Raketen bauen kann, damit man wieder nach Hause fliegen kann. Dabei verschmutzt man den Planeten, die einheimischen Tiere wehren sich. Daher muss man sich entsprechend rüsten und die alle abzuknallen. Also letztlich die perfekte Ressourcenextraktion plus Zerschlagung von Gegenwehr.
Dabei braucht man enorme Ressourcen, somit muss man immer mehr auffahren. Am Anfang fängt man an it einer Hacke ein bisschen Kohle und Stein abzubauen. Dann baut man einen Erzförderer, der das für einen automatisch macht. Und dann noch einen. Aber so ein Erzförderer für Kohle braucht auch Kohle als Brennstoff. Und den händisch nachfüllen ist natürlich auch doof. Daher kann man die Förderer einfach nach oben auf ein Fließband kippen lassen und dann stopft man mit Greifarmen von unten Kohle als Treibstoff rein.
Somit kommt da immer genug Kohle an und das Fließband wird erst dann leerer, wenn die Kohle abgebaut ist.
Kombinierte Fließbänder
Ein weiteres Ding, was ich schnell entdeckt hatte, sind kombinierte Fließbänder. Die Schmelzöfen brauchen sowohl Eisen-, Kupfererz oder Steine als Material und Kohle als Treibstoff. Man hat am Anfang noch keine langen Greifarme, daher kann man das gut auf ein Band stecken. Somit braucht man nur ein Band und einen Greifarm pro Schmelzofen.
Der zentrale Bus
Das Spiel wird dann aber schnell ziemlich komplex. Man hat Kohle, Eisen- und Kupfererz und Steine. Dann hat man Eisenplatten, Kupferplatten und Ziegel als erste Zwischenprodukte. Aus denen kann man dann Eisenzahnräder und Kupferdraht machen. Und dann daraus elektronische Schaltkreise, Fließbänder, Greifarme, rote Forschungspakete. Mir war am Anfang noch gar nicht klar, was man eigentlich für was noch alles braucht. Ich wollte also irgendwie sicherstellen, dass ich immer alles zur Verfügung habe.
Man kann also aus dem Chip-Design, mit dem das Spiel erstaunlich viel gemeinsam hat, den zentralen Bus übernehmen. Und so hatte ich dann durchgehende Fließbänder mit den Dingen. Die Fabriken habe ich in Straßen nach oben und unten gebaut. Mit Teilern habe ich dann immer vom Bus abgezweigt. Jedes neue Produkt wurde dann ein weiteres Band.
Das ist mit der Zeit etwas eskaliert und ich habe den See getroffen. Also musste ich einmal abbiegen. Und aus irgendeinem Grund wollte ich Bänder sparen. Also habe ich immer zwei Produkte auf ein Band kombiniert.
So hatte ich dann ein paar Bänder mit allen Dingen.
Die habe ich dann wieder aufgeteilt. War also nicht so ganz sinnvoll.
Diese Kombinieren auf dem Bus werde ich nicht nochmal machen, das ist irgendwie doof. Aber der Bus an sich ist ganz nett.
Gewisse Zwischenprodukte wie Kupferkabel sollte man aber nicht transportieren. Aus einer Kupferplatte entstehen zwei Kabel. Daher ist es besser die Platten zu transportieren und direkt bei der Fabrik die Kabel zu produzieren.
Abhängigkeitsgraphen
Letztlich ist das Spiel irgendwas mit Just in Time, Lean Production oder Kanban. Man muss dann von jedem Fertigungsschritt so viel bauen, dass die nächsten Schritte hinreichend viel Material angeliefert bekommen.
Will man zum Beispiel Transportbänder bauen, braucht man dafür Eisenzahnräder und Eisenplatten. Für die Eisenzahnräder braucht man auch wieder Eisenplatten. Und um Eisenplatten zu bauen, braucht man Schmelzöfen, die wieder Eisenerz benötigen. Man kann das dann rekursiv auflösen und erhält diesen Abhängigkeitsgraphen:
Um eine Fabrik mit Transportbändern zu sättigen braucht man also eine Fabrik für Zahnräder und 21 Schmelzöfen.
Das, was man im Spiel letztlich bauen möchte, sind Raumfahrtwissenschaftspakete. Da ist der Abhängigkeitsgraph entsprechend riesig:
Man sieht hier also schon gut, dass das Spiel ziemlich komplex ist. Um die nötigen Fabriken dafür zu bauen, braucht man dann wieder Ressourcen. Es gibt noch den Mod Factory Planner, der alle diese Informationen auch hat und einem entsprechend diesen Graph für einen aufbauen kann. Das hilft bei der Planung.
Die riesige Stahlträgerproduktion
In einer gemeinsamen Sitzung war mein Auftrag Stahlträger herbeizuschaffen. Wir wollten so ein Transportband voller Stahl haben. Dann mal los!
Zuerst habe ich aus dem großen Eisenerzfeld das Erz abgebaut. Man braucht vier volle Bänder Stahl, damit man ein Band mit Stahlträgern machen kann. Und entsprechend habe ich das dann ausgelegt. Die Teiler da drin sorgen dafür, dass benachbarte Bänder gleich viel transportieren und somit alle Bänder gut ausgelastet sind.
Die führen dann einmal oben und unten zu den Schmelzöfen.
Dort zeige ich erstmal den unteren Teil. Unten sind die Schmelzöfen, bei denen das Erz zu Eisenplatten wird. Die Ausgabe erfolgt dann über kleine Bänder, die zusammengelegt werden. Ansonsten hat man nämlich das Problem, dass alles nur auf einer Seite des Bandes liegt und das somit nicht gut ausgelastet ist.
Darüber ist dann noch eine Reihe mit Schmelzöfen, die die Eisenplatten zu Stahlträger verarbeiten. Die geben dann auch nach oben aus und hier werden viele kleine Bänder kombiniert.
Mit der Zeit hatte ich dann auch den Bergbau so hochgefahren, dass die vier Bänder voll mit Erz sind.
Das hat dann gut funktioniert und wir hatten ein ganzes Band voll mit Stahl.
Und noch mehr Eisen
Dann brauchten wir noch mehr Eisenplatten. Also bin ich angetreten um noch etwas größeres zu bauen. Erstmal wieder drei Bänder mit Erz sättigen, irgendwann kann man das noch auf ein viertes erweitern.
Dann kombiniere ich von links kommend die Kohle und von rechts kommend das Erz auf ein einziges Band. Somit ist es in der Fabrik etwas hübscher.
Die Reihen mit den Öfen können noch sehr weit erweitert werden.
Das ganze Gelände ist schon etwas überdimensioniert.
Die Öfen nehmen dann immer von einem Band und legen auf ein anderes. Dadurch, dass von beiden Seiten auf das Ergebnisband gelegt wird, wird das auch gut ausgenutzt.
Weil das Feld ziemlich weit weg war, haben wir eine Bahn gebaut. Die wird dann über Pufferkisten beladen. Zuerst nur von einer Seite.
Dann habe ich die Produktion noch etwas ausgebaut, sodass da wirklich viel ankommt. Damit es noch schneller in den Zug geladen wird, habe ich die Bänder aufgeteilt und lade noch von der anderen Seite ein.
Da wird jetzt aktuell deutlich mehr Stahl verladen, als wir im Hauptteil der Fabrik brauchen. Aber wir können dort dann noch ganz viel Stahl verbrauchen. Bis uns dann die nächste Ressource ausgeht.
Irgendwo zwischen Spaß und Arbeit
Das Spiel hat viele Aspekte, die ich auch von der Arbeit kenne. Die Abhängigkeitsgraphen einerseits. Aber auch das Ressourcenmanagement. Als Höchstleistungsrechnensoftwareentwickler muss ich mir ständig Gedanken darüber machen, was gerade der limitierende Faktor ist. Wenn die Grafikkarte nicht schnell genug die Daten kopieren kann, muss ich die Menge reduzieren oder besser wiederverwenden. Wenn sie zu wenig Rechenleistung hat, muss ich überlegen ob ich Zwischenergebnisse abspeichern kann.
Hier ist das auch so, man muss ständig Teile der Fabrik skalieren, wenn irgendwo auf einem der Transportbänder zu wenig ist.
Es macht Spaß, es hat irgendwie etwas von Zen Garten. Aber ich muss aufpassen, dass ich das nicht so sehr wie Arbeit betrachte sondern eher einmal darauf losbaue und mich an den ganzen Armen und Fließbändern erfreue. Es hat etwas von einem Zen Garten.