Types/MapGenPreset: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
(Removed old prototype docs)
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Basics ==
<div class="stub"><p>'''The prototype docs have moved to a new website with an improved format.''' This documentation page can now be found here: [https://lua-api.factorio.com/latest/types/MapGenPreset.html https://lua-api.factorio.com/latest/types/MapGenPreset.html]
A map gen preset. Used in [[Prototype/MapGenPresets]].


== Mandatory properties ==
</p><p>This wiki page is no longer updated and '''will be removed at some point in the future''', so please update your browser bookmarks or other links that sent you here. If you'd like to contribute to the new docs, you can leave your feedback [https://forums.factorio.com/viewforum.php?f=233 on the forums].</p></div>
 
=== order ===
'''Type''': [[Types/Order]]
 
Specifies the ordering in the [[map generator]] gui.
 
== Optional properties ==
 
=== default ===
'''Type''': [[Types/bool]]
 
'''Default''': true
 
Whether this is the default preset. If set to true, this preset may not have any other properties besides this and order.
 
If no MapGenPreset has <code>default = true</code>, the preset selector will have a blank preset label, having default settings. The "blank" preset goes away when another preset is selected.
 
=== basic_settings ===
'''Type''': [[Types/table]]
 
This is a table with the below key/value pairs. All key/value pairs are optional. If not set they will just use the default values.
 
* terrain_segmentation - [[Types/MapGenSize]]
:: This is the inverse of "water scale" in the map generator GUI. So a water scale that shows as 50% in the GUI is a value of <code>1/0.5 = 2</code> for <code>terrain_segmentation</code>.
* water - [[Types/MapGenSize]]
:: Shown as water coverage in the map generator GUI.
* default_enable_all_autoplace_controls - [[Types/bool]] - Default: true
:: Whether undefined autoplace_controls should fall back to the default controls or not.
* autoplace_controls - [[Types/table]]
:: Table of [[Data.raw#autoplace-control]] name keys mapped to table values. Each table can have the following fields:
::* frequency - [[Types/MapGenSize]]
::* size - [[Types/MapGenSize]]
::* richness - [[Types/MapGenSize]]
::Example:
::<syntaxhighlight lang="lua">autoplace_controls =
  {
    ["iron-ore"] = { richness = 2, size = 0.5, frequency=2},
    ["enemy-base"] = { size = 1},
    ["trees"] = { richness = 4}
  }</syntaxhighlight>
* autoplace_settings - [[Types/table]] of [https://lua-api.factorio.com/latest/Concepts.html#AutoplaceSettings AutoplaceSettings]
:: Each setting in this table maps the string type to the settings for that type. Valid types are "entity", "tile" and "decorative".
* property_expression_names - [[Types/table]]
:: Map of property name (e.g. "elevation") to name of [[Prototype/NamedNoiseExpression|noise expression]] that will provide it. Entries may be omitted. A notable usage is changing autoplace behavior of an entity based on the preset, which cannot be read from a noise expression.
* starting_points - [[Types/table]] of [[Types/Position]]
:: Array of the positions of the starting areas.
* seed - [[Types/uint32]]
:: Read by the game, but not used or set in the GUI.
* width - [[Types/uint32]]
:: Amount of tiles from left to right. Silently limited to 2,000,000, +/- 1 million tiles from the center.
* height - [[Types/uint32]]
:: Amount of tiles from top to bottom. Silently limited to 2,000,000, +/- 1 million tiles from the center.
* starting_area - [[Types/MapGenSize]]
:: Size of the starting area. The starting area only effects enemy placement, and has no effect on resources.
* peaceful_mode - [[Types/bool]]
* cliff_settings - [https://lua-api.factorio.com/latest/Concepts.html#CliffPlacementSettings CliffPlacementSettings]
 
=== advanced_settings ===
'''Type''': [[Types/table]]
 
This is a table with the below key/value pairs. All key/value pairs are optional, if not set they will just use the existing values.
* pollution - [[Types/table]]
:{| class="wikitable"
|-
! Property name !! Type !! Comment
|-
| enabled || [[Types/bool]]
|-
| diffusion_ratio || [[Types/double]] || Must be <= 0.25.
|-
| ageing || [[Types/double]] || Also known as dissipation rate. Must be >= 0.5.
|-
| enemy_attack_pollution_consumption_modifier ||  [[Types/double]]
|-
| min_pollution_to_damage_trees || [[Types/double]]
|-
| pollution_restored_per_tree_damage || [[Types/double]]
|-
|}
* enemy_evolution - [[Types/table]]
:{| class="wikitable"
|-
! Property name !! Type
|-
| enabled || [[Types/bool]]
|-
| time_factor || [[Types/double]]
|-
| destroy_factor || [[Types/double]]
|-
| pollution_factor || [[Types/double]]
|-
|}
* enemy_expansion - [[Types/table]]
:{| class="wikitable"
|-
! Property name !! Type !! Comment
|-                                           
| enabled || [[Types/bool]]
|-
| max_expansion_distance || [[Types/double]]
|-
| settler_group_min_size || [[Types/double]]
|-
| settler_group_max_size || [[Types/double]]
|-
| min_expansion_cooldown || [[Types/double]] || In ticks.
|-
| max_expansion_cooldown || [[Types/double]] || In ticks.
|-
|}
 
* difficulty_settings - [[Types/table]]
:{| class="wikitable"
|-
! Property name !! Type !! Comment
|-
| recipe_difficulty || [https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings defines.difficulty_settings.recipe_difficulty]
|-
| technology_difficulty || [https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings defines.difficulty_settings.technology_difficulty]
|-
| technology_price_multiplier || [[Types/double]]
|-
| research_queue_setting || [[Types/string]] || Either "after-victory", "always" or "never".
|-
|}

Latest revision as of 14:32, 25 October 2024

The prototype docs have moved to a new website with an improved format. This documentation page can now be found here: https://lua-api.factorio.com/latest/types/MapGenPreset.html

This wiki page is no longer updated and will be removed at some point in the future, so please update your browser bookmarks or other links that sent you here. If you'd like to contribute to the new docs, you can leave your feedback on the forums.