Files
c3abf27266 Skip max_pollution_to_restore_trees in 2.1.18+ exchange strings (#1132)
Factorio 2.1.18 removed PollutionSettings::max_pollution_to_restore_trees,
but readPollution still read it for every version, so every map setting
after it was read 9 bytes late: enemy_attack_pollution_consumption_modifier
came out as garbage, the enemy_evolution factors shifted by one field and
enemy_expansion.enabled and both expansion distances came out null.

Read the field only for strings older than 2.1.18. Add modified_v2_1_17
and modified_v2_1_18 fixtures generated with headless 2.1.17 and 2.1.18
from the modified 2.1 settings (base game only), unit tests asserting
their full decoded output, and use the 2.1.18 string for the
load-scenario integration test on 2.1.18 and later.

Fixes #1131

Co-authored-by: ColumbusLabs <287001685+ColumbusLabs@users.noreply.github.com>
Co-authored-by: Cooldude2606 <25043174+Cooldude2606@users.noreply.github.com>
2026-10-22 17:22:09 +01:00

711 lines
22 KiB
JavaScript

export const default_map_gen_settings = {
autoplace_controls: {
"coal": { frequency: 1, size: 1, richness: 1 },
"copper-ore": { frequency: 1, size: 1, richness: 1 },
"crude-oil": { frequency: 1, size: 1, richness: 1 },
"enemy-base": { frequency: 1, size: 1, richness: 1 },
"iron-ore": { frequency: 1, size: 1, richness: 1 },
"stone": { frequency: 1, size: 1, richness: 1 },
"trees": { frequency: 1, size: 1, richness: 1 },
"uranium-ore": { frequency: 1, size: 1, richness: 1 },
},
autoplace_settings: {},
default_enable_all_autoplace_controls: true,
seed: 1234567890,
width: 2000000,
height: 2000000,
area_to_generate_at_start: {
left_top: { x: -224, y: -224 },
right_bottom: { x: 224, y: 224 },
orientation: { x: 0, y: -32767 },
},
starting_area: 1,
peaceful_mode: false,
starting_points: [
{ x: 0, y: 0 },
],
property_expression_names: {},
cliff_settings: {
name: "cliff",
cliff_elevation_0: 10,
cliff_elevation_interval: 40,
richness: 1,
},
terrain_segmentation: 1,
water: 1,
};
export const default_map_settings = {
pollution: {
enabled: true,
diffusion_ratio: 0.02,
min_to_diffuse: 15,
ageing: 1,
expected_max_per_chunk: 150,
min_to_show_per_chunk: 50,
min_pollution_to_damage_trees: 60,
pollution_with_max_forest_damage: 150,
pollution_per_tree_damage: 50,
pollution_restored_per_tree_damage: 10,
max_pollution_to_restore_trees: 20,
enemy_attack_pollution_consumption_modifier: 1,
},
steering: {
default: {
radius: 1.2, separation_factor: 1.2, separation_force: 0.005, force_unit_fuzzy_goto_behavior: false,
},
moving: {
radius: 3, separation_factor: 3, separation_force: 0.01, force_unit_fuzzy_goto_behavior: false,
},
},
enemy_evolution: {
enabled: true,
time_factor: 0.000004,
destroy_factor: 0.002,
pollution_factor: 9e-7,
},
enemy_expansion: {
enabled: true,
max_expansion_distance: 7,
friendly_base_influence_radius: 2,
enemy_building_influence_radius: 2,
building_coefficient: 0.1,
other_base_coefficient: 2,
neighbouring_chunk_coefficient: 0.5,
neighbouring_base_chunk_coefficient: 0.4,
max_colliding_tiles_coefficient: 0.9,
settler_group_min_size: 5,
settler_group_max_size: 20,
min_expansion_cooldown: 14400,
max_expansion_cooldown: 216000,
},
unit_group: {
min_group_gathering_time: 3600,
max_group_gathering_time: 36000,
max_wait_time_for_late_members: 7200,
max_group_radius: 30,
min_group_radius: 5,
max_member_speedup_when_behind: 1.4,
max_member_slowdown_when_ahead: 0.6,
max_group_slowdown_factor: 0.3,
max_group_member_fallback_factor: 3,
member_disown_distance: 10,
tick_tolerance_when_member_arrives: 60,
max_gathering_unit_groups: 30,
max_unit_group_size: 200,
},
path_finder: {
fwd2bwd_ratio: 5,
goal_pressure_ratio: 2,
use_path_cache: true,
max_steps_worked_per_tick: 1000,
max_work_done_per_tick: 8000,
short_cache_size: 5,
long_cache_size: 25,
short_cache_min_cacheable_distance: 10,
short_cache_min_algo_steps_to_cache: 50,
long_cache_min_cacheable_distance: 30,
cache_max_connect_to_cache_steps_multiplier: 100,
cache_accept_path_start_distance_ratio: 0.2,
cache_accept_path_end_distance_ratio: 0.15,
negative_cache_accept_path_start_distance_ratio: 0.3,
negative_cache_accept_path_end_distance_ratio: 0.3,
cache_path_start_distance_rating_multiplier: 10,
cache_path_end_distance_rating_multiplier: 20,
stale_enemy_with_same_destination_collision_penalty: 30,
ignore_moving_enemy_collision_distance: 5,
enemy_with_different_destination_collision_penalty: 30,
general_entity_collision_penalty: 10,
general_entity_subsequent_collision_penalty: 3,
extended_collision_penalty: 3,
max_clients_to_accept_any_new_request: 10,
max_clients_to_accept_short_new_request: 100,
direct_distance_to_consider_short_request: 100,
short_request_max_steps: 1000,
short_request_ratio: 0.5,
min_steps_to_check_path_find_termination: 2000,
start_to_goal_cost_multiplier_to_terminate_path_find: 2000,
overload_levels: [0, 100, 500],
overload_multipliers: [2, 3, 4],
negative_path_cache_delay_interval: 20,
},
max_failed_behavior_count: 3,
difficulty_settings: {
recipe_difficulty: 0,
technology_difficulty: 0,
technology_price_multiplier: 1,
research_queue_setting: "after-victory",
},
};
export const modified_map_gen_settings = {
autoplace_controls: {
"coal": { frequency: 1, size: 1, richness: 1 },
"copper-ore": { frequency: 0.5, size: 1, richness: 1 },
"crude-oil": { frequency: 0.5, size: 1, richness: 4 },
"enemy-base": { frequency: 2, size: 1.5, richness: 1 },
"iron-ore": { frequency: 1.5, size: 1, richness: 1 },
"stone": { frequency: 2, size: 1, richness: 1 },
"trees": { frequency: 1.3333333730697632, size: 0.3333333432674408, richness: 1 },
"uranium-ore": { frequency: 1, size: 1.3333333730697632, richness: 1 },
},
autoplace_settings: {
entity: {
treat_missing_as_default: true,
settings: {
"rock-huge": { frequency: 10, size: 20, richness: 2.4000000953674316 },
},
},
tile: {
treat_missing_as_default: false,
settings: {
"grass-1": { frequency: 4, size: 1, richness: 1 },
"water": { frequency: 1, size: 1, richness: 1},
},
},
},
default_enable_all_autoplace_controls: true,
seed: 3378377395,
width: 2000000,
height: 2000000,
area_to_generate_at_start: {
left_top: { x: -224, y: -224 },
right_bottom: { x: 224, y: 224 },
orientation: { x: 0, y: -32767 },
},
starting_area: 0.3333333432674408,
peaceful_mode: false,
starting_points: [
{ x: 0, y: 0 },
],
property_expression_names: {
"control-setting:aux:bias": "-0.200000",
"control-setting:aux:frequency:multiplier": "2.000000",
"control-setting:moisture:bias": "-0.200000",
"control-setting:moisture:frequency:multiplier": "0.333333",
},
cliff_settings: {
name: "cliff",
cliff_elevation_0: 10,
cliff_elevation_interval: 40,
richness: 0.3333333432674408,
},
terrain_segmentation: 0.5,
water: 0.3333333432674408,
};
export const modified_map_settings = {
pollution: {
enabled: true,
diffusion_ratio: 0.02,
min_to_diffuse: 15,
ageing: 1.5,
expected_max_per_chunk: 150,
min_to_show_per_chunk: 50,
min_pollution_to_damage_trees: 3785,
pollution_with_max_forest_damage: 150,
pollution_per_tree_damage: 50,
pollution_restored_per_tree_damage: 3714,
max_pollution_to_restore_trees: 20,
enemy_attack_pollution_consumption_modifier: 1,
},
steering: {
default: {
radius: 1.2, separation_factor: 1.2, separation_force: 0.005, force_unit_fuzzy_goto_behavior: false,
},
moving: {
radius: 3, separation_factor: 3, separation_force: 0.01, force_unit_fuzzy_goto_behavior: false,
},
},
enemy_evolution: {
enabled: true,
time_factor: 0.00002,
destroy_factor: 0.002,
pollution_factor: 0.000012,
},
enemy_expansion: {
enabled: true,
max_expansion_distance: 13,
friendly_base_influence_radius: 2,
enemy_building_influence_radius: 2,
building_coefficient: 0.1,
other_base_coefficient: 2,
neighbouring_chunk_coefficient: 0.5,
neighbouring_base_chunk_coefficient: 0.4,
max_colliding_tiles_coefficient: 0.9,
settler_group_min_size: 3,
settler_group_max_size: 35,
min_expansion_cooldown: 169200,
max_expansion_cooldown: 414000,
},
unit_group: {
min_group_gathering_time: 3600,
max_group_gathering_time: 36000,
max_wait_time_for_late_members: 7200,
max_group_radius: 30,
min_group_radius: 5,
max_member_speedup_when_behind: 1.4,
max_member_slowdown_when_ahead: 0.6,
max_group_slowdown_factor: 0.3,
max_group_member_fallback_factor: 3,
member_disown_distance: 10,
tick_tolerance_when_member_arrives: 60,
max_gathering_unit_groups: 30,
max_unit_group_size: 200,
},
path_finder: {
fwd2bwd_ratio: 5,
goal_pressure_ratio: 2,
use_path_cache: true,
max_steps_worked_per_tick: 1000,
max_work_done_per_tick: 8000,
short_cache_size: 5,
long_cache_size: 25,
short_cache_min_cacheable_distance: 10,
short_cache_min_algo_steps_to_cache: 50,
long_cache_min_cacheable_distance: 30,
cache_max_connect_to_cache_steps_multiplier: 100,
cache_accept_path_start_distance_ratio: 0.2,
cache_accept_path_end_distance_ratio: 0.15,
negative_cache_accept_path_start_distance_ratio: 0.3,
negative_cache_accept_path_end_distance_ratio: 0.3,
cache_path_start_distance_rating_multiplier: 10,
cache_path_end_distance_rating_multiplier: 20,
stale_enemy_with_same_destination_collision_penalty: 30,
ignore_moving_enemy_collision_distance: 5,
enemy_with_different_destination_collision_penalty: 30,
general_entity_collision_penalty: 10,
general_entity_subsequent_collision_penalty: 3,
extended_collision_penalty: 3,
max_clients_to_accept_any_new_request: 10,
max_clients_to_accept_short_new_request: 100,
direct_distance_to_consider_short_request: 100,
short_request_max_steps: 1000,
short_request_ratio: 0.5,
min_steps_to_check_path_find_termination: 2000,
start_to_goal_cost_multiplier_to_terminate_path_find: 2000,
overload_levels: [0, 100, 500],
overload_multipliers: [2, 3, 4],
negative_path_cache_delay_interval: 20,
},
max_failed_behavior_count: 3,
difficulty_settings: {
recipe_difficulty: 1,
technology_difficulty: 1,
technology_price_multiplier: 12,
research_queue_setting: "never",
},
};
export const modified_v2_map_gen_settings = {
autoplace_controls: {
"coal": { frequency: 1, size: 1, richness: 1 },
"copper-ore": { frequency: 0.5, size: 1, richness: 1 },
"crude-oil": { frequency: 0.5, size: 1, richness: 4 },
"enemy-base": { frequency: 2, size: 1.5, richness: 1 },
"iron-ore": { frequency: 1.5, size: 1, richness: 1 },
"nauvis_cliff": { frequency: 1, size: 1, richness: 1 },
"rocks": { frequency: 1, size: 1, richness: 1 },
"starting_area_moisture": { frequency: 1, size: 1, richness: 1 },
"stone": { frequency: 2, size: 1, richness: 1 },
"trees": { frequency: 1.3333333730697632, size: 0.3333333432674408, richness: 1 },
"uranium-ore": { frequency: 1, size: 1.3333333730697632, richness: 1 },
"water": { frequency: 0.5, size: 0.3333333432674408, richness: 1 },
},
autoplace_settings: {
entity: {
treat_missing_as_default: true,
settings: {
"rock-huge": { frequency: 10, size: 20, richness: 2.4000000953674316 },
},
},
tile: {
treat_missing_as_default: false,
settings: {
"grass-1": { frequency: 4, size: 1, richness: 1 },
"water": { frequency: 1, size: 1, richness: 1 },
},
},
},
default_enable_all_autoplace_controls: true,
seed: 3378377395,
width: 2000000,
height: 2000000,
area_to_generate_at_start: {
left_top: { x: -224, y: -224 },
right_bottom: { x: 224, y: 224 },
orientation: { x: 0, y: -32767 },
},
starting_area: 0.3333333432674408,
peaceful_mode: false,
starting_points: [
{ x: 0, y: 0 },
],
property_expression_names: {
"control:aux:bias": "-0.200000",
"control:aux:frequency": "2.000000",
"control:moisture:bias": "-0.200000",
"control:moisture:frequency": "0.333333",
"elevation": "elevation_lakes",
},
cliff_settings: {
name: "cliff",
control: "",
cliff_elevation_0: 10,
cliff_elevation_interval: 40,
richness: 1,
cliff_smoothing: 1,
},
no_enemies_mode: false,
territory_settings: null,
};
export const modified_v2_map_settings = {
pollution: {
enabled: true,
diffusion_ratio: 0.02,
min_to_diffuse: 15,
ageing: 1.5,
expected_max_per_chunk: 150,
min_to_show_per_chunk: 50,
min_pollution_to_damage_trees: 3785,
pollution_with_max_forest_damage: 150,
pollution_per_tree_damage: 50,
pollution_restored_per_tree_damage: 3714,
max_pollution_to_restore_trees: 20,
enemy_attack_pollution_consumption_modifier: 1,
},
steering: {
default: {
radius: 1.2, separation_factor: 1.2, separation_force: 0.005, force_unit_fuzzy_goto_behavior: false,
},
moving: {
radius: 3, separation_factor: 3, separation_force: 0.01, force_unit_fuzzy_goto_behavior: false,
},
},
enemy_evolution: {
enabled: true,
time_factor: 0.00002,
destroy_factor: 0.002,
pollution_factor: 0.000012,
},
enemy_expansion: {
enabled: true,
max_expansion_distance: 13,
friendly_base_influence_radius: 2,
enemy_building_influence_radius: 2,
building_coefficient: 0.1,
other_base_coefficient: 2,
neighbouring_chunk_coefficient: 0.5,
neighbouring_base_chunk_coefficient: 0.4,
max_colliding_tiles_coefficient: 0.9,
settler_group_min_size: 3,
settler_group_max_size: 35,
min_expansion_cooldown: 169200,
max_expansion_cooldown: 414000,
},
unit_group: {
min_group_gathering_time: 3600,
max_group_gathering_time: 36000,
max_wait_time_for_late_members: 7200,
max_group_radius: 30,
min_group_radius: 5,
max_member_speedup_when_behind: 1.4,
max_member_slowdown_when_ahead: 0.6,
max_group_slowdown_factor: 0.3,
max_group_member_fallback_factor: 3,
member_disown_distance: 10,
tick_tolerance_when_member_arrives: 60,
max_gathering_unit_groups: 30,
max_unit_group_size: 200,
},
path_finder: {
fwd2bwd_ratio: 5,
goal_pressure_ratio: 2,
use_path_cache: true,
max_steps_worked_per_tick: 1000,
max_work_done_per_tick: 8000,
short_cache_size: 5,
long_cache_size: 25,
short_cache_min_cacheable_distance: 10,
short_cache_min_algo_steps_to_cache: 50,
long_cache_min_cacheable_distance: 30,
cache_max_connect_to_cache_steps_multiplier: 100,
cache_accept_path_start_distance_ratio: 0.2,
cache_accept_path_end_distance_ratio: 0.15,
negative_cache_accept_path_start_distance_ratio: 0.3,
negative_cache_accept_path_end_distance_ratio: 0.3,
cache_path_start_distance_rating_multiplier: 10,
cache_path_end_distance_rating_multiplier: 20,
stale_enemy_with_same_destination_collision_penalty: 30,
ignore_moving_enemy_collision_distance: 5,
enemy_with_different_destination_collision_penalty: 30,
general_entity_collision_penalty: 10,
general_entity_subsequent_collision_penalty: 3,
extended_collision_penalty: 3,
max_clients_to_accept_any_new_request: 10,
max_clients_to_accept_short_new_request: 100,
direct_distance_to_consider_short_request: 100,
short_request_max_steps: 1000,
short_request_ratio: 0.5,
min_steps_to_check_path_find_termination: 2000,
start_to_goal_cost_multiplier_to_terminate_path_find: 2000,
overload_levels: [0, 100, 500],
overload_multipliers: [2, 3, 4],
negative_path_cache_delay_interval: 20,
},
max_failed_behavior_count: 3,
difficulty_settings: {
technology_price_multiplier: 12,
spoil_time_modifier: 1,
},
asteroids: {
spawning_rate: 1,
max_ray_portals_expanded_per_tick: 100,
},
};
export const modified_v2_1_map_gen_settings = {
"autoplace_controls": {
"coal": { "frequency": 1, "size": 1, "richness": 1 },
"copper-ore": { "frequency": 0.5, "size": 1, "richness": 1 },
"crude-oil": { "frequency": 0.5, "size": 1, "richness": 4 },
"enemy-base": { "frequency": 2, "size": 1.5, "richness": 1 },
"iron-ore": { "frequency": 1.5, "size": 1, "richness": 1 },
"nauvis_cliff": { "frequency": 1, "size": 1, "richness": 1 },
"rocks": { "frequency": 1, "size": 1, "richness": 1 },
"starting_area_moisture": { "frequency": 1, "size": 1, "richness": 1 },
"stone": { "frequency": 2, "size": 1, "richness": 1 },
"trees": { "frequency": 1.3333333730697632, "size": 0.3333333432674408, "richness": 1 },
"uranium-ore": { "frequency": 1, "size": 1.3333333730697632, "richness": 1 },
"water": { "frequency": 0.5, "size": 0.3333333432674408, "richness": 1 },
},
"autoplace_settings": {},
"default_enable_all_autoplace_controls": true,
"seed": 3378377395,
"width": 2000000,
"height": 2000000,
"area_to_generate_at_start": {
"left_top": { "x": -224, "y": -224 },
"right_bottom": { "x": 224, "y": 224 },
"orientation": { "x": 0, "y": -32767 },
},
"starting_area": 0.3333333432674408,
"peaceful_mode": false,
"no_enemies_mode": false,
"starting_points": [
{ "x": 0, "y": 0 },
],
"property_expression_names": {
"control:aux:bias": "-0.200000",
"control:aux:frequency": "2.000000",
"control:moisture:bias": "-0.200000",
"control:moisture:frequency": "0.333333",
"elevation": "elevation_lakes",
},
"cliff_settings": {
"name": "cliff",
"control": "",
"cliff_elevation_0": 10,
"cliff_elevation_interval": 40,
"richness": 1,
"cliff_smoothing": 1,
},
"territory_settings": null,
};
export const modified_v2_1_map_settings = {
"pollution": {
"enabled": true,
"diffusion_ratio": 0.02,
"min_to_diffuse": 15,
"ageing": 1.5,
"expected_max_per_chunk": 150,
"min_to_show_per_chunk": 50,
"min_pollution_to_damage_trees": 3785,
"pollution_with_max_forest_damage": 150,
"pollution_per_tree_damage": 50,
"pollution_restored_per_tree_damage": 3714,
"max_pollution_to_restore_trees": 20,
"enemy_attack_pollution_consumption_modifier": 1,
},
"enemy_evolution": {
"enabled": true,
"time_factor": 0.00002,
"destroy_factor": 0.002,
"pollution_factor": 0.000012,
},
"enemy_expansion": {
"enabled": true,
"max_expansion_distance": 13,
"min_expansion_distance": 3,
"friendly_base_influence_radius": 6,
"enemy_building_influence_radius": 3,
"building_coefficient": 0.5,
"other_base_coefficient": 3,
"neighbouring_chunk_coefficient": 0.5,
"neighbouring_base_chunk_coefficient": 0.5,
"max_colliding_tiles_coefficient": 0.8,
"settler_group_min_size": 5,
"settler_group_max_size": 20,
"evolution_group_size_factor": 4,
"min_expansion_cooldown": 169200,
"max_expansion_cooldown": 414000,
},
"unit_group": {
"min_group_gathering_time": 3600,
"max_group_gathering_time": 36000,
"max_wait_time_for_late_members": 7200,
"max_group_radius": 30,
"min_group_radius": 5,
"max_member_speedup_when_behind": 1.4,
"max_member_slowdown_when_ahead": 0.6,
"max_group_slowdown_factor": 0.3,
"max_group_member_fallback_factor": 3,
"member_disown_distance": 10,
"tick_tolerance_when_member_arrives": 60,
"max_gathering_unit_groups": 30,
"max_unit_group_size": 200,
},
"path_finder": {
"fwd2bwd_ratio": 5,
"goal_pressure_ratio": 2,
"use_path_cache": true,
"max_steps_worked_per_tick": 1000,
"max_work_done_per_tick": 8000,
"short_cache_size": 5,
"long_cache_size": 25,
"short_cache_min_cacheable_distance": 10,
"short_cache_min_algo_steps_to_cache": 50,
"long_cache_min_cacheable_distance": 30,
"cache_max_connect_to_cache_steps_multiplier": 100,
"cache_accept_path_start_distance_ratio": 0.2,
"cache_accept_path_end_distance_ratio": 0.15,
"negative_cache_accept_path_start_distance_ratio": 0.3,
"negative_cache_accept_path_end_distance_ratio": 0.3,
"cache_path_start_distance_rating_multiplier": 10,
"cache_path_end_distance_rating_multiplier": 20,
"stale_enemy_with_same_destination_collision_penalty": 30,
"ignore_moving_enemy_collision_distance": 5,
"enemy_with_different_destination_collision_penalty": 30,
"general_entity_collision_penalty": 10,
"general_entity_subsequent_collision_penalty": 3,
"extended_collision_penalty": 3,
"max_clients_to_accept_any_new_request": 10,
"max_clients_to_accept_short_new_request": 100,
"direct_distance_to_consider_short_request": 100,
"short_request_max_steps": 1000,
"short_request_ratio": 0.5,
"min_steps_to_check_path_find_termination": 2000,
"start_to_goal_cost_multiplier_to_terminate_path_find": 2000,
"overload_levels": [0, 100, 500],
"overload_multipliers": [2, 3, 4],
"negative_path_cache_delay_interval": 20,
},
"max_failed_behavior_count": 3,
"difficulty_settings": {
"technology_price_multiplier": 12,
"spoil_time_modifier": 1,
},
"asteroids": {
"spawning_rate": 1,
"max_ray_portals_expanded_per_tick": 100,
},
};
export const modified_v2_1_13_map_settings = {
...modified_v2_1_map_settings,
"enemy_expansion": {
...modified_v2_1_map_settings.enemy_expansion,
"build_base_unit_dispatch_cooldown": 1234,
},
};
export const modified_v2_1_18_map_settings = {
...modified_v2_1_13_map_settings,
"pollution": Object.fromEntries(
Object.entries(modified_v2_1_13_map_settings.pollution)
.filter(([key]) => key !== "max_pollution_to_restore_trees")
),
};
export const modified_space_age_map_gen_settings = {
autoplace_controls: {
"aquilo_crude_oil": { frequency: 1, size: 1, richness: 1 },
"calcite": { frequency: 1, size: 1, richness: 1 },
"coal": { frequency: 1, size: 1, richness: 1 },
"copper-ore": { frequency: 0.5, size: 1, richness: 1 },
"crude-oil": { frequency: 0.5, size: 1, richness: 4 },
"enemy-base": { frequency: 2, size: 1.5, richness: 1 },
"fluorine_vent": { frequency: 1, size: 1, richness: 1 },
"fulgora_cliff": { frequency: 1, size: 1, richness: 1 },
"fulgora_islands": { frequency: 1, size: 1, richness: 1 },
"gleba_cliff": { frequency: 1, size: 1, richness: 1 },
"gleba_enemy_base": { frequency: 1, size: 1, richness: 1 },
"gleba_plants": { frequency: 1, size: 1, richness: 1 },
"gleba_stone": { frequency: 1, size: 1, richness: 1 },
"gleba_water": { frequency: 1, size: 1, richness: 1 },
"iron-ore": { frequency: 1.5, size: 1, richness: 1 },
"lithium_brine": { frequency: 1, size: 1, richness: 1 },
"nauvis_cliff": { frequency: 1, size: 1, richness: 1 },
"rocks": { frequency: 1, size: 1, richness: 1 },
"scrap": { frequency: 1, size: 1, richness: 1 },
"starting_area_moisture": { frequency: 1, size: 1, richness: 1 },
"stone": { frequency: 2, size: 1, richness: 1 },
"sulfuric_acid_geyser": { frequency: 1, size: 1, richness: 1 },
"trees": { frequency: 1.3333333730697632, size: 0.3333333432674408, richness: 1 },
"tungsten_ore": { frequency: 1, size: 1, richness: 1 },
"uranium-ore": { frequency: 1, size: 1.3333333730697632, richness: 1 },
"vulcanus_coal": { frequency: 1, size: 1, richness: 1 },
"vulcanus_volcanism": { frequency: 1, size: 1, richness: 1 },
"water": { frequency: 0.5, size: 0.3333333432674408, richness: 1 },
},
autoplace_settings: {
entity: {
treat_missing_as_default: true,
settings: {
"rock-huge": { frequency: 10, size: 20, richness: 2.4000000953674316 },
},
},
tile: {
treat_missing_as_default: false,
settings: {
"grass-1": { frequency: 4, size: 1, richness: 1 },
"water": { frequency: 1, size: 1, richness: 1 },
},
},
},
default_enable_all_autoplace_controls: true,
seed: 3378377395,
width: 2000000,
height: 2000000,
area_to_generate_at_start: {
left_top: { x: -224, y: -224 },
right_bottom: { x: 224, y: 224 },
orientation: { x: 0, y: -32767 },
},
starting_area: 0.3333333432674408,
peaceful_mode: false,
starting_points: [
{ x: 0, y: 0 },
],
property_expression_names: {
"control:aux:bias": "-0.200000",
"control:aux:frequency": "2.000000",
"control:moisture:bias": "-0.200000",
"control:moisture:frequency": "0.333333",
"elevation": "elevation_lakes",
},
cliff_settings: {
name: "cliff",
control: "",
cliff_elevation_0: 10,
cliff_elevation_interval: 40,
richness: 1,
cliff_smoothing: 1,
},
no_enemies_mode: false,
territory_settings: null,
};