diff --git a/data/json/furniture_and_terrain/furniture-medical.json b/data/json/furniture_and_terrain/furniture-medical.json index 1080259311312..4960c2a82bc3f 100644 --- a/data/json/furniture_and_terrain/furniture-medical.json +++ b/data/json/furniture_and_terrain/furniture-medical.json @@ -939,5 +939,45 @@ { "item": "cable", "charges": [ 1, 15 ] } ] } + }, + { + "type": "furniture", + "id": "f_xray", + "name": "X-ray scanner", + "looks_like": "f_machinery_electronic", + "description": "A table with a movable head, often used for medical examinations.", + "symbol": "X", + "bgcolor": "white", + "move_cost_mod": 6, + "coverage": 50, + "required_str": -1, + "flags": [ "PLACE_ITEM" ], + "deconstruct": { + "items": [ + { "item": "scrap", "count": [ 2, 6 ] }, + { "item": "steel_chunk", "count": [ 1, 3 ] }, + { "item": "plastic_chunk", "count": [ 15, 20 ] }, + { "item": "sheet_metal_small", "count": [ 1, 6 ] }, + { "item": "sheet_metal", "count": [ 2, 4 ] }, + { "item": "pipe", "count": [ 1, 4 ] }, + { "item": "cable", "charges": [ 1, 15 ] } + ] + }, + "bash": { + "str_min": 40, + "str_max": 80, + "sound": "metal screeching!", + "sound_fail": "clang!", + "items": [ + { "item": "scrap", "count": [ 2, 7 ] }, + { "item": "steel_chunk", "count": [ 0, 5 ] }, + { "item": "sheet_metal_small", "count": [ 8, 12 ] }, + { "item": "sheet_metal", "count": [ 1, 2 ] }, + { "item": "pipe", "count": [ 1, 2 ] }, + { "item": "cable", "charges": [ 1, 15 ] }, + { "item": "e_scrap", "count": [ 5, 10 ] }, + { "item": "plastic_chunk", "count": [ 0, 2 ] } + ] + } } ] diff --git a/data/json/mapgen/hospital.json b/data/json/mapgen/hospital.json index 0edbf1cd6dee9..3ad86948c65eb 100644 --- a/data/json/mapgen/hospital.json +++ b/data/json/mapgen/hospital.json @@ -75,138 +75,99 @@ ], "weight": 250, "object": { - "fill_ter": "t_dirt", + "fill_ter": "t_linoleum_white", "rows": [ - "_______________________________________________________########;########", - "_______________________________________________________#...cT#...#Tc...#", - "_:__=_:__=_:__=_:____=____:__=_:__=_:__=_:__=_:__=_:___#BB...+...+...BB#", - "_:____:____:____:_________:____:____:____:____:____:___#BB...+...+...BB#", - "_:____:____:____:_________:____:____:____:____:____:___#....l#...#l....#", - "_:____:____:____:_________:____:____:____:____:____:___#######...#######", - "_:____:____:____:_________:____:____:____:____:____:___#....l#...#l....#", - "_:____:____:____:_________:____:____:____:____:____:___#BB...+...+...BB#", - "_______________________________________________________#BB...+...+...BB#", - "####################//####xxxxxxxxxxxxxxxxxxxxxxxxxx#;;#...cT#...#Tc...#", - "#&#&#&#&#&#sssss#.........TbbbbTbbbbTbbbbTbbbbTbbbbT#``#######...#######", - "#.#.#.#.#.#.....#..................................b#``#...cT#...#Tc...#", - "#+#+#+#+#+#.....+..................................b#``#BB...+...+...BB#", - "#...............+..................................b#``#BB...+...+...BB#", - "#...............#..................................b#``#....l#...#l....#", - "#################F........xCCCCCCCCCx..............T#``#######...#######", - "#...............#.........x.c.c.c.c.x..............b#``#....l#...#l....#", - "#...............+........./.........x..............b#``#BB...+...+...BB#", - "#+#+#+#+#+#.....+........./.........x..............b#``#BB...+...+...BB#", - "#.#.#.#.#.#.....#.........x...a.....x..............b#``#...cT#...#Tc...#", - "#&#&#&#&#&#sssss#.D.....F.#rr###+####.DF.TbbbbTbbbbT#``#######///#######", - "####################//########r..a.d#################``#l.rrr#...#rrr.l#", - "#...ll...x...ll...x....#SSSTf#r...cd#s.&#&.s#s.&#&.s#``#l....!...!....l#", - "#.TB..BT.x.TB..BT.x....#.....+.....L#...#...#...#...#``#larrr#...#rrral#", - "#r.B..B.rxr.B..B.rx....#########!#####+###+###+###+##;;#######...#######", - "#r....a.rxr....a.rx....................................................#", - "#xxx//xxxxxxx//xxxx....................................................;", - "#......................................................................#", - "#......................####################...#######;;#######...#######", - "#......................x...........l#8....#...#rrr.l#``#l.rrr#...#rrr.l#", - "#....................../.....A..BT.l#8....!...!....l#``#l....!...!....l#", - "#....................../.....?..B..r#88888#...#rrral#``#larrr#...#rrral#", - "#5.....................x..........ar#######///#######``#######///#######", - "##X#################///##############...cT#...#Tc...#``#...cT#...#Tc...#", - "#H.......H#a......l#...x...........l#BB...+...+...BB#``#BB...+...+...BB#", - "#H.......H#r.TBBT..#.../.....TBBT..a#BB...+...+...BB#``#BB...+...+...BB#", - "#H.......H#r..BB...#.../......BB...r#....l#...#l....#``#....l#...#l....#", - "#H.......H#........#...x...........r#######...#######``#######...#######", - "###########xxx//xxx#...##############....l#...#l....#``#....l#...#l....#", - "#l........x............x........a..R#BB...+...+...BB#``#BB...+...+...BB#", - "#R.TB..A../............/.....6.....R#BB...+...+...BB#``#BB...+...+...BB#", - "#R..B..?../............/.....*.....R#...cT#...#Tc...#``#...cT#...#Tc...#", - "#a........x............x.......22..R#######...#######``#######...#######", - "###########xxx//xxx#...##############...cT#...#Tc...#``#...cT#...#Tc...#", - "#..KKKKK..#........#...x...........r#BB...+...+...BB#``#BB...+...+...BB#", - "#N........#r..BB...#.../......BB...r#BB...+...+...BB#``#BB...+...+...BB#", - "#Y.......8#r.TBBT..#.../.....TBBT..a#....l#...#l....#``#....l#...#l....#", - "#...TT...8#a......l#...x...........l#######...#######``#######...#######", - "#######!#############///#############....l#...#l....#``#....l#...#l....#", - ";``````````````````;....bbb.bbb.bbb.#BB...+...+...BB#``#BB...+...+...BB#", - ";``````````````````;...............b#BB...+...+...BB#``#BB...+...+...BB#", - "######;;############...............b#...cT#...#Tc...#``#...cT#...#Tc...#", - "#&..#....LLLLLLLLLL#...............b#######...#######``#######...#######", - "#...+..............!................#...cT#...#Tc...#``#...cT#...#Tc...#", - "#..s#.....bbb.rrrra#...............b#BB...+...+...BB#``#BB...+...+...BB#", - "#####....###########...............b#BB...#...+...BB#``#BB...#...+...BB#", - "#kddd...C#d..ddd.ad#...............b#....l#...#l....#``#....l#...#l....#", - "w..c....C#dc..c..cd#................#######///#######;;#######///#######", - "#.......C#d.......d#.............................................#88888#", - "w........+.........!.............................................!....8#", - "#SSSSSS.f#lllkkkrrr#.............................................#....8#", - "####################xxxxxxxxxxxx///x##+###+###+###+##;;#######///#######", - "x...................................#...#...#...#...#``#...cT#...#Tc...#", - "x..bbbb..bbbb..bbbb..bbbb..bbbb....4#s.&#&.s#s.&#&.s#``#BB...+...+...BB#", - "x..TTTT..TTTT..TTTT..TTTT..TTTT....4#################``#BB...+...+...BB#", - "x..bbbb..bbbb..bbbb..bbbb..bbbb....4#44444#ssss#ssss#``#....l#...#l....#", - "x...................................#...............#``#######...#######", - "x..bbbb..bbbb..bbbb..bbbb..bbbb.....+......99999999.;``#....l#...#l....#", - "x..TTTT..TTTT..TTTT..TTTT..TTTT.....+......99999999.;``#BB...+...+...BB#", - "x..bbbb..bbbb..bbbb..bbbb..bbbb.....#...............#``#BB...+...+...BB#", - "x...............................444.#44444#oooo#ffff#``#...cT#...#Tc...#", - "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx#######################;;#################" + ",%,,[,,______;,%,,###OOO#######OO#####OO#####OO#####OO###______________,", + ",____________;,,,,#llllllf |yCC y|yCC y|yCC y|yCC y#______________,", + "%____________;,,,,#l x| x | x | | #______________,", + ",__Á_________;,,,[#S xx xt| W | W |x W | xW #______________,", + ",____________;,[,,#S xttxxt|UWWW |UWWW |UWWW |UWWW #______________,", + ",˽˽˽˽˽˽______;,,%,Ol xttx | xx | x | x | x #______________,", + "[____________;,,,,Ol xx | 3| 3| 3|x 3#______________,", + ",____________;,,,,Ol xx x| S| x S|x S| S#______________,", + ",__Á_________;,,,,Ol xttxxt| J| J| J| J#______________,", + ",____________;,,,,Ol xttxxt| J| J| J| J#______________,", + ",˽˽˽˽˽˽______;,,,%#l xx |y J|y J|y J|y J#______________,", + ",____________;,,[,#3 ||+||||||+||||||+||||||+||||#______________,", + "[____________;,,,,# ED + £______________,", + ",__Á_________;,,,,#|||||||||| ^ ^ ^ £______________,", + ",____________;,%,,#yiiiiiiiy ||||||*|||#______________,", + ",˽˽˽˽˽˽______;,,,,#i ^ ^ ^ |CCCy y|#======##======#", + ",____________;,,,[#i ^ ED| C|#``````&&``````#", + ",____________;,,,,oi ^ 3|||||||| W C|#``````````````#", + ",__Á_________;%,,,oi iiiiiƃ ^ ^ |y CCC| xW W |#``````````````#", + ",____________;,,,,oi | O W Wx |#``````````````#", + "%˽˽˽˽˽˽______;,,,,oi ^ | WW O W |#``````````````#", + ",____________;[,,,#y iiii iiii Г| W Oy C|#``````````````#", + ",____________;,,%,#i i##i i##i | xW | C|#``````````````#", + ",____________;,,,,#i i##i i##i | W + W |#``````````````#", + ",____________;,,,,#i iiii iiii | WW | Wx |#``````````````#", + "[˽˽˽˽˽˽______;,,,,oi ^ ƃ | O W |#``````````````#", + ",____________;,,,,oi ^ E|C OCCCCy y|#``````````````#", + ",____________;,,,,oy ^ D|y y||||||||||#``ւ``````ւ````#", + ",__Á_________;,,,oo |oooooo|||OOOO|||#########``````````````#", + ",____________;,,oo o...............|#KKKKKKK#``````````````#", + ",˽˽˽˽˽˽______;,oo i#i vvv o...............|# #``````````````#", + ",____________;oo i#i v o...............|# #``````````````#", + ",____________;oƃ i#i Ux o...............|#FFFFF #``````````````#", + ",__Á_________;o v o...............|# $``````````````#", + ",____________;o v o...............|# $``````````````#", + ",˽˽˽˽˽˽______;: ^ U x o...............|#FFFF #``````````````#", + ",____________;: v o...............|# ##`````&``&`````#", + "%____________;o ^ vx o...............|# #||====||||====|#", + ",__Á_________;o U o...............|#FFFF #|& vx &#", + ",____________;o i#i vx o...............|# #| U U #", + ",˽˽˽˽˽˽______;oo i#i v o...............|# #| ^ v vx Г#", + ",____________;,oo i#i U o...............|#LLLL #| vx v #", + ",____________;,,oo ƃ v o...............|# #|Г v xv o", + ",__Á_________;,,,oo vvv o...............|#LLLL #| ^ vvUv o", + ",____________;,,,,o o...............|######$#| ^ #", + "%˽˽˽˽˽˽______;,,,,o ^ ^ 3|ooooooooooooooo||||||| || ^ #", + ",____________;,,[,o ) ) + E#", + ",____________;,,,,#yiiiiiiiy ) ) Г ) + Г D#", + ",____________;%,,,#||||||||| ||||||||||||||||||||||*||jjjj #####", + ",____________;,,,,#n + |C * C| J|B |4Г k ^ ^ $ F#", + ",˽˽˽˽˽˽______;,,%,#) x | ^ |C v |x | b J|B |) j S# F#", + ",____________;,,,,#4 | | v ^ i| $ d J|B i |jjjj J#Г F#", + ",____________;,,,,O y| ^ E| xv i| U0 J|B i |4 k J#Г F#", + "[__Á_________;,[,,#|||||| D| v i|||| J|B i |) Гk J#Г F#", + ",____________;,,,,#n + |UvUv |ii| AJ|B i |jjjj J#Г F#", + ",˽˽˽˽˽˽______;%,,,#) | Г | ^ +--+ J|B |4 j ^ S#Г F#", + ",____________;,,,,#4 |3 ^ |||||||||||||||) k J#Г F#", + ",____________;,,,,O x y| ^ +--+ J|G ɱ|jjjj J#Г F#", + "%__Á_________;,,%,#|||||| Г |ii| J|G ɱ|4 Гk ^ S#Г F#", + ",____________;,,,,#n + ^ ^ 3|||| AJ|G ɱ|) j 3#Г F#", + ",˽˽˽˽˽˽______;,,[,#) x| | | U0 J|G ɱ|jjjj #####", + ",____________;,,,,#4 | | iiii * $ d J|G ɱ|4 k #", + "[____________;,,%,O y| |*|||||||+| | c J|G |) j ^ ^ £", + ",__Á_________;,,,,#|||||| |x x |i-|x | J|G |jjjj £", + ",____________;%,,,#n + ^ ƃ|CC UU|i-||||||||||||+|| Г #", + ",˽˽˽˽˽˽______;,,,,#) Г| ^ ƃ|||$|00||+|6 + * #", + ",____________;,,,,#4 x| ƃ| |5 I| |kjjkjjkkjkjjkj#", + ",____________;,,,,O y| ƃ| |I III I|||+| jГ j j j #", + ",____________;,,,,#|||||| ƃ| h |I I|RR | j j jГ j #", + "%__Á_________;,[,,#RRRɱɱ| ^ ƃ| A |5 I| | j j j j #", + ",____________;,,,%# * 3 ƃ|JJJJJJJJJ|6 HnUnH 3|RRR|4(j4(j4(j4(j4(#", + ",,%,,,,[,,%,,,,,,,#########££###########################################" ], "palettes": [ "hospital" ], - "terrain": { "5": "t_floor", "H": "t_floor", "X": [ "t_door_metal_locked", "t_door_metal_elocked" ], "=": "t_pavement" }, - "furniture": { "H": "f_locker" }, - "place_zones": [ { "type": "ZONE_START_POINT", "faction": "your_followers", "x": [ 39, 41 ], "y": [ 45, 46 ] } ], - "vendingmachines": { "D": { "item_group": "vending_drink", "lootable": true }, "F": { "item_group": "vending_food", "lootable": true } }, + "vendingmachines": { "D": { "item_group": "vending_drink", "lootable": true }, "E": { "item_group": "vending_food", "lootable": true } }, "computers": { - "5": { - "name": "Medical Supply Access", - "security": 2, - "options": [ { "name": "Unlock Door", "action": "unlock" } ], - "failures": [ { "action": "shutdown" }, { "action": "alarm" } ] - }, "6": { "name": "Centrifuge", "options": [ { "name": "Analyze blood", "action": "blood_anal" } ], "failures": [ { "action": "destroy_blood" } ] } }, - "vehicles": { "=": { "vehicle": "pickup_corpses", "chance": 10, "rotation": 270, "status": 1 } }, - "nested": { "=": { "chunks": [ [ "null", 70 ], [ "pile_bodybag_corpses", 30 ] ] } }, - "items": { - "b": { "item": "magazines", "chance": 50 }, - "B": { "item": "hospital_bed", "chance": 80 }, - "f": { "item": "SUS_fridge_breakroom", "chance": 90 }, - "d": { "item": "office", "chance": 80 }, - "C": { "item": "office", "chance": 20 }, - "S": { "item": "bed", "chance": 60 }, - "r": { "item": "hospital_medical_items", "chance": 30 }, - "R": { "item": "hospital_lab", "chance": 70 }, - "l": { "item": "surgery", "chance": 80 }, - "L": { "item": "allclothes", "chance": 90 }, - "8": { "item": "cleaning", "chance": 70 }, - "9": { "item": "produce", "chance": 40 }, - "T": { "item": "snacks", "chance": 50 }, - "2": { "item": "hospital_samples", "chance": 50 }, - "k": { "item": "doctors_books", "chance": 60 }, - "K": { "item": "hospital_oxygen", "chance": 85 }, - "a": { "item": "gear_medical", "chance": 65, "repeat": [ 2, 3 ] }, - "H": [ - { "item": "harddrugs", "chance": 60 }, - { "item": "gear_medical", "chance": 60, "repeat": [ 1, 3 ] }, - { "item": "drugs_analgesic", "chance": 60, "repeat": [ 1, 3 ] }, - { "item": "drugs_rare", "chance": 60 }, - { "item": "surgery", "chance": 60 } - ] + "monster": { + "ƃ": { "monster": "mon_civilian_icu", "chance": 75 }, + "^": { "group": "GROUP_HOSPITAL" }, + " ": { "group": "GROUP_HOSPITAL", "chance": 4 } }, - "monster": { "B": { "monster": "mon_civilian_icu", "chance": 10 } }, - "place_monster": [ - { "group": "GROUP_HOSPITAL", "x": [ 0, 23 ], "y": [ 0, 23 ], "repeat": [ 15, 20 ] }, - { "group": "GROUP_HOSPITAL", "x": [ 25, 46 ], "y": [ 1, 22 ], "repeat": [ 15, 20 ] }, - { "group": "GROUP_HOSPITAL", "x": [ 49, 70 ], "y": [ 1, 22 ], "repeat": [ 15, 20 ] }, - { "group": "GROUP_HOSPITAL", "x": [ 1, 22 ], "y": [ 25, 46 ], "repeat": [ 15, 20 ] }, - { "group": "GROUP_HOSPITAL", "x": [ 25, 46 ], "y": [ 25, 46 ], "repeat": [ 15, 20 ] }, - { "group": "GROUP_HOSPITAL", "x": [ 49, 70 ], "y": [ 25, 46 ], "repeat": [ 15, 20 ] }, - { "group": "GROUP_HOSPITAL", "x": [ 1, 22 ], "y": [ 49, 70 ], "repeat": [ 15, 20 ] }, - { "group": "GROUP_HOSPITAL", "x": [ 25, 46 ], "y": [ 49, 70 ], "repeat": [ 15, 20 ] }, - { "group": "GROUP_HOSPITAL", "x": [ 49, 70 ], "y": [ 49, 70 ], "repeat": [ 15, 20 ] } + "place_zones": [ + { "type": "ZONE_START_POINT", "faction": "your_followers", "x": [ 43, 44 ], "y": [ 54, 55 ] }, + { "type": "ZONE_START_POINT", "faction": "your_followers", "x": [ 43, 44 ], "y": [ 57, 58 ] }, + { "type": "ZONE_START_POINT", "faction": "your_followers", "x": [ 40, 41 ], "y": [ 63, 64 ] } ] } }, @@ -222,78 +183,78 @@ "object": { "fill_ter": "t_flat_roof", "rows": [ - " -----------------", - " -...............-", - " -...............-", - " -...............-", - " -...............-", - " -...............-", - " -...............-", - " -...............-", - " -...............-", - "--------------------------------------------------------...............-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "-......................................................................-", - "------------------------------------------------------------------------" + " 5-------------------------------------5 ", + " -.....................................- ", + " -.....................................- ", + " -.....................................- ", + " -.1..........3...................3....- ", + " -.....................................- ", + " -.....................................- ", + " -.....................................- ", + " -.....................................- ", + " -.....................................- ", + " -.....................................- ", + " -.1...................................- ", + " -.....................................- ", + " -.....................................- ", + " -.....................................- ", + " -.....................................5--------------5", + " -....................................................-", + " -............6.......................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -.1..................................................-", + " -....................................................-", + " -5............-----------------.......................-", + " --.............- -.......................-", + " --..............- -.......................-", + " --...............- -.......................-", + " -................- -.......................-", + " -................- -.......................-", + " -.....1..........- -.......................-", + " -................- -.......................-", + " -................- -.......................-", + " -................- -............7..........-", + " -................- -.......................-", + " -................- -.......................-", + " --...............- -.......................-", + " --..............- -.......................-", + " --.............- -.......................-", + " -5............- -.......................-", + " -............- -.......................-", + " -.1..........-----------------.......................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -.1..................................................-", + " -............3.......................................-", + " -................................3...................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " -.............................................6......-", + " -....................................................-", + " -....................................................-", + " -.1..................................................-", + " -....................................................-", + " -....................................................-", + " -....................................................-", + " 5----------------------------------------------------5" ], "palettes": [ "roof_palette" ] } diff --git a/data/json/mapgen_palettes/hospital.json b/data/json/mapgen_palettes/hospital.json index 5d73d3d477715..a4c8a730c5632 100644 --- a/data/json/mapgen_palettes/hospital.json +++ b/data/json/mapgen_palettes/hospital.json @@ -2,83 +2,124 @@ { "type": "palette", "id": "hospital", - "palettes": [ "parametrized_walls_palette" ], + "parameters": { + "metal_doors_lock_type": { + "//": "Does hospital use traditional or electronic locks", + "type": "ter_str_id", + "default": { "distribution": [ [ "t_door_metal_pickable", 1 ], [ "t_door_metal_elocked", 3 ] ] } + } + }, "terrain": { - " ": "t_region_groundcover_urban", - ":": "t_pavement_y", - "&": "t_floor", - ".": "t_floor", - "a": "t_floor", - "b": "t_floor", - "c": "t_floor", - "d": "t_floor", - "k": "t_floor", - "f": "t_floor", - "l": "t_floor", - "L": "t_floor", - "w": "t_window", - "B": "t_floor", - "C": "t_floor", - "o": "t_floor", - "D": "t_floor", - "F": "t_floor", - "4": "t_floor", - "r": "t_floor", - "R": "t_floor", - "T": "t_floor", + "|": "t_strconc_wall_w", + "#": "t_strconc_wall", + "&": "t_gates_mech_control", + ".": [ + [ "t_region_groundcover_urban", 40 ], + [ "t_region_shrub_decorative", 12 ], + [ "t_region_shrub_fruit", 8 ], + [ "t_region_shrub", 8 ], + [ "t_region_tree_fruit", 2 ], + [ "t_region_tree_nut", 2 ], + [ "t_region_tree_shade", 1 ] + ], + ",": "t_region_groundcover_urban", + "%": [ "t_region_shrub", "t_region_shrub_fruit", "t_region_shrub_decorative" ], + "[": [ [ "t_region_tree_fruit", 2 ], [ "t_region_tree_nut", 2 ], "t_region_tree_shade" ], + ":": [ "t_door_glass_c", "t_door_glass_o" ], + "+": [ [ "t_door_c", 2 ], [ "t_door_o", 1 ] ], + "*": [ [ "t_door_c", 1 ], [ "t_door_locked_interior", 2 ] ], + "=": "t_door_metal_locked", + "$": { "param": "metal_doors_lock_type", "fallback": "t_door_metal_elocked" }, + "£": [ [ "t_door_metal_c", 1 ], [ "t_door_metal_o", 2 ] ], "_": "t_pavement", - "/": "t_door_glass_c", - ";": "t_door_locked", - "s": "t_floor", - "x": "t_wall_glass", - "`": "t_thconc_floor", - "+": "t_door_c", - "!": "t_door_locked_interior", - "*": "t_floor", - "6": "t_floor", - "7": "t_floor", - "S": "t_floor", - "2": "t_floor", - "8": "t_floor", - "9": "t_floor", - "A": "t_floor", - "?": "t_floor", - "K": "t_floor", - "N": "t_floor", - "Y": "t_floor" + "˽": "t_pavement_y", + "-": "t_linoleum_white", + "`": "t_strconc_floor", + ">": "t_stairs_down", + ";": "t_sidewalk", + "ւ": "t_strconc_floor", + "Á": "t_pavement", + "o": "t_laminated_glass", + "O": [ [ "t_curtains", 1 ], [ "t_window_domestic", 2 ] ], + "0": "t_wall_glass" }, "furniture": { - "*": "f_centrifuge", - "6": "f_console", - "7": "f_console", - "b": "f_bench", - "c": "f_chair", - "B": "f_bed", - "f": [ "f_heavy_duty_fridge", "f_heavy_duty_freezer" ], - "d": "f_desk", - "k": "f_bookcase", - "C": "f_counter", - "S": "f_sofa", - "s": "f_sink", - "o": [ "f_oven", "f_gas_oven_microwave_combo" ], - "4": "f_rack", - "r": "f_rack", + "b": "f_CTscan", + "c": "f_MRI", + "d": "f_scan_bed", + "f": "f_fridge", + "h": "f_xray", + "i": "f_bench", + "j": "f_curtain", + "k": "f_curtain_open", + "l": "f_counter", + "n": "f_autoclave", + "t": "f_table", + "v": "f_desk", + "x": "f_chair", + "y": [ "f_indoor_plant_y", "f_indoor_plant" ], + "A": "f_stool", + "B": "f_locker", + "C": "f_filing_cabinet", + "F": "f_utility_shelf", + "H": "f_lab_bench", + "G": "f_washer", + "I": "f_lab_bench", + "J": "f_lab_bench", + "K": "f_utility_shelf", + "L": "f_utility_shelf", "R": "f_rack", - "8": "f_locker", - "l": "f_locker", - "L": "f_locker", - "K": "f_locker", - "2": "f_table", - "T": "f_table", - "9": "f_table", - "&": "f_toilet", - "A": "f_autodoc", - "?": "f_autodoc_couch", - "N": "f_oxygen_concentrator", - "Y": "f_hd_compressor_unit" + "S": "f_sink", + "U": "f_console_broken", + "W": "f_desk", + "1": "f_fume_hood", + "2": "f_shaker", + "3": "f_eyewash", + "4": "f_IV_pole", + "5": "f_centrifuge", + "6": "f_console" + }, + "items": { + "i": { "item": "magazines", "chance": 5 }, + "^": { "item": "hospital_bed", "repeat": [ 1, 2 ] }, + "f": { "item": "SUS_fridge_breakroom" }, + "W": { "item": "office", "chance": 80, "repeat": [ 0, 2 ] }, + "v": { "item": "office", "chance": 80, "repeat": [ 0, 1 ] }, + "C": { "item": "office", "chance": 60, "repeat": [ 2, 3 ] }, + "K": { "item": "hospital_lab", "chance": 70 }, + "J": { "item": "drugs_emergency", "chance": 80 }, + "G": { "item": "allclothes", "chance": 90, "repeat": [ 2, 3 ] }, + "R": { "item": "cleaning", "chance": 70, "repeat": [ 2, 3 ] }, + "H": { "item": "hospital_samples", "chance": 75, "repeat": [ 1, 3 ] }, + "L": { "item": "hospital_oxygen", "chance": 85, "repeat": [ 1, 3 ] }, + "Г": { "item": "full_1st_aid", "chance": 65, "repeat": [ 1, 3 ] }, + "F": [ + { "item": "harddrugs", "chance": 60, "repeat": [ 2, 3 ] }, + { "item": "gear_medical", "chance": 60, "repeat": [ 1, 3 ] }, + { "item": "drugs_analgesic", "chance": 60, "repeat": [ 1, 3 ] }, + { "item": "drugs_rare", "chance": 60, "repeat": [ 0, 2 ] }, + { "item": "surgery", "chance": 60, "repeat": [ 1, 2 ] }, + { "item": "full_ifak", "chance": 40 } + ], + "l": [ + { "item": "SUS_utensils", "chance": 60 }, + { "item": "SUS_silverware", "chance": 60 }, + { "item": "SUS_dishes", "chance": 60 }, + { "item": "SUS_appliances_cupboard", "chance": 60 } + ], + "S": { "item": "public_sink", "chance": 60 } + }, + "vehicles": { + "^": { "vehicle": "hospital_bed", "chance": 100, "rotation": [ 0, 90, 180, 270 ] }, + ")": { "vehicle": "hospital_bed", "chance": 100, "rotation": 180 }, + "(": { "vehicle": "hospital_bed", "chance": 100, "rotation": 90 }, + "ɱ": { "vehicle": "laundry_cart", "chance": 100, "rotation": 0 }, + "ƃ": { "vehicle": "wheelchair", "chance": 100, "rotation": 0 }, + "Г": { "vehicle": "medical_cart", "chance": 100, "rotation": 0 }, + "ւ": { "vehicle": "ambulance", "chance": 75, "rotation": 270 }, + "Á": { "vehicle": "parking_garage", "chance": 75, "rotation": 180 } }, - "toilets": { "&": { } }, - "vehicles": { "a": { "vehicle": "medical_cart", "chance": 100, "rotation": 0 } } + "nested": { " ": { "chunks": [ [ "blood_field", 2 ], [ "bile_field", 1 ], [ "null", 47 ] ] } } }, { "type": "palette", @@ -92,7 +133,7 @@ "˽": "t_pavement_y", ";": "t_sidewalk", "#": "t_strconc_wall", - "+": "t_door_c", + "+": [ [ "t_door_c", 5 ], [ "t_door_o", 5 ], [ "t_door_locked_interior", 1 ] ], "|": "t_wall_w", "o": "t_laminated_glass", "°": "t_flat_roof", diff --git a/data/json/monstergroups/zombies.json b/data/json/monstergroups/zombies.json index 536cc90ae852d..52c0c948bb0b4 100644 --- a/data/json/monstergroups/zombies.json +++ b/data/json/monstergroups/zombies.json @@ -652,7 +652,7 @@ "name": "GROUP_HOSPITAL", "//": "Hospital monster spawns. Same as GROUP_ZOMBIE, but without Z-dogs + 20% medical", "monsters": [ - { "monster": "mon_null", "weight": 150 }, + { "group": "GROUP_VANILLA_DORMANT", "weight": 100, "cost_multiplier": 3 }, { "group": "GROUP_CIVILIANS_STANDARD", "weight": 100, "cost_multiplier": 0 }, { "monster": "mon_zombie", "weight": 1, "cost_multiplier": 7, "pack_size": [ 5, 10 ] }, { "monster": "mon_zombie", "weight": 1, "cost_multiplier": 13, "pack_size": [ 15, 20 ] }, diff --git a/data/mods/Defense_Mode/mapgen/hospital.json b/data/mods/Defense_Mode/mapgen/hospital.json index d6c295864b9db..491d0c1452521 100644 --- a/data/mods/Defense_Mode/mapgen/hospital.json +++ b/data/mods/Defense_Mode/mapgen/hospital.json @@ -7,126 +7,97 @@ [ "dm_hospital_6", "dm_hospital_5", "dm_hospital_4" ], [ "dm_hospital_9", "dm_hospital_8", "dm_hospital_7" ] ], + "weight": 250, "object": { - "fill_ter": "t_dirt", + "fill_ter": "t_linoleum_white", "rows": [ - "_______________________________________________________########;########", - "_______________________________________________________#...cT#...#Tc...#", - "_:__=_:__=_:__=_:____=____:__=_:__=_:__=_:__=_:__=_:___#BB...+...+...BB#", - "_:____:____:____:_________:____:____:____:____:____:___#BB...+...+...BB#", - "_:____:____:____:_________:____:____:____:____:____:___#....l#...#l....#", - "_:____:____:____:_________:____:____:____:____:____:___#######...#######", - "_:____:____:____:_________:____:____:____:____:____:___#....l#...#l....#", - "_:____:____:____:_________:____:____:____:____:____:___#BB...+...+...BB#", - "_______________________________________________________#BB...+...+...BB#", - "####################//####xxxxxxxxxxxxxxxxxxxxxxxxxx#;;#...cT#...#Tc...#", - "#&#&#&#&#&#sssss#.........TbbbbTbbbbTbbbbTbbbbTbbbbT#``#######...#######", - "#.#.#.#.#.#.....#..................................b#``#...cT#...#Tc...#", - "#+#+#+#+#+#.....+..................................b#``#BB...+...+...BB#", - "#...............+..................................b#``#BB...+...+...BB#", - "#...............#..................................b#``#....l#...#l....#", - "#################F........xCCCCCCCCCx..............T#``#######...#######", - "#...............#.........x.c.c.c.c.x..............b#``#....l#...#l....#", - "#...............+........./.........x..............b#``#BB...+...+...BB#", - "#+#+#+#+#+#.....+........./.........x..............b#``#BB...+...+...BB#", - "#.#.#.#.#.#.....#.........x.........x..............b#``#...cT#...#Tc...#", - "#&#&#&#&#&#sssss#.D.....F.#rr###+####.DF.TbbbbTbbbbT#``#######///#######", - "####################//########r....d#################``#l.rrr#...#rrr.l#", - "#...ll...x...ll...x....#SSSTf#r...cd#s.&#&.s#s.&#&.s#``#l....!...!....l#", - "#.TB..BT.x.TB..BT.x....#.....+.....L#...#...#...#...#``#l.rrr#...#rrr.l#", - "#r.B..B.rxr.B..B.rx....#########!#####+###+###+###+##;;#######...#######", - "#r......rxr......rx....................................................#", - "#xxx//xxxxxxx//xxxx....................................................;", - "#......................................................................#", - "#......................####################...#######;;#######...#######", - "#......................x...........l#8....#...#rrr.l#``#l.rrr#...#rrr.l#", - "#....................../.....A..BT.l#8....!...!....l#``#l....!...!....l#", - "#....................../.....?..B..r#88888#...#rrr.l#``#l.rrr#...#rrr.l#", - "#5.....................x...........r#######///#######``#######///#######", - "##X#################///##############...cT#...#Tc...#``#...cT#...#Tc...#", - "#H.......H#.......l#...x...........l#BB...+...+...BB#``#BB...+...+...BB#", - "#H.......H#r.TBBT..#.../.....TBBT...#BB...+...+...BB#``#BB...+...+...BB#", - "#H.......H#r..BB...#.../......BB...r#....l#...#l....#``#....l#...#l....#", - "#H.......H#........#...x...........r#######...#######``#######...#######", - "###########xxx//xxx#...##############....l#...#l....#``#....l#...#l....#", - "#l........x............x...........R#BB...+...+...BB#``#BB...+...+...BB#", - "#R.TB..A../............/.....6.....R#BB...+...+...BB#``#BB...+...+...BB#", - "#R..B..?../............/.....*.....R#...cT#...#Tc...#``#...cT#...#Tc...#", - "#.........x............x.......22..R#######...#######``#######...#######", - "###########xxx//xxx#...##############...cT#...#Tc...#``#...cT#...#Tc...#", - "#..KKKKK..#........#...x...........r#BB...+...+...BB#``#BB...+...+...BB#", - "#N........#r..BB...#.../......BB...r#BB...+...+...BB#``#BB...+...+...BB#", - "#Y.......8#r.TBBT..#.../.....TBBT...#....l#...#l....#``#....l#...#l....#", - "#...TT...8#.......l#...x...........l#######...#######``#######...#######", - "#######!#############///#############....l#...#l....#``#....l#...#l....#", - ";``````````````````;....bbb.bbb.bbb.#BB...+...+...BB#``#BB...+...+...BB#", - ";``````````````````;...............b#BB...+...+...BB#``#BB...+...+...BB#", - "######;;############...............b#...cT#...#Tc...#``#...cT#...#Tc...#", - "#&..#....LLLLLLLLLL#...............b#######...#######``#######...#######", - "#...+..............!................#...cT#...#Tc...#``#...cT#...#Tc...#", - "#..s#.....bbb.rrrr.#...............b#BB...+...+...BB#``#BB...+...+...BB#", - "#####....###########...............b#BB...#...+...BB#``#BB...#...+...BB#", - "#kddd...C#d..ddd..d#...............b#....l#...#l....#``#....l#...#l....#", - "w..c....C#dc..c..cd#................#######///#######;;#######///#######", - "#.......C#d.......d#.............................................#88888#", - "w........+.........!.............................................!....8#", - "#SSSSSS.f#lllkkkrrr#.............................................#....8#", - "####################xxxxxxxxxxxx///x##+###+###+###+##;;#######///#######", - "x...................................#...#...#...#...#``#...cT#...#Tc...#", - "x..bbbb..bbbb..bbbb..bbbb..bbbb....4#s.&#&.s#s.&#&.s#``#BB...+...+...BB#", - "x..TTTT..TTTT..TTTT..TTTT..TTTT....4#################``#BB...+...+...BB#", - "x..bbbb..bbbb..bbbb..bbbb..bbbb....4#44444#ssss#ssss#``#....l#...#l....#", - "x...................................#...............#``#######...#######", - "x..bbbb..bbbb..bbbb..bbbb..bbbb.....+......99999999.;``#....l#...#l....#", - "x..TTTT..TTTT..TTTT..TTTT..TTTT.....+......99999999.;``#BB...+...+...BB#", - "x..bbbb..bbbb..bbbb..bbbb..bbbb.....#...............#``#BB...+...+...BB#", - "x...............................444.#44444#oooo#ffff#``#...cT#...#Tc...#", - "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx#######################;;#################" + ",%,,[,,______;,%,,###OOO#######OO#####OO#####OO#####OO###______________,", + ",____________;,,,,#llllllf |yCC y|yCC y|yCC y|yCC y#______________,", + "%____________;,,,,#l x| x | x | | #______________,", + ",__Á_________;,,,[#S xx xt| W | W |x W | xW #______________,", + ",____________;,[,,#S xttxxt|UWWW |UWWW |UWWW |UWWW #______________,", + ",˽˽˽˽˽˽______;,,%,Ol xttx | xx | x | x | x #______________,", + "[____________;,,,,Ol xx | 3| 3| 3|x 3#______________,", + ",____________;,,,,Ol xx x| S| x S|x S| S#______________,", + ",__Á_________;,,,,Ol xttxxt| J| J| J| J#______________,", + ",____________;,,,,Ol xttxxt| J| J| J| J#______________,", + ",˽˽˽˽˽˽______;,,,%#l xx |y J|y J|y J|y J#______________,", + ",____________;,,[,#3 ||+||||||+||||||+||||||+||||#______________,", + "[____________;,,,,# ED + £______________,", + ",__Á_________;,,,,#|||||||||| ^ ^ ^ £______________,", + ",____________;,%,,#yiiiiiiiy ||||||*|||#______________,", + ",˽˽˽˽˽˽______;,,,,#i ^ ^ ^ |CCCy y|#======##======#", + ",____________;,,,[#i ^ ED| C|#``````&&``````#", + ",____________;,,,,oi ^ 3|||||||| W C|#``````````````#", + ",__Á_________;%,,,oi iiiiiƃ ^ ^ |y CCC| xW W |#``````````````#", + ",____________;,,,,oi | O W Wx |#``````````````#", + "%˽˽˽˽˽˽______;,,,,oi ^ | WW O W |#``````````````#", + ",____________;[,,,#y iiii iiii Г| W Oy C|#``````````````#", + ",____________;,,%,#i i##i i##i | xW | C|#``````````````#", + ",____________;,,,,#i i##i i##i | W + W |#``````````````#", + ",____________;,,,,#i iiii iiii | WW | Wx |#``````````````#", + "[˽˽˽˽˽˽______;,,,,oi ^ ƃ | O W |#``````````````#", + ",____________;,,,,oi ^ E|C OCCCCy y|#``````````````#", + ",____________;,,,,oy ^ D|y y||||||||||#``ւ``````ւ````#", + ",__Á_________;,,,oo |oooooo|||OOOO|||#########``````````````#", + ",____________;,,oo o...............|#KKKKKKK#``````````````#", + ",˽˽˽˽˽˽______;,oo i#i vvv o...............|# #``````````````#", + ",____________;oo i#i v o...............|# #``````````````#", + ",____________;oƃ i#i Ux o...............|#FFFFF #``````````````#", + ",__Á_________;o v o...............|# $``````````````#", + ",____________;o v o...............|# $``````````````#", + ",˽˽˽˽˽˽______;: ^ U x o...............|#FFFF #``````````````#", + ",____________;: v o...............|# ##`````&``&`````#", + "%____________;o ^ vx o...............|# #||====||||====|#", + ",__Á_________;o U o...............|#FFFF #|& vx &#", + ",____________;o i#i vx o...............|# #| U U #", + ",˽˽˽˽˽˽______;oo i#i v o...............|# #| ^ v vx Г#", + ",____________;,oo i#i U o...............|#LLLL #| vx v #", + ",____________;,,oo ƃ v o...............|# #|Г v xv o", + ",__Á_________;,,,oo vvv o...............|#LLLL #| ^ vvUv o", + ",____________;,,,,o o...............|######$#| ^ #", + "%˽˽˽˽˽˽______;,,,,o ^ ^ 3|ooooooooooooooo||||||| || ^ #", + ",____________;,,[,o ) ) + E#", + ",____________;,,,,#yiiiiiiiy ) ) Г ) + Г D#", + ",____________;%,,,#||||||||| ||||||||||||||||||||||*||jjjj #####", + ",____________;,,,,#n + |C * C| J|B |4Г k ^ ^ $ F#", + ",˽˽˽˽˽˽______;,,%,#) x | ^ |C v |x | b J|B |) j S# F#", + ",____________;,,,,#4 | | v ^ i| $ d J|B i |jjjj J#Г F#", + ",____________;,,,,O y| ^ E| xv i| U0 J|B i |4 k J#Г F#", + "[__Á_________;,[,,#|||||| D| v i|||| J|B i |) Гk J#Г F#", + ",____________;,,,,#n + |UvUv |ii| AJ|B i |jjjj J#Г F#", + ",˽˽˽˽˽˽______;%,,,#) | Г | ^ +--+ J|B |4 j ^ S#Г F#", + ",____________;,,,,#4 |3 ^ |||||||||||||||) k J#Г F#", + ",____________;,,,,O x y| ^ +--+ J|G ɱ|jjjj J#Г F#", + "%__Á_________;,,%,#|||||| Г |ii| J|G ɱ|4 Гk ^ S#Г F#", + ",____________;,,,,#n + ^ ^ 3|||| AJ|G ɱ|) j 3#Г F#", + ",˽˽˽˽˽˽______;,,[,#) x| | | U0 J|G ɱ|jjjj #####", + ",____________;,,,,#4 | | iiii * $ d J|G ɱ|4 k #", + "[____________;,,%,O y| |*|||||||+| | c J|G |) j ^ ^ £", + ",__Á_________;,,,,#|||||| |x x |i-|x | J|G |jjjj £", + ",____________;%,,,#n + ^ ƃ|CC UU|i-||||||||||||+|| Г #", + ",˽˽˽˽˽˽______;,,,,#) Г| ^ ƃ|||$|00||+|6 + * #", + ",____________;,,,,#4 x| ƃ| |5 I| |kjjkjjkkjkjjkj#", + ",____________;,,,,O y| ƃ| |I III I|||+| jГ j j j #", + ",____________;,,,,#|||||| ƃ| h |I I|RR | j j jГ j #", + "%__Á_________;,[,,#RRRɱɱ| ^ ƃ| A |5 I| | j j j j #", + ",____________;,,,%# * 3 ƃ|JJJJJJJJJ|6 HnUnH 3|RRR|4(j4(j4(j4(j4(#", + ",,%,,,,[,,%,,,,,,,#########££###########################################" ], "palettes": [ "hospital" ], - "terrain": { "5": "t_floor", "H": "t_floor", "X": [ "t_door_metal_locked", "t_door_metal_elocked" ], "=": "t_pavement" }, - "furniture": { "H": "f_locker" }, - "vendingmachines": { "D": { "item_group": "vending_drink", "lootable": true }, "F": { "item_group": "vending_food", "lootable": true } }, + "vendingmachines": { "D": { "item_group": "vending_drink", "lootable": true }, "E": { "item_group": "vending_food", "lootable": true } }, "computers": { - "5": { - "name": "Medical Supply Access", - "security": 2, - "options": [ { "name": "Unlock Door", "action": "unlock" } ], - "failures": [ { "action": "shutdown" }, { "action": "alarm" } ] - }, "6": { "name": "Centrifuge", "options": [ { "name": "Analyze blood", "action": "blood_anal" } ], "failures": [ { "action": "destroy_blood" } ] } }, - "vehicles": { "=": { "vehicle": "pickup_corpses", "chance": 10, "rotation": 270, "status": 1 } }, - "nested": { "=": { "chunks": [ [ "null", 70 ] ] } }, - "items": { - "b": { "item": "magazines", "chance": 50 }, - "B": { "item": "hospital_bed", "chance": 80 }, - "f": { "item": "SUS_fridge_breakroom", "chance": 90 }, - "d": { "item": "office", "chance": 80 }, - "C": { "item": "office", "chance": 20 }, - "S": { "item": "bed", "chance": 60 }, - "r": { "item": "hospital_medical_items", "chance": 30 }, - "R": { "item": "hospital_lab", "chance": 70 }, - "l": { "item": "surgery", "chance": 80 }, - "L": { "item": "allclothes", "chance": 90 }, - "8": { "item": "cleaning", "chance": 70 }, - "9": { "item": "produce", "chance": 40 }, - "T": { "item": "snacks", "chance": 50 }, - "2": { "item": "hospital_samples", "chance": 50 }, - "k": { "item": "doctors_books", "chance": 60 }, - "K": { "item": "hospital_oxygen", "chance": 85 }, - "H": [ - { "item": "harddrugs", "chance": 60 }, - { "item": "gear_medical", "chance": 60, "repeat": [ 1, 3 ] }, - { "item": "drugs_analgesic", "chance": 60, "repeat": [ 1, 3 ] }, - { "item": "drugs_rare", "chance": 60 }, - { "item": "surgery", "chance": 60 } - ] - } + "place_zones": [ + { "type": "ZONE_START_POINT", "faction": "your_followers", "x": [ 43, 44 ], "y": [ 54, 55 ] }, + { "type": "ZONE_START_POINT", "faction": "your_followers", "x": [ 43, 44 ], "y": [ 57, 58 ] }, + { "type": "ZONE_START_POINT", "faction": "your_followers", "x": [ 40, 41 ], "y": [ 63, 64 ] } + ] } } ]