This files is a description of the content of the skin. It is used to describe the organization of the world and how to display it. It has the following structure:
onu ( (skinSpritesData (intItem | strItem )*) (country (flag-point cannons-point cavalry-point infantry-point neighbours (neighbour*) ) )* nationality* (continent (continent-country))* )
An onu tag contains a skinSpritesData tag, a number of country tags, a number of nationality tags and lastly a number of continent tags. The skinSpritesData itself contains a number of intItem or strItem tags. The country tag contains some object point tags and a neighbours tag, itself containing a number of neighbour tags.
Table 5.1.
Tag name | Attribute name | Attribute type and signification |
---|---|---|
onu | width | The width of the skin's map |
height | The height of the skin's map | |
skinpath | The path of the skin relative to the application data path (e.g. skins/default) | |
nb-countries | The number of countries (42 in the default skin). There should be the same number of country tags below | |
nb-nationalities | The number of nationalities (6 in the default skin). There should be the same number of nationality tags below | |
nb-continents | The number of continents (6 in the default skin). There should be the same number of continent tags below | |
map | The path and name of the map file relative to the skin path (e.g. Images/map.png) | |
map-mask | The path and name of the map mask file relative to the skin path (e.g. Images/map-mask.png) | |
format-version | The version of the skin file format (1.2, unsused for the moment) | |
intItem | key | The name of the item |
value | The value of the item interpreted as an integer | |
strItem | key | The name of the item |
value | The value of the item interprted as a string | |
country | id | The integer unique identification number of the country |
name | The displayed name of the country, currently not internationalized | |
<sprite>-point | Each type of sprite (flag, infantry, etc.) in the country is displayed a a certain position defined by this tag | |
x | The X-coordinate at which the top left point of the object will be displayed on the map (starting at left) | |
y | The Y-coordinate at which the top left point of the object will be displayed (starting at top) | |
neighbour | id | The id of a neighbour of the current country |
nationality | name | The name of the nationality (e.g. Japan) |
flag | The name of the country's flag sprite file | |
continent | name | The name of the continent (e.g. Africa) |
bonus | The number of armies obtained at the end of the turn by the player owning all the countries of the continent | |
continent-country | id | The id of one of the countries inside the current continent |
This tag has a special organization: each type of sprite (flag, infantry, cavalry, cannon, firing cannon and exploding cannon) is defined by some intItem and strItem and there is two more intItem giving positioning hints for animations. The table below shows all the elements of the skinSpritesData tag with some explanations. Only some sprites have a width data. These are used for relative positioning during animations: the cannons, firing or explosing should not "move" around the country's flag during fight.
Table 5.2.
Key value | Entry type | Signification | Value in the default skin |
---|---|---|---|
flag-width | intItem | The width of the flag sprites frames | 20 |
flag-frames | intItem | The number of frames of the flag sprites | 4 |
flag-versions | intItem | The number of versions of the flag sprites | 1 |
infantry-file | strItem | The filename of the infantry sprite | infantry.png |
infantry-frames | intItem | The number of frames of the infantry sprites | 1 |
infantry-versions | intItem | The number of versions of the infantry sprites | 3 |
cavalry-file | strItem | The filename of the cavalry sprite | cavalry.png |
cavalry-frames | intItem | The number of frames of the cavalry sprites | 1 |
cavalry-versions | intItem | The number of versions of the cavalry sprites | 3 |
cannon-file | strItem | The filename of the cannon sprite | cannon.png |
cannon-width | intItem | The width of the cannon sprites frames | 32 |
cannon-frames | intItem | The number of frames of the cannon sprites | 2 |
cannon-versions | intItem | The number of versions of the cannon sprites | 3 |
firing-file | strItem | The filename of the firing cannon sprite | firing.png |
firing-width | intItem | The width of the firing cannon sprites frames | 64 |
firing-frames | intItem | The number of frames of the firing cannon sprites | 4 |
firing-versions | intItem | The number of versions of the firing cannon sprites | 2 |
exploding-file | strItem | The filename of the exploding cannon sprite | exploding.png |
exploding-frames | intItem | The number of frames of the exploding cannon sprites | 4 |
exploding-versions | intItem | The number of versions of the exploding cannon sprites | 2 |
fighters-flag-y-diff | intItem | The height difference between flags and cannons sprites | -12 |
width-between-flag-and-fighter | intItem | The number of pixels between the left most pixel of the flag and the right most pixel of the simple cannon (when not firing nor exploding) | 32 |