Anno 1800 Wiki
Advertisement
Anno 1800 Wiki

This page is for information related to game mods and discussion about modding / modifying the game's files. See Fan-made Tools for a list of tools created by Anno fans such as calculators or layout designers.

Under Construction![]

Modding Guides & Websites[]

  • You can read about how modding works in this English guide
  • HERE is a German guide. It was translated into English already, but the Annothek admin decided to just delete the modding section. So feel free to translate it again.
  • This is a video guide showing the steps needed to install ModLoader and install mods from sites such as Nexusmods.com or Github:
    Anno_1800_MODDING_GUIDE_-_How_to_Add_Mods_to_Your_Game!!

    Anno 1800 MODDING GUIDE - How to Add Mods to Your Game!!

Basic info[]

The games data is stored in the installation directory, in the "maindata" folder. The RDA files can be opened by RDA Explorer

RDA file organization[]

data0
  • General game files
  • data1: Shaders used in the basegame
  • data2: Icons and images used in the basegame
  • data3: Video used in the basegame
  • data4: Blacklisted words in every language and fonts for the game
  • data5: Maps used in the basegame
  • data6: Islands used in the basegame
  • data7: Benchmarks
  • data8: Buildings used in the basegame
  • data9: Sounds used in the basegame
  • data10: The Anarchist DLC
  • data11: Sunken Treasures DLC
  • data12: Botanica DLC
  • data13: The Passage DLC
  • data14: Seat Of Power DLC
  • data15: Bright Harvest DLC
  • data16: Land Of Lions DLC
  • data17: Docklands DLC
  • data18: Tourist Season DLC
  • data19: The High Life DLC
  • data20: Pedestrian Zone Pack
  • data21: Eden Burning Scenario
  • data22: Seeds of Change DLC
  • data23: Industrial Zone Pack
  • data24: Empire of the Skies DLC
  • data25: New World Rising DLC
  • data26: Dragon Garden Pack
en_us0.rda
Localization Sound.
de_de0.rda
Localization Sound.
fr_fr0.rda
Localization Sound.
ru_ru0.rda
Localization Sound.

The principle of modding involves modifying in-games values (Ships maintenance costs for instance) to make the game harder, easier or more balanced.

More detailed info[]

Such values as building cost, power output/consumation, maintenance cost, ecobalance effect, etc. is stored in patch0.rda/data/config/export/main/asset/assets.xml and superceded by the assets.xml files of subsequent patches.

Organisation of assets.xml[]

The data is divided into groups.

  1. Animals
  2. Buildings
    1. Tycoons
      1. Residence (houses)
      2. Public
      3. Production
      4. Energy (interesting!)
      5. Special (ark, ...)
      6. Ornaments
    2. Ecos
      1. Same as the Tycoon organisation
    3. Tech
      1. Same as the Tycoon organisation
    4. Others (fields, ...)
    5. "Relocation Placeholders"
    6. Third Party
  3. Vehicles
    1. Tycoons
      1. Submarine
      2. Warships
      3. Trading Ships
    2. Ecos
    3. Tech
    4. Third Party
    5. Other
    6. Quest Vehicles
  4. Units
  5. Street
  6. Testdata
  7. Unplaceable
  8. Landscape
  9. Infolayer
  10. Props
  11. Targets
  12. Disasters
  13. ... and then enough categories to give you an headache

Values[]

Credits (e.g. Values/BuildCost/ResourceCost/Credits and Values/MaintenanceCost/ActiveCost and InactiveCost) are stored in the same unit as in-game credits.

Non-credit maintenance cost like power and ecobalance (Values/MaintenanceCost/ActiveEcoEffect, ActiveEnergyCost, ActiveEnergyProduction + Inactive...) are stored as binary fixed point numers:

ingame_maintenance = datafile_maintenance >> 12  # use binary right shift
ingame_maintenance = datafile_maintenance / 4096 # or divide by 2**12


Amounts of goods (Values/BuildCost/ProductCost/Tools) are stored in kilograms (1000 kg in data file = 1 ton ingame).

Time (Values/WareProduction/ProductionTime) is stored in miliseconds.

Default passive trading prices can be calculated as int(2.5 * properties.xml > .//ProductPrices/{value from assets.xml > /Values/WareProduction/Product}/BaseGoldPrice).

Building size in game tiles can be calculated from .ifo files using this pseudo-algorithm:

cfg_path = assets.xml -> /Values/Object/Variations/Item/Filename
ifo_path = cfg_path.replace("cfg", "ifo").lower()
ifo_file = open ifo_path from data2.rda + patches
x = ifo_file -> .//BuildBlocker/Position/x
z = ifo_file -> .//BuildBlocker/Position/z
x = abs(x) >> 11
z = abs(z) >> 11

See python implementation of reading these values in list_of_buildings.py.

Advertisement