Tutorial: Neue Gebäude für HoI3 kreieren

Mehr
9 Jahre 5 Monate her - 9 Jahre 1 Monat her #1 von dernachtwolf
Ich versuche den Vorgang einmal ausführlich zu schildern. Zur Änderung von *.txt, *.gfx, *.gui reicht ein einfacher Texteditor; für *.dds empfehle ich GIMP2 mit dds-Plugin (Anm. 07.05.2010: falls Link tot, siehe mein Post auf Seite 2). Screenshots folgen bei Gelegenheit.

Überblick:

Zu ändernde Dateien (***=Name/Code des neuen Gebäudes):

common/buildings.txt
Definition Beuzeit/-kosten, Gebäudeeffekt (nur 1 Effekt je Gebäude möglich)

gfx/interface/prov_build_***.dds
Gebäudeicon zur Darstellung im Provinzbaumenü und in den Statistiken

interface/province_interface.gfx
Verknüpfung des Gebäudeicons mit dem Provinzbaumenü

interface/hoi3ledgericons.gui
Verknüpfung des Gebäudeicons mit der Statistik
[center:1pjeqyav]---[/center:1pjeqyav]
Die folgenden Änderungen sind nur notwendig, falls mehr als die standardmäßig 10 Gebäudetypen aufgenommen werden sollen, damit diese auch korrekt im Provinz-Baumenü dargestellt werden.

gfx/interface/bg_province.dds
Hintergrundbild Provinzbaumenü; hier sind ggf. Zeilen einzufügen

interface/province_interface.gui
Formatierung des Baumenüs
[center:1pjeqyav]---[/center:1pjeqyav]
Die folgenden Änderungen sind ebenfalls nicht zwingend notwendig:

gfx/interface/icon_build_***.dds
Gebäudeicon zur Darstellung in der Produktionsliste im Produktionsmenü (optional)

gfx/mapitems/building_***.dds
Gebäudeicon zur Darstellung auf den Karten (optional)

interface/mapitems.gfx
Verknüpfung der Gebäudeicons mit der Karte (optional)

map/positions.txt
Koordinaten für Kartenicon (optional); sofern nicht definiert, wird Icon im Zentrum einer Provinz dargestellt


Vorgangsbeschreibung


1. Schritt: Gebäudetyp und -efffekt definieren (common/buildings.txt)

Sofern man mit Gebäudesymbolen auf der Karte arbeiten möchte, ist innerhalb der Datei auf die Reihenfolge der Gebäudeeinträge zu achten. Das Symbol für einen obereren Eintrag wird das Symbol eines weiter unten stehenden Eintrags überdecken (also im Vordergrund stehen), falls sich die Symbole überlappen. Die Luft- und Marinebasen sollen aus diesem Grund immer ganz oben stehen, damit sie in jedem Fall sichtbar bleiben.

Als Beispiel nehme ich eine Ölpumpe, die definitionsgemäß folgendermaßen aussehen könnte:
oil_pumpjack = {
	on_completion = construction_practical
	completion_size = 0.67
 
	local_crude_oil = 5000
	onmap = yes
	visibility = yes
 
	cost = 5
	time = 360
	max_level = 10
}

Sie kostet also bspw. 5 IK bei 360 Tagen Laufzeit, ist bis maximal Level 10 baubar und soll auf der Karte als Symbol angezeigt werden. Einerseits führt die Fertigstellung eines Baulevels zu einem Anstieg des Konstruktions-Praxis-Wertes um 0,67, andererseits um eine Steigerung der Öl-Produktion in der Provinz um 5.000 %. Leider scheint es so zu sein, dass absolute Wertsteigerungen nicht möglich sind. Ich kann also nicht sagen, Berlin produziert mit Öl-Förderpumpe fix 5 Öl mehr sondern die in Berlin vorhandene Öl-Fördermenge soll sich um so und so viel Prozent verändern - hier eben um 5.000 Prozent. Dies setzt natürlich voraus, dass Berlin bereits einen positiven Öl-Wert hat. Außerdem ist je Gebäude offenbar nur eine Auswirkung möglich - ich kann also nicht mit einem Gebäude (bspw. Rekrutierungszentrum) sowohl die Manpower als auch die Leadershippunkte gleichzeitig erhöhen.

2. Schritt: Bild für Produktionsbutton im Provinz-Baumenü speichern

Das Bild ist im *.dds-Format im Verzeichnis "gfx/interface/" zu speichern - in diesem Beispiel: "prov_build_oil_pumjack.dds". Ich würde einfach von einem bestehenden Button, bspw. dem für IK mit dem Namen "prov_build_factory.dds", ausgehen, die Datei kopieren und dann das Motiv abändern. Dann fügt sich auch der neue Button hinsichtlich Größe und Layout gut in das Baumenü ein.

3. Schritt: Bild für Gebäudeicon im Produktionsmenü speichern (optional)

Gemeint ist das Bild, das in der Liste der Bauaufträge angezeigt werden soll. Es ist nicht zwingend notwendig eins zu hinterlegen - sieht aber natürlich besser aus. Gespeichert wird es ebenfalls im Verzeichnis "gfx/interface/" - in diesem Beispiel würde der Dateiname lauten: "icon_build_oil_pumjack.dds".

Die Bilddatei muss anschließend noch in der "...\interface\country_production.gfx" mit folgendem Eintrag verlinkt werden:
spriteType = {
		name = "icon_build_oil_pumjack"
		texturefile = "gfx\\interface\\icon_build_oil_pumjack.dds"
		norefcount = yes
	}

4. Schritt: Erweiterung des Provinz-Baumenüs, falls mehr als 10 Gebäudetypen angezeigt werden sollen

Es geht um die Datei "bg_province.dds" im Verzeichnis "gfx/interface/", die zu ändern ist, damit im Provinz-Baumenü einschließlich der neuen Ölpumpe zukünftig 11 Gebäude Platz finden. Ich ändere die Datei (mit GIMP2) in folgenden Schritten:

a) Datei öffnen und über "Ebene -> Ebenengröße" die Werte "Höhe" und "Versatz (Y:)" bspw. um den Wert 100 erhöhen - "Größe ändern", dann
b) über "Bild -> Leinwand an Ebene anpassen", anschließend
c) den kompletten oberen Bildbereich einschließlich der Produktions-Fortschritts-Balken mittels "Rechteckiger Auswahl" (siehe GIMP2-Werkzeugkasten) markieren und kopieren (strg + c), dann
d) direkt wieder einfügen (strg + v) und den Bildbereich so nach oben verschieben, bis ausreichend Zeilen zur Verfügung stehen; abspeichern - fertig.

Damit die neue Bilddatei im Interface richtig positioniert wird, müssen noch die beiden Dateien "province_interface.gfx" und "province_interface.gui" im Verzeichnis "interface" geändert werden.

In der erst genannten Datei wird das Gebäude-Symbol verknüpft, indem einfach ein Eintrag hinzugefügt wird:
spriteType = {
		name = "GFX_provinceview_oil_pumpjack"
		texturefile = "gfx\\interface\\prov_build_oil_pumpjack.dds"
		}

In der zweiten Datei ist ganz oben der Standard-Wert "y=-396" für jede eingefügte Zeile um weitere 22 zu vermindern. In dem Beispiel fügen wir nur eine neue Zeile ein, so dass der Wert "-418" betragen muss.
guiTypes = {
	windowType = {
		name = "province_view"
		backGround=""
		position = { x=0 y=-418 }
                ...

5. Schritt: Einbindung des Gebäudesymbols in die Statistik

Dieser Schritt ist relativ wichtig, da es ohne ihn bei Aufruf der entsprechenden Gebäudestatistik zu einem CTD kommen kann. Um das zu vermeiden ist im Verzeichnis "interface" die Datei "hoi3ledgericons.gui" am Ende um einen Eintrag zu ergänzen:
iconType = {
			name = "oil_pumpjack_icon"
			position = { x=0 y =0}
			spriteType ="GFX_provinceview_oil_pumpjack"
 
		}
Letzte Änderung: 9 Jahre 1 Monat her von dernachtwolf.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 4 Monate her #2 von Heeresgruppe D
Mein Nachtwolf, ich habe eine Frage, was ist in der interface/province_interface.GUI Datei zu ändern und was in der position? Position ist doch eig. garnicht notwenig oder?

[center:2lbsm8vd][simg:2lbsm8vd] www.designmodproject.de/forum/download/file.php?id=42872 [/simg:2lbsm8vd]][/center:2lbsm8vd]

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 4 Monate her #3 von dernachtwolf

Heeresgruppe D schrieb: Mein Nachtwolf, ich habe eine Frage, was ist in der interface/province_interface.GUI Datei zu ändern und was in der position? Position ist doch eig. garnicht notwenig oder?


Hi,

ich war das WE unterwegs. Wenn ich morgen wieder daheim bin, schreibe ich etwas zu dem Thema. Es ist nur etwas zu ändern, sofern du neue Gebäude hinzunehmen willst, damit diese richtig im Provinzmenü dargestellt werden. Sofern bestehende Gebäude nur ersetzt werden sollen, kann man die Dateien links liegen lassen.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 4 Monate her #4 von Heeresgruppe D
Ne ich brauch ein neues, alles ist okay, außer die Datei finde mich da garnicht zurecht.
Kannst mir auch mal ein Bsp. schicken wenn du willst, musst du aber nicht, ge.

[center:2lbsm8vd][simg:2lbsm8vd] www.designmodproject.de/forum/download/file.php?id=42872 [/simg:2lbsm8vd]][/center:2lbsm8vd]

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 4 Monate her #5 von dernachtwolf
teil-aktualisiert - wird diese tage noch fortgesetzt und um Screenshots ergänzt

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 4 Monate her #6 von Heeresgruppe D
Das reicht mir schon^^
Dankesehr. Sehr gute Arbeit.
Wie siehts aus mit deinem Mod, gibt es da auch schon ein Datum wann er rauskommt, also ca.?

[center:2lbsm8vd][simg:2lbsm8vd] www.designmodproject.de/forum/download/file.php?id=42872 [/simg:2lbsm8vd]][/center:2lbsm8vd]

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 4 Monate her #7 von dernachtwolf
Tja, voraussichtlich als Beta Ende März, Anfang April. Im Februar und März werde ich nichts machen können, da ich im März einige Klausuren schreiben muss.

Außerdem will ich mal schauen, ob ich vor dem Erscheinen der Beta nicht noch etwas an den lua-Skripten ändern kann.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 4 Monate her #8 von Heeresgruppe D
Ich muss doch auch Klaussuren schreiben :P

Nein ist schon okay. Ich freu mich auf deine Arbeit, die hört sich ja jetzt schon spitze an :)

[center:2lbsm8vd][simg:2lbsm8vd] www.designmodproject.de/forum/download/file.php?id=42872 [/simg:2lbsm8vd]][/center:2lbsm8vd]

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

  • User 106
  • User 106s Avatar
  • Besucher
9 Jahre 4 Monate her #9 von User 106
sehr schön nachtwolf, ich freue mich immer wenn mal einer Wissen weitergibt.

Bitte mehr davon.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 3 Monate her #10 von Heeresgruppe D
Was muss ich da ändern? Es steht ja nicht mal da was gebraucht wird -.-

[center:2lbsm8vd][simg:2lbsm8vd] www.designmodproject.de/forum/download/file.php?id=42872 [/simg:2lbsm8vd]][/center:2lbsm8vd]

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 3 Monate her #11 von dernachtwolf

Heeresgruppe D schrieb: Was muss ich da ändern? Es steht ja nicht mal da was gebraucht wird -.-


Du musst in einer der Technologie-Textdatein einer Technologie deiner Wahl den Effekt

"activate_building = Gebäudecode"

hinzufügen. Sofern der Spieler zu Spielbeginn nicht über diese Technologie verfügen sollte, müsste der Tooltip den entsprechenden Technologienamen dann auch als Klartext anzeigen.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 3 Monate her #12 von Heeresgruppe D
Passt, danke ;)

Ach genau, wie macht man denn neue Rohstoffe, du hast das doch auch gemacht, bei mir fehlt iwas, ich weiß nur nicht was :)

[center:2lbsm8vd][simg:2lbsm8vd] www.designmodproject.de/forum/download/file.php?id=42872 [/simg:2lbsm8vd]][/center:2lbsm8vd]

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 3 Monate her #13 von dernachtwolf

Heeresgruppe D schrieb: Passt, danke ;)

Ach genau, wie macht man denn neue Rohstoffe, du hast das doch auch gemacht, bei mir fehlt iwas, ich weiß nur nicht was :)


Naja, ich hab dan alten Rohstoffen nur neue Namen und Bilder gegeben. Neue Rohstoffe bekommt man wohl leider nicht rein.

Wenn du mit bestimmten Gebäuden das Output eines Rohstoffs erhöhen willst, ging das bis v1.3 nur über prozentuale Steigerungen. Ab v1.4 soll es so sein, dass man absolute Werte Vorgeben kann, bspw. 1 Minenausbaustufe bringt dann + 5 Metall. Ob und wie das aber funktioniert, habe ich noch nicht getestet.

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Mehr
9 Jahre 3 Monate her #14 von Heeresgruppe D
Das ist dann gut so. Na ich wollte den Stoff Ehre noch reinbring für Eliteeinheiten...
Es gab ja immer iregndwo Kriegshelden bzw. übermneschliche Streitkräfte.

[center:2lbsm8vd][simg:2lbsm8vd] www.designmodproject.de/forum/download/file.php?id=42872 [/simg:2lbsm8vd]][/center:2lbsm8vd]

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Deutsches Erste Hilfe Kreuz 2.KlassePanzerkampfabzeichen BronzeReiterabzeichen in Silber mit Lorbeer
Login Stufe 2HoI 4 Experte BronzeModding Bastelecken RibbonLogin Stufe 1Ehrenkreuz der HinterbliebenenModding Team RibbonMultiplayer RibbonWillkommens RibbonDMP Dienstauszeichnung Stufe 2
Mehr
9 Jahre 1 Monat her #15 von Intercosmo
Hallo,

der Link zu dem dds Plugin funktioniert nicht.
Wo bekomme ich den sonst noch.

Und funktionieren die Absulutwerte jetzt mit 1.4

Gruß

Bitte Anmelden oder Registrieren um der Konversation beizutreten.

Moderatoren: AndurilMagic1111
Powered by Kunena Forum