From 579b334030914c6a83f0178b4e129fdcb84bb737 Mon Sep 17 00:00:00 2001 From: curstwist <39442864+curstwist@users.noreply.github.com> Date: Sun, 25 Aug 2019 17:20:20 -0400 Subject: [PATCH] add migo scout tower --- data/json/mapgen/mi-go/mi-go_nested.json | 42 +++++ data/json/mapgen/mi-go/mi-go_scout_tower.json | 151 ++++++++++++++++++ data/json/mapgen_palettes/mi-go_palette.json | 1 + data/json/monstergroups/mi-go.json | 11 ++ .../overmap/overmap_special/specials.json | 16 ++ .../overmap_terrain_mi-go.json | 32 ++++ 6 files changed, 253 insertions(+) create mode 100644 data/json/mapgen/mi-go/mi-go_scout_tower.json diff --git a/data/json/mapgen/mi-go/mi-go_nested.json b/data/json/mapgen/mi-go/mi-go_nested.json index af72ca954366b..2107dce47805c 100644 --- a/data/json/mapgen/mi-go/mi-go_nested.json +++ b/data/json/mapgen/mi-go/mi-go_nested.json @@ -427,5 +427,47 @@ ], "palettes": [ "mi-go_palette" ] } + }, + { + "type": "mapgen", + "method": "json", + "nested_mapgen_id": "mi-go_scout_tower_cells", + "//": "Mi-go surgical suite and prisoner cells for upper z levels", + "weight": 100, + "object": { + "fill_ter": "t_floor_resin", + "mapgensize": [ 18, 18 ], + "rotation": [ 0, 3 ], + "rows": [ + "vvvvvvvv||vvvvvvvv", + "vvvvvv||||||vvvvvv", + "vvvv|||PPPP|||vvvv", + "vv|||PP #1|||vv", + "|||PP i ### ||v", + "|< } #2 |v", + "|> VnV i ###||", + "@|i nnn #3|", + "@|i nnn i # |", + "@+ VnV ###||", + "|| i #4 |v", + "|P } ### ###|v", + "| i # ####5||v", + "|||PPPP #7#6 |||vv", + "@@||||||||# ||vvvv", + "@||vvvvvv||||vvvvv", + "@vvv@@@@@@@@@@@@@@", + "@@@@@@@@@@@@@@@@@@" + ], + "palettes": [ "mi-go_palette" ], + "npcs": { + "1": { "class": "mi-go_prisoner", "chance": 20 }, + "2": { "class": "mi-go_prisoner", "chance": 20 }, + "3": { "class": "mi-go_prisoner", "chance": 20 }, + "4": { "class": "mi-go_prisoner", "chance": 20 }, + "5": { "class": "mi-go_prisoner", "chance": 20 }, + "6": { "class": "mi-go_prisoner", "chance": 20 }, + "7": { "class": "mi-go_prisoner", "chance": 20 } + } + } } ] diff --git a/data/json/mapgen/mi-go/mi-go_scout_tower.json b/data/json/mapgen/mi-go/mi-go_scout_tower.json new file mode 100644 index 0000000000000..ec101401e862d --- /dev/null +++ b/data/json/mapgen/mi-go/mi-go_scout_tower.json @@ -0,0 +1,151 @@ +[ + { + "type": "mapgen", + "method": "json", + "om_terrain": "mi-go_scout_tower_1", + "object": { + "fill_ter": "t_floor_resin", + "rows": [ + "........................", + "........................", + "........................", + "............||..........", + "..........||||||........", + "........|||TPTP|||......", + "......||| |||....", + "....||| T||...", + "...||< T |...", + "...||| P P ||..", + "....|| T T|..", + ".....| P P T|..", + ".....+ ||..", + "....|| TPTP TPTP|...", + "..||| |...", + "||| + TPTP ||...", + "|| ||| TPTP |||....", + "|| 14 ||||||||TT||......", + ".| ||......||||.......", + ".|||||..................", + "........................", + "........................", + "........................", + "........................" + ], + "palettes": [ "mi-go_palette" ], + "place_nested": [ { "chunks": [ "mi-go_encampment1_room14" ], "x": 1, "y": 14 } ], + "place_monsters": [ { "monster": "GROUP_MI-GO_BASE_COMMON", "density": 0.1, "x": 8, "y": 10 } ] + } + }, + { + "type": "mapgen", + "method": "json", + "om_terrain": "mi-go_scout_tower_2", + "object": { + "fill_ter": "t_floor_resin", + "rows": [ + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvv||vvvvvvvvvv", + "vvvvvvvvvv||||||vvvvvvvv", + "vvvvvvvv||| O|||vvvvvv", + "vvvvvv||| O{O |||vvvv", + "vvvv|||i O O i O||vvv", + "vvv||> O{O O{O|vvv", + "vvv||< O O O ||vv", + "vvvv||i F O{O i|vv", + "vvvvv| O O O |vv", + "vvvvv| O{O O{O ||vv", + "vvvv|| i O O O |vvv", + "vv||| O{O {V|vvv", + "||| + F V O ||vvv", + "||{ ||| i F|||vvvv", + "||V i||||||||iV||vvvvvv", + "v|PPP||vvvvvv||||vvvvvvv", + "v|||||vvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv" + ], + "palettes": [ "mi-go_palette" ], + "place_monsters": [ { "monster": "GROUP_MI-GO_BASE_COMMON", "density": 0.1, "x": 8, "y": 10, "repeat": [ 1, 2 ] } ] + } + }, + { + "type": "mapgen", + "method": "json", + "om_terrain": "mi-go_scout_tower_3", + "object": { + "fill_ter": "t_floor_resin", + "rows": [ + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvv||vvvvvvvvvv", + "vvvvvvvvvv||||||vvvvvvvv", + "vvvvvvvv||| |||vvvvvv", + "vvvvvv||| |||vvvv", + "vvvv||| ||vvv", + "vvv||< |vvv", + "vvv||> 6 ||vv", + "vvvv|| |vv", + "vvvvv| |vv", + "vvvvv| ||vv", + "vvvv|| |vvv", + "vv||| |vvv", + "||| + ||vvv", + "|| ||| |||vvvv", + "|| 14 |||||||| ||vvvvvv", + "v| ||vvvvvv||||vvvvvvv", + "v|||||vvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv" + ], + "palettes": [ "mi-go_palette" ], + "place_nested": [ + { "chunks": [ "mi-go_scout_tower_cells" ], "x": 4, "y": 3 }, + { "chunks": [ "mi-go_encampment1_room14" ], "x": 1, "y": 14 } + ], + "place_monsters": [ { "monster": "GROUP_MI-GO_SCOUT_TOWER", "density": 0.1, "x": 12, "y": 12 } ] + } + }, + { + "type": "mapgen", + "method": "json", + "om_terrain": "mi-go_scout_tower_4", + "object": { + "fill_ter": "t_floor_resin", + "rows": [ + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvv##vvvvvvvvvv", + "vvvvvvvvvv######vvvvvvvv", + "vvvvvvvv###_iV_###vvvvvv", + "vvvvvv###________###vvvv", + "vvvv###____________##vvv", + "vvv##>___T__________#vvv", + "vvv##_______________##vv", + "vvvv##_______________ivv", + "vvvvvi_______T________vv", + "vvvvv_________________vv", + "vvvvi____________T___vvv", + "vv###_______________ivvv", + "###_+____T_________##vvv", + "##{_###__________###vvvv", + "##V__i#i____i___##vvvvvv", + "v#VV_##vvvvvv####vvvvvvv", + "v#####vvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv", + "vvvvvvvvvvvvvvvvvvvvvvvv" + ], + "palettes": [ "mi-go_palette" ], + "place_monsters": [ { "monster": "GROUP_MI-GO_BASE_COMMON", "density": 0.1, "x": 12, "y": 12, "repeat": [ 1, 2 ] } ] + } + } +] diff --git a/data/json/mapgen_palettes/mi-go_palette.json b/data/json/mapgen_palettes/mi-go_palette.json index d7753efb1d854..ea1564d414e5f 100644 --- a/data/json/mapgen_palettes/mi-go_palette.json +++ b/data/json/mapgen_palettes/mi-go_palette.json @@ -23,6 +23,7 @@ "V": "f_alien_anemone", "{": "f_alien_gasper", "F": "f_alien_zapper", + "T": [ "f_alien_zapper", [ "f_alien_gasper", 2 ], [ "f_alien_tendril", 4 ], [ "f_alien_anemone", 2 ] ], "P": [ [ "f_alien_pod", 2 ], [ "f_alien_pod_organ", 2 ], "f_alien_pod_resin" ], "p": [ [ "f_alien_pod", 2 ], [ "f_alien_pod_organ", 2 ], "f_alien_pod_resin" ], "O": "f_alien_pod_resin" diff --git a/data/json/monstergroups/mi-go.json b/data/json/monstergroups/mi-go.json index 23dd537855726..6e100677d855d 100644 --- a/data/json/monstergroups/mi-go.json +++ b/data/json/monstergroups/mi-go.json @@ -50,5 +50,16 @@ { "monster": "mon_mi_go_myrmidon", "freq": 30, "cost_multiplier": 6, "starts": 840, "pack_size": [ 1, 2 ] }, { "monster": "mon_mi_go_scout", "freq": 100, "cost_multiplier": 3, "pack_size": [ 1, 2 ] } ] + }, + { + "type": "monstergroup", + "name": "GROUP_MI-GO_SCOUT_TOWER", + "//": "Mi-go scout tower prisoner room.", + "default": "mon_mi_go", + "monsters": [ + { "monster": "mon_mi_go_surgeon", "freq": 100, "cost_multiplier": 3 }, + { "monster": "mon_mi_go_guard", "freq": 100, "cost_multiplier": 6 }, + { "monster": "mon_mi_go", "freq": 100, "cost_multiplier": 2, "pack_size": [ 3, 4 ] } + ] } ] diff --git a/data/json/overmap/overmap_special/specials.json b/data/json/overmap/overmap_special/specials.json index 7c256683c448c..048ad7631ac12 100644 --- a/data/json/overmap/overmap_special/specials.json +++ b/data/json/overmap/overmap_special/specials.json @@ -4511,6 +4511,22 @@ "flags": [ "CLASSIC" ], "spawns": { "group": "GROUP_MI-GO_CAMP_OM", "population": [ 20, 50 ], "radius": [ 2, 30 ] } }, + { + "type": "overmap_special", + "id": "Mi-Go Scout Tower", + "overmaps": [ + { "point": [ 0, 0, 0 ], "overmap": "mi-go_scout_tower_1_north" }, + { "point": [ 0, 0, 1 ], "overmap": "mi-go_scout_tower_2_north" }, + { "point": [ 0, 0, 2 ], "overmap": "mi-go_scout_tower_3_north" }, + { "point": [ 0, 0, 3 ], "overmap": "mi-go_scout_tower_4_north" } + ], + "locations": [ "wilderness", "forest", "land" ], + "city_distance": [ 1, -1 ], + "city_sizes": [ 0, 20 ], + "occurrences": [ 0, 3 ], + "flags": [ "CLASSIC" ], + "spawns": { "group": "GROUP_MI-GO_CAMP_OM", "population": [ 2, 5 ], "radius": [ 2, 30 ] } + }, { "type": "overmap_special", "id": "Isherwood Farms", diff --git a/data/json/overmap/overmap_terrain/overmap_terrain_mi-go.json b/data/json/overmap/overmap_terrain/overmap_terrain_mi-go.json index af8262bc764c3..127d27e83e802 100644 --- a/data/json/overmap/overmap_terrain/overmap_terrain_mi-go.json +++ b/data/json/overmap/overmap_terrain/overmap_terrain_mi-go.json @@ -30,5 +30,37 @@ "sym": "_", "color": "light_gray", "mondensity": 2 + }, + { + "type": "overmap_terrain", + "id": "mi-go_scout_tower_1", + "name": "mi-go scout tower", + "sym": ">", + "color": "light_gray", + "mondensity": 2 + }, + { + "type": "overmap_terrain", + "id": "mi-go_scout_tower_2", + "name": "mi-go scout tower", + "sym": ">", + "color": "light_gray", + "mondensity": 2 + }, + { + "type": "overmap_terrain", + "id": "mi-go_scout_tower_3", + "name": "mi-go scout tower", + "sym": ">", + "color": "light_gray", + "mondensity": 2 + }, + { + "type": "overmap_terrain", + "id": "mi-go_scout_tower_4", + "name": "mi-go scout tower", + "sym": ">", + "color": "light_gray", + "mondensity": 2 } ]