Map modding

本页面部分全部内容上次核对于2.2版本
自由之民讨论 | 贡献2022年3月8日 (二) 18:37的版本 (文本替换 - 替换“Category:Modding”为“Category:模组制作”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

The maps can be modded in two ways: either create new forms and sizes of generated maps or create a fully static & pre-scripted map.

Directories & Files

Relevant directories and files are the following:

  • Stellaris/common/solar_system_initializers/*
  • Stellaris/common/random_names/base/00_random_names.txt
  • Stellaris/map/galaxy/*
  • Stellaris/map/setup_scenarios/*
  • Stellaris/prescripted_countries/*

Add new Galaxy Size

Adding a new galaxy size is the easiest form of modding the map. Simply copy one of the files in ./map/setup_scenarios/ (for example huge.txt) into your mods map/setup_scenarios/ folder. Rename the file to something else (unless you want to overwrite an existing map type. Now you can simply change the options given, which should be self explanatory.

Things to be aware of:

  • Do not put the radius above 500. The galaxy box does not get bigger, so all stars spawned beyond size 500 are simply spawned at the border.
  • Increasing the number of stars beyond 1000 will reduce performance and make the map unplayable.

Add new Galaxy Form

Adding a new galaxy form can be done by adding a new file in the map/galaxy/ folder. Simply edit copy and edit one of the existing files or create a new file. Only a few options are available to actually change the output. Keep in mind that the background of a galaxy makes the core fairly bright, hiding stars there. So it might be good to change this, if a number of stars are in the core.

Add a Static Galaxy

Adding a static galaxy is more involved and requires a number of steps. The most important part: generally if you are making a static galaxy, expect to define close to everything. The reason for this is, that the galaxy generator will break things if some stuff is predefined and other things are generated. For example, a race spawned into a random home world might start with the wrong climate in said home world making the pops very unhappy. To prevent this the home world climate and the climate of the generated world in the solar system initializer must match.

A working example:

 
static_galaxy_scenario = {
    name = "EvE Online: Amarr Empire (726)"   
    default = no
    priority = 8
    num_empires = { min = 1 max = 3 }
    num_empire_default = 3
    fallen_empire_default = 0
    fallen_empire_max = 0
    advanced_empire_default = 0    
    core_radius = 0                # set always 0 unless you don't want to put any stars there.
    colonizable_planet_odds = 1.0
    random_hyperlanes = no # yes | no