diff options
Diffstat (limited to 'npc-04_island-prison-update.patch')
-rw-r--r-- | npc-04_island-prison-update.patch | 1731 |
1 files changed, 0 insertions, 1731 deletions
diff --git a/npc-04_island-prison-update.patch b/npc-04_island-prison-update.patch deleted file mode 100644 index 27d9629..0000000 --- a/npc-04_island-prison-update.patch +++ /dev/null @@ -1,1731 +0,0 @@ ---- a/data/json/npcs/island_prison/prisoners.json -+++ b/data/json/npcs/island_prison/prisoners.json -@@ -0,0 +1,631 @@ -+[ -+ { -+ "type": "npc", -+ "id": "prisoner_generic", -+ "//": "Former prisoner with a melee or ranged weapon and prison clothing. Sometimes they also have prison guards' gear.", -+ "name_suffix": "prisoner", -+ "class": "NC_THUG_PRISONER", -+ "attitude": 0, -+ "mission": 8, -+ "chat": "TALK_PRISONER_GENERIC", -+ "faction": "prisoners" -+ }, -+ { -+ "type": "npc", -+ "id": "prisoner_greeter", -+ "//": "Former prisoner with a melee or ranged weapon and prison clothing. Sometimes they also have prison guards' gear.", -+ "name_suffix": "gatekeeper", -+ "class": "NC_THUG_PRISONER", -+ "attitude": 0, -+ "mission": 8, -+ "chat": "TALK_PRISONER_GREET", -+ "faction": "prisoners" -+ }, -+ { -+ "type": "npc", -+ "id": "prisoner_leader", -+ "//": "Former prisoner with a melee or ranged weapon and prison clothing. Sometimes they also have prison guards' gear.", -+ "name_suffix": "leader of prisoners", -+ "class": "NC_THUG_PRISONER", -+ "attitude": 0, -+ "mission": 8, -+ "chat": "TALK_PRISONER_LEADER_GREET", -+ "faction": "prisoners", -+ "mission_offered": "MISSION_PRISONER_LEADER_GET_ID_CARD" -+ }, -+ { -+ "type": "npc_class", -+ "id": "NC_THUG_PRISONER", -+ "name": { "str": "Prisoner" }, -+ "job_description": "I'm here to kick ass.", -+ "traits": [ -+ { "group": "BG_survival_story_CRIMINAL" }, -+ { "group": "NPC_starting_traits" }, -+ { "group": "Appearance_demographics" } -+ ], -+ "bonus_str": { "rng": [ 2, 4 ] }, -+ "bonus_dex": { "rng": [ 0, 2 ] }, -+ "skills": [ -+ { "skill": "ALL", "level": { "sum": [ { "dice": [ 3, 2 ] }, { "constant": -4 } ] } }, -+ { "skill": "dodge", "bonus": { "rng": [ 1, 3 ] } }, -+ { "skill": "melee", "bonus": { "rng": [ 2, 4 ] } }, -+ { "skill": "unarmed", "bonus": { "rng": [ 1, 3 ] } }, -+ { "skill": "bashing", "bonus": { "rng": [ 1, 5 ] } }, -+ { "skill": "stabbing", "bonus": { "rng": [ 1, 5 ] } }, -+ { "skill": "cutting", "bonus": { "rng": [ 1, 5 ] } } -+ ], -+ "worn_override": "NC_THUG_PRISONER_worn", -+ "weapon_override": "NC_THUG_PRISONER_wield" -+ }, -+ { -+ "type": "item_group", -+ "id": "NC_THUG_PRISONER_worn", -+ "subtype": "collection", -+ "entries": [ -+ { "group": "male_underwear" }, -+ { "distribution": [ { "group": "clothing_prisoner_shoes" }, { "group": "cop_shoes" } ] }, -+ { "distribution": [ { "item": "striped_shirt" }, { "group": "cop_torso" } ] }, -+ { "distribution": [ { "item": "striped_pants" }, { "group": "cop_pants" } ] }, -+ { "distribution": [ { "item": "tacvest" }, { "item": "kevlar" } ], "prob": 15 }, -+ { "group": "socks_unisex" }, -+ { "group": "cop_gloves", "prob": 20 }, -+ { "distribution": [ { "item": "bandana" }, { "group": "cop_helmet" } ], "prob": 50 }, -+ { "group": "clothing_glasses", "prob": 20 }, -+ { "group": "clothing_watch", "prob": 20 }, -+ { "item": "police_belt", "prob": 20 } -+ ] -+ }, -+ { -+ "type": "item_group", -+ "id": "NC_THUG_PRISONER_wield", -+ "items": [ -+ [ "baton-extended", 50 ], -+ [ "PR24-retracted", 50 ], -+ [ "knife_steak", 30 ], -+ [ "knife_chef", 30 ], -+ [ "knife_paring", 30 ], -+ [ "knife_butcher", 30 ], -+ [ "knife_meat_cleaver", 30 ], -+ [ "knife_carving", 30 ], -+ [ "pointy_stick", 30 ], -+ [ "cudgel", 20 ], -+ [ "knuckle_nail", 20 ], -+ [ "spear_spike", 20 ], -+ [ "spear_knife", 15 ], -+ [ "makeshift_sap", 15 ], -+ [ "homewrecker", 15 ], -+ [ "makeshift_knife", 15 ], -+ [ "nailboard", 15 ], -+ [ "sword_wood", 10 ], -+ [ "glass_shiv", 5 ], -+ [ "rock_sock", 5 ], -+ [ "sharp_toothbrush", 5 ], -+ [ "chisel", 5 ], -+ [ "scissors", 5 ], -+ [ "screwdriver", 5 ], -+ [ "knife_steak", 5 ], -+ [ "knuckle_brass", 5 ], -+ [ "switchblade", 5 ], -+ [ "throwing_knife", 5 ], -+ { "group": "guns_cop", "prob": 50 } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_GENERIC", -+ "type": "talk_topic", -+ "dynamic_line": "<get_lost>", -+ "responses": [ -+ { "text": "Ok, sorry, I'm already leaving!", "topic": "TALK_DONE" }, -+ { "text": "Hey, <fuck_you>!", "topic": "TALK_DONE", "effect": "hostile" } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_GREET", -+ "type": "talk_topic", -+ "dynamic_line": { -+ "u_has_var": "first_meeting", -+ "type": "dialogue", -+ "context": "first_meeting", -+ "value": "yes", -+ "no": "Hey, who the fuck are you? I haven't seen you 'round. Ah, fuck it, it doesn't matter.\nHere's the rules. The first and most important one: ALWAYS CLOSE THE FUCKING ENTRY DOOR BEHIND YOUR ASS! If you're okay with that, the following rules are: don't fuck with us, don't steal from us, don't start a fight without a reason with someone from us. Got it, punk? Now get lost.", -+ "yes": "<get_lost>" -+ }, -+ "speaker_effect": { "effect": { "u_add_var": "first_meeting", "type": "dialogue", "context": "first_meeting", "value": "yes" } }, -+ "responses": [ -+ { -+ "text": "Yeah, I got it. See ya.", -+ "topic": "TALK_DONE", -+ "condition": { "not": { "u_has_var": "first_meeting", "type": "dialogue", "context": "first_meeting", "value": "yes" } } -+ }, -+ { -+ "text": "I just wanted to ask if you have a job for me.", -+ "topic": "TALK_PRISONER_ANNOYED", -+ "condition": { -+ "and": [ -+ { "u_has_var": "first_meeting", "type": "dialogue", "context": "first_meeting", "value": "yes" }, -+ { -+ "not": { "u_has_var": "talked_to_greeter", "type": "dialogue", "context": "annoyed_greeter", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "I'm just hungry, and I thought you might give me some food for some job.", -+ "topic": "TALK_PRISONER_ANGRY", -+ "condition": { -+ "and": [ -+ { "u_has_var": "first_meeting", "type": "dialogue", "context": "first_meeting", "value": "yes" }, -+ { "u_has_var": "talked_to_greeter", "type": "dialogue", "context": "annoyed_greeter", "value": "yes" }, -+ { -+ "not": { "u_has_var": "talked_to_greeter", "type": "dialogue", "context": "angry_greeter", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "Can we just talk it over?", -+ "topic": "TALK_PRISONER_READY_TO_MUG", -+ "condition": { -+ "and": [ -+ { "u_has_var": "first_meeting", "type": "dialogue", "context": "first_meeting", "value": "yes" }, -+ { "u_has_var": "talked_to_greeter", "type": "dialogue", "context": "angry_greeter", "value": "yes" } -+ ] -+ } -+ }, -+ { "text": "Hey, <fuck_you>!", "topic": "TALK_DONE", "effect": "hostile" } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_ANNOYED", -+ "type": "talk_topic", -+ "dynamic_line": { -+ "u_has_var": "talked_to_greeter", -+ "type": "dialogue", -+ "context": "annoyed_greeter", -+ "value": "yes", -+ "no": "Do I have a <swear> exclamation sign over my <swear> head, like I'm a <swear> quest-giver from some <swear> video game?", -+ "yes": "<get_lost>" -+ }, -+ "speaker_effect": { "effect": { "u_add_var": "talked_to_greeter", "type": "dialogue", "context": "annoyed_greeter", "value": "yes" } }, -+ "responses": [ -+ { -+ "text": "No, of course not! Sorry, I'm leaving.", -+ "topic": "TALK_DONE", -+ "condition": { "not": { "u_has_var": "talked_to_greeter", "type": "dialogue", "context": "annoyed_greeter", "value": "yes" } } -+ }, -+ { "text": "Hey, <fuck_you>!", "topic": "TALK_DONE", "effect": "hostile" } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_ANGRY", -+ "type": "talk_topic", -+ "dynamic_line": { -+ "u_has_var": "talked_to_greeter", -+ "type": "dialogue", -+ "context": "annoyed_greeter", -+ "value": "yes", -+ "no": "<get_lost>", -+ "yes": "Are you deaf or stupid? I said I don't give a fuck for you and your <swear> problems. Bother me one more time, and you'll regret that. <get_lost>" -+ }, -+ "speaker_effect": { "effect": { "u_add_var": "talked_to_greeter", "type": "dialogue", "context": "angry_greeter", "value": "yes" } }, -+ "responses": [ -+ { -+ "text": "Ok, sorry, I promise I won't bother you anymore.", -+ "topic": "TALK_DONE", -+ "condition": { "not": { "u_has_var": "talked_to_greeter", "type": "dialogue", "context": "angry_greeter", "value": "yes" } } -+ }, -+ { "text": "Hey, <fuck_you>!", "topic": "TALK_DONE", "effect": "hostile" } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_READY_TO_MUG", -+ "type": "talk_topic", -+ "dynamic_line": "You think you're immortal, huh, <name_b>?", -+ "responses": [ -+ { "text": "Gee, what's the matter with you? Okay, okay, I'm leaving.", "topic": "TALK_PRISONER_MUG" }, -+ { -+ "text": "It would be you who will regret talking to me like that.", -+ "topic": "TALK_DONE", -+ "effect": "hostile" -+ } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_MUG", -+ "type": "talk_topic", -+ "dynamic_line": [ "Not so fast, I think you need to pay for breaking your promise and bothering me. Give me your shit, now!" ], -+ "responses": [ -+ { "text": "Please don't hurt me! Take all that you want.", "topic": "TALK_MUG" }, -+ { "text": "What, <no>!", "topic": "TALK_DONE", "effect": "hostile" } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_GREET", -+ "type": "talk_topic", -+ "dynamic_line": { -+ "u_has_var": "prisoner_leader_mission", -+ "type": "mission", -+ "context": "military_id", -+ "value": "yes", -+ "yes": "I have nothing more to say to you. <get_lost>", -+ "no": { -+ "u_has_var": "prisoner_leader_mission", -+ "type": "mission", -+ "context": "accepted", -+ "value": "yes", -+ "yes": "So, what are you waiting for?", -+ "no": { -+ "u_has_var": "prisoner_leader_mission", -+ "type": "mission", -+ "context": "completed", -+ "value": "yes", -+ "yes": "I don't know if you know, but there are sewers underneath the prison. I was planning an escape long before <the_cataclysm>, and while I was working on cleaning the sewers, I noticed a damaged wall section. There was a flow of fresh air coming out of it, so I think it's leading to the surface. It could be your way to freedom. Feel free to use it.", -+ "no": { -+ "u_has_var": "talked_to_leader", -+ "type": "dialogue", -+ "context": "first_meeting", -+ "value": "yes", -+ "yes": { -+ "u_has_var": "talked_to_leader", -+ "type": "dialogue", -+ "context": "cannibal", -+ "value": "yes", -+ "no": "It's you again.", -+ "yes": "You are what you eat, as they say." -+ }, -+ "no": "Hello there. Haven't seen you around before. You must be from the other wing. Managed to survive, huh?" -+ } -+ } -+ } -+ }, -+ "speaker_effect": { "effect": { "u_add_var": "talked_to_leader", "type": "dialogue", "context": "first_meeting", "value": "yes" } }, -+ "responses": [ -+ { -+ "text": "Yeah, I've been through situations far worse than that.", -+ "topic": "TALK_PRISONER_LEADER_INQUIRY", -+ "condition": { -+ "and": [ -+ { "not": { "u_has_var": "talked_to_leader", "type": "dialogue", "context": "first_meeting", "value": "yes" } }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "completed", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "It was a nightmare, lots of <zombies>, blood everywhere! Thank god I'm among living people again.", -+ "topic": "TALK_PRISONER_LEADER_FROWN", -+ "condition": { -+ "and": [ -+ { "not": { "u_has_var": "talked_to_leader", "type": "dialogue", "context": "first_meeting", "value": "yes" } }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "completed", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "[Cannibal] It's hard to die of hunger when there's so many tasty corpses lying around.", -+ "topic": "TALK_PRISONER_LEADER_LEARNED_ABOUT_CANNIBAL", -+ "condition": { -+ "and": [ -+ { "u_has_trait": "CANNIBAL" }, -+ { -+ "not": { "u_has_var": "talked_to_leader", "type": "dialogue", "context": "first_meeting", "value": "yes" } -+ }, -+ { "not": { "u_has_var": "talked_to_leader", "type": "dialogue", "context": "cannibal", "value": "yes" } }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "completed", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "I want to get out of this <swear> prison. I hoped you could help me with that.", -+ "topic": "TALK_PRISONER_LEADER_GIVES_WORK", -+ "condition": { -+ "and": [ -+ { "u_has_var": "talked_to_leader", "type": "dialogue", "context": "first_meeting", "value": "yes" }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "accepted", "value": "yes" } -+ }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "completed", "value": "yes" } -+ }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "military_id", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "I'm on my way.", -+ "topic": "TALK_DONE", -+ "condition": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "accepted", "value": "yes" } -+ }, -+ { -+ "text": "I don't know if I'll take your advice, but thanks nevertheless.", -+ "topic": "TALK_DONE", -+ "condition": { -+ "and": [ -+ { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "completed", "value": "yes" }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "military_id", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "Wait, what? A <swear> can of beans?! I went through hell to get this <swear> thing for you, and all you give me as reward is a <swear> can of beans?! I demand something more substantial.", -+ "topic": "TALK_PRISONER_LEADER_DEMANDED_SUBSTANTIAL_REWARD", -+ "condition": { -+ "and": [ -+ { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "completed", "value": "yes" }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "military_id", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "Nice talking to ya. Farewell.", -+ "topic": "TALK_DONE", -+ "condition": { -+ "and": [ -+ { "u_has_var": "talked_to_leader", "type": "dialogue", "context": "first_meeting", "value": "yes" }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "accepted", "value": "yes" } -+ }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "completed", "value": "yes" } -+ }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "military_id", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "Okay.", -+ "topic": "TALK_DONE", -+ "condition": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "military_id", "value": "yes" } -+ } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_LEARNED_ABOUT_CANNIBAL", -+ "type": "talk_topic", -+ "dynamic_line": [ -+ "Huh, even so? I'm not saying I approve your… tastes, but I definitely respect people who use all possibilities life has to offer." -+ ], -+ "speaker_effect": { "effect": { "u_add_var": "talked_to_leader", "type": "dialogue", "context": "cannibal", "value": "yes" } }, -+ "responses": [ { "text": "Yeah, we share the same opinions on this matter.", "topic": "TALK_NONE" } ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_INQUIRY", -+ "type": "talk_topic", -+ "dynamic_line": [ -+ "Well, that's a boastful statement. Not that I don't believe it, it's just…. Ah, nevermind. Let's get to the point. What do you want?" -+ ], -+ "responses": [ -+ { -+ "text": "I want to get out of this <swear> prison. I hoped you could help me with that.", -+ "topic": "TALK_PRISONER_LEADER_GIVES_WORK" -+ } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_FROWN", -+ "type": "talk_topic", -+ "dynamic_line": [ "Hold the horses, pal. Nobody allowed you to stay here - yet." ], -+ "responses": [ -+ { -+ "text": "Please! I don't want to go back there! I'm tired and hungry! I just need time to rest!", -+ "topic": "TALK_PRISONER_LEADER_ANNOYED" -+ }, -+ { "text": "Shit! Looks like I'm on my own now. Thanks for nothing. Bye.", "topic": "TALK_DONE" } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_ANNOYED", -+ "type": "talk_topic", -+ "dynamic_line": [ -+ "We don't have much space, and there's not much food. Besides, I don't know you at all, and something tells me you won't survive another day." -+ ], -+ "responses": [ -+ { -+ "text": "[STR 11] I'm tougher than it seems!", -+ "topic": "TALK_PRISONER_LEADER_NO", -+ "condition": { "u_has_strength": 11 } -+ }, -+ { -+ "text": "[Survival 2] I have some survival expertise!", -+ "topic": "TALK_PRISONER_LEADER_NO", -+ "condition": { "u_has_skill": { "skill": "survival", "level": 2 } } -+ }, -+ { "text": "I guess I need to find some other place…", "topic": "TALK_DONE" } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_NO", -+ "type": "talk_topic", -+ "dynamic_line": [ -+ "The answer is still no. In fact it might be better for us to kill you right away - you know, the less mouths to feed, the better. But I'm in a good mood today, so I've decided to help you get out of this island." -+ ], -+ "responses": [ -+ { "text": "Ok, I'm listening.", "topic": "TALK_PRISONER_LEADER_GIVES_WORK" }, -+ { "text": "You know, I think I'll manage without your help. Bye.", "topic": "TALK_DONE" } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_GIVES_WORK", -+ "type": "talk_topic", -+ "dynamic_line": { -+ "u_has_var": "prisoner_leader_mission", -+ "type": "mission", -+ "context": "accepted", -+ "value": "yes", -+ "no": "I need you to retrieve some stuff from a locked safe. Interested?", -+ "yes": "So, what are you waiting for?" -+ }, -+ "responses": [ -+ { -+ "text": "[Show the military id card] You mean this stuff?", -+ "topic": "TALK_PRISONER_LEADER_SHOW_MILITARY_ID", -+ "condition": { -+ "and": [ -+ { "u_has_item": "id_military" }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "accepted", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "What's in the safe?", -+ "topic": "TALK_PRISONER_LEADER_ASKED_ABOUT_SAFE_CONTENTS", -+ "condition": { -+ "and": [ -+ { "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "military_id", "value": "yes" } }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "accepted", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "What for do you need it?", -+ "topic": "TALK_PRISONER_LEADER_ASKED_ABOUT_WHAT_FOR_DO_YOU_NEED_IT", -+ "condition": { -+ "and": [ -+ { "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "military_id", "value": "yes" } }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "accepted", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "Yeah, sure.", -+ "topic": "TALK_MISSION_OFFER", -+ "condition": { -+ "and": [ -+ { "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "military_id", "value": "yes" } }, -+ { -+ "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "accepted", "value": "yes" } -+ } -+ ] -+ } -+ }, -+ { -+ "text": "I have a bad feeling about this. Sorry, I'll pass.", -+ "topic": "TALK_DONE", -+ "condition": { "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "accepted", "value": "yes" } } -+ }, -+ { -+ "text": "I'm on my way.", -+ "topic": "TALK_DONE", -+ "condition": { -+ "and": [ -+ { "not": { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "military_id", "value": "yes" } }, -+ { "u_has_var": "prisoner_leader_mission", "type": "mission", "context": "accepted", "value": "yes" } -+ ] -+ } -+ } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_ASKED_ABOUT_SAFE_CONTENTS", -+ "type": "talk_topic", -+ "dynamic_line": [ -+ "As I said, that's the thing I need. You don't need to know what's that exactly. Just grab all things you find in the safe, and call it a day." -+ ], -+ "responses": [ -+ { "text": "That's weird.", "topic": "TALK_NONE" }, -+ { "text": "I have a bad feeling about this. Sorry, I'll pass.", "topic": "TALK_DONE" } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_ASKED_ABOUT_WHAT_FOR_DO_YOU_NEED_IT", -+ "type": "talk_topic", -+ "dynamic_line": [ "Let's say that's none of your <swear> business. Other questions?" ], -+ "responses": [ -+ { "text": "That's weird.", "topic": "TALK_NONE" }, -+ { "text": "I have a bad feeling about this. Sorry, I'll pass.", "topic": "TALK_DONE" } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_SHOW_MILITARY_ID", -+ "type": "talk_topic", -+ "speaker_effect": { "effect": { "u_add_var": "prisoner_leader_mission", "type": "mission", "context": "military_id", "value": "yes" } }, -+ "dynamic_line": [ "Hey, where did you get it? Nevermind, just give it to me. Just <swear> now." ], -+ "responses": [ -+ { -+ "text": "Hey, no need to be hostile. Here you go, I don't need it anyway.", -+ "topic": "TALK_DONE", -+ "effect": { "u_sell_item": "id_military" } -+ }, -+ { -+ "text": "I went through incredible hardships to get it. Please, can I keep this to myself?", -+ "trial": { "type": "PERSUADE", "difficulty": 5, "mod": [ [ "ALTRUISM", 3 ], [ "TRUST", 1 ] ] }, -+ "failure": { "topic": "TALK_DONE", "effect": "hostile" }, -+ "success": { "topic": "TALK_PRISONER_LEADER_TRIAL_SUCCESS" } -+ }, -+ { -+ "text": "I killed tons of <zombies> while I was trying to get this thing. Do you really think you and your handful of losers pose a threat to me?", -+ "trial": { "type": "INTIMIDATE", "difficulty": 30, "mod": [ [ "BRAVERY", -1 ], [ "FEAR", 3 ] ] }, -+ "failure": { "topic": "TALK_DONE", "effect": "hostile" }, -+ "success": { "topic": "TALK_PRISONER_LEADER_TRIAL_SUCCESS" } -+ }, -+ { "text": "What, <no>!", "topic": "TALK_DONE", "effect": "hostile" } -+ ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_TRIAL_SUCCESS", -+ "type": "talk_topic", -+ "dynamic_line": [ -+ "Okay. It was convincing. I'll still get what I want, one way or another. You better watch your back from now on." -+ ], -+ "responses": [ { "text": "Noted. Bye.", "topic": "TALK_DONE" } ] -+ }, -+ { -+ "id": "TALK_PRISONER_LEADER_DEMANDED_SUBSTANTIAL_REWARD", -+ "type": "talk_topic", -+ "speaker_effect": { "effect": { "u_add_var": "prisoner_leader_mission", "type": "mission", "context": "military_id", "value": "yes" } }, -+ "dynamic_line": [ "I'm afraid you're not in the position to demand anything from me, <name_b>. <get_lost>" ], -+ "responses": [ -+ { "text": "Hey, <fuck_you>! You'll regret that!", "topic": "TALK_DONE", "effect": "hostile" }, -+ { "text": "Okay, fine. Cheapskate!", "topic": "TALK_DONE" } -+ ] -+ }, -+ { -+ "id": "MISSION_PRISONER_LEADER_GET_ID_CARD", -+ "type": "mission_definition", -+ "name": { "str": "Get The Thing from the chief's office" }, -+ "difficulty": 1, -+ "value": 0, -+ "goal": "MGOAL_FIND_ITEM", -+ "item": "id_military", -+ "origins": [ "ORIGIN_SECONDARY" ], -+ "dialogue": { -+ "describe": "Here's the job…", -+ "offer": "My snitch whispered in my ear that the thing I need is located in the chief's safe in his office. You need to crack it open and bring the contents to me. Don't try to use anything you find in there! Just bring all the stuff to me, and I'll help you. Deal?", -+ "accepted": "Great! Don't forget that I need all stuff from the safe, try not to lose a thing.", -+ "rejected": "Fine, I'll get the thing in any case, sooner or later.", -+ "advice": "The chief's office is on the other side of the prison. I think the road there is full of <zombies>, so you better find a weapon. Also you probably will need some tools to crack the safe open.", -+ "inquire": "Did you get the stuff already?", -+ "success": "At last! Give me a few moments to check if it isn't damaged. Here, take this for your troubles.", -+ "success_lie": "Huh. This isn't going to work like I thought.", -+ "failure": "You're useless. I should've killed you when I met you." -+ }, -+ "has_generic_rewards": false, -+ "start": { "effect": [ { "u_add_var": "prisoner_leader_mission", "type": "mission", "context": "accepted", "value": "yes" } ] }, -+ "end": { -+ "effect": [ -+ { "u_add_var": "prisoner_leader_mission", "type": "mission", "context": "completed", "value": "yes" }, -+ { "u_lose_var": "prisoner_leader_mission", "type": "mission", "context": "accepted" }, -+ { "u_buy_item": "can_beans", "container": "can_medium" } -+ ] -+ } -+ } -+] ---- a/data/json/monsters/zed_prisoner.json -+++ b/data/json/monsters/zed_prisoner.json -@@ -10,5 +10,32 @@ - "color": "green", - "melee_dice_sides": 4, - "death_drops": "mon_zombie_prisoner_death_drops" -+ }, -+ { -+ "id": "mon_zombie_prisoner_brute", -+ "type": "MONSTER", -+ "name": { "str": "prisoner brute" }, -+ "description": "This muscular zombie wears black and white striped prisoner clothes.", -+ "copy-from": "mon_zombie_brute", -+ "looks_like": "mon_zombie_brute", -+ "death_drops": "mon_zombie_prisoner_death_drops" -+ }, -+ { -+ "id": "mon_zombie_prisoner_fat", -+ "type": "MONSTER", -+ "name": { "str": "fat prisoner" }, -+ "description": "This fat zombie wears black and white striped prisoner clothes.", -+ "copy-from": "mon_zombie_fat", -+ "looks_like": "mon_zombie_fat", -+ "death_drops": "mon_zombie_prisoner_death_drops" -+ }, -+ { -+ "id": "mon_zombie_prisoner_tough", -+ "type": "MONSTER", -+ "name": { "str": "tough prisoner" }, -+ "description": "This tough-looking zombie wears black and white striped prisoner clothes.", -+ "copy-from": "mon_zombie_tough", -+ "looks_like": "mon_zombie_tough", -+ "death_drops": "mon_zombie_prisoner_death_drops" - } - ] ---- a/data/json/mapgen/prison_1.json -+++ b/data/json/mapgen/prison_1.json -@@ -25,12 +25,12 @@ - " s_____________________________________s+,,,,d,|--------+---|G|h|h|h|h| ", - " s_____________________________________s+,,,,dh|S,T|l,,,,,+<|,|g|g|g|g| ", - " s_____________________________________s|hhh,,,+,,,|l,,,,,--|,|h|h|h|h| ", -- " s____Y____Y____Y____Y____Y____Y_______s|------|---|l,3333,l|,|,,,,,,,| ", -+ " s____Y____Y____Y____Y____Y____Y_______s|------|---|l,5555,l|,|,,,,,,,| ", - " s____Y____Y____Y____Y____Y____Y_______s|,,,,,,,,,,|l,,,,,,l|G|------G| ", -- " s____Y____Y____Y____Y____Y____Y_______s@,,,,,,,,d,|l,3333,l|,,,,,,,|,| ", -+ " s____Y____Y____Y____Y____Y____Y_______s@,,,,,,,,d,|l,5555,l|,,,,,,,|,| ", - " s____Y____Y____Y____Y____Y____Y_______s@,,,,,,,,dh|l,,,,,,l|hth,hth|,| ", -- " s____Y____Y____Y____Y____Y____Y_______s|,,,,,,,,d,|l,3333,l|hth,hth|,| ", -- " sssssssssssssssssssssssssssssssssssssss|33333,,,,,|l,,,,,,l|,,,,,,,|,| ", -+ " s____Y____Y____Y____Y____Y____Y_______s|,,,,,,,,d,|l,5555,l|hth,hth|,| ", -+ " sssssssssssssssssssssssssssssssssssssss|55555,,,,,|l,,,,,,l|,,,,,,,|,| ", - " |---------------------------------------------@@-------@-----R-G-R--G| ", - " | f ss f s s s| ", - " | sssssssssssssssssssssssssssssssssHssssHsssssssssssssssssss| ", -@@ -168,9 +168,20 @@ - "^": "t_concrete", - "P": "t_concrete", - "Y": "t_pavement_y", -+ "C": "t_floor", -+ "L": "t_floor", -+ "5": "t_floor", - "Z": "t_door_bar_o" - }, -- "furniture": { "X": "f_exercise", "C": "f_counter", "P": "f_rack", "2": "f_home_furnace", "4": "f_water_heater", "L": "f_locker" }, -+ "furniture": { -+ "X": "f_exercise", -+ "C": "f_counter", -+ "5": "f_bench", -+ "P": "f_rack", -+ "2": "f_home_furnace", -+ "4": "f_water_heater", -+ "L": "f_locker" -+ }, - "items": { - "l": [ - { "item": "prison_weapons", "chance": 30 }, -@@ -465,7 +476,14 @@ - ], - "?": { "item": "autodoc_supplies", "chance": 100 } - }, -- "monster": { "Z": { "monster": "mon_zombie_prisoner" }, "C": { "monster": "mon_broken_cyborg" } } -+ "monster": { -+ "Z": [ -+ { "monster": "mon_zombie_prisoner" }, -+ { "monster": "mon_zombie_prisoner_fat" }, -+ { "monster": "mon_zombie_prisoner_tough" } -+ ], -+ "C": { "monster": "mon_broken_cyborg" } -+ } - } - }, - { -@@ -602,7 +620,6 @@ - "L": [ "t_floor" ], - "M": [ "t_floor" ], - "N": [ "t_floor" ], -- "O": [ "t_floor" ], - "P": [ "t_floor" ], - "Q": [ "t_floor" ], - "R": [ "t_floor" ], -@@ -628,7 +645,6 @@ - "L": [ "f_drill_press" ], - "M": [ "f_heavy_lathe" ], - "N": [ "f_utility_shelf" ], -- "O": [ "f_shredder" ], - "P": [ "f_workbench" ], - "Q": [ "f_cupboard" ], - "R": [ "f_locker" ], -@@ -663,7 +679,7 @@ - "U": { "item": "prison_canine_bowl", "chance": 70 }, - "Y": { "item": "clothing_outdoor_torso", "chance": 60 }, - "q": { "item": "trash_cart", "chance": 50, "repeat": [ 2, 3 ] }, -- "n": { "item": "oven", "chance": 70 }, -+ "n": { "item": "SUS_oven", "chance": 70 }, - "r": { "item": "cleaning", "chance": 50 }, - ":": { "item": "animalshelter_toys", "chance": 5 }, - "1": { "item": "office_paper", "chance": 50 }, -@@ -672,19 +688,39 @@ - "2": [ { "item": "cannedfood", "chance": 70, "repeat": [ 1, 3 ] }, { "item": "pasta", "chance": 70, "repeat": [ 1, 3 ] } ] - }, - "monster": { -- ",": [ { "monster": "mon_zombie_cop", "chance": 1 }, { "monster": "mon_zombie_prisoner", "chance": 2 } ], -- "_": [ { "monster": "mon_zombie_cop", "chance": 1 }, { "monster": "mon_zombie_prisoner", "chance": 2 } ], -- "(": [ { "monster": "mon_zombie_cop", "chance": 1 }, { "monster": "mon_zombie_prisoner", "chance": 2 } ], -- "#": [ { "monster": "mon_zombie_cop", "chance": 1 }, { "monster": "mon_zombie_prisoner", "chance": 2 } ], -+ ",": [ -+ { "monster": "mon_zombie_cop", "chance": 1 }, -+ { "monster": "mon_zombie_prisoner", "chance": 2 }, -+ { "monster": "mon_zombie_prisoner_fat", "chance": 2 }, -+ { "monster": "mon_zombie_prisoner_tough", "chance": 2 } -+ ], -+ "_": [ -+ { "monster": "mon_zombie_cop", "chance": 1 }, -+ { "monster": "mon_zombie_prisoner", "chance": 2 }, -+ { "monster": "mon_zombie_prisoner_fat", "chance": 2 }, -+ { "monster": "mon_zombie_prisoner_tough", "chance": 2 } -+ ], -+ "(": [ -+ { "monster": "mon_zombie_cop", "chance": 1 }, -+ { "monster": "mon_zombie_prisoner", "chance": 2 }, -+ { "monster": "mon_zombie_prisoner_fat", "chance": 2 }, -+ { "monster": "mon_zombie_prisoner_tough", "chance": 2 } -+ ], -+ "#": [ -+ { "monster": "mon_zombie_cop", "chance": 1 }, -+ { "monster": "mon_zombie_prisoner", "chance": 2 }, -+ { "monster": "mon_zombie_prisoner_fat", "chance": 2 }, -+ { "monster": "mon_zombie_prisoner_tough", "chance": 2 } -+ ], - "`": { "monster": "mon_zhark", "chance": 1 }, - ".": { "monster": "mon_zombie_cop", "chance": 1 }, -- "^": { "monster": "mon_zombie_brute", "chance": 1 }, -+ "^": { "monster": "mon_zombie_prisoner_brute", "chance": 1 }, - " ": { "monster": "mon_dog_zombie_cop", "chance": 1 }, - "U": { "monster": "mon_dog_gshepherd", "chance": 10 }, - ":": { "monster": "mon_dog_gshepherd", "chance": 1 }, - "<": { "monster": "mon_turret_riot" } - }, -- "place_monster": [ { "monster": "mon_zombie_hulk", "x": 45, "y": 3 }, { "monster": "mon_zombie_brute", "x": 60, "y": 56 } ], -+ "place_monster": [ { "monster": "mon_zombie_hulk", "x": 45, "y": 3 }, { "monster": "mon_zombie_prisoner_brute", "x": 60, "y": 56 } ], - "place_graffiti": [ { "text": "Dufresne was here", "x": 19, "y": 22 } ], - "computers": { - "a": { -@@ -740,7 +776,7 @@ - " ", - " ", - " ", -- " 54444444444444444445 54444444444444444444444444445 ", -+ " Ю444444444444444444Ю Ю444444444444444444444444444Ю ", - " 1..................1 1...........................1 ", - " 1..................1 1...........................1 ", - " 1..................1 1...........................1 ", -@@ -757,7 +793,7 @@ - " wdh,,qw(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((wq,,hdw ", - " |-w+w-| |-w+w-| ", - " (^( (^( ", -- " (^( 5444444444444444444444444444444444444444444444444444444444444444444444445 (^( ", -+ " (^( Ю44444444444444444444444444444444444444444444444444444444444444444444444Ю (^( ", - " (^( 1.......................................................................1 (^( ", - " (^( 1.......................................................................1 (^( ", - " (^( 1.......................................................................1 (^( ", -@@ -783,10 +819,10 @@ - " (^( 1.......................1 1...............................1 (^( ", - " (^( 1.......................1 1...............................1 (^( ", - " (^( 1.......................1 1...............................1 (^( ", -- " (^( 54444444444441..........1 1...............................1 (^( ", -+ " (^( Ю4444444444441..........1 1...............................1 (^( ", - " (^( 1 1..........1 1...............................1 (^( ", - " (^( 1 1..........1 1...............................1 (^( ", -- " (^( 1444444444444444444444445444444444444444544444444444444444444444444444445 (^( ", -+ " (^( 144444444444444444444444Ю444444444444444Ю4444444444444444444444444444444Ю (^( ", - " (^( (^( ", - " |-w+w-| |-w+w-| ", - " wdh,,qw(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((wq,,hdw ", -@@ -806,7 +842,7 @@ - "^": [ "t_concrete" ], - "1": [ "t_gutter_north" ], - "4": [ "t_gutter_west" ], -- "5": [ "t_gutter_drop" ], -+ "Ю": [ "t_gutter_drop" ], - "q": [ "t_floor" ] - }, - "furniture": { "q": [ "f_locker" ] }, -@@ -816,6 +852,682 @@ - } - }, - { -+ "type": "mapgen", -+ "method": "json", -+ "om_terrain": [ -+ [ "prison_island_1_1", "prison_island_1_2", "prison_island_1_3", "prison_island_1_4", "prison_island_1_5" ], -+ [ "prison_island_1_6", "prison_island_1_7", "prison_island_1_8", "prison_island_1_9", "prison_island_1_10" ], -+ [ "prison_island_1_11", "prison_island_1_12", "prison_island_1_13", "prison_island_1_14", "prison_island_1_15" ] -+ ], -+ "object": { -+ "faction_owner": [ { "id": "prisoners", "x": [ 5, 18 ], "y": [ 33, 47 ] }, { "id": "prisoners", "x": [ 5, 18 ], "y": [ 48, 56 ] } ], -+ "fill_ter": "t_region_groundcover_barren", -+ "rows": [ -+ "````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````", -+ "````````````###*********````````````````№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№````````````````````", -+ "```````*****###****#¦***```````````````№№''''''''''''''''''''''''''''''''''''''''''''''''''''''''''№````````````````````", -+ "``******###***##***#****``````````````№№'' |----------| '№№№№№'№````````````````````", -+ "``*####*###***##***#******####```````№№'' |7Б7Б77Б7Б7| '№..>№'№````````````````````", -+ "***########******###******######````№№'' |7Б7Б77Б7Б7| '№...№'№````````````````````", -+ "*#############*###################`№№'' |7ББББББББ7| '№№@№№'№````````````````````", -+ "*№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№'' |----?-----| '''''''№````````````````````", -+ "*№''''''''''''''''''''''''''''''''''' /|,,,,,,,,,,| ' №````````````````````", -+ "*№'№№№№№' |--g--|XXX,,,3333|/ ' №````````````````````", -+ "*№'№>пп№' |-----------------------------|,,,,,|----?-----|--------------------------| ' №````````````````````", -+ "*№'№ппп№' |bo|bo|bo|bo|bo|bo|bo|bo|bo|bo|,,,,,,,,,,,,,,,,|bo|bo|bo|bo|bo|bo|bo|bo|b<| ' №````````````````````", -+ "`№'№№@№№' |b,|b,|b,|b,|b,|b,|b,|b,|b,|b,|,,,,,,,,,,,,,,,,|b,|b,|b,|b,|b,|b,|b,|b,|b,| ' №````````````````````", -+ "`№''''''' |T,|T,|T,|T,|T,|T,|T,|T,|T,|T,|,,,|---@----|,,,|T,|T,|T,|T,|T,|T,|T,|T,|T,| ' №````````````````````", -+ "`№'' |-G|-G|-G|-G|-G|-G|-G|-G|-G|-G|,,,|h...Y.А%|,,,|-G|-G|-G|-G|-G|-G|-G|-G|-G| ' №````````````````````", -+ "`№'' |,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,,|dd.....1|,,,|,,,,,,,,,,,,,,,,,,,,,,,,,,| ' №````````````````````", -+ "`№'' |,,,,,,,,,,,,,,,,,,,,,,,,,,,,,B,,,|.......1|,,,B,,,,,,,,,,,,,,,,,,,,,,,,,,| ' №````````````````````", -+ "`№'' g,,,3333,,,3333,,,3333,,,3333,G,,,|dh.11..6|,,,G,3333,,,3333,,,3333,,,3333g ' №````````````````````", -+ "`№'' |,,,,,,,,,,,,,,,,,,,,,,,,,,,,,B,,,|d..66...|,,,B,,,,,,,,,,,,,,,,,,,,,,,,,,| ' №````````````````````", -+ "`№'' |,,,,,,,,,,,,,,,,,,,,,,,,,,,,,|,,,|6h..h..6|,,,|,,,,,,,,,,,,,,,,,,,,,,,,,,| ' №````````````````````", -+ "`№'' |-G|-G|-G|-G|-G|-G|-G|-G|-G|-G|,,,|6.....h6|,,,|-G|-G|-G|-G|-G|-G|-G|-G|-G| ' №````````````````````", -+ "`№'' |T,|T,|T,|T,|T,|T,|T,|T,|T,|T,|,,,|--------|,,,|T,|T,|T,|T,|T,|T,|T,|T,|T,| ' №````````````````````", -+ "`№'' |b,|b,|b,|b,|b,|b,|b,|b,|b,|b,|,,,,,,,,,,,,,,,,|b,|b,|b,|b,|b,|b,|b,|b,|b,| ' №````````````````````", -+ "`№'' |bo|bo|bo|bo|bo|bo|bo|bo|bo|bo|,,,,,,,,,,,,,,,,|bo|bo|bo|bo|bo|bo|bo|bo|bo| ' №````````````````````", -+ "`№'' |-----------------------------|,,,,,,,,,,,,,,,,|-----------|--------------| ' №````````````````````", -+ "`№'' B^^^^^^^^^^^^^^^^^^^^^^^^^^^^^|------BGGB------|,,,,,,,,,,,|Н,,,,,,?¡¡¡¡¡¿B ' №````````````````````", -+ "`№'' B^E^^^888^^^E^^^^^^^^^^^^^^^^^^|bbT|,,,,,,|Tbb|L,,,P,,P,,,M|dh,,,,н|-?|¡¡¿B ' №````````````````````", -+ "`№'' B^^^^^^^^^^^^^^^^^^^^^^^^^^^^^8|o,,G,,,,,,G,,o|,,,,P,,P,,,,|---?---|О,|¡¡¿B ' №````````````````````", -+ "`№'' B^E^^^888^^^E^^^^^^^^^^^^^^^^^8|---|,,3,,,|---|L,,,P,,P,,,M|,,,,,,,|--|-----|-| ' №````````````````````", -+ "`№'' B^^^^^^^^^^^^^^^^^^^^^^^^^^^^^8|bbT|,,3,,,|Tbb|,,,,P,,P,,,,|,,ttt,,|,,+,hgh,=,|/ ' №````````````````````", -+ "`№'' B^E^^^888^^^K^^^^^^^^^^^^^^^^^^|o,,G,,3,,,G,,o|L,,,P,,P,,,M|,,,,,,,|,,|-----|,|---|№№Ĝ№№````````````````````", -+ "`№'' / B^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^|---|,,3,,,|---|,,,,,,,,,,,,|333,333|,,+,hgh,=,=,,3| ' №````````````````````", -+ "`№''|-------|------|-------|))_____)_____))|bbT|,,,,,,|Tbb|lll,,,,,NNNN|,,,,,,,|,,|-----|,|,,3| ' №№```````````````````", -+ "`№''|°°°°°°°°°°°°°°|o,,T,,o|_))____)____))_|o,,G,,,,,,G,,o|---|,,,|----|333,333|,,+,hgh,=,|,,3| ' №№ZZZZZZZ!!{!!ZZZZZZ", -+ "`№''|°33333°°33333°|bb,,,bb|__))___)___))__|---|,,,,,,|---|М,ММ,,,,мммм|---?---|@-|-----|-|,,,|''''''№!!!!!!!!!!!!!!!!!Z", -+ "`№''|°uuuuu°°uuuuu°|-o,3,o-|f__)___)___)__f|bbT|,,3,,,|Tbb|М,,,,,,,,,,,|^^^^^^^^^^Ĝ,,,,,,,,,,,g''''''B!!!!!!!!!!!!!!!!!Z", -+ "`№''|°33333°°33333°|bb,3,bb|__))___)___))__|o,,G,,3,,,G,,o|М,ММ,,,,,,,,@^^^^^^^^^^Ĝ,,,,,,,,,,,@''''''Ĝ!!!!!!!!!!!!!!!!!Z", -+ "`№''|°°°°°°°°°°°°°°|-o,3,o-|_))____)____))_|---|,,3,,,|---|М,ММ,,,,,,,,|^^^^^|-gg-|------|,,,,g''''''B!!!!!!!!!!!!!!!!!Z", -+ "`№''|°°°°°°°°°°°°°°|bb,3,bb|))_____)_____))|bbT|,,3,,,|Tbb|М,,,,,,,мммм|^^^^^|hd.6|qd...o|,,,,|''''''№!!!!!!!!!!!!!!!!!Z", -+ "`№''|°33333°°33333°|-o,,,o-|^^^^^^^^^^^^^^^|o,,G,,,,,,G,,o|М,ММ,,,,,,,,|^^^^^|.d.6|hd..h.?,,,,| ' №№ZZZZZZZ!!{!!ZZZZZZ", -+ "`№''|°uuuuu°°uuu°°°|bb,,,bb|^^^^^88888^^^^-|---|-BGGB-|---|---|-?-|мммм|^^^^^@...6|......|,,,,| ' №№```````````````````", -+ "`№''|°33333°°33333°|---G---|--G--|--------|^^^^^^^^^^^^|,X|777|,,,|----|-BĜB-|Y..1|%А.11Y|,,,А| ' №````````````````````", -+ "`№''|°°°°°°°°°°°°°°|^^^^^^^^^^^^^|66666611|^^^^^^^^^^^^|,X|БББ|Л,л|йББи|^^^^^|%...|----|-|-?--|№№Ĝ№№````````````````````", -+ "`№''|°°°°°°°°°°°°°°ПØ^^^^^^^^^^^^|..h..h..|^^^^^^^^^^^^|,X|Б77|Л,л|КБББ=^^^^^|66..|Аd.1|vV...J| ' №````````````````````", -+ "`№''|°°°°°°°°°°°°°°ПØ^^^^^^^^^^^^g........@^^^^^^^^^^^^?,,?Б77|Л,л|----|^^^^^|--|?|hd.1|......g ' №±±±±±±``````````````", -+ "`№''|°°°°°°°°°°°°°°|Ø^^^^^^^^^^^^|.h,.....|^^^^^^^^^^^^|,3|БББ|Л,л|КБББ=^^^|-|А%|'|....|...t,A| ' №`````}``````````````", -+ "`№''|°33333°°°°3u3°|^^^^^^^^^^^^^|ddd66А%Y|^^|---|^^^^^|,3|777|,,,|йББи|^^^|Y...|'|A..A|A..t,A| ' №`````}``````````````", -+ "`№''|°uuuuu°°°°3u3°|^^^^^^^^^^^^^|--------|^^|%dq|^^^^^|--|---|-@-|----|^^^@....|'|A..A|A..t,A| ' №`````}``````````````", -+ "`№''|°33333°°°°3u3°|^^^^^^^^^^^^^^^^^^^^^^^^^|hd,?^^^^^^^^^^^^^^^^^^^^^^^^^|1.d.|'|....?......g ''}!!!!µ±``````````````", -+ "`№''|°°°°°°°°°°°°°°|^^^^^^^^^^^^^^^^^^^^^^^^^|,,,|^^^^^^^^^^^^^^^^^^^^^^^^^|1.dH|'|11.%|qА%ooа| ''¶±±±±±±``````````````", -+ "`№''|-------??-----|ĜĜ|------|-ĜĜ-|---?--|---|,,,|^^^^^^^^^^^^^^^^^^^^^^^^^|o.dƼ|'|----|-|----| ' №````````````````````", -+ "`№'' /|22²²ИИИИ³³©©|''||00000|^^^^|x,,,,y|,s,s,,s|^^^^^^^^^^^^^^^^^^^^^^^^^|----|''''''''|дддД| ' №````````````````````", -+ "`№'' |°°°°°°°°°°°°|''}Ĝ....0|^^^^|x,,,,y|,h,h,,h|^^^^|-@---|^^^^^^^^^^^^^^?....|-?----|'|§¢¢¢| ' №````````````````````", -+ "`№'' g§°°°nnnn°°°°@''||....0|^^^^|,,,,,,|,,,,,,,|^^^^|%...6|^^^^^^^^^^^^^^|....|¢¢¢¢¥¢|'|--?-| ' №````````````````````", -+ "`№'' g§°°°nnnn°°°°|'a||00000|^^^^|DDDWWW|,s,s,,s|^^^^|...h6|^^^^^^^^^^^^^^|ЖЖЖЖ|оЁ£|''''''В ' №````````````````````", -+ "`№'' |°°°°°°°°°°°°|---------|^^^^|-------|h,h,,h|^^^^|А1ddd|----G----|-@--|----|---|--|ГВВВВВВ ' №````````````````````", -+ "`№'' |qqИИeeИИИИSS|b|b|b|b|b|^^^^|АAAAooo|------|-G--|--|gg|bo|,,,|ob|Y..А|S44|%.dq|/ ' №````````````````````", -+ "`№''|--------------|bobobobob|^^^^|,,,,,,,H|b,T|.....|T,b| |b,G,,,G,b|........?..dHg''''''''''''' №````````````````````", -+ "`№''|U|U|U|U|З...dd|,,,,,,,,,|^^^^?,,ddd,,,|b,,G.....G,,b| |,T|,,,|T,|........|....|' |w-|w-|w-|--№````````````````````", -+ "`№''|Г|Г|Г|Г|1....h|T,,3333,,G^^^^|%,,h,,,H|---|.....|---| |--|,,,|--|=-|=-|=-|m.1-|' |CI|CI|CI|Кй№````````````````````", -+ "`№''g..............|,,,,,,,,,|^^^^|--------|b,T|.....|T,b| |bo|,,,|ob|,c|,c|,c|m.З|'' |C.|C.|C.|ББ№````````````````````", -+ "`№''|..........|-@-|,obobobob|^^^^@......d5|b,,G.....G,,b| |b,G,,,G,b|,,|,,|,,|---|' |.h|.h|.h|ББ№````````````````````", -+ "`№''|QQQRRRcccS|/''|9|b|b|b|b|^^^^|-=|Y..dH|---|.....|---| |,T|,,,|T,|bb|bb|bb|/ '' /|.d|.d|.d|Би№````````````````````", -+ "`№''|-------g--|'''|---------|-ĜĜ-|ББ|.....|b,T|.ddd.|T,b| |--|---|--|--------| '|--|+-|+-|+-|=-№````````````````````", -+ "`№'''''''В::::::'''Г'''''''''''''/|йи|11.%q|b,,G.6h..G,,b|''''''''''''''''''''''''''+..............g````````````````````", -+ "`№'№№@№№'В:::::::::В ''' |-----g--|---|-----|---|' №№@№№ |+-|+-|+-|+-|=-№````````````````````", -+ "`№'№...№'В:;;;:::::В ''''''''''''''''''''''''''''' №...№ |.d|.d|.d|.d|БЙ№````````````````````", -+ "`№'№>..№'В:::::::::В '' №..>№ |.h|.h|.h|.h|ББ№````````````````````", -+ "`№'№№№№№'ВВВВВВВВВВВ '' №№№№№ |C.|C.|C.|C.|ББ№````````````````````", -+ "`№''''''''''''''''''''''''''' |CI|CI|CI|CI|Б7№````````````````````", -+ "`№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№g№№g№№g№№g№№№№№````````````````````", -+ "````````````````````````````````````````````````````````````````````````````````````````````````````````````````````````" -+ ], -+ "palettes": [ "prison_palette" ], -+ "terrain": { -+ " ": [ -+ [ "t_region_groundcover_urban", 20 ], -+ [ "t_region_groundcover_barren", 5 ], -+ [ "t_region_shrub", 2 ], -+ [ "t_region_tree", 1 ] -+ ], -+ "-": "t_brick_wall", -+ "|": "t_brick_wall", -+ "№": "t_concrete_wall", -+ ".": [ "t_floor" ], -+ ":": [ "t_region_groundcover_barren" ], -+ "#": [ "t_sand" ], -+ "*": [ "t_region_groundcover_barren" ], -+ ";": [ "t_trunk" ], -+ "/": [ "t_gutter_downspout" ], -+ "<": [ "t_slope_down" ], -+ "¦": [ "t_slope_down" ], -+ "§": [ "t_stairs_down" ], -+ "!": [ "t_dock" ], -+ "¡": [ "t_region_groundcover" ], -+ "¿": [ "t_shrub_rose" ], -+ "µ": [ "t_gates_control_metal" ], -+ "{": [ "t_dock" ], -+ ")": [ "t_pavement_y" ], -+ "}": [ "t_door_metal_locked" ], -+ "`": [ [ "t_water_dp", 20 ], "t_water_sh" ], -+ "^": [ "t_concrete" ], -+ "'": [ "t_concrete" ], -+ "Ø": [ "t_concrete" ], -+ "£": [ "t_thconc_floor" ], -+ "¢": [ "t_thconc_floor" ], -+ "¤": [ "t_thconc_floor" ], -+ "¥": [ "t_thconc_floor" ], -+ "²": [ "t_floor" ], -+ "³": [ "t_floor" ], -+ "©": [ "t_floor" ], -+ "°": [ "t_floor" ], -+ "¶": [ "t_card_industrial" ], -+ "@": [ "t_door_metal_pickable" ], -+ "?": [ "t_door_locked" ], -+ "%": [ "t_floor" ], -+ "±": [ "t_wall_metal" ], -+ "0": [ "t_floor" ], -+ "1": [ "t_floor" ], -+ "2": [ "t_floor" ], -+ "3": [ "t_floor" ], -+ "4": [ "t_floor" ], -+ "5": [ "t_floor" ], -+ "Ƽ": [ "t_floor" ], -+ "6": [ "t_console_broken" ], -+ "7": [ "t_floor" ], -+ "8": [ "t_concrete" ], -+ "9": [ "t_floor" ], -+ "a": [ "t_card_military" ], -+ "A": [ "t_floor" ], -+ "C": [ "t_floor" ], -+ "E": [ "t_concrete" ], -+ "f": [ "t_backboard" ], -+ "Ĝ": [ "t_door_bar_locked" ], -+ "G": [ "t_door_bar_c", "t_door_bar_o" ], -+ "H": [ "t_floor" ], -+ "I": [ "t_floor" ], -+ "J": [ "t_floor" ], -+ "K": [ "t_concrete" ], -+ "L": [ "t_floor" ], -+ "M": [ "t_floor" ], -+ "N": [ "t_floor" ], -+ "P": [ "t_floor" ], -+ "q": [ "t_floor" ], -+ "Q": [ "t_floor" ], -+ "R": [ "t_floor" ], -+ "s": [ "t_floor" ], -+ "u": [ "t_floor" ], -+ "U": [ "t_concrete" ], -+ "v": [ "t_floor" ], -+ "V": [ "t_floor" ], -+ "y": [ "t_floor" ], -+ "Y": [ "t_floor" ], -+ "x": [ "t_floor" ], -+ "X": [ "t_floor" ], -+ "Z": [ "t_fence_rope" ], -+ "А": [ "t_floor" ], -+ "а": [ "t_floor" ], -+ "Б": [ "t_linoleum_white" ], -+ "В": [ "t_chainfence" ], -+ "Г": [ "t_chaingate_l" ], -+ "Д": [ "t_sewage_pump" ], -+ "д": [ "t_sewage_pipe" ], -+ "Е": [ "t_water_pump" ], -+ "Ё": [ "t_thconc_floor" ], -+ "Ж": [ "t_floor" ], -+ "З": [ "t_floor" ], -+ "И": [ "t_floor" ], -+ "и": [ "t_linoleum_white" ], -+ "Й": [ "t_linoleum_white" ], -+ "й": [ "t_linoleum_white" ], -+ "К": [ "t_linoleum_white" ], -+ "Л": [ "t_floor" ], -+ "л": [ "t_floor" ], -+ "М": [ "t_floor" ], -+ "м": [ "t_floor" ], -+ "Н": [ "t_floor" ], -+ "н": [ "t_floor" ], -+ "О": [ "t_floor" ], -+ "о": [ "t_thconc_floor" ], -+ "П": [ "t_door_boarded" ], -+ "п": [ "t_floor" ] -+ }, -+ "furniture": { -+ "²": [ "f_cupboard" ], -+ "³": [ "f_cupboard" ], -+ "©": [ "f_cupboard" ], -+ "<": [ "f_bookcase" ], -+ "{": [ "f_bitts" ], -+ "%": [ "f_air_conditioner" ], -+ "*": [ "f_boulder_large" ], -+ "Ø": [ "f_dumpster" ], -+ "0": [ "f_locker" ], -+ "1": [ "f_filing_cabinet" ], -+ "2": [ "f_cupboard" ], -+ "3": [ "f_metal_bench" ], -+ "4": [ "f_glass_fridge" ], -+ "5": [ "f_safe_l" ], -+ "Ƽ": [ "f_safe_l" ], -+ "7": [ "f_shower" ], -+ "8": [ "f_metal_bench" ], -+ "9": [ "f_dumpster" ], -+ "A": [ "f_sofa" ], -+ "C": [ "f_bed" ], -+ "H": [ "f_armchair" ], -+ "I": [ "f_dresser" ], -+ "J": [ "f_pinball_machine" ], -+ "K": [ "f_floor_canvas" ], -+ "L": [ "f_drill_press" ], -+ "M": [ "f_heavy_lathe" ], -+ "N": [ "f_utility_shelf" ], -+ "P": [ "f_workbench" ], -+ "q": [ "f_trashcan" ], -+ "Q": [ "f_cupboard" ], -+ "R": [ "f_locker" ], -+ "s": [ "f_desk" ], -+ "u": [ "f_table" ], -+ "U": [ "f_fiber_mat" ], -+ "x": [ "f_clothing_rail" ], -+ "X": [ "f_rack_coat" ], -+ "y": [ "f_locker" ], -+ "Y": [ "f_rack_coat" ], -+ "А": [ "f_speaker_cabinet" ], -+ "а": [ "f_fridge" ], -+ "Ж": [ "f_locker" ], -+ "З": [ "f_bookcase" ], -+ "И": [ "f_counter" ], -+ "и": [ "f_sink" ], -+ "Й": [ "f_rack_coat" ], -+ "й": [ "f_toilet" ], -+ "К": [ "f_trashcan" ], -+ "Л": [ "f_utility_shelf" ], -+ "л": [ "f_rack_coat" ], -+ "М": [ "f_crate_c" ], -+ "м": [ "f_crate_c" ], -+ "Н": [ "f_bookcase" ], -+ "н": [ "f_wardrobe" ], -+ "О": [ "f_locker" ], -+ "о": [ "f_locker" ], -+ "п": [ "f_bookcase" ] -+ }, -+ "toilets": { "й": { } }, -+ "place_item": [ -+ { "item": "stethoscope", "x": 82, "y": 56, "chance": 100 }, -+ { "item": "basketball", "x": [ 29, 41 ], "y": [ 32, 38 ], "chance": 100, "repeat": [ 1, 2 ] }, -+ { "item": "baseball", "x": [ 28, 42 ], "y": [ 25, 28 ], "chance": 100, "repeat": [ 1, 3 ] }, -+ { "item": "holy_symbol", "x": 74, "y": 29, "chance": 90 }, -+ { "item": "holybook_bible1", "x": 75, "y": 29, "chance": 90 }, -+ { "item": "icon", "x": 76, "y": 29, "chance": 90 }, -+ { "item": "pliers", "x": 81, "y": 54, "chance": 100 }, -+ { "item": "hammer", "x": 59, "y": 32, "chance": 100 }, -+ { "item": "id_industrial", "x": 42, "y": 61, "chance": 100 }, -+ { "item": "id_military", "x": 79, "y": 50, "chance": 100 }, -+ { "item": "holster", "x": 79, "y": 50, "chance": 100 }, -+ { "item": "m9", "x": 79, "y": 50, "chance": 100 }, -+ { "item": "m9mag", "x": 79, "y": 50, "chance": 100 }, -+ { "item": "9mm", "x": 79, "y": 50, "chance": 100 } -+ ], -+ "item": { "н": { "item": "cassock", "chance": 95 } }, -+ "place_items": [ -+ { "item": "table_destruction", "x": 16, "y": 40, "chance": 100 }, -+ { "item": "table_destruction", "x": 17, "y": 40, "chance": 100 } -+ ], -+ "items": { -+ "²": { "item": "SUS_knife_drawer", "chance": 80 }, -+ "³": { "item": "SUS_cookware", "chance": 80 }, -+ "©": { "item": "SUS_spice_collection", "chance": 80 }, -+ "Ø": { "item": "trash_cart", "chance": 50, "repeat": [ 2, 3 ] }, -+ "c": { "item": "animalshelter_utility", "chance": 45, "repeat": [ 2, 3 ] }, -+ "C": { "item": "bed", "chance": 70 }, -+ "I": [ { "item": "cop_torso", "chance": 33 }, { "item": "cop_pants", "chance": 33 }, { "item": "cop_shoes", "chance": 33 } ], -+ "l": [ { "item": "hand_tools", "chance": 50 }, { "item": "tools_carpentry", "chance": 50 } ], -+ "m": [ { "item": "drugs_rare", "chance": 80, "repeat": [ 1, 2 ] } ], -+ "N": [ { "item": "hand_tools", "chance": 50 }, { "item": "tools_carpentry", "chance": 50 } ], -+ "n": { "item": "SUS_oven", "chance": 70 }, -+ "q": { "item": "trash_cart", "chance": 50, "repeat": [ 2, 3 ] }, -+ "Q": { "item": "prison_canine_food", "chance": 70, "repeat": [ 3, 5 ] }, -+ "R": [ -+ { "item": "animalshelter_softdrug", "chance": 70, "repeat": [ 1, 2 ] }, -+ { "item": "animalshelter_hardrug", "chance": 30, "repeat": [ 1, 2 ] } -+ ], -+ "u": { "item": "mil_base_mess_hall", "chance": 30 }, -+ "U": { "item": "prison_canine_bowl", "chance": 70 }, -+ "x": [ { "item": "prison_textile", "chance": 90, "repeat": [ 1, 5 ] } ], -+ "Y": { "item": "clothing_outdoor_torso", "chance": 60 }, -+ ":": { "item": "animalshelter_toys", "chance": 5 }, -+ "0": [ -+ { "item": "prison_weapons", "chance": 50, "repeat": [ 1, 3 ] }, -+ { "item": "prison_armor", "chance": 50, "repeat": [ 1, 3 ] } -+ ], -+ "1": { "item": "SUS_office_filing_cabinet", "chance": 50 }, -+ "2": { "item": "SUS_utensils", "chance": 80 }, -+ "4": [ { "item": "softdrugs", "chance": 50 }, { "item": "harddrugs", "chance": 50 } ], -+ "5": { "item": "alcohol_bottled_canned", "chance": 95, "repeat": [ 1, 3 ] }, -+ "9": { "item": "trash_cart", "chance": 50, "repeat": [ 2, 3 ] }, -+ "а": { "item": "SUS_coffee_cupboard", "chance": 65 }, -+ "Ж": { "item": "SUS_janitors_closet", "chance": 95 }, -+ "З": { "item": "doctors_books", "chance": 75, "repeat": [ 1, 2 ] }, -+ "Л": { "item": "prison_workshop_safety", "chance": 75 }, -+ "л": { "item": "prison_jumpsuit", "chance": 75 }, -+ "М": { "item": "wood_workshop", "chance": 75 }, -+ "м": { "item": "supplies_metal", "chance": 75 }, -+ "Н": { "item": "religious_books", "chance": 90, "repeat": [ 1, 3 ] }, -+ "О": [ -+ { "item": "tools_earthworking", "chance": 90, "repeat": [ 1, 2 ] }, -+ { "item": "farming_tools", "chance": 90, "repeat": [ 1, 2 ] }, -+ { "item": "hazmat_boots", "chance": 90 } -+ ], -+ "о": { "item": "tools_electronics", "chance": 90, "repeat": [ 1, 2 ] } -+ }, -+ "vendingmachines": { "v": { "item_group": "vending_drink" }, "V": { "item_group": "vending_food" } }, -+ "monster": { -+ ",": [ -+ { "monster": "mon_zombie_prisoner", "chance": 2 }, -+ { "monster": "mon_zombie_prisoner_fat", "chance": 2 }, -+ { "monster": "mon_zombie_prisoner_tough", "chance": 2 } -+ ], -+ ".": { "monster": "mon_zombie_cop", "chance": 1 }, -+ "¢": { "monster": "mon_zombie_technician", "chance": 20 }, -+ "^": { "monster": "mon_zombie_prisoner_brute", "chance": 1 }, -+ "`": { "monster": "mon_zhark", "chance": 1 }, -+ ":": { "monster": "mon_dog_gshepherd", "chance": 1 }, -+ "U": { "monster": "mon_dog_gshepherd", "chance": 10 }, -+ "'": [ { "monster": "mon_dog_zombie_cop", "chance": 1 }, { "monster": "mon_zombie_cop", "chance": 1 } ] -+ }, -+ "place_monster": [ -+ { "monster": "mon_zombie_brute_shocker", "x": 65, "y": 36, "name": "The Foreman" }, -+ { "monster": "mon_zombie_master", "x": 40, "y": 63, "name": "The Warden" }, -+ { "monster": "mon_zombie_kevlar_2", "x": 77, "y": 48, "name": "The Chief" }, -+ { "monster": "mon_zombie_scientist", "x": 81, "y": 58, "name": "The Doctor" }, -+ { "monster": "mon_zombie_necro", "x": 75, "y": 28, "name": "The Priest" }, -+ { "monster": "mon_zombie_prisoner_brute", "x": 50, "y": 33, "name": "The Bully" } -+ ], -+ "place_npcs": [ -+ { "class": "prisoner_generic", "x": 17, "y": 53 }, -+ { "class": "prisoner_greeter", "x": 17, "y": 43 }, -+ { "class": "prisoner_generic", "x": 15, "y": 41 }, -+ { "class": "prisoner_generic", "x": 10, "y": 41 }, -+ { "class": "prisoner_generic", "x": 8, "y": 41 }, -+ { "class": "prisoner_generic", "x": 9, "y": 53 }, -+ { "class": "prisoner_generic", "x": 17, "y": 47 } -+ ], -+ "place_zones": [ -+ { "type": "NPC_INVESTIGATE_ONLY", "faction": "prisoners", "x": [ 5, 18 ], "y": [ 33, 47 ] }, -+ { "type": "NPC_INVESTIGATE_ONLY", "faction": "prisoners", "x": [ 5, 18 ], "y": [ 48, 56 ] } -+ ], -+ "nested": { -+ "^": { "chunks": [ [ "corpse_blood_3x3", 5 ], [ "null", 95 ] ] }, -+ ".": { "chunks": [ [ "corpse_blood_3x3", 5 ], [ "null", 95 ] ] }, -+ ",": { "chunks": [ [ "corpse_blood_3x3", 5 ], [ "null", 95 ] ] }, -+ "'": { "chunks": [ [ "corpse_blood_3x3", 5 ], [ "null", 95 ] ] }, -+ "Б": { "chunks": [ [ "corpse_blood_3x3", 5 ], [ "null", 95 ] ] } -+ }, -+ "place_vehicles": [ { "vehicle": "boat_motor_single", "x": 100, "y": 45, "chance": 100, "status": 0 } ] -+ } -+ }, -+ { -+ "type": "mapgen", -+ "method": "json", -+ "om_terrain": [ -+ [ -+ "prison_island_1_2f_1", -+ "prison_island_1_2f_2", -+ "prison_island_1_2f_3", -+ "prison_island_1_2f_4", -+ "prison_island_1_2f_5" -+ ], -+ [ -+ "prison_island_1_2f_6", -+ "prison_island_1_2f_7", -+ "prison_island_1_2f_8", -+ "prison_island_1_2f_9", -+ "prison_island_1_2f_10" -+ ], -+ [ -+ "prison_island_1_2f_11", -+ "prison_island_1_2f_12", -+ "prison_island_1_2f_13", -+ "prison_island_1_2f_14", -+ "prison_island_1_2f_15" -+ ] -+ ], -+ "object": { -+ "rows": [ -+ " ", -+ " №№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№ ", -+ " №№ № ", -+ " №№ |----------| 14w41 № ", -+ " №№ |..........| wd,<1 № ", -+ " №№ |..........| wdh,1 № ", -+ " №№ |..........| 14w41 № ", -+ " №№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№ |..........| № ", -+ " № |..........| № ", -+ " № 14w41 |-----Ю..........| № ", -+ " № 1<,dw |-----------------------------|................Ю--------------------------| № ", -+ " № 1,hdw |.........................................................................| № ", -+ " № 14w41 |.........................................................................| № ", -+ " № |.........................................................................| № ", -+ " № |.........................................................................| № ", -+ " № |.........................................................................| № ", -+ " № |.........................................................................| № ", -+ " № |.........................................................................| № ", -+ " № |.........................................................................| № ", -+ " № |.........................................................................| № ", -+ " № |.........................................................................| № ", -+ " № |.........................................................................| № ", -+ " № |.........................................................................| № ", -+ " № |.........................................................................| № ", -+ " № |-----------------------------|....................................|------| № ", -+ " № |-...................................| № ", -+ " № |...................................|--| № ", -+ " № |......................................| № ", -+ " № |......................................|-------| № ", -+ " № |..............................................| № ", -+ " № |..............................................Ю---| № ", -+ " № |..................................................| № ", -+ " № |---Ю------------------| |..................................................| №№ ", -+ " № |......................| |..................................................| №№ ", -+ " № |......................| |...........................|----------|...........| № ", -+ " № |......................| |...........................| |...........| № ", -+ " № |......................| |...........................| |...........| № ", -+ " № |......................| |...........................| |----|...........| № ", -+ " № |......................| |...........................| |................| № ", -+ " № |......................| |...........................| |................| №№ ", -+ " № |......................| -|-----------|...............| |................| №№ ", -+ " № |..............|-------| |--------| |...............| |................| № ", -+ " № |..............| |........| |...............| |................| № ", -+ " № |..............| |........| |...............| |................| № ", -+ " № |..............| |........| |...............| |..|-|...........| № ", -+ " № |..............| |........| |...............| |-|..| |...........| №..... ", -+ " № |..............| |........| |---| |...............| |....| |...........| №..... ", -+ " № |..............| |--------| |...| |---------------| |....| |...........| №..... ", -+ " № |..............| |...| |....| |...........| №..... ", -+ " № |..............| |...| |....| |...........| № ", -+ " № |-Ю............|---------| |----------|...| |....| |------|....| № ", -+ " № |......................| |..............| |....| |....| № ", -+ " № |......................| |..............| |-----| |....|------| |....| № ", -+ " № |......................| |..............| |.....| |...........| |----| № ", -+ " № |......................| |..............| |.....| |...........| № ", -+ " № |......................| |..............| |.....|--------------|........Ю--| № ", -+ " № |......................| |..............|----|..|--|.......................| № ", -+ " № |-|......................| |......................| |.......................| № ", -+ " № |........................| |......................| |.......................| |----------|№ ", -+ " № |........................| |......................| |......................-| |..........|№ ", -+ " № |........................| |......................| |......................| |..........|№ ", -+ " № |..........|---|.........| |......................| |..................Ю---| |..........|№ ", -+ " № |..........| |.........| |......................| |..................| |..........|№ ", -+ " № |----------| |---------| |......................| |------------------| |--Ю..........|№ ", -+ " № |......................| |.............|№ ", -+ " № 14w41 Ю----------------------| 14w41 |.............|№ ", -+ " № 1,hdw wdh,1 |.............|№ ", -+ " № 1<,dw wd,<1 |.............|№ ", -+ " № 14w41 44w41 |.............|№ ", -+ " № |-------------|№ ", -+ " №№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№№ ", -+ " " -+ ], -+ "palettes": [ "prison_palette" ], -+ "terrain": { -+ " ": [ "t_open_air" ], -+ ".": [ "t_flat_roof" ], -+ "№": "t_concrete_wall", -+ "1": "t_brick_wall", -+ "4": "t_brick_wall", -+ "|": [ "t_gutter_north" ], -+ "-": [ "t_gutter_west" ], -+ "w": [ "t_metal_grate_window_noglass" ], -+ "Ю": [ "t_gutter_drop" ] -+ }, -+ "item": { ".": { "item": "feces_bird", "chance": 2 } } -+ } -+ }, -+ { -+ "type": "mapgen", -+ "method": "json", -+ "om_terrain": [ -+ [ -+ "prison_island_1_ug_1", -+ "prison_island_1_ug_2", -+ "prison_island_1_ug_3", -+ "prison_island_1_ug_4", -+ "prison_island_1_ug_5" -+ ], -+ [ -+ "prison_island_1_ug_6", -+ "prison_island_1_ug_7", -+ "prison_island_1_ug_8", -+ "prison_island_1_ug_9", -+ "prison_island_1_ug_10" -+ ], -+ [ -+ "prison_island_1_ug_11", -+ "prison_island_1_ug_12", -+ "prison_island_1_ug_13", -+ "prison_island_1_ug_14", -+ "prison_island_1_ug_15" -+ ] -+ ], -+ "object": { -+ "faction_owner": [ { "id": "prisoners", "x": [ 8, 23 ], "y": [ 50, 57 ] } ], -+ "rows": [ -+ " ", -+ " ", -+ " @ ", -+ " ` |----------| ", -+ " ```````` |~~~~~~~~~~| ", -+ " ` |---|~|----| ", -+ " ``````` |~| ", -+ " ` |---|~|----| ", -+ " ``` |~~~~~~~~~~| ", -+ " ` |---|~|----| ", -+ " ` |~| ", -+ " ` |~| ", -+ " `` |---------------------------------------|~|-------------------------------| ", -+ " `` |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~@| ", -+ " ` |---------------------------------------|~|-------------------------------| ", -+ " `` |~| ", -+ " ` |~| ", -+ " ` |~| ", -+ " ` |~| ", -+ " ` |~| ", -+ " ` |---------------------------------------|~|-------------------------------| ", -+ " `` |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| ", -+ " ``` |--------------------------------|~|-------------------|~|----------------| ", -+ " `` |~| |~| ", -+ " ` ^^^^^^ |~| |~| ", -+ " `` ^ ^^^^' |~| |~| ", -+ " ` ^ ' |~| |~| ", -+ " ``` ^ ' |~| |~| ", -+ " `` ^^^^^^^^^ ' |~| |~| ", -+ " ` ^ ^ ' |~| |~| ", -+ " ` ^ ^ '' |~| |~| ", -+ " ` ^ ' |~| |~| ", -+ " ` ^^^^ '' |~| |~| ", -+ " `` ^^^^^^^ ' |~| |~| ", -+ " ` ^^^ ^^^^^^^^ '' |~| |~| ", -+ " ` ^^^ ^^ ^ ' |~| |~| ", -+ " `` ^^^ ^^ ^ ' |~| |~| ", -+ " ` ^^^ ^ ' |~| |~| ", -+ " ` ^^^ ^ ' |~| |~| ", -+ " ` ^^^ ^^ ' |~| |~| ", -+ " ` ^^^````` ^^ '' |~| |-| |~| ", -+ " ` ````` '' |~| |~| |~| ", -+ " ``````````` '' |~|-----------|~|-----|~| ", -+ " ' |~~~~~~~~~~~~~~~~~~~~~~~| ", -+ " '' |~|-----------|~|-----|~| ", -+ " '' |~| |~| |~| ", -+ " ' |~| |~| |~| ", -+ " ' |~| |-| |~| ", -+ " ' |~| |~| ", -+ " !!!!!!!!!!!!!!!!! '''' |~| |~| |----| ", -+ " !1.2!3.4!5.6!7.8! ' |------------|~|--------------------~|-------------------|____| ", -+ " !1:2!3:4!5:6!7:8! ' |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~д___| ", -+ " !!!!?!!!?!!!?!!!?!! '' |~|---|~|----|~|-------------------|~|-----------------|~|>___| ", -+ " !>.d..:.......:...! ''' |~| ||~|| |~| |~| |~|----| ", -+ " !>.h..:.......:...! ' |~| |~~~| |~| |~| |~| ", -+ " !!!!?!!!?!!!?!!!?!! |--/---~| |---| |~| |~| |~| ", -+ " !9:9!0:A!B:C!D:D! |~~~~~~~| |~| |~| |~| ", -+ " !9.9!0.A!B.C!D.D! |-------| |~| |~| |~| ", -+ " !!!!!!!!!!!!!!!!! |~| |~| |~| ", -+ " |~| |~| |~| ", -+ " |~| |~| |~| ", -+ " |~| |~| |~| ", -+ " |-------------------------------|~|-------------------|~|-----------------|~|---------| ", -+ " |~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| ", -+ " |-----------------------------------------------------------------------------------|~| ", -+ " |~| ", -+ " |~| ", -+ " |~| ", -+ " |~| ", -+ " |~| ", -+ " |-| ", -+ " " -+ ], -+ "palettes": [ "prison_palette" ], -+ "terrain": { -+ " ": [ "t_rock" ], -+ "^": [ "t_rock_floor" ], -+ "_": [ "t_grate" ], -+ "~": [ "t_sewage" ], -+ "'": [ "t_water_sh_murky_underground" ], -+ "`": [ "t_swater_dp_underground" ], -+ "|": [ "t_brick_wall" ], -+ "-": [ "t_brick_wall" ], -+ "/": [ "t_brick_wall_halfway" ], -+ ">": [ "t_stairs_up" ], -+ "@": [ "t_slope_up" ], -+ ".": [ "t_thconc_floor" ], -+ ":": [ "t_thconc_floor_olight" ], -+ "!": [ "t_concrete_wall" ], -+ "?": [ "t_door_bar_locked" ], -+ "1": [ "t_thconc_floor" ], -+ "2": [ "t_thconc_floor" ], -+ "3": [ "t_thconc_floor" ], -+ "4": [ "t_thconc_floor" ], -+ "5": [ "t_thconc_floor" ], -+ "6": [ "t_thconc_floor" ], -+ "7": [ "t_thconc_floor" ], -+ "8": [ "t_thconc_floor" ], -+ "9": [ "t_thconc_floor" ], -+ "0": [ "t_thconc_floor" ], -+ "A": [ "t_thconc_floor" ], -+ "B": [ "t_thconc_floor" ], -+ "C": [ "t_thconc_floor" ], -+ "D": [ "t_thconc_floor" ], -+ "d": [ "t_thconc_floor" ], -+ "h": [ "t_thconc_floor" ], -+ "д": [ "t_sewage_pipe" ] -+ }, -+ "furniture": { -+ "1": "f_crate_o", -+ "2": "f_crate_o", -+ "3": "f_crate_o", -+ "4": "f_crate_o", -+ "5": "f_crate_o", -+ "6": "f_crate_o", -+ "7": "f_crate_o", -+ "8": "f_crate_o", -+ "9": "f_utility_shelf", -+ "0": "f_utility_shelf", -+ "A": "f_utility_shelf", -+ "B": "f_utility_shelf", -+ "C": "f_utility_shelf", -+ "D": "f_fridge" -+ }, -+ "item": { -+ "1": { "item": "carrot", "chance": 95, "repeat": [ 1, 20 ] }, -+ "2": { "item": "potato", "chance": 95, "repeat": [ 1, 20 ] }, -+ "3": { "item": "onion", "chance": 95, "repeat": [ 1, 20 ] }, -+ "4": { "item": "cabbage", "chance": 95, "repeat": [ 1, 20 ] }, -+ "5": { "item": "corn", "chance": 95, "repeat": [ 1, 20 ] }, -+ "6": { "item": "garlic", "chance": 95, "repeat": [ 1, 10 ] }, -+ "7": { "item": "apple", "chance": 95, "repeat": [ 1, 20 ] }, -+ "8": { "item": "lemon", "chance": 95, "repeat": [ 1, 10 ] } -+ }, -+ "items": { -+ "9": { "item": "SUS_pantry", "chance": 95 }, -+ "0": { "item": "teashop_bulk_teas", "chance": 95, "repeat": [ 1, 20 ] }, -+ "A": { "item": "groce_ingredient", "chance": 95, "repeat": [ 1, 20 ] }, -+ "B": { "item": "groce_bread", "chance": 95, "repeat": [ 1, 20 ] }, -+ "C": { "item": "groce_cereal", "chance": 95, "repeat": [ 1, 20 ] }, -+ "D": { "item": "butcher_raw_meat", "chance": 95, "repeat": [ 1, 20 ] }, -+ "d": { "item": "magazines", "chance": 50 } -+ }, -+ "monster": { "~": { "monster": "mon_sewer_fish", "chance": 2 }, "'": { "monster": "mon_sewer_snake", "chance": 10 } }, -+ "place_npcs": [ -+ { "class": "prisoner_leader", "x": 9, "y": 54 }, -+ { "class": "prisoner_generic", "x": 14, "y": 53 }, -+ { "class": "prisoner_generic", "x": 18, "y": 54 }, -+ { "class": "prisoner_generic", "x": 22, "y": 53 } -+ ] -+ } -+ }, -+ { -+ "id": "table_destruction", -+ "type": "item_group", -+ "subtype": "collection", -+ "items": [ -+ { "item": "2x4", "count": [ 2, 4 ] }, -+ { "item": "wood_panel", "count": [ 0, 1 ] }, -+ { "item": "nail", "charges": [ 4, 8 ] }, -+ { "item": "splinter", "count": 1 } -+ ] -+ }, -+ { - "id": "prison_canine_food", - "type": "item_group", - "items": [ { "item": "dogfood", "prob": 100, "container-item": "can_medium" } ] -@@ -839,5 +1552,63 @@ - [ "jerky", 40 ], - [ "rope_6", 15 ] - ] -+ }, -+ { -+ "type": "item_group", -+ "id": "prison_workshop_safety", -+ "subtype": "collection", -+ "items": [ -+ { "item": "mask_dust", "prob": 75, "damage": [ 1, 4 ] }, -+ { "item": "gloves_work", "prob": 75, "damage": [ 1, 4 ] }, -+ { "item": "glasses_safety", "prob": 75, "damage": [ 1, 4 ] } -+ ] -+ }, -+ { -+ "id": "prison_jumpsuit", -+ "type": "item_group", -+ "items": [ { "item": "jumpsuit", "prob": 75, "damage": [ 1, 4 ] } ] -+ }, -+ { -+ "type": "item_group", -+ "id": "prisoner_or_cop_clothes", -+ "subtype": "collection", -+ "entries": [ -+ { "group": "male_underwear", "damage": [ 1, 4 ] }, -+ { -+ "distribution": [ -+ { -+ "collection": [ -+ { "item": "striped_shirt", "damage": [ 1, 4 ] }, -+ { "item": "striped_pants", "damage": [ 1, 4 ] }, -+ { "group": "clothing_prisoner_shoes", "damage": [ 1, 4 ], "prob": 20 }, -+ { "item": "bandana", "damage": [ 1, 4 ] } -+ ] -+ }, -+ { -+ "collection": [ -+ { "group": "cop_pants", "damage": [ 1, 4 ] }, -+ { "group": "cop_shoes", "damage": [ 1, 4 ], "prob": 20 }, -+ { "group": "cop_torso", "damage": [ 1, 4 ] }, -+ { "group": "clothing_watch", "prob": 20 }, -+ { "item": "police_belt", "damage": [ 1, 4 ], "prob": 20 } -+ ] -+ } -+ ], -+ "prob": 90 -+ }, -+ { "group": "socks_unisex", "damage": [ 1, 4 ] }, -+ { "group": "clothing_glasses", "prob": 20 }, -+ { "item": "corpse_generic_human", "damage": 4 } -+ ] -+ }, -+ { -+ "type": "mapgen", -+ "method": "json", -+ "nested_mapgen_id": "corpse_blood_3x3", -+ "object": { -+ "mapgensize": [ 3, 3 ], -+ "place_items": [ { "item": "prisoner_or_cop_clothes", "x": 0, "y": 0, "chance": 30 } ], -+ "place_fields": [ { "field": "fd_blood", "x": [ 0, 2 ], "y": [ 0, 2 ], "intensity": 1, "age": 10 } ] -+ } - } - ] ---- a/data/json/overmap/overmap_special/specials.json -+++ b/data/json/overmap/overmap_special/specials.json -@@ -948,6 +982,67 @@ - }, - { - "type": "overmap_special", -+ "id": "Island prison", -+ "overmaps": [ -+ { "point": [ -1, -1, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 0, -1, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 1, -1, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 2, -1, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 3, -1, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 4, -1, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 5, -1, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 5, 0, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 5, 1, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 5, 2, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 5, 3, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 4, 3, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 3, 3, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 2, 3, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 1, 3, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 0, 3, 0 ], "overmap": "lake_surface" }, -+ { "point": [ -1, 3, 0 ], "overmap": "lake_surface" }, -+ { "point": [ -1, 2, 0 ], "overmap": "lake_surface" }, -+ { "point": [ -1, 1, 0 ], "overmap": "lake_surface" }, -+ { "point": [ -1, 0, 0 ], "overmap": "lake_surface" }, -+ { "point": [ 0, 0, 0 ], "overmap": "prison_island_1_1_north" }, -+ { "point": [ 1, 0, 0 ], "overmap": "prison_island_1_2_north" }, -+ { "point": [ 2, 0, 0 ], "overmap": "prison_island_1_3_north" }, -+ { "point": [ 3, 0, 0 ], "overmap": "prison_island_1_4_north" }, -+ { "point": [ 4, 0, 0 ], "overmap": "prison_island_1_5_north" }, -+ { "point": [ 0, 1, 0 ], "overmap": "prison_island_1_6_north" }, -+ { "point": [ 1, 1, 0 ], "overmap": "prison_island_1_7_north" }, -+ { "point": [ 2, 1, 0 ], "overmap": "prison_island_1_8_north" }, -+ { "point": [ 3, 1, 0 ], "overmap": "prison_island_1_9_north" }, -+ { "point": [ 4, 1, 0 ], "overmap": "prison_island_1_10_north" }, -+ { "point": [ 0, 2, 0 ], "overmap": "prison_island_1_11_north" }, -+ { "point": [ 1, 2, 0 ], "overmap": "prison_island_1_12_north" }, -+ { "point": [ 2, 2, 0 ], "overmap": "prison_island_1_13_north" }, -+ { "point": [ 3, 2, 0 ], "overmap": "prison_island_1_14_north" }, -+ { "point": [ 4, 2, 0 ], "overmap": "prison_island_1_15_north" }, -+ { "point": [ 0, 0, 1 ], "overmap": "prison_island_1_2f_1_north" }, -+ { "point": [ 1, 0, 1 ], "overmap": "prison_island_1_2f_2_north" }, -+ { "point": [ 2, 0, 1 ], "overmap": "prison_island_1_2f_3_north" }, -+ { "point": [ 3, 0, 1 ], "overmap": "prison_island_1_2f_4_north" }, -+ { "point": [ 4, 0, 1 ], "overmap": "prison_island_1_2f_5_north" }, -+ { "point": [ 0, 1, 1 ], "overmap": "prison_island_1_2f_6_north" }, -+ { "point": [ 1, 1, 1 ], "overmap": "prison_island_1_2f_7_north" }, -+ { "point": [ 2, 1, 1 ], "overmap": "prison_island_1_2f_8_north" }, -+ { "point": [ 3, 1, 1 ], "overmap": "prison_island_1_2f_9_north" }, -+ { "point": [ 4, 1, 1 ], "overmap": "prison_island_1_2f_10_north" }, -+ { "point": [ 0, 2, 1 ], "overmap": "prison_island_1_2f_11_north" }, -+ { "point": [ 1, 2, 1 ], "overmap": "prison_island_1_2f_12_north" }, -+ { "point": [ 2, 2, 1 ], "overmap": "prison_island_1_2f_13_north" }, -+ { "point": [ 3, 2, 1 ], "overmap": "prison_island_1_2f_14_north" }, -+ { "point": [ 4, 2, 1 ], "overmap": "prison_island_1_2f_15_north" } -+ ], -+ "locations": [ "lake_surface" ], -+ "city_distance": [ 3, -1 ], -+ "city_sizes": [ 4, 12 ], -+ "occurrences": [ 15, 100 ], -+ "flags": [ "CLASSIC", "LAKE", "UNIQUE" ] -+ }, -+ { -+ "type": "overmap_special", - "id": "Prison Hidden Lab", - "overmaps": [ - { "point": [ 0, -1, 0 ], "overmap": "road_end_north" }, ---- a/data/json/overmap/overmap_terrain/overmap_terrain_public_institutional.json -+++ b/data/json/overmap/overmap_terrain/overmap_terrain_public_institutional.json -@@ -256,7 +285,52 @@ - "prison_alcatraz_12_2f", - "prison_alcatraz_13_2f", - "prison_alcatraz_14_2f", -- "prison_alcatraz_15_2f" -+ "prison_alcatraz_15_2f", -+ "prison_island_1_1", -+ "prison_island_1_2", -+ "prison_island_1_3", -+ "prison_island_1_4", -+ "prison_island_1_5", -+ "prison_island_1_6", -+ "prison_island_1_7", -+ "prison_island_1_8", -+ "prison_island_1_9", -+ "prison_island_1_10", -+ "prison_island_1_11", -+ "prison_island_1_12", -+ "prison_island_1_13", -+ "prison_island_1_14", -+ "prison_island_1_15", -+ "prison_island_1_2f_1", -+ "prison_island_1_2f_2", -+ "prison_island_1_2f_3", -+ "prison_island_1_2f_4", -+ "prison_island_1_2f_5", -+ "prison_island_1_2f_6", -+ "prison_island_1_2f_7", -+ "prison_island_1_2f_8", -+ "prison_island_1_2f_9", -+ "prison_island_1_2f_10", -+ "prison_island_1_2f_11", -+ "prison_island_1_2f_12", -+ "prison_island_1_2f_13", -+ "prison_island_1_2f_14", -+ "prison_island_1_2f_15", -+ "prison_island_1_ug_1", -+ "prison_island_1_ug_2", -+ "prison_island_1_ug_3", -+ "prison_island_1_ug_4", -+ "prison_island_1_ug_5", -+ "prison_island_1_ug_6", -+ "prison_island_1_ug_7", -+ "prison_island_1_ug_8", -+ "prison_island_1_ug_9", -+ "prison_island_1_ug_10", -+ "prison_island_1_ug_11", -+ "prison_island_1_ug_12", -+ "prison_island_1_ug_13", -+ "prison_island_1_ug_14", -+ "prison_island_1_ug_15" - ], - "name": "prison", - "sym": "p", ---- a/data/json/start_locations.json -+++ b/data/json/start_locations.json -@@ -303,11 +348,17 @@ - { - "type": "start_location", - "id": "sloc_prison_alcatraz", -- "name": "Island prison", -+ "name": "Island prison type A", - "terrain": [ "prison_alcatraz_3" ] - }, - { - "type": "start_location", -+ "id": "sloc_prison_island", -+ "name": "Island prison type B", -+ "terrain": [ "prison_island_1_1" ] -+ }, -+ { -+ "type": "start_location", - "id": "sloc_mi-go_camp", - "name": "Mi-go camp", - "terrain": [ "mi-go_camp1" ] |