diff --git a/data/json/mapgen/city_blocks/city_block_2.json b/data/json/mapgen/city_blocks/city_block_2.json index fdfb627b61eb6..d00925cef0088 100644 --- a/data/json/mapgen/city_blocks/city_block_2.json +++ b/data/json/mapgen/city_blocks/city_block_2.json @@ -23,16 +23,22 @@ ".| ||*|| |~~| P| |3 |t j|3 |t j|~|V| | |*|*|||", ".| | |~~| y| | ||*|| ||*||~|~| | | |V.", ".| |||||||||x||~~|||||||||x||||||||||x|| | |~~~| | |s.", - ".| |Vsppssssss#~~#sppssssssV#Vspppsssss| | |~~~| | | |s.", + ".| |Vsppssssss#~~#^ppssssssV#Vspppsssss| | |~~~| | | |s.", ".||||||||x||psssssssss#~~#ssssssssss#ssssssssss| | |~~~|||||||||x||||||||||x||s.", - ".#ssssppsss#ssssssssss#~~#ssssssssss#ssssssssss||||||||x|||||||||x||~~~#ssppssssssssssppsssss#s.", - ".#sssssssss#ssssssssss#~~#ssssssssss#ssssssssss#sppssssssVssssppssss~~~#sssssssssssssssssssss#s.", + ".#^sssppsss#ssssssssss#~~#ssssssssss#ssssssssss||||||||x|||||||||x||~~~#^sppssssssssssppsssss#s.", + ".#sssssssss#ssssssssss#~~#ssssssssss#ssssssssss#^ppssssssVssssppssss~~~#sssssssssssssssssssss#s.", ".###u##########u#######~~##u###############u####ssssssssssssssssssss~~~######u##########u#####s.", "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~", "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~", "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" ], "palettes": [ "city_block_foundation_palette" ], + "place_vehicles": [ + { "vehicle": "bikeshop", "x": 23, "y": [ 5, 18 ], "rotation": 270, "chance": 30 }, + { "vehicle": "bikeshop", "x": 24, "y": [ 5, 18 ], "rotation": 270, "chance": 30 }, + { "vehicle": "bikeshop", "x": 68, "y": [ 5, 18 ], "rotation": 270, "chance": 35 }, + { "vehicle": "back_alley", "x": [ 5, 19 ], "y": 22, "rotation": 180, "chance": 25 } + ], "terrain": { "G": "t_grass", "X": "t_grass" }, "nested": { "1": { @@ -84,11 +90,11 @@ "-|1 * R| % |--|Q K% | %K Q|LD % | %y AL|-;;|QQQ% *8 |1 * QQQ|", "-| %%*%| % @--|Q K% | %K Q| %%%%%|%%%%% |-;S|%%%% % | %%*%|||", "-@ %j t| % |--|KinK% | %KinK|Q *7 |6 * Y|-;;|jYt% % | %j t|S-", - "-| % ||@|@|||@|||--||@@||||@|||||@|||||@||Q K% | %Q K|--;@ * % | % y@;-", - "-| %TTy|S;;;;----------------;;S;S;;-------@Y K% | %Q K@--;|TTy% % | %YTT|;-", - "-||@|@|||@||;;--------------------;;;;;--------|lniK% | %linK|--;|||||||||@|||||@|||||||;-", - "--------;;;;;;---------------------------------||@|||||@|||@@||||@||----------------------------", - "----------------------------------------------------;;;;;S;;;-----------------------------------", + "-| % ||@|@|||@|||--|||@||||@|||||@|||||@||Q K% | %Q K|--;@ * % | % y@;-", + "-| %TTy|S;;;;----------^-----;;SVS;;-------@Y K% | %Q K@--;|TTy% % | %YTT|;-", + "-||||@|||@||V;--------------------;;;;;--------|lniK% | %linK|--V|||||||||@|||||@|||||||V-", + "---^----;;;;;;---------------------------------||@|||||@|||@@||||@||-----^----------------------", + "-------------------------------------------------^--;V;;;S;;;-----------------------------------", "------------------------------------------------------------------------------------------------", "------------------------------------------------------------------------------------------------", "------------------------------------------------------------------------------------------------", @@ -169,6 +175,76 @@ } } }, + { + "type": "mapgen", + "method": "json", + "om_terrain": [ [ "city_block2_roof_1", "city_block2_roof_2", "city_block2_roof_3", "city_block2_roof_4" ] ], + "object": { + "fill_ter": "t_flat_roof", + "rows": [ + " |222222223 |2223 ooooooo |2223 |222222223o|222222223 |2222222222 ", + " |2222222222o|........3 |2|...322ooooo22|...32|........32|........3 |.........32222222223 ", + " |.........---..G.....3 |.........................................3 |2|...................3 ", + " |....................3 |..B..............................G.......3 |.....................3 ", + " |..E.................3 |.........................................3 |....E.........G......3 ", + " |....................3 |.................G.......................3 |.....................223", + " |....................3 |.........................................3 |.......................3", + " |............D.......3 |.........................................3 |.......................3", + " |....................3 |.........................................3 |.......................3", + " |....................3 |.........................................3 |.......................3", + " |....................3 |.....G....................D..............3 |.....D..............G..3", + " |....................3 |.........................................3 |.......................3", + " |....G...............3 |.........................................3 |.......................3", + " |....................3 |.........................................3 |.....................3-3", + " |....................3 |.........................................3 |.....................3# ", + " |.........3----------3 |-5-------###---------|...................3 #|.....................3# ", + " |.........## #># |...................3 #|.....................3# ", + " |-5-------#> |...................3 >|-5-------------------3> ", + " |-5--###------------3 ", + " #># ", + " ", + " ", + " ", + " " + ], + "palettes": [ "roof_palette" ], + "terrain": { ">": "t_stairs_down" }, + "nested": { + "E": { + "chunks": [ + [ "roof_4x4_party", 5 ], + [ "null", 50 ], + [ "roof_4x4_survivor", 3 ], + [ "roof_4x4_utility", 20 ], + [ "roof_4x4_utility_1", 20 ] + ] + }, + "B": { "chunks": [ [ "roof_16x16_help", 5 ] ] }, + "G": { + "chunks": [ + [ "null", 50 ], + [ "roof_2x2_infrastructure", 20 ], + [ "roof_2x2_infrastructure_1", 20 ], + [ "roof_2x2_utilities_b", 20 ], + [ "roof_2x2_utilities_c", 20 ], + [ "roof_2x2_utilities_d", 20 ] + ] + }, + "D": { + "chunks": [ + [ "null", 50 ], + [ "roof_6x6_garden_1", 10 ], + [ "roof_6x6_garden_2", 10 ], + [ "roof_6x6_garden_3", 10 ], + [ "roof_6x6_garden_4", 10 ], + [ "roof_6x6_greenhouse_1", 5 ], + [ "roof_6x6_greenhouse_2", 5 ], + [ "roof_6x6_greenhouse_3", 5 ] + ] + } + } + } + }, { "type": "mapgen", "method": "json", diff --git a/data/json/mapgen_palettes/city_block_palette.json b/data/json/mapgen_palettes/city_block_palette.json index 1fc4a81ca3284..4b98c51e29f9c 100644 --- a/data/json/mapgen_palettes/city_block_palette.json +++ b/data/json/mapgen_palettes/city_block_palette.json @@ -108,8 +108,9 @@ ], "j": [ { "item": "softdrugs", "chance": 45, "repeat": [ 1, 3 ] }, - { "item": "cleaning", "chance": 30, "repeat": [ 1, 2 ] }, - { "item": "harddrugs", "chance": 5 } + { "item": "SUS_bathroom_cabinet", "chance": 30 }, + { "item": "SUS_toilet", "chance": 5 }, + { "item": "SUS_bathroom_sink", "chance": 50 } ], "T": { "item": "shower", "chance": 30, "repeat": [ 1, 2 ] }, "n": { "item": "SUS_kitchen_sink", "chance": 10, "repeat": [ 1, 2 ] }, diff --git a/data/json/overmap/multitile_city_buildings.json b/data/json/overmap/multitile_city_buildings.json index 6acd7d0a7817e..6f1b8721747fb 100644 --- a/data/json/overmap/multitile_city_buildings.json +++ b/data/json/overmap/multitile_city_buildings.json @@ -2406,12 +2406,16 @@ "overmaps": [ { "point": [ 0, 0, 0 ], "overmap": "city_block2_1_north" }, { "point": [ 0, 0, 1 ], "overmap": "city_block2_flr2_1_north" }, + { "point": [ 0, 0, 2 ], "overmap": "city_block2_roof_1_north" }, { "point": [ 1, 0, 0 ], "overmap": "city_block2_2_north" }, { "point": [ 1, 0, 1 ], "overmap": "city_block2_flr2_2_north" }, + { "point": [ 1, 0, 2 ], "overmap": "city_block2_roof_2_north" }, { "point": [ 2, 0, 0 ], "overmap": "city_block2_3_north" }, { "point": [ 2, 0, 1 ], "overmap": "city_block2_flr2_3_north" }, + { "point": [ 2, 0, 2 ], "overmap": "city_block2_roof_3_north" }, { "point": [ 3, 0, 0 ], "overmap": "city_block2_4_north" }, - { "point": [ 3, 0, 1 ], "overmap": "city_block2_flr2_4_north" } + { "point": [ 3, 0, 1 ], "overmap": "city_block2_flr2_4_north" }, + { "point": [ 3, 0, 2 ], "overmap": "city_block2_roof_4_north" } ] }, { diff --git a/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json b/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json index c3a56648cab83..ef7f8a0c67e50 100644 --- a/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json +++ b/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json @@ -3244,5 +3244,33 @@ "name": "urban city block", "copy-from": "generic_city_building", "color": "light_blue" + }, + { + "type": "overmap_terrain", + "id": "city_block2_roof_1", + "name": "urban city block", + "copy-from": "generic_city_building", + "color": "light_blue" + }, + { + "type": "overmap_terrain", + "id": "city_block2_roof_2", + "name": "urban city block", + "copy-from": "generic_city_building", + "color": "light_blue" + }, + { + "type": "overmap_terrain", + "id": "city_block2_roof_3", + "name": "urban city block", + "copy-from": "generic_city_building", + "color": "light_blue" + }, + { + "type": "overmap_terrain", + "id": "city_block2_roof_4", + "name": "urban city block", + "copy-from": "generic_city_building", + "color": "light_blue" } ] diff --git a/data/json/vehicle_groups.json b/data/json/vehicle_groups.json index dab0a1a18c0c1..565eb83f27ab6 100644 --- a/data/json/vehicle_groups.json +++ b/data/json/vehicle_groups.json @@ -435,6 +435,29 @@ [ "tricycle", 50 ] ] }, + { + "type": "vehicle_group", + "id": "back_alley", + "//": "for city block back alleys, must be 3 tiles wide or less", + "vehicles": [ + [ "bicycle", 800 ], + [ "autosweeper", 100 ], + [ "bicycle_electric", 600 ], + [ "bicycle_dirt", 750 ], + [ "unicycle", 50 ], + [ "scooter", 100 ], + [ "scooter_electric", 50 ], + [ "tandem", 300 ], + [ "tricycle", 20 ], + [ "motorcycle", 200 ], + [ "motorcycle_cross", 150 ], + [ "motorcycle_enduro", 100 ], + [ "superbike", 100 ], + [ "motorcycle_sidecart", 100 ], + [ "golf_cart", 10 ], + [ "golf_cart_4seat", 10 ] + ] + }, { "type": "vehicle_group", "id": "oa_vg_cs_vehicles",