hallo du !
ich bin auch neu, und vor einer woche wusste ich noch nicht einmal das es eine assets.xml gibt
also kann im prinzip jeder modden
ich schaffs ja auch ... und bin betriebswirtschafter ... hab also nichts mit programmierung zu tun...
ja dann sind wir schon 2 die anno gerne etwas umgestalten wollen... ich möchte einfach mein eigenes anno basteln so wie mir das gefällt und nicht wie es andere vorkauen sozusagen
folgende daten müssen verändert werden, wenn du neue gebäude einfügen willst ... (ich hoffe ich habe in der eile jetzt nichts vergessen)
Folgende Dateien müssen dazu verändert werden:
- guid.txt
- tt_normal.txt
- properties.xml
- assets.xml
- icons.xml
- .ifo-Dateien
- .cfg-Dateien
ganz einfach:
Schritt 1:
guid.txt, vergib eine nicht existierende
GUID deinem neuen Gebäude zB
"70400=Apfelplantage"
Ps: falls es eine Farm sein soll, dann brauchst du auch für dein Feld eine
GUID und evt. auch für die
"m_Files" die du auf dein Feld platzieren willst zB
"70401=Apfelfeld" und
"70402=Apfelbaumreihe"
Schritt 2:
tt_normal.txt, kopier einen vorhandenen Eintrag und ändere auch hier die
GUID des Tooltips ab zB
"10300200=[TTT TOOLTIP_TITLED][TTT TOOLTIP_TITLED_HEADER][AUTOSIZE_ICONGUID] [GUIDNAME][TTT TOOLTIP_TITLED_BODY][BUILDING_COSTS][CR] [CR]Apfelplantage.[CR]Produziert Früchte.[CR]Stillt das Bedürfnis nach Nahrung."
Schritt 3:
icon.xml, dann brauchst du die Icons zu vergeben. Kopier einfach einen existierenden Beitrag beginnend mit
<i> und endend mit
</i> sowohl für deine Apfelplantage als auch für dein Apfelfeld das im Spiel ja auch angeklickt werden kann zB
"<i>
<GUID>70400</GUID>
<Icons>
<i>
<IconFileID>116</IconFileID>
<IconIndex>??</IconIndex>
</i>
</Icons>
</i>
<i>
<GUID>70401</GUID>
<Icons>
<i>
<IconFileID>116</IconFileID>
<IconIndex>??</IconIndex>
</i>
</Icons>
</i>"
--> der IconIndex gibt das genaue Icon an in der Datei mit der ID=116 ... du kannst auch von IAAM die Icons benutzten, eine Datei hat da die FileID=500. Beispielsweise würde das Icon mit der FileID=500 und dem IconIndex=23 perfekt für eine Apfelplantage passen!
Schritt 4:
properties.xml, hier musst du erstmal angeben, dass in einem Baumenüreiter dein neues Gebäude überhaupt gebaut werden kann
"<Patrician> farmen
<Buildings>
<Item>
<BuildingGUID>70400</BuildingGUID> AppleFarm
<BuildButtonTooltip>300200</BuildButtonTooltip>
</Item>
</Buildings>
</Patrician>"
dazu musst du aber auch sagen, in welche Kategorie dein neues Gebäude einzuordnen ist. Da eine Apfelplantage Äpfel bzw. Früchte produziert sollte sie in der Nahrungskette irgendwo drin sein. Und da sie evt. auch ein Endprodukt produziert auch in der Nahrungskettenendversorgung, zB
"<FoodChainEndBuildings>
<GUIDs>
<Item>
<Object>70400</Object>
</Item>
</GUIDs>"
sowie
"<FoodChainBuildings>
<GUIDs>
<Item>
<Object>70400</Object>
</Item>"
Schritt 5:
assets.xml, hier kann man die meiste Arbeit investieren, wenn man penibel vorgeht. Andernfalls kopiert man sich halt schnell was aus dem existierenden Code und ändert ein, zwei Sachen ab zB
erstellt du erstmal ein Asset für dein Apfelfeld das natürlich vom Typ FarmfieldObject ist zB
"<Asset>
<Template>FarmfieldObject</Template>
<Values>
<Blocking />
<BuildCost>
<MoneyCost>5</MoneyCost>
</BuildCost>
<Building />
<Farmfield>
<Farmtype>Apple</Farmtype>
<HarvestGUID>70041</HarvestGUID>
</Farmfield>
<Mesh />
<Object>
<Variations>
<Item> <Filename>data\graphics\buildings\farm\north\cider_farm_field\n_ciderfarm_field_medium.cfg</Filename>
</Item>
</Variations>
</Object>
<Selection />
<Standard>
<Name>AppleFarmfield</Name>
<GUID>70401</GUID>
</Standard>
<TradingPrice />
</Values>
</Asset>"
dann musst du das ganze natürlich auch noch für die Apfelplantage machen, diese ist vom Typ FarmBuilding zB
"<Asset>
<Template>FarmBuilding</Template>
<Values>
<Blocking>
<BlockingRules />
</Blocking>
<BuildCost>
<MoneyCost>25</MoneyCost>
<ProductCost>
<Wood>1000</Wood>
</ProductCost> <NeedsIntermediatelevel>IntermediateCider</NeedsIntermediatelevel>
</BuildCost>
<Building>
<BuildingLevel>Peasant</BuildingLevel>
<StatisticsCategories>Food</StatisticsCategories>
</Building>
<ContextMenu>
<EntryList>
<Item>
<ActionType>Cultivate</ActionType>
</Item>
<Item>
<ActionType>StopProduction</ActionType>
</Item>
<Item>
<ActionType>InstantPickup</ActionType>
</Item>
<Item>
<ActionType>Refill</ActionType>
</Item>
<Item>
<buildGUID>70401</buildGUID>
</Item>
</EntryList>
</ContextMenu>
<Danger />
<Farm>
<FarmerGUID>10803</FarmerGUID>
<FarmFieldGUID>70401</FarmFieldGUID>
<FarmfieldCount>3</FarmfieldCount>
<Fertility>Cider</Fertility>
</Farm>
<FeedbackEventEmitter />
<Hitpoints />
<Influence>
<InfluenceRadius>6</InfluenceRadius>
</Influence>
<InfoLayer />
<KIModule />
<MaintenanceCost>
<ActiveCost>30</ActiveCost>
<InactiveCost>15</InactiveCost>
</MaintenanceCost>
<Mesh />
<Object>
<Variations>
<Item> <Filename>data\graphics\expert\demand\food\dates\north\apfelplantage\cider_farm\apfelplantage.cfg</Filename>
</Item>
</Variations>
</Object>
<Selection />
<Standard>
<Name>AppleFarm</Name>
<GUID>70400</GUID>
</Standard>
<TradingPrice />
<WareProduction>
<ProductionTime>10000</ProductionTime>
<Product>Dates</Product>
<NeedsStreetConnection>1</NeedsStreetConnection>
<SuccessorGUIDs />
</WareProduction>
</Values>
</Asset>"
Schritt 6:
.cfg-Dateien und
.ifo-Dateien, für die benötigte Textur ... hierzu kann ich dir nicht viel sagen, weil es mir selbst auf den Senkel geht
--> das ganze ist komplett umständlich, es müsste irgendwie einfach auch gehen
PS: wenn du Fragen zu den Values hast in den Assets, kann ich sie dir gerne erklären, aber nur jene die du wirklich nicht verstehst ... die meisten müssten selbsterklärend sein
lg
Ricco