From 8d453af68d3b9b76608e29ec28ad013a64a3485e Mon Sep 17 00:00:00 2001 From: Procyonae <45432782+Procyonae@users.noreply.github.com> Date: Sat, 30 Mar 2024 14:51:57 +0000 Subject: [PATCH 1/5] Unhardcode om connection references --- src/overmap.cpp | 27 +++++++++++++++++---------- src/regional_settings.cpp | 33 +++++++++++++++++++++++++++++++++ src/regional_settings.h | 13 +++++++++++++ 3 files changed, 63 insertions(+), 10 deletions(-) diff --git a/src/overmap.cpp b/src/overmap.cpp index c395861a91da0..568eb86c61b7c 100644 --- a/src/overmap.cpp +++ b/src/overmap.cpp @@ -132,12 +132,6 @@ static const oter_type_str_id oter_type_slimepit_down( "slimepit_down" ); static const oter_type_str_id oter_type_solid_earth( "solid_earth" ); static const oter_type_str_id oter_type_sub_station( "sub_station" ); -static const overmap_connection_id overmap_connection_forest_trail( "forest_trail" ); -static const overmap_connection_id overmap_connection_local_railroad( "local_railroad" ); -static const overmap_connection_id overmap_connection_local_road( "local_road" ); -static const overmap_connection_id overmap_connection_sewer_tunnel( "sewer_tunnel" ); -static const overmap_connection_id overmap_connection_subway_tunnel( "subway_tunnel" ); - static const overmap_location_id overmap_location_land( "land" ); static const overmap_location_id overmap_location_swamp( "swamp" ); @@ -3616,6 +3610,8 @@ bool overmap::generate_sub( const int z ) for( city &i : goo_points ) { requires_sub |= build_slimepit( tripoint_om_omt( i.pos, z ), i.size ); } + const overmap_connection_id &overmap_connection_sewer_tunnel = + settings->overmap_connection.sewer_connection; connect_closest_points( sewer_points, z, *overmap_connection_sewer_tunnel ); // A third of overmaps have labs with a 1-in-2 chance of being subway connected. @@ -3696,6 +3692,8 @@ bool overmap::generate_sub( const int z ) subway_points.insert( subway_points.end(), subway_lab_train_points.begin(), subway_lab_train_points.end() ); + const overmap_connection_id &overmap_connection_subway_tunnel = + settings->overmap_connection.subway_connection; connect_closest_points( subway_points, z, *overmap_connection_subway_tunnel ); for( auto &i : subway_points ) { @@ -3705,7 +3703,8 @@ bool overmap::generate_sub( const int z ) } // The first lab point is adjacent to a lab, set it a depot (as long as track was actually laid). - const auto create_train_depots = [this, z]( const oter_id & train_type, + const auto create_train_depots = [this, z, + overmap_connection_subway_tunnel]( const oter_id & train_type, const std::vector &train_points ) { bool is_first_in_pair = true; std::vector extra_route; @@ -4482,6 +4481,8 @@ void overmap::place_forest_trails() } // Finally, connect all the points and make a forest trail out of them. + const overmap_connection_id &overmap_connection_forest_trail = + settings->overmap_connection.trail_connection; connect_closest_points( chosen_points, 0, *overmap_connection_forest_trail ); } } @@ -5096,7 +5097,9 @@ void overmap::place_roads( const overmap *north, const overmap *east, const over if( op_city_size <= 0 ) { return; } - std::vector &roads_out = connections_out[overmap_connection_local_road]; + const overmap_connection_id &overmap_connection_inter_city_road = + settings->overmap_connection.inter_city_road_connection; + std::vector &roads_out = connections_out[overmap_connection_inter_city_road]; // At least 3 exit points, to guarantee road continuity across overmaps if( roads_out.size() < 3 ) { @@ -5158,7 +5161,7 @@ void overmap::place_roads( const overmap *north, const overmap *east, const over } // And finally connect them via roads. - connect_closest_points( road_points, 0, *overmap_connection_local_road ); + connect_closest_points( road_points, 0, *overmap_connection_inter_city_road ); } void overmap::place_railroads( const overmap *north, const overmap *east, const overmap *south, @@ -5169,6 +5172,8 @@ void overmap::place_railroads( const overmap *north, const overmap *east, const if( op_city_size <= 0 ) { return; } + const overmap_connection_id &overmap_connection_local_railroad = + settings->overmap_connection.rail_connection; std::vector &railroads_out = connections_out[overmap_connection_local_railroad]; // At least 3 exit points, to guarantee railroad continuity across overmaps @@ -5476,7 +5481,9 @@ void overmap::place_cities() omts_per_city ); } - const overmap_connection &local_road( *overmap_connection_local_road ); + const overmap_connection_id &overmap_connection_intra_city_road = + settings->overmap_connection.intra_city_road_connection; + const overmap_connection &local_road( *overmap_connection_intra_city_road ); // if there is only a single free tile, the probability of NOT finding it after MAX_PLACEMENT_ATTEMPTS attempts // is (1 - 1/(OMAPX * OMAPY))^MAX_PLACEMENT_ATTEMPTS ≈ 36% for the OMAPX=OMAPY=180 and MAX_PLACEMENT_ATTEMPTS=OMAPX * OMAPY diff --git a/src/regional_settings.cpp b/src/regional_settings.cpp index 8483ea0deae1d..1716b79e69731 100644 --- a/src/regional_settings.cpp +++ b/src/regional_settings.cpp @@ -322,6 +322,33 @@ static void load_overmap_ravine_settings( } } +static void load_overmap_connection_settings( + const JsonObject &jo, overmap_connection_settings &overmap_connection_settings, const bool strict, + const bool overlay ) +{ + if( !jo.has_object( "overmap_connection_settings" ) ) { + if( strict ) { + jo.throw_error( "\"overmap_connection_settings\": { … } required for default" ); + } + } else { + JsonObject overmap_connection_settings_jo = jo.get_object( "overmap_connection_settings" ); + read_and_set_or_throw( overmap_connection_settings_jo, "trail_connection", + overmap_connection_settings.trail_connection, !overlay ); + read_and_set_or_throw( overmap_connection_settings_jo, "sewer_connection", + overmap_connection_settings.sewer_connection, !overlay ); + read_and_set_or_throw( overmap_connection_settings_jo, "subway_connection", + overmap_connection_settings.subway_connection, !overlay ); + read_and_set_or_throw( overmap_connection_settings_jo, "rail_connection", + overmap_connection_settings.rail_connection, !overlay ); + read_and_set_or_throw( overmap_connection_settings_jo, + "intra_city_road_connection", + overmap_connection_settings.intra_city_road_connection, !overlay ); + read_and_set_or_throw( overmap_connection_settings_jo, + "inter_city_road_connection", + overmap_connection_settings.inter_city_road_connection, !overlay ); + } +} + static void load_overmap_lake_settings( const JsonObject &jo, overmap_lake_settings &overmap_lake_settings, const bool strict, const bool overlay ) @@ -568,6 +595,8 @@ void load_region_settings( const JsonObject &jo ) load_overmap_ravine_settings( jo, new_region.overmap_ravine, strict, false ); + load_overmap_connection_settings( jo, new_region.overmap_connection, false, false ); + load_region_terrain_and_furniture_settings( jo, new_region.region_terrain_and_furniture, strict, false ); @@ -713,8 +742,12 @@ void apply_region_overlay( const JsonObject &jo, regional_settings ®ion ) load_overmap_lake_settings( jo, region.overmap_lake, false, true ); + load_overmap_ocean_settings( jo, region.overmap_ocean, false, true ); + load_overmap_ravine_settings( jo, region.overmap_ravine, false, true ); + load_overmap_connection_settings( jo, region.overmap_connection, false, true ); + load_region_terrain_and_furniture_settings( jo, region.region_terrain_and_furniture, false, true ); } diff --git a/src/regional_settings.h b/src/regional_settings.h index 2551f4a83981d..6d5d25771706c 100644 --- a/src/regional_settings.h +++ b/src/regional_settings.h @@ -233,6 +233,18 @@ struct overmap_ravine_settings { overmap_ravine_settings() = default; }; +struct overmap_connection_settings { + overmap_connection_id trail_connection = overmap_connection_id( "forest_trail" ); + overmap_connection_id sewer_connection = overmap_connection_id( "sewer_tunnel" ); + overmap_connection_id subway_connection = overmap_connection_id( "subway_tunnel" ); + overmap_connection_id rail_connection = overmap_connection_id( "local_railroad" ); + overmap_connection_id intra_city_road_connection = overmap_connection_id( "local_road" ); + overmap_connection_id inter_city_road_connection = overmap_connection_id( "local_road" ); + + void finalize(); + overmap_connection_settings() = default; +}; + struct map_extras { unsigned int chance; weighted_int_list values; @@ -275,6 +287,7 @@ struct regional_settings { overmap_lake_settings overmap_lake; overmap_ocean_settings overmap_ocean; overmap_ravine_settings overmap_ravine; + overmap_connection_settings overmap_connection; region_terrain_and_furniture_settings region_terrain_and_furniture; std::unordered_map region_extras; From 4c5308e906118bca8e2b0edd94e21de21989be85 Mon Sep 17 00:00:00 2001 From: Procyonae <45432782+Procyonae@users.noreply.github.com> Date: Sat, 30 Mar 2024 15:53:54 +0000 Subject: [PATCH 2/5] Documentation --- doc/REGION_SETTINGS.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/doc/REGION_SETTINGS.md b/doc/REGION_SETTINGS.md index 618b38e098cd2..13b096680c238 100644 --- a/doc/REGION_SETTINGS.md +++ b/doc/REGION_SETTINGS.md @@ -389,6 +389,32 @@ trailheads, and some general tuning of the actual trail width/position in mapgen } ``` +## Forest Trail Settings + +The **overmap_connection_settings** section defines the `overmap_connection_id`s used in hardcoded placement. + +### Fields + +| Identifier | Description | Default | +| ---------------------------- | --------------------------------------------------------------------------------------------------------- | -------------- | +| `intra_city_road_connection` | overmap_connection id used within cities. Should include locations for city_center and road_nesw_manhole. | local_road | +| `inter_city_road_connection` | overmap_connection id used between cities. Should include locations for the intra city terrains. | local_road | +| `trail_connection` | overmap_connection id used for forest trails. | forest_trail | +| `sewer_connection` | overmap_connection id used for sewer connections. | sewer_tunnel | +| `subway_connection` | overmap_connection id used for for both z-2 and z-4 subway connections. | subway_tunnel | +| `rail_connection` | overmap_connection id used for rail connections. ( Unused in vanilla as of 0.H ) | local_railroad | + +### Example + +```json +{ + "overmap_connection_settings": { + "intra_city_road_connection": "cobbled_road", + "inter_city_road_connection": "rural_road" + } +} +``` + ## City The **city** section defines the possible overmap terrains and specials that may be used as From 4365e4ff5aee1c123d3445d86ad0e29d879f50ed Mon Sep 17 00:00:00 2001 From: Procyonae <45432782+Procyonae@users.noreply.github.com> Date: Sat, 30 Mar 2024 16:15:22 +0000 Subject: [PATCH 3/5] Update REGION_SETTINGS.md --- doc/REGION_SETTINGS.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/doc/REGION_SETTINGS.md b/doc/REGION_SETTINGS.md index 13b096680c238..cfd71a15608d8 100644 --- a/doc/REGION_SETTINGS.md +++ b/doc/REGION_SETTINGS.md @@ -395,14 +395,14 @@ The **overmap_connection_settings** section defines the `overmap_connection_id`s ### Fields -| Identifier | Description | Default | -| ---------------------------- | --------------------------------------------------------------------------------------------------------- | -------------- | -| `intra_city_road_connection` | overmap_connection id used within cities. Should include locations for city_center and road_nesw_manhole. | local_road | -| `inter_city_road_connection` | overmap_connection id used between cities. Should include locations for the intra city terrains. | local_road | -| `trail_connection` | overmap_connection id used for forest trails. | forest_trail | -| `sewer_connection` | overmap_connection id used for sewer connections. | sewer_tunnel | -| `subway_connection` | overmap_connection id used for for both z-2 and z-4 subway connections. | subway_tunnel | -| `rail_connection` | overmap_connection id used for rail connections. ( Unused in vanilla as of 0.H ) | local_railroad | +| Identifier | Description | Default | +| ---------------------------- | --------------------------------------------------------------------------------------------------------------- | -------------- | +| `intra_city_road_connection` | overmap_connection id used within cities. Should include locations for road, city_center and road_nesw_manhole. | local_road | +| `inter_city_road_connection` | overmap_connection id used between cities. Should include locations for the intra city terrains. | local_road | +| `trail_connection` | overmap_connection id used for forest trails. | forest_trail | +| `sewer_connection` | overmap_connection id used for sewer connections. | sewer_tunnel | +| `subway_connection` | overmap_connection id used for for both z-2 and z-4 subway connections. | subway_tunnel | +| `rail_connection` | overmap_connection id used for rail connections. ( Unused in vanilla as of 0.H ) | local_railroad | ### Example From 3816627dec56ada287a9b93858d2fe248ac91ac9 Mon Sep 17 00:00:00 2001 From: Procyonae <45432782+Procyonae@users.noreply.github.com> Date: Sat, 30 Mar 2024 16:38:04 +0000 Subject: [PATCH 4/5] Removed the defaults --- data/json/regional_map_settings.json | 8 ++++++++ doc/REGION_SETTINGS.md | 16 ++++++++-------- src/regional_settings.cpp | 2 +- src/regional_settings.h | 12 ++++++------ 4 files changed, 23 insertions(+), 15 deletions(-) diff --git a/data/json/regional_map_settings.json b/data/json/regional_map_settings.json index 72a854c661ab7..232f25714849a 100644 --- a/data/json/regional_map_settings.json +++ b/data/json/regional_map_settings.json @@ -310,6 +310,14 @@ "river_floodplain_buffer_distance_min": 3, "river_floodplain_buffer_distance_max": 15 }, + "overmap_connection_settings": { + "intra_city_road_connection": "local_road", + "inter_city_road_connection": "local_road", + "trail_connection": "forest_trail", + "sewer_connection": "sewer_tunnel", + "subway_connection": "subway_tunnel", + "rail_connection": "local_railroad" + }, "forest_mapgen_settings": { "forest": { "terrains": [ "forest", "special_forest" ], diff --git a/doc/REGION_SETTINGS.md b/doc/REGION_SETTINGS.md index cfd71a15608d8..71ec060759c4a 100644 --- a/doc/REGION_SETTINGS.md +++ b/doc/REGION_SETTINGS.md @@ -395,14 +395,14 @@ The **overmap_connection_settings** section defines the `overmap_connection_id`s ### Fields -| Identifier | Description | Default | -| ---------------------------- | --------------------------------------------------------------------------------------------------------------- | -------------- | -| `intra_city_road_connection` | overmap_connection id used within cities. Should include locations for road, city_center and road_nesw_manhole. | local_road | -| `inter_city_road_connection` | overmap_connection id used between cities. Should include locations for the intra city terrains. | local_road | -| `trail_connection` | overmap_connection id used for forest trails. | forest_trail | -| `sewer_connection` | overmap_connection id used for sewer connections. | sewer_tunnel | -| `subway_connection` | overmap_connection id used for for both z-2 and z-4 subway connections. | subway_tunnel | -| `rail_connection` | overmap_connection id used for rail connections. ( Unused in vanilla as of 0.H ) | local_railroad | +| Identifier | Description | +| ---------------------------- | --------------------------------------------------------------------------------------------------------------- | +| `intra_city_road_connection` | overmap_connection id used within cities. Should include locations for road, city_center and road_nesw_manhole. | +| `inter_city_road_connection` | overmap_connection id used between cities. Should include locations for the intra city terrains. | +| `trail_connection` | overmap_connection id used for forest trails. | +| `sewer_connection` | overmap_connection id used for sewer connections. | +| `subway_connection` | overmap_connection id used for for both z-2 and z-4 subway connections. | +| `rail_connection` | overmap_connection id used for rail connections. ( Unused in vanilla as of 0.H ) | ### Example diff --git a/src/regional_settings.cpp b/src/regional_settings.cpp index 1716b79e69731..3dbbe1dcacead 100644 --- a/src/regional_settings.cpp +++ b/src/regional_settings.cpp @@ -595,7 +595,7 @@ void load_region_settings( const JsonObject &jo ) load_overmap_ravine_settings( jo, new_region.overmap_ravine, strict, false ); - load_overmap_connection_settings( jo, new_region.overmap_connection, false, false ); + load_overmap_connection_settings( jo, new_region.overmap_connection, strict, false ); load_region_terrain_and_furniture_settings( jo, new_region.region_terrain_and_furniture, strict, false ); diff --git a/src/regional_settings.h b/src/regional_settings.h index 6d5d25771706c..f5afed699299e 100644 --- a/src/regional_settings.h +++ b/src/regional_settings.h @@ -234,12 +234,12 @@ struct overmap_ravine_settings { }; struct overmap_connection_settings { - overmap_connection_id trail_connection = overmap_connection_id( "forest_trail" ); - overmap_connection_id sewer_connection = overmap_connection_id( "sewer_tunnel" ); - overmap_connection_id subway_connection = overmap_connection_id( "subway_tunnel" ); - overmap_connection_id rail_connection = overmap_connection_id( "local_railroad" ); - overmap_connection_id intra_city_road_connection = overmap_connection_id( "local_road" ); - overmap_connection_id inter_city_road_connection = overmap_connection_id( "local_road" ); + overmap_connection_id trail_connection; + overmap_connection_id sewer_connection; + overmap_connection_id subway_connection; + overmap_connection_id rail_connection; + overmap_connection_id intra_city_road_connection; + overmap_connection_id inter_city_road_connection; void finalize(); overmap_connection_settings() = default; From a35da67ffd23dd12bbfdf3384ac2de43a8dac8f8 Mon Sep 17 00:00:00 2001 From: Procyonae <45432782+Procyonae@users.noreply.github.com> Date: Sat, 30 Mar 2024 17:55:06 +0000 Subject: [PATCH 5/5] Mods --- data/mods/Backrooms/regional_map_settings.json | 8 ++++++++ data/mods/No_Hope/regional_map_settings.json | 8 ++++++++ data/mods/TEST_DATA/regions.json | 8 ++++++++ .../TropiCataclysm/tropical_regional_map_settings.json | 8 ++++++++ data/mods/aftershock_exoplanet/region_settings.json | 8 ++++++++ .../classic_zombies/alberta_regional_map_settings.json | 8 ++++++++ data/mods/desert_region/desert_regional_map_settings.json | 8 ++++++++ data/mods/rural_biome/rural_regional_map_settings.json | 8 ++++++++ 8 files changed, 64 insertions(+) diff --git a/data/mods/Backrooms/regional_map_settings.json b/data/mods/Backrooms/regional_map_settings.json index dbcde27c13167..77e3fa7e1e19a 100644 --- a/data/mods/Backrooms/regional_map_settings.json +++ b/data/mods/Backrooms/regional_map_settings.json @@ -65,6 +65,14 @@ "river_floodplain_buffer_distance_min": 0, "river_floodplain_buffer_distance_max": 0 }, + "overmap_connection_settings": { + "intra_city_road_connection": "local_road", + "inter_city_road_connection": "local_road", + "trail_connection": "forest_trail", + "sewer_connection": "sewer_tunnel", + "subway_connection": "subway_tunnel", + "rail_connection": "local_railroad" + }, "forest_mapgen_settings": { "forest": { "sparseness_adjacency_factor": 3, diff --git a/data/mods/No_Hope/regional_map_settings.json b/data/mods/No_Hope/regional_map_settings.json index b3d7746df6f1f..7f10f07d8860a 100644 --- a/data/mods/No_Hope/regional_map_settings.json +++ b/data/mods/No_Hope/regional_map_settings.json @@ -283,6 +283,14 @@ "river_floodplain_buffer_distance_min": 3, "river_floodplain_buffer_distance_max": 15 }, + "overmap_connection_settings": { + "intra_city_road_connection": "local_road", + "inter_city_road_connection": "local_road", + "trail_connection": "forest_trail", + "sewer_connection": "sewer_tunnel", + "subway_connection": "subway_tunnel", + "rail_connection": "local_railroad" + }, "forest_mapgen_settings": { "forest": { "terrains": [ "forest", "special_forest" ], diff --git a/data/mods/TEST_DATA/regions.json b/data/mods/TEST_DATA/regions.json index 17e86d83865a3..0ad90c255b7d4 100644 --- a/data/mods/TEST_DATA/regions.json +++ b/data/mods/TEST_DATA/regions.json @@ -49,6 +49,14 @@ "river_floodplain_buffer_distance_min": 1, "river_floodplain_buffer_distance_max": 6 }, + "overmap_connection_settings": { + "intra_city_road_connection": "local_road", + "inter_city_road_connection": "local_road", + "trail_connection": "forest_trail", + "sewer_connection": "sewer_tunnel", + "subway_connection": "subway_tunnel", + "rail_connection": "local_railroad" + }, "forest_mapgen_settings": { "forest": { "sparseness_adjacency_factor": 3, diff --git a/data/mods/TropiCataclysm/tropical_regional_map_settings.json b/data/mods/TropiCataclysm/tropical_regional_map_settings.json index df73774882e65..ea4740528731d 100644 --- a/data/mods/TropiCataclysm/tropical_regional_map_settings.json +++ b/data/mods/TropiCataclysm/tropical_regional_map_settings.json @@ -336,6 +336,14 @@ "river_floodplain_buffer_distance_min": 3, "river_floodplain_buffer_distance_max": 15 }, + "overmap_connection_settings": { + "intra_city_road_connection": "local_road", + "inter_city_road_connection": "local_road", + "trail_connection": "forest_trail", + "sewer_connection": "sewer_tunnel", + "subway_connection": "subway_tunnel", + "rail_connection": "local_railroad" + }, "forest_mapgen_settings": { "forest": { "terrains": [ "forest", "special_forest" ], diff --git a/data/mods/aftershock_exoplanet/region_settings.json b/data/mods/aftershock_exoplanet/region_settings.json index ca66ddff02f4a..d1e74d1712655 100644 --- a/data/mods/aftershock_exoplanet/region_settings.json +++ b/data/mods/aftershock_exoplanet/region_settings.json @@ -110,6 +110,14 @@ "river_floodplain_buffer_distance_min": 3, "river_floodplain_buffer_distance_max": 15 }, + "overmap_connection_settings": { + "intra_city_road_connection": "local_road", + "inter_city_road_connection": "local_road", + "trail_connection": "forest_trail", + "sewer_connection": "sewer_tunnel", + "subway_connection": "subway_tunnel", + "rail_connection": "local_railroad" + }, "forest_mapgen_settings": { "forest": { "sparseness_adjacency_factor": 9, diff --git a/data/mods/classic_zombies/alberta_regional_map_settings.json b/data/mods/classic_zombies/alberta_regional_map_settings.json index ff045c8b25a96..1fc6ad7171e28 100644 --- a/data/mods/classic_zombies/alberta_regional_map_settings.json +++ b/data/mods/classic_zombies/alberta_regional_map_settings.json @@ -269,6 +269,14 @@ "river_floodplain_buffer_distance_min": 3, "river_floodplain_buffer_distance_max": 15 }, + "overmap_connection_settings": { + "intra_city_road_connection": "local_road", + "inter_city_road_connection": "local_road", + "trail_connection": "forest_trail", + "sewer_connection": "sewer_tunnel", + "subway_connection": "subway_tunnel", + "rail_connection": "local_railroad" + }, "forest_mapgen_settings": { "forest": { "terrains": [ "forest", "special_forest" ], diff --git a/data/mods/desert_region/desert_regional_map_settings.json b/data/mods/desert_region/desert_regional_map_settings.json index 2ab636a7a34f6..995d81d58bbb9 100644 --- a/data/mods/desert_region/desert_regional_map_settings.json +++ b/data/mods/desert_region/desert_regional_map_settings.json @@ -89,6 +89,14 @@ "river_floodplain_buffer_distance_min": 3, "river_floodplain_buffer_distance_max": 15 }, + "overmap_connection_settings": { + "intra_city_road_connection": "local_road", + "inter_city_road_connection": "local_road", + "trail_connection": "forest_trail", + "sewer_connection": "sewer_tunnel", + "subway_connection": "subway_tunnel", + "rail_connection": "local_railroad" + }, "forest_mapgen_settings": { "forest": { "terrains": [ "forest" ], diff --git a/data/mods/rural_biome/rural_regional_map_settings.json b/data/mods/rural_biome/rural_regional_map_settings.json index 8eb334f2d2521..7dd01a14a5258 100644 --- a/data/mods/rural_biome/rural_regional_map_settings.json +++ b/data/mods/rural_biome/rural_regional_map_settings.json @@ -206,6 +206,14 @@ "river_floodplain_buffer_distance_min": 3, "river_floodplain_buffer_distance_max": 15 }, + "overmap_connection_settings": { + "intra_city_road_connection": "local_road", + "inter_city_road_connection": "local_road", + "trail_connection": "forest_trail", + "sewer_connection": "sewer_tunnel", + "subway_connection": "subway_tunnel", + "rail_connection": "local_railroad" + }, "forest_mapgen_settings": { "forest": { "terrains": [ "forest" ],