Alt-F4 #3 – Tronparty  04.09.2020

Geschrieben von JD-Plays, T-A-R, Raiguard, editiert von Therenas, nicgarner,
übersetzt von dexteritas, lektoriert von marceljoint, Nanogamer7

Inhaltsverzeichnis

Willkommen zur dritten Ausgabe von Alt-F4. Dieses Wochenende wird es einen Versuch geben, den Rekord für die größte Anzahl an Spielern auf einem einzelnen Factorio Server zu brechen; lies weiter, um zu erfahren, wie du an diesem Spaß teilnehmen kannst. Es gibt auch einen Aktionsbericht über die Eröffnungsparty der Big Community Games, über die eigentlich letzte Woche hätte berichtet werden sollen. Völlig mein (Therenas) Fehler. Schlussendlich teilt Raiguard eine interessante Mod von ihm mit uns. Dann wollen wir mal loslegen!

PS: Wir suchen nach motivierten Leuten, die helfen wollen, jeden Artikel von Alt-F4 zu übersetzen. Falls du interessiert bist, kannst du weitere Informationen am Ende dieses Artikels finden. Danke!

Ereignis: Molten Silicon (Geschmolzenes Silizium) JD-Plays

Das Wochenende ist da, hast du irgendwelche Pläne? Wirst du wieder Factorio für ungefähr 25 Minuten spielen und dann feststellen, dass die Sonne bereits aufgeht? Oder möchtest du Factorio nur mit ein paar Freunden spielen?

Nun, wir haben gute Nachrichten. An diesem Wochenende treffen sich ein paar Freunde, um etwas einfaches zu tun: Das Silizium unseres Servers vollständig zu schmelzen! Nimm mit uns an der Molten Silicon Veranstaltung teil, bei der unser einziges Ziel darin besteht, so viele Spieler wie möglich auf denselben Server zu bekommen und eine Rakete zu starten. Oh, und natürlich gleichzeitig den Prozessor des Servers schmelzen! Es wird für jeden Spieler etwas zu tun geben, von bauen der Basis bis zum Beseitigen von Beißern mit anderen Rotröcken (Engl. red coats). Unser wahrer Feind wird wahrscheinlich auch immer präsent sein, deshalb brauchen wir einige von euch, die sich unserem Holzfällerteam anschließen! Wenn du also an diesem Wochenende ein paar Stunden Zeit hast und mithelfen möchtest, den bisheriger Rekord von 521 gleichzeitigen Spielern zu brechen, melde dich an diesem Samstag, dem 5. September, um 13 Uhr MESZ auf unserem Server an. Du kannst ihn leicht identifizieren, denn es wird der größte laufende Server sein!

Der Countdown ist vorbei


Die Serverinformationen werden kurz vor dem Start im #information Kanal von unserem Red Circuit Discord-Server mitgeteilt. Für allgemeinere Informationen besuche bitte unsere Website.

Mache bitte nicht die neuen Spielzeuge kaputt T-A-R

Der erste Alt-F4 Artikel war eine aufregende Überraschung, als mein hartnäckiger Verstand am Freitag, dem 21. August, zu factorio.com ging, in dem Wissen, dass kein neuer FFF-Artikel #361 auf mich warten würde. Ich habe mich entschieden, diese Initiative zu unterstützen und der beste Weg dies zu tun, war es schnell zu handeln. Hier ist also ein Erfahrungsbericht über einen der frischen 1.0 „kein-Bug“-Fehlerberichte.

Die zweit-beste Sache nach einer offiziellen Eröffnungsfeier in Prag wäre ein guter alter Multiplayer-Server. In der Factorio-Lobby sprießen an diesem Freitag mehrere Veröffentlichungsfeiern aus dem Boden, die alle frische Karten präsentieren, wobei viele Ingenieure (Spieler) aus der ganzen Welt mitmachen, um einige ehrgeizige Hauptbusse zu platzieren. Der Big Community Games Discord-Server konnte den größten Ansturm verzeichnen und erreichte mit 201 Spielern einen Spitzenwert, was gut war, da man eine recht anständige Basis braucht, um alle Wissenschaftspakete durchzukauen, die man braucht, um zum besten Feature von 1.0 zu gelangen. (Hinweis: Es ist Spidertron!)

Gesegnet mit dichten Erzfeldern und einer klugen Kartennotiz (die die Farben der Teams und ihre Aufgaben beschreibt), begann der Server als hyperaktives Ameisenkollektiv mit einem Instinkt für die Herstellung von Reihen an Schmelzöfen. Die Kartennotiz in der Umgebung des Startpunktes hat bei der Organisation der ständig wachsenden Gruppe von Ingenieuren wunderbare Arbeit geleistet. Schon frühzeitig wurde neben der Wissenschaftsfabrik eine isolierte Fabrik errichtet, um alle Rotröcke mit Ausrüstung und Munition zu versorgen. Diese gab sowohl den Truppen als auch den Bauarbeitern einen stetigen Nachschub zur Verteidigung und zum Wachstum der Fabrik.

Und sie ist gewachsen. Es hat 11 Stunden gedauert eine Rakete zusammen mit 20 Spidertrons, einer Schiffsladung Ausrüstung und Panzerung und einer Tonne Munition und Sprengstoff zu produzieren. Zu diesem Zeitpunkt waren gemäß den von erfahrenen Ingenieuren hinterlassenen Kartenmarkierungen die Bucht von Bilka, Italien und der Twinsen-See bereits getauft worden.

Sobald die Spidertrons in Produktion gingen, wurde klar, dass sich diese Beine sehr ungewöhnlich, aber gleichzeitig kraftvoll anfühlen. Der faszinierende Anblick, einfach über Seen und Maschinen zu schreiten, machte die Erkundungstour langsam zu einem Fähigkeitstest unseres neuen Spielzeugs / Werkzeugs. Fließbänder erwiesen sich bald als interessanter Punkt für viele der Spinnen, die auf der Karte herumliefen. Die gemeinsame Aufregung veranlasste die Admins, ihren eigenen Beitrag zur Party zu leisten, und machte Spidertron zum ultimativen Test, indem sie die Veröffentlichungsparty in einen Spidertron-Rave verwandelten. Eine farbenfrohe Tanzfläche wurde schnell aufgeschüttet, damit die Spinnen ihre Beine strecken konnten:

Die Kombination aus gegenläufigen Fließbändern und Lücken in der Karte führte dazu, dass sich die brandneuen Spidertron-Beine unbeholfen spalteten und ihre Beine unendlich weit streckten. Höchste Zeit, die Entwickler über diese Ergebnisse mit einem neuen 1.0-Fehlerbericht zu informieren. Es endete als einer der meistgesehenen Fehlerberichte, wurde aber schnell als Duplikat markiert: Kein Bug. Der Entwickler V453000 hat bereits auf einen der ersten 1.0 Fehlerberichte (30 Minuten nach der Veröffentlichung) geantwortet, um darauf hinzuweisen, dass es nicht wünschenswert wäre, ihre Bewegungsfreiheit einzuschränken und dass unsere Spinnen eigentlich ganz gut funktionieren würden. Aber die Tatsache, dass wir „könnten“ beseitigt nicht die Frage, ob wir „sollten“ …

Am Ende war diese Spiel ein absoluter Knaller, und wir haben uns wirklich in Spidertron verliebt. Er ist jetzt einer von uns.

Mod spotlight: Editor Extensions (Editor-Erweiterungen) Raiguard

Jeder kennt die Creative Mod (zu deutsch: Kreative Mod). Sie liefert viele verschiedene „Cheat“-Gegenstände, mit denen man seine Fabriklayouts testen kann. Es gibt sie schon recht lange und hat den Menschen im Laufe der Jahre gute Dienste geleistet.

Wenn man die Creative Mod jedoch über einen längeren Zeitraum verwendet, wird man hier und da Lag-Spitzen bemerken. Wenn man sie weiterhin mehr und mehr benutzt, werden die Lag-Spitzen immer häufiger auftreten. Irgendwann wird das Spiel immer langsamer, da man immer mehr von den Werkzeugen der Creative Mod verwendet.

Vor eineinhalb Jahren begann ich in meiner Kreativwelt einen Lag (Zeitverzug) zu erleben. Damals hatte ich gerade meine erste Mod veröffentlicht, sodass ich ein wenig Erfahrung mit der API hatte. Aus Neugier habe ich mich in den Code der Creative Mod vertieft und versucht, herauszufinden, was da vor sich ging.

Das Ergebnis war: Creative Mod war sehr gut gemacht … für seine Zeit. Die Mod wurde in 0.13 erstellt, als die Modding-API viel eingeschränkter war. So gelang es ihr, all diese großartigen Dinge mit einem extrem begrenzten Satz von Werkzeugen zu tun. Aber jetzt ist die Mod-API viel ausgereifter und sehr viel leistungsfähiger. Ich machte mich daran, ein Update für Creative Mod zu erstellen, das diese neuen Funktionen nutzt und dadurch die Auswirkungen auf die Leistung verringert.

Aber schließlich wurde mir klar, dass eine Aktualisierung von Creative Mod nicht durchführbar ist. Es würde zu viele einschneidende Änderungen erfordern, um sie auf den neuesten Stand zu bringen, daher beschloss ich stattdessen eine gänzlich neue Mod zu schreiben. Diese Mod wurde ursprünglich als Infinity Mode veröffentlicht, war aber bald veraltet und aus verschiedenen Gründen durch Editor-Extensions ersetzt.

Editor-Extensions ersetzt nicht den Map-Editor des Spiels wie die Creative Mod und der Infinity Mode – sie erweitert ihn. Daher hat EE kein „Cheats“-Fenster wie die Creative Mod und der Infinity Mode. Der Editor hat all diese Funktionen – und noch mehr – in seinen vielen Menüs verborgen.

Der Hauptanziehungspunkt von Editor Extensions ist seine Leistung – er ist um mehrere Größenordnungen schneller als die Creative Mod. Ich werde einige der Methoden durchgehen, mit denen ich das erreicht habe.

Elektrizität

Das Erste, was ich tun wollte, war, Energiequellen und Energiesenken zu schaffen. Die Creative Mod tut dies, indem sie Heizkessel erstellt und sie dann mit Hilfe eines Skripts bei jedem Tick mit Strom füllt. Jetzt hat das Spiel jedoch eine eingebaute Entität, die dies automatisch tun kann: das Electric Energy Interface (EEI, zu deutsch: Schnittstelle für elektrische Energie). Diese Entität kann auf magische Weise Strom aus dem Nichts erzeugen und verbrauchen, und ihre Parameter sind laufend veränderbar.

Es gibt zwei Dinge an der EEI, die ich verbessern wollte – die GUI und die Nutzungspriorität. Die GUI der EEI ist funktional, aber verwirrend, und einer Entität kann nur eine Nutzungspriorität zugewiesen werden. Natürlich kann ich das erste Problem beheben, indem ich eine benutzerdefinierte GUI erstelle, aber das zweite Problem wird auf eine etwas trickreichere Weise gelöst.

Was du als einen unendlichen Akkumulator siehst, ist in Wirklichkeit eine von fünf möglichen Entitäten, jede mit einer anderen Nutzungspriorität. Je nachdem, wie du ihn in der GUI konfigurierst, wird ein kleines Skript die Entität mit einer anderen Entität, die identisch aussieht, aber eine andere Nutzungspriorität hat, im laufenden Betrieb austauschen. Auf diese Weise kann eine einzige „Entität“ alles tun, von der Produktion, über den Verbrauch, bis hin zur Speicherung einer anpassbaren Leistungsmenge (bis zu 999 Yottawatt!)

Kisten

Das nächste Problem, das ich lösen wollte, waren die Kisten. Die Creative Mod hat eine Vielzahl von Kisten, die Elemente erzeugen, duplizieren oder löschen können. Sie verwendet jedoch Skripte, um alle dieser Funktionen zu erreichen, wodurch ein ziemlich großer Mehraufwand entsteht, nachdem nur einige wenige Kisten platziert wurden.

In 0.16 wurde das Basisspiel mit der unendlichen Truhe gesegnet, die all dies und noch mehr kann. Sie funktioniert durch das Setzen von Unendlichkeitsfiltern, die ihrerseits „mindestens“, „höchstens“ und „genau“ Modi haben. Dadurch wird die gesamte Gegenstandsmanipulation auf das Spiel selbst verlagert, wodurch die Skripting-Rechenleistung auf absolut Null reduziert wird!

EE erweitert die grundlegende Unendlichkeitstruhe durch Hinzufügen logistischer Varianten und einer speziellen Art von Unendlichkeitstruhe, die als Aggregationstruhe bezeichnet wird. Die Aggregationstruhe ist der Kreativtruhe am ähnlichsten – sie enthält einen Stapel jedes Gegenstandes im Spiel. Ein kleines Skript setzt ihre Unendlichkeitsfilter, wenn sie platziert wird, und dann erledigt das Basisspiel den Rest. Es gibt auch reguläre und passive Anbietervarianten dieser Truhe.

Mit Hilfe von Unendlichkeits- und Aggregationstruhen erhält man genau das Verhalten, das man sich zum Testen seiner Bauten wünscht.

Fließbänder

Häufig möchte man schnell und einfach Gegenstände auf ein Fließband legen oder Gegenstände auf einem Fließband loswerden, um die Anlagen zu testen. In Vanilla kann man das mit einer Unendlichkeitstruhe und einem Lader (einer versteckte Entität, die man im Karteneditor bekommen kann) tun. Diese Lader sind jedoch recht einfach, und wenn man auf jeder Seite eines Bandes unterschiedliche Gegenstände haben will, muss man zwei Lader und zwei Unendlichkeitstruhen platzieren. Das sind vier Objekte, und dann muss man auch noch die Truhen konfigurieren, was noch mehr Zeit in Anspruch nimmt.

Um dieses Problem zu lösen, baute ich auf einem anderen Mod auf – Miniloader. Viele der Konzepte werden zwischen dem Miniloader und dem Unendlich-Lader geteilt, sodass diese Erklärung dir auch einen kleinen Einblick in die Funktionsweise dieser Mod gibt.

Der Unendlich-Lader besteht eigentlich aus mindestens fünf Entitäten auf einmal:

Von links nach rechts haben wir die Ladeeinheit selbst, eine Unendlichkeitskiste, zwei filternden Stapelgreifarme und einen konstanten Kombinator. All diese Objekte spielen eine Rolle, damit der Unendlichkeitslader funktioniert.

Wenn man einen Unendlichkeitslader platziert, handelt es sich eigentlich um einen „Dummy-Kombinator“. Dies ist ein konstanter Kombinator, der wie ein Lader aussieht. Wenn er platziert wird, zerstört ein Skript sofort diesen Kombinator und ersetzt ihn durch einen unsichtbaren. Dieser Kombinator ist das, womit du tatsächlich interagierst, und wird in Blaupausen gespeichert, sodass die Filter erhalten bleiben können. Dann wird die Ladeeinheit hinzugefügt, zusammen mit einer unsichtbaren Unendlichkeitstruhe und mindestens zwei unsichtbaren filternden Stapelgreifarmen, deren Drehzahl auf Maximum eingestellt ist.

Wenn man die Filter des Laders über seine individuelle Benutzeroberfläche konfiguriert, setzt man die Filter tatsächlich auf den unsichtbaren filternden Stapelgreifarmen sowie auf der Unendlichkeitstruhe. Diese Greifarme werden aus der Truhe gezogen und legen die Gegenstände extrem schnell auf das Fließband, sodass es so aussieht, als ob die Gegenstände aus dem Nichts auftauchen würden.

Umgekehrt ist es auch so, wenn man einen Unendlichkeitslader dreht, um Gegenstände zu verbrauchen, nehmen die Greifarme alles vom Fließband und werfen es in die Unendlichkeitstruhe, sodass es so aussieht, als würden die Gegenstände auf magische Weise verschwinden. All dies geschieht hinter den Kulissen und macht sich das Verhalten von Vanilla zunutze. Ein Skript wird verwendet, um den Lader „einzurichten“, aber von da an tut das Skript nichts mehr, wodurch der Skripting-Rechenleistung für die Verwendung dieser Lader – wieder einmal – auf Null reduziert wird.

Um die Dinge so einfach wie möglich zu machen, gibt es natürlich nur einen einzigen Unendlichkeitslader Gegenstand, den man platziert. Der Lader wechselt seinen Fließbandtyp – je nach dem, mit was er verbunden ist – automatisch, und fügt Greifarme hinzu oder entfernt sie, um mit der Fließbandgeschwindigkeit Schritt halten zu können. Und da es mehrere verschiedene Greifarme gibt, können wir für jede Seite des Fließbandes unterschiedliche Filter einstellen.

Das Ergebnis ist eine bequeme, einfach zu bedienende Einheit, die Gegenstände auf einem Fließband produzieren und konsumieren kann und gleichzeitig äußerst leistungsfähig ist.

Charakter Cheats

Während Editor Extensions in erster Linie für die Verwendung aus dem Karteneditor heraus gedacht ist, ist es auch durchaus möglich und recht einfach auch einen Charakter zu verwenden. Durch die Verwendung des Cheat-Modus (auf den du durch Eingabe von /cheat oder /cheat all in die Konsole zugreifen kannst) erhaltest du Zugriff auf alle oben genannten Werkzeuge.

Zu den Werkzeugen, die ich nicht erwähnt habe, gehören super aufgeladene Ausrüstungen:

Mit dieser Ausrüstung kann man unsterblich werden, superschnell laufen und in der Dunkelheit klar sehen. Der Super-Roboport, kombiniert mit Super-Konstruktionsrobotern, ermöglicht einen sehr schnellen Auf- und Abbau. Das Ergebnis ist, dass man auf viele der gottähnlichen Kräfte des Editors zugreifen kann, ohne seinen bequemen Körper zu verlieren. Und wenn man in Zukunft Editor-Erweiterungen aus dem Speicherstand entfernt, werden die Geräte einfach verschwinden und unendliche Reichweite als einziger Beweis für die Existenz des Mods hinterlassen.

Fazit

Editor Extensions ist das Ergebnis von mehr als einem Jahr des Testens von In-Spiel-Bauten und Mods. Es gibt viele, viele Dinge, die ich hier nicht behandelt habe – einschließlich einer Tastenkombination „Editor umschalten“, Inventar-Synchronisation, unendliche Rohre und ein spezielles Testszenario – aber das würde diesen Beitrag noch länger machen, als er ohnehin schon ist. Ich hoffe, du hast die Lektüre genossen, und ich hoffe, du hast einen Einblick gewonnen, wie Factorio’s erstaunliche Modding-API funktioniert.

Die Factorio-Entwickler verwöhnen uns mit dem, was wir mit ihrem Spiel anstellen können, und die API wird mit jedem Update immer leistungsfähiger. Vielen Dank für die Lektüre und vielen Dank an die Entwickler, die dies möglich gemacht haben!

Beitragen

Wir sind immer auf der Suche nach Menschen, die etwas Interessantes haben, was sie mit der Factorio-Gemeinschaft teilen möchten. Wenn du so jemand bist, dann schließe dich bitte dem Discord-Server (oder dem GitHub-Projekt) an, um anzufangen. So ziemlich jedes Thema ist willkommen, scheue dich also nicht, einen Beitrag zu leisten!

Wir prüfen auch, ob wir diese Woche mit den Community Übersetzungen beginnen können, wodurch Alt-F4 viel mehr Menschen zur Verfügung stünde als nur durch die englische Version. Wir haben die Website bereits entsprechend eingerichtet, sodass wir nur noch Leute brauchen, die an den Übersetzungen arbeiten. Wenn du Lust dazu hast, schließe dich dem Discord-Server an und suche nach dem Kanal #translation-instructions.