Cultures

– by peugeot407
Created: 2nd August 2007
Last Edited: 2nd August 2007

THE PROBLEM
Anyone who made a civ must have thought about making a new set of buildings for it, right? At least, so did I when making my Danish Civ Mod. If you don’t know how to do that, this will hopefully be the solution.

THE SOLUTION
At first I must note that cultures are all about buildings (off course), and buildings have Granny 3D Models. So unless you’re Lord_T, you can’t edit models but only textures.

When I say ‘Scandinavian’ in this tutorial, I am just giving an example. This way I don’t constantly have to say that it’s an example. Also note that in this tutorial files from TWC are used, the process is the same for the regular AoE3 but the codes showed in this tutorial might differ slightly from yours.

OK, let’s start. If you want to create a new set of buildings, you’ll have to create a new culture. Cultures are defined in cultures.xml, inside Data.bar. Extract and open it, and you’ll see this short amount of text:

<?xml version="1.0" encoding="utf-8"?>
<cultures>
<culture>
<name>WesternEurope</name>
<displaynameid>22856</displaynameid>
</culture>
<culture>
<name>Mediterranean</name>
<displaynameid>22857</displaynameid>
</culture>
<culture>
<name>EasternEurope</name>
<displaynameid>22858</displaynameid>
</culture>
<culture>
<name>Aztec</name>
<displaynameid>43701</displaynameid>
</culture>
<culture>
<name>Sioux</name>
<displaynameid>43702</displaynameid>
</culture>
<culture>
<name>Iroquois</name>
<displaynameid>43703</displaynameid>
</culture>
</cultures>

Step 1

Start by copying a piece, let’s say you take the first one, paste it somewhere and rename it to Scandinavian.

And amazingly fast, you’re done in cultures.xml . Convert it back to .xmb, and place it in your Program Files\Microsoft Games\Age of Empires III\Data folder.

Step 2

This is another easy and short part. Go to civs.xml and search the following tags (Danish is an example):

<civ>
<name>Danish</name>
<main>1</main>
<statsid>DU</statsid>
<portrait>objects\flags\danish</portrait>
<culture>WesternEurope</culture>
<displaynameid>80000</displaynameid>
<rollovernameid>80001</rollovernameid>
<alliedid>26446</alliedid>
<alliedotherid>26445</alliedotherid>
<unalliedid>26444</unalliedid>

Change this into ‘Scandinavian’, and you’ve finished the second step.

Step 3

This is the little more boring part of the tutorial. You’ll have to edit the visual .xml’s of all buildings you want to use in your civ. As an example I’ll use the Barracks.

Search Barracks.xml in Art1.bar and open it. You’ll get a big amount of text, so don’t browse to search the following tags, but use Ctrl+F. The tags to search (promise me you won’t type this all into the search box ):

<submodel>
west_age2
<attachment>
collapse_smoke
<component>
collapse_smoke
<assetreference type="ParticleSystem">
<file>effects\smoke\collapse_smoke_a.particle</file>
</assetreference>
</component>
<anim>
Idle
<component>collapse_smoke</component>
</anim>
</attachment>
<attachment>
base smoke
<component>
smoke base
<assetreference type="ParticleSystem">
<file>effects\smoke\collapsesmoke01.particle</file>
</assetreference>
</component>
<anim>
Idle
<component>smoke base</component>
</anim>
</attachment>
<attachment>
base smoke2
<component>
smoke wave
<assetreference type="ParticleSystem">
<file>effects\smoke\collapse_smoke_wave.particle</file>
</assetreference>
</component>
<anim>
Idle
<component>smoke wave</component>
</anim>
</attachment>
<attachment>
base smoke3
<component>
smoke wave center
<assetreference type="ParticleSystem">
<file>effects\smoke\collapse_smoke_wave02.particle</file>
</assetreference>
</component>
<anim>
Idle
<component>smoke wave center</component>
</anim>
</attachment>
<component>
west_age2
<logic type="LowPoly">
<normal>
<logic type="Destruction">
<p1>
<assetreference type="GrannyModel" shape="west_barracks_age2">
<file>buildings\barracks\west\age_2\west_barracks_age2_damaged</file>
</assetreference>
</p1>
<p99>
<assetreference type="GrannyModel" shape="west_barracks_age2">
<file>buildings\barracks\west\age_2\west_barracks_age2</file>
</assetreference>
</p99>
</logic>
</normal>
<lowpoly>
<assetreference type="GrannyModel">
<file>buildings\barracks\west\age_2\lp_west_barracks_age2</file>
</assetreference>
</lowpoly>
</logic>
<decal>
<effecttype>default</effecttype>
<texture>buildings\barracks\WEST\AGE_2\west_barracks_ground</texture>
shadows_selections\selection_square_128x128
<width>9.00</width>
<height>9.00</height>
</decal>
</component>

This is, as visible on top of it, a Barracks which can be built by the WesternEurope Civs in the Colonial and Fortress Age. Beneath this big piece of text are 3 others, called west_age2_death, west_age3 and west_age3_death.

If you want to make your new building based on this one, copy all this info, and paste it somewhere else. Edit the textures (described in other tutorials) and go to the bottom of the file.

Step 4

At the bottom of the file you’ll find this:

<westerneurope>
<logic type="Tech">
<none>
<logic type="BuildingCompletion">
<p0>
<submodelref ref="sub_construction_stage_01"/></p0>
<p33>
<submodelref ref="sub_construction_stage_02"/></p33>
<p66>
<submodelref ref="generic_con"/>
</p66>
<p100>
<submodelref ref="generic"/>
</p100>
</logic>
</none>
<colonialize>
<logic type="BuildingCompletion">
<p0>
<submodelref ref="sub_construction_stage_01"/></p0>
<p33>
<submodelref ref="sub_construction_stage_02"/></p33>
<p66>
<submodelref ref="west_age2_con2"/></p66>
<p100>
<submodelref ref="west_age2"/></p100>
</logic>
</colonialize>
<industrialize>
<logic type="BuildingCompletion">
<p0>
<submodelref ref="sub_construction_stage_01"/></p0>
<p33>
<submodelref ref="sub_construction_stage_02"/></p33>
<p66>
<submodelref ref="west_age3_con2"/></p66>
<p100>
<submodelref ref="west_age3"/></p100>
</logic>
</industrialize>
</logic>
</westerneurope>

Copy and Paste it, and change WesternEurope into Scandinavian. Also change the bold tags, if you edited the parts of this file they’re pointing to…

Step 5

Do the same as in step 4 with all other buildings you might want to be appearing in your civ.

GOOD LUCK

peugeot407