Configuration - thorwin99/SEWorldGenPlugin GitHub Wiki
Introduction
This section is mostly for dedicated servers, as installing the plugin for your local game will give you options in SE itself to configure these settings.
Still, it is recommended to read through these options.
The configuration of the plugin is split up into 2 configuration files. The global configuration file, located at %appdata%\SpaceEngineers\Storage\SEWorldGenPlugin.xml
, which contains settings that apply to all worlds that use the plugin. On a dedicated server it is located within the Storage
folder of the server, and on a Torch server it is located in the Storage
folder within the Instance
folder. The global configuration can be edited ingame by going to the main menu or pause screen and pressing the settings button next to the installed version notice of the plugin at the bottom of the screen.
Then there is also the world settings file, that is located in the dedicated save folder of the world and is called WorldSettings.xml
. The world settings file can also be edited ingame when choosing to create a world, or to edit the world settings like you would normally do.
The following two sections will discuss in detail, what each configuration value means and what values it accepts.
Global configuration file
There are some example configuration files located here This config file can also be edited in-game, if you have the plugin installed in your SE. Just open the plugin settings from within the plugin menu in the main menu.
-
MoonDefinitions
A list of strings that each contain the subtype id of a planet, that should be specified as a moon. Please look up the examples for more information of how they are exactly specified. -
GasGiantDefinitions
A list of strings that each contain the subtype id of a planet, that should be specified as a gas giant. A gas giant will be scaled up to twice the size of a planet with the same gravity. Please look up the examples for more information of how they are exactly specified. -
SunDefinitions
A list of strings that each contain the subtype id of a planet, that should be specified as a sun. There will always only one sun in the system, at its center. If no suns are specified, no sun will be generated. Suns can only spawn at the system center and will be choosen completely random from all planets that are loaded with the world and are specified in this list. Please look up the examples for more information of how they are exactly specified. -
BlacklistedPlanetDefinitions
A list of strings that each contain the subtype id of a planet, that should be blacklisted. A planet in this list will never get generated by the plugin. Please look up the examples for more information of how they are exactly specified. -
MandatoryPlanetDefinitions
A list of strings that each contain the subtype id of a planet, that should be mandatory. When choosing the mandatory first or only generation method, these planets will be used for that. For more information look into the world settings documentation below. Please look up the examples for more information of how they are exactly specified. -
FixedPlanetSizes
A list of pairs of strings and doubles, representing the planets subtype id and a fixed diameter. The generator will always use the diameter for the planet, except when the diameter would exceed the worldsPlanetSizeCap
. Can be edited in game instead of xml, since it is a more complex list. For manual editing, view the examples here. -
PlanetNameFormat
The name format for planets that are generated by the plugin. Please refer to the name format section for more information about how you can use them. This value is a string. -
MoonNameFormat
The name format for moons that are generated by the plugin. Please refer to the name format section for more information about how you can use them. This value is a string. -
BeltNameFormat
The name format for asteroid belts that are generated by the plugin. Please refer to the name format section for more information about how you can use them. This value is a string. -
EnablePatching
If the plugin is loaded with 0harmony.dll, this option enables patches for bugs, that can't be fixed, without modifying SE code. These patches are located in the Patch folder of the source code. This option is recommended to be used.
Current list of patches
Asteroid jump fix
This patch fixes jumps into asteroid rings, where the game does not consider asteroids for collision when finding the final jump location. Without it, the ship could jump into asteroids.
Name formats options
The name formats can be any text, that can include some of the tags below. The table lists all available tags and for what objects they are available. An example planet name format would be: Planet [ObjectNumber] - [ObjectId] All tags have to be enclosed in [] brackets, so the plugin recognises them as such. These naming options can only be set in the gloab configuration file and will affect all worlds with the plugin enabled. You can not use the following symbols in the naming scheme: < > : " / \ | ? * _
Option | Planet | Moon | Belt | Description |
---|---|---|---|---|
ObjectNumber | X | X | X | The place, the object is at in reference to the parent object. For planets and belts that would be the system, for moons the planet |
ObjectNumberGreek | X | X | X | The same as ObjectNumber, just as a greek letter |
ObjectNumberRoman | X | X | X | The same as ObjectNumber, just as a Roman number |
ObjectLetterLower | X | X | X | The same as object number, just as a lower case latin letter |
ObjectLetterUpper | X | X | X | The same as object number, just as an upper case latin letter |
ObjectId | X | X | The definition id of the object | |
Parent Name | X | The parent planets name using its naming scheme |
World settings
These are local settings that are specific to one world. If you have the plugin installed in your SE game, you can edit these settings on the world settings screen in-game.
Enabled
Whether or not the plugin is enabled for this world.
GeneratorSettings section
This section contains the general generation settings for the plugin.
-
SystemGenerator
The generation method for planets and moons to use with this world. Valid options are:FULL_RANDOM
The default, genrates a system that is fully random in regards to the planets, moons and gas giants used.UNIQUE
Every planet and moon should be unique. If the amount of planets or moons in this world exceed the amount of unique planets and moons, doubles will occour.MANDATORY_FIRST
Planets and moons specified as mandatory in the global settings will be generated first, and only after that any other planet can be generated. Does not guarantee uniquenessMANDATORY_ONLY
Only planets and moons specified as mandatory in the global settings will be generated.MANDATORY_UNIQUE
Combines the unique and mandatory only generation modes.NONE
This generator skips the generation and will give you an empty system to use the plugins functionality in, such as the admin menus.
-
AsteroidGenerator
The type of asteroid generator to use for this world. Valid options are:PLUGIN
The default, asteroids are generated by the plugin and will only occour in asteroid objects such as rings.VANILLA
The vanilla asteroid generator is used. No asteroids for the plugin will be spawned, which means that asteroid objects will not generate their asteroids.BOTH
A combination of both options above. It will spawn all vanilla asteroids, but will also generate asteroids in the asteroid objects, such as asteroid rings.
-
AllowVanillaPlanets
Whether vanilla planets are allowed to be generated by the plugin. Can betrue
orfalse
. -
MinMaxPlanets
The minimum and maximum amount of planets in the system. The generator will choose a random number in this range. To specify an exact amount, set min and max equal. Only integer values are allowed. -
MinMaxAsteroidObjects
The minimum and maximum amount of asteroid objects, such as asteroid belts, in the system. This does not include asteroid rings around planets currently. The generator will choose a random number in this range. To specify an exact amount, set min and max equal. Only integer values are allowed. -
MinMaxOrbitDistance
The minimum and maximum distance between two orbits of objects in the system in meters. An orbit in this sense is just the distance to the center of the world at(0, 0, 0)
. This means, that the object generated at orbitx + 1
will be a random value in this range further away from the center of the world than the object at orbitx
Only integer values are allowed. -
SystemPlaneDeviation
The angle an object in the system can deviate from the system plane (x y axis) at most. Default value is5
degrees. -
AsteroidDensity
The density of asteroids generated by the plugin. The default value is0.6
. Any value between0
and1
is allowed -
WorldSize
The size limit of the world generated by the plugin in meters. This is independent of the vanilla world size. The plugin wont generate any object further from the center than this value. The default value is-1
and means that the world is infinitely large. Only integer values are allowed.
PlanetSettings section
This section contains settings relevant for planet generation.
-
PlanetSizeMultiplier
The multiplier to apply to the size of planets. Default is1
. The size of a planet generated by the plugin depends on the gravity of said planet, where1G
equals120km
diameter. This size is then multiplied by this value. Any number greather than0
allowed. Example: If a planet has2G
gravity, and the multiplier is0.75
, the planet will be2G * 120km * 0.75 = 180km
in diameter. -
PlanetSizeCap
The size limit for planets generated or spawned by this plugin in meters. Default is1200km
. Only integer values allowed. -
PlanetSizeDeviation
A percentage that allows planets with equal gravity to have different sizes. This percentage is the maximum deviation from the default size ofsurfaceGravity * 120km * PlanetSizeMultiplier
. -
BaseMoonProbability
The base probability for moons to spawn around the planet. It will be multiplied by the planets gravity to receive the real probability for a moon or more to spawn. Default value is0.3
. Any value between0
and1
allowed. -
BaseRingProbability
The base probability for a ring to spawn around the planet. It will be multiplied by the planets gravity to receive the real probability for a ring to spawn. Default value is0.25
. Any value between0
and1
allowed. -
MinMaxMoons
The minimum and maximum amount of moons a planet can generate. Only integer values are allowed.
GPSSettings section
This section contains the settings relevant for automatic gps creation.
-
PlanetGPSMode
The GPS generation mode for planets. Valid values are:PERSISTENT
The GPS for the Planet will be generated once for every player. They can be deleted or renamed by each player for themselves and wont regenerate.PERSISTENT_HIDDEN
Same asPERSISTENT
, they are just hidden on the HUD by default.DISCOVERY
The gps will be generated for the player as soon as he is whithin50000 km
range to the planet. The gps will stay as long as the player is in range and will be removed if he leaves the range. Can be reneamed, but will always regenerate.NONE
No gps will be generated.
-
MoonGPSMode
The GPS generation mode for moons. Valid values are:PERSISTENT
The GPS for the moon will be generated once for every player. They can be deleted or renamed by each player for themselves and wont regenerate.PERSISTENT_HIDDEN
Same asPERSISTENT
, they are just hidden on the HUD by default.DISCOVERY
The gps will be generated for the player as soon as he is whithin50000 km
range to the moon. The gps will stay as long as the player is in range and will be removed if he leaves the range. Can be reneamed, but will always regenerate.NONE
No gps will be generated.
-
AsteroidGPSMode
The GPS generation mode for asteroid objects. Valid values are:PERSISTENT
The GPS for the asteroid object will be generated once for every player. They can be deleted or renamed by each player for themselves and wont regenerate.PERSISTENT_HIDDEN
Same asPERSISTENT
, they are just hidden on the HUD by default.DISCOVERY
The gps will be generated for the player as soon as he is whithin5000 km
range to the asteroid object. It will always display the closest point from the player to the asteroid object. The gps will stay as long as the player is in range and will be removed if he leaves the range. Can be reneamed, but will always regenerate.NONE
No gps will be generated.
Troubleshooting
- If your plugin world settings dont seem to apply, you may try to look into the template world folder of SE. It is located in the Content folder of the SE installation and named Customworlds. Go into the template you tried to use and if there is a Storage folder delete it. Sometimes, the plugin saves configs there, which is a bug, and causes SE to load that config file