Topic: Idee für neuen Stamm: die Allianz
usingUser![]() Topic Opener |
Posted at:
2025-09-06, 21:20 UTC+2.0
Nach „etwas“ Vorlaufzeit bin ich nun so weit, daß ich mich an die Umsetzung wagen will. ![]() ![]() |
Nordfriese![]() |
Posted at:
2025-09-07, 11:43 UTC+2.0
Im Hauptmenü findest du unter »Über Widelands« → »Technische Information« den Pfad zum Data-Verzeichnis. Beachte, falls du Widelands über ein All-in-One-Format wie Flatpak, Snap oder AppImage installiert hast, sind die Dateien darin gebündelt und liegen nicht frei zugänglich auf dem Dateisystem. In dem Fall kannst du sie als Zip von der Release-Seite herunterladen. Beim Start von Widelands kann mit der Option ![]() ![]() |
usingUser![]() Topic Opener |
Posted at:
2025-09-26, 17:21 UTC+2.0
Was macht z. B. die Zeile
![]() ![]() |
kaputtnik![]() |
Posted at:
2025-09-26, 17:53 UTC+2.0
Die zwei Punkte sind ein "verbingungsoperator" (concatenation operator) für strings. In diesem Fall wird in der variablen ein string stehen und dieser string wird mit dem folgenden string verbunden. zB:
Umgebungsvariablen im eigentlichen Sinne gibt es nicht. Es gibt globale variablen und lokale variablen. Letztere sind nur in einem gewissen Kontext (Funktion oder Datei) gültig.
Generell gilt jedoch das man möglichst nur lokale Variablen einsetzen sollte, da es sonst leicht zu Fehlern führt die man nur schwer finden kann. Zb aus versehen überschrieben wird. Muss man globale variable nutzen sollten sie klar als solche gekennzeichnet werden, zB nur in Großbuchstaben notieren. Bitte erwarte nicht das wir hier eine Einführung in lua geben. Es gibt im Internet genug Informationsquellen zu lua. ![]() ![]() |
usingUser![]() Topic Opener |
Posted at:
2025-09-27, 14:34 UTC+2.0
Danke kaputtnik für die Variablenunterscheidung. Mir liegt fern, hier eine Luaeinführung zu erfragen. Eher war mein Gedanke, nach einer Art Übersicht zum Projekt oder der Codestruktur des Spiels zu fragen. Ich probier's mal mit ganz konkreten Fragen:
Edited by kaputtnik: Bitte füge vor Aufzählungen eine Leerzeile ein
Edited:
2025-09-27, 16:01 UTC+2.0
![]() ![]() |
kaputtnik![]() |
Posted at:
2025-09-27, 16:38 UTC+2.0
Der Einsprungspunkt ist immer die Datei Grundlegende Verzeichnisstuktur:
Ich verstehe nicht ganz. Ein add-on für widelands funktioniert nur mit widelands. Das Spiel muss ja erst mal einiges initialisieren um überhaupt ein add-on laden zu können. Es gibt aber verschiedene Möglichkeiten das testen zu vereinfachen. Hierzu muss widelands aber aus der Konsole mit optionen gestartet werden. Man kann zB eine Kofigurationsdatei anlegen die alle notwendigen Parameter zum starten eines Spiels beinhaltet. Ein Muster für eine solche Konfigurationsdatei findest du hier: Man kann die Datei anpassen, im homeverzeichnis von widelands (.widelands) abspeichern und das Spiel so starten. Angenommen die Datei heißt "test_tribe"
Damit wird ein neues Spiel mit den Angaben aus der Konfigurationsdatei gestartet ohne das man sich erst durch die Menüs klicken muss. ![]() ![]() |
kaputtnik![]() |
Posted at:
2025-09-27, 16:40 UTC+2.0
Am einfachsten wird es sein wenn Du das add-on europeans_tribe installierst und Dich etwas damit auseinandersetzt. Dann hast Du wenigstens schon mal die Grundstruktur… ![]() ![]() |
usingUser![]() Topic Opener |
Posted at:
2025-09-27, 17:45 UTC+2.0
Die Europäer habe ich sogar als Orientierungspunkt genommen. Nur hat mich der Ordner initialization verwirrt. Scheinbar übernimmt der eine ähnliche Funktion wie die init.lua… Momentan sieht meine Dateistruktur wie folgt aus, wobei ich mich gerade nur auf die einfache Allianz konzentriere. addons ├── allianz-einfach.wad │ ├── addon │ ├── init.lua │ ├── postload.lua │ ├── preload.lua │ ├── register.lua │ └── tribes │ └── einfache-allianz │ ├── functions.lua │ ├── init.lua │ ├── tips.lua │ └── units.lua ├── allianz-ui.wad │ ├── addon │ ├── init.lua │ ├── postload.lua │ ├── preload.lua │ └── register.lua ├── allianz-umfangreich.wad │ ├── addon │ ├── init.lua │ ├── postload.lua │ ├── preload.lua │ ├── register.lua │ └── tribes │ └── umfangreiche-allianz │ ├── init.lua │ ├── tips.lua │ └── units.lua └── notizen.md
Edited:
2025-09-27, 17:45 UTC+2.0
![]() ![]() |
Nordfriese![]() |
Posted at:
2025-09-27, 18:01 UTC+2.0
Dokumentation: https://www.widelands.org/documentation/add-ons/#tribes Der Einstiegspunkt hängt vom Add-On-Typ ab. Für Tribes-Add-Ons, die ein neues Volk erstellen, ist Für alle Arten von neuen Objekten sollte es ein Verzeichnis pro Objekt geben, wo seine eigene ![]() ![]() |