diff --git a/Dockerfile b/Dockerfile
index 5f755e3dc1..e8a5f44908 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,4 +1,4 @@
-FROM tgstation/byond:513.1503 as base
+FROM tgstation/byond:513.1508 as base
FROM base as build_base
diff --git a/_maps/RandomRuins/StationRuins/Box/Engine/engine_am.dmm b/_maps/RandomRuins/StationRuins/Box/Engine/engine_am.dmm
index 0c83691bd7..c341464197 100644
--- a/_maps/RandomRuins/StationRuins/Box/Engine/engine_am.dmm
+++ b/_maps/RandomRuins/StationRuins/Box/Engine/engine_am.dmm
@@ -1,4 +1,35 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aa" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"ab" = (
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"ac" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"ad" = (
+/obj/machinery/door/poddoor/shutters/radiation/preopen,
+/turf/open/floor/plating,
+/area/engine/engineering)
"aT" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/machinery/button/door{
@@ -166,13 +197,6 @@
},
/turf/open/floor/plasteel,
/area/engine/engineering)
-"wt" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"xx" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -320,16 +344,6 @@
},
/turf/open/floor/plasteel,
/area/engine/engineering)
-"HW" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"In" = (
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/obj/machinery/door/airlock/external{
@@ -366,13 +380,6 @@
/obj/machinery/power/am_control_unit,
/turf/open/floor/plating,
/area/engine/engineering)
-"JC" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"JZ" = (
/obj/machinery/atmospherics/pipe/simple/orange/visible{
dir = 4
@@ -525,16 +532,6 @@
/obj/effect/turf_decal/box/red,
/turf/open/floor/engine,
/area/engine/engineering)
-"YY" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"Zb" = (
/obj/effect/turf_decal/stripes/line{
dir = 10
@@ -862,7 +859,7 @@ xJ
gf
fh
dN
-YY
+aa
MD
Ch
dz
@@ -890,7 +887,7 @@ LO
Eu
Pg
cP
-JC
+ab
WI
rj
dz
@@ -918,7 +915,7 @@ NS
xx
fh
zW
-JC
+ab
WI
rj
dz
@@ -946,7 +943,7 @@ yo
me
aT
Aw
-JC
+ab
WI
rj
dz
@@ -973,7 +970,7 @@ MJ
jH
FK
Ch
-wt
+ad
Ch
rj
rj
@@ -1026,7 +1023,7 @@ MJ
MJ
"}
(17,1,1) = {"
-wt
+ad
Zz
Wf
Ox
@@ -1082,7 +1079,7 @@ MJ
MJ
"}
(19,1,1) = {"
-wt
+ad
eJ
Zx
nW
@@ -1141,7 +1138,7 @@ MJ
jH
Nz
Ch
-wt
+ad
Ch
rj
rj
@@ -1170,7 +1167,7 @@ fh
WX
HQ
Aw
-JC
+ab
WI
rj
dz
@@ -1198,7 +1195,7 @@ fh
kh
fh
fh
-JC
+ab
WI
rj
dz
@@ -1226,7 +1223,7 @@ fh
kh
uG
cP
-JC
+ab
WI
rj
dz
@@ -1254,7 +1251,7 @@ eA
FY
mB
Rp
-HW
+ac
Mi
Ch
dz
diff --git a/_maps/RandomRuins/StationRuins/Box/Engine/engine_singulo.dmm b/_maps/RandomRuins/StationRuins/Box/Engine/engine_singulo.dmm
index 402cfc73cf..da0a0036c5 100644
--- a/_maps/RandomRuins/StationRuins/Box/Engine/engine_singulo.dmm
+++ b/_maps/RandomRuins/StationRuins/Box/Engine/engine_singulo.dmm
@@ -1,4 +1,52 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aa" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen,
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"ab" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/structure/cable{
+ icon_state = "2-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen,
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"ac" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen,
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"ad" = (
+/obj/structure/cable{
+ icon_state = "2-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen,
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"ae" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen,
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"af" = (
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
"aT" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/machinery/button/door{
@@ -35,16 +83,6 @@
},
/turf/open/floor/plasteel,
/area/engine/engineering)
-"dW" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"ea" = (
/obj/effect/turf_decal/stripes/line,
/turf/open/floor/engine,
@@ -299,23 +337,6 @@
},
/turf/open/floor/plasteel,
/area/engine/engineering)
-"wt" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
-"xg" = (
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"xx" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -542,16 +563,6 @@
/obj/structure/closet/radiation,
/turf/open/floor/plasteel,
/area/engine/engineering)
-"HW" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"In" = (
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/obj/machinery/door/airlock/external{
@@ -582,19 +593,6 @@
},
/turf/open/floor/plating,
/area/engine/engineering)
-"JC" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"Kg" = (
/obj/structure/cable/yellow{
icon_state = "1-2"
@@ -825,19 +823,6 @@
},
/turf/closed/wall,
/area/engine/engineering)
-"YY" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"Zb" = (
/obj/effect/turf_decal/stripes/line{
dir = 10
@@ -1169,7 +1154,7 @@ xJ
gf
fh
dN
-YY
+aa
MD
Ch
Pt
@@ -1197,7 +1182,7 @@ LO
Eu
Pg
cP
-JC
+ab
tv
rj
Pt
@@ -1225,7 +1210,7 @@ NS
xx
fh
zW
-dW
+ac
ea
rj
Pt
@@ -1253,7 +1238,7 @@ yo
me
aT
Aw
-JC
+ab
tv
rj
Og
@@ -1280,7 +1265,7 @@ MJ
jH
FK
Ch
-wt
+af
tE
rj
rj
@@ -1333,7 +1318,7 @@ dz
MJ
"}
(17,1,1) = {"
-wt
+af
Zz
Wf
Ox
@@ -1389,7 +1374,7 @@ MJ
MJ
"}
(19,1,1) = {"
-wt
+af
eJ
Zx
nW
@@ -1448,7 +1433,7 @@ MJ
jH
Nz
Ch
-wt
+af
tE
rj
rj
@@ -1477,7 +1462,7 @@ AF
WX
HQ
Aw
-JC
+ab
tv
rj
Og
@@ -1505,7 +1490,7 @@ fh
kh
fh
fh
-dW
+ac
ea
rj
Pt
@@ -1533,7 +1518,7 @@ fh
kh
uG
cP
-xg
+ad
tv
rj
Pt
@@ -1561,7 +1546,7 @@ eA
FY
mB
Rp
-HW
+ae
Mi
Ch
Pt
diff --git a/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm.dmm b/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm.dmm
index 6462cef211..e15eda336c 100644
--- a/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm.dmm
+++ b/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm.dmm
@@ -1,4 +1,18 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aa" = (
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
"ab" = (
/obj/effect/spawner/structure/window/plasma/reinforced,
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
@@ -13,6 +27,76 @@
},
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
+"ad" = (
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"ae" = (
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/item/tank/internals/plasma,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"af" = (
+/obj/effect/decal/cleanable/oil,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"ag" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"ah" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
"at" = (
/obj/structure/closet/crate/bin,
/obj/effect/turf_decal/stripes/line{
@@ -178,21 +262,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"df" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/oil,
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"dl" = (
/obj/structure/cable{
icon_state = "1-4"
@@ -600,21 +669,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"nW" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/obj/item/tank/internals/plasma,
-/turf/open/floor/plating,
-/area/engine/supermatter)
"ou" = (
/obj/machinery/atmospherics/pipe/simple/orange/visible{
dir = 4
@@ -636,20 +690,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"px" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"pA" = (
/obj/machinery/atmospherics/pipe/simple/general/visible{
dir = 4
@@ -737,19 +777,6 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/engine,
/area/engine/supermatter)
-"re" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"rt" = (
/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{
dir = 4
@@ -1091,19 +1118,6 @@
/obj/machinery/meter,
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"Cn" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"CH" = (
/obj/machinery/door/firedoor,
/obj/machinery/door/airlock/engineering/glass{
@@ -1571,20 +1585,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"Nw" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"Nx" = (
/obj/effect/turf_decal/stripes/line{
dir = 8
@@ -2385,9 +2385,9 @@ VP
EX
Vg
KX
-px
-nW
-Cn
+aa
+ae
+ag
fj
xB
WI
@@ -2609,9 +2609,9 @@ Ws
Pa
wz
fj
-Nw
-df
-re
+ad
+af
+ah
KX
ni
lw
diff --git a/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_1x3.dmm b/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_1x3.dmm
index 05e6e4b63f..99c5ca9f76 100644
--- a/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_1x3.dmm
+++ b/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_1x3.dmm
@@ -1,4 +1,11 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aa" = (
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/engine,
+/area/engine/supermatter)
"ab" = (
/obj/effect/spawner/structure/window/plasma/reinforced,
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
@@ -1805,13 +1812,6 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"Vz" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/engine,
-/area/engine/supermatter)
"VP" = (
/obj/machinery/meter,
/obj/machinery/atmospherics/pipe/simple/green/visible{
@@ -2320,7 +2320,7 @@ Vg
KX
px
nW
-Vz
+aa
cN
xB
WI
@@ -2348,7 +2348,7 @@ lQ
KX
RA
tE
-Vz
+aa
cN
Xy
Ml
@@ -2376,7 +2376,7 @@ uz
RA
ti
YY
-Vz
+aa
cN
JK
WT
@@ -2488,7 +2488,7 @@ RA
Wf
mW
bq
-Vz
+aa
cN
JK
WT
@@ -2516,7 +2516,7 @@ wz
fj
RA
cY
-Vz
+aa
cN
vO
Np
@@ -2544,7 +2544,7 @@ Ey
fj
Cn
df
-Vz
+aa
cN
JK
lw
diff --git a/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_3x.dmm b/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_3x.dmm
index 3356ebaa77..ef18ab99d1 100644
--- a/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_3x.dmm
+++ b/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_3x.dmm
@@ -1,4 +1,18 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aa" = (
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
"ab" = (
/obj/effect/spawner/structure/window/plasma/reinforced,
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
@@ -13,6 +27,76 @@
},
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
+"ad" = (
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"ae" = (
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/item/tank/internals/plasma,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"af" = (
+/obj/effect/decal/cleanable/oil,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"ag" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"ah" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
"at" = (
/obj/structure/closet/crate/bin,
/obj/effect/turf_decal/stripes/line{
@@ -178,21 +262,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"df" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/oil,
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"dl" = (
/obj/structure/cable{
icon_state = "1-4"
@@ -591,21 +660,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"nW" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/obj/item/tank/internals/plasma,
-/turf/open/floor/plating,
-/area/engine/supermatter)
"ou" = (
/obj/machinery/atmospherics/pipe/simple/orange/visible{
dir = 4
@@ -627,20 +681,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"px" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"pA" = (
/obj/machinery/atmospherics/pipe/simple/general/visible{
dir = 4
@@ -728,19 +768,6 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/engine,
/area/engine/supermatter)
-"re" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"rt" = (
/obj/machinery/atmospherics/pipe/manifold/scrubbers/visible{
dir = 4
@@ -1065,19 +1092,6 @@
/obj/machinery/meter,
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"Cn" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"CH" = (
/obj/machinery/door/firedoor,
/obj/machinery/door/airlock/engineering/glass{
@@ -1546,20 +1560,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"Nw" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"Nx" = (
/obj/effect/turf_decal/stripes/line{
dir = 8
@@ -2335,9 +2335,9 @@ VP
EX
Vg
KX
-px
-nW
-Cn
+aa
+ae
+ag
fj
xB
WI
@@ -2559,9 +2559,9 @@ Ws
Pa
wz
fj
-Nw
-df
-re
+ad
+af
+ah
KX
ni
lw
diff --git a/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_5x5.dmm b/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_5x5.dmm
index 3b3328a8f0..1c36e99ed6 100644
--- a/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_5x5.dmm
+++ b/_maps/RandomRuins/StationRuins/Box/Engine/engine_sm_5x5.dmm
@@ -1,4 +1,18 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aa" = (
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
"ab" = (
/obj/effect/spawner/structure/window/plasma/reinforced,
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
@@ -13,6 +27,76 @@
},
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
+"ad" = (
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"ae" = (
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/item/tank/internals/plasma,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"af" = (
+/obj/effect/decal/cleanable/oil,
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"ag" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"ah" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
"at" = (
/obj/structure/closet/crate/bin,
/obj/effect/turf_decal/stripes/line{
@@ -190,21 +274,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"df" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/oil,
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"dl" = (
/obj/structure/cable{
icon_state = "1-4"
@@ -619,21 +688,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"nW" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/obj/item/tank/internals/plasma,
-/turf/open/floor/plating,
-/area/engine/supermatter)
"ou" = (
/obj/machinery/atmospherics/pipe/simple/orange/visible{
dir = 4
@@ -655,20 +709,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"px" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"pA" = (
/obj/machinery/atmospherics/pipe/simple/general/visible{
dir = 4
@@ -770,19 +810,6 @@
},
/turf/open/floor/engine,
/area/engine/supermatter)
-"re" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"rt" = (
/obj/machinery/atmospherics/components/unary/portables_connector/visible{
dir = 1
@@ -1127,19 +1154,6 @@
/obj/machinery/meter,
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"Cn" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"CH" = (
/obj/machinery/door/firedoor,
/obj/machinery/door/airlock/engineering/glass{
@@ -1605,20 +1619,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"Nw" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"Nx" = (
/obj/effect/turf_decal/stripes/line{
dir = 9
@@ -2384,11 +2384,11 @@ bW
VP
rt
Vg
-px
-px
-nW
-Cn
-Cn
+aa
+aa
+ae
+ag
+ag
xB
WI
IE
@@ -2608,12 +2608,12 @@ hy
js
Pa
xB
-Nw
-Nw
-df
-re
-re
-Vg
+ad
+ad
+af
+ah
+ah
+vO
lw
bH
JV
diff --git a/_maps/RandomRuins/StationRuins/Box/Engine/engine_tesla.dmm b/_maps/RandomRuins/StationRuins/Box/Engine/engine_tesla.dmm
index af2ba1ffd7..0d52d2b3b8 100644
--- a/_maps/RandomRuins/StationRuins/Box/Engine/engine_tesla.dmm
+++ b/_maps/RandomRuins/StationRuins/Box/Engine/engine_tesla.dmm
@@ -1,4 +1,67 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"aa" = (
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"ab" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"ac" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/structure/cable{
+ icon_state = "2-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"ad" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"ae" = (
+/obj/structure/cable{
+ icon_state = "2-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"af" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plasteel,
+/area/engine/engineering)
"aT" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/machinery/button/door{
@@ -348,23 +411,6 @@
},
/turf/open/floor/plasteel,
/area/engine/engineering)
-"wt" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
-"xg" = (
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"xx" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -478,19 +524,6 @@
},
/turf/open/floor/plating,
/area/engine/engineering)
-"Bh" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"Bj" = (
/obj/structure/lattice/catwalk,
/obj/structure/cable{
@@ -605,16 +638,6 @@
/obj/item/clothing/gloves/color/yellow,
/turf/open/floor/plasteel,
/area/engine/engineering)
-"HW" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"In" = (
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/obj/machinery/door/airlock/external{
@@ -645,16 +668,6 @@
},
/turf/open/floor/plating,
/area/engine/engineering)
-"JC" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"JZ" = (
/obj/machinery/atmospherics/pipe/simple/orange/visible{
dir = 4
@@ -968,19 +981,6 @@
/obj/structure/lattice,
/turf/open/space/basic,
/area/space/nearstation)
-"YY" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"Zb" = (
/obj/effect/turf_decal/stripes/line{
dir = 10
@@ -1318,7 +1318,7 @@ xJ
gf
fh
dN
-YY
+ab
MD
Ch
Pt
@@ -1346,7 +1346,7 @@ LO
Eu
Pg
cP
-Bh
+ac
tv
rj
Pt
@@ -1374,7 +1374,7 @@ NS
xx
fh
zW
-Bh
+ac
tv
rj
Pt
@@ -1402,7 +1402,7 @@ yo
me
aT
Aw
-JC
+ad
WI
rj
Og
@@ -1429,7 +1429,7 @@ MJ
jH
FK
Ch
-wt
+aa
tE
rj
rj
@@ -1482,7 +1482,7 @@ dz
MJ
"}
(17,1,1) = {"
-wt
+aa
Zz
Wf
Ox
@@ -1538,7 +1538,7 @@ MJ
MJ
"}
(19,1,1) = {"
-wt
+aa
eJ
Zx
nW
@@ -1597,7 +1597,7 @@ MJ
jH
Nz
Ch
-wt
+aa
tE
rj
rj
@@ -1626,7 +1626,7 @@ AF
WX
HQ
Aw
-JC
+ad
WI
rj
Og
@@ -1654,7 +1654,7 @@ fh
kh
fh
fh
-Bh
+ac
tv
rj
Pt
@@ -1682,7 +1682,7 @@ fh
kh
uG
cP
-xg
+ae
tv
rj
Pt
@@ -1710,7 +1710,7 @@ eA
FY
mB
Rp
-HW
+af
Mi
Ch
Pt
diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm
index d09ac36997..a2f0026842 100644
--- a/_maps/map_files/BoxStation/BoxStation.dmm
+++ b/_maps/map_files/BoxStation/BoxStation.dmm
@@ -2512,9 +2512,6 @@
/obj/effect/turf_decal/tile/blue{
dir = 4
},
-/obj/machinery/airalarm{
- pixel_y = 23
- },
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"afa" = (
@@ -3231,11 +3228,10 @@
/turf/open/floor/plasteel,
/area/security/brig)
"agq" = (
-/obj/machinery/door/poddoor/shutters{
- id = "armory1";
- name = "Armoury Shutter"
- },
/obj/effect/turf_decal/delivery,
+/obj/machinery/door/poddoor/shutters/window{
+ id = "armory1"
+ },
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"agr" = (
@@ -3586,25 +3582,58 @@
pixel_y = -26;
req_access_txt = "3"
},
-/obj/machinery/door/poddoor/shutters{
- id = "armory1";
- name = "Armoury Shutter"
- },
/obj/effect/turf_decal/delivery,
+/obj/machinery/door/poddoor/shutters/window{
+ id = "armory1"
+ },
+/turf/open/floor/plasteel/dark,
+/area/ai_monitored/security/armory)
+"agW" = (
+/obj/structure/rack,
+/obj/structure/window/reinforced{
+ dir = 1;
+ layer = 2.9
+ },
+/obj/item/storage/box/handcuffs{
+ pixel_x = -1;
+ pixel_y = 1
+ },
+/obj/item/storage/box/handcuffs{
+ pixel_x = 1;
+ pixel_y = -1
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 8
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 4
+ },
+/obj/effect/turf_decal/tile/neutral,
+/obj/effect/turf_decal/tile/blue{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/blue{
+ dir = 8
+ },
+/obj/effect/turf_decal/bot,
+/obj/machinery/camera/motion{
+ c_tag = "Armory Motion Sensor";
+ dir = 4
+ },
+/obj/machinery/airalarm{
+ dir = 4;
+ pixel_x = -23
+ },
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"agX" = (
-/obj/machinery/door/poddoor/shutters{
- id = "armory2";
- name = "Armoury Shutter"
- },
-/obj/machinery/button/door{
- id = "armory2";
- name = "Armory Shutters";
- pixel_y = -26;
- req_access_txt = "3"
- },
/obj/effect/turf_decal/delivery,
+/obj/machinery/door/poddoor/shutters/window{
+ id = "armory2"
+ },
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"agY" = (
@@ -3757,42 +3786,11 @@
/turf/open/floor/plasteel,
/area/security/main)
"ahm" = (
-/obj/structure/rack,
-/obj/structure/window/reinforced{
- dir = 1;
- layer = 2.9
- },
-/obj/item/storage/box/handcuffs{
- pixel_x = -1;
- pixel_y = 1
- },
-/obj/item/storage/box/handcuffs{
- pixel_x = 1;
- pixel_y = -1
- },
-/obj/effect/turf_decal/tile/neutral{
- dir = 1
- },
-/obj/effect/turf_decal/tile/neutral{
- dir = 8
- },
-/obj/effect/turf_decal/tile/neutral{
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
-/obj/effect/turf_decal/tile/neutral,
-/obj/effect/turf_decal/tile/blue{
- dir = 1
- },
-/obj/effect/turf_decal/tile/blue{
- dir = 8
- },
-/obj/effect/turf_decal/bot,
-/obj/machinery/camera/motion{
- c_tag = "Armory Motion Sensor";
- dir = 4
- },
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
+/turf/open/floor/plasteel,
+/area/crew_quarters/fitness)
"ahn" = (
/turf/closed/wall,
/area/maintenance/fore/secondary)
@@ -3824,6 +3822,17 @@
},
/turf/open/floor/plasteel,
/area/security/processing)
+"ahs" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
+/obj/item/radio/intercom{
+ pixel_y = 25
+ },
+/obj/effect/landmark/start/assistant,
+/obj/structure/chair/sofa/right,
+/turf/open/floor/plasteel,
+/area/crew_quarters/fitness)
"aht" = (
/obj/effect/turf_decal/tile/red{
dir = 4
@@ -3971,6 +3980,17 @@
/obj/effect/turf_decal/bot,
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
+"ahC" = (
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
+ dir = 8
+ },
+/obj/structure/closet/wardrobe/white,
+/obj/item/clothing/under/suit/waiter,
+/obj/item/clothing/under/suit/waiter,
+/obj/item/clothing/under/suit/waiter,
+/obj/item/clothing/suit/straight_jacket,
+/turf/open/floor/plasteel,
+/area/crew_quarters/fitness)
"ahD" = (
/obj/structure/chair,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
@@ -4100,6 +4120,30 @@
},
/turf/open/floor/plasteel,
/area/security/main)
+"ahO" = (
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
+ dir = 4;
+ pixel_y = 5
+ },
+/obj/structure/chair/sofa/left{
+ dir = 1
+ },
+/turf/open/floor/plasteel,
+/area/crew_quarters/fitness)
+"ahP" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/structure/closet/wardrobe/mixed,
+/obj/item/clothing/under/costume/kilt,
+/obj/item/clothing/under/costume/kilt,
+/obj/item/clothing/under/dress/skirt/purple,
+/obj/item/clothing/head/beret,
+/obj/item/clothing/head/beret,
+/obj/item/clothing/head/beret,
+/obj/structure/sign/poster/official/fashion{
+ pixel_x = -32
+ },
+/turf/open/floor/plasteel,
+/area/crew_quarters/fitness)
"ahQ" = (
/obj/effect/turf_decal/tile/red{
dir = 8
@@ -4275,6 +4319,14 @@
/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
/turf/open/floor/plasteel/showroomfloor,
/area/security/brig)
+"aia" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/structure/closet/secure_closet/hydroponics,
+/obj/structure/sign/poster/official/hydro_ad{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel,
+/area/hydroponics)
"aib" = (
/obj/structure/cable{
icon_state = "2-8"
@@ -4353,11 +4405,16 @@
/turf/open/floor/plasteel,
/area/security/brig)
"aih" = (
-/obj/machinery/door/poddoor/shutters{
+/obj/machinery/button/door{
id = "armory2";
- name = "Armoury Shutter"
+ name = "Armory Shutters";
+ pixel_y = -26;
+ req_access_txt = "3"
},
/obj/effect/turf_decal/delivery,
+/obj/machinery/door/poddoor/shutters/window{
+ id = "armory2"
+ },
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"aii" = (
@@ -4614,6 +4671,16 @@
},
/turf/open/floor/plating,
/area/maintenance/fore/secondary)
+"aiB" = (
+/obj/machinery/vending/kink,
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/obj/structure/sign/poster/official/fashion{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel,
+/area/crew_quarters/locker)
"aiC" = (
/obj/structure/cable{
icon_state = "1-4"
@@ -4722,6 +4789,13 @@
/obj/effect/turf_decal/bot,
/turf/open/floor/plasteel/dark,
/area/security/brig)
+"aiJ" = (
+/obj/structure/reagent_dispensers/watertank/high,
+/obj/structure/sign/poster/official/hydro_ad{
+ pixel_x = -32
+ },
+/turf/open/floor/plasteel,
+/area/hydroponics)
"aiK" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
dir = 1
@@ -4774,6 +4848,14 @@
/obj/effect/turf_decal/box,
/turf/open/floor/plasteel/dark,
/area/security/brig)
+"aiP" = (
+/obj/structure/table,
+/obj/item/storage/firstaid/regular,
+/obj/structure/sign/poster/official/medical_green_cross{
+ pixel_x = -32
+ },
+/turf/open/floor/plasteel/white,
+/area/medical/medbay/central)
"aiQ" = (
/obj/effect/spawner/structure/window/reinforced,
/obj/structure/cable{
@@ -4797,6 +4879,13 @@
/obj/effect/spawner/structure/window/reinforced,
/turf/open/floor/plating,
/area/security/processing)
+"aiV" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/obj/machinery/holopad,
+/turf/open/floor/plasteel,
+/area/hallway/primary/central)
"aiW" = (
/obj/structure/closet/bombcloset/security,
/obj/effect/turf_decal/bot,
@@ -4817,26 +4906,24 @@
/turf/open/floor/plating,
/area/ai_monitored/security/armory)
"aja" = (
-/obj/machinery/door/poddoor/shutters{
- id = "armory3";
- name = "Armoury Shutter"
- },
/obj/effect/turf_decal/delivery,
/obj/structure/cable{
icon_state = "4-8"
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/machinery/door/poddoor/shutters/window{
+ id = "armory3"
+ },
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"ajb" = (
-/obj/machinery/door/poddoor/shutters{
- id = "armory3";
- name = "Armoury Shutter"
- },
/obj/effect/turf_decal/delivery,
/obj/structure/cable{
icon_state = "4-8"
},
+/obj/machinery/door/poddoor/shutters/window{
+ id = "armory3"
+ },
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
"ajc" = (
@@ -4888,6 +4975,16 @@
/obj/effect/turf_decal/bot,
/turf/open/floor/plasteel/dark,
/area/security/brig)
+"ajh" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/obj/effect/turf_decal/delivery,
+/obj/structure/sign/poster/official/pda_ad800{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel,
+/area/hallway/primary/central)
"aji" = (
/obj/structure/chair{
name = "Judge"
@@ -4974,6 +5071,17 @@
},
/turf/open/floor/plating,
/area/security/vacantoffice/b)
+"ajs" = (
+/obj/structure/disposalpipe/segment,
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/structure/sign/poster/official/pda_ad600{
+ pixel_x = 32
+ },
+/turf/open/floor/plasteel,
+/area/crew_quarters/heads/hop)
"ajt" = (
/obj/machinery/camera{
c_tag = "Vacant Office B";
@@ -5001,6 +5109,15 @@
},
/turf/open/floor/plasteel,
/area/security/main)
+"ajv" = (
+/obj/machinery/computer/med_data{
+ dir = 3
+ },
+/obj/structure/sign/poster/official/medical_green_cross{
+ pixel_x = -32
+ },
+/turf/open/floor/plasteel/white,
+/area/medical/sleeper)
"ajw" = (
/obj/structure/disposalpipe/segment{
dir = 6
@@ -5056,6 +5173,12 @@
},
/turf/open/floor/plasteel,
/area/security/main)
+"ajB" = (
+/obj/structure/sign/poster/official/medical_green_cross{
+ pixel_x = 32
+ },
+/turf/open/floor/plasteel/white,
+/area/medical/medbay/central)
"ajC" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -5069,6 +5192,13 @@
},
/turf/open/floor/plasteel,
/area/security/brig)
+"ajD" = (
+/obj/effect/spawner/lootdrop/keg,
+/obj/structure/sign/poster/contraband/scum{
+ pixel_x = -32
+ },
+/turf/open/floor/plating,
+/area/maintenance/port/aft)
"ajE" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/effect/turf_decal/tile/neutral{
@@ -5093,6 +5223,16 @@
},
/turf/open/floor/plasteel,
/area/security/brig)
+"ajG" = (
+/obj/structure/table,
+/obj/item/kitchen/rollingpin,
+/obj/item/reagent_containers/food/condiment/enzyme,
+/obj/item/reagent_containers/food/condiment/sugar,
+/obj/structure/sign/poster/contraband/scum{
+ pixel_x = -32
+ },
+/turf/open/floor/plating,
+/area/maintenance/port/aft)
"ajH" = (
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
dir = 4
@@ -5155,6 +5295,20 @@
/obj/effect/turf_decal/bot,
/turf/open/floor/plasteel/dark,
/area/security/brig)
+"ajM" = (
+/obj/structure/rack,
+/obj/effect/spawner/lootdrop/maintenance{
+ lootcount = 2;
+ name = "2maintenance loot spawner"
+ },
+/obj/structure/sign/poster/contraband/scum{
+ pixel_y = 32
+ },
+/obj/structure/sign/poster/contraband/scum{
+ pixel_y = 32
+ },
+/turf/open/floor/plating,
+/area/maintenance/starboard/aft)
"ajN" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -5309,6 +5463,18 @@
},
/turf/open/floor/plating,
/area/construction/mining/aux_base)
+"aka" = (
+/obj/structure/closet/secure_closet/bar{
+ req_access_txt = "25"
+ },
+/obj/item/clothing/under/suit/waiter,
+/obj/item/clothing/under/suit/waiter,
+/obj/item/clothing/under/suit/waiter,
+/obj/item/gun/ballistic/revolver/doublebarrel,
+/obj/item/stack/sheet/metal/fifty,
+/obj/item/stack/sheet/glass/fifty,
+/turf/open/floor/wood,
+/area/crew_quarters/bar)
"akb" = (
/obj/machinery/light{
dir = 8
@@ -5503,6 +5669,12 @@
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,
/turf/open/floor/plasteel,
/area/security/main)
+"akt" = (
+/obj/machinery/chem_master/condimaster{
+ name = "HoochMaster 2000"
+ },
+/turf/open/floor/wood,
+/area/crew_quarters/bar)
"aku" = (
/obj/structure/cable{
icon_state = "1-8"
@@ -8917,20 +9089,6 @@
},
/turf/open/floor/plasteel/grimy,
/area/security/detectives_office)
-"asZ" = (
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
- dir = 8
- },
-/obj/structure/closet/wardrobe/white,
-/obj/item/clothing/under/suit/waiter,
-/obj/item/clothing/under/suit/waiter,
-/obj/item/clothing/under/suit/waiter,
-/obj/structure/sign/poster/contraband/lizard{
- pixel_x = -32
- },
-/obj/item/clothing/suit/straight_jacket,
-/turf/open/floor/plasteel,
-/area/crew_quarters/fitness)
"ata" = (
/turf/open/floor/wood,
/area/lawoffice)
@@ -9204,17 +9362,6 @@
},
/turf/open/floor/plasteel,
/area/crew_quarters/fitness)
-"aua" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/structure/closet/wardrobe/mixed,
-/obj/item/clothing/under/costume/kilt,
-/obj/item/clothing/under/costume/kilt,
-/obj/item/clothing/under/dress/skirt/purple,
-/obj/item/clothing/head/beret,
-/obj/item/clothing/head/beret,
-/obj/item/clothing/head/beret,
-/turf/open/floor/plasteel,
-/area/crew_quarters/fitness)
"aub" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/obj/effect/turf_decal/tile/yellow,
@@ -15263,16 +15410,6 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plating,
/area/maintenance/starboard/fore)
-"aJE" = (
-/obj/structure/closet/secure_closet/bar{
- req_access_txt = "25"
- },
-/obj/item/clothing/under/suit/waiter,
-/obj/item/clothing/under/suit/waiter,
-/obj/item/clothing/under/suit/waiter,
-/obj/item/gun/ballistic/revolver/doublebarrel,
-/turf/open/floor/wood,
-/area/crew_quarters/bar)
"aJF" = (
/obj/machinery/newscaster{
pixel_x = 30
@@ -15667,11 +15804,6 @@
},
/turf/open/floor/wood,
/area/crew_quarters/bar)
-"aKK" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/structure/closet/secure_closet/hydroponics,
-/turf/open/floor/plasteel,
-/area/hydroponics)
"aKL" = (
/obj/machinery/airalarm{
pixel_y = 24
@@ -16630,15 +16762,6 @@
},
/turf/open/floor/plasteel,
/area/hallway/primary/central)
-"aND" = (
-/obj/item/stack/sheet/metal/fifty,
-/obj/item/stack/sheet/glass/fifty,
-/obj/item/stack/cable_coil,
-/obj/item/flashlight/lamp,
-/obj/item/flashlight/lamp/green,
-/obj/structure/table/wood,
-/turf/open/floor/wood,
-/area/crew_quarters/bar)
"aNE" = (
/obj/structure/disposalpipe/segment,
/obj/machinery/atmospherics/components/unary/vent_pump/on{
@@ -17828,13 +17951,6 @@
},
/turf/open/floor/plasteel,
/area/crew_quarters/locker)
-"aQU" = (
-/obj/machinery/vending/kink,
-/obj/structure/disposalpipe/segment{
- dir = 4
- },
-/turf/open/floor/plasteel,
-/area/crew_quarters/locker)
"aQV" = (
/obj/machinery/vending/autodrobe/all_access,
/obj/structure/disposalpipe/segment{
@@ -21137,19 +21253,6 @@
/obj/item/reagent_containers/glass/bucket,
/turf/open/floor/plasteel,
/area/hydroponics)
-"aYP" = (
-/obj/structure/reagent_dispensers/watertank/high,
-/obj/structure/sign/poster/contraband/lizard{
- pixel_x = -32
- },
-/obj/structure/sign/poster/contraband/lizard{
- pixel_x = -32
- },
-/obj/structure/sign/poster/contraband/lizard{
- pixel_x = -32
- },
-/turf/open/floor/plasteel,
-/area/hydroponics)
"aYQ" = (
/obj/machinery/hydroponics/constructable,
/obj/effect/turf_decal/tile/green{
@@ -24275,11 +24378,6 @@
/obj/structure/chair,
/turf/open/floor/plasteel/white,
/area/medical/medbay/central)
-"bhf" = (
-/obj/structure/table,
-/obj/item/storage/firstaid/regular,
-/turf/open/floor/plasteel/white,
-/area/medical/medbay/central)
"bhg" = (
/obj/effect/turf_decal/tile/blue,
/obj/effect/turf_decal/tile/blue{
@@ -27673,10 +27771,6 @@
},
/turf/open/floor/plasteel,
/area/hallway/primary/central)
-"boX" = (
-/obj/machinery/holopad,
-/turf/open/floor/plasteel,
-/area/hallway/primary/central)
"boY" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -27717,13 +27811,6 @@
},
/turf/open/floor/plasteel,
/area/crew_quarters/heads/hop)
-"bpa" = (
-/obj/structure/disposalpipe/segment{
- dir = 4
- },
-/obj/effect/turf_decal/delivery,
-/turf/open/floor/plasteel,
-/area/hallway/primary/central)
"bpb" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -27755,14 +27842,6 @@
},
/turf/open/floor/carpet,
/area/crew_quarters/heads/hop)
-"bpf" = (
-/obj/structure/disposalpipe/segment,
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel,
-/area/crew_quarters/heads/hop)
"bph" = (
/obj/effect/turf_decal/stripes/line{
dir = 1
@@ -30936,12 +31015,6 @@
},
/turf/open/floor/plasteel/dark,
/area/medical/sleeper)
-"bwC" = (
-/obj/machinery/computer/med_data{
- dir = 3
- },
-/turf/open/floor/plasteel/white,
-/area/medical/sleeper)
"bwD" = (
/obj/machinery/sleeper{
dir = 8
@@ -44825,13 +44898,6 @@
/obj/structure/lattice/catwalk,
/turf/open/space,
/area/solar/port/aft)
-"ccY" = (
-/obj/structure/table,
-/obj/item/kitchen/rollingpin,
-/obj/item/reagent_containers/food/condiment/enzyme,
-/obj/item/reagent_containers/food/condiment/sugar,
-/turf/open/floor/plating,
-/area/maintenance/port/aft)
"ccZ" = (
/obj/structure/chair/stool,
/turf/open/floor/plating,
@@ -55845,16 +55911,6 @@
},
/turf/open/space,
/area/solar/starboard/fore)
-"jJg" = (
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
- dir = 4;
- pixel_y = 5
- },
-/obj/structure/chair/sofa{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/crew_quarters/fitness)
"jJF" = (
/obj/machinery/door/airlock/maintenance,
/obj/structure/cable{
@@ -56570,13 +56626,6 @@
/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
/turf/open/floor/carpet,
/area/crew_quarters/dorms)
-"lXE" = (
-/obj/structure/chair/sofa/right,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/turf/open/floor/plasteel,
-/area/crew_quarters/fitness)
"lZl" = (
/obj/structure/closet,
/obj/effect/spawner/lootdrop/maintenance,
@@ -56849,12 +56898,6 @@
},
/turf/open/floor/plasteel/dark,
/area/engine/gravity_generator)
-"mOO" = (
-/obj/structure/chair/sofa/left{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/crew_quarters/fitness)
"mPk" = (
/obj/structure/bed,
/obj/machinery/button/door{
@@ -57716,14 +57759,6 @@
/obj/item/target/syndicate,
/turf/open/floor/plating,
/area/security/range)
-"pFX" = (
-/obj/structure/table/wood/fancy,
-/obj/item/reagent_containers/food/drinks/soda_cans/starkist{
- pixel_x = -3;
- pixel_y = 5
- },
-/turf/open/floor/plasteel,
-/area/crew_quarters/fitness)
"pHl" = (
/obj/structure/table,
/obj/item/storage/box/beakers{
@@ -60342,17 +60377,6 @@
"xxp" = (
/turf/open/floor/plating,
/area/security/range)
-"xzd" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/obj/structure/chair/sofa,
-/obj/item/radio/intercom{
- pixel_y = 25
- },
-/obj/effect/landmark/start/assistant,
-/turf/open/floor/plasteel,
-/area/crew_quarters/fitness)
"xzv" = (
/obj/effect/turf_decal/tile/red{
dir = 1
@@ -79828,7 +79852,7 @@ aLH
aLE
aOl
aPA
-aQU
+aiB
aQN
nLw
sLa
@@ -79867,7 +79891,7 @@ aaa
aaa
aaa
bCq
-bJP
+ajD
bCq
bSn
bCq
@@ -79880,7 +79904,7 @@ aaf
bCq
cAy
cAB
-ccY
+ajG
cAD
cAH
cfw
@@ -86014,7 +86038,7 @@ bjz
bkT
bjz
bjz
-boX
+aiV
bqv
bqv
bqv
@@ -86271,7 +86295,7 @@ bjB
bkW
bmp
bjz
-bpa
+ajh
bqy
cBr
bqy
@@ -87813,7 +87837,7 @@ bcd
bcd
bms
bnS
-bpf
+ajs
bqC
brZ
btE
@@ -89810,7 +89834,7 @@ aaZ
aeY
acn
agR
-ahm
+agW
ahA
aeE
agz
@@ -91097,8 +91121,8 @@ agq
agV
aaZ
aaZ
-aih
agX
+aih
aaZ
aaZ
aaZ
@@ -96031,7 +96055,7 @@ aYV
aYV
bet
bfH
-bhf
+aiP
wbE
bhh
wbE
@@ -96042,7 +96066,7 @@ bqP
bsy
bEe
bvh
-bwC
+ajv
bxN
bze
bAp
@@ -96514,8 +96538,8 @@ wig
str
rrM
clO
-asZ
-aua
+ahC
+ahP
oZl
awB
att
@@ -97283,9 +97307,9 @@ con
eVJ
dqb
qeA
-lXE
-pFX
-mOO
+ahm
+fHG
+fHG
fHG
fHG
pPi
@@ -97298,7 +97322,7 @@ sEi
alP
aGJ
aIe
-aJE
+aka
aLU
aKQ
aNu
@@ -97540,9 +97564,9 @@ fyS
eVJ
dqb
veS
-xzd
+ahs
sJI
-jJg
+ahO
fHG
eAJ
rvr
@@ -97815,7 +97839,7 @@ aHM
aJm
aKz
mjr
-aND
+akt
aJC
aab
aRg
@@ -99127,7 +99151,7 @@ bsx
bst
bfJ
bhh
-bhh
+ajB
bwK
bhh
bhh
@@ -100650,7 +100674,7 @@ aSR
aUi
aVJ
aOX
-aYP
+aiJ
bal
bam
aYV
@@ -101154,7 +101178,7 @@ wBd
aGC
aIl
aIq
-aKK
+aia
aMy
aIp
nGf
@@ -108931,7 +108955,7 @@ aaa
cNW
clt
cQw
-bNB
+ajM
cOe
cOe
cNW
diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm
index 73fe2cb8c1..54b5a9c221 100644
--- a/_maps/map_files/Deltastation/DeltaStation2.dmm
+++ b/_maps/map_files/Deltastation/DeltaStation2.dmm
@@ -124,6 +124,33 @@
},
/turf/open/floor/plating,
/area/crew_quarters/abandoned_gambling_den)
+"aaq" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"aar" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
"aas" = (
/obj/docking_port/stationary/random{
id = "pod_lavaland1";
@@ -143,10 +170,265 @@
/obj/effect/landmark/xeno_spawn,
/turf/open/space,
/area/solar/starboard/fore)
+"aav" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/effect/decal/cleanable/oil,
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"aaw" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"aax" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engpa";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aay" = (
+/obj/structure/cable{
+ icon_state = "2-8"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engpa";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aaz" = (
+/obj/effect/decal/cleanable/oil,
+/obj/structure/cable{
+ icon_state = "1-4"
+ },
+/obj/structure/cable{
+ icon_state = "2-4"
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engpa";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aaA" = (
+/obj/structure/cable{
+ icon_state = "1-8"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engpa";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aaB" = (
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/effect/turf_decal/stripes/line,
+/obj/effect/turf_decal/stripes/line{
+ dir = 1
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engpa";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"aaC" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engpa";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"aaD" = (
+/obj/structure/cable{
+ icon_state = "1-4"
+ },
+/obj/structure/cable{
+ icon_state = "2-4"
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engpa";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
"aaE" = (
/obj/structure/lattice/catwalk,
/turf/open/space,
/area/solar/starboard/fore)
+"aaF" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
+ dir = 4
+ },
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/atmospherics_engine)
+"aaG" = (
+/obj/structure/cable/white{
+ icon_state = "1-2"
+ },
+/obj/structure/cable/white{
+ icon_state = "0-2"
+ },
+/obj/structure/cable/white{
+ icon_state = "2-4"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/atmospherics_engine)
+"aaH" = (
+/obj/structure/cable/white{
+ icon_state = "0-8"
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/atmospherics_engine)
+"aaI" = (
+/obj/structure/dresser,
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/obj/structure/sign/poster/contraband/scum{
+ pixel_x = 32
+ },
+/turf/open/floor/plasteel/cafeteria,
+/area/maintenance/port/fore)
+"aaJ" = (
+/obj/item/twohanded/required/kirbyplants/random,
+/obj/effect/turf_decal/tile/red,
+/obj/effect/turf_decal/tile/red{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/nt_storm_officer{
+ pixel_y = -32
+ },
+/turf/open/floor/plasteel,
+/area/security/main)
+"aaK" = (
+/obj/machinery/flasher/portable,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/neutral,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 4
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/nt_storm{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel/dark,
+/area/ai_monitored/security/armory)
+"aaL" = (
+/obj/structure/rack,
+/obj/item/gun/energy/ionrifle,
+/obj/item/clothing/suit/armor/laserproof,
+/obj/item/gun/energy/temperature/security,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/neutral,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 4
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/ion_rifle{
+ pixel_x = 32
+ },
+/turf/open/floor/plasteel/dark,
+/area/ai_monitored/security/armory)
+"aaM" = (
+/obj/machinery/vending/wardrobe/medi_wardrobe,
+/obj/effect/turf_decal/tile/neutral,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/medical_green_cross{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel,
+/area/medical/storage)
+"aaN" = (
+/obj/structure/bed/roller,
+/obj/machinery/iv_drip,
+/obj/effect/turf_decal/tile/blue{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/blue{
+ dir = 4
+ },
+/obj/structure/sign/poster/official/medical_green_cross{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel/white,
+/area/medical/medbay/central)
"aaO" = (
/obj/effect/spawner/structure/window/reinforced,
/turf/open/floor/plating,
@@ -154,6 +436,30 @@
"aaP" = (
/turf/closed/wall/mineral/plastitanium,
/area/hallway/secondary/entry)
+"aaQ" = (
+/obj/structure/sign/poster/official/medical_green_cross,
+/turf/closed/wall,
+/area/medical/medbay/central)
+"aaR" = (
+/obj/structure/table/wood,
+/obj/item/assembly/igniter,
+/obj/item/assembly/igniter,
+/obj/item/assembly/timer{
+ pixel_x = 3;
+ pixel_y = 3
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/structure/sign/poster/contraband/scum{
+ pixel_x = 32
+ },
+/obj/structure/sign/poster/contraband/scum{
+ pixel_x = 32
+ },
+/obj/structure/sign/poster/contraband/scum{
+ pixel_x = 32
+ },
+/turf/open/floor/plating,
+/area/crew_quarters/abandoned_gambling_den)
"aaS" = (
/turf/closed/wall/mineral/plastitanium,
/area/construction/mining/aux_base)
@@ -9068,13 +9374,6 @@
/obj/effect/turf_decal/bot,
/turf/open/floor/plasteel,
/area/engine/atmospherics_engine)
-"avk" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
- dir = 4
- },
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/turf/open/floor/plating,
-/area/engine/atmospherics_engine)
"avl" = (
/obj/structure/lattice/catwalk,
/obj/machinery/atmospherics/components/unary/outlet_injector/atmos/engine_waste{
@@ -10232,20 +10531,6 @@
},
/turf/open/floor/plasteel,
/area/engine/atmospherics_engine)
-"axv" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"axw" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -10303,19 +10588,6 @@
},
/turf/open/floor/engine,
/area/engine/supermatter)
-"axD" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"axE" = (
/obj/structure/cable{
icon_state = "2-8"
@@ -10427,12 +10699,6 @@
},
/turf/open/floor/plasteel,
/area/maintenance/port/fore)
-"axN" = (
-/obj/structure/dresser,
-/obj/effect/decal/cleanable/dirt,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/open/floor/plasteel/cafeteria,
-/area/maintenance/port/fore)
"axO" = (
/obj/structure/table/wood,
/obj/item/camera,
@@ -10979,20 +11245,6 @@
},
/turf/open/floor/circuit/green,
/area/engine/supermatter)
-"ayM" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/oil,
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"ayN" = (
/obj/structure/cable{
icon_state = "2-8"
@@ -11587,19 +11839,6 @@
},
/turf/open/floor/plasteel,
/area/engine/atmospherics_engine)
-"azS" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"azT" = (
/obj/machinery/power/rad_collector/anchored,
/obj/machinery/atmospherics/pipe/manifold/general/visible{
@@ -16677,20 +16916,6 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/closed/wall/r_wall,
/area/engine/atmospherics_engine)
-"aID" = (
-/obj/structure/cable/white{
- icon_state = "1-2"
- },
-/obj/structure/cable/white{
- icon_state = "0-2"
- },
-/obj/structure/cable/white{
- icon_state = "2-4"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/turf/open/floor/plating,
-/area/engine/atmospherics_engine)
"aIE" = (
/obj/machinery/door/firedoor,
/obj/structure/cable/white{
@@ -16710,14 +16935,6 @@
},
/turf/open/floor/plasteel,
/area/engine/atmospherics_engine)
-"aIF" = (
-/obj/structure/cable/white{
- icon_state = "0-8"
- },
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/turf/open/floor/plating,
-/area/engine/atmospherics_engine)
"aIG" = (
/obj/machinery/portable_atmospherics/canister/toxins,
/obj/effect/turf_decal/bot,
@@ -41291,14 +41508,6 @@
},
/turf/open/floor/plasteel,
/area/security/main)
-"bwj" = (
-/obj/item/twohanded/required/kirbyplants/random,
-/obj/effect/turf_decal/tile/red,
-/obj/effect/turf_decal/tile/red{
- dir = 8
- },
-/turf/open/floor/plasteel,
-/area/security/main)
"bwk" = (
/obj/structure/cable/white{
icon_state = "1-2"
@@ -60266,23 +60475,6 @@
},
/turf/open/floor/plasteel,
/area/ai_monitored/security/armory)
-"bXR" = (
-/obj/structure/rack,
-/obj/item/gun/energy/ionrifle,
-/obj/item/clothing/suit/armor/laserproof,
-/obj/item/gun/energy/temperature/security,
-/obj/effect/turf_decal/tile/neutral{
- dir = 1
- },
-/obj/effect/turf_decal/tile/neutral,
-/obj/effect/turf_decal/tile/neutral{
- dir = 4
- },
-/obj/effect/turf_decal/tile/neutral{
- dir = 8
- },
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
"bXS" = (
/obj/structure/window/reinforced{
dir = 8
@@ -66492,16 +66684,6 @@
/obj/effect/turf_decal/stripes/line,
/turf/open/floor/plating,
/area/engine/engineering)
-"chv" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engpa";
- name = "Engineering Chamber Shutters"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"chw" = (
/obj/effect/turf_decal/stripes/line{
dir = 8
@@ -67523,19 +67705,6 @@
},
/turf/open/floor/plating,
/area/engine/engineering)
-"cjf" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engpa";
- name = "Engineering Chamber Shutters"
- },
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"cjg" = (
/obj/effect/decal/cleanable/dirt,
/obj/effect/turf_decal/stripes/line{
@@ -68306,26 +68475,6 @@
},
/turf/open/floor/plating/airless,
/area/space/nearstation)
-"ckA" = (
-/obj/effect/decal/cleanable/oil,
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engpa";
- name = "Engineering Chamber Shutters"
- },
-/obj/structure/cable{
- icon_state = "1-4"
- },
-/obj/structure/cable{
- icon_state = "2-4"
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"ckB" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -69094,19 +69243,6 @@
},
/turf/open/floor/plating/airless,
/area/space/nearstation)
-"clV" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engpa";
- name = "Engineering Chamber Shutters"
- },
-/obj/structure/cable{
- icon_state = "1-8"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"clW" = (
/obj/structure/rack,
/obj/item/crowbar,
@@ -70125,20 +70261,6 @@
/obj/machinery/status_display/evac,
/turf/closed/wall/r_wall,
/area/engine/engineering)
-"cnE" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engpa";
- name = "Engineering Chamber Shutters"
- },
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/obj/effect/turf_decal/stripes/line,
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"cnF" = (
/obj/machinery/requests_console{
department = "Chapel Office";
@@ -71572,22 +71694,6 @@
},
/turf/open/floor/plating,
/area/engine/engineering)
-"cqw" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engpa";
- name = "Engineering Chamber Shutters"
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"cqx" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -76839,25 +76945,6 @@
/obj/effect/turf_decal/stripes/corner,
/turf/open/floor/plating/airless,
/area/space/nearstation)
-"czs" = (
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engpa";
- name = "Engineering Chamber Shutters"
- },
-/obj/structure/cable{
- icon_state = "1-4"
- },
-/obj/structure/cable{
- icon_state = "2-4"
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"czt" = (
/obj/structure/cable{
icon_state = "1-8"
@@ -85482,14 +85569,6 @@
},
/turf/open/floor/plasteel,
/area/medical/storage)
-"cNO" = (
-/obj/machinery/vending/wardrobe/medi_wardrobe,
-/obj/effect/turf_decal/tile/neutral,
-/obj/effect/turf_decal/tile/neutral{
- dir = 8
- },
-/turf/open/floor/plasteel,
-/area/medical/storage)
"cNP" = (
/obj/machinery/disposal/bin,
/obj/structure/disposalpipe/trunk,
@@ -87271,17 +87350,6 @@
},
/turf/open/floor/plasteel/white,
/area/medical/medbay/central)
-"cRa" = (
-/obj/structure/bed/roller,
-/obj/machinery/iv_drip,
-/obj/effect/turf_decal/tile/blue{
- dir = 1
- },
-/obj/effect/turf_decal/tile/blue{
- dir = 4
- },
-/turf/open/floor/plasteel/white,
-/area/medical/medbay/central)
"cRb" = (
/obj/structure/bed/roller,
/obj/machinery/iv_drip,
@@ -103990,17 +104058,6 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/wood,
/area/crew_quarters/abandoned_gambling_den)
-"duk" = (
-/obj/structure/table/wood,
-/obj/item/assembly/igniter,
-/obj/item/assembly/igniter,
-/obj/item/assembly/timer{
- pixel_x = 3;
- pixel_y = 3
- },
-/obj/effect/decal/cleanable/dirt,
-/turf/open/floor/plating,
-/area/crew_quarters/abandoned_gambling_den)
"dul" = (
/obj/structure/table,
/obj/item/stack/packageWrap,
@@ -151484,10 +151541,10 @@ car
cbV
cdJ
car
-chv
-cjf
-ckA
-clV
+aax
+aay
+aaz
+aaA
cnC
cpa
cqs
@@ -151495,10 +151552,10 @@ cqr
ctq
cuR
cnC
-cjf
-czs
-clV
-chv
+aay
+aaD
+aaA
+aax
car
cFO
cbV
@@ -152002,13 +152059,13 @@ chx
cjh
ckC
clX
-cnE
+aaB
cpc
cqu
cqr
cts
cuT
-cnE
+aaB
clX
czt
cAL
@@ -152040,7 +152097,7 @@ dof
dmi
dry
dta
-duk
+aaR
dvY
dod
dmi
@@ -152458,9 +152515,9 @@ asq
atO
auX
awf
-axv
-axv
-azS
+aaq
+aaq
+aaw
awi
aCk
aDn
@@ -152518,9 +152575,9 @@ cjn
clZ
cnF
car
-cqw
+aaC
car
-cqw
+aaC
car
car
cxF
@@ -154514,16 +154571,16 @@ asy
atW
avf
awi
-axD
-ayM
-axD
+aar
+aav
+aar
awf
aCp
aDs
aEv
aFE
aHh
-aID
+aaG
aKb
aLv
aMG
@@ -155037,7 +155094,7 @@ aDt
aEx
aFG
aHj
-aIF
+aaH
aKd
aLx
aMG
@@ -155797,8 +155854,8 @@ aad
alT
alT
alT
-avk
-avk
+aaF
+aaF
alT
alT
azZ
@@ -159140,7 +159197,7 @@ asL
aue
avt
aws
-axN
+aaI
ayY
aAc
aBo
@@ -170534,7 +170591,7 @@ cNz
dbm
dcX
dev
-cPy
+aaQ
dhe
diz
dkp
@@ -171296,7 +171353,7 @@ cKE
bsE
cNE
cPy
-cRa
+aaN
cSK
cUE
cQX
@@ -174892,7 +174949,7 @@ cIc
cAm
cKO
cMm
-cNO
+aaM
vEq
cRi
cSV
@@ -180771,7 +180828,7 @@ bFP
bHI
bJC
bLs
-bNp
+aaK
bNp
bNp
bTi
@@ -181018,7 +181075,7 @@ bpp
bru
btt
buQ
-bwj
+aaJ
bhd
byO
bAs
@@ -181804,7 +181861,7 @@ bPA
bRw
bTk
bVr
-bXR
+aaL
bZY
cbL
bLs
diff --git a/_maps/map_files/KiloStation/KiloStation.dmm b/_maps/map_files/KiloStation/KiloStation.dmm
index 376046512f..446fe3e519 100644
--- a/_maps/map_files/KiloStation/KiloStation.dmm
+++ b/_maps/map_files/KiloStation/KiloStation.dmm
@@ -53,6 +53,17 @@
"aaf" = (
/turf/closed/wall/r_wall,
/area/security/brig)
+"aag" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/effect/turf_decal/caution/stand_clear,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plasteel/dark,
+/area/engine/supermatter)
"aah" = (
/obj/effect/spawner/structure/window/reinforced,
/obj/machinery/door/poddoor/preopen{
@@ -72321,17 +72332,6 @@
},
/turf/open/floor/plasteel/showroomfloor,
/area/ai_monitored/security/armory)
-"cin" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/turf_decal/caution/stand_clear,
-/turf/open/floor/plasteel/dark,
-/area/engine/supermatter)
"cio" = (
/obj/effect/turf_decal/tile/red{
dir = 4
@@ -122951,9 +122951,9 @@ coc
azE
brn
aLF
-cin
-cin
-cin
+aag
+aag
+aag
aLF
cut
cuO
@@ -125007,9 +125007,9 @@ cos
aAd
bFh
aLF
-cin
-cin
-cin
+aag
+aag
+aag
aLF
cuA
cuW
diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm
index e69b4b67ce..db9a620ad6 100644
--- a/_maps/map_files/MetaStation/MetaStation.dmm
+++ b/_maps/map_files/MetaStation/MetaStation.dmm
@@ -2,10 +2,77 @@
"aaa" = (
/turf/open/space/basic,
/area/space)
+"aab" = (
+/obj/item/radio/intercom{
+ name = "Station Intercom (General)";
+ pixel_y = 24
+ },
+/obj/structure/rack,
+/obj/item/grenade/barrier{
+ pixel_x = -3;
+ pixel_y = 1
+ },
+/obj/item/grenade/barrier,
+/obj/item/grenade/barrier{
+ pixel_x = 3;
+ pixel_y = -1
+ },
+/obj/item/grenade/barrier{
+ pixel_x = 6;
+ pixel_y = -2
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/neutral,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 4
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/nt_storm_officer{
+ pixel_x = -32
+ },
+/turf/open/floor/plasteel/dark,
+/area/ai_monitored/security/armory)
"aac" = (
/obj/effect/landmark/carpspawn,
/turf/open/space,
/area/space)
+"aad" = (
+/obj/structure/rack,
+/obj/item/clothing/suit/armor/bulletproof,
+/obj/item/clothing/head/helmet/alt,
+/obj/item/clothing/suit/armor/bulletproof,
+/obj/item/clothing/head/helmet/alt,
+/obj/item/clothing/suit/armor/bulletproof,
+/obj/item/clothing/head/helmet/alt,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/neutral,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 4
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/nt_storm{
+ pixel_x = 32
+ },
+/turf/open/floor/plasteel/dark,
+/area/ai_monitored/security/armory)
+"aae" = (
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
"aaf" = (
/obj/structure/lattice,
/turf/open/space,
@@ -246,6 +313,19 @@
},
/turf/open/floor/plating,
/area/security/prison)
+"aaM" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/obj/structure/cable{
+ icon_state = "1-8"
+ },
+/turf/open/floor/plasteel,
+/area/engine/engineering)
"aaN" = (
/obj/structure/cable{
icon_state = "0-2"
@@ -288,6 +368,58 @@
},
/turf/open/floor/plasteel,
/area/security/prison)
+"aaU" = (
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/item/crowbar,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"aaV" = (
+/obj/structure/cable/yellow{
+ icon_state = "1-8"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 10
+ },
+/obj/effect/landmark/start/station_engineer,
+/turf/open/floor/plasteel,
+/area/engine/engineering)
+"aaW" = (
+/obj/effect/turf_decal/tile/neutral{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/neutral,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 4
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 8
+ },
+/obj/machinery/door/poddoor/shutters/window{
+ id = "armory";
+ name = "Armoury Shutters"
+ },
+/turf/open/floor/plasteel/dark,
+/area/ai_monitored/security/armory)
+"aaX" = (
+/obj/structure/disposalpipe/segment,
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 9
+ },
+/obj/structure/cable/yellow{
+ icon_state = "1-2"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 1
+ },
+/obj/effect/landmark/start/station_engineer,
+/turf/open/floor/plasteel,
+/area/engine/engineering)
"aaY" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -322,6 +454,20 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plating,
/area/security/prison)
+"abd" = (
+/obj/machinery/vending/cola/random,
+/obj/structure/sign/poster/official/pda_ad600{
+ pixel_x = -32
+ },
+/obj/structure/sign/poster/official/pda_ad800{
+ pixel_x = -32;
+ pixel_y = 32
+ },
+/obj/structure/sign/poster/official/pda_ad{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel/dark,
+/area/hallway/secondary/command)
"abe" = (
/turf/closed/wall,
/area/security/prison)
@@ -376,6 +522,14 @@
/obj/item/canvas/twentythreeXtwentythree,
/turf/open/floor/plasteel,
/area/security/prison)
+"abk" = (
+/obj/structure/kitchenspike_frame,
+/obj/effect/decal/cleanable/blood/gibs/old,
+/obj/structure/sign/poster/contraband/scum{
+ pixel_y = -32
+ },
+/turf/open/floor/plating,
+/area/maintenance/port/aft)
"abl" = (
/obj/structure/table,
/obj/machinery/computer/libraryconsole/bookmanagement,
@@ -445,6 +599,25 @@
},
/turf/open/floor/plasteel/cafeteria,
/area/security/prison)
+"abt" = (
+/obj/machinery/vending/hydroseeds{
+ slogan_delay = 700
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/neutral,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 4
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/hydro_ad{
+ pixel_x = -32
+ },
+/turf/open/floor/plasteel/dark,
+/area/hallway/primary/central)
"abu" = (
/obj/docking_port/stationary{
dwidth = 1;
@@ -521,6 +694,16 @@
/obj/structure/chair/stool,
/turf/open/floor/plasteel,
/area/security/prison)
+"abE" = (
+/obj/machinery/hydroponics/constructable,
+/obj/effect/turf_decal/stripes/line{
+ dir = 1
+ },
+/obj/structure/sign/poster/official/hydro_ad{
+ pixel_y = -32
+ },
+/turf/open/floor/plasteel,
+/area/hydroponics)
"abF" = (
/obj/structure/table,
/obj/structure/cable/yellow{
@@ -542,6 +725,30 @@
/obj/item/toy/cards/deck,
/turf/open/floor/plasteel,
/area/security/prison)
+"abH" = (
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/blue{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/blue{
+ dir = 4
+ },
+/obj/effect/turf_decal/tile/blue{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/medical_green_cross{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel/white,
+/area/medical/medbay/central)
"abI" = (
/obj/structure/cable/yellow{
icon_state = "2-4"
@@ -723,6 +930,16 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel,
/area/security/prison)
+"acd" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/medical_green_cross{
+ pixel_x = -32
+ },
+/turf/open/floor/plasteel,
+/area/hallway/primary/aft)
"ace" = (
/obj/machinery/vending/sustenance{
desc = "A vending machine normally reserved for work camps.";
@@ -1388,6 +1605,22 @@
},
/turf/open/floor/plating,
/area/crew_quarters/fitness/recreation)
+"adk" = (
+/obj/structure/sign/poster/contraband/scum{
+ pixel_y = -32
+ },
+/turf/open/floor/plating,
+/area/maintenance/fore)
+"adl" = (
+/obj/structure/closet/crate{
+ icon_state = "crateopen"
+ },
+/obj/item/storage/box/donkpockets,
+/obj/structure/sign/poster/contraband/scum{
+ pixel_y = -32
+ },
+/turf/open/floor/plating,
+/area/maintenance/fore)
"adm" = (
/obj/structure/table,
/obj/item/flashlight/lamp,
@@ -1568,6 +1801,35 @@
},
/turf/open/space,
/area/space/nearstation)
+"adH" = (
+/obj/structure/closet/wardrobe/grey,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 1
+ },
+/obj/effect/turf_decal/tile/neutral,
+/obj/effect/turf_decal/tile/neutral{
+ dir = 4
+ },
+/obj/effect/turf_decal/tile/neutral{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/fashion{
+ pixel_y = -32
+ },
+/obj/structure/sign/poster/official/fashion{
+ pixel_y = -32
+ },
+/turf/open/floor/plasteel/dark,
+/area/crew_quarters/locker)
+"adI" = (
+/obj/structure/rack,
+/obj/item/hatchet,
+/obj/item/reagent_containers/blood/random,
+/obj/structure/sign/poster/contraband/scum{
+ pixel_y = -32
+ },
+/turf/open/floor/plating,
+/area/maintenance/starboard/aft)
"adJ" = (
/obj/item/radio/intercom{
name = "Station Intercom (General)";
@@ -2918,37 +3180,6 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/dark,
/area/ai_monitored/security/armory)
-"afZ" = (
-/obj/item/radio/intercom{
- name = "Station Intercom (General)";
- pixel_y = 24
- },
-/obj/structure/rack,
-/obj/item/grenade/barrier{
- pixel_x = -3;
- pixel_y = 1
- },
-/obj/item/grenade/barrier,
-/obj/item/grenade/barrier{
- pixel_x = 3;
- pixel_y = -1
- },
-/obj/item/grenade/barrier{
- pixel_x = 6;
- pixel_y = -2
- },
-/obj/effect/turf_decal/tile/neutral{
- dir = 1
- },
-/obj/effect/turf_decal/tile/neutral,
-/obj/effect/turf_decal/tile/neutral{
- dir = 4
- },
-/obj/effect/turf_decal/tile/neutral{
- dir = 8
- },
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
"aga" = (
/obj/effect/turf_decal/tile/neutral{
dir = 1
@@ -3427,26 +3658,6 @@
},
/turf/open/floor/plasteel/dark,
/area/security/prison)
-"agQ" = (
-/obj/structure/rack,
-/obj/item/clothing/suit/armor/bulletproof,
-/obj/item/clothing/head/helmet/alt,
-/obj/item/clothing/suit/armor/bulletproof,
-/obj/item/clothing/head/helmet/alt,
-/obj/item/clothing/suit/armor/bulletproof,
-/obj/item/clothing/head/helmet/alt,
-/obj/effect/turf_decal/tile/neutral{
- dir = 1
- },
-/obj/effect/turf_decal/tile/neutral,
-/obj/effect/turf_decal/tile/neutral{
- dir = 4
- },
-/obj/effect/turf_decal/tile/neutral{
- dir = 8
- },
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
"agR" = (
/obj/machinery/airalarm{
dir = 4;
@@ -4781,23 +4992,6 @@
},
/turf/open/floor/plasteel/dark,
/area/security/warden)
-"ajs" = (
-/obj/machinery/door/poddoor/shutters{
- id = "armory";
- name = "armory shutters"
- },
-/obj/effect/turf_decal/tile/neutral{
- dir = 1
- },
-/obj/effect/turf_decal/tile/neutral,
-/obj/effect/turf_decal/tile/neutral{
- dir = 4
- },
-/obj/effect/turf_decal/tile/neutral{
- dir = 8
- },
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
"ajt" = (
/obj/structure/closet{
name = "Evidence Closet 5"
@@ -11663,13 +11857,6 @@
},
/turf/open/floor/plasteel/dark,
/area/security/brig)
-"awA" = (
-/obj/structure/closet/crate{
- icon_state = "crateopen"
- },
-/obj/item/storage/box/donkpockets,
-/turf/open/floor/plating,
-/area/maintenance/fore)
"awB" = (
/obj/structure/reagent_dispensers/watertank,
/obj/item/storage/box/lights/mixed,
@@ -16876,11 +17063,6 @@
},
/turf/open/floor/plasteel,
/area/engine/engineering)
-"aGW" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/effect/landmark/start/station_engineer,
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"aGX" = (
/obj/machinery/atmospherics/components/unary/vent_pump/on{
dir = 8
@@ -21786,20 +21968,6 @@
},
/turf/open/floor/plasteel,
/area/engine/engineering)
-"aRq" = (
-/obj/structure/disposalpipe/segment{
- dir = 4
- },
-/obj/effect/landmark/start/station_engineer,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/structure/cable{
- icon_state = "1-8"
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"aRr" = (
/obj/structure/cable/yellow{
icon_state = "1-2"
@@ -22834,15 +23002,6 @@
},
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"aTF" = (
-/obj/structure/cable/yellow{
- icon_state = "1-8"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 10
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"aTG" = (
/obj/structure/disposalpipe/segment{
dir = 6
@@ -23483,20 +23642,6 @@
},
/turf/open/floor/plasteel/dark,
/area/crew_quarters/locker)
-"aUO" = (
-/obj/structure/closet/wardrobe/grey,
-/obj/effect/turf_decal/tile/neutral{
- dir = 1
- },
-/obj/effect/turf_decal/tile/neutral,
-/obj/effect/turf_decal/tile/neutral{
- dir = 4
- },
-/obj/effect/turf_decal/tile/neutral{
- dir = 8
- },
-/turf/open/floor/plasteel/dark,
-/area/crew_quarters/locker)
"aUP" = (
/obj/structure/closet/wardrobe/white,
/obj/effect/turf_decal/tile/neutral{
@@ -26034,19 +26179,6 @@
},
/turf/open/floor/plasteel,
/area/engine/engineering)
-"aZJ" = (
-/obj/structure/disposalpipe/segment,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 9
- },
-/obj/structure/cable/yellow{
- icon_state = "1-2"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/engine/engineering)
"aZK" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
/obj/machinery/shower{
@@ -39514,10 +39646,6 @@
"bzJ" = (
/turf/closed/wall,
/area/hallway/secondary/command)
-"bzK" = (
-/obj/machinery/vending/cola/random,
-/turf/open/floor/plasteel/dark,
-/area/hallway/secondary/command)
"bzL" = (
/obj/effect/turf_decal/bot,
/turf/open/floor/plasteel,
@@ -53582,22 +53710,6 @@
},
/turf/open/floor/wood,
/area/crew_quarters/theatre)
-"ccp" = (
-/obj/machinery/vending/hydroseeds{
- slogan_delay = 700
- },
-/obj/effect/turf_decal/tile/neutral{
- dir = 1
- },
-/obj/effect/turf_decal/tile/neutral,
-/obj/effect/turf_decal/tile/neutral{
- dir = 4
- },
-/obj/effect/turf_decal/tile/neutral{
- dir = 8
- },
-/turf/open/floor/plasteel/dark,
-/area/hallway/primary/central)
"ccq" = (
/obj/structure/table,
/obj/item/book/manual/hydroponics_pod_people,
@@ -56716,27 +56828,6 @@
},
/turf/open/floor/plasteel/white,
/area/medical/sleeper)
-"cik" = (
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/machinery/light{
- dir = 1
- },
-/obj/effect/turf_decal/tile/blue{
- dir = 1
- },
-/obj/effect/turf_decal/tile/blue{
- dir = 4
- },
-/obj/effect/turf_decal/tile/blue{
- dir = 8
- },
-/turf/open/floor/plasteel/white,
-/area/medical/medbay/central)
"cil" = (
/obj/structure/cable/yellow{
icon_state = "2-8"
@@ -61846,12 +61937,6 @@
/obj/item/gun/syringe/dart,
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
-"csb" = (
-/obj/structure/rack,
-/obj/item/hatchet,
-/obj/item/reagent_containers/blood/random,
-/turf/open/floor/plating,
-/area/maintenance/starboard/aft)
"csc" = (
/obj/machinery/iv_drip,
/obj/item/roller,
@@ -80107,27 +80192,6 @@
/obj/structure/lattice/catwalk,
/turf/open/space,
/area/science/xenobiology)
-"djt" = (
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
-"djx" = (
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/obj/item/crowbar,
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"djz" = (
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/obj/machinery/door/airlock/external{
@@ -81817,11 +81881,6 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/wood,
/area/security/vacantoffice)
-"hvt" = (
-/obj/structure/kitchenspike_frame,
-/obj/effect/decal/cleanable/blood/gibs/old,
-/turf/open/floor/plating,
-/area/maintenance/port/aft)
"hyP" = (
/obj/machinery/door/airlock/external{
name = "Escape Pod Two"
@@ -99850,7 +99909,7 @@ dux
iLj
dvt
bXE
-hvt
+abk
dux
dux
dux
@@ -105768,7 +105827,7 @@ cdr
cew
cfL
bXK
-cik
+abH
cjK
clj
cmr
@@ -106515,7 +106574,7 @@ bsM
bun
bwi
bkz
-bzK
+abd
bBz
bDa
bEE
@@ -110319,7 +110378,7 @@ aaa
aaf
aeq
aeq
-afZ
+aab
agR
ahE
aiA
@@ -110394,7 +110453,7 @@ cdG
caq
cgb
chg
-chg
+acd
chg
clx
cmD
@@ -111607,7 +111666,7 @@ afX
agc
dBX
agc
-ajs
+aaW
ajz
akI
amc
@@ -111861,7 +111920,7 @@ aaa
aaf
aeq
aeq
-agQ
+aad
ahC
ahI
aeq
@@ -115529,7 +115588,7 @@ bWH
bYc
bZq
caG
-ccp
+abt
bSS
ceZ
cgo
@@ -116750,7 +116809,7 @@ agq
agq
aje
alb
-aje
+adk
agq
aur
aqb
@@ -117034,7 +117093,7 @@ aOt
aQU
aSg
aTt
-aUO
+adH
aUM
boW
aZt
@@ -117272,7 +117331,7 @@ ary
asR
aje
auc
-awA
+adl
axC
ayK
aAa
@@ -117842,7 +117901,7 @@ bWQ
soe
bWQ
caL
-ccv
+abE
bST
csg
cgq
@@ -121195,7 +121254,7 @@ dwX
ciL
ciL
cou
-csb
+adI
dvY
mjJ
krD
@@ -123201,7 +123260,7 @@ axY
aPY
aRn
aSt
-aTF
+aaV
aUY
aWA
aYp
@@ -123962,7 +124021,7 @@ aBK
aCS
aEo
aFw
-aGW
+aHY
aHY
aHY
aKB
@@ -123970,7 +124029,7 @@ aMd
aNr
aOP
dCw
-aRq
+aaM
aSw
aTI
aVb
@@ -124233,7 +124292,7 @@ aTJ
dfX
aWD
aVc
-aZJ
+aaX
bbz
bcK
bel
@@ -126275,7 +126334,7 @@ ddZ
ded
del
des
-djt
+aae
daY
daZ
dbb
@@ -126283,7 +126342,7 @@ aMk
aNv
dfk
dfq
-djt
+aae
dfG
dfQ
dfZ
@@ -126532,7 +126591,7 @@ aBQ
dee
aEr
des
-djt
+aae
daY
daZ
dbb
@@ -126540,7 +126599,7 @@ dfa
aNv
dfk
daY
-djx
+aaU
dfG
cXz
aVe
@@ -126789,7 +126848,7 @@ aBQ
dee
aEr
aKL
-djt
+aae
daY
deS
dbb
@@ -126797,7 +126856,7 @@ aMk
aNv
dfm
daY
-djt
+aae
dbg
dfR
dga
diff --git a/_maps/map_files/OmegaStation/OmegaStation.dmm b/_maps/map_files/OmegaStation/OmegaStation.dmm
index 9031e9964b..2ca3c3deee 100644
--- a/_maps/map_files/OmegaStation/OmegaStation.dmm
+++ b/_maps/map_files/OmegaStation/OmegaStation.dmm
@@ -950,6 +950,23 @@
},
/turf/open/floor/plasteel/dark,
/area/bridge)
+"abn" = (
+/obj/effect/spawner/structure/window/reinforced,
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/structure/cable/white{
+ icon_state = "0-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
"abo" = (
/obj/effect/turf_decal/tile/neutral,
/obj/effect/turf_decal/tile/neutral{
@@ -1257,6 +1274,20 @@
},
/turf/open/floor/plasteel,
/area/science/mixing)
+"abQ" = (
+/obj/structure/cable/white{
+ icon_state = "0-2"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 6
+ },
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/gravity_generator)
"abR" = (
/obj/structure/lattice,
/turf/open/space,
@@ -1638,6 +1669,54 @@
},
/turf/open/floor/plasteel,
/area/maintenance/starboard)
+"acz" = (
+/obj/structure/cable/white{
+ icon_state = "0-2"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"acA" = (
+/obj/structure/cable/white,
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
+ dir = 4
+ },
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/gravity_generator)
+"acB" = (
+/obj/structure/cable/white,
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"acC" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
"acD" = (
/obj/item/pickaxe/emergency,
/turf/open/floor/plating/asteroid,
@@ -2076,6 +2155,33 @@
/obj/structure/sign/warning/vacuum,
/turf/open/floor/plating,
/area/quartermaster/storage)
+"adr" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"ads" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/effect/decal/cleanable/oil,
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
"adv" = (
/obj/structure/closet/crate{
icon_state = "crateopen"
@@ -18300,19 +18406,6 @@
},
/turf/open/floor/plasteel,
/area/engine/engineering)
-"aGl" = (
-/obj/effect/spawner/structure/window/reinforced,
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/obj/structure/cable/white{
- icon_state = "0-8"
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"aGm" = (
/obj/structure/sign/warning/radiation,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
@@ -20085,16 +20178,6 @@
},
/turf/open/floor/plasteel,
/area/engine/gravity_generator)
-"aJo" = (
-/obj/structure/cable/white{
- icon_state = "0-2"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 6
- },
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/turf/open/floor/plating,
-/area/engine/gravity_generator)
"aJp" = (
/obj/structure/cable/white{
icon_state = "1-2"
@@ -20171,16 +20254,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"aJA" = (
-/obj/structure/cable/white{
- icon_state = "0-2"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/turf/open/floor/plating,
-/area/engine/engineering)
"aJB" = (
/obj/structure/table/reinforced,
/obj/item/stack/sheet/metal/fifty,
@@ -21472,14 +21545,6 @@
/obj/item/clothing/glasses/meson/engine,
/turf/open/floor/plasteel,
/area/engine/gravity_generator)
-"aLL" = (
-/obj/structure/cable/white,
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
- dir = 4
- },
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/turf/open/floor/plating,
-/area/engine/gravity_generator)
"aLM" = (
/obj/structure/cable/white{
icon_state = "1-2"
@@ -21574,11 +21639,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"aLX" = (
-/obj/structure/cable/white,
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/turf/open/floor/plating,
-/area/engine/engineering)
"aLY" = (
/obj/effect/turf_decal/tile/yellow{
dir = 1
@@ -22553,20 +22613,6 @@
/obj/machinery/power/supermatter_crystal/shard/engine,
/turf/open/floor/engine,
/area/engine/supermatter)
-"aOb" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/oil,
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"aOd" = (
/obj/machinery/power/apc{
areastring = "/area/engine/engineering";
@@ -22788,19 +22834,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"aOB" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"aOC" = (
/obj/machinery/atmospherics/pipe/simple/general/visible{
dir = 5
@@ -22827,19 +22860,6 @@
},
/turf/open/floor/circuit/green,
/area/engine/supermatter)
-"aOE" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"aOF" = (
/obj/structure/cable{
icon_state = "1-8"
@@ -72989,9 +73009,9 @@ aFq
aGf
sIA
aIe
-aJo
+abQ
aKx
-aLL
+acA
aMN
aMN
sJD
@@ -73763,9 +73783,9 @@ aIh
aJr
aKz
aLO
-aOB
-aOB
-aOB
+acC
+acC
+acC
aLU
aQK
aRH
@@ -75042,7 +75062,7 @@ kaA
aDr
aEv
aFx
-aGl
+abn
aHp
aIm
bxa
@@ -75819,9 +75839,9 @@ aIp
aJw
aKE
aLU
-aOE
-aOb
-aOE
+adr
+ads
+adr
aLO
blK
aRP
@@ -76587,9 +76607,9 @@ aDv
aDv
aHv
sHV
-aJA
+acz
aKH
-aLX
+acB
aEt
aEt
aOH
diff --git a/_maps/map_files/PubbyStation/PubbyStation.dmm b/_maps/map_files/PubbyStation/PubbyStation.dmm
index 637913adf1..fc5f6e9778 100644
--- a/_maps/map_files/PubbyStation/PubbyStation.dmm
+++ b/_maps/map_files/PubbyStation/PubbyStation.dmm
@@ -2,12 +2,267 @@
"aaa" = (
/turf/open/space/basic,
/area/space)
+"aab" = (
+/obj/machinery/holopad,
+/obj/effect/landmark/start/cyborg,
+/mob/living/simple_animal/bot/secbot/pingsky,
+/turf/open/floor/plasteel/dark,
+/area/ai_monitored/turret_protected/aisat_interior)
+"aac" = (
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
"aad" = (
/obj/effect/spawner/lootdrop/maintenance,
/turf/open/floor/plating{
icon_state = "platingdmg3"
},
/area/maintenance/department/science)
+"aae" = (
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aaf" = (
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aag" = (
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
+ dir = 1
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aah" = (
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aai" = (
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/structure/cable/yellow{
+ icon_state = "1-2"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aaj" = (
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 4
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aak" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
+ dir = 4
+ },
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aal" = (
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/atmospherics/pipe/simple/orange/visible{
+ dir = 9
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aam" = (
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aan" = (
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/effect/decal/cleanable/dirt,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"aao" = (
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"aap" = (
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
+ dir = 9
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aaq" = (
+/obj/effect/spawner/structure/window/plasma/reinforced,
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 5
+ },
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/engineering)
+"aar" = (
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/item/tank/internals/plasma,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"aas" = (
+/obj/structure/cable/yellow{
+ icon_state = "4-8"
+ },
+/obj/effect/decal/cleanable/oil,
+/obj/machinery/door/poddoor/shutters/radiation/preopen{
+ id = "engsm";
+ name = "Radiation Chamber Shutters"
+ },
+/turf/open/floor/plating,
+/area/engine/supermatter)
+"aat" = (
+/obj/structure/closet/wardrobe/green,
+/obj/effect/turf_decal/tile/blue{
+ dir = 8
+ },
+/obj/structure/sign/poster/official/fashion{
+ pixel_y = -32
+ },
+/obj/structure/sign/poster/official/fashion{
+ pixel_y = -32
+ },
+/turf/open/floor/plasteel/white/corner,
+/area/crew_quarters/fitness/recreation)
+"aau" = (
+/obj/structure/closet/secure_closet/hydroponics,
+/obj/structure/sign/poster/official/hydro_ad{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel,
+/area/hydroponics)
+"aav" = (
+/obj/structure/closet,
+/obj/effect/spawner/lootdrop/maintenance,
+/obj/structure/sign/poster/contraband/scum{
+ pixel_y = 32
+ },
+/turf/open/floor/plating,
+/area/maintenance/department/cargo)
+"aaw" = (
+/obj/structure/sign/poster/official/hydro_ad,
+/turf/closed/wall,
+/area/hydroponics)
+"aax" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/effect/turf_decal/tile/blue,
+/obj/effect/turf_decal/tile/blue{
+ dir = 4
+ },
+/obj/structure/sign/poster/official/medical_green_cross{
+ pixel_x = 32
+ },
+/turf/open/floor/plasteel/white,
+/area/medical/medbay/zone3)
+"aay" = (
+/obj/structure/sign/poster/official/medical_green_cross,
+/turf/closed/wall,
+/area/medical/medbay/central)
+"aaz" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/structure/sign/poster/official/medical_green_cross{
+ pixel_x = 32;
+ pixel_y = -32
+ },
+/turf/open/floor/plasteel/white,
+/area/medical/medbay/central)
+"aaA" = (
+/obj/structure/sign/poster/contraband/scum{
+ pixel_y = 32
+ },
+/turf/open/floor/plating,
+/area/maintenance/department/science)
+"aaB" = (
+/obj/structure/closet/masks,
+/obj/item/reagent_containers/food/snacks/deadmouse,
+/obj/structure/sign/poster/contraband/scum{
+ pixel_y = 32
+ },
+/obj/structure/sign/poster/contraband/scum{
+ pixel_y = 32
+ },
+/turf/open/floor/plating,
+/area/maintenance/department/engine)
+"aaC" = (
+/obj/structure/sign/poster/contraband/scum{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel,
+/area/maintenance/department/engine)
"abf" = (
/obj/structure/bed,
/turf/open/floor/plating,
@@ -1589,12 +1844,6 @@
},
/turf/open/floor/plasteel/dark,
/area/ai_monitored/turret_protected/aisat_interior)
-"afP" = (
-/obj/machinery/holopad,
-/mob/living/simple_animal/bot/secbot/pingsky,
-/obj/effect/landmark/start/cyborg,
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/turret_protected/aisat_interior)
"afQ" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
dir = 1
@@ -11506,13 +11755,6 @@
},
/turf/open/floor/plasteel/white/corner,
/area/crew_quarters/fitness/recreation)
-"aBV" = (
-/obj/structure/closet/wardrobe/green,
-/obj/effect/turf_decal/tile/blue{
- dir = 8
- },
-/turf/open/floor/plasteel/white/corner,
-/area/crew_quarters/fitness/recreation)
"aBW" = (
/obj/structure/closet/wardrobe/grey,
/obj/machinery/light,
@@ -15182,13 +15424,6 @@
},
/turf/open/floor/plating,
/area/maintenance/department/cargo)
-"aKm" = (
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/obj/machinery/atmospherics/pipe/simple/orange/visible{
- dir = 4
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"aKn" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -18463,10 +18698,6 @@
},
/turf/open/floor/plasteel,
/area/hydroponics)
-"aSD" = (
-/obj/structure/closet/secure_closet/hydroponics,
-/turf/open/floor/plasteel,
-/area/hydroponics)
"aSE" = (
/obj/machinery/airalarm{
pixel_y = 24
@@ -19833,11 +20064,6 @@
},
/turf/open/floor/plating,
/area/maintenance/department/cargo)
-"aVF" = (
-/obj/structure/closet,
-/obj/effect/spawner/lootdrop/maintenance,
-/turf/open/floor/plating,
-/area/maintenance/department/cargo)
"aVG" = (
/obj/structure/easel,
/turf/open/floor/plating,
@@ -27844,14 +28070,6 @@
},
/turf/open/floor/plasteel/white,
/area/medical/medbay/zone3)
-"boB" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/effect/turf_decal/tile/blue,
-/obj/effect/turf_decal/tile/blue{
- dir = 4
- },
-/turf/open/floor/plasteel/white,
-/area/medical/medbay/zone3)
"boC" = (
/obj/machinery/atmospherics/components/unary/vent_pump/on,
/turf/open/floor/plasteel/dark,
@@ -31673,13 +31891,6 @@
},
/turf/open/floor/plasteel/white,
/area/medical/medbay/central)
-"bwM" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel/white,
-/area/medical/medbay/central)
"bwN" = (
/obj/machinery/door/firedoor,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
@@ -36749,11 +36960,6 @@
icon_state = "platingdmg3"
},
/area/maintenance/department/engine)
-"bGL" = (
-/obj/structure/closet/masks,
-/obj/item/reagent_containers/food/snacks/deadmouse,
-/turf/open/floor/plating,
-/area/maintenance/department/engine)
"bGM" = (
/obj/machinery/vending/cigarette,
/turf/open/floor/plating,
@@ -46083,13 +46289,6 @@
/obj/structure/sign/warning/nosmoking,
/turf/closed/wall/r_wall,
/area/engine/engineering)
-"ccd" = (
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"cci" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/machinery/light{
@@ -47013,17 +47212,6 @@
/obj/structure/closet/firecloset,
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"cfV" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
- dir = 4
- },
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plating,
-/area/engine/engineering)
"cfX" = (
/obj/machinery/atmospherics/pipe/manifold/orange/visible{
dir = 1
@@ -47378,23 +47566,6 @@
},
/turf/open/floor/plating,
/area/engine/engineering)
-"chw" = (
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 5
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
-"chA" = (
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/turf/open/floor/plating,
-/area/engine/supermatter)
"chB" = (
/obj/item/seeds/banana,
/obj/item/seeds/grass,
@@ -54807,17 +54978,6 @@
icon_state = "platingdmg3"
},
/area/maintenance/department/science)
-"hQy" = (
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/item/tank/internals/plasma,
-/turf/open/floor/plating,
-/area/engine/supermatter)
"hQz" = (
/obj/structure/closet/emcloset/anchored,
/obj/structure/cable/yellow{
@@ -55157,11 +55317,6 @@
},
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"izm" = (
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plating,
-/area/engine/engineering)
"izB" = (
/obj/machinery/door/airlock/external{
name = "Escape Pod"
@@ -56542,13 +56697,6 @@
},
/turf/open/floor/plating,
/area/maintenance/department/engine)
-"lRX" = (
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/obj/machinery/atmospherics/pipe/simple/orange/visible{
- dir = 9
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"lTC" = (
/obj/item/shard,
/obj/effect/turf_decal/stripes/line{
@@ -57810,13 +57958,6 @@
},
/turf/open/floor/plating,
/area/engine/engineering)
-"oJr" = (
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
- dir = 1
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"oKa" = (
/obj/structure/rack,
/obj/effect/spawner/lootdrop/maintenance{
@@ -58798,11 +58939,6 @@
},
/turf/open/floor/plating,
/area/maintenance/department/engine)
-"qOS" = (
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/open/floor/plating,
-/area/engine/engineering)
"qPB" = (
/obj/structure/chair/stool,
/obj/machinery/light/small{
@@ -59976,13 +60112,6 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"tQT" = (
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"tRc" = (
/obj/structure/ore_box,
/turf/open/floor/plating{
@@ -60180,17 +60309,6 @@
luminosity = 2
},
/area/maintenance/department/science)
-"uoq" = (
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/dirt,
-/turf/open/floor/plating,
-/area/engine/supermatter)
"uos" = (
/obj/machinery/computer/camera_advanced/base_construction,
/obj/effect/turf_decal/stripes/line{
@@ -60626,13 +60744,6 @@
/obj/structure/lattice,
/turf/open/space/basic,
/area/space/nearstation)
-"vor" = (
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/obj/structure/cable/yellow{
- icon_state = "1-2"
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"vpz" = (
/obj/structure/girder,
/turf/open/floor/plating{
@@ -61074,17 +61185,6 @@
/obj/structure/sign/warning,
/turf/closed/wall,
/area/science/mixing)
-"woh" = (
-/obj/structure/cable/yellow{
- icon_state = "4-8"
- },
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "engsm";
- name = "Radiation Chamber Shutters"
- },
-/obj/effect/decal/cleanable/oil,
-/turf/open/floor/plating,
-/area/engine/supermatter)
"woq" = (
/obj/structure/chair,
/turf/open/floor/plating,
@@ -61228,13 +61328,6 @@
},
/turf/open/floor/plating,
/area/maintenance/department/science)
-"wHI" = (
-/obj/effect/spawner/structure/window/plasma/reinforced,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
- dir = 9
- },
-/turf/open/floor/plating,
-/area/engine/engineering)
"wIo" = (
/obj/machinery/atmospherics/pipe/heat_exchanging/simple,
/obj/structure/lattice,
@@ -83932,7 +84025,7 @@ bBX
bva
bEm
bva
-bGL
+aaB
bHQ
bJe
bKj
@@ -85497,7 +85590,7 @@ bSw
bva
bOB
bva
-kRq
+aaC
kRq
kRq
bva
@@ -87507,7 +87600,7 @@ aVS
aVS
aVS
aVS
-aRL
+aaw
aJI
aDZ
aHN
@@ -88030,7 +88123,7 @@ bjR
blc
biX
bny
-boB
+aax
bpF
brd
bsz
@@ -88522,7 +88615,7 @@ aKP
aPz
aQJ
aRL
-aSD
+aau
aTT
aXS
aRL
@@ -90606,7 +90699,7 @@ brg
bsG
brf
bvn
-bwM
+aaz
byt
bzX
bpP
@@ -90905,9 +90998,9 @@ svA
mjK
mjK
mjK
-wHI
-eyj
-eyj
+aap
+aac
+aac
bXk
shH
shH
@@ -91157,7 +91250,7 @@ cah
cdO
ioF
ceX
-qOS
+aah
cfS
fFv
fmL
@@ -91631,7 +91724,7 @@ bnD
boJ
bpS
bjd
-bjc
+aay
cqm
bvl
bwP
@@ -91671,7 +91764,7 @@ cbh
cbh
cbh
hjD
-vor
+aai
cfU
tIS
iCs
@@ -91929,12 +92022,12 @@ irM
qFu
cet
ulY
-cfV
+aak
cgu
cgU
-izm
-chw
-eyj
+aam
+aaq
+aac
jzE
bXk
bXk
@@ -92181,9 +92274,9 @@ bZA
can
cbi
ccc
-eyj
+aac
cdR
-tQT
+aaf
bXk
bXk
sWW
@@ -92437,12 +92530,12 @@ bYR
bZA
can
cbj
-eyj
+aac
cbX
wcs
iyJ
cfa
-eyj
+aac
twv
hoS
sWj
@@ -92694,7 +92787,7 @@ bYS
bZA
can
qpS
-ccd
+aae
ccX
ccX
ceu
@@ -92703,9 +92796,9 @@ cfu
tlN
ncm
cCI
-uoq
-hQy
-chA
+aan
+aar
+aao
meF
oKv
wbB
@@ -92951,12 +93044,12 @@ bYT
bZB
caq
cbk
-eyj
+aac
ccY
cdT
ccY
cbX
-eyj
+aac
vlC
iej
qeY
@@ -93208,7 +93301,7 @@ bYU
bZE
car
mgz
-eyj
+aac
cbX
wcs
wcs
@@ -94236,7 +94329,7 @@ bYQ
bZA
cam
mgz
-eyj
+aac
cbX
wcs
wcs
@@ -94493,12 +94586,12 @@ wjm
bZF
cbm
mgz
-eyj
+aac
oHa
oHa
eWi
cbX
-eyj
+aac
vlC
cgx
qeY
@@ -94750,7 +94843,7 @@ bYO
bZA
cam
lrM
-ccd
+aae
cAQ
cAQ
cLw
@@ -94759,9 +94852,9 @@ cfu
jBn
oxw
meF
-chA
-chA
-woh
+aao
+aao
+aas
cCI
cBS
iLh
@@ -94900,7 +94993,7 @@ aey
aeO
aff
afy
-afP
+aab
bIK
agt
agD
@@ -95007,12 +95100,12 @@ bYY
bZA
cam
cbn
-eyj
+aac
cbX
wcs
cfP
cff
-eyj
+aac
cfX
vVO
iop
@@ -95265,9 +95358,9 @@ bZG
cax
cbo
ccc
-eyj
+aac
cdR
-oJr
+aag
bXq
bXq
cfY
@@ -95527,7 +95620,7 @@ kTj
qhE
loz
frj
-lRX
+aal
eyj
uIB
eyj
@@ -95783,7 +95876,7 @@ cam
cam
cam
haA
-aKm
+aaj
upc
wIo
hyh
@@ -96040,7 +96133,7 @@ cCV
ceb
epV
qLI
-aKm
+aaj
eiV
upc
dsz
@@ -103154,7 +103247,7 @@ axx
ayv
azD
aAS
-aBV
+aat
atn
aEh
aFe
@@ -107799,7 +107892,7 @@ sZh
aLm
aTx
aEj
-aVF
+aav
aFi
aFi
aFi
@@ -109372,7 +109465,7 @@ blX
blX
blX
bkF
-lWy
+aaA
lWy
fKj
lWy
diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm
index f9c3653b35..8d5e216f9e 100644
--- a/_maps/map_files/generic/CentCom.dmm
+++ b/_maps/map_files/generic/CentCom.dmm
@@ -10005,6 +10005,12 @@
/obj/structure/chair/stool,
/turf/open/floor/plasteel,
/area/syndicate_mothership)
+"wZ" = (
+/obj/structure/bed,
+/obj/item/bedsheet/syndie,
+/obj/effect/landmark/holding_facility,
+/turf/open/indestructible/hotelwood,
+/area/centcom/holding)
"xa" = (
/obj/machinery/door/window/northright{
dir = 4;
@@ -12452,6 +12458,13 @@
},
/turf/open/floor/plasteel/dark,
/area/centcom/evac)
+"CQ" = (
+/obj/effect/landmark/holding_facility,
+/mob/living/simple_animal/bot/medbot{
+ name = "Syndicate Hospitality Drone"
+ },
+/turf/open/indestructible/hotelwood,
+/area/centcom/holding)
"CR" = (
/obj/machinery/computer/security{
dir = 8
@@ -17251,10 +17264,21 @@
/obj/structure/window/reinforced/fulltile,
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
+"Ql" = (
+/obj/machinery/light,
+/obj/effect/landmark/holding_facility,
+/turf/open/indestructible/hotelwood,
+/area/centcom/holding)
"Qm" = (
/obj/singularity/wizard/mapped,
/turf/open/indestructible/binary,
/area/fabric_of_reality)
+"Qn" = (
+/obj/machinery/vr_sleeper/hugbox{
+ dir = 8
+ },
+/turf/open/indestructible/hotelwood,
+/area/centcom/holding)
"Qo" = (
/turf/open/floor/mineral/plastitanium/red,
/area/centcom/evac)
@@ -17794,7 +17818,7 @@
/area/syndicate_mothership)
"Tn" = (
/obj/structure/table/wood/fancy,
-/obj/item/candle/infinite{
+/obj/item/candle/infinite/hugbox{
pixel_y = 6
},
/turf/open/indestructible/hotelwood,
@@ -17820,7 +17844,6 @@
dir = 4
},
/obj/structure/window/reinforced/tinted{
- icon_state = "twindow";
dir = 1
},
/turf/open/floor/plasteel/white,
@@ -17897,7 +17920,6 @@
dir = 8
},
/obj/structure/window/reinforced/tinted{
- icon_state = "twindow";
dir = 1
},
/obj/machinery/washing_machine,
@@ -17939,10 +17961,13 @@
/obj/vehicle/ridden/janicart,
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
-"Ud" = (
-/obj/effect/landmark/holding_facility,
+"Uc" = (
+/obj/machinery/vending/sustenance,
/turf/open/indestructible/hotelwood,
/area/centcom/holding)
+"Ud" = (
+/turf/closed/indestructible/wood,
+/area/centcom/holding)
"Ug" = (
/obj/machinery/door/poddoor/shuttledock{
checkdir = 1;
@@ -18844,6 +18869,10 @@
/obj/effect/landmark/start/nukeop_leader,
/turf/open/floor/wood,
/area/syndicate_mothership)
+"ZB" = (
+/obj/effect/landmark/holding_facility,
+/turf/open/indestructible/hotelwood,
+/area/centcom/holding)
"ZE" = (
/obj/structure/sink{
dir = 4;
@@ -43829,11 +43858,11 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
+Ud
+Ud
+Ud
+Ud
+Ud
aa
aa
aa
@@ -44086,11 +44115,11 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
+Ud
+Uc
+ZB
+ZB
+Ud
aa
aa
aa
@@ -44343,11 +44372,11 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
+Ud
+ZB
+CQ
+Ql
+Ud
aa
aa
aa
@@ -44600,11 +44629,11 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
+Ud
+wZ
+ZB
+Qn
+Ud
aa
aa
aa
@@ -44857,11 +44886,11 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
+Ud
+Ud
+Ud
+Ud
+Ud
aa
aa
aa
@@ -46174,8 +46203,8 @@ Sd
HH
Nd
WM
-Ud
-Ud
+Sd
+Sd
NT
Nj
Po
@@ -46431,8 +46460,8 @@ Sd
XM
NT
Sd
-Ud
-Ud
+Sd
+Sd
NT
YU
zT
@@ -46688,8 +46717,8 @@ Sd
Tn
NT
Sd
-Ud
-Ud
+Sd
+Sd
NT
YU
zT
@@ -46945,8 +46974,8 @@ Sd
GY
NT
Sd
-Ud
-Ud
+Sd
+Sd
NT
YU
zT
@@ -47202,8 +47231,8 @@ Qk
Vu
Nd
Gs
-Ud
-Ud
+Sd
+Sd
NT
Mt
PA
diff --git a/code/__DEFINES/dcs/signals.dm b/code/__DEFINES/dcs/signals.dm
index bd77e374aa..a088b0fc57 100644
--- a/code/__DEFINES/dcs/signals.dm
+++ b/code/__DEFINES/dcs/signals.dm
@@ -149,7 +149,9 @@
#define COMSIG_MOB_DEATH "mob_death" //from base of mob/death(): (gibbed)
#define COMPONENT_BLOCK_DEATH_BROADCAST 1 //stops the death from being broadcasted in deadchat.
#define COMSIG_MOB_GHOSTIZE "mob_ghostize" //from base of mob/Ghostize(): (can_reenter_corpse, special, penalize)
- #define COMPONENT_BLOCK_GHOSTING 1
+ #define COMPONENT_BLOCK_GHOSTING (1<<0)
+ #define COMPONENT_DO_NOT_PENALIZE_GHOSTING (1<<1)
+ #define COMPONENT_FREE_GHOSTING (1<<2)
#define COMSIG_MOB_ALLOWED "mob_allowed" //from base of obj/allowed(mob/M): (/obj) returns bool, if TRUE the mob has id access to the obj
#define COMSIG_MOB_RECEIVE_MAGIC "mob_receive_magic" //from base of mob/anti_magic_check(): (mob/user, magic, holy, tinfoil, chargecost, self, protection_sources)
#define COMPONENT_BLOCK_MAGIC 1
diff --git a/code/__DEFINES/layers.dm b/code/__DEFINES/layers.dm
index e0a22667ac..35947b320e 100644
--- a/code/__DEFINES/layers.dm
+++ b/code/__DEFINES/layers.dm
@@ -4,11 +4,16 @@
#define CLICKCATCHER_PLANE -99
#define PLANE_SPACE -95
+#define PLANE_SPACE_RENDER_TARGET "PLANE_SPACE"
#define PLANE_SPACE_PARALLAX -90
+#define PLANE_SPACE_PARALLAX_RENDER_TARGET "PLANE_SPACE_PARALLAX"
#define FLOOR_PLANE -2
+#define FLOOR_PLANE_RENDER_TARGET "FLOOR_PLANE"
#define GAME_PLANE -1
+#define GAME_PLANE_RENDER_TARGET "GAME_PLANE"
#define BLACKNESS_PLANE 0 //To keep from conflicts with SEE_BLACKNESS internals
+#define BLACKNESS_PLANE_RENDER_TARGET "BLACKNESS_PLANE"
#define SPACE_LAYER 1.8
//#define TURF_LAYER 2 //For easy recordkeeping; this is a byond define
@@ -78,20 +83,38 @@
#define MASSIVE_OBJ_LAYER 11
#define POINT_LAYER 12
+#define EMISSIVE_BLOCKER_PLANE 12
+#define EMISSIVE_BLOCKER_LAYER 12
+#define EMISSIVE_BLOCKER_RENDER_TARGET "*EMISSIVE_BLOCKER_PLANE"
+
+#define EMISSIVE_PLANE 13
+#define EMISSIVE_LAYER 13
+#define EMISSIVE_RENDER_TARGET "*EMISSIVE_PLANE"
+
+#define EMISSIVE_UNBLOCKABLE_PLANE 14
+#define EMISSIVE_UNBLOCKABLE_LAYER 14
+#define EMISSIVE_UNBLOCKABLE_RENDER_TARGET "*EMISSIVE_UNBLOCKABLE_PLANE"
+
#define LIGHTING_PLANE 15
#define LIGHTING_LAYER 15
+#define LIGHTING_RENDER_TARGET "LIGHT_PLANE"
#define ABOVE_LIGHTING_PLANE 16
#define ABOVE_LIGHTING_LAYER 16
+#define ABOVE_LIGHTING_RENDER_TARGET "ABOVE_LIGHTING_PLANE"
#define FLOOR_OPENSPACE_PLANE 17
#define OPENSPACE_LAYER 17
+#define OPENSPACE_RENDER_TARGET "OPENSPACE_PLANE"
#define BYOND_LIGHTING_PLANE 18
#define BYOND_LIGHTING_LAYER 18
+#define BYOND_LIGHTING_RENDER_TARGET "BYOND_LIGHTING_PLANE"
#define CAMERA_STATIC_PLANE 19
#define CAMERA_STATIC_LAYER 19
+#define CAMERA_STATIC_RENDER_TARGET "CAMERA_STATIC_PLANE"
+
//HUD layer defines
#define FULLSCREEN_PLANE 20
@@ -101,11 +124,16 @@
#define BLIND_LAYER 20.3
#define CRIT_LAYER 20.4
#define CURSE_LAYER 20.5
+#define FULLSCREEN_RENDER_TARGET "FULLSCREEN_PLANE"
#define HUD_PLANE 21
#define HUD_LAYER 21
+#define HUD_RENDER_TARGET "HUD_PLANE"
#define ABOVE_HUD_PLANE 22
#define ABOVE_HUD_LAYER 22
+#define ABOVE_HUD_RENDER_TARGET "ABOVE_HUD_PLANE"
#define SPLASHSCREEN_LAYER 23
#define SPLASHSCREEN_PLANE 23
+#define SPLASHSCREEN_RENDER_TARGET "SPLASHSCREEN_PLANE"
+
diff --git a/code/__DEFINES/lighting.dm b/code/__DEFINES/lighting.dm
index 89c702e605..5ba696b274 100644
--- a/code/__DEFINES/lighting.dm
+++ b/code/__DEFINES/lighting.dm
@@ -83,3 +83,8 @@
#define FLASH_LIGHT_DURATION 2
#define FLASH_LIGHT_POWER 3
#define FLASH_LIGHT_RANGE 3.8
+
+/// Uses vis_overlays to leverage caching so that very few new items need to be made for the overlay. For anything that doesn't change outline or opaque area much or at all.
+#define EMISSIVE_BLOCK_GENERIC 1
+/// Uses a dedicated render_target object to copy the entire appearance in real time to the blocking layer. For things that can change in appearance a lot from the base state, like humans.
+#define EMISSIVE_BLOCK_UNIQUE 2
diff --git a/code/__DEFINES/traits.dm b/code/__DEFINES/traits.dm
index 7bcdded17b..a8c0353591 100644
--- a/code/__DEFINES/traits.dm
+++ b/code/__DEFINES/traits.dm
@@ -212,6 +212,7 @@
#define TRAIT_NO_TELEPORT "no-teleport" //you just can't
#define TRAIT_NO_INTERNALS "no-internals"
#define TRAIT_NO_ALCOHOL "alcohol_intolerance"
+#define TRAIT_MUTATION_STASIS "mutation_stasis" //Prevents processed genetics mutations from processing.
// common trait sources
#define TRAIT_GENERIC "generic"
diff --git a/code/_onclick/hud/plane_master.dm b/code/_onclick/hud/plane_master.dm
index b2bc05924c..7a8cc20d76 100644
--- a/code/_onclick/hud/plane_master.dm
+++ b/code/_onclick/hud/plane_master.dm
@@ -16,6 +16,7 @@
//Trust me, you need one. Period. If you don't think you do, you're doing something extremely wrong.
/obj/screen/plane_master/proc/backdrop(mob/mymob)
+///Things rendered on "openspace"; holes in multi-z
/obj/screen/plane_master/openspace
name = "open space plane master"
plane = FLOOR_OPENSPACE_PLANE
@@ -38,12 +39,14 @@
/obj/screen/plane_master/proc/clear_filters()
filters = list()
+///Contains just the floor
/obj/screen/plane_master/floor
name = "floor plane master"
plane = FLOOR_PLANE
appearance_flags = PLANE_MASTER
blend_mode = BLEND_OVERLAY
+///Contains most things in the game world
/obj/screen/plane_master/game_world
name = "game world plane master"
plane = GAME_PLANE
@@ -57,12 +60,60 @@
remove_filter("ambient_occlusion")
update_filters()
+///Contains all lighting objects
/obj/screen/plane_master/lighting
name = "lighting plane master"
plane = LIGHTING_PLANE
blend_mode = BLEND_MULTIPLY
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+/obj/screen/plane_master/lighting/Initialize()
+ . = ..()
+ filters += filter(type="alpha", render_source=EMISSIVE_RENDER_TARGET, flags=MASK_INVERSE)
+ filters += filter(type="alpha", render_source=EMISSIVE_UNBLOCKABLE_RENDER_TARGET, flags=MASK_INVERSE)
+
+/**
+ * Things placed on this mask the lighting plane. Doesn't render directly.
+ *
+ * Gets masked by blocking plane. Use for things that you want blocked by
+ * mobs, items, etc.
+ */
+/obj/screen/plane_master/emissive
+ name = "emissive plane master"
+ plane = EMISSIVE_PLANE
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+ render_target = EMISSIVE_RENDER_TARGET
+
+/obj/screen/plane_master/emissive/Initialize()
+ . = ..()
+ filters += filter(type="alpha", render_source=EMISSIVE_BLOCKER_RENDER_TARGET, flags=MASK_INVERSE)
+
+/**
+ * Things placed on this always mask the lighting plane. Doesn't render directly.
+ *
+ * Always masks the light plane, isn't blocked by anything. Use for on mob glows,
+ * magic stuff, etc.
+ */
+
+/obj/screen/plane_master/emissive_unblockable
+ name = "unblockable emissive plane master"
+ plane = EMISSIVE_UNBLOCKABLE_PLANE
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+ render_target = EMISSIVE_UNBLOCKABLE_RENDER_TARGET
+
+/**
+ * Things placed on this layer mask the emissive layer. Doesn't render directly
+ *
+ * You really shouldn't be directly using this, use atom helpers instead
+ */
+/obj/screen/plane_master/emissive_unblockable
+ name = "emissive mob plane master"
+ plane = EMISSIVE_BLOCKER_PLANE
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+ render_target = EMISSIVE_BLOCKER_RENDER_TARGET
+
+///Contains space parallax
+
/obj/screen/plane_master/parallax
name = "parallax plane master"
plane = PLANE_SPACE_PARALLAX
diff --git a/code/controllers/configuration/configuration.dm b/code/controllers/configuration/configuration.dm
index f1db37d9fa..8f34901d46 100644
--- a/code/controllers/configuration/configuration.dm
+++ b/code/controllers/configuration/configuration.dm
@@ -368,12 +368,16 @@
var/list/datum/dynamic_storyteller/runnable_storytellers = new
var/list/probabilities = Get(/datum/config_entry/keyed_list/storyteller_weight)
var/list/repeated_mode_adjust = Get(/datum/config_entry/number_list/repeated_mode_adjust)
+ var/list/min_player_counts = Get(/datum/config_entry/keyed_list/storyteller_min_players)
for(var/T in storyteller_cache)
var/datum/dynamic_storyteller/S = T
var/config_tag = initial(S.config_tag)
var/probability = (config_tag in probabilities) ? probabilities[config_tag] : initial(S.weight)
+ var/min_players = (config_tag in min_player_counts) ? min_player_counts[config_tag] : initial(S.min_players)
if(probability <= 0)
continue
+ if(length(GLOB.player_list) < min_players)
+ continue
if(SSpersistence.saved_storytellers.len == repeated_mode_adjust.len)
var/name = initial(S.name)
var/recent_round = min(SSpersistence.saved_storytellers.Find(name),3)
diff --git a/code/controllers/configuration/entries/dynamic.dm b/code/controllers/configuration/entries/dynamic.dm
index 4c03de4678..44d9a041a6 100644
--- a/code/controllers/configuration/entries/dynamic.dm
+++ b/code/controllers/configuration/entries/dynamic.dm
@@ -92,3 +92,7 @@
/datum/config_entry/keyed_list/storyteller_weight
key_mode = KEY_MODE_TEXT
value_mode = VALUE_MODE_NUM
+
+/datum/config_entry/keyed_list/storyteller_min_players
+ key_mode = KEY_MODE_TEXT
+ value_mode = VALUE_MODE_NUM
diff --git a/code/datums/elements/ghost_role_eligibility.dm b/code/datums/elements/ghost_role_eligibility.dm
index 28567c579b..519a34e01f 100644
--- a/code/datums/elements/ghost_role_eligibility.dm
+++ b/code/datums/elements/ghost_role_eligibility.dm
@@ -1,12 +1,17 @@
/datum/element/ghost_role_eligibility
- element_flags = ELEMENT_DETACH
+ element_flags = ELEMENT_DETACH | ELEMENT_BESPOKE
+ id_arg_index = 3
var/list/timeouts = list()
var/list/mob/eligible_mobs = list()
+ var/penalizing = FALSE
+ var/free_ghost = FALSE
-/datum/element/ghost_role_eligibility/Attach(datum/target,penalize = FALSE)
+/datum/element/ghost_role_eligibility/Attach(datum/target,penalize = FALSE,free_ghosting = FALSE, penalize_on_ghost = FALSE)
. = ..()
if(!ismob(target))
return ELEMENT_INCOMPATIBLE
+ penalizing = penalize_on_ghost
+ free_ghost = free_ghosting
var/mob/M = target
if(!(M in eligible_mobs))
eligible_mobs += M
@@ -27,6 +32,7 @@
else if(timeouts[M.ckey] == CANT_REENTER_ROUND)
return
timeouts[M.ckey] = max(timeouts[M.ckey],penalty)
+ RegisterSignal(M,COMSIG_MOB_GHOSTIZE,.proc/get_ghost_flags)
/datum/element/ghost_role_eligibility/Detach(mob/M)
. = ..()
@@ -56,3 +62,11 @@
if(!silent && M.client)
to_chat(M, "You are unable to reenter the round[timeout != CANT_REENTER_ROUND ? " yet. Your ghost role blacklist will expire in [DisplayTimeText(timeout - world.realtime)]" : ""].")
return FALSE
+
+/datum/element/ghost_role_eligibility/proc/get_ghost_flags()
+ . = 0
+ if(!penalizing)
+ . |= COMPONENT_DO_NOT_PENALIZE_GHOSTING
+ if(free_ghost)
+ . |= COMPONENT_FREE_GHOSTING
+ return .
diff --git a/code/datums/mind.dm b/code/datums/mind.dm
index 57b9a25904..45a0f86a98 100644
--- a/code/datums/mind.dm
+++ b/code/datums/mind.dm
@@ -470,7 +470,6 @@
/datum/objective/steal,
/datum/objective/download,
/datum/objective/nuclear,
- /datum/objective/capture,
/datum/objective/absorb,
/datum/objective/custom
)
diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm
index 9f1eb534a9..d8f54e9993 100644
--- a/code/game/atoms_movable.dm
+++ b/code/game/atoms_movable.dm
@@ -39,6 +39,37 @@
var/zfalling = FALSE
+ /// Either FALSE, [EMISSIVE_BLOCK_GENERIC], or [EMISSIVE_BLOCK_UNIQUE]
+ var/blocks_emissive = FALSE
+ ///Internal holder for emissive blocker object, do not use directly use blocks_emissive
+ var/atom/movable/emissive_blocker/em_block
+
+
+/atom/movable/Initialize(mapload)
+ . = ..()
+ switch(blocks_emissive)
+ if(EMISSIVE_BLOCK_GENERIC)
+ update_emissive_block()
+ if(EMISSIVE_BLOCK_UNIQUE)
+ render_target = ref(src)
+ em_block = new(src, render_target)
+ vis_contents += em_block
+
+/atom/movable/Destroy()
+ QDEL_NULL(em_block)
+ return ..()
+
+/atom/movable/proc/update_emissive_block()
+ if(blocks_emissive != EMISSIVE_BLOCK_GENERIC)
+ return
+ if(length(managed_vis_overlays))
+ for(var/a in managed_vis_overlays)
+ var/obj/effect/overlay/vis/vs
+ if(vs.plane == EMISSIVE_BLOCKER_PLANE)
+ SSvis_overlays.remove_vis_overlay(src, list(vs))
+ break
+ SSvis_overlays.add_vis_overlay(src, icon, icon_state, EMISSIVE_BLOCKER_LAYER, EMISSIVE_BLOCKER_PLANE)
+
/atom/movable/proc/can_zFall(turf/source, levels = 1, turf/target, direction)
if(!direction)
direction = DOWN
diff --git a/code/game/gamemodes/dynamic/dynamic.dm b/code/game/gamemodes/dynamic/dynamic.dm
index 3143ef2ee5..de57bf0402 100644
--- a/code/game/gamemodes/dynamic/dynamic.dm
+++ b/code/game/gamemodes/dynamic/dynamic.dm
@@ -127,6 +127,8 @@ GLOBAL_VAR_INIT(dynamic_storyteller_type, /datum/dynamic_storyteller/classic)
var/only_ruleset_executed = FALSE
/// Antags rolled by rules so far, to keep track of and discourage scaling past a certain ratio of crew/antags especially on lowpop.
var/antags_rolled = 0
+ // Arbitrary threat addition, for fudging purposes.
+ var/added_threat = 50
/datum/game_mode/dynamic/New() // i have NO IDEA if this is the proper way to do this.
..()
@@ -172,9 +174,9 @@ GLOBAL_VAR_INIT(dynamic_storyteller_type, /datum/dynamic_storyteller/classic)
else
dat += "none.
"
dat += "
Injection Timers: ([storyteller.get_injection_chance(TRUE)]% chance)
"
- dat += "Latejoin: [(latejoin_injection_cooldown-world.time)>60*10 ? "[round((latejoin_injection_cooldown-world.time)/60/10,0.1)] minutes" : "[(latejoin_injection_cooldown-world.time)] seconds"] \[Now!\]
"
- dat += "Midround: [(midround_injection_cooldown-world.time)>60*10 ? "[round((midround_injection_cooldown-world.time)/60/10,0.1)] minutes" : "[(midround_injection_cooldown-world.time)] seconds"] \[Now!\]
"
- dat += "Event: [(event_injection_cooldown-world.time)>60*10 ? "[round((event_injection_cooldown-world.time)/60/10,0.1)] minutes" : "[(event_injection_cooldown-world.time)] seconds"] \[Now!\]
"
+ dat += "Latejoin: [(latejoin_injection_cooldown-world.time)>60*10 ? "[round((latejoin_injection_cooldown-world.time)/60/10,0.1)] minutes" : "[(latejoin_injection_cooldown-world.time)/10] seconds"] \[Now!\]
"
+ dat += "Midround: [(midround_injection_cooldown-world.time)>60*10 ? "[round((midround_injection_cooldown-world.time)/60/10,0.1)] minutes" : "[(midround_injection_cooldown-world.time)/10] seconds"] \[Now!\]
"
+ dat += "Event: [(event_injection_cooldown-world.time)>60*10 ? "[round((event_injection_cooldown-world.time)/60/10,0.1)] minutes" : "[(event_injection_cooldown-world.time)/10] seconds"] \[Now!\]
"
usr << browse(dat.Join(), "window=gamemode_panel;size=500x500")
/datum/game_mode/dynamic/Topic(href, href_list)
@@ -511,7 +513,7 @@ GLOBAL_VAR_INIT(dynamic_storyteller_type, /datum/dynamic_storyteller/classic)
starting_rule.trim_candidates()
starting_rule.scale_up(extra_rulesets_amount, threat)
if (starting_rule.pre_execute())
- log_threat("[starting_rule.ruletype] - [starting_rule.name] -[starting_rule.cost + starting_rule.scaled_times * starting_rule.scaling_cost] threat", verbose = TRUE)
+ log_threat("[starting_rule.ruletype] - [starting_rule.name] [starting_rule.cost + starting_rule.scaled_times * starting_rule.scaling_cost] threat", verbose = TRUE)
if(starting_rule.flags & HIGHLANDER_RULESET)
highlander_executed = TRUE
else if(starting_rule.flags & ONLY_RULESET)
@@ -605,7 +607,7 @@ GLOBAL_VAR_INIT(dynamic_storyteller_type, /datum/dynamic_storyteller/classic)
if ((forced || (new_rule.acceptable(current_players[CURRENT_LIVING_PLAYERS].len, threat_level) && new_rule.cost <= threat)))
new_rule.trim_candidates()
if (new_rule.ready(forced))
- log_threat("[new_rule.ruletype] - [new_rule.name] -[new_rule.cost] threat", verbose = TRUE)
+ log_threat("[new_rule.ruletype] - [new_rule.name] [new_rule.cost] threat", verbose = TRUE)
if (new_rule.execute()) // This should never fail since ready() returned 1
if(new_rule.flags & HIGHLANDER_RULESET)
highlander_executed = TRUE
@@ -625,7 +627,7 @@ GLOBAL_VAR_INIT(dynamic_storyteller_type, /datum/dynamic_storyteller/classic)
var/datum/dynamic_ruleset/rule = sent_rule
if (rule.execute())
log_game("DYNAMIC: Injected a [rule.ruletype == "latejoin" ? "latejoin" : "midround"] ruleset [rule.name].")
- log_threat("[rule.ruletype] [rule.name] spent [rule.cost]", verbose = TRUE)
+ log_threat("[rule.ruletype] [rule.name] added [rule.cost]", verbose = TRUE)
if(rule.flags & HIGHLANDER_RULESET)
highlander_executed = TRUE
else if(rule.flags & ONLY_RULESET)
@@ -712,8 +714,7 @@ GLOBAL_VAR_INIT(dynamic_storyteller_type, /datum/dynamic_storyteller/classic)
current_players[CURRENT_OBSERVERS].Add(M)
continue
current_players[CURRENT_DEAD_PLAYERS].Add(M) // Players who actually died (and admins who ghosted, would be nice to avoid counting them somehow)
- threat = storyteller.calculate_threat() + 50 // 50 is the centerpoint, so we want it to be around 50
-
+ threat = storyteller.calculate_threat() + added_threat
/// Removes type from the list
/datum/game_mode/dynamic/proc/remove_from_list(list/type_list, type)
for(var/I in type_list)
@@ -766,20 +767,20 @@ GLOBAL_VAR_INIT(dynamic_storyteller_type, /datum/dynamic_storyteller/classic)
/// Increase the threat level.
/datum/game_mode/dynamic/proc/create_threat(gain)
threat_level += gain
- SSblackbox.record_feedback("tally","dynamic_threat",gain,"Created threat")
+ SSblackbox.record_feedback("tally","dynamic_threat",gain,"Created threat level")
log_threat("[gain] created. Threat level is now [threat_level].", verbose = TRUE)
/// Decrease the threat level.
/datum/game_mode/dynamic/proc/remove_threat(loss)
threat_level -= loss
- SSblackbox.record_feedback("tally","dynamic_threat",loss,"Removed threat")
+ SSblackbox.record_feedback("tally","dynamic_threat",loss,"Removed threat level")
log_threat("[loss] removed. Threat level is now [threat_level].", verbose = TRUE)
/// Fill up more of the threat level.
/datum/game_mode/dynamic/proc/spend_threat(cost)
- threat += cost
- SSblackbox.record_feedback("tally","dynamic_threat",cost,"Threat spent")
- log_threat("[cost] spent. Threat is now [threat].", verbose = TRUE)
+ added_threat += cost
+ SSblackbox.record_feedback("tally","dynamic_threat",cost,"Threat added")
+ log_threat("[cost] added. Threat is now [threat].", verbose = TRUE)
/// Turns the value generated by lorentz distribution to threat value between 0 and 100.
/datum/game_mode/dynamic/proc/lorentz_to_threat(x)
diff --git a/code/game/gamemodes/dynamic/dynamic_rulesets_midround.dm b/code/game/gamemodes/dynamic/dynamic_rulesets_midround.dm
index bc2aa288c2..b746100f27 100644
--- a/code/game/gamemodes/dynamic/dynamic_rulesets_midround.dm
+++ b/code/game/gamemodes/dynamic/dynamic_rulesets_midround.dm
@@ -415,7 +415,7 @@
required_candidates = 1
blocking_rules = list(/datum/dynamic_ruleset/roundstart/clockcult)
weight = 4
- cost = 10
+ cost = 20
requirements = list(101,101,101,80,60,50,50,50,50,50)
high_population_requirement = 50
repeatable = TRUE
diff --git a/code/game/gamemodes/dynamic/dynamic_storytellers.dm b/code/game/gamemodes/dynamic/dynamic_storytellers.dm
index 4d847a90ae..71eb7ec533 100644
--- a/code/game/gamemodes/dynamic/dynamic_storytellers.dm
+++ b/code/game/gamemodes/dynamic/dynamic_storytellers.dm
@@ -17,6 +17,7 @@
var/weight = 3 // Weights for randomly picking storyteller. Multiplied by score after voting.
var/event_frequency_lower = 6 MINUTES // How rare events will be, at least.
var/event_frequency_upper = 20 MINUTES // How rare events will be, at most.
+ var/min_players = -1 // How many players are required for this one to start.
var/datum/game_mode/dynamic/mode = null // Cached as soon as it's made, by dynamic.
/**
@@ -114,7 +115,7 @@ Property weights are:
/datum/dynamic_storyteller/proc/roundstart_draft()
var/list/drafted_rules = list()
for (var/datum/dynamic_ruleset/roundstart/rule in mode.roundstart_rules)
- if (rule.acceptable(mode.roundstart_pop_ready, mode.threat_level) && mode.threat >= rule.cost) // If we got the population and threat required
+ if (rule.acceptable(mode.roundstart_pop_ready, mode.threat_level)) // If we got the population and threat required
rule.candidates = mode.candidates.Copy()
rule.trim_candidates()
if (rule.ready() && rule.candidates.len > 0)
@@ -195,11 +196,12 @@ Property weights are:
config_tag = "chaotic"
curve_centre = 10
desc = "High chaos modes. Revs, wizard, clock cult. Multiple antags at once. Chaos is kept up all round."
- property_weights = list("extended" = -1, "chaos" = 2)
+ property_weights = list("extended" = -1, "chaos" = 1)
weight = 1
event_frequency_lower = 2 MINUTES
event_frequency_upper = 10 MINUTES
flags = WAROPS_ALWAYS_ALLOWED | FORCE_IF_WON
+ min_players = 40
var/refund_cooldown = 0
/datum/dynamic_storyteller/chaotic/do_process()
@@ -221,6 +223,7 @@ Property weights are:
curve_centre = 2
curve_width = 1.5
weight = 2
+ min_players = 30
flags = WAROPS_ALWAYS_ALLOWED
property_weights = list("valid" = 3, "trust" = 5)
diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm
index b42b41aba4..4497f9faef 100644
--- a/code/game/gamemodes/objective.dm
+++ b/code/game/gamemodes/objective.dm
@@ -663,7 +663,7 @@ GLOBAL_LIST_EMPTY(possible_items_special)
if(count)
target_amount = count
update_explanation_text()
-
+/*
/datum/objective/capture
name = "capture"
var/captured_amount = 0
@@ -709,7 +709,7 @@ GLOBAL_LIST_EMPTY(possible_items_special)
if(count)
target_amount = count
update_explanation_text()
-
+*/
//Changeling Objectives
/datum/objective/absorb
diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm
index 7654070cf1..648c227c0a 100644
--- a/code/game/machinery/cloning.dm
+++ b/code/game/machinery/cloning.dm
@@ -180,6 +180,7 @@
//Get the clone body ready
maim_clone(H)
+ ADD_TRAIT(H, TRAIT_MUTATION_STASIS, CLONING_POD_TRAIT)
ADD_TRAIT(H, TRAIT_STABLEHEART, CLONING_POD_TRAIT)
ADD_TRAIT(H, TRAIT_STABLELIVER, CLONING_POD_TRAIT)
ADD_TRAIT(H, TRAIT_EMOTEMUTE, CLONING_POD_TRAIT)
@@ -369,6 +370,7 @@
return
REMOVE_TRAIT(mob_occupant, TRAIT_STABLEHEART, CLONING_POD_TRAIT)
+ REMOVE_TRAIT(mob_occupant, TRAIT_MUTATION_STASIS, CLONING_POD_TRAIT)
REMOVE_TRAIT(mob_occupant, TRAIT_STABLELIVER, CLONING_POD_TRAIT)
REMOVE_TRAIT(mob_occupant, TRAIT_EMOTEMUTE, CLONING_POD_TRAIT)
REMOVE_TRAIT(mob_occupant, TRAIT_MUTE, CLONING_POD_TRAIT)
diff --git a/code/game/machinery/computer/_computer.dm b/code/game/machinery/computer/_computer.dm
index 675fbcf288..6a1514a85e 100644
--- a/code/game/machinery/computer/_computer.dm
+++ b/code/game/machinery/computer/_computer.dm
@@ -62,7 +62,7 @@
if(stat & BROKEN)
overlay_state = "[icon_state]_broken"
SSvis_overlays.add_vis_overlay(src, icon, overlay_state, layer, plane, dir)
- SSvis_overlays.add_vis_overlay(src, icon, overlay_state, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir, alpha=128)
+ SSvis_overlays.add_vis_overlay(src, icon, overlay_state, EMISSIVE_LAYER, EMISSIVE_PLANE, dir, alpha=128)
/obj/machinery/computer/power_change()
..()
diff --git a/code/game/machinery/computer/atmos_alert.dm b/code/game/machinery/computer/atmos_alert.dm
index 679f112bff..6df7120dcc 100644
--- a/code/game/machinery/computer/atmos_alert.dm
+++ b/code/game/machinery/computer/atmos_alert.dm
@@ -94,4 +94,4 @@
overlay_state = "alert:0"
. |= overlay_state
SSvis_overlays.add_vis_overlay(src, icon, overlay_state, layer, plane, dir)
- SSvis_overlays.add_vis_overlay(src, icon, overlay_state, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir, alpha=128)
+ SSvis_overlays.add_vis_overlay(src, icon, overlay_state, EMISSIVE_LAYER, EMISSIVE_PLANE, dir, alpha=128)
diff --git a/code/game/machinery/computer/station_alert.dm b/code/game/machinery/computer/station_alert.dm
index f3e27d650e..fcb18b4dff 100644
--- a/code/game/machinery/computer/station_alert.dm
+++ b/code/game/machinery/computer/station_alert.dm
@@ -94,4 +94,4 @@
overlay_state = "alert:0"
. |= overlay_state
SSvis_overlays.add_vis_overlay(src, icon, overlay_state, layer, plane, dir)
- SSvis_overlays.add_vis_overlay(src, icon, overlay_state, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir, alpha=128)
\ No newline at end of file
+ SSvis_overlays.add_vis_overlay(src, icon, overlay_state, EMISSIVE_LAYER, EMISSIVE_PLANE, dir, alpha=128)
diff --git a/code/game/machinery/doors/shutters.dm b/code/game/machinery/doors/shutters.dm
index 9df7bffafd..87e8c8f6a7 100644
--- a/code/game/machinery/doors/shutters.dm
+++ b/code/game/machinery/doors/shutters.dm
@@ -61,6 +61,7 @@
icon = 'icons/obj/doors/shutters_window.dmi'
icon_state = "closed"
opacity = 0
+ glass = 1
/obj/machinery/door/poddoor/shutters/window/preopen
icon_state = "open"
diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm
index befa9545ed..f4f308c490 100644
--- a/code/game/machinery/firealarm.dm
+++ b/code/game/machinery/firealarm.dm
@@ -77,23 +77,23 @@
if(is_station_level(z))
. += "fire_[GLOB.security_level]"
- SSvis_overlays.add_vis_overlay(src, icon, "fire_[GLOB.security_level]", ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "fire_[GLOB.security_level]", EMISSIVE_LAYER, EMISSIVE_PLANE, dir)
else
. += "fire_[SEC_LEVEL_GREEN]"
- SSvis_overlays.add_vis_overlay(src, icon, "fire_[SEC_LEVEL_GREEN]", ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "fire_[SEC_LEVEL_GREEN]", EMISSIVE_LAYER, EMISSIVE_PLANE, dir)
var/area/A = src.loc
A = A.loc
if(!detecting || !A.fire)
. += "fire_off"
- SSvis_overlays.add_vis_overlay(src, icon, "fire_off", ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "fire_off", EMISSIVE_LAYER, EMISSIVE_PLANE, dir)
else if(obj_flags & EMAGGED)
. += "fire_emagged"
- SSvis_overlays.add_vis_overlay(src, icon, "fire_emagged", ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "fire_emagged", EMISSIVE_LAYER, EMISSIVE_PLANE, dir)
else
. += "fire_on"
- SSvis_overlays.add_vis_overlay(src, icon, "fire_on", ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "fire_on", EMISSIVE_LAYER, EMISSIVE_PLANE, dir)
/obj/machinery/firealarm/emp_act(severity)
. = ..()
diff --git a/code/game/objects/effects/effects.dm b/code/game/objects/effects/effects.dm
index 6057d1b418..8f0ce83c82 100644
--- a/code/game/objects/effects/effects.dm
+++ b/code/game/objects/effects/effects.dm
@@ -7,6 +7,8 @@
move_resist = INFINITY
obj_flags = 0
+ vis_flags = NONE
+
/obj/effect/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, attack_dir)
return
diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index e1d6101aa5..222b82d134 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -7,6 +7,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE)
/obj/item
name = "item"
icon = 'icons/obj/items_and_weapons.dmi'
+ blocks_emissive = EMISSIVE_BLOCK_GENERIC
var/item_state = null
var/lefthand_file = 'icons/mob/inhands/items_lefthand.dmi'
var/righthand_file = 'icons/mob/inhands/items_righthand.dmi'
diff --git a/code/game/objects/items/candle.dm b/code/game/objects/items/candle.dm
index 11ab008c41..a3366e714e 100644
--- a/code/game/objects/items/candle.dm
+++ b/code/game/objects/items/candle.dm
@@ -13,6 +13,7 @@
var/lit = FALSE
var/infinite = FALSE
var/start_lit = FALSE
+ var/heats_space = TRUE
/obj/item/candle/Initialize()
. = ..()
@@ -35,7 +36,7 @@
return ..()
/obj/item/candle/get_temperature()
- return lit * heat
+ return lit * heat * heats_space
/obj/item/candle/proc/light(show_message)
if(!lit)
@@ -67,7 +68,8 @@
new /obj/item/trash/candle(loc)
qdel(src)
update_icon()
- open_flame()
+ if(heats_space)
+ open_flame()
/obj/item/candle/attack_self(mob/user)
if(put_out_candle())
@@ -77,4 +79,7 @@
infinite = TRUE
start_lit = TRUE
+/obj/item/candle/infinite/hugbox
+ heats_space = FALSE
+
#undef CANDLE_LUMINOSITY
diff --git a/code/game/objects/items/holy_weapons.dm b/code/game/objects/items/holy_weapons.dm
index bd9ac276a2..b8f15ec295 100644
--- a/code/game/objects/items/holy_weapons.dm
+++ b/code/game/objects/items/holy_weapons.dm
@@ -494,7 +494,7 @@
S.ckey = C.ckey
S.status_flags |= GODMODE
S.language_holder = user.language_holder.copy(S)
- S.AddElement(/datum/element/ghost_role_eligibility)
+ S.AddElement(/datum/element/ghost_role_eligibility,penalize_on_ghost = TRUE)
START_PROCESSING(SSprocessing,src)
var/input = stripped_input(S,"What are you named?", ,"", MAX_NAME_LEN)
diff --git a/code/game/objects/structures/ghost_role_spawners.dm b/code/game/objects/structures/ghost_role_spawners.dm
index 65145c0eed..c918e7b867 100644
--- a/code/game/objects/structures/ghost_role_spawners.dm
+++ b/code/game/objects/structures/ghost_role_spawners.dm
@@ -674,17 +674,14 @@
O.equip(new_spawn, FALSE, new_spawn.client)
SSjob.equip_loadout(null, new_spawn, FALSE)
SSquirks.AssignQuirks(new_spawn, new_spawn.client, TRUE, TRUE, null, FALSE, new_spawn)
- new_spawn.AddElement(/datum/element/ghost_role_eligibility)
+ new_spawn.AddElement(/datum/element/ghost_role_eligibility, free_ghosting = TRUE)
new_spawn.AddElement(/datum/element/dusts_on_catatonia)
new_spawn.AddElement(/datum/element/dusts_on_leaving_area,list(A.type,/area/hilbertshotel))
ADD_TRAIT(new_spawn, TRAIT_SIXTHSENSE, GHOSTROLE_TRAIT)
ADD_TRAIT(new_spawn, TRAIT_EXEMPT_HEALTH_EVENTS, GHOSTROLE_TRAIT)
- ADD_TRAIT(new_spawn, TRAIT_NO_MIDROUND_ANTAG, GHOSTROLE_TRAIT) //The mob can't be made into a random antag, they are still elegible for ghost roles popups.
+ ADD_TRAIT(new_spawn, TRAIT_NO_MIDROUND_ANTAG, GHOSTROLE_TRAIT) //The mob can't be made into a random antag, they are still eligible for ghost roles popups.
ADD_TRAIT(new_spawn, TRAIT_PACIFISM, GHOSTROLE_TRAIT)
- to_chat(new_spawn,"You may be sharing your cafe with some ninja-captured individuals, so make sure to only interact with the ghosts you hear as a ghost!")
- to_chat(new_spawn,"You can turn yourself into a ghost and freely reenter your body with the ghost action.")
- var/datum/action/ghost/G = new(new_spawn)
- G.Grant(new_spawn)
+ to_chat(new_spawn,"Ghosting is free!")
var/datum/action/toggle_dead_chat_mob/D = new(new_spawn)
D.Grant(new_spawn)
diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm
index 578d6d10ae..f31649eaca 100755
--- a/code/game/turfs/turf.dm
+++ b/code/game/turfs/turf.dm
@@ -47,6 +47,9 @@
// by default, vis_contents is inherited from the turf that was here before
vis_contents.Cut()
+ if(color)
+ add_atom_colour(color, FIXED_COLOUR_PRIORITY)
+
assemble_baseturfs()
levelupdate()
diff --git a/code/modules/antagonists/nukeop/equipment/nuclear_challenge.dm b/code/modules/antagonists/nukeop/equipment/nuclear_challenge.dm
index b5ce5538e9..39dc4a1ed2 100644
--- a/code/modules/antagonists/nukeop/equipment/nuclear_challenge.dm
+++ b/code/modules/antagonists/nukeop/equipment/nuclear_challenge.dm
@@ -74,12 +74,6 @@ GLOBAL_VAR_INIT(war_declared, FALSE)
new uplink_type(get_turf(user), user.key, CHALLENGE_TELECRYSTALS - tc_malus + CEILING(PLAYER_SCALING * actual_players, 1))
CONFIG_SET(number/shuttle_refuel_delay, max(CONFIG_GET(number/shuttle_refuel_delay), CHALLENGE_SHUTTLE_DELAY))
- if(istype(SSticker.mode, /datum/game_mode/dynamic))
- var/datum/game_mode/dynamic/mode = SSticker.mode
- if(!(mode.storyteller.flags & WAROPS_ALWAYS_ALLOWED))
- var/threat_spent = CONFIG_GET(number/dynamic_warops_cost)
- mode.spend_threat(threat_spent)
- mode.log_threat("Nuke ops spent [threat_spent] on war ops.")
SSblackbox.record_feedback("amount", "nuclear_challenge_mode", 1)
qdel(src)
diff --git a/code/modules/antagonists/traitor/classes/human.dm b/code/modules/antagonists/traitor/classes/human.dm
index 4e096390c0..30aa11e39d 100644
--- a/code/modules/antagonists/traitor/classes/human.dm
+++ b/code/modules/antagonists/traitor/classes/human.dm
@@ -34,7 +34,7 @@
if(is_dynamic)
var/threat_spent = CONFIG_GET(number/dynamic_assassinate_cost)
mode.spend_threat(threat_spent)
- mode.log_threat("[T.owner.name] spent [threat_spent] on an assassination target.")
+ mode.log_threat("[T.owner.name] added [threat_spent] on an assassination target.")
var/list/active_ais = active_ais()
if(active_ais.len && prob(100/GLOB.joined_player_list.len))
var/datum/objective/destroy/destroy_objective = new
diff --git a/code/modules/antagonists/traitor/datum_traitor.dm b/code/modules/antagonists/traitor/datum_traitor.dm
index 4aed79a6dc..338d135b4c 100644
--- a/code/modules/antagonists/traitor/datum_traitor.dm
+++ b/code/modules/antagonists/traitor/datum_traitor.dm
@@ -96,6 +96,13 @@
equip(silent)
owner.current.playsound_local(get_turf(owner.current), 'sound/ambience/antag/tatoralert.ogg', 100, FALSE, pressure_affected = FALSE)
+/datum/antagonist/traitor/antag_panel_objectives()
+ . = ..()
+ if(contractor_hub?.assigned_targets && length(contractor_hub.assigned_targets))
+ . += "Contract Targets:
"
+ for(var/datum/mind/M in contractor_hub.assigned_targets)
+ . += " - [key_name(M, FALSE, TRUE)]
"
+
/datum/antagonist/traitor/apply_innate_effects(mob/living/mob_override)
. = ..()
update_traitor_icons_added()
diff --git a/code/modules/antagonists/traitor/syndicate_contract.dm b/code/modules/antagonists/traitor/syndicate_contract.dm
index 20d07556c1..d62792042f 100644
--- a/code/modules/antagonists/traitor/syndicate_contract.dm
+++ b/code/modules/antagonists/traitor/syndicate_contract.dm
@@ -87,7 +87,7 @@
As is policy we've taken a portion of the station's funds to offset the overall cost.", null, "attention", null, "Nanotrasen Asset Protection")
/datum/syndicate_contract/proc/handleVictimExperience(var/mob/living/M) // They're off to holding - handle the return timer and give some text about what's going on.
- addtimer(CALLBACK(src, .proc/returnVictim, M), (60 * 10) * 4) // Ship 'em back - dead or alive... 4 minutes wait.
+ addtimer(CALLBACK(src, .proc/returnVictim, M), 4 MINUTES) // Ship 'em back - dead or alive... 4 minutes wait.
if(M.stat != DEAD) //Even if they weren't the target, we're still treating them the same.
M.reagents.add_reagent(/datum/reagent/medicine/omnizine, 20) // Heal them up - gets them out of crit/soft crit.
M.flash_act()
@@ -147,4 +147,4 @@
if(iscarbon(M))
var/mob/living/carbon/C = M
if(C.can_heartattack())
- C.set_heartattack(TRUE)
\ No newline at end of file
+ C.set_heartattack(TRUE)
diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm
index 07ddd4c042..a4617462fe 100644
--- a/code/modules/atmospherics/machinery/airalarm.dm
+++ b/code/modules/atmospherics/machinery/airalarm.dm
@@ -667,7 +667,8 @@
else
set_light(0)
- SSvis_overlays.add_vis_overlay(src, icon, overlay_state, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, overlay_state, layer, plane, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, overlay_state, EMISSIVE_LAYER, EMISSIVE_PLANE, dir)
update_light()
/obj/machinery/airalarm/process()
diff --git a/code/modules/cargo/packs/armory.dm b/code/modules/cargo/packs/armory.dm
index 664030da33..d832200201 100644
--- a/code/modules/cargo/packs/armory.dm
+++ b/code/modules/cargo/packs/armory.dm
@@ -164,17 +164,6 @@
/obj/item/shield/riot)
crate_name = "riot shields crate"
-/datum/supply_pack/security/armory/riotshotguns
- name = "Riot Shotgun Crate"
- desc = "For when the greytide gets really uppity. Contains three riot shotguns, seven rubber shot and beanbag shells. Requires Armory access to open."
- cost = 6500
- contains = list(/obj/item/gun/ballistic/shotgun/riot,
- /obj/item/gun/ballistic/shotgun/riot,
- /obj/item/gun/ballistic/shotgun/riot,
- /obj/item/storage/box/rubbershot,
- /obj/item/storage/box/beanbag)
- crate_name = "riot shotgun crate"
-
/datum/supply_pack/security/armory/russian
name = "Russian Surplus Crate"
desc = "Hello Comrade, we have the most modern russian military equipment the black market can offer, for the right price of course. Sadly we couldnt remove the lock so it requires Armory access to open."
@@ -216,23 +205,6 @@
/obj/item/clothing/gloves/combat)
crate_name = "swat crate"
-/datum/supply_pack/security/armory/swattasers //Lesser AEG tbh
- name = "SWAT tactical tasers Crate"
- desc = "Contains two tactical energy gun, these guns are able to tase, disable and lethal as well as hold a seclight. Requires Armory access to open."
- cost = 7000
- contains = list(/obj/item/gun/energy/e_gun/stun,
- /obj/item/gun/energy/e_gun/stun)
- crate_name = "swat taser crate"
-
-/datum/supply_pack/security/armory/woodstock
- name = "WoodStock Classic Shotguns Crate"
- desc = "Contains three rustic, pumpaction shotguns. Requires Armory access to open."
- cost = 3000
- contains = list(/obj/item/gun/ballistic/shotgun,
- /obj/item/gun/ballistic/shotgun,
- /obj/item/gun/ballistic/shotgun)
- crate_name = "woodstock shotguns crate"
-
/datum/supply_pack/security/armory/wt550
name = "WT-550 Semi-Auto Rifle Crate"
desc = "Contains two high-powered, semiautomatic rifles chambered in 4.6x30mm. Requires Armory access to open."
@@ -260,13 +232,3 @@
/obj/item/ammo_box/magazine/wt550m9/wtrubber,
/obj/item/ammo_box/magazine/wt550m9/wtrubber)
crate_name = "auto rifle ammo crate"
-
-/datum/supply_pack/security/armory/wt550ammo_special
- name = "WT-550 Semi-Auto SMG Special Ammo Crate"
- desc = "Contains 2 20-round Armour Piercing and Incendiary magazines for the WT-550 Semi-Auto SMG. Each magazine is designed to facilitate rapid tactical reloads. Requires Armory access to open."
- cost = 3000
- contains = list(/obj/item/ammo_box/magazine/wt550m9/wtap,
- /obj/item/ammo_box/magazine/wt550m9/wtap,
- /obj/item/ammo_box/magazine/wt550m9/wtic,
- /obj/item/ammo_box/magazine/wt550m9/wtic)
- crate_name = "auto rifle ammo crate"
diff --git a/code/modules/cargo/packs/emergency.dm b/code/modules/cargo/packs/emergency.dm
index be81da3b92..ef15ab041d 100644
--- a/code/modules/cargo/packs/emergency.dm
+++ b/code/modules/cargo/packs/emergency.dm
@@ -206,30 +206,6 @@
/obj/item/storage/box/mre/menu4/safe)
crate_name = "MRE crate (emergency rations)"
-/datum/supply_pack/emergency/syndicate
- name = "NULL_ENTRY"
- desc = "(#@&^$THIS PACKAGE CONTAINS 30TC WORTH OF SOME RANDOM SYNDICATE GEAR WE HAD LYING AROUND THE WAREHOUSE. GIVE EM HELL, OPERATIVE@&!*() "
- hidden = TRUE
- cost = 20000
- contains = list()
- crate_name = "emergency crate"
- crate_type = /obj/structure/closet/crate/internals
- dangerous = TRUE
-
-/datum/supply_pack/emergency/syndicate/fill(obj/structure/closet/crate/C)
- var/crate_value = 30
- var/list/uplink_items = get_uplink_items(SSticker.mode)
- while(crate_value)
- var/category = pick(uplink_items)
- var/item = pick(uplink_items[category])
- var/datum/uplink_item/I = uplink_items[category][item]
- if(!I.surplus_nullcrates || prob(100 - I.surplus_nullcrates))
- continue
- if(crate_value < I.cost)
- continue
- crate_value -= I.cost
- new I.item(C)
-
/datum/supply_pack/emergency/plasma_spacesuit
name = "Plasmaman Space Envirosuits"
desc = "Contains two space-worthy envirosuits for Plasmamen. Order now and we'll throw in two free helmets! Requires EVA access to open."
diff --git a/code/modules/cargo/packs/science.dm b/code/modules/cargo/packs/science.dm
index e6671a02ea..a3548a5eb6 100644
--- a/code/modules/cargo/packs/science.dm
+++ b/code/modules/cargo/packs/science.dm
@@ -108,17 +108,6 @@
/obj/item/clothing/gloves/color/latex/nitrile)
crate_name = "nitrile gloves crate"
-/datum/supply_pack/science/nuke_b_gone
- name = "Nuke Defusal Kit"
- desc = "Contains set of tools to defuse a nuke."
- cost = 7500 //Useful for traitors/nukies that fucked up
- dangerous = TRUE
- hidden = TRUE
- contains = list(/obj/item/nuke_core_container/nt,
- /obj/item/screwdriver/nuke/nt,
- /obj/item/paper/guides/nt/nuke_instructions)
- crate_name = "safe defusal kit storage"
-
/datum/supply_pack/science/plasma
name = "Plasma Assembly Crate"
desc = "Everything you need to burn something to the ground, this contains three plasma assembly sets. Each set contains a plasma tank, igniter, proximity sensor, and timer! Warranty void if exposed to high temperatures. Requires Toxins access to open."
@@ -191,17 +180,6 @@
crate_name = "slime core crate"
crate_type = /obj/structure/closet/crate/secure/science
-/datum/supply_pack/science/supermater
- name = "Supermatter Extraction Tools Crate"
- desc = "Contains a set of tools to extract a sliver of supermatter. Consult your CE today!"
- cost = 7500 //Useful for traitors that fucked up
- hidden = TRUE
- contains = list(/obj/item/nuke_core_container/supermatter,
- /obj/item/scalpel/supermatter,
- /obj/item/hemostat/supermatter,
- /obj/item/paper/guides/antag/supermatter_sliver)
- crate_name = "supermatter extraction kit crate"
-
/datum/supply_pack/science/tablets
name = "Tablet Crate"
desc = "What's a computer? Contains five cargo tablets."
@@ -224,10 +202,3 @@
crate_type = /obj/structure/closet/crate/secure/science
dangerous = TRUE
-/datum/supply_pack/science/tech_slugs
- name = "Tech Slug Ammo Shells"
- desc = "A new type of shell that is able to be made into a few different dangerous types. Contains two boxes of tech slugs, 14 shells in all."
- cost = 1700
- contains = list(/obj/item/storage/box/techsslug,
- /obj/item/storage/box/techsslug)
- crate_name = "tech slug crate"
diff --git a/code/modules/events/sentience.dm b/code/modules/events/sentience.dm
index 1a303ec4bc..8fe68f509b 100644
--- a/code/modules/events/sentience.dm
+++ b/code/modules/events/sentience.dm
@@ -59,7 +59,7 @@
SA.del_on_death = FALSE
spawned_mobs += SA
- SA.AddElement(/datum/element/ghost_role_eligibility)
+ SA.AddElement(/datum/element/ghost_role_eligibility, penalize_on_ghost = TRUE)
to_chat(SA, "Hello world!")
to_chat(SA, "Due to freak radiation and/or chemicals \
and/or lucky chance, you have gained human level intelligence \
diff --git a/code/modules/lighting/emissive_blocker.dm b/code/modules/lighting/emissive_blocker.dm
new file mode 100644
index 0000000000..b69a474009
--- /dev/null
+++ b/code/modules/lighting/emissive_blocker.dm
@@ -0,0 +1,44 @@
+/**
+ * Internal atom that copies an appearance on to the blocker plane
+ *
+ * Copies an appearance vis render_target and render_source on to the emissive blocking plane.
+ * This means that the atom in question will block any emissive sprites.
+ * This should only be used internally. If you are directly creating more of these, you're
+ * almost guaranteed to be doing something wrong.
+ */
+/atom/movable/emissive_blocker
+ name = ""
+ plane = EMISSIVE_BLOCKER_PLANE
+ layer = EMISSIVE_BLOCKER_LAYER
+ mouse_opacity = MOUSE_OPACITY_TRANSPARENT
+ //Why?
+ //render_targets copy the transform of the target as well, but vis_contents also applies the transform
+ //to what's in it. Applying RESET_TRANSFORM here makes vis_contents not apply the transform.
+ //Since only render_target handles transform we don't get any applied transform "stacking"
+ appearance_flags = RESET_TRANSFORM
+
+/atom/movable/emissive_blocker/Initialize(mapload, source)
+ . = ..()
+ verbs.Cut() //Cargo culting from lighting object, this maybe affects memory usage?
+
+ render_source = source
+
+/atom/movable/emissive_blocker/ex_act(severity)
+ return FALSE
+
+/atom/movable/emissive_blocker/singularity_act()
+ return
+
+/atom/movable/emissive_blocker/singularity_pull()
+ return
+
+/atom/movable/emissive_blocker/blob_act()
+ return
+
+/atom/movable/emissive_blocker/onTransitZ()
+ return
+
+//Prevents people from moving these after creation, because they shouldn't be.
+/atom/movable/emissive_blocker/forceMove(atom/destination, no_tp=FALSE, harderforce = FALSE)
+ if(harderforce)
+ return ..()
diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm
index 78e38c5b89..3023b93856 100644
--- a/code/modules/mob/dead/observer/observer.dm
+++ b/code/modules/mob/dead/observer/observer.dm
@@ -263,14 +263,15 @@ Works together with spawning an observer, noted above.
*/
/mob/proc/ghostize(can_reenter_corpse = TRUE, special = FALSE, penalize = FALSE, voluntary = FALSE)
- penalize = suiciding || penalize // suicide squad.
+ var/sig_flags = SEND_SIGNAL(src, COMSIG_MOB_GHOSTIZE, can_reenter_corpse, special, penalize)
+ penalize = !(sig_flags & COMPONENT_DO_NOT_PENALIZE_GHOSTING) && (suiciding || penalize) // suicide squad.
voluntary_ghosted = voluntary
- if(!key || key[1] == "@" || (SEND_SIGNAL(src, COMSIG_MOB_GHOSTIZE, can_reenter_corpse, special, penalize) & COMPONENT_BLOCK_GHOSTING))
+ if(!key || key[1] == "@" || (sig_flags & COMPONENT_BLOCK_GHOSTING))
return //mob has no key, is an aghost or some component hijacked.
stop_sound_channel(CHANNEL_HEARTBEAT) //Stop heartbeat sounds because You Are A Ghost Now
var/mob/dead/observer/ghost = new(get_turf(src), src) // Transfer safety to observer spawning proc.
SStgui.on_transfer(src, ghost) // Transfer NanoUIs.
- ghost.can_reenter_corpse = can_reenter_corpse
+ ghost.can_reenter_corpse = can_reenter_corpse || (sig_flags & COMPONENT_FREE_GHOSTING)
if (client && client.prefs && client.prefs.auto_ooc)
if (!(client.prefs.chat_toggles & CHAT_OOC))
client.prefs.chat_toggles ^= CHAT_OOC
@@ -297,12 +298,17 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
if(penalty - SSshuttle.realtimeofstart > maximumRoundEnd + SSshuttle.emergencyCallTime + SSshuttle.emergencyDockTime + SSshuttle.emergencyEscapeTime)
penalty = CANT_REENTER_ROUND
- if(SEND_SIGNAL(src, COMSIG_MOB_GHOSTIZE, (stat == DEAD) ? TRUE : FALSE, FALSE, (stat == DEAD)? penalty : 0, (stat == DEAD)? TRUE : FALSE) & COMPONENT_BLOCK_GHOSTING)
+ var/sig_flags = SEND_SIGNAL(src, COMSIG_MOB_GHOSTIZE, (stat == DEAD) ? TRUE : FALSE, FALSE, (stat == DEAD)? penalty : 0, (stat == DEAD)? TRUE : FALSE)
+
+ if(sig_flags & COMPONENT_BLOCK_GHOSTING)
return
+ if(sig_flags & COMPONENT_DO_NOT_PENALIZE_GHOSTING)
+ penalty = 0
+
if(stat != DEAD)
succumb()
- if(stat == DEAD)
+ if(stat == DEAD || sig_flags & COMPONENT_FREE_GHOSTING)
ghostize(1)
else
var/response = alert(src, "Are you -sure- you want to ghost?\n(You are alive. If you ghost whilst alive you won't be able to re-enter this round [penalty ? "or play ghost roles [penalty == CANT_REENTER_ROUND ? "until the round is over" : "for the next [DisplayTimeText(penalty)]"]" : ""]! You can't change your mind so choose wisely!!)","Are you sure you want to ghost?","Ghost","Stay in body")
@@ -321,7 +327,9 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
set name = "Ghost"
set desc = "Relinquish your life and enter the land of the dead."
- if(SEND_SIGNAL(src, COMSIG_MOB_GHOSTIZE, FALSE, FALSE) & COMPONENT_BLOCK_GHOSTING)
+ var/sig_flags = SEND_SIGNAL(src, COMSIG_MOB_GHOSTIZE, FALSE, FALSE)
+
+ if(sig_flags & COMPONENT_BLOCK_GHOSTING)
return
var/penalty = CONFIG_GET(number/suicide_reenter_round_timer) MINUTES
@@ -333,10 +341,16 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
if(penalty - SSshuttle.realtimeofstart > maximumRoundEnd + SSshuttle.emergencyCallTime + SSshuttle.emergencyDockTime + SSshuttle.emergencyEscapeTime)
penalty = CANT_REENTER_ROUND
- var/response = alert(src, "Are you -sure- you want to ghost?\n(You are alive. If you ghost whilst alive you won't be able to re-enter this round [penalty ? "or play ghost roles [penalty == CANT_REENTER_ROUND ? "until the round is over" : "for the next [DisplayTimeText(penalty)]"]" : ""]! You can't change your mind so choose wisely!!)","Are you sure you want to ghost?","Ghost","Stay in body")
- if(response != "Ghost")
- return
- ghostize(0, penalize = TRUE)
+ if(sig_flags & COMPONENT_DO_NOT_PENALIZE_GHOSTING)
+ penalty = 0
+
+ if(sig_flags & COMPONENT_FREE_GHOSTING)
+ ghostize(1)
+ else
+ var/response = alert(src, "Are you -sure- you want to ghost?\n(You are alive. If you ghost whilst alive you won't be able to re-enter this round [penalty ? "or play ghost roles [penalty == CANT_REENTER_ROUND ? "until the round is over" : "for the next [DisplayTimeText(penalty)]"]" : ""]! You can't change your mind so choose wisely!!)","Are you sure you want to ghost?","Ghost","Stay in body")
+ if(response != "Ghost")
+ return
+ ghostize(0, penalize = TRUE)
@@ -670,7 +684,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
return 0
transfer_ckey(target, FALSE)
- target.AddElement(/datum/element/ghost_role_eligibility)
+ target.AddElement(/datum/element/ghost_role_eligibility, penalize_on_ghost = FALSE, free_ghosting = TRUE)
target.faction = list("neutral")
return 1
diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm
index d20c556c6c..68c312b19c 100644
--- a/code/modules/mob/living/carbon/human/human_defines.dm
+++ b/code/modules/mob/living/carbon/human/human_defines.dm
@@ -10,6 +10,8 @@
combat_flags = COMBAT_FLAGS_DEFAULT
status_flags = CANSTUN|CANKNOCKDOWN|CANUNCONSCIOUS|CANPUSH|CANSTAGGER
+ blocks_emissive = EMISSIVE_BLOCK_UNIQUE
+
//Hair colour and style
var/hair_color = "000"
var/hair_style = "Bald"
diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm
index 9316a36e6b..eb22934a2b 100644
--- a/code/modules/mob/living/carbon/human/life.dm
+++ b/code/modules/mob/living/carbon/human/life.dm
@@ -323,6 +323,8 @@
SEND_SIGNAL(src, COMSIG_CLEAR_MOOD_EVENT, "embedded")
/mob/living/carbon/human/proc/handle_active_genes()
+ if(HAS_TRAIT(src, TRAIT_MUTATION_STASIS))
+ return
for(var/datum/mutation/human/HM in dna.mutations)
HM.on_life(src)
diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm
index 86b9826c12..d3e5941e4e 100644
--- a/code/modules/mob/living/carbon/monkey/monkey.dm
+++ b/code/modules/mob/living/carbon/monkey/monkey.dm
@@ -12,6 +12,7 @@
type_of_meat = /obj/item/reagent_containers/food/snacks/meat/slab/monkey
gib_type = /obj/effect/decal/cleanable/blood/gibs
unique_name = TRUE
+ blocks_emissive = EMISSIVE_BLOCK_UNIQUE
bodyparts = list(/obj/item/bodypart/chest/monkey, /obj/item/bodypart/head/monkey, /obj/item/bodypart/l_arm/monkey,
/obj/item/bodypart/r_arm/monkey, /obj/item/bodypart/r_leg/monkey, /obj/item/bodypart/l_leg/monkey)
hud_type = /datum/hud/monkey
diff --git a/code/modules/mob/living/living_mobility.dm b/code/modules/mob/living/living_mobility.dm
index 938a2355b4..49d4a20887 100644
--- a/code/modules/mob/living/living_mobility.dm
+++ b/code/modules/mob/living/living_mobility.dm
@@ -161,7 +161,7 @@
if(!has_legs && has_arms < 2)
limbless_slowdown += 6 - (has_arms * 3)
if(limbless_slowdown)
- add_movespeed_modifier(MOVESPEED_ID_LIVING_LIMBLESS, update=TRUE, priority=100, override=TRUE, multiplicative_slowdown=limbless_slowdown, movetypes=GROUND)
+ add_movespeed_modifier(MOVESPEED_ID_LIVING_LIMBLESS, update=TRUE, priority=100, override=TRUE, multiplicative_slowdown=limbless_slowdown, blacklisted_movetypes = FLYING|FLOATING)
else
remove_movespeed_modifier(MOVESPEED_ID_LIVING_LIMBLESS, update=TRUE)
diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm
index fd3bcf6598..4ef5993d2d 100644
--- a/code/modules/mob/living/silicon/robot/robot.dm
+++ b/code/modules/mob/living/silicon/robot/robot.dm
@@ -10,6 +10,8 @@
has_limbs = 1
hud_type = /datum/hud/robot
+ blocks_emissive = EMISSIVE_BLOCK_UNIQUE
+
var/custom_name = ""
var/braintype = "Cyborg"
var/obj/item/robot_suit/robot_suit = null //Used for deconstruction to remember what the borg was constructed out of..
diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm
index fc202b29ad..bf9dad1bc7 100644
--- a/code/modules/mob/mob_defines.dm
+++ b/code/modules/mob/mob_defines.dm
@@ -8,6 +8,8 @@
pressure_resistance = 8
mouse_drag_pointer = MOUSE_ACTIVE_POINTER
throwforce = 10
+ blocks_emissive = EMISSIVE_BLOCK_GENERIC
+
var/lighting_alpha = LIGHTING_PLANE_ALPHA_VISIBLE
var/datum/mind/mind
var/list/datum/action/actions = list()
diff --git a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm
index b360a70775..c723f2cd7b 100644
--- a/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm
+++ b/code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm
@@ -57,12 +57,12 @@ It is possible to destroy the net by the occupant or someone else.
continue//So all they're left with are shoes and uniform.
H.dropItemToGround(W)
H.dna.species.give_important_for_life(H) // After we remove items, at least give them what they need to live.
+/*
var/datum/antagonist/antag_datum
for(var/datum/antagonist/ninja/AD in GLOB.antagonists) //Because only ninjas get capture objectives; They're not doable without the suit.
if(AD.owner == master)
antag_datum = AD
break
-
for(var/datum/objective/capture/capture in antag_datum)
if(istype(affecting, /mob/living/carbon/human)) //Humans.
if(affecting.stat == DEAD)//Dead folks are worth less.
@@ -87,7 +87,7 @@ It is possible to destroy the net by the occupant or someone else.
capture.captured_amount+=1
continue
capture.captured_amount+=2
-
+*/
affecting.revive(1, 1) //Basically a revive and full heal, including limbs/organs
//In case people who have been captured dead want to hang out at the holding area
diff --git a/code/modules/ninja/suit/suit.dm b/code/modules/ninja/suit/suit.dm
index 01e6abaa6a..b46f30b4fb 100644
--- a/code/modules/ninja/suit/suit.dm
+++ b/code/modules/ninja/suit/suit.dm
@@ -22,7 +22,7 @@ Contents:
armor = list("melee" = 60, "bullet" = 50, "laser" = 30,"energy" = 15, "bomb" = 30, "bio" = 30, "rad" = 30, "fire" = 100, "acid" = 100)
strip_delay = 12
- actions_types = list(/datum/action/item_action/initialize_ninja_suit, /datum/action/item_action/ninjasmoke, /datum/action/item_action/ninjaboost, /datum/action/item_action/ninjapulse, /datum/action/item_action/ninjastar, /datum/action/item_action/ninjanet, /datum/action/item_action/ninja_sword_recall, /datum/action/item_action/ninja_stealth, /datum/action/item_action/toggle_glove)
+ actions_types = list(/datum/action/item_action/initialize_ninja_suit, /datum/action/item_action/ninjasmoke, /datum/action/item_action/ninjaboost, /datum/action/item_action/ninjapulse, /datum/action/item_action/ninjastar, /datum/action/item_action/ninja_sword_recall, /datum/action/item_action/ninja_stealth, /datum/action/item_action/toggle_glove)
//Important parts of the suit.
var/mob/living/carbon/human/affecting = null
@@ -175,9 +175,6 @@ Contents:
if(istype(action, /datum/action/item_action/ninjastar))
ninjastar()
return TRUE
- if(istype(action, /datum/action/item_action/ninjanet))
- ninjanet()
- return TRUE
if(istype(action, /datum/action/item_action/ninja_sword_recall))
ninja_sword_recall()
return TRUE
diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm
index a53af534e1..9c96216ce8 100644
--- a/code/modules/power/apc.dm
+++ b/code/modules/power/apc.dm
@@ -308,12 +308,17 @@
if(update & 2)
SSvis_overlays.remove_vis_overlay(src, managed_vis_overlays)
if(!(stat & (BROKEN|MAINT)) && update_state & UPSTATE_ALLGOOD)
- SSvis_overlays.add_vis_overlay(src, icon, "apcox-[locked]", ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir)
- SSvis_overlays.add_vis_overlay(src, icon, "apco3-[hijackerreturn ? "3" : charging]", ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "apcox-[locked]", layer, plane, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "apcox-[locked]", EMISSIVE_LAYER, EMISSIVE_PLANE, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "apco3-[hijackerreturn ? "3" : charging]", layer, plane, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "apco3-[hijackerreturn ? "3" : charging]", EMISSIVE_LAYER, EMISSIVE_PLANE, dir)
if(operating)
- SSvis_overlays.add_vis_overlay(src, icon, "apco0-[equipment]", ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir)
- SSvis_overlays.add_vis_overlay(src, icon, "apco1-[lighting]", ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir)
- SSvis_overlays.add_vis_overlay(src, icon, "apco2-[environ]", ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "apco0-[equipment]", layer, plane, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "apco0-[equipment]", EMISSIVE_LAYER, EMISSIVE_PLANE, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "apco1-[lighting]", layer, plane, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "apco1-[lighting]", EMISSIVE_LAYER, EMISSIVE_PLANE, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "apco2-[environ]", layer, plane, dir)
+ SSvis_overlays.add_vis_overlay(src, icon, "apco2-[environ]", EMISSIVE_LAYER, EMISSIVE_PLANE, dir)
// And now, separately for cleanness, the lighting changing
if(update_state & UPSTATE_ALLGOOD)
diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm
index 8d041efb76..835055ea48 100644
--- a/code/modules/power/lighting.dm
+++ b/code/modules/power/lighting.dm
@@ -312,7 +312,7 @@
/obj/machinery/light/update_overlays()
. = ..()
if(on && status == LIGHT_OK)
- var/mutable_appearance/glowybit = mutable_appearance(overlayicon, base_state, ABOVE_LIGHTING_LAYER, ABOVE_LIGHTING_PLANE)
+ var/mutable_appearance/glowybit = mutable_appearance(overlayicon, base_state, EMISSIVE_LAYER, EMISSIVE_PLANE)
glowybit.alpha = CLAMP(light_power*250, 30, 200)
. += glowybit
diff --git a/code/modules/projectiles/ammunition/ballistic/shotgun.dm b/code/modules/projectiles/ammunition/ballistic/shotgun.dm
index 0599e52a73..fc8fd65a06 100644
--- a/code/modules/projectiles/ammunition/ballistic/shotgun.dm
+++ b/code/modules/projectiles/ammunition/ballistic/shotgun.dm
@@ -95,7 +95,7 @@
name = "scatter laser shell"
desc = "An advanced shotgun shell that uses a micro laser to replicate the effects of a scatter laser weapon in a ballistic package."
icon_state = "lshell"
- projectile_type = /obj/item/projectile/beam/weak
+ projectile_type = /obj/item/projectile/beam/scatter
pellets = 6
variance = 35
@@ -130,12 +130,16 @@
ENABLE_BITFIELD(reagents.reagents_holder_flags, NO_REACT)
/obj/item/ammo_casing/shotgun/dart/bioterror
- desc = "A shotgun dart filled with deadly toxins."
+ desc = "A shotgun dart filled with an obscene amount of lethal reagents. God help whoever is shot with this."
+ projectile_type = /obj/item/projectile/bullet/dart/piercing
+ reagent_amount = 50
/obj/item/ammo_casing/shotgun/dart/bioterror/Initialize()
. = ..()
- reagents.add_reagent(/datum/reagent/toxin/fentanyl, 6)
- reagents.add_reagent(/datum/reagent/toxin/spore, 6)
- reagents.add_reagent(/datum/reagent/toxin/mutetoxin, 6) //;HELP OPS IN MAINT
- reagents.add_reagent(/datum/reagent/toxin/coniine, 6)
- reagents.add_reagent(/datum/reagent/toxin/sodium_thiopental, 6)
+ reagents.add_reagent(/datum/reagent/toxin/amanitin, 12) //for a nasty surprise after you get shot and somehow escape and don't think to quickly purge, and even shock those who are loaded up on purging agents
+ reagents.add_reagent(/datum/reagent/toxin/chloralhydrate, 6)
+ reagents.add_reagent(/datum/reagent/toxin/mutetoxin, 6) //;HELPIES OPS IN MAINT
+ reagents.add_reagent(/datum/reagent/impedrezene, 6)
+ reagents.add_reagent(/datum/reagent/toxin/acid/fluacid, 5) //this and the acid equal about 25ish burn, not counting the minute toxin damage dealt by their metabolism, this makes each dart about as lethal as a stechkin shot in upfront damage
+ reagents.add_reagent(/datum/reagent/toxin/acid, 5)
+ reagents.add_reagent(/datum/reagent/consumable/frostoil, 10) //tempgun slowdown goes both ways and adds to the burn
diff --git a/code/modules/projectiles/guns/ballistic/revolver.dm b/code/modules/projectiles/guns/ballistic/revolver.dm
index 7d2910fad3..b43ac3057a 100644
--- a/code/modules/projectiles/guns/ballistic/revolver.dm
+++ b/code/modules/projectiles/guns/ballistic/revolver.dm
@@ -273,7 +273,7 @@
icon_state = "dshotgun"
item_state = "shotgun"
w_class = WEIGHT_CLASS_BULKY
- weapon_weight = WEAPON_HEAVY
+ weapon_weight = WEAPON_MEDIUM
force = 10
flags_1 = CONDUCT_1
slot_flags = ITEM_SLOT_BACK
diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm
index 389bf84904..ee081d57d6 100644
--- a/code/modules/projectiles/projectile/beams.dm
+++ b/code/modules/projectiles/projectile/beams.dm
@@ -50,7 +50,7 @@
/obj/item/projectile/beam/scatter
name = "laser pellet"
icon_state = "scatterlaser"
- damage = 5
+ damage = 12.5
/obj/item/projectile/beam/xray
name = "\improper X-ray beam"
diff --git a/code/modules/projectiles/projectile/bullets/dart_syringe.dm b/code/modules/projectiles/projectile/bullets/dart_syringe.dm
index b5a9eb8d69..06d94414be 100644
--- a/code/modules/projectiles/projectile/bullets/dart_syringe.dm
+++ b/code/modules/projectiles/projectile/bullets/dart_syringe.dm
@@ -29,6 +29,9 @@
reagents.handle_reactions()
return BULLET_ACT_HIT
+/obj/item/projectile/bullet/dart/piercing
+ piercing = TRUE
+
/obj/item/projectile/bullet/dart/metalfoam/Initialize()
. = ..()
reagents.add_reagent(/datum/reagent/aluminium, 15)
diff --git a/code/modules/projectiles/projectile/bullets/shotgun.dm b/code/modules/projectiles/projectile/bullets/shotgun.dm
index c28d85511e..4411334883 100644
--- a/code/modules/projectiles/projectile/bullets/shotgun.dm
+++ b/code/modules/projectiles/projectile/bullets/shotgun.dm
@@ -18,13 +18,28 @@
/obj/item/projectile/bullet/shotgun_stunslug
name = "stunslug"
damage = 5
- stamina = 20
- knockdown = 100
+ stamina = 30
stutter = 5
jitter = 20
range = 7
icon_state = "spark"
color = "#FFFF00"
+ var/tase_duration = 50
+
+/obj/item/projectile/bullet/shotgun_stunslug/on_hit(atom/target, blocked = FALSE)
+ . = ..()
+ if(!ismob(target) || blocked >= 100) //Fully blocked by mob or collided with dense object - burst into sparks!
+ do_sparks(1, TRUE, src)
+ if(iscarbon(target))
+ var/mob/living/carbon/C = target
+ SEND_SIGNAL(C, COMSIG_ADD_MOOD_EVENT, "tased", /datum/mood_event/tased)
+ SEND_SIGNAL(C, COMSIG_LIVING_MINOR_SHOCK)
+ C.IgniteMob()
+ if(C.dna && C.dna.check_mutation(HULK))
+ C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ), forced = "hulk")
+ else if(tase_duration && (C.status_flags & CANKNOCKDOWN) && !HAS_TRAIT(C, TRAIT_STUNIMMUNE) && !HAS_TRAIT(C, TRAIT_TASED_RESISTANCE))
+ C.electrocute_act(15, src, 1, SHOCK_NOSTUN)
+ C.apply_status_effect(STATUS_EFFECT_TASED_WEAK, tase_duration)
/obj/item/projectile/bullet/shotgun_meteorslug
name = "meteorslug"
@@ -93,7 +108,6 @@
/obj/item/projectile/bullet/scattershot
damage = 20
- stamina = 65
/obj/item/projectile/bullet/seed
damage = 4
diff --git a/code/modules/uplink/uplink_items.dm b/code/modules/uplink/uplink_items.dm
index bbfa186a48..cc676777db 100644
--- a/code/modules/uplink/uplink_items.dm
+++ b/code/modules/uplink/uplink_items.dm
@@ -65,7 +65,6 @@
var/refund_amount = 0 // specified refund amount in case there needs to be a TC penalty for refunds.
var/refundable = FALSE
var/surplus = 100 // Chance of being included in the surplus crate.
- var/surplus_nullcrates //Chance of being included in null crates. null = pull from surplus
var/cant_discount = FALSE
var/limited_stock = -1 //Setting this above zero limits how many times this item can be bought by the same traitor in a round, -1 is unlimited
var/list/include_modes = list() // Game modes to allow this item in.
@@ -76,11 +75,6 @@
var/restricted = FALSE // Adds restrictions for VR/Events
var/illegal_tech = TRUE // Can this item be deconstructed to unlock certain techweb research nodes?
-/datum/uplink_item/New()
- . = ..()
- if(isnull(surplus_nullcrates))
- surplus_nullcrates = surplus
-
/datum/uplink_item/proc/get_discount()
return pick(4;0.75,2;0.5,1;0.25)
diff --git a/code/modules/uplink/uplink_items/uplink_ammo.dm b/code/modules/uplink/uplink_items/uplink_ammo.dm
index 911aa1a32e..15bb47af91 100644
--- a/code/modules/uplink/uplink_items/uplink_ammo.dm
+++ b/code/modules/uplink/uplink_items/uplink_ammo.dm
@@ -56,6 +56,13 @@
item = /obj/item/storage/backpack/duffelbag/syndie/ammo/shotgun
cost = 12
+/datum/uplink_item/ammo/shotgun/bioterror
+ name = "12g Bioterror Dart Drum"
+ desc = "An additional 8-round bioterror dart magazine for use with the Bulldog shotgun. \
+ Pierces armor and injects are horrid cocktail of death into your target. Be careful about friendly fire."
+ cost = 6 //legacy price
+ item = /obj/item/ammo_box/magazine/m12g/bioterror
+
/datum/uplink_item/ammo/shotgun/buck
name = "12g Buckshot Drum"
desc = "An additional 8-round buckshot magazine for use with the Bulldog shotgun. Front towards enemy."
@@ -66,20 +73,12 @@
desc = "An alternative 8-round dragon's breath magazine for use in the Bulldog shotgun. \
'I'm a fire starter, twisted fire starter!'"
item = /obj/item/ammo_box/magazine/m12g/dragon
- include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/shotgun/meteor
name = "12g Meteorslug Shells"
desc = "An alternative 8-round meteorslug magazine for use in the Bulldog shotgun. \
Great for blasting airlocks off their frames and knocking down enemies."
item = /obj/item/ammo_box/magazine/m12g/meteor
- include_modes = list(/datum/game_mode/nuclear)
-
-/datum/uplink_item/ammo/shotgun/scatter
- name = "12g Scatter Laser shot Slugs"
- desc = "An alternative 8-round Scatter Laser Shot magazine for use in the Bulldog shotgun."
- item = /obj/item/ammo_box/magazine/m12g/scatter
- cost = 4 // most armor has less laser protection then bullet
/datum/uplink_item/ammo/shotgun/slug
name = "12g Slug Drum"
@@ -93,7 +92,6 @@
desc = "An alternative 8-round stun slug magazine for use with the Bulldog shotgun. \
Saying that they're completely non-lethal would be lying."
item = /obj/item/ammo_box/magazine/m12g/stun
- include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/revolver
name = ".357 Speed Loader"
diff --git a/code/modules/uplink/uplink_items/uplink_stealthdevices.dm b/code/modules/uplink/uplink_items/uplink_stealthdevices.dm
index 2a4e51e09a..f1c27c640b 100644
--- a/code/modules/uplink/uplink_items/uplink_stealthdevices.dm
+++ b/code/modules/uplink/uplink_items/uplink_stealthdevices.dm
@@ -101,7 +101,6 @@
item = /obj/item/clothing/shoes/chameleon/noslip
cost = 2
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
- player_minimum = 20
/datum/uplink_item/stealthy_tools/syndigaloshes/nuke
item = /obj/item/clothing/shoes/chameleon/noslip
diff --git a/config/dynamic_config.txt b/config/dynamic_config.txt
index 25bc763d0b..c08b316e2e 100644
--- a/config/dynamic_config.txt
+++ b/config/dynamic_config.txt
@@ -1,13 +1,18 @@
## Dynamic storytellers weights: how likely each storyteller is to show up. This is adjusted by voting and recency.
STORYTELLER_WEIGHT CHAOTIC 2
STORYTELLER_WEIGHT TEAMWORK 4
-STORYTELLER_WEIGHT CONVERSION 2
-STORYTELLER_WEIGHT RANDOM 6
+STORYTELLER_WEIGHT CONVERSION 0
+STORYTELLER_WEIGHT RANDOM 2
+STORYTELLER_WEIGHT CLASSIC 6
STORYTELLER_WEIGHT INTRIGUE 6
STORYTELLER_WEIGHT STORY 6
STORYTELLER_WEIGHT CALM 6
STORYTELLER_WEIGHT EXTENDED 0
+## Dynamic storyteller minimum player coutns: how many players before this storyteller can be rolled.
+STORYTELLER_MIN_PLAYERS CHAOTIC 30
+STORYTELLER_MIN_PLAYERS TEAMWORK 30
+
## Injection delays: how long (in minutes) will pass before a midround or latejoin antag is injected.
DYNAMIC_MIDROUND_DELAY_MIN 5
DYNAMIC_MIDROUND_DELAY_MAX 15
diff --git a/dependencies.sh b/dependencies.sh
index 488504b288..4a950af314 100644
--- a/dependencies.sh
+++ b/dependencies.sh
@@ -23,4 +23,4 @@ export NODE_VERSION=12
export PHP_VERSION=5.6
# SpacemanDMM git tag
-export SPACEMAN_DMM_VERSION=suite-1.2
+export SPACEMAN_DMM_VERSION=suite-1.3
diff --git a/html/changelog.html b/html/changelog.html
index fc78fc33a1..b19cd15494 100644
--- a/html/changelog.html
+++ b/html/changelog.html
@@ -25,7 +25,7 @@