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 worlds PlanetSizeCap. 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 uniqueness
    • MANDATORY_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 be true or false.

  • 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 orbit x + 1 will be a random value in this range further away from the center of the world than the object at orbit x 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 is 5 degrees.

  • AsteroidDensity The density of asteroids generated by the plugin. The default value is 0.6. Any value between 0 and 1 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 is 1. The size of a planet generated by the plugin depends on the gravity of said planet, where 1G equals 120km diameter. This size is then multiplied by this value. Any number greather than 0 allowed. Example: If a planet has 2G gravity, and the multiplier is 0.75, the planet will be 2G * 120km * 0.75 = 180km in diameter.

  • PlanetSizeCap The size limit for planets generated or spawned by this plugin in meters. Default is 1200km. 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 of surfaceGravity * 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 is 0.3. Any value between 0 and 1 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 is 0.25. Any value between 0 and 1 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 as PERSISTENT, they are just hidden on the HUD by default.
    • DISCOVERY The gps will be generated for the player as soon as he is whithin 50000 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 as PERSISTENT, they are just hidden on the HUD by default.
    • DISCOVERY The gps will be generated for the player as soon as he is whithin 50000 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 as PERSISTENT, they are just hidden on the HUD by default.
    • DISCOVERY The gps will be generated for the player as soon as he is whithin 5000 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