Files
echoes-of-the-ash/gamedata/locations.json
2025-11-27 16:27:01 +01:00

1447 lines
41 KiB
JSON

{
"locations": [
{
"id": "start_point",
"name": "\ud83c\udf06 Ruined Downtown Core",
"description": "The wind howls through skeletal skyscrapers. Debris litters the cracked asphalt. You sense danger, but also opportunity.",
"image_path": "images/locations/downtown.webp",
"x": 0,
"y": 0,
"interactables": {
"start_point_dumpster": {
"outcomes": {
"search_dumpster": {
"crit_failure_chance": 0.1,
"crit_success_chance": 0.1,
"rewards": {
"crit_damage": 8,
"crit_items": [],
"damage": 0,
"items": [
{
"chance": 1,
"item_id": "plastic_bottles",
"quantity": 3
},
{
"chance": 1,
"item_id": "cloth_scraps",
"quantity": 2
}
]
},
"stamina_cost": 2,
"success_rate": 0.5,
"text": {
"crit_failure": "You disturb a nest of rats! They bite you! (-8 HP)",
"crit_success": "",
"failure": "Just rotting garbage. Nothing useful.",
"success": "Despite the smell, you find some [Plastic Bottles] and [Cloth Scraps]."
}
}
},
"template_id": "dumpster"
},
"start_point_sedan": {
"outcomes": {
"pop_trunk": {
"crit_failure_chance": 0.1,
"crit_success_chance": 0.1,
"rewards": {
"crit_damage": 0,
"crit_items": [],
"damage": 0,
"items": [
{
"chance": 1,
"item_id": "tire_iron",
"quantity": 1
}
]
},
"stamina_cost": 3,
"success_rate": 0.5,
"text": {
"crit_failure": "",
"crit_success": "",
"failure": "The trunk is rusted shut. You can't get it open.",
"success": "With a great heave, you pry the trunk open and find a [Tire Iron]!"
}
},
"search_glovebox": {
"crit_failure_chance": 0.1,
"crit_success_chance": 0.1,
"rewards": {
"crit_damage": 0,
"crit_items": [],
"damage": 0,
"items": [
{
"chance": 1,
"item_id": "stale_chocolate_bar",
"quantity": 1
}
]
},
"stamina_cost": 1,
"success_rate": 0.5,
"text": {
"crit_failure": "",
"crit_success": "",
"failure": "The glovebox is empty except for dust and old receipts.",
"success": "You find a half-eaten [Stale Chocolate Bar]."
}
}
},
"template_id": "sedan"
}
}
},
{
"id": "gas_station",
"name": "\u26fd\ufe0f Abandoned Gas Station",
"description": "The smell of stale gasoline hangs in the air. A rusty sedan sits by the pumps, its door ajar. Behind the station, you spot a small tool shed with a workbench.",
"image_path": "images/locations/gas_station.webp",
"x": 0,
"y": 2,
"tags": [
"workbench",
"repair_station"
],
"interactables": {
"gas_station_sedan": {
"template_id": "sedan",
"outcomes": {
"search_glovebox": {
"stamina_cost": 1,
"success_rate": 0.6,
"crit_success_chance": 0.15,
"crit_failure_chance": 0.05,
"rewards": {
"damage": 0,
"crit_damage": 0,
"items": [
{
"item_id": "cloth_scraps",
"quantity": 1,
"chance": 0.8
},
{
"item_id": "plastic_bottles",
"quantity": 1,
"chance": 0.5
}
],
"crit_items": [
{
"item_id": "scrap_metal",
"quantity": 2,
"chance": 1.0
}
]
},
"text": {
"success": "You find some cloth scraps and plastic in the glovebox.",
"failure": "The glovebox is empty except for old papers.",
"crit_success": "You find scrap metal from the dashboard!",
"crit_failure": "The glovebox is jammed shut."
}
},
"pop_trunk": {
"stamina_cost": 3,
"success_rate": 0.5,
"crit_success_chance": 0.2,
"crit_failure_chance": 0.1,
"rewards": {
"damage": 0,
"crit_damage": 5,
"items": [
{
"item_id": "scrap_metal",
"quantity": 3,
"chance": 0.7
},
{
"item_id": "plastic_bottles",
"quantity": 2,
"chance": 0.6
}
],
"crit_items": [
{
"item_id": "tools",
"quantity": 1,
"chance": 0.3
}
]
},
"text": {
"success": "You force the trunk open and find scrap metal and plastic.",
"failure": "The trunk is rusted shut.",
"crit_success": "The trunk contains tools!",
"crit_failure": "You cut your hand on rusty metal! (-5 HP)"
}
}
}
},
"gas_station_storage": {
"template_id": "storage_box",
"outcomes": {
"search": {
"stamina_cost": 2,
"success_rate": 0.55,
"crit_success_chance": 0.1,
"crit_failure_chance": 0.1,
"rewards": {
"damage": 0,
"crit_damage": 0,
"items": [
{
"item_id": "scrap_metal",
"quantity": 2,
"chance": 0.7
},
{
"item_id": "cloth_scraps",
"quantity": 2,
"chance": 0.5
}
],
"crit_items": [
{
"item_id": "tools",
"quantity": 1,
"chance": 0.4
}
]
},
"text": {
"success": "You find scrap metal and cloth in the storage box.",
"failure": "The storage box is mostly empty.",
"crit_success": "You discover tools inside!",
"crit_failure": "Just oil stains and rust."
}
}
}
}
}
},
{
"id": "residential",
"name": "\ud83c\udfd8\ufe0f Residential Street",
"description": "A quiet suburban street lined with abandoned homes. Most are boarded up, but a few doors hang open, creaking in the wind.",
"image_path": "images/locations/residential.webp",
"x": 3,
"y": 0,
"interactables": {
"residential_house1": {
"outcomes": {
"search_house": {
"crit_failure_chance": 0.1,
"crit_success_chance": 0.1,
"rewards": {
"crit_damage": 10,
"crit_items": [],
"damage": 0,
"items": [
{
"chance": 1,
"item_id": "canned_beans",
"quantity": 1
},
{
"chance": 1,
"item_id": "bottled_water",
"quantity": 1
},
{
"chance": 1,
"item_id": "cloth_scraps",
"quantity": 3
}
]
},
"stamina_cost": 3,
"success_rate": 0.5,
"text": {
"crit_failure": "The floor collapses beneath you! (-10 HP)",
"crit_success": "",
"failure": "The house has already been thoroughly looted. Nothing remains.",
"success": "You find some useful supplies: [Canned Beans], [Bottled Water], and [Cloth Scraps]!"
}
}
},
"template_id": "house"
}
}
},
{
"id": "clinic",
"name": "\ud83c\udfe5 Old Clinic",
"description": "A small medical clinic, its windows shattered. The waiting room is a mess of overturned chairs and scattered papers. The examination rooms might still have supplies.",
"image_path": "images/locations/clinic.webp",
"x": 2,
"y": 3,
"interactables": {
"clinic_medkit": {
"outcomes": {
"search_medkit": {
"crit_failure_chance": 0.1,
"crit_success_chance": 0.1,
"rewards": {
"crit_damage": 0,
"crit_items": [],
"damage": 0,
"items": [
{
"chance": 1,
"item_id": "first_aid_kit",
"quantity": 1
},
{
"chance": 1,
"item_id": "bandage",
"quantity": 2
}
]
},
"stamina_cost": 2,
"success_rate": 0.5,
"text": {
"crit_failure": "",
"crit_success": "",
"failure": "The cabinet is empty. Someone got here first.",
"success": "Jackpot! You find a [First Aid Kit] and some [Bandages]!"
}
}
},
"template_id": "medkit"
}
}
},
{
"id": "plaza",
"name": "\ud83c\udfec Shopping Plaza",
"description": "A strip mall with broken storefronts. Most shops have been thoroughly ransacked, but you might find something if you search carefully.",
"image_path": "images/locations/plaza.webp",
"x": -2.5,
"y": 0,
"interactables": {
"plaza_vending": {
"template_id": "vending_machine",
"outcomes": {
"break": {
"stamina_cost": 5,
"success_rate": 0.7,
"crit_success_chance": 0.15,
"crit_failure_chance": 0.15,
"rewards": {
"damage": 0,
"crit_damage": 10,
"items": [
{
"item_id": "plastic_bottles",
"quantity": 4,
"chance": 0.8
},
{
"item_id": "scrap_metal",
"quantity": 2,
"chance": 0.6
}
],
"crit_items": [
{
"item_id": "food",
"quantity": 3,
"chance": 0.5
}
]
},
"text": {
"success": "You smash the vending machine and grab bottles and scrap.",
"failure": "The machine is too sturdy to break.",
"crit_success": "Packaged food falls out!",
"crit_failure": "Glass cuts your arm! (-10 HP)"
}
},
"search": {
"stamina_cost": 2,
"success_rate": 0.5,
"crit_success_chance": 0.1,
"crit_failure_chance": 0.05,
"rewards": {
"damage": 0,
"crit_damage": 0,
"items": [
{
"item_id": "plastic_bottles",
"quantity": 1,
"chance": 0.7
}
],
"crit_items": [
{
"item_id": "food",
"quantity": 1,
"chance": 0.8
}
]
},
"text": {
"success": "You find a plastic bottle at the bottom.",
"failure": "Nothing left to scavenge.",
"crit_success": "A snack is wedged in the dispenser!",
"crit_failure": "Already picked clean."
}
}
}
},
"plaza_rubble": {
"template_id": "rubble",
"outcomes": {
"search": {
"stamina_cost": 2,
"success_rate": 0.5,
"crit_success_chance": 0.1,
"crit_failure_chance": 0.15,
"rewards": {
"damage": 0,
"crit_damage": 5,
"items": [
{
"item_id": "scrap_metal",
"quantity": 3,
"chance": 0.7
},
{
"item_id": "cloth_scraps",
"quantity": 2,
"chance": 0.5
}
],
"crit_items": [
{
"item_id": "tools",
"quantity": 1,
"chance": 0.2
}
]
},
"text": {
"success": "You dig through rubble and find scrap metal and cloth.",
"failure": "Just broken concrete and dust.",
"crit_success": "A tool was buried in the debris!",
"crit_failure": "Sharp debris cuts you! (-5 HP)"
}
}
}
}
}
},
{
"id": "park",
"name": "\ud83c\udf33 Suburban Park",
"description": "An overgrown park with rusted playground equipment. Nature is slowly reclaiming this space. A maintenance shed sits at the far end.",
"image_path": "images/locations/park.webp",
"x": -1,
"y": -2,
"interactables": {
"park_shed": {
"outcomes": {
"search_shed": {
"crit_failure_chance": 0.1,
"crit_success_chance": 0.1,
"rewards": {
"crit_damage": 0,
"crit_items": [],
"damage": 0,
"items": [
{
"chance": 1,
"item_id": "rusty_nails",
"quantity": 5
},
{
"chance": 1,
"item_id": "wood_planks",
"quantity": 2
},
{
"chance": 1,
"item_id": "flashlight",
"quantity": 1
},
{
"chance": 1,
"item_id": "knife",
"quantity": 1
}
]
},
"stamina_cost": 2,
"success_rate": 0.5,
"text": {
"crit_failure": "",
"crit_success": "",
"failure": "The shed has been picked clean. Only empty shelves remain.",
"success": "You find some tools: [Rusty Nails], [Wood Planks], and a [Flashlight]!"
}
}
},
"template_id": "toolshed"
}
}
},
{
"id": "overpass",
"name": "\ud83d\udee3\ufe0f Highway Overpass",
"description": "A concrete overpass spanning the cracked highway below. Abandoned vehicles litter the road. This is a good vantage point to survey the area.",
"x": 1.0,
"y": 4.5,
"image_path": "images/locations/overpass.webp",
"interactables": {
"overpass_sedan1": {
"template_id": "sedan",
"outcomes": {
"search_glovebox": {
"success_rate": 0.5,
"stamina_cost": 1,
"crit_success_chance": 0.1,
"crit_failure_chance": 0.1,
"text": {
"success": "You find a half-eaten [Stale Chocolate Bar].",
"failure": "The glovebox is empty except for dust and old receipts.",
"crit_success": "",
"crit_failure": ""
},
"rewards": {
"items": [
{
"item_id": "stale_chocolate_bar",
"quantity": 1,
"chance": 1.0
}
],
"damage": 0,
"crit_items": [],
"crit_damage": 0
}
},
"pop_trunk": {
"success_rate": 0.5,
"stamina_cost": 3,
"crit_success_chance": 0.1,
"crit_failure_chance": 0.1,
"text": {
"success": "With a great heave, you pry the trunk open and find a [Tire Iron]!",
"failure": "The trunk is rusted shut. You can't get it open.",
"crit_success": "",
"crit_failure": ""
},
"rewards": {
"items": [
{
"item_id": "tire_iron",
"quantity": 1,
"chance": 1.0
}
],
"damage": 0,
"crit_items": [],
"crit_damage": 0
}
}
}
},
"overpass_sedan2": {
"template_id": "sedan",
"outcomes": {
"search_glovebox": {
"success_rate": 0.5,
"stamina_cost": 1,
"crit_success_chance": 0.1,
"crit_failure_chance": 0.1,
"text": {
"success": "You find a half-eaten [Stale Chocolate Bar].",
"failure": "The glovebox is empty except for dust and old receipts.",
"crit_success": "",
"crit_failure": ""
},
"rewards": {
"items": [
{
"item_id": "stale_chocolate_bar",
"quantity": 1,
"chance": 1.0
}
],
"damage": 0,
"crit_items": [],
"crit_damage": 0
}
},
"pop_trunk": {
"success_rate": 0.5,
"stamina_cost": 3,
"crit_success_chance": 0.1,
"crit_failure_chance": 0.1,
"text": {
"success": "With a great heave, you pry the trunk open and find a [Tire Iron]!",
"failure": "The trunk is rusted shut. You can't get it open.",
"crit_success": "",
"crit_failure": ""
},
"rewards": {
"items": [
{
"item_id": "tire_iron",
"quantity": 1,
"chance": 1.0
}
],
"damage": 0,
"crit_items": [],
"crit_damage": 0
}
}
}
}
}
},
{
"id": "warehouse",
"name": "\ud83c\udfed Warehouse District",
"description": "Rows of industrial warehouses stretch before you. Metal doors creak in the wind. The loading docks are littered with debris and abandoned cargo.",
"image_path": "images/locations/warehouse.webp",
"x": 4,
"y": -1.5,
"interactables": {
"warehouse_dumpster": {
"outcomes": {
"search_dumpster": {
"crit_failure_chance": 0.1,
"crit_success_chance": 0.1,
"rewards": {
"crit_damage": 8,
"crit_items": [],
"damage": 0,
"items": [
{
"chance": 1,
"item_id": "plastic_bottles",
"quantity": 3
},
{
"chance": 1,
"item_id": "cloth_scraps",
"quantity": 2
}
]
},
"stamina_cost": 2,
"success_rate": 0.5,
"text": {
"crit_failure": "You disturb a nest of rats! They bite you! (-8 HP)",
"crit_success": "",
"failure": "Just rotting garbage. Nothing useful.",
"success": "Despite the smell, you find some [Plastic Bottles] and [Cloth Scraps]."
}
}
},
"template_id": "dumpster"
},
"warehouse_toolshed": {
"outcomes": {
"search_shed": {
"crit_failure_chance": 0.1,
"crit_success_chance": 0.1,
"rewards": {
"crit_damage": 0,
"crit_items": [],
"damage": 0,
"items": [
{
"chance": 1,
"item_id": "rusty_nails",
"quantity": 5
},
{
"chance": 1,
"item_id": "wood_planks",
"quantity": 2
},
{
"chance": 1,
"item_id": "flashlight",
"quantity": 1
}
]
},
"stamina_cost": 2,
"success_rate": 0.5,
"text": {
"crit_failure": "",
"crit_success": "",
"failure": "The shed has been picked clean. Only empty shelves remain.",
"success": "You find some tools: [Rusty Nails], [Wood Planks], and a [Flashlight]!"
}
}
},
"template_id": "toolshed"
}
}
},
{
"id": "warehouse_interior",
"name": "\ud83d\udce6 Warehouse Interior",
"description": "Inside the warehouse, towering shelves cast long shadows. Scattered crates and pallets suggest this was once a distribution center. The back office door hangs open.",
"image_path": "images/locations/warehouse_interior.webp",
"x": 4.5,
"y": -2,
"interactables": {
"storage_box_1762510181363": {
"template_id": "storage_box",
"outcomes": {
"search": {
"success_rate": 0.5,
"stamina_cost": 2,
"crit_success_chance": 0,
"crit_failure_chance": 0,
"text": {
"success": "You successfully \ud83d\udd0e search box.",
"failure": "You failed to \ud83d\udd0e search box.",
"crit_success": "",
"crit_failure": ""
},
"rewards": {
"items": [
{
"item_id": "scrap_metal",
"quantity": 2,
"chance": 0.5
},
{
"item_id": "cloth_scraps",
"quantity": 1,
"chance": 0.3
}
],
"damage": 0,
"crit_items": [],
"crit_damage": 0
}
}
}
}
}
},
{
"id": "subway",
"name": "\ud83d\ude87 Subway Station Entrance",
"description": "Stairs descend into darkness. The entrance to an abandoned subway station yawns before you. Emergency lighting flickers somewhere below.",
"image_path": "images/locations/subway.webp",
"x": -4,
"y": -0.5,
"interactables": {
"subway_rubble": {
"outcomes": {
"search": {
"crit_failure_chance": 0.1,
"crit_success_chance": 0.15,
"rewards": {
"crit_damage": 4,
"crit_items": [
{
"chance": 0.25,
"item_id": "tools",
"quantity": 1
}
],
"damage": 0,
"items": [
{
"chance": 0.8,
"item_id": "scrap_metal",
"quantity": 4
},
{
"chance": 0.4,
"item_id": "cloth_scraps",
"quantity": 1
}
]
},
"stamina_cost": 2,
"success_rate": 0.55,
"text": {
"crit_failure": "Debris shifts and hits your leg! (-4 HP)",
"crit_success": "You uncover a tool buried deep!",
"failure": "Just concrete chunks.",
"success": "You sift through rubble and find scrap metal."
}
}
},
"template_id": "rubble"
},
"subway_vending": {
"outcomes": {
"break": {
"crit_failure_chance": 0.2,
"crit_success_chance": 0.1,
"rewards": {
"crit_damage": 12,
"crit_items": [
{
"chance": 0.6,
"item_id": "food",
"quantity": 2
}
],
"damage": 0,
"items": [
{
"chance": 0.8,
"item_id": "plastic_bottles",
"quantity": 3
}
]
},
"stamina_cost": 5,
"success_rate": 0.6,
"text": {
"crit_failure": "The machine topples on you! (-12 HP)",
"crit_success": "Food packages tumble out!",
"failure": "The machine won't budge.",
"success": "You bash open the vending machine and grab bottles."
}
},
"search": {
"crit_failure_chance": 0.05,
"crit_success_chance": 0.05,
"rewards": {
"crit_damage": 0,
"crit_items": [],
"damage": 0,
"items": [
{
"chance": 0.6,
"item_id": "plastic_bottles",
"quantity": 1
}
]
},
"stamina_cost": 2,
"success_rate": 0.4,
"text": {
"crit_failure": "Nothing here.",
"crit_success": "A bottle still rolls out!",
"failure": "Completely empty.",
"success": "You find a bottle in the machine's slot."
}
}
},
"template_id": "vending_machine"
}
}
},
{
"id": "subway_tunnels",
"name": "\ud83d\ude8a Subway Tunnels",
"description": "Dark subway tunnels stretch into blackness. Flickering emergency lights cast eerie shadows. The third rail is dead, but you should still watch your step.",
"image_path": "images/locations/subway_tunnels.webp",
"x": -4.5,
"y": -1,
"interactables": {
"tunnel_rubble": {
"template_id": "rubble",
"outcomes": {
"search": {
"stamina_cost": 2,
"success_rate": 0.5,
"crit_success_chance": 0.1,
"crit_failure_chance": 0.15,
"rewards": {
"damage": 0,
"crit_damage": 6,
"items": [
{
"item_id": "scrap_metal",
"quantity": 3,
"chance": 0.8
}
],
"crit_items": [
{
"item_id": "tools",
"quantity": 1,
"chance": 0.2
}
]
},
"text": {
"success": "You find scrap metal in the tunnel debris.",
"failure": "Just rocks and dirt.",
"crit_success": "A maintenance tool was left behind!",
"crit_failure": "You stumble and hit the wall! (-6 HP)"
}
}
}
}
}
},
{
"id": "office_building",
"name": "\ud83c\udfe2 Office Building",
"description": "A five-story office building with shattered windows. The lobby is trashed, but the stairs appear intact. You can hear the wind whistling through the upper floors.",
"image_path": "images/locations/office_building.webp",
"x": 3.5,
"y": 4,
"interactables": {
"office_rubble": {
"template_id": "rubble",
"outcomes": {
"search": {
"stamina_cost": 2,
"success_rate": 0.55,
"crit_success_chance": 0.1,
"crit_failure_chance": 0.1,
"rewards": {
"damage": 0,
"crit_damage": 5,
"items": [
{
"item_id": "scrap_metal",
"quantity": 2,
"chance": 0.7
},
{
"item_id": "cloth_scraps",
"quantity": 2,
"chance": 0.5
}
],
"crit_items": []
},
"text": {
"success": "You find scrap metal and cloth in the lobby debris.",
"failure": "Just broken furniture and papers.",
"crit_success": "You discover useful materials!",
"crit_failure": "Glass cuts your hand! (-5 HP)"
}
}
}
}
}
},
{
"id": "office_interior",
"name": "\ud83d\udcbc Office Floors",
"description": "Cubicles stretch across the floor. Papers scatter in the breeze from broken windows. Filing cabinets stand open, already ransacked. A corner office looks promising.",
"image_path": "images/locations/office_interior.webp",
"x": 4,
"y": 4.5,
"interactables": {
"office_storage": {
"template_id": "storage_box",
"outcomes": {
"search": {
"stamina_cost": 2,
"success_rate": 0.6,
"crit_success_chance": 0.15,
"crit_failure_chance": 0.05,
"rewards": {
"damage": 0,
"crit_damage": 0,
"items": [
{
"item_id": "cloth_scraps",
"quantity": 3,
"chance": 0.8
},
{
"item_id": "plastic_bottles",
"quantity": 1,
"chance": 0.5
}
],
"crit_items": [
{
"item_id": "food",
"quantity": 1,
"chance": 0.5
}
]
},
"text": {
"success": "You find cloth and bottles in desk drawers.",
"failure": "Everything's been picked through already.",
"crit_success": "Someone left food in their desk!",
"crit_failure": "Just old paperwork."
}
}
}
}
}
},
{
"id": "location_1760791397492",
"name": "Subway Section A",
"description": "A shady dimly lit subway section. All you can see are abandoned train tracks and some garbage lying around. ",
"image_path": "images/locations/subway_section_a.jpg",
"x": -5,
"y": -2,
"interactables": {
"subway_a_rubble": {
"template_id": "rubble",
"outcomes": {
"search": {
"stamina_cost": 2,
"success_rate": 0.5,
"crit_success_chance": 0.1,
"crit_failure_chance": 0.15,
"rewards": {
"damage": 0,
"crit_damage": 5,
"items": [
{
"item_id": "scrap_metal",
"quantity": 3,
"chance": 0.75
}
],
"crit_items": [
{
"item_id": "tools",
"quantity": 1,
"chance": 0.2
}
]
},
"text": {
"success": "You dig through the garbage and find scrap metal.",
"failure": "Just rotting trash.",
"crit_success": "A tool was discarded here!",
"crit_failure": "You step on sharp debris! (-5 HP)"
}
}
}
}
}
}
],
"connections": [
{
"from": "start_point",
"to": "gas_station",
"direction": "north"
},
{
"from": "start_point",
"to": "residential",
"direction": "east"
},
{
"from": "start_point",
"to": "plaza",
"direction": "west"
},
{
"from": "gas_station",
"to": "start_point",
"direction": "south"
},
{
"from": "residential",
"to": "start_point",
"direction": "west"
},
{
"from": "residential",
"to": "clinic",
"direction": "north"
},
{
"from": "residential",
"to": "warehouse",
"direction": "southeast"
},
{
"from": "clinic",
"to": "residential",
"direction": "south"
},
{
"from": "plaza",
"to": "start_point",
"direction": "east"
},
{
"from": "plaza",
"to": "subway",
"direction": "west"
},
{
"from": "warehouse",
"to": "residential",
"direction": "northwest"
},
{
"from": "warehouse",
"to": "warehouse_interior",
"direction": "inside"
},
{
"from": "warehouse_interior",
"to": "warehouse",
"direction": "outside"
},
{
"from": "subway",
"to": "plaza",
"direction": "east"
},
{
"from": "subway",
"to": "subway_tunnels",
"direction": "down"
},
{
"from": "subway_tunnels",
"to": "subway",
"direction": "up"
},
{
"from": "office_building",
"to": "office_interior",
"direction": "inside"
},
{
"from": "office_interior",
"to": "office_building",
"direction": "outside"
},
{
"from": "location_1760789845933",
"to": "subway_tunnels",
"direction": "north"
},
{
"from": "location_1760791397492",
"to": "subway_tunnels",
"direction": "north"
},
{
"from": "location_1760791397492",
"to": "subway_tunnels",
"direction": "north"
},
{
"from": "location_1760799315918",
"to": "gas_station",
"direction": "southeast"
},
{
"from": "subway_tunnels",
"to": "location_1760791397492",
"direction": "south"
},
{
"from": "park",
"to": "start_point",
"direction": "north"
},
{
"from": "start_point",
"to": "park",
"direction": "south"
},
{
"from": "clinic",
"to": "office_building",
"direction": "northeast"
},
{
"from": "office_building",
"to": "clinic",
"direction": "southwest"
},
{
"from": "clinic",
"to": "gas_station",
"direction": "southwest"
},
{
"from": "gas_station",
"to": "clinic",
"direction": "northeast"
},
{
"from": "gas_station",
"to": "overpass",
"direction": "north"
},
{
"from": "overpass",
"to": "gas_station",
"direction": "south"
},
{
"from": "clinic",
"to": "overpass",
"direction": "northwest"
},
{
"from": "overpass",
"to": "clinic",
"direction": "southeast"
},
{
"from": "park",
"to": "warehouse",
"direction": "east"
},
{
"from": "warehouse",
"to": "park",
"direction": "west"
},
{
"from": "park",
"to": "residential",
"direction": "northeast"
},
{
"from": "residential",
"to": "park",
"direction": "southwest"
},
{
"from": "plaza",
"to": "park",
"direction": "southeast"
},
{
"from": "park",
"to": "plaza",
"direction": "northwest"
}
],
"danger_config": {
"start_point": {
"danger_level": 0,
"encounter_rate": 0,
"wandering_chance": 0
},
"gas_station": {
"danger_level": 0,
"encounter_rate": 0,
"wandering_chance": 0
},
"residential": {
"danger_level": 1,
"encounter_rate": 0.1,
"wandering_chance": 0.2
},
"park": {
"danger_level": 1,
"encounter_rate": 0.1,
"wandering_chance": 0.2
},
"clinic": {
"danger_level": 2,
"encounter_rate": 0.2,
"wandering_chance": 0.35
},
"plaza": {
"danger_level": 2,
"encounter_rate": 0.15,
"wandering_chance": 0.3
},
"warehouse": {
"danger_level": 2,
"encounter_rate": 0.18,
"wandering_chance": 0.32
},
"warehouse_interior": {
"danger_level": 2,
"encounter_rate": 0.22,
"wandering_chance": 0.4
},
"overpass": {
"danger_level": 3,
"encounter_rate": 0.3,
"wandering_chance": 0.45
},
"office_building": {
"danger_level": 3,
"encounter_rate": 0.25,
"wandering_chance": 0.4
},
"office_interior": {
"danger_level": 3,
"encounter_rate": 0.35,
"wandering_chance": 0.5
},
"subway": {
"danger_level": 4,
"encounter_rate": 0.35,
"wandering_chance": 0.5
},
"subway_tunnels": {
"danger_level": 4,
"encounter_rate": 0.45,
"wandering_chance": 0.65
}
},
"spawn_config": {
"start_point": [],
"gas_station": [],
"residential": [
{
"npc_id": "feral_dog",
"weight": 60
},
{
"npc_id": "mutant_rat",
"weight": 40
}
],
"park": [
{
"npc_id": "feral_dog",
"weight": 50
},
{
"npc_id": "mutant_rat",
"weight": 50
}
],
"clinic": [
{
"npc_id": "infected_human",
"weight": 40
},
{
"npc_id": "mutant_rat",
"weight": 30
},
{
"npc_id": "scavenger",
"weight": 30
}
],
"plaza": [
{
"npc_id": "raider_scout",
"weight": 40
},
{
"npc_id": "scavenger",
"weight": 35
},
{
"npc_id": "feral_dog",
"weight": 25
}
],
"warehouse": [
{
"npc_id": "raider_scout",
"weight": 45
},
{
"npc_id": "scavenger",
"weight": 35
},
{
"npc_id": "mutant_rat",
"weight": 20
}
],
"warehouse_interior": [
{
"npc_id": "raider_scout",
"weight": 50
},
{
"npc_id": "scavenger",
"weight": 30
},
{
"npc_id": "mutant_rat",
"weight": 20
}
],
"overpass": [
{
"npc_id": "raider_scout",
"weight": 50
},
{
"npc_id": "infected_human",
"weight": 30
},
{
"npc_id": "scavenger",
"weight": 20
}
],
"office_building": [
{
"npc_id": "raider_scout",
"weight": 45
},
{
"npc_id": "infected_human",
"weight": 35
},
{
"npc_id": "scavenger",
"weight": 20
}
],
"office_interior": [
{
"npc_id": "infected_human",
"weight": 50
},
{
"npc_id": "raider_scout",
"weight": 30
},
{
"npc_id": "scavenger",
"weight": 20
}
],
"subway": [
{
"npc_id": "infected_human",
"weight": 50
},
{
"npc_id": "raider_scout",
"weight": 30
},
{
"npc_id": "mutant_rat",
"weight": 20
}
],
"subway_tunnels": [
{
"npc_id": "infected_human",
"weight": 60
},
{
"npc_id": "raider_scout",
"weight": 25
},
{
"npc_id": "mutant_rat",
"weight": 15
}
]
}
}