diff --git a/_maps/RandomZLevels/moonoutpost19.dmm b/_maps/RandomZLevels/moonoutpost19.dmm
index 80f2fe5e6f1..ae8f2d28668 100644
--- a/_maps/RandomZLevels/moonoutpost19.dmm
+++ b/_maps/RandomZLevels/moonoutpost19.dmm
@@ -76,7 +76,7 @@
pixel_x = 4
},
/turf/open/floor/plastic,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"ap" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/turf_decal/tile/dark/opposingcorners{
@@ -206,6 +206,10 @@
initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251"
},
/area/awaymission/moonoutpost19/main)
+"bg" = (
+/obj/effect/decal/cleanable/dirt,
+/turf/open/floor/plating,
+/area/awaymission/moonoutpost19/arrivals/shed)
"bk" = (
/obj/effect/turf_decal/siding/wood/corner{
dir = 8
@@ -302,7 +306,7 @@
/obj/structure/rack,
/obj/item/flashlight,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"bU" = (
/obj/machinery/door/airlock/security/glass{
name = "Security Post";
@@ -1094,6 +1098,9 @@
temperature = 251
},
/area/awaymission/moonoutpost19/syndicate)
+"hH" = (
+/turf/closed/wall/rust,
+/area/awaymission/moonoutpost19/arrivals/shed)
"hI" = (
/turf/closed/wall/rust,
/area/awaymission/moonoutpost19/arrivals)
@@ -1320,7 +1327,7 @@
dir = 1
},
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"je" = (
/obj/effect/decal/cleanable/dirt,
/obj/machinery/duct,
@@ -1436,7 +1443,7 @@
},
/obj/machinery/atmospherics/components/unary/vent_pump/on,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"ki" = (
/obj/structure/sign/warning/vacuum{
desc = "A warning sign which reads 'HOSTILE ATMOSPHERE AHEAD'";
@@ -2818,7 +2825,7 @@
/obj/item/cigbutt,
/obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible,
/turf/open/floor/plastic,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"rU" = (
/obj/effect/turf_decal/stripes/asteroid/line{
dir = 5
@@ -3175,7 +3182,7 @@
/obj/effect/decal/cleanable/dirt,
/obj/effect/turf_decal/stripes/line,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"uD" = (
/obj/structure/extinguisher_cabinet/directional/south,
/obj/effect/turf_decal/stripes/line{
@@ -3183,7 +3190,7 @@
},
/obj/effect/turf_decal/lunar_sand/plating,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"uF" = (
/obj/machinery/light/small/directional/east,
/turf/open/misc/asteroid/moon{
@@ -3426,7 +3433,7 @@
"vN" = (
/obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"vR" = (
/obj/structure/bed,
/obj/item/bedsheet,
@@ -4093,7 +4100,7 @@
dir = 4
},
/turf/open/floor/plastic,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"AY" = (
/obj/structure/fence/cut/large{
dir = 8
@@ -4157,7 +4164,7 @@
},
/obj/structure/chair/plastic,
/turf/open/floor/plastic,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"Bx" = (
/turf/open/floor/iron/white/corner{
dir = 8
@@ -4840,7 +4847,7 @@
dir = 1
},
/turf/open/floor/plastic,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"Gv" = (
/obj/structure/flora/rock/style_random,
/turf/open/misc/asteroid/basalt,
@@ -4914,7 +4921,7 @@
},
/obj/machinery/airalarm/directional/south,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"GU" = (
/obj/effect/baseturf_helper/asteroid/moon,
/turf/open/misc/asteroid/moon{
@@ -5378,7 +5385,7 @@
/obj/effect/turf_decal/lunar_sand/plating,
/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"Kb" = (
/obj/structure/alien/weeds,
/obj/structure/bed/nest,
@@ -5625,7 +5632,7 @@
/obj/item/radio/intercom/directional/west,
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plastic,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"My" = (
/turf/open/misc/asteroid/moon{
initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251"
@@ -5706,7 +5713,7 @@
/obj/effect/turf_decal/lunar_sand/plating,
/obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"Nf" = (
/obj/effect/spawner/structure/window,
/turf/open/floor/plating,
@@ -5908,7 +5915,7 @@
/area/awaymission/moonoutpost19/syndicate)
"Oh" = (
/turf/closed/indestructible/reinforced,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"Oj" = (
/obj/structure/table/rolling,
/obj/item/clothing/mask/facehugger/impregnated{
@@ -6151,7 +6158,7 @@
puzzle_id = "atvs"
},
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"Pu" = (
/obj/effect/decal/cleanable/xenoblood{
desc = "It's green and acidic. Nothing good could come of this..."
@@ -6475,7 +6482,7 @@
pixel_x = -7
},
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"RI" = (
/obj/effect/decal/cleanable/blood/tracks{
desc = "Your instincts say you shouldn't be following these.";
@@ -6632,7 +6639,7 @@
"Sy" = (
/obj/effect/turf_decal/lunar_sand,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"SD" = (
/obj/item/trash/can{
pixel_x = 7;
@@ -6688,13 +6695,13 @@
/obj/effect/decal/cleanable/dirt,
/obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"SU" = (
/obj/machinery/door/poddoor/shutters{
id = "awaymission19atvs"
},
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"SX" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/turf_decal/siding/purple{
@@ -6823,11 +6830,11 @@
/obj/structure/cable,
/obj/effect/turf_decal/lunar_sand/plating,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"TP" = (
/obj/structure/reagent_dispensers/fueltank/large,
/turf/open/floor/plastic,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"TR" = (
/obj/effect/turf_decal/tile/neutral/fourcorners,
/turf/open/floor/iron/dark,
@@ -6981,7 +6988,7 @@
/obj/structure/cable,
/obj/effect/turf_decal/lunar_sand,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"Vi" = (
/obj/item/ammo_casing/spent{
pixel_x = -7;
@@ -7059,7 +7066,7 @@
dir = 1
},
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"VH" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/turf_decal/stripes/line{
@@ -7182,7 +7189,7 @@
},
/obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible,
/turf/open/floor/plastic,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"Ws" = (
/obj/structure/alien/weeds,
/obj/structure/alien/weeds,
@@ -7211,7 +7218,7 @@
dir = 8
},
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"Ww" = (
/obj/structure/table,
/obj/item/newspaper,
@@ -7268,7 +7275,7 @@
dir = 1
},
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"WP" = (
/obj/structure/table,
/obj/item/mmi,
@@ -7407,7 +7414,7 @@
},
/obj/item/clothing/under/shorts/black,
/turf/open/floor/plastic,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"XH" = (
/obj/structure/lattice/catwalk,
/obj/structure/tank_holder/emergency_oxygen,
@@ -7538,7 +7545,7 @@
},
/obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"Yx" = (
/obj/structure/table,
/obj/item/reagent_containers/cup/glass/bottle/beer/almost_empty{
@@ -7555,7 +7562,7 @@
req_access = "201"
},
/turf/open/floor/plastic,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"YD" = (
/obj/item/kirbyplants{
desc = "A plastic potted plant.";
@@ -7688,7 +7695,7 @@
},
/obj/structure/cable,
/turf/open/floor/plating,
-/area/awaymission/moonoutpost19/arrivals)
+/area/awaymission/moonoutpost19/arrivals/shed)
"Zo" = (
/turf/open/floor/pod/light,
/area/awaymission/moonoutpost19/tent)
@@ -31653,11 +31660,11 @@ My
My
Ia
Oh
-hI
+hH
Oh
-hI
+hH
Oh
-hI
+hH
Oh
dA
dA
@@ -31915,7 +31922,7 @@ Mx
ao
TP
Yx
-hI
+hH
dA
dA
dA
@@ -32172,7 +32179,7 @@ Bt
Wm
rR
Gu
-hI
+hH
dA
dA
dA
@@ -32686,7 +32693,7 @@ kh
vN
VD
GS
-hI
+hH
dA
dA
dA
@@ -32939,11 +32946,11 @@ My
Qs
Oh
Ve
-Ue
+bg
SS
Sy
-Ue
-hI
+bg
+hH
dA
dA
dA
diff --git a/_maps/RandomZLevels/research.dmm b/_maps/RandomZLevels/research.dmm
index dc44040c4d0..e59bfce8e0f 100644
--- a/_maps/RandomZLevels/research.dmm
+++ b/_maps/RandomZLevels/research.dmm
@@ -17,7 +17,7 @@
/obj/machinery/power/shuttle_engine/propulsion/right{
dir = 1
},
-/turf/open/space,
+/turf/open/floor/plating,
/area/awaymission/research/interior/engineering)
"ai" = (
/obj/machinery/door/airlock/external/ruin,
@@ -27,7 +27,7 @@
/obj/machinery/power/shuttle_engine/propulsion/left{
dir = 1
},
-/turf/open/space,
+/turf/open/floor/plating,
/area/awaymission/research/interior/engineering)
"ak" = (
/turf/closed/wall/mineral/plastitanium{
diff --git a/_maps/RandomZLevels/snowdin.dmm b/_maps/RandomZLevels/snowdin.dmm
index bf98057cdcc..ccf950661fe 100644
--- a/_maps/RandomZLevels/snowdin.dmm
+++ b/_maps/RandomZLevels/snowdin.dmm
@@ -624,6 +624,12 @@
/obj/structure/closet/crate/preopen,
/turf/open/floor/iron,
/area/awaymission/snowdin/post/kitchen)
+"cf" = (
+/obj/effect/turf_decal/tile/neutral/half/contrasted{
+ dir = 8
+ },
+/turf/open/floor/iron,
+/area/awaymission/snowdin/post/mining_main/mechbay)
"ch" = (
/obj/structure/table,
/turf/open/floor/plating,
@@ -872,7 +878,6 @@
pixel_y = 5
},
/obj/item/storage/box{
- illustration = "donk_kit";
name = "box of donkpockets"
},
/obj/structure/cable,
@@ -1286,7 +1291,6 @@
pixel_y = 5
},
/obj/item/storage/box{
- illustration = "donk_kit";
name = "box of donkpockets"
},
/obj/effect/decal/cleanable/dirt,
@@ -6415,6 +6419,11 @@
/obj/effect/baseturf_helper/asteroid/snow,
/turf/closed/mineral/snowmountain,
/area/awaymission/snowdin/cave)
+"tN" = (
+/obj/machinery/power/port_gen/pacman,
+/obj/structure/cable,
+/turf/open/floor/plating,
+/area/awaymission/snowdin/post/mining_main/mechbay)
"tR" = (
/obj/structure/barricade/wooden/snowed,
/turf/open/floor/plating/snowed/cavern,
@@ -8569,6 +8578,12 @@
/obj/effect/mob_spawn/corpse/human/skeleton,
/turf/open/floor/iron/dark,
/area/awaymission/snowdin/cave)
+"Ec" = (
+/obj/effect/turf_decal/tile/neutral/half/contrasted{
+ dir = 4
+ },
+/turf/open/floor/iron,
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ed" = (
/turf/open/floor/circuit/red,
/area/awaymission/snowdin/cave)
@@ -8626,6 +8641,13 @@
/obj/item/shard,
/turf/open/floor/mineral/plastitanium/red,
/area/awaymission/snowdin/cave)
+"Es" = (
+/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden{
+ dir = 4;
+ piping_layer = 4
+ },
+/turf/closed/wall/ice,
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Eu" = (
/obj/structure/table/reinforced,
/obj/item/reagent_containers/cup/glass/bottle/beer{
@@ -8862,7 +8884,7 @@
/obj/structure/grille/broken,
/obj/structure/cable,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"FE" = (
/obj/machinery/atmospherics/pipe/smart/manifold4w/orange/visible,
/obj/structure/lattice/catwalk,
@@ -8875,11 +8897,11 @@
},
/obj/structure/cable,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"FH" = (
/obj/item/shard,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"FK" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
dir = 4;
@@ -8887,19 +8909,19 @@
},
/obj/structure/sign/warning/xeno_mining/directional/east,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"FL" = (
/obj/machinery/atmospherics/components/unary/outlet_injector/on{
dir = 8
},
/turf/open/floor/plating/snowed/cavern,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"FM" = (
/obj/machinery/door/firedoor,
/obj/structure/grille/broken,
/obj/structure/cable,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"FO" = (
/obj/machinery/computer/monitor{
dir = 8
@@ -8917,7 +8939,7 @@
},
/obj/machinery/light/small/directional/east,
/turf/open/misc/asteroid/snow/ice,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"FT" = (
/obj/structure/ore_box,
/turf/closed/mineral/snowmountain/cavern,
@@ -8928,7 +8950,7 @@
dir = 1
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"FZ" = (
/turf/closed/wall/ice,
/area/awaymission/snowdin/post/mining_main)
@@ -8957,10 +8979,7 @@
/obj/effect/decal/cleanable/dirt,
/obj/structure/cable,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
-"Gj" = (
-/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Gk" = (
/turf/closed/wall/ice,
/area/awaymission/snowdin/post/mining_main/mechbay)
@@ -8986,7 +9005,7 @@
id = "snowdin_belt_mine"
},
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Go" = (
/turf/closed/wall,
/area/awaymission/snowdin/post/mining_main)
@@ -9055,24 +9074,24 @@
dir = 1
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"GE" = (
/obj/item/disk/holodisk/snowdin/ripjacob,
/obj/structure/cable,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"GF" = (
/obj/effect/turf_decal/tile/neutral{
dir = 4
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"GG" = (
/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{
dir = 4
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"GH" = (
/turf/closed/wall/rust,
/area/awaymission/snowdin/post/mining_main/mechbay)
@@ -9118,7 +9137,7 @@
id = "snowdin_belt_mine"
},
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"GP" = (
/turf/closed/wall/rust,
/area/awaymission/snowdin/post/mining_main)
@@ -9171,18 +9190,14 @@
/obj/effect/turf_decal/stripes/line,
/turf/open/floor/plating,
/area/awaymission/snowdin/post/mining_main/robotics)
-"GZ" = (
-/obj/effect/decal/cleanable/dirt,
-/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
"Ha" = (
/obj/structure/cable,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Hb" = (
/mob/living/basic/migo,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Hc" = (
/obj/structure/table,
/obj/item/storage/toolbox/mechanical{
@@ -9224,7 +9239,7 @@
id = "snowdin_belt_mine"
},
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Hl" = (
/obj/effect/baseturf_helper/asteroid/snow,
/turf/closed/wall,
@@ -9268,12 +9283,12 @@
/obj/structure/cable,
/obj/effect/mapping_helpers/broken_floor,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Hx" = (
/obj/machinery/holopad,
/obj/effect/mapping_helpers/broken_floor,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Hy" = (
/obj/machinery/door/airlock/research/glass{
name = "Mech Lab"
@@ -9301,7 +9316,7 @@
id = "snowdin_belt_mine"
},
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"HD" = (
/obj/structure/table,
/obj/effect/mapping_helpers/broken_floor,
@@ -9439,26 +9454,26 @@
dir = 8
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ie" = (
/obj/structure/barricade/sandbags,
/obj/effect/mapping_helpers/broken_floor,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"If" = (
/obj/structure/sign/warning/no_smoking/directional/south,
/obj/machinery/light/directional/south,
/obj/effect/turf_decal/tile/neutral/half/contrasted,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ig" = (
/obj/effect/turf_decal/tile/neutral/half/contrasted,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ih" = (
/obj/effect/turf_decal/tile/neutral/anticorner/contrasted,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ii" = (
/obj/machinery/mech_bay_recharge_port,
/obj/machinery/light/directional/south,
@@ -9564,7 +9579,7 @@
dir = 4
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"IE" = (
/obj/machinery/door/airlock/maintenance,
/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance,
@@ -9607,7 +9622,7 @@
/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance,
/obj/structure/cable,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"IQ" = (
/obj/effect/spawner/random/structure/crate_abandoned,
/obj/effect/mapping_helpers/broken_floor,
@@ -9680,16 +9695,16 @@
dir = 8
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Jd" = (
/obj/item/shard,
/obj/effect/turf_decal/tile/neutral/half/contrasted,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Je" = (
/obj/effect/turf_decal/delivery,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Jf" = (
/obj/structure/plasticflaps,
/obj/machinery/conveyor{
@@ -9697,21 +9712,21 @@
id = "snowdin_belt_mine"
},
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Jg" = (
/obj/machinery/conveyor{
dir = 8;
id = "snowdin_belt_mine"
},
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Jh" = (
/obj/machinery/conveyor{
dir = 10;
id = "snowdin_belt_mine"
},
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ji" = (
/obj/effect/turf_decal/stripes/line{
dir = 9
@@ -9733,18 +9748,18 @@
},
/obj/item/shard,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Jn" = (
/obj/machinery/space_heater,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Jp" = (
/obj/structure/closet/crate/preopen,
/obj/item/storage/toolbox/emergency,
/obj/item/clothing/suit/hooded/wintercoat,
/obj/item/clothing/suit/hooded/wintercoat,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Jq" = (
/obj/effect/turf_decal/stripes/corner{
dir = 4
@@ -9804,48 +9819,48 @@
/obj/structure/sign/warning/electric_shock/directional/east,
/obj/structure/cable,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JB" = (
/obj/effect/turf_decal/tile/brown/anticorner/contrasted{
dir = 1
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JC" = (
/obj/effect/turf_decal/tile/brown/half/contrasted{
dir = 1
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JD" = (
/obj/effect/turf_decal/tile/brown/anticorner/contrasted{
dir = 4
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JE" = (
/obj/structure/closet/crate/preopen,
/obj/item/storage/toolbox/emergency,
/obj/item/clothing/suit/hooded/wintercoat,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JF" = (
/obj/structure/ore_box,
/obj/effect/turf_decal/bot,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JG" = (
/obj/effect/turf_decal/stripes/corner,
/obj/effect/turf_decal/tile/brown/anticorner/contrasted{
dir = 1
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JH" = (
/obj/effect/turf_decal/stripes/line,
/obj/effect/turf_decal/tile/brown/half/contrasted,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JI" = (
/obj/effect/turf_decal/stripes/line,
/obj/effect/turf_decal/caution/stand_clear{
@@ -9853,7 +9868,7 @@
},
/obj/effect/turf_decal/tile/brown/half/contrasted,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JJ" = (
/obj/effect/turf_decal/stripes/corner{
dir = 8
@@ -9862,7 +9877,7 @@
dir = 4
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JL" = (
/obj/effect/turf_decal/tile/brown/half/contrasted{
dir = 1
@@ -9919,20 +9934,20 @@
},
/obj/structure/cable,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JY" = (
/obj/effect/turf_decal/tile/brown/half/contrasted{
dir = 8
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"JZ" = (
/obj/machinery/door/airlock/maintenance{
name = "Misc Storage"
},
/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ka" = (
/obj/effect/turf_decal/stripes/line{
dir = 4
@@ -9941,7 +9956,7 @@
dir = 4
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Kb" = (
/obj/effect/turf_decal/stripes/line{
dir = 8
@@ -9950,7 +9965,7 @@
dir = 8
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Kc" = (
/obj/effect/turf_decal/tile/brown/half/contrasted{
dir = 8
@@ -9969,11 +9984,11 @@
dir = 8
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ki" = (
/obj/machinery/light/directional/west,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Kj" = (
/obj/machinery/power/port_gen/pacman,
/obj/machinery/power/terminal{
@@ -10021,20 +10036,20 @@
"Kp" = (
/obj/machinery/holopad,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Kq" = (
/obj/effect/turf_decal/tile/brown/half/contrasted{
dir = 4
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Kr" = (
/obj/structure/door_assembly/door_assembly_min{
anchored = 1;
name = "broken airlock"
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ks" = (
/obj/effect/turf_decal/stripes/line{
dir = 4
@@ -10043,7 +10058,7 @@
dir = 8
},
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ku" = (
/obj/machinery/light/directional/east,
/obj/effect/turf_decal/stripes/line{
@@ -10056,7 +10071,7 @@
dir = 8
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Kv" = (
/obj/structure/fence/corner,
/turf/open/misc/asteroid/snow,
@@ -10101,20 +10116,20 @@
dir = 8
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"KE" = (
/obj/machinery/light/directional/south,
/obj/effect/turf_decal/tile/brown/half/contrasted,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"KF" = (
/obj/effect/turf_decal/tile/brown/half/contrasted,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"KG" = (
/obj/structure/sign/warning/docking/directional/east,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"KI" = (
/obj/structure/table,
/obj/item/storage/toolbox/mechanical,
@@ -10182,7 +10197,7 @@
dir = 4
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"KR" = (
/obj/effect/turf_decal/tile/brown/anticorner/contrasted{
dir = 8
@@ -10223,7 +10238,7 @@
dir = 1
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"KY" = (
/obj/effect/turf_decal/stripes/line{
dir = 1
@@ -10233,14 +10248,14 @@
dir = 1
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"KZ" = (
/obj/effect/turf_decal/stripes/corner{
dir = 4
},
/obj/effect/turf_decal/tile/brown/anticorner/contrasted,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Lf" = (
/obj/machinery/power/apc/auto_name/directional/north,
/obj/structure/cable,
@@ -10323,7 +10338,7 @@
dir = 1
},
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ly" = (
/obj/machinery/atmospherics/pipe/smart/manifold4w/orange/visible{
dir = 9
@@ -10723,6 +10738,14 @@
/obj/effect/spawner/random/exotic/antag_gear_weak,
/turf/open/misc/asteroid/snow,
/area/awaymission/snowdin/cave)
+"NT" = (
+/obj/machinery/door/airlock/maintenance{
+ name = "SMES Storage"
+ },
+/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance,
+/obj/structure/cable,
+/turf/open/floor/plating,
+/area/awaymission/snowdin/post/mining_main/mechbay)
"NV" = (
/obj/effect/turf_decal/weather/snow,
/obj/effect/turf_decal/weather/snow/corner{
@@ -10828,7 +10851,7 @@
/obj/machinery/light/small/directional/north,
/obj/effect/spawner/random/structure/crate_abandoned,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"OD" = (
/obj/machinery/light/small/directional/west,
/obj/structure/closet/emcloset,
@@ -10919,6 +10942,12 @@
slowdown = 1
},
/area/awaymission/snowdin/cave/mountain)
+"Pe" = (
+/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{
+ dir = 1
+ },
+/turf/open/floor/iron,
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Pf" = (
/obj/structure/table,
/obj/structure/bedsheetbin,
@@ -11068,6 +11097,11 @@
slowdown = 1
},
/area/awaymission/snowdin/outside)
+"Qb" = (
+/obj/machinery/power/smes/engineering,
+/obj/structure/cable,
+/turf/open/floor/plating,
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Qc" = (
/obj/structure/flora/tree/stump,
/obj/effect/light_emitter{
@@ -11099,7 +11133,7 @@
name = "asteroid snowice baseturf editor"
},
/turf/closed/wall/ice,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Qh" = (
/obj/structure/table,
/obj/item/clothing/glasses/hud/health,
@@ -11158,7 +11192,7 @@
pixel_y = -32
},
/turf/open/misc/asteroid/snow/ice,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/cave/cavern)
"QB" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
dir = 1;
@@ -11367,11 +11401,17 @@
dir = 4
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"RH" = (
/obj/machinery/airalarm/directional/west,
/turf/open/floor/iron/cafeteria,
/area/awaymission/snowdin/post/messhall)
+"RJ" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/turf/open/floor/plating,
+/area/awaymission/snowdin/post/mining_main/mechbay)
"RN" = (
/obj/structure/flora/bush/snow/style_random,
/obj/effect/light_emitter{
@@ -11626,7 +11666,7 @@
},
/obj/structure/cable,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"SS" = (
/obj/structure/fence{
dir = 4
@@ -11718,7 +11758,7 @@
dir = 4
},
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Tv" = (
/obj/structure/table,
/obj/item/storage/medkit/ancient,
@@ -11815,7 +11855,7 @@
"Uf" = (
/obj/machinery/light/small/directional/west,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Ui" = (
/obj/machinery/light/small/directional/west,
/turf/open/misc/ice/smooth,
@@ -11929,11 +11969,6 @@
},
/turf/open/misc/asteroid/snow,
/area/awaymission/snowdin/outside)
-"UH" = (
-/obj/machinery/power/apc/auto_name/directional/north,
-/obj/structure/cable,
-/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
"UI" = (
/obj/effect/decal/cleanable/blood/old,
/turf/open/misc/asteroid/snow/ice,
@@ -12119,7 +12154,7 @@
/obj/structure/fans/tiny,
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/turf/open/floor/plating,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"VY" = (
/obj/machinery/light/small/directional/south,
/turf/open/misc/asteroid/snow,
@@ -12327,7 +12362,7 @@
},
/obj/effect/turf_decal/tile/brown/anticorner/contrasted,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Xw" = (
/obj/structure/table,
/obj/machinery/light/small/directional/south,
@@ -12420,6 +12455,11 @@
/obj/machinery/light/small/directional/west,
/turf/open/floor/iron/showroomfloor,
/area/awaymission/snowdin/post/cavern1)
+"Yb" = (
+/obj/machinery/computer/monitor,
+/obj/structure/cable,
+/turf/open/floor/plating,
+/area/awaymission/snowdin/post/mining_main/mechbay)
"Yd" = (
/obj/machinery/light/small/directional/west,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden,
@@ -12523,7 +12563,7 @@
/obj/effect/mapping_helpers/airlock/access/all/supply/mining,
/obj/effect/turf_decal/tile/neutral/fourcorners,
/turf/open/floor/iron,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"YB" = (
/obj/machinery/light/broken/directional/west,
/obj/effect/spawner/random/structure/crate_abandoned,
@@ -12568,7 +12608,7 @@
width = 5
},
/turf/open/floor/plating/elevatorshaft,
-/area/awaymission/snowdin/post/mining_dock)
+/area/awaymission/snowdin/post/mining_main/mechbay)
"YK" = (
/obj/machinery/light/small/directional/north,
/turf/open/floor/iron/grimy,
@@ -12602,6 +12642,9 @@
/obj/effect/turf_decal/tile/neutral/fourcorners,
/turf/open/floor/iron/dark/snowdin,
/area/awaymission/snowdin/outside)
+"YX" = (
+/turf/open/floor/plating/elevatorshaft,
+/area/awaymission/snowdin/post/mining_main/mechbay)
"YZ" = (
/obj/effect/turf_decal/stripes/line,
/obj/machinery/airalarm/directional/west,
@@ -12756,6 +12799,10 @@
/obj/structure/flora/tree/stump,
/turf/open/misc/asteroid/snow,
/area/awaymission/snowdin/outside)
+"ZZ" = (
+/obj/structure/cable,
+/turf/open/floor/plating,
+/area/awaymission/snowdin/post/mining_main/mechbay)
(1,1,1) = {"
aa
@@ -57200,11 +57247,11 @@ OP
HL
Iz
GU
-wE
-wE
-wE
-wD
-wD
+GH
+GH
+GH
+GN
+GN
eJ
eJ
eJ
@@ -57457,11 +57504,11 @@ HK
HL
IA
GU
-vW
+Yb
Uf
-wL
-wO
-wE
+He
+tN
+GH
eJ
eJ
eJ
@@ -57714,11 +57761,11 @@ HL
Vd
IB
Gx
-wM
-wL
-wL
+ZZ
+He
+He
JW
-wE
+GH
eJ
eJ
eJ
@@ -57971,11 +58018,11 @@ HM
HM
IB
IJ
-wM
-wM
+ZZ
+ZZ
JA
-wG
-wE
+Qb
+GH
eJ
eJ
eJ
@@ -58228,14 +58275,14 @@ GC
Ic
GU
GU
-wR
-wD
-wD
-wE
-wE
-wD
-wD
-wD
+NT
+GN
+GN
+GH
+GH
+GN
+GN
+GN
eJ
eJ
bh
@@ -58475,13 +58522,13 @@ WN
WN
WN
WN
-xW
-xW
-xW
-wT
-xN
-wL
-xN
+Gk
+Gk
+Gk
+Pe
+cf
+He
+cf
Id
Id
Id
@@ -58492,7 +58539,7 @@ JY
Kg
Kg
KD
-wD
+GN
eJ
eJ
bh
@@ -58730,26 +58777,26 @@ WN
WN
Qy
Qg
-xW
-xW
-xW
-wL
-xN
+Gk
+Gk
+Gk
+He
+cf
GD
-GZ
-xy
-Gj
-wL
-wL
+Hg
+Hf
+Hh
+He
+He
Gi
Jd
Jm
JC
-GZ
-Gj
-xy
-xy
-wD
+Hg
+Hh
+Hf
+Hf
+GN
eJ
eJ
bh
@@ -58998,15 +59045,15 @@ Hw
Hw
Hw
ID
-wM
+ZZ
Ih
YA
JD
-wL
-xy
-Gj
-xy
-wD
+He
+Hf
+Hh
+Hf
+GN
eJ
eJ
bh
@@ -59245,25 +59292,25 @@ WN
WN
VW
FH
-wL
+He
Lx
-xy
-Gj
-xy
+Hf
+Hh
+Hf
Hb
Hx
-xy
+Hf
Ie
-wD
+GN
IN
-wE
-wD
-wD
-wD
+GH
+GN
+GN
+GN
JC
-GZ
+Hg
KE
-wD
+GN
eJ
eJ
bh
@@ -59501,26 +59548,26 @@ WN
WN
WN
VW
-wL
+He
FK
Lx
-xy
-xy
-wL
-Gj
-GZ
-Gj
+Hf
+Hf
+He
+Hh
+Hg
+Hh
If
-wD
-wM
-wE
+GN
+ZZ
+GH
Jn
Jn
-wE
+GH
JC
Kp
KF
-wD
+GN
eJ
eJ
bh
@@ -59757,27 +59804,27 @@ WN
WN
WN
Qy
-xW
-xW
-zI
-xW
+Gk
+Gk
+Es
+Gk
RF
-ya
+Ec
GF
-xy
-wL
-xy
+Hf
+He
+Hf
Ig
-wD
-wM
-wD
+GN
+ZZ
+GN
OB
-wL
+He
JZ
JC
-GZ
-xy
-wD
+Hg
+Hf
+GN
eJ
eJ
bh
@@ -60017,24 +60064,24 @@ WN
WN
WN
FL
-xW
-xW
-xW
+Gk
+Gk
+Gk
GG
-wL
-ya
-ya
+He
+Ec
+Ec
Ih
-wD
-UH
-wD
+GN
+ZZ
+GN
Jp
JE
-wD
+GN
Ts
Kq
KG
-wD
+GN
eJ
eJ
bh
@@ -60283,17 +60330,17 @@ Hy
GN
GH
GH
-wM
-wE
-wD
-wE
-wE
-wD
+ZZ
+GH
+GN
+GH
+GH
+GN
Kr
-wD
-wD
-wE
-wE
+GN
+GN
+GH
+GH
bh
bh
bh
@@ -60540,17 +60587,17 @@ Hg
YZ
Ii
GN
-wM
-wL
-wD
+ZZ
+He
+GN
JF
JF
Ki
-wL
-GZ
-wL
-Gj
-wD
+He
+Hg
+He
+Hh
+GN
bh
bh
bh
@@ -60797,17 +60844,17 @@ Hg
HO
Ij
GH
-wM
-wL
-wD
+ZZ
+He
+GN
JG
Ka
-xO
+RJ
Ks
Ka
KQ
KZ
-wE
+GH
bh
bh
bh
@@ -61054,17 +61101,17 @@ He
HP
Ik
GH
-wM
-wL
-wE
+ZZ
+He
+GH
JH
-Ys
-Ys
+YX
+YX
YH
-Ys
-Ys
+YX
+YX
KX
-wE
+GH
bh
bh
bh
@@ -61312,16 +61359,16 @@ HQ
Il
GH
WX
-wL
-wE
+He
+GH
JH
-Ys
-Ys
-Ys
-Ys
-Ys
+YX
+YX
+YX
+YX
+YX
KX
-wE
+GH
bh
bh
bh
@@ -61568,17 +61615,17 @@ Hz
HO
Im
GN
-wL
-wL
-wE
+He
+He
+GH
JI
-Ys
-Ys
-Ys
-Ys
-Ys
+YX
+YX
+YX
+YX
+YX
KY
-wE
+GH
bh
bh
bh
@@ -61825,17 +61872,17 @@ HA
HO
In
GH
-wL
-wL
-wE
+He
+He
+GH
JH
-Ys
-Ys
-Ys
-Ys
-Ys
+YX
+YX
+YX
+YX
+YX
KX
-wE
+GH
bh
bh
bh
@@ -62082,17 +62129,17 @@ Hf
HO
Ik
GN
-wL
-wL
-wD
+He
+He
+GN
JH
-Ys
-Ys
-Ys
-Ys
-Ys
+YX
+YX
+YX
+YX
+YX
KX
-wD
+GN
bh
bh
bh
@@ -62339,9 +62386,9 @@ Hg
Um
Io
IE
-wL
+He
Je
-wD
+GN
JJ
Kb
Kb
@@ -62349,7 +62396,7 @@ Ku
Kb
Kb
Xu
-wD
+GN
bh
bh
bh
@@ -62596,17 +62643,17 @@ Hh
HS
Ip
GN
-wD
+GN
Jf
-wE
-wD
-wE
-wD
-wD
-wE
-wE
-wD
-wD
+GH
+GN
+GH
+GN
+GN
+GH
+GH
+GN
+GN
bh
bh
bh
@@ -62853,9 +62900,9 @@ HB
GN
GH
GH
-wL
+He
Jg
-wD
+GN
eJ
eJ
eJ
@@ -63112,7 +63159,7 @@ Hk
Hk
Hk
Jh
-wE
+GH
eJ
eJ
eJ
@@ -63359,17 +63406,17 @@ WN
WN
WN
ui
-xW
-xW
-xW
-xW
-xW
-xW
-xW
-xW
-xW
-xW
-xW
+Gk
+Gk
+Gk
+Gk
+Gk
+Gk
+Gk
+Gk
+Gk
+Gk
+Gk
eJ
eJ
eJ
diff --git a/_maps/RandomZLevels/undergroundoutpost45.dmm b/_maps/RandomZLevels/undergroundoutpost45.dmm
index a1f2a036684..6aa99013c81 100644
--- a/_maps/RandomZLevels/undergroundoutpost45.dmm
+++ b/_maps/RandomZLevels/undergroundoutpost45.dmm
@@ -283,10 +283,6 @@
},
/turf/open/floor/iron/grimy,
/area/awaymission/undergroundoutpost45/central)
-"bd" = (
-/obj/effect/spawner/structure/window/reinforced,
-/turf/open/space,
-/area/awaymission/undergroundoutpost45/central)
"bf" = (
/obj/item/storage/belt/security,
/obj/item/assembly/flash/handheld,
@@ -4440,7 +4436,7 @@
/area/awaymission/undergroundoutpost45/engineering)
"qK" = (
/obj/machinery/computer/atmos_control/noreconnect{
- atmos_chambers = list("uo45air"="Air Supply")
+ atmos_chambers = list("uo45air"="Air Supply")
},
/obj/effect/turf_decal/tile/blue/opposingcorners{
dir = 1
@@ -4970,7 +4966,7 @@
"sp" = (
/obj/effect/decal/cleanable/dirt,
/obj/machinery/computer/atmos_control/noreconnect{
- atmos_chambers = list("uo45mix"="Mix Chamber");
+ atmos_chambers = list("uo45mix"="Mix Chamber");
dir = 8
},
/obj/effect/turf_decal/tile/green/anticorner/contrasted{
@@ -5465,7 +5461,7 @@
/area/awaymission/undergroundoutpost45/engineering)
"un" = (
/obj/machinery/computer/atmos_control/noreconnect{
- atmos_chambers = list("uo45n2"="Nitrogen Supply");
+ atmos_chambers = list("uo45n2"="Nitrogen Supply");
dir = 1
},
/obj/effect/turf_decal/tile/red/anticorner/contrasted,
@@ -5490,7 +5486,7 @@
/area/awaymission/undergroundoutpost45/engineering)
"uq" = (
/obj/machinery/computer/atmos_control/noreconnect{
- atmos_chambers = list("uo45o2"="Oxygen Supply");
+ atmos_chambers = list("uo45o2"="Oxygen Supply");
dir = 1
},
/obj/effect/turf_decal/tile/blue/anticorner/contrasted,
@@ -5539,7 +5535,7 @@
/area/awaymission/undergroundoutpost45/crew_quarters)
"uA" = (
/obj/machinery/computer/atmos_control/fixed{
- atmos_chambers = list("uo45air"="Air Supply","uo45mix"="Mix Chamber","uo45n2"="Nitrogen Supply","uo45o2"="Oxygen Supply");
+ atmos_chambers = list("uo45air"="Air Supply","uo45mix"="Mix Chamber","uo45n2"="Nitrogen Supply","uo45o2"="Oxygen Supply");
dir = 4;
name = "Chamber Atmospherics Monitoring"
},
@@ -40840,7 +40836,7 @@ al
bq
dc
aD
-bd
+aP
dZ
aS
aP
diff --git a/_maps/gateway_test.json b/_maps/gateway_test.json
new file mode 100644
index 00000000000..5f4f8eec8a9
--- /dev/null
+++ b/_maps/gateway_test.json
@@ -0,0 +1,15 @@
+{
+ "version": 1,
+ "map_name": "Gateway Test",
+ "map_path": "map_files/debug",
+ "map_file": "gateway_test.dmm",
+ "space_ruin_levels": 1,
+ "load_all_away_missions": true,
+ "ignored_unit_tests": [
+ "/datum/unit_test/antag_moodlets",
+ "/datum/unit_test/job_roundstart_spawnpoints",
+ "/datum/unit_test/required_map_items",
+ "/datum/unit_test/space_dragon_expiration",
+ "/datum/unit_test/traitor"
+ ]
+}
diff --git a/_maps/map_files/debug/gateway_test.dmm b/_maps/map_files/debug/gateway_test.dmm
new file mode 100644
index 00000000000..d3cc2563d47
--- /dev/null
+++ b/_maps/map_files/debug/gateway_test.dmm
@@ -0,0 +1,392 @@
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"a" = (
+/turf/closed/indestructible/reinforced,
+/area/misc/testroom/gateway_room)
+"c" = (
+/obj/effect/turf_decal/tile/neutral/fourcorners,
+/obj/effect/turf_decal/stripes/white/full,
+/turf/open/indestructible/dark,
+/area/misc/testroom/gateway_room)
+"d" = (
+/obj/effect/turf_decal/tile/neutral/fourcorners,
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 8
+ },
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 1
+ },
+/turf/open/indestructible/dark,
+/area/misc/testroom/gateway_room)
+"f" = (
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 9
+ },
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"g" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/extinguisher_cabinet/directional/west,
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"h" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/vending/wallmed/directional/west,
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"j" = (
+/obj/effect/turf_decal/tile/neutral/fourcorners,
+/obj/effect/turf_decal/stripes/white/full,
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 6
+ },
+/obj/structure/sign/flag/ssc/directional/north,
+/turf/open/indestructible/dark,
+/area/misc/testroom/gateway_room)
+"l" = (
+/obj/machinery/computer/communications{
+ dir = 8
+ },
+/obj/effect/turf_decal/bot{
+ dir = 1
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"m" = (
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 4
+ },
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"n" = (
+/obj/effect/turf_decal/tile/neutral/fourcorners,
+/obj/effect/turf_decal/stripes/white/full,
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 4
+ },
+/turf/open/indestructible/dark,
+/area/misc/testroom/gateway_room)
+"p" = (
+/obj/effect/turf_decal/tile/neutral/fourcorners,
+/obj/effect/turf_decal/stripes/white/full,
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 10
+ },
+/obj/structure/sign/flag/nanotrasen/directional/north,
+/turf/open/indestructible/dark,
+/area/misc/testroom/gateway_room)
+"q" = (
+/obj/effect/turf_decal/tile/neutral/fourcorners,
+/obj/effect/turf_decal/stripes/white/full,
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 8
+ },
+/turf/open/indestructible/dark,
+/area/misc/testroom/gateway_room)
+"r" = (
+/obj/effect/turf_decal/delivery,
+/obj/machinery/door/poddoor/shutters/indestructible,
+/turf/open/floor/iron,
+/area/misc/testroom/gateway_room)
+"t" = (
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 5
+ },
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"u" = (
+/obj/effect/turf_decal/tile/neutral/fourcorners,
+/obj/effect/turf_decal/stripes/white/full,
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 1
+ },
+/obj/structure/sign/flag/terragov/directional/north,
+/turf/open/indestructible/dark,
+/area/misc/testroom/gateway_room)
+"v" = (
+/obj/machinery/gateway/centerstation,
+/obj/effect/turf_decal/stripes/white/box,
+/obj/effect/turf_decal/trimline/blue,
+/turf/open/indestructible/dark,
+/area/misc/testroom/gateway_room)
+"y" = (
+/obj/machinery/light/directional/east,
+/obj/effect/turf_decal/tile/neutral/fourcorners,
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 4
+ },
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 1
+ },
+/turf/open/indestructible/dark,
+/area/misc/testroom/gateway_room)
+"z" = (
+/obj/effect/landmark/blobstart,
+/obj/effect/turf_decal/stripes/red/line,
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"B" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"C" = (
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 8
+ },
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"D" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 6
+ },
+/obj/structure/sign/warning/secure_area/directional/south,
+/obj/effect/landmark/latejoin,
+/obj/effect/landmark/observer_start,
+/obj/effect/landmark/start,
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"E" = (
+/obj/machinery/door/airlock/public/glass{
+ name = "Gateway Chamber"
+ },
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"G" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/structure/table,
+/obj/item/toy/figure/curator{
+ pixel_y = 5
+ },
+/obj/item/card/id/advanced/debug,
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"H" = (
+/turf/open/space/basic,
+/area/space)
+"I" = (
+/obj/machinery/computer/gateway_control{
+ dir = 8
+ },
+/obj/effect/turf_decal/stripes/full,
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"J" = (
+/obj/effect/turf_decal/tile/neutral/fourcorners,
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 1
+ },
+/turf/open/indestructible/dark,
+/area/misc/testroom/gateway_room)
+"K" = (
+/obj/structure/closet/crate/preopen,
+/obj/item/stack/sheet/rglass{
+ amount = 50
+ },
+/obj/item/stack/sheet/iron/fifty,
+/obj/item/stack/rods/fifty,
+/obj/item/toy/plush/lizard_plushie/space/green{
+ name = "Travels-The-Stars";
+ desc = "The greatest gateway explorer ever created."
+ },
+/obj/effect/spawner/random/engineering/flashlight,
+/obj/item/storage/toolbox/emergency,
+/obj/machinery/firealarm/directional/west,
+/obj/effect/turf_decal/bot{
+ dir = 1
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 9
+ },
+/obj/structure/sign/calendar/directional/north,
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"M" = (
+/obj/structure/chair/stool/directional/east,
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/keycard_auth/directional/west{
+ pixel_y = 7
+ },
+/obj/machinery/keycard_auth/directional/west{
+ pixel_y = -7
+ },
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"N" = (
+/obj/effect/turf_decal/tile/neutral/fourcorners,
+/obj/effect/turf_decal/stripes/white/full,
+/obj/effect/turf_decal/stripes/red/line{
+ dir = 4
+ },
+/obj/structure/sign/warning/radiation/directional/east,
+/turf/open/indestructible/dark,
+/area/misc/testroom/gateway_room)
+"O" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 10
+ },
+/obj/machinery/suit_storage_unit/centcom,
+/obj/structure/sign/warning/engine_safety/directional/south,
+/obj/structure/sign/warning/no_smoking/circle/directional/west,
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"P" = (
+/obj/machinery/light/directional/west,
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/corporate_perks_vacation/directional/west,
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"Q" = (
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"R" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 5
+ },
+/obj/structure/table,
+/obj/item/paper/pamphlet/gateway{
+ desc = "The Iris and You: How Not To Smash Against Steel At The End of the Event Horizon"
+ },
+/obj/effect/turf_decal/bot{
+ dir = 1
+ },
+/obj/item/radio/intercom/directional/north,
+/turf/open/indestructible,
+/area/misc/testroom/gateway_room)
+"W" = (
+/turf/closed/indestructible/fakeglass,
+/area/misc/testroom/gateway_room)
+
+(1,1,1) = {"
+H
+H
+H
+H
+H
+H
+H
+H
+H
+H
+"}
+(2,1,1) = {"
+H
+a
+a
+a
+a
+a
+a
+a
+a
+H
+"}
+(3,1,1) = {"
+H
+a
+K
+M
+g
+P
+h
+O
+a
+H
+"}
+(4,1,1) = {"
+H
+a
+R
+I
+l
+G
+B
+D
+a
+H
+"}
+(5,1,1) = {"
+H
+a
+W
+W
+W
+W
+E
+W
+a
+H
+"}
+(6,1,1) = {"
+H
+a
+j
+q
+q
+d
+C
+t
+r
+H
+"}
+(7,1,1) = {"
+H
+a
+u
+v
+c
+J
+Q
+z
+r
+H
+"}
+(8,1,1) = {"
+H
+a
+p
+N
+n
+y
+m
+f
+r
+H
+"}
+(9,1,1) = {"
+H
+a
+a
+a
+a
+a
+a
+a
+a
+H
+"}
+(10,1,1) = {"
+H
+H
+H
+H
+H
+H
+H
+H
+H
+H
+"}
diff --git a/code/__DEFINES/admin.dm b/code/__DEFINES/admin.dm
index b9cbcaec431..6a8ff366629 100644
--- a/code/__DEFINES/admin.dm
+++ b/code/__DEFINES/admin.dm
@@ -73,6 +73,8 @@
#define ADMIN_SHOW_PAPER(atom) "(SHOW)"
/// Displays "(PLAY)" in the chat, when clicked it tries to play internet sounds from the request.
#define ADMIN_PLAY_INTERNET(text, credit) "(PLAY)"
+/// Displays "(SEE Z-LEVEL LAYOUT)" in the chat, when clicked it shows the z-level layouts for the current world state.
+#define ADMIN_SEE_ZLEVEL_LAYOUT "(SEE Z-LEVEL LAYOUT)"
/atom/proc/Admin_Coordinates_Readable(area_name, admin_jump_ref)
var/turf/T = Safe_COORD_Location()
diff --git a/code/controllers/subsystem/mapping.dm b/code/controllers/subsystem/mapping.dm
index 475572f024b..9767f60fee8 100644
--- a/code/controllers/subsystem/mapping.dm
+++ b/code/controllers/subsystem/mapping.dm
@@ -144,6 +144,9 @@ SUBSYSTEM_DEF(mapping)
if(CONFIG_GET(flag/roundstart_away))
createRandomZlevel(prob(CONFIG_GET(number/config_gateway_chance)))
+ else if (SSmapping.config.load_all_away_missions) // we're likely in a local testing environment, so punch it.
+ load_all_away_missions()
+
loading_ruins = TRUE
setup_ruins()
loading_ruins = FALSE
@@ -929,3 +932,77 @@ GLOBAL_LIST_EMPTY(the_station_areas)
/// Returns true if the map we're playing on is on a planet
/datum/controller/subsystem/mapping/proc/is_planetary()
return config.planetary
+
+/// For debug purposes, will add every single away mission present in a given directory.
+/// You can optionally pass in a string directory to load from instead of the default.
+/datum/controller/subsystem/mapping/proc/load_all_away_missions(map_directory)
+ if(!map_directory)
+ map_directory = "_maps/RandomZLevels/"
+ var/start_time = null // in case we're doing this at runtime, useful to know how much time we're spending loading all these away missions
+ var/confirmation_alert_result = null
+ var/new_wait = 0 // default to always zeroing out the wait time for away missions to be unlocked due to the unit-testery nature of this map
+
+ if(IsAdminAdvancedProcCall())
+ if(!check_rights(R_DEBUG))
+ return
+ var/confirmation_string = "This will load every single away mission in the [map_directory] directory. This might cause a bit of lag that can only be cleared on a world restart. Are you sure you want to do this?"
+ confirmation_alert_result = tgui_alert(usr, confirmation_string, "DEBUG ONLY!!!", list("Yes", "Cancel"))
+ if(confirmation_alert_result != "Yes")
+ return
+
+ var/current_wait_time = CONFIG_GET(number/gateway_delay)
+ switch(tgui_alert(usr, "Do you want to zero out the cooldown for access to these maps? Currently [DisplayTimeText(current_wait_time)]", "OH FUCK!!!", list("Yes", "No", "Cancel")))
+ if("No")
+ new_wait = current_wait_time
+ if("Cancel")
+ return
+
+ else
+ start_time = REALTIMEOFDAY
+ var/beginning_message = "Loading all away missions..."
+ to_chat(world, span_boldannounce(beginning_message))
+ log_world(beginning_message)
+ log_mapping(beginning_message)
+
+ var/list/all_away_missions = generate_map_list_from_directory(map_directory)
+ var/number_of_away_missions = length(all_away_missions)
+ for(var/entry in all_away_missions)
+ load_new_z_level(entry, entry, secret = FALSE) // entry in both fields so we know if something failed to load since it'll log the full file name of what was loaded.
+
+ for(var/datum/gateway_destination/away_datum in GLOB.gateway_destinations)
+ away_datum.wait = new_wait
+ log_mapping("Now loading [away_datum.name]...")
+
+ validate_z_level_loading(all_away_missions)
+
+ if(!isnull(start_time))
+ var/tracked_time = (REALTIMEOFDAY - start_time) / 10
+ var/finished_message = "Loaded [number_of_away_missions] away missions in [tracked_time] second[tracked_time == 1 ? "" : "s"]!"
+ to_chat(world, span_boldannounce(finished_message))
+ log_world(finished_message)
+ log_mapping(finished_message)
+
+ if(isnull(confirmation_alert_result))
+ log_mapping("All away missions have been loaded. List of away missions paired to corresponding Z-Levels are as follows:")
+ log_mapping(gather_z_level_information())
+ return
+
+ message_admins("[key_name_admin(usr)] has loaded every single away mission in the [map_directory] directory. [ADMIN_SEE_ZLEVEL_LAYOUT]")
+ log_game("[key_name(usr)] has loaded every single away mission in the [map_directory] directory.")
+
+/// Lightweight proc that just checks to make sure that all of the expected z-levels were loaded. Split out for clarity from load_all_away_missions()
+/// Argument "checkable_levels" is just a list of the names (typically the filepaths) of the z-levels we were expected to load, which should correspond to the name on the space level datum.
+/datum/controller/subsystem/mapping/proc/validate_z_level_loading(list/checkable_levels)
+ for(var/z in 1 to max(world.maxz, length(z_list)))
+ var/datum/space_level/level = z_list[z]
+ if(isnull(level))
+ continue
+
+ var/level_name = level.name
+ if(level_name in checkable_levels)
+ checkable_levels -= level_name
+ continue
+
+ var/number_of_remaining_levels = length(checkable_levels)
+ if(number_of_remaining_levels > 0)
+ CRASH("The following [number_of_remaining_levels] away mission(s) were not loaded: [checkable_levels.Join("\n")]")
diff --git a/code/datums/map_config.dm b/code/datums/map_config.dm
index 8ea96175ea6..4c071cbc2bb 100644
--- a/code/datums/map_config.dm
+++ b/code/datums/map_config.dm
@@ -44,6 +44,9 @@
/// List of unit tests that are skipped when running this map
var/list/skipped_tests
+ /// Boolean that tells SSmapping to load all away missions in the codebase.
+ var/load_all_away_missions = FALSE
+
/**
* Proc that simply loads the default map config, which should always be functional.
*/
@@ -183,6 +186,9 @@
if ("blacklist_file" in json)
blacklist_file = json["blacklist_file"]
+ if ("load_all_away_missions" in json)
+ load_all_away_missions = json["load_all_away_missions"]
+
allow_custom_shuttles = json["allow_custom_shuttles"] != FALSE
if ("job_changes" in json)
diff --git a/code/game/area/areas/misc.dm b/code/game/area/areas/misc.dm
index af2aaa6666c..f2c7ac62c15 100644
--- a/code/game/area/areas/misc.dm
+++ b/code/game/area/areas/misc.dm
@@ -43,3 +43,8 @@
base_lighting_alpha = 255
name = "Test Room"
icon_state = "test_room"
+
+/area/misc/testroom/gateway_room
+ name = "Gateway Room"
+ icon = 'icons/area/areas_station.dmi'
+ icon_state = "gateway"
diff --git a/code/game/objects/effects/landmarks.dm b/code/game/objects/effects/landmarks.dm
index 6f6148e910b..50604639cb4 100644
--- a/code/game/objects/effects/landmarks.dm
+++ b/code/game/objects/effects/landmarks.dm
@@ -467,7 +467,6 @@ INITIALIZE_IMMEDIATE(/obj/effect/landmark/start/new_player)
/obj/effect/landmark/unit_test_top_right
name = "unit test zone top right"
-
/obj/effect/landmark/start/hangover
name = "hangover spawn"
icon_state = "hangover_spawn"
diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm
index a8293f55f6e..14434fc183a 100644
--- a/code/modules/admin/topic.dm
+++ b/code/modules/admin/topic.dm
@@ -1769,3 +1769,8 @@
web_sound(usr, link_url, credit)
+ else if(href_list["debug_z_levels"])
+ if(!check_rights(R_DEBUG))
+ return
+
+ owner.debug_z_levels()
diff --git a/code/modules/admin/verbs/mapping.dm b/code/modules/admin/verbs/mapping.dm
index 726852174d8..59ab9be43e9 100644
--- a/code/modules/admin/verbs/mapping.dm
+++ b/code/modules/admin/verbs/mapping.dm
@@ -319,9 +319,14 @@ GLOBAL_VAR_INIT(say_disabled, FALSE)
set name = "Debug Z-Levels"
set category = "Mapping"
- var/list/z_list = SSmapping.z_list
+ to_chat(src, examine_block(gather_z_level_information(append_grid = TRUE)), confidential = TRUE)
+
+/// Returns all necessary z-level information. Argument `append_grid` allows the user to see a table showing all of the z-level linkages, which is only visible and useful in-game.
+/proc/gather_z_level_information(append_grid = FALSE)
var/list/messages = list()
- messages += "World: [world.maxx] x [world.maxy] x [world.maxz]
"
+
+ var/list/z_list = SSmapping.z_list
+ messages += "\nWorld: [world.maxx] x [world.maxy] x [world.maxz]\n"
var/list/linked_levels = list()
var/min_x = INFINITY
@@ -331,49 +336,50 @@ GLOBAL_VAR_INIT(say_disabled, FALSE)
for(var/z in 1 to max(world.maxz, z_list.len))
if (z > z_list.len)
- messages += "[z]: Unmanaged (out of bounds)
"
+ messages += "[z]: Unmanaged (out of bounds)"
continue
- var/datum/space_level/S = z_list[z]
- if (!S)
- messages += "[z]: Unmanaged (null)
"
+ var/datum/space_level/level = z_list[z]
+ if (!level)
+ messages += "[z]: Unmanaged (null)"
continue
var/linkage
- switch (S.linkage)
+ switch (level.linkage)
if (UNAFFECTED)
linkage = "no linkage"
if (SELFLOOPING)
linkage = "self-looping"
if (CROSSLINKED)
- linkage = "linked at ([S.xi], [S.yi])"
- linked_levels += S
- min_x = min(min_x, S.xi)
- min_y = min(min_y, S.yi)
- max_x = max(max_x, S.xi)
- max_y = max(max_y, S.yi)
+ linkage = "linked at ([level.xi], [level.yi])"
+ linked_levels += level
+ min_x = min(min_x, level.xi)
+ min_y = min(min_y, level.yi)
+ max_x = max(max_x, level.xi)
+ max_y = max(max_y, level.yi)
else
- linkage = "unknown linkage '[S.linkage]'"
+ linkage = "unknown linkage '[level.linkage]'"
- messages += "[z]: [S.name], [linkage], traits: [json_encode(S.traits)]
"
- if (S.z_value != z)
- messages += "-- z_value is [S.z_value], should be [z]
"
- if (S.name == initial(S.name))
- messages += "-- name not set
"
+ messages += "[z]: [level.name], [linkage], traits: [json_encode(level.traits)]"
+ if (level.z_value != z)
+ messages += "-- z_value is [level.z_value], should be [z]"
+ if (level.name == initial(level.name))
+ messages += "-- name not set"
if (z > world.maxz)
messages += "-- exceeds max z"
var/grid[max_x - min_x + 1][max_y - min_y + 1]
- for(var/datum/space_level/S in linked_levels)
- grid[S.xi - min_x + 1][S.yi - min_y + 1] = S.z_value
+ for(var/datum/space_level/linked_level in linked_levels)
+ grid[linked_level.xi - min_x + 1][linked_level.yi - min_y + 1] = linked_level.z_value
- messages += "
"
- for(var/y in max_y to min_y step -1)
- var/list/part = list()
- for(var/x in min_x to max_x)
- part += "[grid[x - min_x + 1][y - min_y + 1]]"
- messages += "| [part.Join(" | ")] |
"
- messages += "
"
+ if(append_grid)
+ messages += "
"
+ for(var/y in max_y to min_y step -1)
+ var/list/part = list()
+ for(var/x in min_x to max_x)
+ part += "[grid[x - min_x + 1][y - min_y + 1]]"
+ messages += "| [part.Join(" | ")] |
"
+ messages += "
"
- to_chat(src, examine_block(messages.Join("")), confidential = TRUE)
+ return messages.Join("\n")
/client/proc/station_food_debug()
set name = "Count Station Food"
diff --git a/code/modules/awaymissions/mission_code/moonoutpost19.dm b/code/modules/awaymissions/mission_code/moonoutpost19.dm
index 433fb1cb17c..2447f45fac1 100644
--- a/code/modules/awaymissions/mission_code/moonoutpost19.dm
+++ b/code/modules/awaymissions/mission_code/moonoutpost19.dm
@@ -16,6 +16,10 @@
name = "MO19 Arrivals"
icon_state = "awaycontent2"
+/area/awaymission/moonoutpost19/arrivals/shed
+ name = "MO19 Arrivals Shed"
+ icon_state = "awaycontent9"
+
/area/awaymission/moonoutpost19/research
name = "MO19 Research"
icon_state = "awaycontent3"
diff --git a/code/modules/awaymissions/zlevel.dm b/code/modules/awaymissions/zlevel.dm
index 31ccdfa2119..c4bb2d17610 100644
--- a/code/modules/awaymissions/zlevel.dm
+++ b/code/modules/awaymissions/zlevel.dm
@@ -1,6 +1,6 @@
// How much "space" we give the edge of the map
GLOBAL_LIST_INIT(potentialRandomZlevels, generateMapList(filename = "awaymissionconfig.txt"))
-GLOBAL_LIST_INIT(potentialConfigRandomZlevels, generateConfigMapList(directory = "[global.config.directory]/away_missions/"))
+GLOBAL_LIST_INIT(potentialConfigRandomZlevels, generate_map_list_from_directory(directory = "[global.config.directory]/away_missions/"))
/proc/createRandomZlevel(config_gateway = FALSE)
var/map
@@ -72,7 +72,8 @@ GLOBAL_LIST_INIT(potentialConfigRandomZlevels, generateConfigMapList(directory =
. += t
-/proc/generateConfigMapList(directory)
+/// Returns a list of all maps to be found in the directory that is passed in.
+/proc/generate_map_list_from_directory(directory)
var/list/config_maps = list()
var/list/maps = flist(directory)
for(var/map_file in maps)
diff --git a/config/maps.txt b/config/maps.txt
index e63e709eb99..bc5373ce354 100644
--- a/config/maps.txt
+++ b/config/maps.txt
@@ -13,18 +13,14 @@ Format:
votable (is this map votable)
endmap
+# Production-level maps.
+
map birdshot
#default
maxplayers 66
votable
endmap
-map metastation
- minplayers 25
- #voteweight 0.5
- votable
-endmap
-
map deltastation
minplayers 50
votable
@@ -35,8 +31,9 @@ map icebox
votable
endmap
-map tramstation
- minplayers 35
+map metastation
+ minplayers 25
+ #voteweight 0.5
votable
endmap
@@ -45,9 +42,18 @@ map northstar
votable
endmap
+map tramstation
+ minplayers 35
+ votable
+endmap
-map runtimestation
+# Debug-only maps.
+
+map gateway_test
endmap
map multiz_debug
endmap
+
+map runtimestation
+endmap