Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add toxic waste map extra #59618

Merged
merged 7 commits into from
Aug 9, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion data/json/items/newspaper.json
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
"price_postapoc": 0,
"material": [ "paper" ],
"flags": [ "TRADER_AVOID" ],
"weight": "3 g",
"weight": "12 mg",
"volume": "1 ml"
},
{
Expand All @@ -53,6 +53,14 @@
"copy-from": "survnote",
"snippet_category": "mutant_kid_boss"
},
{
"type": "GENERIC",
"id": "toxic_waste_labnote",
"copy-from": "survnote",
"name": { "str": "forgotten note" },
"description": "This grimy note seems out of place, as if someone lost it.",
"snippet_category": "toxic_waste_corpse_disposal"
},
{
"type": "GENERIC",
"id": "lab_postit_bio",
Expand Down
213 changes: 213 additions & 0 deletions data/json/mapgen/map_extras/toxic_waste.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,213 @@
[
{
"id": "toxic_waste_mx",
"type": "item_group",
"items": [
{ "item": "sewage", "container-item": "55gal_drum", "charges-min": 26, "charges-max": 126, "prob": 40 },
{ "item": "water_sewage", "container-item": "55gal_drum", "charges-min": 26, "charges-max": 126, "prob": 40 },
{ "item": "fetid_goop", "container-item": "55gal_drum", "charges-min": 26, "charges-max": 200, "prob": 30 },
{
"item": "meat_mutant_tainted",
"container-item": "55gal_drum",
"charges-min": 3,
"charges-max": 15,
"prob": 1
},
{ "item": "veggy_tainted", "container-item": "55gal_drum", "charges-min": 3, "charges-max": 50, "prob": 2 },
{ "group": "toxic_waste_mx_chems", "prob": 35 },
{ "item": "55gal_drum", "prob": 50 },
{ "item": "canister_goo", "prob": 5 },
{ "item": "slime_scrap", "prob": 10 }
]
},
{
"id": "toxic_waste_mx_chems",
"type": "item_group",
"items": [
{ "item": "chem_acetone", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 32, "prob": 10 },
{ "item": "chem_toluene", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 16, "prob": 5 },
{ "item": "chem_glycerol", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 32, "prob": 5 },
{ "item": "chem_ethanol", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 100, "prob": 20 },
{ "item": "methed_alcohol", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 32, "prob": 10 },
{ "item": "chem_methanol", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 16, "prob": 10 },
{ "item": "diesel", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 52, "prob": 15 },
{ "item": "motor_oil", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 52, "prob": 15 },
{ "item": "chem_turpentine", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 100, "prob": 15 },
{ "item": "camphine", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 32, "prob": 5 },
{ "item": "gasoline", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 52, "prob": 5 },
{ "item": "bleach", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 52, "prob": 10 },
{ "item": "lye", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 52, "prob": 10 },
{
"item": "chem_sulphuric_acid",
"container-item": "55gal_drum",
"charges-min": 1,
"charges-max": 16,
"prob": 5
}
]
},
{
"id": "toxic_waste_mx_radioactive",
"type": "item_group",
"items": [
{ "item": "cobalt_60", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 12, "prob": 5 },
{ "item": "plutonium", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 3, "prob": 1 },
{ "item": "plut_slurry", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 45, "prob": 50 },
{ "item": "plut_slurry_dense", "container-item": "55gal_drum", "charges-min": 1, "charges-max": 45, "prob": 30 }
]
},
{
"type": "mapgen",
"method": "json",
"nested_mapgen_id": "toxic_gas_vent",
"object": {
"mapgensize": [ 1, 1 ],
"place_fields": [ { "field": "fd_gas_vent", "x": 0, "y": 0, "intensity": 3, "age": 0 } ],
"//": "Random chemicals mixed together is bound to create toxic gas, also makes it harder to get to any loot.",
"place_loot": [ { "group": "toxic_waste_mx_chems", "x": 0, "y": 0, "repeat": [ 2, 3 ] } ],
"set": [ { "point": "terrain", "id": "t_pit", "x": 0, "y": 0 } ]
}
},
{
"type": "mapgen",
"method": "json",
"nested_mapgen_id": "toxic_waste_fence_radioactive",
"object": {
"mapgensize": [ 11, 11 ],
"rows": [
"|---------|",
"| |",
"| |",
"| |",
"| |",
"| |",
"| |",
"| |",
"| |",
"|---------|",
" "
],
"set": [ { "square": "radiation", "amount": [ 10, 30 ], "x": 0, "y": 0, "x2": 10, "y2": 10 } ],
"place_loot": [ { "group": "toxic_waste_mx_radioactive", "x": [ 2, 7 ], "y": [ 2, 7 ], "repeat": 2 } ],
"//": "Try to make it either fence or nothing - a lot of fence posts without fence next to each other may look weird.",
"terrain": {
"|": [ [ "t_chainfence", 5 ], "t_chainfence_posts", [ "t_grass_dead", 4 ] ],
"-": [ [ "t_chainfence", 5 ], "t_chainfence_posts", [ "t_grass_dead", 4 ] ]
}
}
},
{
"type": "mapgen",
"method": "json",
"nested_mapgen_id": "toxic_waste_lab_corpses",
"//": "Lore. Lab folks may dump their now dead, useless and perhaps incriminating experiments there to get rid of them.",
"object": {
"mapgensize": [ 3, 3 ],
"place_corpses": [ { "group": "GROUP_TOXIC_WASTE_CORPSES", "x": [ 0, 2 ], "y": [ 0, 2 ] } ],
"place_item": [ { "item": "toxic_waste_labnote", "x": [ 0, 2 ], "y": [ 0, 2 ], "chance": 40 } ]
}
},
{
"type": "monstergroup",
"name": "GROUP_TOXIC_WASTE",
"monsters": [
{ "monster": "mon_sewer_rat", "weight": 60 },
{ "monster": "mon_blob", "weight": 30 },
{ "monster": "mon_zombie_hazmat", "weight": 10 }
]
},
{
"type": "monstergroup",
"name": "GROUP_TOXIC_WASTE_CORPSES",
"monsters": [
{ "monster": "mon_mutant_experimental", "weight": 60 },
{ "monster": "mon_mutant_antler", "weight": 30 },
{ "monster": "mon_mutant_arthropod", "weight": 10 }
]
},
{
"type": "mapgen",
"method": "json",
"update_mapgen_id": "mx_toxic_waste",
"object": {
"rows": [
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" # ",
" ---! -- ",
" - -%^~- ",
" --~-~---^ ",
" -~~~~~~-- ",
" ! ---~~--- ",
" -~-%-- - ",
" --^-~-~- ",
" ---~ ! ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
],
"flags": [ "ERASE_ALL_BEFORE_PLACING_TERRAIN" ],
"terrain": { "~": [ "t_sewage" ], "-": [ "t_sewage", "t_dirt", "t_grass_dead" ], "%": [ "t_dirt", "t_grass_dead" ] },
"furniture": {
"~": [ "f_rubble_landfill", "f_rubble", "f_wreckage", [ "f_null", 3 ] ],
"-": [ "f_rubble_landfill", "f_rubble", "f_wreckage", [ "f_null", 3 ] ]
},
"//": "Three spawning spots, 90% chance to have at least one toxic gas vent.",
"//2": "Make radiation sort-of rare since in real life atomic compounds are strictly regulated. However, this is the Cataclysm where atomic stuff is more widely used so do not make it unobtanium.",
"//3": "Since there are two potential corpse spawning spots, make the overall chance to encounter at least one corpse 10%. Obtaining the lore note is thus at 4% per map extra.",
"nested": {
"^": { "chunks": [ [ "null", 70 ], [ "toxic_gas_vent", 30 ] ] },
"#": { "chunks": [ [ "null", 80 ], [ "toxic_waste_fence_radioactive", 20 ] ] },
"%": { "chunks": [ [ "null", 95 ], [ "toxic_waste_lab_corpses", 5 ] ] }
},
"//4": "These liquids are cosmetic only because you can not pick them up. Can contain rare chemicals because of this.",
"liquids": {
"-": [
{ "liquid": "chem_acetic_acid", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "acetic_anhydride", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_acetone", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_formaldehyde", "amount": [ 1, 4 ], "chance": 140 },
{ "liquid": "chem_muriatic_acid", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_hydrogen_peroxide", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_hydrogen_peroxide_conc", "amount": [ 1, 2 ], "chance": 100 },
{ "liquid": "chem_nitric_acid", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_sulphuric_acid", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "ammonia_liquid", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "ammonia_hydroxide", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "bleach", "amount": [ 1, 4 ], "chance": 80 },
{ "liquid": "lye", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "lye_potassium", "amount": [ 1, 2 ], "chance": 150 },
{ "liquid": "ether", "amount": [ 1, 2 ], "chance": 120 },
{ "liquid": "chem_DMSO", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_chloroform", "amount": [ 1, 2 ], "chance": 130 },
{ "liquid": "chem_phenol", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_benzene", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_toluene", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_glycerol", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_ethanol", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "methed_alcohol", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "denat_alcohol", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_methanol", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "diesel", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "motor_oil", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "chem_turpentine", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "camphine", "amount": [ 1, 4 ], "chance": 100 },
{ "liquid": "soapy_water", "amount": [ 1, 4 ], "chance": 150 },
{ "liquid": "gasoline", "amount": [ 1, 4 ], "chance": 100 }
]
},
"monsters": { "!": { "monster": "GROUP_TOXIC_WASTE", "density": 0.1, "chance": 40 } },
"place_loot": [ { "group": "toxic_waste_mx", "x": [ 10, 13 ], "y": [ 10, 12 ], "repeat": [ 1, 2 ] } ]
}
}
]
10 changes: 10 additions & 0 deletions data/json/overmap/map_extras.json
Original file line number Diff line number Diff line change
Expand Up @@ -547,6 +547,16 @@
"generator": { "generator_method": "map_extra_function", "generator_id": "mx_reed" },
"min_max_zlevel": [ 0, 0 ]
},
{
"id": "mx_toxic_waste",
"type": "map_extra",
"name": { "str": "Toxic waste" },
"description": "Someone dumped some toxic waste here.",
"generator": { "generator_method": "update_mapgen", "generator_id": "mx_toxic_waste" },
"sym": "D",
"color": "magenta",
"autonote": true
},
{
"id": "mx_sewer_round",
"type": "map_extra",
Expand Down
4 changes: 4 additions & 0 deletions data/json/regional_map_settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -603,6 +603,7 @@
"mx_collegekids": 25,
"mx_grass": 20,
"mx_science": 20,
"mx_toxic_waste": 10,
"mx_crater": 10,
"mx_supplydrop": 8,
"mx_military": 8,
Expand Down Expand Up @@ -638,6 +639,7 @@
"mx_drugdeal": 20,
"mx_grass2": 20,
"mx_fallen_shed": 20,
"mx_toxic_waste": 15,
"mx_crater": 10,
"mx_grass": 10,
"mx_military": 8,
Expand Down Expand Up @@ -673,6 +675,7 @@
"mx_corpses": 80,
"mx_grass2": 20,
"mx_grass": 10,
"mx_toxic_waste": 10,
"mx_portal": 8,
"mx_portal_in": 7,
"mx_helicopter": 5,
Expand Down Expand Up @@ -702,6 +705,7 @@
"mx_collegekids": 30,
"mx_drugdeal": 30,
"mx_corpses": 30,
"mx_toxic_waste": 10,
"mx_portal": 10,
"mx_portal_in": 10,
"mx_science": 10,
Expand Down
22 changes: 22 additions & 0 deletions data/json/snippets/snippets.json
Original file line number Diff line number Diff line change
Expand Up @@ -347,5 +347,27 @@
"They know what you've done…",
"You're feeling even more paranoid than usual."
]
},
{
"type": "snippet",
"category": "toxic_waste_corpse_disposal",
"text": [
{
"id": "lost_note_1",
"text": "A crumpled and dirty note containing some printed text. The text contains detailed instructions on how to dispose of \"experiments\" in remote areas."
},
{
"id": "lost_note_2",
"text": "You see a faded map, stained with unknown fluids and riddled with holes. A route is scribbled onto it. The point of departure looks to be some kind of odd research facility."
},
{
"id": "lost_note_3",
"text": "Some sheets of paper, folded, crinkled and wet due to exposure to the environment. It smells vile and there are faint smears of blood. A map is printed on it, depicting instructions on how to handle deceased \"experiments\" and a route to some remote site. You find it very odd that the starting point of the route is a subway station."
},
{
"id": "lost_note_4",
"text": "This note has a chemical smell and a bloody thumbprint on it. You see directions to nearby isolated sites, mainly forests and fields. The name of the company(?) who printed this, XEDRA, sounds ominous."
}
]
}
]