From 81180396e301f9b6f5e7e1cbd6281100683b9676 Mon Sep 17 00:00:00 2001 From: Rykka Date: Tue, 24 Sep 2019 11:05:00 -0600 Subject: [PATCH 01/69] Adds an Alien Derelict to Debris Field --- maps/tether/submaps/space/pois/_templates.dm | 6 + .../submaps/space/pois/debrisfield_things.dm | 22 ++ maps/tether/submaps/space/pois/derelict.dmm | 239 ++++++++++++++++++ 3 files changed, 267 insertions(+) create mode 100644 maps/tether/submaps/space/pois/derelict.dmm diff --git a/maps/tether/submaps/space/pois/_templates.dm b/maps/tether/submaps/space/pois/_templates.dm index 938fdaaa60..20784ca038 100644 --- a/maps/tether/submaps/space/pois/_templates.dm +++ b/maps/tether/submaps/space/pois/_templates.dm @@ -97,3 +97,9 @@ mappath = 'oldshuttle.dmm' cost = 30 allow_duplicates = FALSE + +/datum/map_template/debrisfield/alien_massive_derelict + name = "Alien Derelict" + mappath = 'derelict.dmm' + cost = 35 + allow_duplicates = FALSE \ No newline at end of file diff --git a/maps/tether/submaps/space/pois/debrisfield_things.dm b/maps/tether/submaps/space/pois/debrisfield_things.dm index 054606477c..13cd7f032d 100644 --- a/maps/tether/submaps/space/pois/debrisfield_things.dm +++ b/maps/tether/submaps/space/pois/debrisfield_things.dm @@ -16,6 +16,28 @@ /mob/living/simple_mob/animal/space/carp/large/huge = 1 ) +/obj/tether_away_spawner/debrisfield/derelict + name = "debris field derelict random mob spawner" + faction = "derelict" + mobs_to_pick_from = list( + /mob/living/simple_mob/mechanical/corrupt_maint_drone = 2, + /mob/living/simple_mob/mechanical/infectionbot = 3, + /mob/living/simple_mob/mechanical/combat_drone = 1 + ) + +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm + name = "debris field derelict maint swarm" + faction = "derelict" + mobs_to_pick_from = list( + /mob/living/simple_mob/mechanical/corrupt_maint_drone = 4 + ) + +/obj/tether_away_spawner/debrisfield/derelict/mech_wizard + name = "debris field derelict wizard lol" + faction = "derelict" + mobs_to_pick_from = list( + /mob/living/simple_mob/mechanical/technomancer_golem = 2 + ) //Sciship /mob/living/simple_mob/tomato/space diff --git a/maps/tether/submaps/space/pois/derelict.dmm b/maps/tether/submaps/space/pois/derelict.dmm new file mode 100644 index 0000000000..9201fe6fab --- /dev/null +++ b/maps/tether/submaps/space/pois/derelict.dmm @@ -0,0 +1,239 @@ +"aa" = (/turf/space,/area/tether_away/debrisfield/explored) +"ab" = (/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ac" = (/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"ad" = (/turf/simulated/wall/r_wall,/area/tether_away/debrisfield/explored) +"ae" = (/turf/simulated/wall,/area/tether_away/debrisfield/explored) +"af" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ag" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ah" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ai" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"aj" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ak" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/tether_away/debrisfield/explored) +"al" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) +"am" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/effect/map_effect/interval/effect_emitter/smoke,/obj/structure/door_assembly/door_assembly_alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"an" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/structure/door_assembly/door_assembly_alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ao" = (/obj/structure/catwalk,/turf/space,/area/tether_away/debrisfield/explored) +"ap" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 1},/turf/space,/area/tether_away/debrisfield/explored) +"aq" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 8},/turf/space,/area/tether_away/debrisfield/explored) +"ar" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 4},/turf/space,/area/tether_away/debrisfield/explored) +"as" = (/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"at" = (/obj/structure/shuttle/engine/heater,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"au" = (/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"av" = (/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"aw" = (/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) +"ax" = (/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) +"ay" = (/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"az" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/space,/area/tether_away/debrisfield/explored) +"aA" = (/obj/structure/prop/prism,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"aB" = (/obj/structure/prop/fake_ai,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"aC" = (/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) +"aD" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) +"aE" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) +"aF" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aG" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) +"aH" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aI" = (/obj/structure/ghost_pod/manual/lost_drone/dogborg,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aJ" = (/obj/structure/ghost_pod/manual/lost_drone,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aK" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) +"aL" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/mob/living/simple_mob/mechanical/corrupt_maint_drone{faction = "derelict"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aM" = (/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"aN" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"aO" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) +"aP" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aQ" = (/obj/structure/cable{icon_state = "0-4"},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"aR" = (/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"aS" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"aT" = (/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"aU" = (/obj/tether_away_spawner/debrisfield/derelict/mech_wizard,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"aV" = (/obj/structure/ghost_pod/manual/lost_drone/dogborg,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"aW" = (/obj/tether_away_spawner/debrisfield/derelict/mech_wizard,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"aX" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"aY" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"aZ" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"ba" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"bb" = (/obj/structure/prop/alien/computer,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"bc" = (/obj/structure/prop/alien/computer/camera/flipped,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"bd" = (/obj/structure/prop/alien/dispenser,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"be" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bf" = (/obj/structure/prop/alien/power,/obj/structure/cable{icon_state = "0-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bg" = (/obj/structure/prop/alien/computer/camera/flipped,/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bh" = (/obj/structure/prop/alien/pod,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bi" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bj" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/structure/door_assembly/door_assembly_alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"bk" = (/obj/random/humanoidremains,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bl" = (/obj/machinery/implantchair,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"bm" = (/obj/machinery/dna_scannernew,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"bn" = (/obj/machinery/replicator,/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"bo" = (/obj/machinery/transhuman/synthprinter,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"bp" = (/obj/machinery/transhuman/resleever,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"bq" = (/obj/machinery/vr_sleeper/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"br" = (/obj/machinery/auto_cloner,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) +"bs" = (/obj/machinery/artifact,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bt" = (/obj/structure/prop/alien/power,/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bu" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = null; locked = 1; name = "AI Core"; req_access = list(16)},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"bv" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"bw" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bx" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"by" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"bz" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bA" = (/obj/machinery/bomb_tester,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) +"bB" = (/obj/random/humanoidremains,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) +"bC" = (/obj/structure/prop/alien/power,/obj/structure/cable,/obj/structure/cable{icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) +"bD" = (/obj/machinery/optable,/obj/random/humanoidremains,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"bE" = (/obj/random/humanoidremains,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"bF" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"bG" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/space,/area/tether_away/debrisfield/explored) +"bH" = (/obj/random/tool/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bI" = (/obj/random/energy,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bJ" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) +"bK" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bL" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/mob/living/simple_mob/mechanical/corrupt_maint_drone{faction = "derelict"},/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"bM" = (/obj/structure/prop/blackbox/xenofrigate,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"bN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) +"bO" = (/turf/template_noop,/area/tether_away/debrisfield/explored) +"bP" = (/obj/structure/old_roboprinter,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bQ" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bR" = (/turf/template_noop,/area/tether_away/debrisfield/unexplored) +"bS" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bU" = (/obj/effect/step_trigger/message{name = "Extreme Danger Message"; show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..."},/obj/machinery/door/airlock/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bV" = (/obj/effect/step_trigger/message{name = "Spine Shiver Message"; show_messages = "A shiver runs down your spine. This place, this... ship is... unnatural. Alien. You shouldn't be here. You want to run."},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"bW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bX" = (/obj/effect/step_trigger/message{name = "Extreme Danger Message"; show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..."},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"bY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/wall,/area/tether_away/debrisfield/explored) +"bZ" = (/obj/effect/alien/egg,/obj/effect/alien/weeds,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"ca" = (/obj/effect/decal/mecha_wreckage/gygax/adv,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cb" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"cc" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"cd" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"ce" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cf" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cg" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) +"ch" = (/obj/item/xenos_claw,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"ci" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cj" = (/obj/effect/step_trigger/message{name = "Extreme Danger Message"; show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..."},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"ck" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cm" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"co" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"cp" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"cq" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cr" = (/obj/structure/prop/prism,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"ct" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cu" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cv" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"cw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cy" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cz" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cA" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cB" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"cC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"cD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cE" = (/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cF" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"cH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cI" = (/obj/random/humanoidremains,/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cJ" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cL" = (/obj/effect/step_trigger/message{name = "Extreme Danger Message"; show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..."},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cM" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = null; locked = 1; name = "AI Core"; req_access = list(16)},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cO" = (/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cQ" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cR" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 28},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cS" = (/obj/machinery/power/apc/hyper{pixel_y = 25},/obj/structure/cable{icon_state = "0-4"},/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"cT" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"cU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cW" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"cX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"cY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"cZ" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"da" = (/obj/structure/cable{icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 28},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"db" = (/obj/structure/cable{icon_state = "2-8"},/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"dc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"dd" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"de" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) + +(1,1,1) = {" +bRbRbRbRbRbRbRbRbRbRbRbRbRbObObObObObObObObObObObObObObObObObObObObObObObObRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRbObObObObObObObObObObObObObObObObObObObObObObObObRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRbObObObOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabObObObObRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaafagagagagagagagagahaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaibabbbdbbbbbdbbbcajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauauauauauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauaubFauauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauauaQcTauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadadadadadadbxbxaeaebYaebxbxadadadadadadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawawaDawaeavavaealbCaeavavaeaDawawawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawawawbJaeavavaebNcgaeavavaeawawawawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawaeawaDaeavavaebNbNaeavavaeawaDaeawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawaeaeaeaeavavaebwcFaeavavaeaeaeaeawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadacacacacbwavavbvcicibvavavbwacacacacadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadacacacacbwavavbvcicibvavavbwacacacacadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadaxaeaeaeaeavavaeciciaeavavaeaeaeaeaxadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadaxaeaxaEaeavavaeciciaeavavaeaGaxaKaxadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadaxaxaxaKaeavavaeciciaeavavaeaGaxaKaxadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadadadadadadadadaeciciaeadadadadadadadadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaadadcicqadadaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaazadciciadazaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaqaeaeaeaeciciaeaeaeaearaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaeaeaeabcaaeciciaecaabaeaeaeaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaambVanababbUcicibUababbybVbyaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaeaeaeababaeciciaeababaeaeaeaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaqaeaeaeaeciciaeaeaeaearaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaazadciciadbGaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bObOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadadciciadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabObO +bObOaaaaaaadadaaaaaaaaaaaaaaadadadadadadadadadadciciadadadadadadadadadadaaaaaaaaaaaaaaadadaaaaaabObO +bObOaaaaaaadadaaaaaaaaaaaaadadadacacacbHaebIbkaeciciaeaFaFaebHacacacadadadaaaaaaaaaaaaadadaaaaaabObO +bObOaaaaadadadadaaaaaaaaaaadbBaCacaeacacaeacacbwcicibwacacaeacacacacaCbAadaaaaaaaaaaadadadadaaaabObO +bObOaaapadbebtadapaaaaaaaaadaCaeacacacacbwacacbwcicibwbkacaeacaeacaeaeaeadaaaaaaaaapadbfbgadapaabObO +bObOaaadadasbTadadaaaaaaaaadacacacacaeaeaeaeaeaeciciaeacacaeacacacacaMbpadaaaaaaaaadadasbTadadaabObO +bObOaaadasasbTaeadaaaaaaaaadacaeaeacaebsacaeaNaeciciaeacacaebHacacacaMaMadaaaaaaaaadbSbWcnbKadaabObO +bObOaaadasaebYaeadaaaaaaaaadacbkacacaeacacaeaMaeciciaeacacaeaeacacaeaMaMadaaaaaaaaadbTasaeaeadaabObO +bObOaaadasasbTasadaaaaaaaaadacacacacacacacaeaMaecicUaeacacacacbkacaeaMaMadaaaaaaaaadbTasasasadaabObO +bObOaaadaeaebTasadaaaaaaaaadaeaeacbkacaeacacaMaeciciaebHacacacacacaeaMaMadaaaaaaaaadbTaeaeasadaabObO +bObOaaadasasbTasadaaaaaaaaadacacacaeacacacacaMaeciciaeaeaeacaeacacaeboaWadaaaaaaaaadbTasasasadaabObO +bObOaaadasasbTasadaaaaaaaaadacbqacaeacacaebsaMaeciciaebLaXaMaeacacaeaeaeadaaaaaaaaadcobWbWcpadaabObO +bObOaaadasaebYasadaaaaaaadadacaeacaeacacacaeaZaeciciaeaYaMbLaeacacacaCaCadadaaaaaaadaeaeaebTadaabObO +bObOaaadbKaebTasadaaaaadadadaMaMaMaMaMaMaMaZaeaeciciaeaYaMbLaeacacaeaCbradadadaaaaadbSbWbWcnadaabObO +bObOaaadaeaebTaeadadadadadadaeaeaeaeaeaeaeaeaeaeciciaeaeaeaeaeaeaeaeaeaeadadadadadadbTaeaeaeadaabObO +bObOaaadbPascbcccdcccccccccecfcfcfcfcfcfcfcfcfbvdbdcbjcscscscscsctcscscscubWbWbWbWcvcnasasbQadaabObO +bObOaaadbPasbQasbzasasasasbvavavavavavavavavavbvchcibvavavavavavavavavavbvasasasasbzasasasbQadaabObO +bObOaaadaeaeasaeadadadadadadaeaeaeaeaeaeaeaeaeaeciciaeaeaeaeaeaeaeaeaeaeadadadadadadasaeaeaeadaabObO +bObOaaadbKaeasasadaaaaadadadaHacaLaeacacbwacbiaecwcxaebiacbwaRaRaRaRaRbladadadaaaaadasasasasadaabObO +bObOaaadasaeasasadaaaaaaadadacacacacaccycAcJacaeciciaecyczcAcBaRaeaSaRbmadadaaaaaaadaeaeasasadaabObO +bObOaaadasasasaeadaaaaaaaaadacacaeaeacclaecDcJaeciciaeclacaecCaRbDaeaRaRadaaaaaaaaadbKaeasasadaabObO +bObOaaadasasaeaeadaaaaaaaaadacacacaeacclaeacclaecjcjaeclacaecCaRaeaSaRaRadaaaaaaaaadasaeasasadaabObO +bObOaaadasasasasadaaaaaaaaadacaeacacacclaeacclaeckckaeclacaecCaRbEaRaeaRadaaaaaaaaadasasasasadaabObO +bObOaaadaeaeasasadaaaaaaaaadacacacacacclaecrcDczcVclbkclcraecCaRaRaRaRaSadaaaaaaaaadasasaeaeadaabObO +bObOaaadasasasasadaaaaaaaaadaeaeaeaebwcFaebiacaccmcDczcEbiaecFbwaeaeaeaeadaaaaaaaaadasasasasadaabObO +bObOaaadasasasasadaaaaaaaaadbnaTaTaTaTcGadadadadadadadadadadcGaTaTaTaTbnadaaaaaaaaadasaeasasadaabObO +bObOaaadasaeaeaeadaaaaaaaaadaTaTcWcXcXcYadaoaoaoaoaoaoaoaoadcGaTaTaTaTaTadaaaaaaaaadbKaeasasadaabObO +bObOaaadasaebKasadaaaaaaaaadaCaecFaeaeaeadaoaaaaaaaaaaaaaoadclacaeaeaCaCadaaaaaaaaadaeaeasasadaabObO +bObOaaadasaeasasadaaaaaaaaadaCaeclacaCaOadaoaaaaaaaaaaaaaoadcDcHcIaeaCaCadaaaaaaaaadasasasasadaabObO +bObOaaadasaeaeasadaaaaaaaaadaOaeclbkaCaCadaoaaaaaaaaaaaaaoadbZacclaeaOaOadaaaaaaaaadasaeaeaeadaabObO +bObOaaadasasasasadaaaaaaaaadaeaecFbwaeaeadaoaaaaaaaaaaaaaoadaeaecFaeaeaeadaaaaaaaaadasasasasadaabObO +bObOaaadatasasatadaaaaaaaaadbhaeclacacaJadaoaaaaaaaaaaaaaoadacacclacacaIadaaaaaaaaadatasasatadaabObO +bObOaaadaeatataeadaaaaaaaaadacacclacaeaeadaoaaaaaaaaaaaaaoadacbkcDcJacacadaaaaaaaaadaeatataeadaabObO +bObOaaadakaeaeakadaaaaaaaaadacaeclacababbyaoaaaaaaaaaaaaaobyacacaecFaeaeadaaaaaaaaadakaeaeakadaabObO +bObOaaadaaakakaaadaaaaaaaaadacaccZacababbyaoaaaaaaaaaaaaaobyacacaecKababadaaaaaaaaadaaakakaaadaabObO +bObOaaaaaaaaaaaaaaaaaaaaaaadacaccDdaaeaeadaoaaaaaaaaaaaaaoadacacaecPcQcRadaaaaaaaaaaaaaaaaaaaaaabObO +bObOaaaaaaaaaaaaaaaaaaaaaaadaPaebXababaVadaoaoaoaoaoaoaoaoadbsacaecLabaUadaaaaaaaaaaaaaaaaaaaaaabObO +bRbRbRbRbRbRbRbRbRbRbRbRaaadadadbuadadadadadadadadadadadadadadadadcMadadadaabRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRaaaaadadabababayayayayayddddayayayaycScNcNcOadadaaaabRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRaaaaaaadadababayayayayayayayayayayayayababadadaaaabObRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbObOaaaaadaddeayayayayayayayayayayayaydeadadaaaabObObRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbObObOaaaaadadddayayayaAaBaBaAayayayddadadaaaabObObObRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbObObObOaaaaadadddayayayayayayayayddadadaaaabObObObObRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbObObObObOaaaaadadddayayayayayayddadadaaaabObObObObObRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbObObObObObOaaaaadadddaybMbMayddadadaaaabObObObObObObRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbObObObObObObOaaaaadadadadadadadadaaaabObObObObObObObRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbObObObObObObObOaaaaaaaaaaaaaaaaaaaabObObObObObObObObRbRbRbRbRbRbRbRbRbRbRbR +"} From 1e75b4db0962e5cae47cc26386dd5d507c9def4f Mon Sep 17 00:00:00 2001 From: Rykka Date: Tue, 24 Sep 2019 11:37:08 -0600 Subject: [PATCH 02/69] Hardens malf AI Core some more, adds EMP grenades to deal with turrets --- maps/tether/submaps/space/pois/derelict.dmm | 31 +++++++++++---------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/maps/tether/submaps/space/pois/derelict.dmm b/maps/tether/submaps/space/pois/derelict.dmm index 9201fe6fab..5a547b78f0 100644 --- a/maps/tether/submaps/space/pois/derelict.dmm +++ b/maps/tether/submaps/space/pois/derelict.dmm @@ -23,7 +23,7 @@ "aw" = (/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) "ax" = (/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) "ay" = (/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) -"az" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/space,/area/tether_away/debrisfield/explored) +"az" = (/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/empgrenade,/turf/space,/area/tether_away/debrisfield/explored) "aA" = (/obj/structure/prop/prism,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) "aB" = (/obj/structure/prop/fake_ai,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) "aC" = (/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) @@ -77,7 +77,7 @@ "by" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) "bz" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) "bA" = (/obj/machinery/bomb_tester,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) -"bB" = (/obj/random/humanoidremains,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) +"bB" = (/obj/random/humanoidremains,/obj/item/weapon/gun/energy/ionrifle,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) "bC" = (/obj/structure/prop/alien/power,/obj/structure/cable,/obj/structure/cable{icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) "bD" = (/obj/machinery/optable,/obj/random/humanoidremains,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) "bE" = (/obj/random/humanoidremains,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) @@ -88,7 +88,7 @@ "bJ" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) "bK" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) "bL" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/mob/living/simple_mob/mechanical/corrupt_maint_drone{faction = "derelict"},/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"bM" = (/obj/structure/prop/blackbox/xenofrigate,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"bM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/weapon/grenade/empgrenade,/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) "bN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) "bO" = (/turf/template_noop,/area/tether_away/debrisfield/explored) "bP" = (/obj/structure/old_roboprinter,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) @@ -159,6 +159,9 @@ "dc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) "dd" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) "de" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"df" = (/obj/item/weapon/gun/energy/ionrifle,/turf/space,/area/tether_away/debrisfield/explored) +"dg" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"dh" = (/obj/structure/prop/blackbox/xenofrigate,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) (1,1,1) = {" bRbRbRbRbRbRbRbRbRbRbRbRbRbObObObObObObObObObObObObObObObObObObObObObObObObRbRbRbRbRbRbRbRbRbRbRbRbR @@ -172,7 +175,7 @@ bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauaubFauauauauajaaaaaaaaaaaaaabRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauauaQcTauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadadadadadadbxbxaeaebYaebxbxadadadadadadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawawaDawaeavavaealbCaeavavaeaDawawawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawawawbJaeavavaebNcgaeavavaeawawawawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawawawbJaeavavaebMcgaeavavaeawawawawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawaeawaDaeavavaebNbNaeavavaeawaDaeawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawaeaeaeaeavavaebwcFaeavavaeaeaeaeawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadacacacacbwavavbvcicibvavavbwacacacacadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR @@ -182,13 +185,13 @@ bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadaxaeaxaEaeavavaeciciaeavavaeaGaxaKaxadaaaabRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadaxaxaxaKaeavavaeciciaeavavaeaGaxaKaxadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadadadadadadadadaeciciaeadadadadadadadadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaadadcicqadadaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaazadciciadazaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaabGadciciadbGaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaqaeaeaeaeciciaeaeaeaearaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaeaeaeabcaaeciciaecaabaeaeaeaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaambVanababbUcicibUababbybVbyaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaeaeaeababaeciciaeababaeaeaeaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaqaeaeaeaeciciaeaeaeaearaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaazadciciadbGaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaabGadciciadbGaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR bObOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadadciciadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabObO bObOaaaaaaadadaaaaaaaaaaaaaaadadadadadadadadadadciciadadadadadadadadadadaaaaaaaaaaaaaaadadaaaaaabObO bObOaaaaaaadadaaaaaaaaaaaaadadadacacacbHaebIbkaeciciaeaFaFaebHacacacadadadaaaaaaaaaaaaadadaaaaaabObO @@ -219,21 +222,21 @@ bObOaaadasaeaeaeadaaaaaaaaadaTaTcWcXcXcYadaoaoaoaoaoaoaoaoadcGaTaTaTaTaTadaaaaaa bObOaaadasaebKasadaaaaaaaaadaCaecFaeaeaeadaoaaaaaaaaaaaaaoadclacaeaeaCaCadaaaaaaaaadaeaeasasadaabObO bObOaaadasaeasasadaaaaaaaaadaCaeclacaCaOadaoaaaaaaaaaaaaaoadcDcHcIaeaCaCadaaaaaaaaadasasasasadaabObO bObOaaadasaeaeasadaaaaaaaaadaOaeclbkaCaCadaoaaaaaaaaaaaaaoadbZacclaeaOaOadaaaaaaaaadasaeaeaeadaabObO -bObOaaadasasasasadaaaaaaaaadaeaecFbwaeaeadaoaaaaaaaaaaaaaoadaeaecFaeaeaeadaaaaaaaaadasasasasadaabObO -bObOaaadatasasatadaaaaaaaaadbhaeclacacaJadaoaaaaaaaaaaaaaoadacacclacacaIadaaaaaaaaadatasasatadaabObO -bObOaaadaeatataeadaaaaaaaaadacacclacaeaeadaoaaaaaaaaaaaaaoadacbkcDcJacacadaaaaaaaaadaeatataeadaabObO -bObOaaadakaeaeakadaaaaaaaaadacaeclacababbyaoaaaaaaaaaaaaaobyacacaecFaeaeadaaaaaaaaadakaeaeakadaabObO -bObOaaadaaakakaaadaaaaaaaaadacaccZacababbyaoaaaaaaaaaaaaaobyacacaecKababadaaaaaaaaadaaakakaaadaabObO +bObOaaadasasasasadaaaaaaaaadaeaecFbwaeaeadaoaaaadfaaaaaaaoadaeaecFaeaeaeadaaaaaaaaadasasasasadaabObO +bObOaaadatasasatadaaaaaaaaadbhaeclacacaJadaoaaaaazazaaaaaoadacacclacacaIadaaaaaaaaadatasasatadaabObO +bObOaaadaeatataeadaaaaaaaaadacacclacaeaeadaoaaaaazazaaaaaoadacbkcDcJacacadaaaaaaaaadaeatataeadaabObO +bObOaaadakaeaeakadaaaaaaaaadacaeclacababdgaoaaaaaaaaaaaaaodgacacaecFaeaeadaaaaaaaaadakaeaeakadaabObO +bObOaaadaaakakaaadaaaaaaaaadacaccZacababdgaoaaaaaaaaaaaaaodgacacaecKababadaaaaaaaaadaaakakaaadaabObO bObOaaaaaaaaaaaaaaaaaaaaaaadacaccDdaaeaeadaoaaaaaaaaaaaaaoadacacaecPcQcRadaaaaaaaaaaaaaaaaaaaaaabObO bObOaaaaaaaaaaaaaaaaaaaaaaadaPaebXababaVadaoaoaoaoaoaoaoaoadbsacaecLabaUadaaaaaaaaaaaaaaaaaaaaaabObO bRbRbRbRbRbRbRbRbRbRbRbRaaadadadbuadadadadadadadadadadadadadadadadcMadadadaabRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRaaaaadadabababayayayayayddddayayayaycScNcNcOadadaaaabRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRaaaaadadabababayayayayayayayayayayaycScNcNcOadadaaaabRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRaaaaaaadadababayayayayayayayayayayayayababadadaaaabObRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbObOaaaaadaddeayayayayayayayayayayayaydeadadaaaabObObRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbObOaaaaadaddeayayayayaAdhdhaAayayayaydeadadaaaabObObRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbObObOaaaaadadddayayayaAaBaBaAayayayddadadaaaabObObObRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbObObObOaaaaadadddayayayayayayayayddadadaaaabObObObObRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbObObObObOaaaaadadddayayayayayayddadadaaaabObObObObObRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbObObObObObOaaaaadadddaybMbMayddadadaaaabObObObObObObRbRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRbRbObObObObObOaaaaadadddayddddayddadadaaaabObObObObObObRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbObObObObObObOaaaaadadadadadadadadaaaabObObObObObObObRbRbRbRbRbRbRbRbRbRbRbR bRbRbRbRbRbRbRbRbRbRbRbRbObObObObObObObOaaaaaaaaaaaaaaaaaaaabObObObObObObObObRbRbRbRbRbRbRbRbRbRbRbR "} From 96ce9fefe6fdf5052e6a97d89e48f2bc2fabd2c3 Mon Sep 17 00:00:00 2001 From: Fel Date: Fri, 27 Sep 2019 02:03:17 -0400 Subject: [PATCH 03/69] Prometheans clean everything. --- .../human/species/station/prometheans.dm | 33 ++++++++++++++++--- 1 file changed, 29 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species/station/prometheans.dm b/code/modules/mob/living/carbon/human/species/station/prometheans.dm index 6cef9b7032..ef1a93c1d0 100644 --- a/code/modules/mob/living/carbon/human/species/station/prometheans.dm +++ b/code/modules/mob/living/carbon/human/species/station/prometheans.dm @@ -174,15 +174,40 @@ var/datum/species/shapeshifter/promethean/prometheans H.adjustToxLoss(3 * heal_rate) // Tripled because 0.5 is miniscule, and fire_stacks are capped in both directions healing = FALSE + //Prometheans automatically clean every surface they're in contact with every life tick - this includes the floor without shoes. + //They gain nutrition from doing this. var/turf/T = get_turf(H) if(istype(T)) - var/obj/effect/decal/cleanable/C = locate() in T - if(C && !(H.shoes || (H.wear_suit && (H.wear_suit.body_parts_covered & FEET)))) - qdel(C) + if(!(H.shoes || (H.wear_suit && (H.wear_suit.body_parts_covered & FEET)))) + for(var/obj/O in T) + O.clean_blood() + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) if (istype(T, /turf/simulated)) var/turf/simulated/S = T + T.clean_blood() S.dirt = 0 - H.nutrition = max(H.nutrition, min(500, H.nutrition + rand(15, 30))) //VOREStation Edit: Gives nutrition up to a point instead of being capped + H.nutrition = min(500, max(0, H.nutrition + rand(10, 20))) + if(H.clean_blood(1)) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + if(H.r_hand) + if(H.r_hand.clean_blood()) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + if(H.l_hand) + if(H.l_hand.clean_blood()) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + if(H.head) + if(H.head.clean_blood()) + H.update_inv_head(0) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + if(H.wear_suit) + if(H.wear_suit.clean_blood()) + H.update_inv_wear_suit(0) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + if(H.w_uniform) + if(H.w_uniform.clean_blood()) + H.update_inv_w_uniform(0) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + //End cleaning code. var/datum/gas_mixture/environment = T.return_air() var/pressure = environment.return_pressure() From 181470fdd5937080d019d192ff3b127691ca6866 Mon Sep 17 00:00:00 2001 From: Rykka Date: Fri, 27 Sep 2019 14:48:33 -0600 Subject: [PATCH 04/69] Runs Mapmerge on this POI too --- maps/tether/submaps/space/pois/derelict.dmm | 5170 ++++++++++++++++++- 1 file changed, 4928 insertions(+), 242 deletions(-) diff --git a/maps/tether/submaps/space/pois/derelict.dmm b/maps/tether/submaps/space/pois/derelict.dmm index 5a547b78f0..da97c7926d 100644 --- a/maps/tether/submaps/space/pois/derelict.dmm +++ b/maps/tether/submaps/space/pois/derelict.dmm @@ -1,242 +1,4928 @@ -"aa" = (/turf/space,/area/tether_away/debrisfield/explored) -"ab" = (/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ac" = (/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"ad" = (/turf/simulated/wall/r_wall,/area/tether_away/debrisfield/explored) -"ae" = (/turf/simulated/wall,/area/tether_away/debrisfield/explored) -"af" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ag" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ah" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ai" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"aj" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ak" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/tether_away/debrisfield/explored) -"al" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) -"am" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/effect/map_effect/interval/effect_emitter/smoke,/obj/structure/door_assembly/door_assembly_alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"an" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/structure/door_assembly/door_assembly_alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ao" = (/obj/structure/catwalk,/turf/space,/area/tether_away/debrisfield/explored) -"ap" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 1},/turf/space,/area/tether_away/debrisfield/explored) -"aq" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 8},/turf/space,/area/tether_away/debrisfield/explored) -"ar" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 4},/turf/space,/area/tether_away/debrisfield/explored) -"as" = (/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"at" = (/obj/structure/shuttle/engine/heater,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"au" = (/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"av" = (/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"aw" = (/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) -"ax" = (/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) -"ay" = (/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) -"az" = (/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/empgrenade,/turf/space,/area/tether_away/debrisfield/explored) -"aA" = (/obj/structure/prop/prism,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) -"aB" = (/obj/structure/prop/fake_ai,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) -"aC" = (/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) -"aD" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) -"aE" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) -"aF" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aG" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) -"aH" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aI" = (/obj/structure/ghost_pod/manual/lost_drone/dogborg,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aJ" = (/obj/structure/ghost_pod/manual/lost_drone,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aK" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) -"aL" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/mob/living/simple_mob/mechanical/corrupt_maint_drone{faction = "derelict"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aM" = (/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"aN" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"aO" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) -"aP" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aQ" = (/obj/structure/cable{icon_state = "0-4"},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"aR" = (/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"aS" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"aT" = (/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"aU" = (/obj/tether_away_spawner/debrisfield/derelict/mech_wizard,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"aV" = (/obj/structure/ghost_pod/manual/lost_drone/dogborg,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"aW" = (/obj/tether_away_spawner/debrisfield/derelict/mech_wizard,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"aX" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"aY" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"aZ" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"ba" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"bb" = (/obj/structure/prop/alien/computer,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"bc" = (/obj/structure/prop/alien/computer/camera/flipped,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"bd" = (/obj/structure/prop/alien/dispenser,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"be" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bf" = (/obj/structure/prop/alien/power,/obj/structure/cable{icon_state = "0-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bg" = (/obj/structure/prop/alien/computer/camera/flipped,/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bh" = (/obj/structure/prop/alien/pod,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bi" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bj" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/structure/door_assembly/door_assembly_alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"bk" = (/obj/random/humanoidremains,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bl" = (/obj/machinery/implantchair,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"bm" = (/obj/machinery/dna_scannernew,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"bn" = (/obj/machinery/replicator,/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"bo" = (/obj/machinery/transhuman/synthprinter,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"bp" = (/obj/machinery/transhuman/resleever,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"bq" = (/obj/machinery/vr_sleeper/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"br" = (/obj/machinery/auto_cloner,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) -"bs" = (/obj/machinery/artifact,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bt" = (/obj/structure/prop/alien/power,/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bu" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = null; locked = 1; name = "AI Core"; req_access = list(16)},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"bv" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"bw" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bx" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"by" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"bz" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bA" = (/obj/machinery/bomb_tester,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) -"bB" = (/obj/random/humanoidremains,/obj/item/weapon/gun/energy/ionrifle,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) -"bC" = (/obj/structure/prop/alien/power,/obj/structure/cable,/obj/structure/cable{icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) -"bD" = (/obj/machinery/optable,/obj/random/humanoidremains,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"bE" = (/obj/random/humanoidremains,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"bF" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"bG" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/space,/area/tether_away/debrisfield/explored) -"bH" = (/obj/random/tool/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bI" = (/obj/random/energy,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bJ" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) -"bK" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bL" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/mob/living/simple_mob/mechanical/corrupt_maint_drone{faction = "derelict"},/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"bM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/weapon/grenade/empgrenade,/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) -"bN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) -"bO" = (/turf/template_noop,/area/tether_away/debrisfield/explored) -"bP" = (/obj/structure/old_roboprinter,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bQ" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bR" = (/turf/template_noop,/area/tether_away/debrisfield/unexplored) -"bS" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bU" = (/obj/effect/step_trigger/message{name = "Extreme Danger Message"; show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..."},/obj/machinery/door/airlock/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bV" = (/obj/effect/step_trigger/message{name = "Spine Shiver Message"; show_messages = "A shiver runs down your spine. This place, this... ship is... unnatural. Alien. You shouldn't be here. You want to run."},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"bW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bX" = (/obj/effect/step_trigger/message{name = "Extreme Danger Message"; show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..."},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"bY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/wall,/area/tether_away/debrisfield/explored) -"bZ" = (/obj/effect/alien/egg,/obj/effect/alien/weeds,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"ca" = (/obj/effect/decal/mecha_wreckage/gygax/adv,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cb" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"cc" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"cd" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"ce" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cf" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cg" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) -"ch" = (/obj/item/xenos_claw,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"ci" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cj" = (/obj/effect/step_trigger/message{name = "Extreme Danger Message"; show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..."},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"ck" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cm" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"co" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"cp" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"cq" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cr" = (/obj/structure/prop/prism,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"ct" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cu" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cv" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"cw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cy" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cz" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cA" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cB" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"cC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"cD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cE" = (/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cF" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"cH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cI" = (/obj/random/humanoidremains,/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cJ" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cL" = (/obj/effect/step_trigger/message{name = "Extreme Danger Message"; show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..."},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cM" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = null; locked = 1; name = "AI Core"; req_access = list(16)},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cO" = (/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cQ" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cR" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 28},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cS" = (/obj/machinery/power/apc/hyper{pixel_y = 25},/obj/structure/cable{icon_state = "0-4"},/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) -"cT" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"cU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cW" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"cX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"cY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"cZ" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"da" = (/obj/structure/cable{icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 28},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"db" = (/obj/structure/cable{icon_state = "2-8"},/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"dc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"dd" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) -"de" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"df" = (/obj/item/weapon/gun/energy/ionrifle,/turf/space,/area/tether_away/debrisfield/explored) -"dg" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"dh" = (/obj/structure/prop/blackbox/xenofrigate,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) - -(1,1,1) = {" -bRbRbRbRbRbRbRbRbRbRbRbRbRbObObObObObObObObObObObObObObObObObObObObObObObObRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRbObObObObObObObObObObObObObObObObObObObObObObObObRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRbObObObOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabObObObObRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaafagagagagagagagagahaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaibabbbdbbbbbdbbbcajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauauauauauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauaubFauauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauauaQcTauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadadadadadadbxbxaeaebYaebxbxadadadadadadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawawaDawaeavavaealbCaeavavaeaDawawawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawawawbJaeavavaebMcgaeavavaeawawawawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawaeawaDaeavavaebNbNaeavavaeawaDaeawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadawaeaeaeaeavavaebwcFaeavavaeaeaeaeawadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadacacacacbwavavbvcicibvavavbwacacacacadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadacacacacbwavavbvcicibvavavbwacacacacadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadaxaeaeaeaeavavaeciciaeavavaeaeaeaeaxadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadaxaeaxaEaeavavaeciciaeavavaeaGaxaKaxadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadaxaxaxaKaeavavaeciciaeavavaeaGaxaKaxadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaadadadadadadadadaeciciaeadadadadadadadadaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaadadcicqadadaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaabGadciciadbGaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaqaeaeaeaeciciaeaeaeaearaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaeaeaeabcaaeciciaecaabaeaeaeaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaambVanababbUcicibUababbybVbyaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaeaeaeababaeciciaeababaeaeaeaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaqaeaeaeaeciciaeaeaeaearaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaabGadciciadbGaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbRbRbR -bObOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadadciciadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabObO -bObOaaaaaaadadaaaaaaaaaaaaaaadadadadadadadadadadciciadadadadadadadadadadaaaaaaaaaaaaaaadadaaaaaabObO -bObOaaaaaaadadaaaaaaaaaaaaadadadacacacbHaebIbkaeciciaeaFaFaebHacacacadadadaaaaaaaaaaaaadadaaaaaabObO -bObOaaaaadadadadaaaaaaaaaaadbBaCacaeacacaeacacbwcicibwacacaeacacacacaCbAadaaaaaaaaaaadadadadaaaabObO -bObOaaapadbebtadapaaaaaaaaadaCaeacacacacbwacacbwcicibwbkacaeacaeacaeaeaeadaaaaaaaaapadbfbgadapaabObO -bObOaaadadasbTadadaaaaaaaaadacacacacaeaeaeaeaeaeciciaeacacaeacacacacaMbpadaaaaaaaaadadasbTadadaabObO -bObOaaadasasbTaeadaaaaaaaaadacaeaeacaebsacaeaNaeciciaeacacaebHacacacaMaMadaaaaaaaaadbSbWcnbKadaabObO -bObOaaadasaebYaeadaaaaaaaaadacbkacacaeacacaeaMaeciciaeacacaeaeacacaeaMaMadaaaaaaaaadbTasaeaeadaabObO -bObOaaadasasbTasadaaaaaaaaadacacacacacacacaeaMaecicUaeacacacacbkacaeaMaMadaaaaaaaaadbTasasasadaabObO -bObOaaadaeaebTasadaaaaaaaaadaeaeacbkacaeacacaMaeciciaebHacacacacacaeaMaMadaaaaaaaaadbTaeaeasadaabObO -bObOaaadasasbTasadaaaaaaaaadacacacaeacacacacaMaeciciaeaeaeacaeacacaeboaWadaaaaaaaaadbTasasasadaabObO -bObOaaadasasbTasadaaaaaaaaadacbqacaeacacaebsaMaeciciaebLaXaMaeacacaeaeaeadaaaaaaaaadcobWbWcpadaabObO -bObOaaadasaebYasadaaaaaaadadacaeacaeacacacaeaZaeciciaeaYaMbLaeacacacaCaCadadaaaaaaadaeaeaebTadaabObO -bObOaaadbKaebTasadaaaaadadadaMaMaMaMaMaMaMaZaeaeciciaeaYaMbLaeacacaeaCbradadadaaaaadbSbWbWcnadaabObO -bObOaaadaeaebTaeadadadadadadaeaeaeaeaeaeaeaeaeaeciciaeaeaeaeaeaeaeaeaeaeadadadadadadbTaeaeaeadaabObO -bObOaaadbPascbcccdcccccccccecfcfcfcfcfcfcfcfcfbvdbdcbjcscscscscsctcscscscubWbWbWbWcvcnasasbQadaabObO -bObOaaadbPasbQasbzasasasasbvavavavavavavavavavbvchcibvavavavavavavavavavbvasasasasbzasasasbQadaabObO -bObOaaadaeaeasaeadadadadadadaeaeaeaeaeaeaeaeaeaeciciaeaeaeaeaeaeaeaeaeaeadadadadadadasaeaeaeadaabObO -bObOaaadbKaeasasadaaaaadadadaHacaLaeacacbwacbiaecwcxaebiacbwaRaRaRaRaRbladadadaaaaadasasasasadaabObO -bObOaaadasaeasasadaaaaaaadadacacacacaccycAcJacaeciciaecyczcAcBaRaeaSaRbmadadaaaaaaadaeaeasasadaabObO -bObOaaadasasasaeadaaaaaaaaadacacaeaeacclaecDcJaeciciaeclacaecCaRbDaeaRaRadaaaaaaaaadbKaeasasadaabObO -bObOaaadasasaeaeadaaaaaaaaadacacacaeacclaeacclaecjcjaeclacaecCaRaeaSaRaRadaaaaaaaaadasaeasasadaabObO -bObOaaadasasasasadaaaaaaaaadacaeacacacclaeacclaeckckaeclacaecCaRbEaRaeaRadaaaaaaaaadasasasasadaabObO -bObOaaadaeaeasasadaaaaaaaaadacacacacacclaecrcDczcVclbkclcraecCaRaRaRaRaSadaaaaaaaaadasasaeaeadaabObO -bObOaaadasasasasadaaaaaaaaadaeaeaeaebwcFaebiacaccmcDczcEbiaecFbwaeaeaeaeadaaaaaaaaadasasasasadaabObO -bObOaaadasasasasadaaaaaaaaadbnaTaTaTaTcGadadadadadadadadadadcGaTaTaTaTbnadaaaaaaaaadasaeasasadaabObO -bObOaaadasaeaeaeadaaaaaaaaadaTaTcWcXcXcYadaoaoaoaoaoaoaoaoadcGaTaTaTaTaTadaaaaaaaaadbKaeasasadaabObO -bObOaaadasaebKasadaaaaaaaaadaCaecFaeaeaeadaoaaaaaaaaaaaaaoadclacaeaeaCaCadaaaaaaaaadaeaeasasadaabObO -bObOaaadasaeasasadaaaaaaaaadaCaeclacaCaOadaoaaaaaaaaaaaaaoadcDcHcIaeaCaCadaaaaaaaaadasasasasadaabObO -bObOaaadasaeaeasadaaaaaaaaadaOaeclbkaCaCadaoaaaaaaaaaaaaaoadbZacclaeaOaOadaaaaaaaaadasaeaeaeadaabObO -bObOaaadasasasasadaaaaaaaaadaeaecFbwaeaeadaoaaaadfaaaaaaaoadaeaecFaeaeaeadaaaaaaaaadasasasasadaabObO -bObOaaadatasasatadaaaaaaaaadbhaeclacacaJadaoaaaaazazaaaaaoadacacclacacaIadaaaaaaaaadatasasatadaabObO -bObOaaadaeatataeadaaaaaaaaadacacclacaeaeadaoaaaaazazaaaaaoadacbkcDcJacacadaaaaaaaaadaeatataeadaabObO -bObOaaadakaeaeakadaaaaaaaaadacaeclacababdgaoaaaaaaaaaaaaaodgacacaecFaeaeadaaaaaaaaadakaeaeakadaabObO -bObOaaadaaakakaaadaaaaaaaaadacaccZacababdgaoaaaaaaaaaaaaaodgacacaecKababadaaaaaaaaadaaakakaaadaabObO -bObOaaaaaaaaaaaaaaaaaaaaaaadacaccDdaaeaeadaoaaaaaaaaaaaaaoadacacaecPcQcRadaaaaaaaaaaaaaaaaaaaaaabObO -bObOaaaaaaaaaaaaaaaaaaaaaaadaPaebXababaVadaoaoaoaoaoaoaoaoadbsacaecLabaUadaaaaaaaaaaaaaaaaaaaaaabObO -bRbRbRbRbRbRbRbRbRbRbRbRaaadadadbuadadadadadadadadadadadadadadadadcMadadadaabRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRaaaaadadabababayayayayayayayayayayaycScNcNcOadadaaaabRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRaaaaaaadadababayayayayayayayayayayayayababadadaaaabObRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbObOaaaaadaddeayayayayaAdhdhaAayayayaydeadadaaaabObObRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbObObOaaaaadadddayayayaAaBaBaAayayayddadadaaaabObObObRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbObObObOaaaaadadddayayayayayayayayddadadaaaabObObObObRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbObObObObOaaaaadadddayayayayayayddadadaaaabObObObObObRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbObObObObObOaaaaadadddayddddayddadadaaaabObObObObObObRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbObObObObObObOaaaaadadadadadadadadaaaabObObObObObObObRbRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRbRbObObObObObObObOaaaaaaaaaaaaaaaaaaaabObObObObObObObObRbRbRbRbRbRbRbRbRbRbRbR -"} +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/space, +/area/tether_away/debrisfield/explored) +"ab" = ( +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ac" = ( +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"ad" = ( +/turf/simulated/wall/r_wall, +/area/tether_away/debrisfield/explored) +"ae" = ( +/turf/simulated/wall, +/area/tether_away/debrisfield/explored) +"af" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8; + health = 1e+006 + }, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ag" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ah" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ai" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 8; + health = 1e+006 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"aj" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ak" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/space, +/area/tether_away/debrisfield/explored) +"al" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/bluegrid, +/area/tether_away/debrisfield/explored) +"am" = ( +/obj/effect/map_effect/interval/effect_emitter/sparks/frequent, +/obj/effect/map_effect/interval/effect_emitter/smoke, +/obj/structure/door_assembly/door_assembly_alien, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"an" = ( +/obj/effect/map_effect/interval/effect_emitter/sparks/frequent, +/obj/structure/door_assembly/door_assembly_alien, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ao" = ( +/obj/structure/catwalk, +/turf/space, +/area/tether_away/debrisfield/explored) +"ap" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "burst_l"; + dir = 1 + }, +/turf/space, +/area/tether_away/debrisfield/explored) +"aq" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "burst_l"; + dir = 8 + }, +/turf/space, +/area/tether_away/debrisfield/explored) +"ar" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "burst_l"; + dir = 4 + }, +/turf/space, +/area/tether_away/debrisfield/explored) +"as" = ( +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"at" = ( +/obj/structure/shuttle/engine/heater, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"au" = ( +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"av" = ( +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"aw" = ( +/turf/simulated/floor/tiled/monotile, +/area/tether_away/debrisfield/explored) +"ax" = ( +/turf/simulated/floor/tiled/monofloor, +/area/tether_away/debrisfield/explored) +"ay" = ( +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) +"az" = ( +/obj/item/weapon/grenade/empgrenade, +/obj/item/weapon/grenade/empgrenade, +/obj/item/weapon/grenade/empgrenade, +/turf/space, +/area/tether_away/debrisfield/explored) +"aA" = ( +/obj/structure/prop/prism, +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) +"aB" = ( +/obj/structure/prop/fake_ai, +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) +"aC" = ( +/turf/simulated/floor/tiled/steel_ridged, +/area/tether_away/debrisfield/explored) +"aD" = ( +/obj/effect/decal/remains/human, +/turf/simulated/floor/tiled/monotile, +/area/tether_away/debrisfield/explored) +"aE" = ( +/obj/effect/decal/remains/human, +/turf/simulated/floor/tiled/monofloor, +/area/tether_away/debrisfield/explored) +"aF" = ( +/mob/living/simple_mob/mechanical/infectionbot{ + faction = "derelict" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aG" = ( +/obj/structure/old_roboprinter, +/turf/simulated/floor/tiled/monofloor, +/area/tether_away/debrisfield/explored) +"aH" = ( +/obj/structure/old_roboprinter, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aI" = ( +/obj/structure/ghost_pod/manual/lost_drone/dogborg, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aJ" = ( +/obj/structure/ghost_pod/manual/lost_drone, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aK" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/turf/simulated/floor/tiled/monofloor, +/area/tether_away/debrisfield/explored) +"aL" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/mob/living/simple_mob/mechanical/corrupt_maint_drone{ + faction = "derelict" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aM" = ( +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"aN" = ( +/mob/living/simple_mob/mechanical/infectionbot{ + faction = "derelict" + }, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"aO" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/turf/simulated/floor/tiled/steel_ridged, +/area/tether_away/debrisfield/explored) +"aP" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aQ" = ( +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/power/apc{ + dir = 2; + name = "south bump"; + pixel_y = -24 + }, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"aR" = ( +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"aS" = ( +/mob/living/simple_mob/mechanical/infectionbot{ + faction = "derelict" + }, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"aT" = ( +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"aU" = ( +/obj/tether_away_spawner/debrisfield/derelict/mech_wizard, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"aV" = ( +/obj/structure/ghost_pod/manual/lost_drone/dogborg, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"aW" = ( +/obj/tether_away_spawner/debrisfield/derelict/mech_wizard, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"aX" = ( +/obj/effect/decal/remains/human, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"aY" = ( +/obj/structure/old_roboprinter, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"aZ" = ( +/obj/tether_away_spawner/debrisfield/derelict, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"ba" = ( +/obj/structure/prop/alien/computer/camera, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"bb" = ( +/obj/structure/prop/alien/computer, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"bc" = ( +/obj/structure/prop/alien/computer/camera/flipped, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"bd" = ( +/obj/structure/prop/alien/dispenser, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"be" = ( +/obj/structure/prop/alien/computer/camera, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bf" = ( +/obj/structure/prop/alien/power, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bg" = ( +/obj/structure/prop/alien/computer/camera/flipped, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bh" = ( +/obj/structure/prop/alien/pod, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bi" = ( +/obj/machinery/porta_turret/alien{ + faction = "derelict"; + use_power = 0 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bj" = ( +/obj/effect/map_effect/interval/effect_emitter/sparks/frequent, +/obj/structure/door_assembly/door_assembly_alien, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"bk" = ( +/obj/random/humanoidremains, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bl" = ( +/obj/machinery/implantchair, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"bm" = ( +/obj/machinery/dna_scannernew, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"bn" = ( +/obj/machinery/replicator, +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"bo" = ( +/obj/machinery/transhuman/synthprinter, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"bp" = ( +/obj/machinery/transhuman/resleever, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"bq" = ( +/obj/machinery/vr_sleeper/alien, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"br" = ( +/obj/machinery/auto_cloner, +/turf/simulated/floor/tiled/steel_ridged, +/area/tether_away/debrisfield/explored) +"bs" = ( +/obj/machinery/artifact, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bt" = ( +/obj/structure/prop/alien/power, +/obj/structure/cable{ + d2 = 2; + icon_state = "0-2"; + pixel_y = 0 + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bu" = ( +/obj/machinery/door/airlock/hatch{ + icon_state = "door_locked"; + id_tag = null; + locked = 1; + name = "AI Core"; + req_access = list(16) + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"bv" = ( +/obj/machinery/door/airlock/alien, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"bw" = ( +/obj/machinery/door/airlock/alien, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bx" = ( +/obj/machinery/door/airlock/alien/locked, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"by" = ( +/obj/machinery/door/airlock/alien, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"bz" = ( +/obj/machinery/door/airlock/alien, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bA" = ( +/obj/machinery/bomb_tester, +/turf/simulated/floor/tiled/steel_ridged, +/area/tether_away/debrisfield/explored) +"bB" = ( +/obj/random/humanoidremains, +/obj/item/weapon/gun/energy/ionrifle, +/turf/simulated/floor/tiled/steel_ridged, +/area/tether_away/debrisfield/explored) +"bC" = ( +/obj/structure/prop/alien/power, +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/bluegrid, +/area/tether_away/debrisfield/explored) +"bD" = ( +/obj/machinery/optable, +/obj/random/humanoidremains, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"bE" = ( +/obj/random/humanoidremains, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"bF" = ( +/obj/tether_away_spawner/debrisfield/derelict, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"bG" = ( +/obj/machinery/porta_turret/alien{ + faction = "derelict"; + use_power = 0 + }, +/turf/space, +/area/tether_away/debrisfield/explored) +"bH" = ( +/obj/random/tool/alien, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bI" = ( +/obj/random/energy, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bJ" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/turf/simulated/floor/tiled/monotile, +/area/tether_away/debrisfield/explored) +"bK" = ( +/obj/tether_away_spawner/debrisfield/derelict, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bL" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/mob/living/simple_mob/mechanical/corrupt_maint_drone{ + faction = "derelict" + }, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"bM" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/item/weapon/grenade/empgrenade, +/turf/simulated/floor/bluegrid, +/area/tether_away/debrisfield/explored) +"bN" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/bluegrid, +/area/tether_away/debrisfield/explored) +"bO" = ( +/turf/template_noop, +/area/tether_away/debrisfield/explored) +"bP" = ( +/obj/structure/old_roboprinter, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bQ" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bR" = ( +/turf/template_noop, +/area/tether_away/debrisfield/unexplored) +"bS" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bU" = ( +/obj/effect/step_trigger/message{ + name = "Extreme Danger Message"; + show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..." + }, +/obj/machinery/door/airlock/alien, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bV" = ( +/obj/effect/step_trigger/message{ + name = "Spine Shiver Message"; + show_messages = "A shiver runs down your spine. This place, this... ship is... unnatural. Alien. You shouldn't be here. You want to run." + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"bW" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bX" = ( +/obj/effect/step_trigger/message{ + name = "Extreme Danger Message"; + show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..." + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"bY" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/wall, +/area/tether_away/debrisfield/explored) +"bZ" = ( +/obj/effect/alien/egg, +/obj/effect/alien/weeds, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"ca" = ( +/obj/effect/decal/mecha_wreckage/gygax/adv, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cb" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"cc" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"cd" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"ce" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cf" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cg" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/bluegrid, +/area/tether_away/debrisfield/explored) +"ch" = ( +/obj/item/xenos_claw, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"ci" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cj" = ( +/obj/effect/step_trigger/message{ + name = "Extreme Danger Message"; + show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..." + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"ck" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cm" = ( +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 2; + name = "south bump"; + pixel_y = -24 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cn" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"co" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"cp" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"cq" = ( +/obj/random/humanoidremains, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cr" = ( +/obj/structure/prop/prism, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cs" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"ct" = ( +/obj/random/humanoidremains, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cu" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cv" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"cw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cx" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cy" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cz" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cA" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cB" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"cC" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"cD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cE" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cF" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cG" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"cH" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cI" = ( +/obj/random/humanoidremains, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cJ" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cK" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cL" = ( +/obj/effect/step_trigger/message{ + name = "Extreme Danger Message"; + show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..." + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cM" = ( +/obj/machinery/door/airlock/hatch{ + icon_state = "door_locked"; + id_tag = null; + locked = 1; + name = "AI Core"; + req_access = list(16) + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cN" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cO" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cP" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cQ" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cR" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + dir = 4; + name = "east bump"; + pixel_x = 28 + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cS" = ( +/obj/machinery/power/apc/hyper{ + pixel_y = 25 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) +"cT" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"cU" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cW" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"cX" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"cY" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"cZ" = ( +/obj/random/humanoidremains, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"da" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + dir = 4; + name = "east bump"; + pixel_x = 28 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"db" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"dc" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"dd" = ( +/obj/machinery/porta_turret/alien{ + faction = "derelict"; + use_power = 0 + }, +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) +"de" = ( +/obj/machinery/porta_turret/alien{ + faction = "derelict"; + use_power = 0 + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"df" = ( +/obj/item/weapon/gun/energy/ionrifle, +/turf/space, +/area/tether_away/debrisfield/explored) +"dg" = ( +/obj/machinery/door/airlock/alien/locked, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"dh" = ( +/obj/structure/prop/blackbox/xenofrigate, +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) + +(1,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(2,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(3,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(4,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +ap +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(5,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +ad +ad +ad +as +as +as +ae +as +as +as +bK +ae +bP +bP +ae +bK +as +as +as +as +ae +as +as +as +as +as +as +as +at +ae +ak +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(6,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +ad +ad +ad +be +as +as +ae +as +ae +as +as +ae +ae +ae +as +as +ae +ae +ae +as +as +as +ae +as +as +ae +ae +ae +ae +as +as +at +ae +ak +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(7,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +ad +ad +ad +bt +bT +bT +bY +bT +bT +bT +bT +bY +bT +bT +cb +bQ +as +as +as +as +ae +as +as +as +as +ae +bK +as +ae +as +as +at +ae +ak +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(8,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +ad +ad +ad +ae +ae +as +as +as +as +as +as +ae +cc +as +ae +as +as +ae +ae +as +as +as +as +ae +as +as +as +as +at +ae +ak +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(9,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +ap +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +cd +bz +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(10,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +cc +as +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(11,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +cc +as +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(12,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +cc +as +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(13,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +cc +as +ad +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bO +bO +bO +bO +bO +bO +bO +"} +(14,1,1) = {" +bO +bO +bO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ce +bv +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bO +bO +bO +bO +bO +bO +bO +"} +(15,1,1) = {" +bO +bO +bO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +bB +aC +ac +ac +ac +ac +ae +ac +ac +ac +aM +ae +cf +av +ae +aH +ac +ac +ac +ac +ac +ae +bn +aT +aC +aC +aO +ae +bh +ac +ac +ac +ac +aP +ad +ad +aa +aa +bO +bO +bO +bO +bO +bO +"} +(16,1,1) = {" +bO +bO +bO +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +aC +ae +ac +ae +bk +ac +ae +ac +bq +ae +aM +ae +cf +av +ae +ac +ac +ac +ac +ae +ac +ae +aT +aT +ae +ae +ae +ae +ae +ac +ae +ac +ac +ae +ad +ad +ad +aa +aa +bO +bO +bO +bO +bO +"} +(17,1,1) = {" +bO +bO +bO +aa +aa +aa +aa +aa +aa +ad +aw +aw +aw +aw +ac +ac +ax +ax +ax +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ac +ac +ac +ac +ae +ac +ac +ac +ac +ac +ac +aM +ae +cf +av +ae +aL +ac +ae +ac +ac +ac +ae +aT +cW +cF +cl +cl +cF +cl +cl +cl +cZ +cD +bX +bu +ab +ad +ad +aa +aa +bO +bO +bO +bO +"} +(18,1,1) = {" +bO +bO +aa +aa +aa +aa +aa +aa +aa +ad +aw +aw +ae +ae +ac +ac +ae +ae +ax +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ac +ae +ac +ac +ac +ac +ac +bk +ae +ae +ae +aM +ae +cf +av +ae +ae +ac +ae +ae +ac +ac +ae +aT +cX +ae +ac +bk +bw +ac +ac +ac +ac +da +ab +ad +ab +ab +ad +ad +aa +aa +bO +bO +bO +"} +(19,1,1) = {" +bO +bO +aa +aa +aa +aa +aa +aa +aa +ad +aD +aw +aw +ae +ac +ac +ae +ax +ax +ad +aa +aa +aa +ae +am +ae +aa +aa +aa +ad +ac +ac +ac +ae +ae +ae +ac +ac +ac +ac +ac +aM +ae +cf +av +ae +ac +ac +ac +ac +ac +ac +bw +aT +cX +ae +aC +aC +ae +ac +ae +ab +ab +ae +ab +ad +ab +ab +de +ad +ad +aa +aa +bO +bO +"} +(20,1,1) = {" +bO +bO +aa +aa +aa +aa +aa +aa +aa +ad +aw +bJ +aD +ae +ac +ac +ae +aE +aK +ad +aa +aa +aq +ae +bV +ae +aq +aa +aa +ad +bH +ac +ac +ae +bs +ac +ac +ae +ac +ac +ac +aM +ae +cf +av +ae +ac +cy +cl +cl +cl +cl +cF +cG +cY +ae +aO +aC +ae +aJ +ae +ab +ab +ae +aV +ad +ay +ay +ay +dd +ad +ad +aa +aa +bO +"} +(21,1,1) = {" +bO +bO +aa +aa +af +ai +ai +ai +ai +ad +ae +ae +ae +ae +bw +bw +ae +ae +ae +ad +aa +aa +ae +ae +an +ae +ae +aa +aa +ad +ae +ae +bw +ae +ac +ac +ac +ac +ac +ae +ac +aM +ae +cf +av +ae +bw +cA +ae +ae +ae +ae +ae +ad +ad +ad +ad +ad +ad +ad +ad +dg +dg +ad +ad +ad +ay +ay +ay +ay +dd +ad +ad +aa +aa +"} +(22,1,1) = {" +bO +bO +aa +aa +ag +ba +au +au +au +bx +av +av +av +av +av +av +av +av +av +ad +aa +aa +ae +ab +ab +ab +ae +aa +aa +ad +bI +ac +ac +ae +ae +ae +ae +ac +ac +bs +ae +aZ +ae +cf +av +ae +ac +cJ +cD +ac +ac +cr +bi +ad +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ad +ay +ay +ay +ay +ay +dd +ad +ad +aa +"} +(23,1,1) = {" +bO +bO +aa +aa +ag +bb +au +au +au +bx +av +av +av +av +av +av +av +av +av +ad +ad +bG +ae +ca +ab +ab +ae +bG +ad +ad +bk +ac +ac +ae +aN +aM +aM +aM +aM +aM +aZ +ae +ae +cf +av +ae +bi +ac +cJ +cl +cl +cD +ac +ad +ao +aa +aa +aa +aa +aa +aa +aa +aa +aa +ao +ad +ay +ay +ay +ay +ay +ay +dd +ad +aa +"} +(24,1,1) = {" +bO +bO +aa +aa +ag +bd +au +au +au +ae +ae +ae +ae +ae +bv +bv +ae +ae +ae +ae +ad +ad +ae +ae +bU +ae +ae +ad +ad +ad +ae +bw +bw +ae +ae +ae +ae +ae +ae +ae +ae +ae +ae +bv +bv +ae +ae +ae +ae +ae +ae +cz +ac +ad +ao +aa +aa +aa +aa +aa +aa +aa +aa +aa +ao +ad +ay +ay +aA +aA +ay +ay +ay +ad +aa +"} +(25,1,1) = {" +bO +bO +aa +aa +ag +bb +au +bF +aQ +ae +al +bM +bN +bw +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +db +ch +ci +cw +ci +ci +cj +ck +cV +cm +ad +ao +aa +aa +aa +df +az +az +aa +aa +aa +ao +ad +ay +ay +dh +aB +ay +ay +dd +ad +aa +"} +(26,1,1) = {" +bO +bO +aa +aa +ag +bb +au +au +cT +bY +bC +cg +bN +cF +ci +ci +ci +ci +ci +ci +cq +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +cU +ci +ci +ci +ci +ci +ci +dc +ci +ci +cx +ci +ci +cj +ck +cl +cD +ad +ao +aa +aa +aa +aa +az +az +aa +aa +aa +ao +ad +ay +ay +dh +aB +ay +ay +dd +ad +aa +"} +(27,1,1) = {" +bO +bO +aa +aa +ag +bd +au +au +au +ae +ae +ae +ae +ae +bv +bv +ae +ae +ae +ae +ad +ad +ae +ae +bU +ae +ae +ad +ad +ad +ae +bw +bw +ae +ae +ae +ae +ae +ae +ae +ae +ae +ae +bj +bv +ae +ae +ae +ae +ae +ae +bk +cz +ad +ao +aa +aa +aa +aa +aa +aa +aa +aa +aa +ao +ad +ay +ay +aA +aA +ay +ay +ay +ad +aa +"} +(28,1,1) = {" +bO +bO +aa +aa +ag +bb +au +au +au +bx +av +av +av +av +av +av +av +av +av +ad +ad +bG +ae +ca +ab +ab +ae +bG +ad +ad +aF +ac +bk +ac +ac +ac +ac +bH +ae +bL +aY +aY +ae +cs +av +ae +bi +cy +cl +cl +cl +cl +cE +ad +ao +aa +aa +aa +aa +aa +aa +aa +aa +aa +ao +ad +ay +ay +ay +ay +ay +ay +dd +ad +aa +"} +(29,1,1) = {" +bO +bO +aa +aa +ag +bc +au +au +au +bx +av +av +av +av +av +av +av +av +av +ad +aa +aa +ae +ab +ab +ab +ae +aa +aa +ad +aF +ac +ac +ac +ac +ac +ac +ac +ae +aX +aM +aM +ae +cs +av +ae +ac +cz +ac +ac +ac +cr +bi +ad +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ad +ay +ay +ay +ay +ay +dd +ad +ad +aa +"} +(30,1,1) = {" +bO +bO +aa +aa +ah +aj +aj +aj +aj +ad +ae +ae +ae +ae +bw +bw +ae +ae +ae +ad +aa +aa +ae +ae +by +ae +ae +aa +aa +ad +ae +ae +ae +ae +ae +ae +ac +ac +ac +aM +bL +bL +ae +cs +av +ae +bw +cA +ae +ae +ae +ae +ae +ad +ad +ad +ad +ad +ad +ad +ad +dg +dg +ad +ad +ad +ay +ay +ay +ay +dd +ad +ad +aa +aa +"} +(31,1,1) = {" +bO +bO +aa +aa +aa +aa +aa +aa +aa +ad +aD +aw +aw +ae +ac +ac +ae +aG +aG +ad +aa +aa +ar +ae +bV +ae +ar +aa +aa +ad +bH +ac +ac +ac +bH +ae +ac +ac +ae +ae +ae +ae +ae +cs +av +ae +aR +cB +cC +cC +cC +cC +cF +cG +cG +cl +cD +bZ +ae +ac +ac +ac +ac +ac +bs +ad +cS +ay +ay +dd +ad +ad +aa +aa +bO +"} +(32,1,1) = {" +bO +bO +aa +aa +aa +aa +aa +aa +aa +ad +aw +aw +aD +ae +ac +ac +ae +ax +ax +ad +aa +aa +aa +ae +by +ae +aa +aa +aa +ad +ac +ac +ae +ac +ac +ac +bk +ac +ac +ac +ac +ac +ae +cs +av +ae +aR +aR +aR +aR +aR +aR +bw +aT +aT +ac +cH +ac +ae +ac +bk +ac +ac +ac +ac +ad +cN +ab +de +ad +ad +aa +aa +bO +bO +"} +(33,1,1) = {" +bO +bO +aa +aa +aa +aa +aa +aa +aa +ad +aw +aw +ae +ae +ac +ac +ae +aK +aK +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ae +ct +av +ae +aR +ae +bD +ae +bE +aR +ae +aT +aT +ae +cI +cl +cF +cl +cD +ae +ae +ae +ae +ad +cN +ab +ad +ad +aa +aa +bO +bO +bO +"} +(34,1,1) = {" +bO +bO +bO +aa +aa +aa +aa +aa +aa +ad +aw +aw +aw +aw +ac +ac +ax +ax +ax +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ac +ac +ae +ac +ac +ae +ae +ae +ae +ae +ac +ae +ae +cs +av +ae +aR +aS +ae +aS +aR +aR +ae +aT +aT +ae +ae +ae +ae +ac +cJ +cF +cK +cP +cL +cM +cO +ad +ad +aa +aa +bO +bO +bO +bO +"} +(35,1,1) = {" +bO +bO +bO +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +aC +ae +aM +aM +aM +aM +aM +bo +ae +aC +aC +ae +cs +av +ae +aR +aR +aR +aR +ae +aR +ae +aT +aT +aC +aC +aO +ae +ac +ac +ae +ab +cQ +ab +ad +ad +ad +aa +aa +bO +bO +bO +bO +bO +"} +(36,1,1) = {" +bO +bO +bO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +bA +ae +bp +aM +aM +aM +aM +aW +ae +aC +br +ae +cs +av +ae +bl +bm +aR +aR +aR +aS +ae +bn +aT +aC +aC +aO +ae +aI +ac +ae +ab +cR +aU +ad +ad +aa +aa +bO +bO +bO +bO +bO +bO +"} +(37,1,1) = {" +bO +bO +bO +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +cu +bv +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bO +bO +bO +bO +bO +bO +bO +"} +(38,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +bW +as +ad +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bO +bO +bO +bO +bO +bO +bO +bO +"} +(39,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +bW +as +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(40,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +bW +as +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(41,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +bW +as +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(42,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +ap +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +cv +bz +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(43,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +ad +ad +ad +bS +bT +bT +bT +bT +co +ae +bS +bT +cn +as +as +as +ae +bK +as +as +as +as +as +bK +ae +as +as +as +at +ae +ak +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(44,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +ad +ad +ad +bf +as +bW +as +as +ae +as +bW +ae +bW +ae +as +as +ae +as +ae +ae +ae +as +as +as +ae +ae +ae +as +ae +as +as +at +ae +ak +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(45,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +ad +ad +ad +bg +bT +cn +ae +as +ae +as +bW +ae +bW +ae +as +as +ae +as +as +as +as +as +ae +as +as +as +as +as +ae +as +as +at +ae +ak +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(46,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +ad +ad +ad +bK +ae +as +as +as +cp +bT +cn +ae +bQ +bQ +ae +as +as +as +as +as +ae +as +as +as +as +as +ae +as +at +ae +ak +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(47,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +ap +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(48,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(49,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(50,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bO +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} From 7f71c276b3f34bed360667315bdb63277eac07fb Mon Sep 17 00:00:00 2001 From: Atermonera Date: Sun, 29 Sep 2019 18:18:08 -0800 Subject: [PATCH 05/69] Merge pull request #6464 from Heroman3003/telemaster Makes telecomm machinery constructible/deconstructible like normal machines --- code/game/machinery/telecomms/broadcaster.dm | 12 ++- .../telecomms/machine_interactions.dm | 75 +-------------- .../machinery/telecomms/telecomunications.dm | 94 +++++++++++++++---- 3 files changed, 91 insertions(+), 90 deletions(-) diff --git a/code/game/machinery/telecomms/broadcaster.dm b/code/game/machinery/telecomms/broadcaster.dm index cd65fb9f91..8f6e8e589e 100644 --- a/code/game/machinery/telecomms/broadcaster.dm +++ b/code/game/machinery/telecomms/broadcaster.dm @@ -22,7 +22,17 @@ var/message_delay = 0 // To make sure restarting the recentmessages list is kept machinetype = 5 produces_heat = 0 delay = 7 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/broadcaster" + circuit = /obj/item/weapon/circuitboard/telecomms/broadcaster + +/obj/machinery/telecomms/processor/Initialize() + . = ..() + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/subspace/sub_filter(src) + component_parts += new /obj/item/weapon/stock_parts/subspace/crystal(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/weapon/stock_parts/micro_laser/high(src) + component_parts += new /obj/item/stack/cable_coil(src, 1) /obj/machinery/telecomms/broadcaster/receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from) // Don't broadcast rejected signals diff --git a/code/game/machinery/telecomms/machine_interactions.dm b/code/game/machinery/telecomms/machine_interactions.dm index 331f5644d9..d41104df25 100644 --- a/code/game/machinery/telecomms/machine_interactions.dm +++ b/code/game/machinery/telecomms/machine_interactions.dm @@ -12,7 +12,6 @@ /obj/machinery/telecomms var/temp = "" // output message - var/construct_op = 0 /obj/machinery/telecomms/attackby(obj/item/P as obj, mob/user as mob) @@ -21,7 +20,6 @@ if(istype(P, /obj/item/device/multitool)) attack_hand(user) - // REPAIRING: Use Nanopaste to repair 10-20 integrity points. if(istype(P, /obj/item/stack/nanopaste)) var/obj/item/stack/nanopaste/T = P @@ -34,75 +32,10 @@ return - switch(construct_op) - if(0) - if(P.is_screwdriver()) - to_chat(user, "You unfasten the bolts.") - playsound(src.loc, P.usesound, 50, 1) - construct_op ++ - if(1) - if(P.is_screwdriver()) - to_chat(user, "You fasten the bolts.") - playsound(src.loc, P.usesound, 50, 1) - construct_op -- - if(P.is_wrench()) - to_chat(user, "You dislodge the external plating.") - playsound(src.loc, P.usesound, 75, 1) - construct_op ++ - if(2) - if(P.is_wrench()) - to_chat(user, "You secure the external plating.") - playsound(src.loc, P.usesound, 75, 1) - construct_op -- - if(P.is_wirecutter()) - playsound(src.loc, P.usesound, 50, 1) - to_chat(user, "You remove the cables.") - construct_op ++ - var/obj/item/stack/cable_coil/A = new /obj/item/stack/cable_coil( user.loc ) - A.amount = 5 - stat |= BROKEN // the machine's been borked! - if(3) - if(istype(P, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/A = P - if (A.use(5)) - to_chat(user, "You insert the cables.") - construct_op-- - stat &= ~BROKEN // the machine's not borked anymore! - else - to_chat(user, "You need five coils of wire for this.") - if(P.is_crowbar()) - to_chat(user, "You begin prying out the circuit board other components...") - playsound(src.loc, P.usesound, 50, 1) - if(do_after(user,60 * P.toolspeed)) - to_chat(user, "You finish prying out the components.") - - // Drop all the component stuff - if(contents.len > 0) - for(var/obj/x in src) - x.loc = user.loc - else - - // If the machine wasn't made during runtime, probably doesn't have components: - // manually find the components and drop them! - var/newpath = text2path(circuitboard) - var/obj/item/weapon/circuitboard/C = new newpath - for(var/I in C.req_components) - for(var/i = 1, i <= C.req_components[I], i++) - newpath = text2path(I) - var/obj/item/s = new newpath - s.loc = user.loc - if(istype(P, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/A = P - A.amount = 1 - - // Drop a circuit board too - C.loc = user.loc - - // Create a frame and delete the current machine - var/obj/structure/frame/F = new - F.loc = src.loc - qdel(src) - + if(default_deconstruction_screwdriver(user, P)) + return + if(default_deconstruction_crowbar(user, P)) + return /obj/machinery/telecomms/attack_ai(var/mob/user as mob) attack_hand(user) diff --git a/code/game/machinery/telecomms/telecomunications.dm b/code/game/machinery/telecomms/telecomunications.dm index 50e2f504c9..d6cefb6828 100644 --- a/code/game/machinery/telecomms/telecomunications.dm +++ b/code/game/machinery/telecomms/telecomunications.dm @@ -32,7 +32,6 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list() var/produces_heat = 1 //whether the machine will produce heat when on. var/delay = 10 // how many process() ticks to delay per heat var/long_range_link = 0 // Can you link it across Z levels or on the otherside of the map? (Relay & Hub) - var/circuitboard = null // string pointing to a circuitboard type var/hide = 0 // Is it a hidden machine? var/listening_level = 0 // 0 = auto set in New() - this is the z level that the machine is listening to. @@ -256,7 +255,17 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list() idle_power_usage = 600 machinetype = 1 produces_heat = 0 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/receiver" + circuit = /obj/item/weapon/circuitboard/telecomms/receiver + +/obj/machinery/telecomms/receiver/Initialize() + . = ..() + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/subspace/ansible(src) + component_parts += new /obj/item/weapon/stock_parts/subspace/sub_filter(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/weapon/stock_parts/micro_laser(src) + RefreshParts() /obj/machinery/telecomms/receiver/receive_signal(datum/signal/signal) @@ -312,7 +321,7 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list() use_power = 1 idle_power_usage = 1600 machinetype = 7 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/hub" + circuit = /obj/item/weapon/circuitboard/telecomms/hub long_range_link = 1 netspeed = 40 var/list/telecomms_map @@ -320,6 +329,13 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list() /obj/machinery/telecomms/hub/Initialize() . = ..() LAZYINITLIST(telecomms_map) + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/subspace/sub_filter(src) + component_parts += new /obj/item/weapon/stock_parts/subspace/sub_filter(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/stack/cable_coil(src, 2) + RefreshParts() /obj/machinery/telecomms/hub/process() . = ..() @@ -365,12 +381,22 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list() idle_power_usage = 600 machinetype = 8 produces_heat = 0 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/relay" + circuit = /obj/item/weapon/circuitboard/telecomms/relay netspeed = 5 long_range_link = 1 var/broadcasting = 1 var/receiving = 1 +/obj/machinery/telecomms/relay/Initialize() + . = ..() + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/subspace/sub_filter(src) + component_parts += new /obj/item/weapon/stock_parts/subspace/sub_filter(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/stack/cable_coil(src, 2) + RefreshParts() + /obj/machinery/telecomms/relay/forceMove(var/newloc) . = ..(newloc) listening_level = z @@ -420,10 +446,19 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list() use_power = 1 idle_power_usage = 1000 machinetype = 2 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/bus" + circuit = /obj/item/weapon/circuitboard/telecomms/bus netspeed = 40 var/change_frequency = 0 +/obj/machinery/telecomms/bus/Initialize() + . = ..() + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/subspace/sub_filter(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/stack/cable_coil(src, 1) + RefreshParts() + /obj/machinery/telecomms/bus/receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from) if(is_freq_listening(signal)) @@ -473,23 +508,37 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list() idle_power_usage = 600 machinetype = 3 delay = 5 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/processor" + circuit = /obj/item/weapon/circuitboard/telecomms/processor var/process_mode = 1 // 1 = Uncompress Signals, 0 = Compress Signals - receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from) +/obj/machinery/telecomms/processor/Initialize() + . = ..() + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/subspace/sub_filter(src) + component_parts += new /obj/item/weapon/stock_parts/subspace/treatment(src) + component_parts += new /obj/item/weapon/stock_parts/subspace/treatment(src) + component_parts += new /obj/item/weapon/stock_parts/subspace/amplifier(src) + component_parts += new /obj/item/weapon/stock_parts/subspace/analyzer(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/stack/cable_coil(src, 2) + RefreshParts() - if(is_freq_listening(signal)) +/obj/machinery/telecomms/processor/receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from) - if(process_mode) - signal.data["compression"] = 0 // uncompress subspace signal - else - signal.data["compression"] = 100 // even more compressed signal + if(is_freq_listening(signal)) - if(istype(machine_from, /obj/machinery/telecomms/bus)) - relay_direct_information(signal, machine_from) // send the signal back to the machine - else // no bus detected - send the signal to servers instead - signal.data["slow"] += rand(5, 10) // slow the signal down - relay_information(signal, "/obj/machinery/telecomms/server") + if(process_mode) + signal.data["compression"] = 0 // uncompress subspace signal + else + signal.data["compression"] = 100 // even more compressed signal + + if(istype(machine_from, /obj/machinery/telecomms/bus)) + relay_direct_information(signal, machine_from) // send the signal back to the machine + else // no bus detected - send the signal to servers instead + signal.data["slow"] += rand(5, 10) // slow the signal down + relay_information(signal, "/obj/machinery/telecomms/server") /* @@ -510,7 +559,7 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list() use_power = 1 idle_power_usage = 300 machinetype = 4 - circuitboard = "/obj/item/weapon/circuitboard/telecomms/server" + circuit = /obj/item/weapon/circuitboard/telecomms/server var/list/log_entries = list() var/list/stored_names = list() var/list/TrafficActions = list() @@ -534,6 +583,15 @@ var/global/list/obj/machinery/telecomms/telecomms_list = list() Compiler.Holder = src server_radio = new() +/obj/machinery/telecomms/server/Initialize() + . = ..() + component_parts = list() + component_parts += new /obj/item/weapon/stock_parts/subspace/sub_filter(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/weapon/stock_parts/manipulator(src) + component_parts += new /obj/item/stack/cable_coil(src, 1) + RefreshParts() + /obj/machinery/telecomms/server/receive_information(datum/signal/signal, obj/machinery/telecomms/machine_from) if(signal.data["message"]) From 0ba3f037f54403f5289df19f2c9de427bbbe8c34 Mon Sep 17 00:00:00 2001 From: Unknown Date: Mon, 30 Sep 2019 20:11:49 -0400 Subject: [PATCH 07/69] Minor Event Stuff --- code/global_vr.dm | 2 ++ code/modules/multiz/structures_vr.dm | 19 +++++++++++++++++++ maps/submaps/shelters/shelter_4.dmm | 11 ++++++++--- maps/tether/tether-10-colony.dmm | 10 ++++++++++ maps/tether/tether_shuttles.dm | 2 ++ 5 files changed, 41 insertions(+), 3 deletions(-) diff --git a/code/global_vr.dm b/code/global_vr.dm index 355bcf7378..0f3212ff7a 100644 --- a/code/global_vr.dm +++ b/code/global_vr.dm @@ -10,6 +10,8 @@ var/list/shell_module_types = list( "Standard", "Service", "Clerical" ) +var/list/eventdestinations = list() // List of scatter landmarks for VOREStation event portals + var/global/list/acceptable_fruit_types= list( "ambrosia", "apple", diff --git a/code/modules/multiz/structures_vr.dm b/code/modules/multiz/structures_vr.dm index b66c148e3b..833d4ef346 100644 --- a/code/modules/multiz/structures_vr.dm +++ b/code/modules/multiz/structures_vr.dm @@ -55,3 +55,22 @@ do_noeffect_teleport(M, locate(rand(5, world.maxx - 5), rand(5, world.maxy -5), 3), 0) else do_noeffect_teleport(M, target, 1) ///You will appear adjacent to the beacon + +/obj/structure/portal_gateway + name = "portal" + desc = "Looks unstable. Best to test it with the clown." + icon = 'icons/obj/stationobjs.dmi' + icon_state = "portal" + density = 1 + unacidable = 1//Can't destroy energy portals. + anchored = 1 + +/obj/structure/portal_gateway/Bumped(mob/M as mob|obj) + if(istype(M,/mob) && !(istype(M,/mob/living))) + return //do not send ghosts, zshadows, ai eyes, etc + var/obj/effect/landmark/dest = pick(eventdestinations) + if(dest) + M << 'sound/effects/phasein.ogg' + playsound(src, 'sound/effects/phasein.ogg', 100, 1) + M.forceMove(dest.loc) + return diff --git a/maps/submaps/shelters/shelter_4.dmm b/maps/submaps/shelters/shelter_4.dmm index a0c0419103..3d0bd7f299 100644 --- a/maps/submaps/shelters/shelter_4.dmm +++ b/maps/submaps/shelters/shelter_4.dmm @@ -91,6 +91,10 @@ /obj/item/weapon/towel/random, /obj/item/weapon/towel/random, /obj/item/weapon/extinguisher/mini, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/glass/beaker/large, /turf/simulated/shuttle/floor/voidcraft/light, /area/survivalpod) "i" = ( @@ -403,16 +407,17 @@ /area/survivalpod) "R" = ( /obj/machinery/iv_drip, -/turf/simulated/shuttle/floor/voidcraft/light, -/area/survivalpod) -"S" = ( /obj/effect/floor_decal/industrial/loading{ dir = 1 }, +/turf/simulated/shuttle/floor/voidcraft/light, +/area/survivalpod) +"S" = ( /obj/machinery/light{ icon_state = "tube1"; dir = 4 }, +/obj/machinery/chemical_dispenser/ert, /turf/simulated/shuttle/floor/voidcraft/light, /area/survivalpod) "T" = ( diff --git a/maps/tether/tether-10-colony.dmm b/maps/tether/tether-10-colony.dmm index 6b701f3a56..98f06d80fa 100644 --- a/maps/tether/tether-10-colony.dmm +++ b/maps/tether/tether-10-colony.dmm @@ -892,6 +892,11 @@ /obj/item/weapon/rig/ert/assetprotection, /obj/item/weapon/rig/ert/assetprotection, /obj/item/weapon/rig/ert/assetprotection, +/obj/item/clothing/glasses/thermal, +/obj/item/clothing/glasses/thermal, +/obj/item/clothing/glasses/thermal, +/obj/item/clothing/glasses/thermal, +/obj/item/clothing/glasses/thermal, /turf/unsimulated/floor{ icon_state = "dark" }, @@ -1365,6 +1370,10 @@ pixel_x = 1; pixel_y = 9 }, +/obj/item/clothing/glasses/graviton, +/obj/item/clothing/glasses/graviton, +/obj/item/clothing/glasses/graviton, +/obj/item/clothing/glasses/graviton, /turf/unsimulated/floor{ icon_state = "dark" }, @@ -1525,6 +1534,7 @@ /obj/item/clothing/mask/gas, /obj/item/clothing/mask/gas, /obj/effect/floor_decal/industrial/outline/blue, +/obj/item/weapon/storage/box/traumainjectors, /turf/unsimulated/floor{ icon_state = "dark" }, diff --git a/maps/tether/tether_shuttles.dm b/maps/tether/tether_shuttles.dm index 568a97c1d8..de4368e73e 100644 --- a/maps/tether/tether_shuttles.dm +++ b/maps/tether/tether_shuttles.dm @@ -300,6 +300,8 @@ docking_controller_tag = "specops_shuttle_hatch" web_master_type = /datum/shuttle_web_master/specialops can_rename = FALSE + can_cloak = TRUE + cloaked = FALSE /datum/shuttle_web_master/specialops destination_class = /datum/shuttle_destination/specialops From 44dec4048dfe4bfc15425fa0fd68c6fade808e36 Mon Sep 17 00:00:00 2001 From: Unknown Date: Mon, 30 Sep 2019 20:13:44 -0400 Subject: [PATCH 08/69] Updates Survival Box Contents --- maps/submaps/shelters/shelter_4.dmm | 4 +++- maps/tether/tether-10-colony.dmm | 24 ++++++++++++++++++------ 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/maps/submaps/shelters/shelter_4.dmm b/maps/submaps/shelters/shelter_4.dmm index 3d0bd7f299..c5fbcb5007 100644 --- a/maps/submaps/shelters/shelter_4.dmm +++ b/maps/submaps/shelters/shelter_4.dmm @@ -241,7 +241,9 @@ /obj/item/weapon/gun/projectile/pistol, /obj/item/clothing/accessory/storage/black_vest, /obj/item/weapon/material/knife/tacknife/survival, -/obj/item/weapon/storage/box/survival/comp, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, /turf/simulated/floor/carpet/bcarpet, /area/survivalpod) "C" = ( diff --git a/maps/tether/tether-10-colony.dmm b/maps/tether/tether-10-colony.dmm index 98f06d80fa..b28f538ceb 100644 --- a/maps/tether/tether-10-colony.dmm +++ b/maps/tether/tether-10-colony.dmm @@ -16608,12 +16608,24 @@ /area/centcom/control) "Fo" = ( /obj/structure/table/reinforced, -/obj/item/weapon/storage/box/survival/comp, -/obj/item/weapon/storage/box/survival/comp, -/obj/item/weapon/storage/box/survival/comp, -/obj/item/weapon/storage/box/survival/comp, -/obj/item/weapon/storage/box/survival/comp, -/obj/item/weapon/storage/box/survival/comp, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, +/obj/item/weapon/storage/box/survival/comp{ + starts_with = list(/obj/item/weapon/tool/prybar/red,/obj/item/clothing/glasses/goggles,/obj/item/weapon/reagent_containers/hypospray/autoinjector,/obj/item/stack/medical/bruise_pack,/obj/item/device/flashlight/glowstick,/obj/item/weapon/reagent_containers/food/snacks/candy/proteinbar,/obj/item/clothing/mask/breath,/obj/item/weapon/tank/emergency/oxygen/engi) + }, /turf/unsimulated/floor{ icon_state = "dark" }, From f7d996217d89e8f73a5bfe34115cb41ea1cf87fd Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Tue, 1 Oct 2019 02:18:22 -0400 Subject: [PATCH 09/69] Update _templates.dm --- maps/tether/submaps/space/pois/_templates.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/maps/tether/submaps/space/pois/_templates.dm b/maps/tether/submaps/space/pois/_templates.dm index 20784ca038..33fcab8398 100644 --- a/maps/tether/submaps/space/pois/_templates.dm +++ b/maps/tether/submaps/space/pois/_templates.dm @@ -102,4 +102,5 @@ name = "Alien Derelict" mappath = 'derelict.dmm' cost = 35 - allow_duplicates = FALSE \ No newline at end of file + allow_duplicates = FALSE + discard_prob = 50 From e4abffb8a4ce26f89fae651d3a73679003c63818 Mon Sep 17 00:00:00 2001 From: Atermonera Date: Mon, 30 Sep 2019 22:37:10 -0800 Subject: [PATCH 10/69] Merge pull request #6469 from Verkister/patch-23 Fixes runtime cascade on advanced locator circuit --- code/modules/integrated_electronics/subtypes/input.dm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/code/modules/integrated_electronics/subtypes/input.dm b/code/modules/integrated_electronics/subtypes/input.dm index e3fcb5d985..4ac81ea4cc 100644 --- a/code/modules/integrated_electronics/subtypes/input.dm +++ b/code/modules/integrated_electronics/subtypes/input.dm @@ -308,11 +308,12 @@ var/list/valid_things = list() if(isweakref(I.data)) var/atom/A = I.data.resolve() - var/desired_type = A.type - if(desired_type) - for(var/atom/thing in nearby_things) - if(thing.type == desired_type) - valid_things.Add(thing) + if(A) + var/desired_type = A.type + if(desired_type) + for(var/atom/thing in nearby_things) + if(thing.type == desired_type) + valid_things.Add(thing) else if(istext(I.data)) var/DT = I.data for(var/atom/thing in nearby_things) From a0500afe7cefaab62f165ea2c371aed0a8740f37 Mon Sep 17 00:00:00 2001 From: gozulio Date: Tue, 1 Oct 2019 02:44:38 -0400 Subject: [PATCH 12/69] Ad Jessie's white cane item --- .../loadout/loadout_fluffitems_yw.dm | 17 +++++ .../vore/fluffstuff/custom_items_yw.dm | 60 ++++++++++++++++++ icons/vore/custom_items_left_hand_yw.dmi | Bin 675 -> 806 bytes icons/vore/custom_items_right_hand_yw.dmi | Bin 661 -> 802 bytes icons/vore/custom_items_yw.dmi | Bin 23113 -> 23810 bytes 5 files changed, 77 insertions(+) diff --git a/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm b/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm index cc64e7dfe0..9c9c5a61e3 100644 --- a/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm +++ b/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm @@ -449,6 +449,23 @@ ckeywhitelist = list("generalpantsu") character_name = list("Samantha Quzix") +//Gozulio +//Glitterpaws +/datum/gear/fluff/goz_whitecane_j + path = /obj/item/weapon/melee/goz_whitecane + display_name = "Telescopic White Cane" + description = "A telescoping white cane. They are commonly used by the blind or visually impaired as a mobility tool or as a courtesy to others." + ckeywhitelist = list("gozulio") + character_name = list("Jessie Glitterpaws") + +/datum/gear/fluff/goz_whitecane_e + path = /obj/item/weapon/melee/goz_whitecane + display_name = "Telescopic White Cane" + description = "A telescoping white cane. They are commonly used by the blind or visually impaired as a mobility tool or as a courtesy to others." + ckeywhitelist = list("gozulio") + character_name = list("Eira Glitterpaws") + + // H CKEYS //harpsong diff --git a/code/modules/vore/fluffstuff/custom_items_yw.dm b/code/modules/vore/fluffstuff/custom_items_yw.dm index 3534cc1e22..6c9e2d628b 100644 --- a/code/modules/vore/fluffstuff/custom_items_yw.dm +++ b/code/modules/vore/fluffstuff/custom_items_yw.dm @@ -133,6 +133,66 @@ from_suit = /obj/item/clothing/suit/storage/vest/officer to_suit = /obj/item/clothing/suit/storage/vest/officer/fluff/nika +// ******* +// Gozulio +// ******* + +//Glitterpaws +/obj/item/weapon/melee/goz_whitecane + name = "white cane" + desc = "A telescoping white cane. They are commonly used by the blind or visually impaired as a mobility tool or as a courtesy to others." + icon = 'icons/vore/custom_items_yw.dmi' + icon_state = "goz_whitecane_0" + item_icons = list( + slot_l_hand_str = 'icons/vore/custom_items_left_hand_yw.dmi', + slot_r_hand_str = 'icons/vore/custom_items_right_hand_yw.dmi', + ) + slot_flags = SLOT_BELT + w_class = ITEMSIZE_SMALL + force = 3 + var/on = 0 + +/obj/item/weapon/melee/goz_whitecane/attack_self(mob/user as mob) + on = !on + if(on) + user.visible_message("\The [user] extends the white cane.",\ + "You extend the white cane.",\ + "You hear an ominous click.") + icon_state = "goz_whitecane_1" + item_state_slots = list(slot_r_hand_str = "goz_whitecane", slot_l_hand_str = "goz_whitecane") + w_class = ITEMSIZE_NORMAL + force = 5 + attack_verb = list("smacked", "struck", "craked", "beaten", "tripped") + else + user.visible_message("\The [user] collapses the white cane.",\ + "You collapse the white cane.",\ + "You hear a click.") + icon_state = "goz_whitecane_0" + item_state_slots = list(slot_r_hand_str = null, slot_l_hand_str = null) + w_class = ITEMSIZE_SMALL + force = 3 + attack_verb = list("hit", "poked") + + if(istype(user,/mob/living/carbon/human)) + var/mob/living/carbon/human/H = user + H.update_inv_l_hand() + H.update_inv_r_hand() + + playsound(src.loc, 'sound/weapons/empty.ogg', 50, 1) + add_fingerprint(user) + + if(blood_overlay && blood_DNA && (blood_DNA.len >= 1)) //updates blood overlay, if any + overlays.Cut()//this might delete other item overlays as well but eeeeeeeh + + var/icon/I = new /icon(src.icon, src.icon_state) + I.Blend(new /icon('icons/effects/blood.dmi', rgb(255,255,255)),ICON_ADD) + I.Blend(new /icon('icons/effects/blood.dmi', "itemblood"),ICON_MULTIPLY) + blood_overlay = I + + overlays += blood_overlay + + return + // ******* // Dawidoe // ******* diff --git a/icons/vore/custom_items_left_hand_yw.dmi b/icons/vore/custom_items_left_hand_yw.dmi index fa31013589c4cccb860733b6fc390efe593bd08a..b028e1e264c875916fbf721fee3dc110d3672862 100644 GIT binary patch delta 688 zcmZ3?x{R&9Gr-TCmrII^fq{Y7)59eQNG|~51`cK*xqI&05O8($&Gh#9Wn24SeXZ1TWe#m_ z>7{e4>nwr~-J6pz%Pbt^dJy>0obgC~GW7 zxr=9?6MWNFKQ+uLK+U6kuK1$c>n2zJKEaatwtY?bkwuIUV;C4V9DJF`_~%*HmlT5erS(hC-g^o-n+2>);2Q z*u`z`T;C?oS{w7BXz!jY+7;FgK_5&DdyVJMO8#~7eBb_hmHasq_OgWLr-hv7y6OAj zy7s&B4GUi73s~QiG`jQi(wolef2u3r{O5x>$3Zt|T9Ng#mZq0ZeUp_YZQ+vRp7`W! zir0=?zaMZ`-hLjWS7;HY8+7%a`uX$nGrV_hxtLMx9#WlSpP!=l)P=?QYFyiVYm@0k znavlo45Qwr{;dDmmRxizW=~X1SatU+^~>iax77YR-t+$tchl8-;p^sGdrghi3)w2M z;v3f=8|O_ExT{&@KCa&T=J#y-bCs&lF#0gxW7UEgwo`RD{p(iD54wL;`rX-MjIuR# z%1_FF9-8OC=Cp{*-f6MW{uLgkb%Im7{xmI(3p}rW-fOv$?Eb5~YhV2fJIa6GS*WLU RYJoDyOix!omvv4FO#pp1C}RKs delta 557 zcmZ3+wwSfPGr-TCmrII^fq{Y7)59eQNH>5m2Q!fT@?hdmAY~um6XNPlHfw2V{lCtj#pmhduiezNdOr7!c!rgk_J2<=dGZaYu-wzd zF{EP7+v#tMnhXS7g@v-ErJZkoufNXrBIL8;DT}*ETAy&9&Y5;{D!7uU~h%+JEPaTIcnU>q1wZJ!8_v_Zkk` zzie4O_6VozzE=DY!z5oGcmLyb0kB~<99Q?}wAt*b{Wj&vOtY60Sd;zcUz_*$n^vLZ zr1JqbF`9kHqFx_9_xW0j^CE`@_w*h-)2Wx{+QHVC@HDLPWA-0E7B{`dr%WzPU(yu< z&If4s9XtE8Y}aJ_hZEEi%DFhw{|US+3UdE1b?#N(--^9fyI+{z)f8HlFDQ_wC^<>C z>;0X(cUQj@4K67Mxu#)y`^x0?$DXgUPp?__tN0m^vD#tXug}~rSLa76to?U}ZTc(! qeAQXoRl@(y#TH?tn`xhtmZ5IlvebD;__K>HmpUXO@geCwXkMcVJ diff --git a/icons/vore/custom_items_right_hand_yw.dmi b/icons/vore/custom_items_right_hand_yw.dmi index d5e70167e855e8e726cb9c017d9d230eb11e757a..f2a517fe9f6563acaaba3c799f4c2b7c23b1c0c0 100644 GIT binary patch delta 684 zcmbQrx`?g5Gr-TCmrII^fq{Y7)59eQNG|~51`cK*xqI&a&qzk0%;jVMMXn?0R{%+ z|NqbYXD|jD0yHnYG<6q{Vk`;r;|gYQcy=QV$eTT}wx!-VBDbn8w5HN6%~Q*6@>J27 zzcB|E0^M=Uk5!nBV?Mkcv5PXWaBVY#`wJR>w4;eOl6^Xd zlC6+y*KyWJd%I5{W!>}x=5rTresA^3)u!XJ!!OQdDm06 zzn(88r+igUwH3S1nr3P0YD)0&d%K8Y!<3U;;$G&t;k$Hk>I zt7H3|1q ztC@;&dnf&^>CXAzFXaez$ARR@B94;9t2U|d*k3unbN*S@?`}IC+3)Y?{206MMR%QE zlZ$9wlbdSY8V}RD9xvCr6us@5&$Z8cEjQYKm3gh?tDj*<^?S{QZp@UA=mL4o)78&q Iol`;+0BLX~Q2+n{ delta 543 zcmZ3)HkGx$Gr-TCmrII^fq{Y7)59eQNH>5m2Q!fT@?hdmAY~um6XNKqD3IZ&?Im>lD74rW7kI#O*Zwuod4y9FPZblO?+}mWO8rGKxG>w5_g27p> zQ*)iJX3De$t~H(gkc8+568}xH74HGd;g@!6lzyliaNM zPxU6MQ#DIxa)XU*Dh zZmQfYlbsAJ8gI&iypk|MUtwP9pQpFJ{xR6~|2xC?rR5FtWN+jPSg`?#DmIOsbroSu ef4Lrs^MB+tcqCX<|F5zfq|wvW&t;ucLK6Ts3hH41 diff --git a/icons/vore/custom_items_yw.dmi b/icons/vore/custom_items_yw.dmi index f98c15f7f3620e34994b7965ec973e3576b226e1..3e228fee3b4f0bc912f059cb411834fa85af0290 100644 GIT binary patch literal 23810 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 From fdca4f7554955bcca49398d7ef13f1b194a78b94 Mon Sep 17 00:00:00 2001 From: Unknown Date: Tue, 1 Oct 2019 03:09:58 -0400 Subject: [PATCH 13/69] Master Runtime Fix --- code/modules/reagents/reagent_containers/hypospray_vr.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/reagents/reagent_containers/hypospray_vr.dm b/code/modules/reagents/reagent_containers/hypospray_vr.dm index d0777e3216..526ae77fba 100644 --- a/code/modules/reagents/reagent_containers/hypospray_vr.dm +++ b/code/modules/reagents/reagent_containers/hypospray_vr.dm @@ -6,7 +6,7 @@ amount_per_transfer_from_this = 10 volume = 10 -/obj/item/weapon/reagent_containers/hypospray/autoinjector/miner/New() +/obj/item/weapon/reagent_containers/hypospray/autoinjector/miner/Initialize() ..() reagents.add_reagent("bicaridine", 5) reagents.add_reagent("tricordrazine", 3) @@ -18,7 +18,7 @@ desc = "Contains emergency trauma autoinjectors." icon_state = "syringe" -/obj/item/weapon/storage/box/traumainjectors/New() +/obj/item/weapon/storage/box/traumainjectors/Initialize() ..() for (var/i = 1 to 7) new /obj/item/weapon/reagent_containers/hypospray/autoinjector/miner(src) From 855d795357994c7fd2c78fcf6994eaf91a42f230 Mon Sep 17 00:00:00 2001 From: Verkister Date: Tue, 1 Oct 2019 10:30:29 +0300 Subject: [PATCH 14/69] Some Protean fixes -Fixes protean regeneration not working at all. -Fixes not being able to get metal as blob. -Fixes unblobbing as custom size breaking vertical offset. -Adds a general use loadout fluff vest planned for a prottie char. -Fixes blobmob being slow due to mob update movement delays. -Gives protties trasheat verb. --- .../loadout/loadout_uniform_vr.dm | 6 +++++- .../station/protean_vr/protean_blob.dm | 6 +++--- .../station/protean_vr/protean_species.dm | 4 ++-- .../vore/fluffstuff/custom_clothes_vr.dm | 10 +++++++++- icons/vore/custom_clothes_vr.dmi | Bin 209128 -> 210391 bytes 5 files changed, 19 insertions(+), 7 deletions(-) diff --git a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm index 652253176b..be65b874a6 100644 --- a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm @@ -168,4 +168,8 @@ Swimsuits //Tron Siren outfit /datum/gear/uniform/siren display_name = "jumpsuit, Siren" - path = /obj/item/clothing/under/fluff/siren \ No newline at end of file + path = /obj/item/clothing/under/fluff/siren + +/datum/gear/uniform/suit/v_nanovest + display_name = "Varmacorp nanovest" + path = /obj/item/clothing/under/fluff/v_nanovest \ No newline at end of file diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm index ae012790cc..6e82989780 100644 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_blob.dm @@ -36,6 +36,7 @@ max_n2 = 0 minbodytemp = 0 maxbodytemp = 900 + movement_cooldown = 0 var/mob/living/carbon/human/humanform var/obj/item/organ/internal/nano/refactory/refactory @@ -200,7 +201,7 @@ target.forceMove(vore_selected) to_chat(target,"\The [src] quickly engulfs you, [vore_selected.vore_verb]ing you into their [vore_selected.name]!") -/mob/living/simple_mob/protean_blob/attack_hand(var/atom/A) //VORESTATION AI TEMPORARY REMOVAL (Marking this as such even though it was an edit.) +/mob/living/simple_mob/protean_blob/attack_target(var/atom/A) if(refactory && istype(A,/obj/item/stack/material)) var/obj/item/stack/material/S = A var/substance = S.material.name @@ -346,8 +347,7 @@ var/atom/reform_spot = blob.drop_location() //Size update - transform = matrix()*blob.size_multiplier - size_multiplier = blob.size_multiplier + resize(blob.size_multiplier, FALSE) //Move them back where the blob was forceMove(reform_spot) diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm index 0d9ad6bd93..0d2000fa01 100755 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm @@ -96,7 +96,8 @@ /mob/living/carbon/human/proc/shapeshifter_select_gender, /mob/living/carbon/human/proc/shapeshifter_select_wings, /mob/living/carbon/human/proc/shapeshifter_select_tail, - /mob/living/carbon/human/proc/shapeshifter_select_ears + /mob/living/carbon/human/proc/shapeshifter_select_ears, + /mob/living/proc/eat_trash ) var/global/list/abilities = list() @@ -296,7 +297,6 @@ material_name = MAT_STEEL /datum/modifier/protean/steel/tick() - ..() holder.adjustBruteLoss(-10,include_robo = TRUE) //Looks high, but these ARE modified by species resistances, so this is really 20% of this holder.adjustFireLoss(-1,include_robo = TRUE) //And this is really double this var/mob/living/carbon/human/H = holder diff --git a/code/modules/vore/fluffstuff/custom_clothes_vr.dm b/code/modules/vore/fluffstuff/custom_clothes_vr.dm index d85feea370..1ba3941bbe 100644 --- a/code/modules/vore/fluffstuff/custom_clothes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_clothes_vr.dm @@ -1520,6 +1520,14 @@ Departamental Swimsuits, for general use icon_override = 'icons/vore/custom_clothes_vr.dmi' item_state = "gnshorts" +/obj/item/clothing/under/fluff/v_nanovest + name = "Varmacorp nanovest" + desc = "A nifty little vest optimized for nanite contact." + icon = 'icons/vore/custom_clothes_vr.dmi' + icon_state = "nanovest" + icon_override = 'icons/vore/custom_clothes_vr.dmi' + item_state = "nanovest" + //General use /obj/item/clothing/suit/storage/fluff/loincloth name = "Loincloth" @@ -1906,4 +1914,4 @@ Departamental Swimsuits, for general use return 1 /obj/item/clothing/under/fluff/slime_skeleton/digest_act(var/atom/movable/item_storage = null) - return FALSE //Indigestible \ No newline at end of file + return FALSE //Indigestible diff --git a/icons/vore/custom_clothes_vr.dmi b/icons/vore/custom_clothes_vr.dmi index 4ae6f9cef4114e311672e31e39099832d10607f0..2a487aab35f52ca0674502d8c43c67c78dadcb38 100644 GIT binary patch delta 4371 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 Date: Tue, 1 Oct 2019 17:33:59 +1000 Subject: [PATCH 15/69] Fixes shuttle error roundstart --- maps/tether/tether_shuttle_defs.dm | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/maps/tether/tether_shuttle_defs.dm b/maps/tether/tether_shuttle_defs.dm index b1d5280242..925b7f8a0d 100644 --- a/maps/tether/tether_shuttle_defs.dm +++ b/maps/tether/tether_shuttle_defs.dm @@ -174,19 +174,6 @@ departure_message = "Attention. A unregistered vessel is now leaving Virgo-3B." ..() -/datum/shuttle/ferry/multidock/specops/ert - name = "Special Operations" - location = 0 - warmup_time = 10 - area_offsite = /area/shuttle/specops/station //centcom is the home station, the Exodus is offsite - area_station = /area/shuttle/specops/centcom - docking_controller_tag = "specops_shuttle_port" - docking_controller_tag_station = "specops_shuttle_port" - docking_controller_tag_offsite = "specops_shuttle_fore" - dock_target_station = "specops_centcom_dock" - dock_target_offsite = "specops_dock_airlock" - - ////////////////////////////////////////////////////////////// // RogueMiner "Belter: Shuttle // TODO - Not implemented yet on new map From a779cdb8da8e0eda7985a9777c7574b7eb8f91ba Mon Sep 17 00:00:00 2001 From: Verkister Date: Tue, 1 Oct 2019 10:39:46 +0300 Subject: [PATCH 16/69] Prottie whitelist update https://forum.vore-station.net/viewtopic.php?f=46&t=1583 --- config/alienwhitelist.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/config/alienwhitelist.txt b/config/alienwhitelist.txt index 323e6b6585..a30efd21a6 100644 --- a/config/alienwhitelist.txt +++ b/config/alienwhitelist.txt @@ -11,6 +11,7 @@ azmodan412 - Xenochimera azmodan412 - Xenomorph Hybrid bothnevarbackwards - Diona cameron653 - Xenomorph Hybrid +cross_exonar - Protean funnyman2003 - Xenochimera hawkerthegreat - Vox hollifex - Diona From 33863c556ffbeebd28b3c10d59b1f4614c751558 Mon Sep 17 00:00:00 2001 From: Verkister Date: Tue, 1 Oct 2019 10:43:57 +0300 Subject: [PATCH 17/69] Update alienwhitelist.txt --- config/alienwhitelist.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config/alienwhitelist.txt b/config/alienwhitelist.txt index a30efd21a6..39dcd5ca6f 100644 --- a/config/alienwhitelist.txt +++ b/config/alienwhitelist.txt @@ -2,7 +2,7 @@ some~user - Species 911earlyarther - Xenomorph Hybrid admiraldragon - Vox -aether_elemental - Daemon +aetherelemental - Daemon arandomalien - Xenochimera arokha - Protean aruis - Diona @@ -11,7 +11,7 @@ azmodan412 - Xenochimera azmodan412 - Xenomorph Hybrid bothnevarbackwards - Diona cameron653 - Xenomorph Hybrid -cross_exonar - Protean +crossexonar - Protean funnyman2003 - Xenochimera hawkerthegreat - Vox hollifex - Diona From 125ffa281baed934e314d0dae47eeba3b09ea294 Mon Sep 17 00:00:00 2001 From: Rykka Date: Tue, 1 Oct 2019 09:30:10 -0600 Subject: [PATCH 18/69] Multiple map fixes on S3/Xenobiology/Atmos --- maps/tether/tether-01-surface1.dmm | 24 +- maps/tether/tether-02-surface2.dmm | 196 ++++++++++------ maps/tether/tether-03-surface3.dmm | 357 +++++++++++++++++------------ 3 files changed, 345 insertions(+), 232 deletions(-) diff --git a/maps/tether/tether-01-surface1.dmm b/maps/tether/tether-01-surface1.dmm index 452bbd9111..8934505049 100644 --- a/maps/tether/tether-01-surface1.dmm +++ b/maps/tether/tether-01-surface1.dmm @@ -6119,6 +6119,12 @@ d2 = 4; icon_state = "0-4" }, +/obj/machinery/atmospherics/pipe/zpipe/up/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/zpipe/up/supply{ + dir = 4 + }, /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/public_garden_maintenence) "akH" = ( @@ -6128,6 +6134,12 @@ d2 = 8; icon_state = "2-8" }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, /turf/simulated/floor/plating, /area/maintenance/lower/public_garden_maintenence) "akI" = ( @@ -6209,6 +6221,8 @@ d2 = 2; icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/plating, /area/tether/surfacebase/public_garden) "akT" = ( @@ -6317,6 +6331,8 @@ d2 = 2; icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/tiled, /area/tether/surfacebase/public_garden) "alf" = ( @@ -6467,12 +6483,6 @@ /turf/simulated/floor/tiled, /area/tether/surfacebase/public_garden) "alp" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -6488,6 +6498,8 @@ d2 = 4; icon_state = "1-4" }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply, /turf/simulated/floor/tiled, /area/tether/surfacebase/public_garden) "alq" = ( diff --git a/maps/tether/tether-02-surface2.dmm b/maps/tether/tether-02-surface2.dmm index 28b09e63ef..b594ade7a4 100644 --- a/maps/tether/tether-02-surface2.dmm +++ b/maps/tether/tether-02-surface2.dmm @@ -639,27 +639,18 @@ /turf/simulated/floor/plating, /area/maintenance/lower/public_garden_maintenence/upper) "bp" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/obj/structure/cable/green{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/obj/structure/cable/green{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, /obj/structure/cable/green{ d1 = 1; - d2 = 4; - icon_state = "1-4" + d2 = 2; + icon_state = "1-2" }, +/obj/machinery/alarm{ + dir = 4; + pixel_x = -23; + pixel_y = 0 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/plating, /area/maintenance/lower/public_garden_maintenence/upper) "bq" = ( @@ -4806,6 +4797,8 @@ d2 = 2; icon_state = "32-2" }, +/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers, +/obj/machinery/atmospherics/pipe/zpipe/down/supply, /turf/simulated/open, /area/maintenance/lower/public_garden_maintenence/upper) "kn" = ( @@ -4896,16 +4889,23 @@ /turf/simulated/floor/tiled, /area/tether/surfacebase/public_garden_two) "kw" = ( +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, /obj/structure/cable/green{ d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/alarm{ - dir = 4; - pixel_x = -23; - pixel_y = 0 + d2 = 4; + icon_state = "1-4" }, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, /turf/simulated/floor/plating, /area/maintenance/lower/public_garden_maintenence/upper) "kx" = ( @@ -17834,15 +17834,8 @@ /obj/machinery/button/remote/blast_door{ id = "xenobiodiv7"; name = "Divider 7 Blast Doors"; - pixel_x = -38; - pixel_y = 0; - req_access = list(55) - }, -/obj/machinery/button/remote/blast_door{ - id = "xenocont1"; - name = "Exterior Containment Blast Doors"; pixel_x = -30; - pixel_y = -8; + pixel_y = -5; req_access = list(55) }, /obj/machinery/button/remote/blast_door{ @@ -21456,6 +21449,7 @@ d2 = 0; icon_state = "16-0" }, +/obj/structure/disposalpipe/up, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) "Or" = ( @@ -21702,6 +21696,10 @@ d2 = 8; icon_state = "4-8" }, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) "OJ" = ( @@ -21722,15 +21720,8 @@ /obj/machinery/button/remote/blast_door{ id = "xenobiodiv8"; name = "Divider 8 Blast Doors"; - pixel_x = 38; - pixel_y = 0; - req_access = list(55) - }, -/obj/machinery/button/remote/blast_door{ - id = "xenocont2"; - name = "Exterior Containment Blast Doors"; pixel_x = 30; - pixel_y = -8; + pixel_y = -5; req_access = list(55) }, /obj/machinery/button/remote/blast_door{ @@ -21784,16 +21775,28 @@ /area/rnd/outpost/xenobiology/outpost_slimepens) "OP" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 + dir = 5 }, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + icon_state = "intact-supply"; + dir = 5 + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 }, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) "OQ" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 +/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" }, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) @@ -21829,31 +21832,20 @@ /turf/simulated/floor/tiled/techfloor, /area/maintenance/lower/south) "OU" = ( -/obj/machinery/light{ - dir = 8 +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 }, -/obj/machinery/alarm{ - alarm_id = null; - breach_detection = 0; - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 }, +/obj/structure/disposalpipe/segment, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) "OV" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - icon_state = "intact-supply"; - dir = 5 - }, -/obj/structure/cable/green{ - d1 = 1; - d2 = 8; - icon_state = "1-8" +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 }, +/obj/structure/disposalpipe/segment, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_slimepens) "OW" = ( @@ -27227,6 +27219,60 @@ /obj/item/toy/syndicateballoon, /turf/simulated/floor, /area/tether/surfacebase/outside/outside2) +"WH" = ( +/obj/structure/disposalpipe/segment, +/turf/simulated/floor/tiled/dark, +/area/rnd/outpost/xenobiology/outpost_slimepens) +"WI" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/machinery/alarm{ + alarm_id = null; + breach_detection = 0; + dir = 1; + icon_state = "alarm0"; + pixel_y = -22 + }, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/machinery/disposal, +/turf/simulated/floor/tiled/dark, +/area/rnd/outpost/xenobiology/outpost_slimepens) +"WJ" = ( +/obj/machinery/recharger/wallcharger{ + pixel_y = -38 + }, +/obj/machinery/recharger/wallcharger{ + pixel_y = -28 + }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, +/turf/simulated/floor/tiled/dark, +/area/rnd/outpost/xenobiology/outpost_slimepens) +"WK" = ( +/obj/machinery/button/remote/blast_door{ + id = "xenocont1"; + name = "Exterior Containment Blast Doors"; + pixel_x = -30; + pixel_y = -25; + req_access = list(55) + }, +/turf/simulated/floor/tiled/dark, +/area/rnd/outpost/xenobiology/outpost_slimepens) +"WL" = ( +/obj/machinery/button/remote/blast_door{ + id = "xenocont2"; + name = "Exterior Containment Blast Doors"; + pixel_x = 30; + pixel_y = -25; + req_access = list(55) + }, +/turf/simulated/floor/tiled/dark, +/area/rnd/outpost/xenobiology/outpost_slimepens) "WO" = ( /obj/machinery/atmospherics/pipe/simple/hidden/green{ icon_state = "intact"; @@ -32589,8 +32635,8 @@ Hc HV Oj Ja -Ja -OU +WK +WI Hc ab ab @@ -32729,10 +32775,10 @@ Nw KZ NT OI -OP -OQ -Ja -Pw +OU +OV +WH +WJ Hc ab ab @@ -32870,7 +32916,7 @@ JE Kq He Ot -OV +OP Ol OF Ja @@ -33012,7 +33058,7 @@ JD OA Op Oq -OA +OQ Ov Ja Ja @@ -33441,7 +33487,7 @@ NW OL Mj Ja -Ja +WL Px Hc ab @@ -33636,8 +33682,8 @@ ac ac bn km -kw bp +kw bB bX bn diff --git a/maps/tether/tether-03-surface3.dmm b/maps/tether/tether-03-surface3.dmm index 209ce9bc2f..89289f56c8 100644 --- a/maps/tether/tether-03-surface3.dmm +++ b/maps/tether/tether-03-surface3.dmm @@ -15732,13 +15732,11 @@ /obj/effect/floor_decal/borderfloor{ dir = 1 }, -/obj/structure/disposalpipe/segment{ - dir = 4; - icon_state = "pipe-c" - }, /obj/effect/floor_decal/corner/mauve/border{ dir = 1 }, +/obj/structure/disposalpipe/trunk, +/obj/machinery/disposal, /turf/simulated/floor/tiled, /area/rnd/research/researchdivision) "Ao" = ( @@ -16300,9 +16298,6 @@ /turf/simulated/floor/tiled/steel_grid, /area/assembly/robotics) "AY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, /obj/effect/floor_decal/borderfloor{ dir = 1; icon_state = "borderfloor"; @@ -16321,6 +16316,10 @@ dir = 4 }, /obj/effect/floor_decal/steeldecal/steel_decals7, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, /turf/simulated/floor/tiled, /area/rnd/research/researchdivision) "AZ" = ( @@ -19423,9 +19422,9 @@ /obj/effect/floor_decal/steeldecal/steel_decals7{ dir = 6 }, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" +/obj/structure/disposalpipe/junction{ + icon_state = "pipe-j2"; + dir = 4 }, /turf/simulated/floor/tiled, /area/rnd/research/researchdivision) @@ -19441,6 +19440,10 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 1 }, +/obj/structure/disposalpipe/segment{ + dir = 8; + icon_state = "pipe-c" + }, /turf/simulated/floor/tiled, /area/rnd/research/researchdivision) "FP" = ( @@ -20780,32 +20783,10 @@ /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_south_airlock) "HH" = ( -/obj/structure/lattice, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/zpipe/down/supply{ - dir = 1 - }, -/obj/structure/cable/green{ - d1 = 32; - icon_state = "32-1" - }, -/obj/structure/window/basic/full, -/obj/structure/grille, -/obj/structure/window/basic, -/obj/structure/window/basic{ - dir = 8 - }, -/obj/structure/window/basic{ - dir = 1 - }, -/obj/structure/window/basic{ - dir = 4 - }, -/turf/simulated/open, -/area/rnd/outpost/xenobiology/outpost_stairs) +/obj/structure/shuttle/engine/propulsion, +/turf/simulated/floor/reinforced, +/turf/simulated/shuttle/plating/carry, +/area/shuttle/tether/surface) "HI" = ( /obj/structure/disposalpipe/segment, /obj/machinery/alarm{ @@ -25074,6 +25055,24 @@ /turf/simulated/floor/wood, /area/rnd/outpost/xenobiology/outpost_office) "Qd" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/cable/green{ + icon_state = "1-2" + }, +/obj/structure/cable/green{ + icon_state = "1-4" + }, +/obj/structure/cable/green{ + icon_state = "1-8" + }, +/obj/structure/disposalpipe/junction{ + dir = 1; + icon_state = "pipe-j2" + }, +/turf/simulated/floor/tiled/dark, +/area/rnd/outpost/xenobiology/outpost_main) +"Qe" = ( /obj/machinery/light_switch{ dir = 4; pixel_x = -28 @@ -25081,18 +25080,9 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 4 }, -/turf/simulated/floor/tiled/dark, -/area/rnd/outpost/xenobiology/outpost_main) -"Qe" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/obj/structure/cable/green{ - icon_state = "1-2" +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" }, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_main) @@ -25143,6 +25133,22 @@ /turf/simulated/floor/wood, /area/rnd/outpost/xenobiology/outpost_office) "Qn" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/green{ + icon_state = "1-2" + }, +/obj/structure/disposalpipe/sortjunction{ + name = "Xenobiology"; + sortType = "Xenobiology" + }, +/turf/simulated/floor/tiled/dark, +/area/rnd/outpost/xenobiology/outpost_main) +"Qo" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ icon_state = "intact-scrubbers"; dir = 4 @@ -25153,9 +25159,26 @@ /obj/structure/cable/green{ icon_state = "2-4" }, +/obj/structure/disposalpipe/segment{ + dir = 4; + icon_state = "pipe-c" + }, /turf/simulated/floor/wood, /area/rnd/outpost/xenobiology/outpost_office) -"Qo" = ( +"Qp" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + icon_state = "intact-scrubbers"; + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable/green{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/dark, +/area/rnd/outpost/xenobiology/outpost_main) +"Qq" = ( /obj/machinery/door/airlock/research{ name = "Xenobiology Office"; req_access = list(); @@ -25172,39 +25195,11 @@ /obj/structure/cable/green{ icon_state = "4-8" }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/simulated/floor/tiled/steel, /area/rnd/outpost/xenobiology/outpost_office) -"Qp" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - icon_state = "intact-scrubbers"; - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/structure/cable/green{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/dark, -/area/rnd/outpost/xenobiology/outpost_main) -"Qq" = ( -/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, -/obj/structure/disposalpipe/junction{ - dir = 1 - }, -/obj/structure/cable/green{ - icon_state = "1-2" - }, -/obj/structure/cable/green{ - icon_state = "1-8" - }, -/obj/structure/cable/green{ - icon_state = "1-4" - }, -/obj/machinery/hologram/holopad, -/turf/simulated/floor/tiled/dark, -/area/rnd/outpost/xenobiology/outpost_main) "Qr" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -25307,16 +25302,22 @@ /turf/simulated/floor/wood, /area/rnd/outpost/xenobiology/outpost_office) "QA" = ( -/obj/machinery/vending/coffee, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + icon_state = "intact-scrubbers"; + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, /obj/structure/cable/green{ - icon_state = "1-2" + icon_state = "4-8" }, -/obj/machinery/light_switch{ +/obj/structure/disposalpipe/segment{ dir = 8; - pixel_x = 24 + icon_state = "pipe-c" }, -/turf/simulated/floor/wood, -/area/rnd/outpost/xenobiology/outpost_office) +/turf/simulated/floor/tiled/dark, +/area/rnd/outpost/xenobiology/outpost_main) "QB" = ( /obj/machinery/light{ dir = 8; @@ -25414,15 +25415,15 @@ /turf/simulated/floor/wood, /area/rnd/outpost/xenobiology/outpost_office) "QL" = ( -/obj/machinery/power/apc{ - dir = 4; - name = "east bump"; - pixel_x = 28 +/obj/machinery/vending/coffee, +/obj/structure/cable/green{ + icon_state = "1-2" }, -/obj/machinery/light{ - dir = 4 +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 24 }, -/obj/structure/cable/green, +/obj/structure/disposalpipe/segment, /turf/simulated/floor/wood, /area/rnd/outpost/xenobiology/outpost_office) "QM" = ( @@ -25567,7 +25568,6 @@ "Rc" = ( /obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, -/obj/structure/disposalpipe/junction, /obj/structure/cable/green{ icon_state = "1-2" }, @@ -25578,6 +25578,9 @@ icon_state = "1-4" }, /obj/machinery/hologram/holopad, +/obj/structure/disposalpipe/junction{ + dir = 1 + }, /turf/simulated/floor/tiled/dark, /area/rnd/outpost/xenobiology/outpost_main) "Rd" = ( @@ -25661,22 +25664,24 @@ /turf/simulated/wall, /area/rnd/outpost/xenobiology/outpost_decon) "Ro" = ( -/obj/structure/table/standard, -/obj/item/toy/plushie/purple_fox, -/obj/machinery/firealarm{ - dir = 4; - layer = 3.3; - pixel_x = 26 +/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, +/obj/structure/cable/green{ + icon_state = "1-2" }, -/obj/machinery/recharger/wallcharger{ - pixel_x = 4; - pixel_y = 28 +/obj/structure/cable/green{ + icon_state = "1-8" }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 +/obj/structure/cable/green{ + icon_state = "1-4" }, -/turf/simulated/floor/tiled/techmaint, -/area/rnd/outpost/xenobiology/outpost_storage) +/obj/machinery/hologram/holopad, +/obj/structure/disposalpipe/junction{ + dir = 1; + icon_state = "pipe-j2" + }, +/turf/simulated/floor/tiled/dark, +/area/rnd/outpost/xenobiology/outpost_main) "Rp" = ( /obj/structure/closet/l3closet/scientist, /obj/machinery/atmospherics/unary/vent_scrubber/on, @@ -25755,6 +25760,7 @@ /obj/item/weapon/extinguisher, /obj/item/clothing/shoes/galoshes, /obj/item/clothing/shoes/galoshes, +/obj/item/weapon/extinguisher, /turf/simulated/floor/tiled/techmaint, /area/rnd/outpost/xenobiology/outpost_storage) "Rx" = ( @@ -26276,23 +26282,35 @@ /turf/simulated/floor/tiled/white, /area/tether/surfacebase/medical/triage) "Sr" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/disposalpipe/segment{ - dir = 8; - icon_state = "pipe-c" +/obj/structure/lattice, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/zpipe/down/scrubbers{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/zpipe/down/supply{ + dir = 1 }, /obj/structure/cable/green{ - icon_state = "1-2" + d1 = 32; + icon_state = "32-1" }, -/obj/structure/cable/green{ - icon_state = "1-4" +/obj/structure/window/basic/full, +/obj/structure/grille, +/obj/structure/window/basic, +/obj/structure/window/basic{ + dir = 8 }, -/obj/structure/cable/green{ - icon_state = "1-8" +/obj/structure/window/basic{ + dir = 1 }, -/turf/simulated/floor/tiled/dark, -/area/rnd/outpost/xenobiology/outpost_main) +/obj/structure/window/basic{ + dir = 4 + }, +/obj/structure/disposalpipe/down{ + dir = 1 + }, +/turf/simulated/open, +/area/rnd/outpost/xenobiology/outpost_stairs) "Ss" = ( /obj/structure/cable/green{ icon_state = "4-8" @@ -26969,8 +26987,21 @@ /area/maintenance/lower/mining) "Tt" = ( /obj/structure/table/standard, -/obj/item/weapon/gun/energy/taser/xeno, -/obj/item/weapon/melee/baton/slime, +/obj/item/toy/plushie/purple_fox, +/obj/machinery/firealarm{ + dir = 4; + layer = 3.3; + pixel_x = 26 + }, +/obj/machinery/recharger/wallcharger{ + pixel_x = 4; + pixel_y = 28 + }, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/obj/item/weapon/reagent_containers/spray, +/obj/item/weapon/reagent_containers/spray, /turf/simulated/floor/tiled/techmaint, /area/rnd/outpost/xenobiology/outpost_storage) "Tu" = ( @@ -29542,11 +29573,6 @@ /turf/simulated/floor/tiled, /area/tether/surfacebase/security/upperhall) "WQ" = ( -/obj/machinery/light_switch{ - dir = 1; - pixel_x = 0; - pixel_y = -28 - }, /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 }, @@ -29555,16 +29581,12 @@ "WR" = ( /obj/structure/table/standard, /obj/item/weapon/gun/energy/taser/xeno, -/obj/item/weapon/melee/baton/slime, +/obj/item/weapon/melee/baton/slime/loaded, /obj/machinery/light_switch{ dir = 1; pixel_x = 0; pixel_y = -28 }, -/obj/machinery/recharger/wallcharger{ - pixel_x = 4; - pixel_y = -28 - }, /turf/simulated/floor/tiled/techmaint, /area/rnd/outpost/xenobiology/outpost_storage) "WS" = ( @@ -29985,10 +30007,43 @@ /turf/simulated/floor/wood, /area/library) "Xy" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/simulated/floor/reinforced, -/turf/simulated/shuttle/plating/carry, -/area/shuttle/tether/surface) +/obj/structure/table/standard, +/obj/item/weapon/gun/energy/taser/xeno, +/obj/machinery/recharger/wallcharger{ + pixel_x = 4; + pixel_y = -28 + }, +/obj/item/weapon/melee/baton/slime/loaded, +/turf/simulated/floor/tiled/techmaint, +/area/rnd/outpost/xenobiology/outpost_storage) +"Xz" = ( +/obj/machinery/power/apc{ + dir = 4; + name = "east bump"; + pixel_x = 28 + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/structure/cable/green, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/machinery/disposal, +/turf/simulated/floor/wood, +/area/rnd/outpost/xenobiology/outpost_office) +"XA" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 0; + pixel_y = -28 + }, +/turf/simulated/floor/tiled/white, +/area/rnd/outpost/xenobiology/outpost_first_aid) "XF" = ( /obj/machinery/power/apc{ dir = 2; @@ -35228,9 +35283,9 @@ Of Mm PO Qc -Qn -QA +Qo QL +Xz QU Ra MM @@ -35242,7 +35297,7 @@ Mq SB PV Te -PV +XA SA CO dG @@ -35370,7 +35425,7 @@ Of OR PP OR -Qo +Qq OR OR OR @@ -35511,8 +35566,8 @@ Op Ir IX QM -Qd -Qp +Qe +QA QB QM QM @@ -35653,19 +35708,19 @@ Lj Pj IZ PR -Qe -Qq +Qn +Rc QC QC QC QC PR -Rc +Ro QC RS Se +Qd Sr -HH LP Ml Ml @@ -36236,7 +36291,7 @@ Sv SJ SW Ti -Tt +WR SI dG dG @@ -36378,7 +36433,7 @@ Sw LO SX Rd -WR +Xy SI dG OF @@ -36660,7 +36715,7 @@ RV Sh Sy SI -Ro +Tt Rt RA SI @@ -43879,7 +43934,7 @@ Nk Nl NJ NP -Xy +HH KU bg Ok @@ -44021,7 +44076,7 @@ Nl Nl NK NP -Xy +HH KU bg Ok @@ -44163,7 +44218,7 @@ Nm Nl NK NP -Xy +HH KU bg Ok From bad953b75f3b973b460d84ee0f4b9ab7ce9d8d9e Mon Sep 17 00:00:00 2001 From: Hawk_v3 Date: Tue, 1 Oct 2019 21:07:01 +0100 Subject: [PATCH 19/69] Dogborgs now don't have Brutal Predation. Medidogborgs now have bandages/ointment/splints to fix external bleeding. - Since Standard Borgs can, I see no objection. Insekt models have been re-enabled on all cyborgs, the sprites vanished at some point and are now back, so, yay. --- .../silicon/robot/robot_modules/station.dm | 24 ++++++------- .../silicon/robot/robot_modules/station_vr.dm | 35 +++++++++++++++---- 2 files changed, 40 insertions(+), 19 deletions(-) diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station.dm b/code/modules/mob/living/silicon/robot/robot_modules/station.dm index c7ce79bb32..8777e43154 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station.dm @@ -176,8 +176,8 @@ var/global/list/robot_modules = list( "XI-ALP" = "heavyStandard", "Basic" = "robot_old", "Android" = "droid", - "Drone" = "drone-standard" -// "Insekt" = "insekt-Default" + "Drone" = "drone-standard", + "Insekt" = "insekt-Default" ) @@ -210,8 +210,8 @@ var/global/list/robot_modules = list( "Advanced Droid" = "droid-medical", "Needles" = "medicalrobot", "Drone" = "drone-surgery", - "Handy" = "handy-med" -// "Insekt" = "insekt-Med" + "Handy" = "handy-med", + "Insekt" = "insekt-Med" ) /obj/item/weapon/robot_module/robot/medical/surgeon/New() @@ -283,8 +283,8 @@ var/global/list/robot_modules = list( "Advanced Droid" = "droid-medical", "Needles" = "medicalrobot", "Drone - Medical" = "drone-medical", - "Drone - Chemistry" = "drone-chemistry" -// "Insekt" = "insekt-Med" + "Drone - Chemistry" = "drone-chemistry", + "Insekt" = "insekt-Med" ) /obj/item/weapon/robot_module/robot/medical/crisis/New() @@ -517,8 +517,8 @@ var/global/list/robot_modules = list( "XI-ALP" = "heavySec", "Basic" = "secborg", "Black Knight" = "securityrobot", - "Drone" = "drone-sec" -// "Insekt" = "insekt-Sec" + "Drone" = "drone-sec", + "Insekt" = "insekt-Sec" ) /obj/item/weapon/robot_module/robot/security/general/New() @@ -734,8 +734,8 @@ var/global/list/robot_modules = list( "WTOperator" = "sleekscience", "Droid" = "droid-science", "Drone" = "drone-science", - "Handy" = "handy-science" -// "Insekt" = "insekt-Sci" + "Handy" = "handy-science", + "Insekt" = "insekt-Sci" ) /obj/item/weapon/robot_module/robot/research/New() @@ -795,8 +795,8 @@ var/global/list/robot_modules = list( hide_on_manifest = 1 sprites = list( "Haruka" = "marinaCB", - "Combat Android" = "droid-combat" -// "Insekt" = "insekt-Combat" + "Combat Android" = "droid-combat", + "Insekt" = "insekt-Combat" ) /obj/item/weapon/robot_module/robot/security/combat/New() diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm index 9d4e903363..a43384cc8d 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm @@ -180,7 +180,7 @@ R.wideborg = TRUE R.verbs |= /mob/living/silicon/robot/proc/ex_reserve_refill R.verbs |= /mob/living/silicon/robot/proc/robot_mount - R.verbs |= /mob/living/proc/shred_limb +// R.verbs |= /mob/living/proc/shred_limb - YW Edit R.verbs |= /mob/living/silicon/robot/proc/rest_style ..() @@ -244,6 +244,27 @@ B.water = water src.modules += B + var/datum/matter_synth/medicine = new /datum/matter_synth/medicine(15000) + medicine.name = "Medical supply reserves" + synths += medicine + + var/obj/item/stack/medical/advanced/ointment/O = new /obj/item/stack/medical/advanced/ointment(src) + var/obj/item/stack/medical/advanced/bruise_pack/P = new /obj/item/stack/medical/advanced/bruise_pack(src) + var/obj/item/stack/medical/splint/S = new /obj/item/stack/medical/splint(src) + O.uses_charge = 1 + O.charge_costs = list(1000) + O.synths = list(medicine) + P.uses_charge = 1 + P.charge_costs = list(1000) + P.synths = list(medicine) + S.uses_charge = 1 + S.charge_costs = list(1000) + S.synths = list(medicine) + src.modules += O + src.modules += P + src.modules += S + + R.icon = 'icons/mob/widerobot_vr.dmi' src.modules += new /obj/item/device/dogborg/pounce_module(src) //Pounce shit test @@ -256,7 +277,7 @@ R.wideborg = TRUE R.verbs |= /mob/living/silicon/robot/proc/ex_reserve_refill R.verbs |= /mob/living/silicon/robot/proc/robot_mount - R.verbs |= /mob/living/proc/shred_limb +// R.verbs |= /mob/living/proc/shred_limb - YW Edit R.verbs |= /mob/living/silicon/robot/proc/rest_style ..() @@ -304,7 +325,7 @@ R.wideborg = TRUE R.verbs |= /mob/living/silicon/robot/proc/ex_reserve_refill R.verbs |= /mob/living/silicon/robot/proc/robot_mount - R.verbs |= /mob/living/proc/shred_limb +// R.verbs |= /mob/living/proc/shred_limb - YW Edit R.verbs |= /mob/living/silicon/robot/proc/rest_style ..() @@ -385,7 +406,7 @@ R.wideborg = TRUE R.verbs |= /mob/living/silicon/robot/proc/ex_reserve_refill R.verbs |= /mob/living/silicon/robot/proc/robot_mount - R.verbs |= /mob/living/proc/shred_limb +// R.verbs |= /mob/living/proc/shred_limb - YW Edit R.verbs |= /mob/living/silicon/robot/proc/rest_style ..() @@ -431,7 +452,7 @@ R.wideborg = TRUE R.verbs |= /mob/living/silicon/robot/proc/ex_reserve_refill R.verbs |= /mob/living/silicon/robot/proc/robot_mount - R.verbs |= /mob/living/proc/shred_limb +// R.verbs |= /mob/living/proc/shred_limb - YW Edit R.verbs |= /mob/living/silicon/robot/proc/rest_style ..() @@ -558,7 +579,7 @@ R.wideborg = TRUE R.verbs |= /mob/living/silicon/robot/proc/ex_reserve_refill R.verbs |= /mob/living/silicon/robot/proc/robot_mount - R.verbs |= /mob/living/proc/shred_limb +// R.verbs |= /mob/living/proc/shred_limb - YW Edit R.verbs |= /mob/living/silicon/robot/proc/rest_style ..() @@ -573,6 +594,6 @@ R.scrubbing = FALSE R.verbs -= /mob/living/silicon/robot/proc/ex_reserve_refill R.verbs -= /mob/living/silicon/robot/proc/robot_mount - R.verbs -= /mob/living/proc/shred_limb +// R.verbs -= /mob/living/proc/shred_limb - YW Edit R.verbs -= /mob/living/silicon/robot/proc/rest_style ..() \ No newline at end of file From d0d1eb2480d7272f3d703e73ee630b3840ba3bed Mon Sep 17 00:00:00 2001 From: Hawk_v3 Date: Tue, 1 Oct 2019 21:09:48 +0100 Subject: [PATCH 20/69] Correct Tagging --- .../mob/living/silicon/robot/robot_modules/station_vr.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm index a43384cc8d..3000f83879 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm @@ -244,6 +244,8 @@ B.water = water src.modules += B +// - YW Edit + var/datum/matter_synth/medicine = new /datum/matter_synth/medicine(15000) medicine.name = "Medical supply reserves" synths += medicine @@ -264,6 +266,7 @@ src.modules += P src.modules += S +// End YW Edit R.icon = 'icons/mob/widerobot_vr.dmi' From b9c1c1995bc9cf7e2617ede3541f871f88eeee94 Mon Sep 17 00:00:00 2001 From: Cebutris Date: Tue, 1 Oct 2019 17:03:30 -0400 Subject: [PATCH 21/69] adds papereating --- code/modules/paperwork/paper.dm | 37 ++++++++++++++----- .../Chemistry-Reagents-Other.dm | 12 +++++- 2 files changed, 38 insertions(+), 11 deletions(-) diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index e8940afecb..ae9734fa06 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -98,7 +98,6 @@ /obj/item/weapon/paper/alien/AltClick() // No airplanes for me. return -//lipstick wiping is in code/game/objects/items/weapons/cosmetics.dm! /obj/item/weapon/paper/New() ..() @@ -212,17 +211,35 @@ if(ishuman(M)) var/mob/living/carbon/human/H = M if(H == user) - user << "You wipe off the lipstick with [src]." - H.lip_style = null - H.update_icons_body() - else - user.visible_message("[user] begins to wipe [H]'s lipstick off with \the [src].", \ - "You begin to wipe off [H]'s lipstick.") - if(do_after(user, 10) && do_after(H, 10, 5, 0)) //user needs to keep their active hand, H does not. - user.visible_message("[user] wipes [H]'s lipstick off with \the [src].", \ - "You wipe off [H]'s lipstick.") + if(icon_state == "scrap" && H.check_has_mouth()) //START OF YAWN CHANGES + user << "You begin to stuff \the [src] into your mouth!" + if(do_after(user, 30)) + user << "You stuff \the [src] into your mouth!" + H.ingested.add_reagent("paper", 10) + H.adjustOxyLoss(10) + qdel(src) //End of yawn changes + else + user << "You wipe off the lipstick with [src]." H.lip_style = null H.update_icons_body() + else + if(icon_state == "scrap" && H.check_has_mouth())//start of yawn changes + user.visible_message("[user] begins to stuff \the [src] into [H]'s mouth!", \ + "You begin to stuff \the [src] into [H]'s mouth!",) + if(do_after(user, 30, H)) + user.visible_message("[user] stuffs \the [src] into [H]'s mouth!",\ + "You stuff \the [src] into [H]'s mouth!") + H.ingested.add_reagent("paper", 10) + H.adjustOxyLoss(10) + qdel(src) //end of yawn changed + else + user.visible_message("[user] begins to wipe [H]'s lipstick off with \the [src].", \ + "You begin to wipe off [H]'s lipstick.") + if(do_after(user, 10) && do_after(H, 10, 5, 0)) //user needs to keep their active hand, H does not. + user.visible_message("[user] wipes [H]'s lipstick off with \the [src].", \ + "You wipe off [H]'s lipstick.") + H.lip_style = null + H.update_icons_body() /obj/item/weapon/paper/proc/addtofield(var/id, var/text, var/links = 0) var/locid = 0 diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm index dea0a6a987..cfad178255 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm @@ -537,4 +537,14 @@ description = "A natural slurry that particularily appeals to fish." taste_description = "earthy" reagent_state = LIQUID - color = "#62764E" \ No newline at end of file + color = "#62764E" + +//YAWN ADDITION. Paper! +/datum/reagent/nutriment/paper //Paper is made from cellulose. You can eat it. It doesn't fill you up very much at all. + name = "Paper" + id = "paper" + description = "Soggy, ground up paper" + taste_description = "paper" + reagent_state = SOLID + color = "e6e6e6" //not quite white + nutriment_factor = 2 // 5 times worse than nutriment \ No newline at end of file From aceee25d087f76cdf49362474eb4888efa917d99 Mon Sep 17 00:00:00 2001 From: Cebutris Date: Tue, 1 Oct 2019 17:13:56 -0400 Subject: [PATCH 22/69] YW edit properly --- code/modules/paperwork/paper.dm | 14 +++++++------- .../Chemistry-Reagents/Chemistry-Reagents-Other.dm | 5 +++-- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index ae9734fa06..f34cf77824 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -207,23 +207,23 @@ " [user] holds up a paper and shows it to [M]. ") M.examinate(src) - else if(user.zone_sel.selecting == O_MOUTH) // lipstick wiping + else if(user.zone_sel.selecting == O_MOUTH) // lipstick wiping and paper eating if(ishuman(M)) var/mob/living/carbon/human/H = M if(H == user) - if(icon_state == "scrap" && H.check_has_mouth()) //START OF YAWN CHANGES + if(icon_state == "scrap" && H.check_has_mouth()) //YW Edit Start user << "You begin to stuff \the [src] into your mouth!" if(do_after(user, 30)) user << "You stuff \the [src] into your mouth!" H.ingested.add_reagent("paper", 10) H.adjustOxyLoss(10) - qdel(src) //End of yawn changes + qdel(src) else user << "You wipe off the lipstick with [src]." H.lip_style = null H.update_icons_body() else - if(icon_state == "scrap" && H.check_has_mouth())//start of yawn changes + if(icon_state == "scrap" && H.check_has_mouth()) user.visible_message("[user] begins to stuff \the [src] into [H]'s mouth!", \ "You begin to stuff \the [src] into [H]'s mouth!",) if(do_after(user, 30, H)) @@ -231,15 +231,15 @@ "You stuff \the [src] into [H]'s mouth!") H.ingested.add_reagent("paper", 10) H.adjustOxyLoss(10) - qdel(src) //end of yawn changed + qdel(src) else user.visible_message("[user] begins to wipe [H]'s lipstick off with \the [src].", \ "You begin to wipe off [H]'s lipstick.") - if(do_after(user, 10) && do_after(H, 10, 5, 0)) //user needs to keep their active hand, H does not. + if(do_after(user, 10, H)) user.visible_message("[user] wipes [H]'s lipstick off with \the [src].", \ "You wipe off [H]'s lipstick.") H.lip_style = null - H.update_icons_body() + H.update_icons_body() //YW Edit End /obj/item/weapon/paper/proc/addtofield(var/id, var/text, var/links = 0) var/locid = 0 diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm index cfad178255..0a6d9099e6 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Other.dm @@ -539,7 +539,7 @@ reagent_state = LIQUID color = "#62764E" -//YAWN ADDITION. Paper! +//YW Edit Start /datum/reagent/nutriment/paper //Paper is made from cellulose. You can eat it. It doesn't fill you up very much at all. name = "Paper" id = "paper" @@ -547,4 +547,5 @@ taste_description = "paper" reagent_state = SOLID color = "e6e6e6" //not quite white - nutriment_factor = 2 // 5 times worse than nutriment \ No newline at end of file + nutriment_factor = 2 // 5 times worse than nutriment +//YW Edit End \ No newline at end of file From b6059d3271f37a9cfc572baf257960b0e5aa65b5 Mon Sep 17 00:00:00 2001 From: gozulio Date: Tue, 1 Oct 2019 18:21:53 -0400 Subject: [PATCH 23/69] Patches whitecane Removes overlay modifying on activation Adds help intent check so the white cane's user can poke people in the ankles! --- .../vore/fluffstuff/custom_items_yw.dm | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/code/modules/vore/fluffstuff/custom_items_yw.dm b/code/modules/vore/fluffstuff/custom_items_yw.dm index 6c9e2d628b..01471751d4 100644 --- a/code/modules/vore/fluffstuff/custom_items_yw.dm +++ b/code/modules/vore/fluffstuff/custom_items_yw.dm @@ -162,7 +162,7 @@ item_state_slots = list(slot_r_hand_str = "goz_whitecane", slot_l_hand_str = "goz_whitecane") w_class = ITEMSIZE_NORMAL force = 5 - attack_verb = list("smacked", "struck", "craked", "beaten", "tripped") + attack_verb = list("smacked", "struck", "craked", "beaten") else user.visible_message("\The [user] collapses the white cane.",\ "You collapse the white cane.",\ @@ -181,18 +181,15 @@ playsound(src.loc, 'sound/weapons/empty.ogg', 50, 1) add_fingerprint(user) - if(blood_overlay && blood_DNA && (blood_DNA.len >= 1)) //updates blood overlay, if any - overlays.Cut()//this might delete other item overlays as well but eeeeeeeh - - var/icon/I = new /icon(src.icon, src.icon_state) - I.Blend(new /icon('icons/effects/blood.dmi', rgb(255,255,255)),ICON_ADD) - I.Blend(new /icon('icons/effects/blood.dmi', "itemblood"),ICON_MULTIPLY) - blood_overlay = I - - overlays += blood_overlay - return +/obj/item/weapon/melee/goz_whitecane/attack(mob/M as mob, mob/user as mob) + if(user.a_intent == I_HELP) + user.visible_message("\The [user] has lightly tapped [M] on the ankle with their white cane!") + return + else + ..() + // ******* // Dawidoe // ******* From 22c207eee6bc92af3e07544cb14b73c7e0e8f3b4 Mon Sep 17 00:00:00 2001 From: gozulio Date: Tue, 1 Oct 2019 18:27:34 -0400 Subject: [PATCH 24/69] Name Fix Fixes name so it's capitalised properly --- code/modules/vore/fluffstuff/custom_items_yw.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/vore/fluffstuff/custom_items_yw.dm b/code/modules/vore/fluffstuff/custom_items_yw.dm index 01471751d4..f9a394dbd0 100644 --- a/code/modules/vore/fluffstuff/custom_items_yw.dm +++ b/code/modules/vore/fluffstuff/custom_items_yw.dm @@ -139,7 +139,7 @@ //Glitterpaws /obj/item/weapon/melee/goz_whitecane - name = "white cane" + name = "White Cane" desc = "A telescoping white cane. They are commonly used by the blind or visually impaired as a mobility tool or as a courtesy to others." icon = 'icons/vore/custom_items_yw.dmi' icon_state = "goz_whitecane_0" From 417d0316f207b3e665a6b82f60ee8c60e7d70d9c Mon Sep 17 00:00:00 2001 From: Renard QuizBee Date: Wed, 2 Oct 2019 01:48:11 +0300 Subject: [PATCH 25/69] Mapfixes: Cafeteria, Medbay toilet, Mirrors, Walls, Virology. 1. Fixed: - Medbay restroom(everything remains in place but water cooler, tables, chairs and disposal unit were moved) now muh comfortable - Some station and surface walls - ALL(i suppose) mirrors(added where it should be and fixed pixel_y or pixel_x) 2. Added: - Medbay restroom: 1 table and 1 random MRE on it - Some loot in maintenance. https://i.imgur.com/16Myhh2.png - "Easter egg"(centcom officer's clothes, shoes and beret) - Colored bedsheets: blue in room 8, red in room 6, yellow in room 4, oragne in room 2; random drink in room 8 + random carp plushie in room 6 + random action figure in room 2 - 2 extra tiles in EVA near exit to space 3. Reworked: - Cafeteria(tables, dispocial units, windows) - Virology was moved 1 tile to right - Medbay toilet near restroom, now feels more comfy --- maps/tether/tether-01-surface1.dmm | 73 ++- maps/tether/tether-02-surface2.dmm | 28 +- maps/tether/tether-03-surface3.dmm | 6 +- maps/tether/tether-05-station1.dmm | 124 ++-- maps/tether/tether-06-station2.dmm | 26 +- maps/tether/tether-07-station3.dmm | 988 +++++++++++++++-------------- 6 files changed, 699 insertions(+), 546 deletions(-) diff --git a/maps/tether/tether-01-surface1.dmm b/maps/tether/tether-01-surface1.dmm index 8934505049..f98378c8df 100644 --- a/maps/tether/tether-01-surface1.dmm +++ b/maps/tether/tether-01-surface1.dmm @@ -6870,6 +6870,7 @@ icon_state = "0-2" }, /obj/effect/floor_decal/industrial/warning, +/obj/random/drinkbottle, /turf/simulated/floor, /area/maintenance/substation/mining) "alT" = ( @@ -6898,9 +6899,6 @@ d2 = 8; icon_state = "4-8" }, -/obj/machinery/alarm{ - pixel_y = 22 - }, /obj/effect/floor_decal/rust, /turf/simulated/floor, /area/maintenance/substation/mining) @@ -23106,6 +23104,7 @@ pixel_x = 0; pixel_y = 26 }, +/obj/random/drinkbottle, /turf/simulated/floor/wood, /area/crew_quarters/sleep/Dorm_8) "aLT" = ( @@ -23944,8 +23943,8 @@ /turf/simulated/floor/wood, /area/crew_quarters/sleep/Dorm_8) "aNr" = ( -/obj/item/weapon/bedsheet/double, /obj/structure/bed/double/padded, +/obj/item/weapon/bedsheet/bluedouble, /turf/simulated/floor/wood, /area/crew_quarters/sleep/Dorm_8) "aNs" = ( @@ -24443,6 +24442,7 @@ pixel_x = 0; pixel_y = 26 }, +/obj/random/carp_plushie, /turf/simulated/floor/wood, /area/crew_quarters/sleep/Dorm_6) "aOr" = ( @@ -24985,8 +24985,8 @@ /turf/simulated/floor/wood, /area/crew_quarters/sleep/Dorm_6) "aPh" = ( -/obj/item/weapon/bedsheet/double, /obj/structure/bed/double/padded, +/obj/item/weapon/bedsheet/reddouble, /turf/simulated/floor/wood, /area/crew_quarters/sleep/Dorm_6) "aPi" = ( @@ -25748,9 +25748,6 @@ }, /turf/simulated/floor/tiled, /area/engineering/atmos) -"aQE" = ( -/turf/simulated/wall/r_wall, -/area/crew_quarters/sleep/Dorm_3) "aQF" = ( /obj/machinery/light{ dir = 8 @@ -26194,8 +26191,8 @@ /turf/simulated/floor/wood, /area/crew_quarters/sleep/Dorm_4) "aRq" = ( -/obj/item/weapon/bedsheet/double, /obj/structure/bed/double/padded, +/obj/item/weapon/bedsheet/yellowdouble, /turf/simulated/floor/wood, /area/crew_quarters/sleep/Dorm_4) "aRr" = ( @@ -26701,6 +26698,7 @@ dir = 1 }, /obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/random/action_figure, /turf/simulated/floor/wood, /area/crew_quarters/sleep/Dorm_2) "aSr" = ( @@ -27328,8 +27326,8 @@ /turf/simulated/floor/wood, /area/crew_quarters/sleep/Dorm_2) "aTF" = ( -/obj/item/weapon/bedsheet/double, /obj/structure/bed/double/padded, +/obj/item/weapon/bedsheet/orangedouble, /turf/simulated/floor/wood, /area/crew_quarters/sleep/Dorm_2) "aTG" = ( @@ -30873,6 +30871,29 @@ /obj/effect/step_trigger/teleporter/to_plains, /turf/simulated/floor/tiled/steel_dirty/virgo3b, /area/tether/surfacebase/outside/outside1) +"cGJ" = ( +/turf/simulated/floor/plating, +/area/maintenance/lower/mining_eva) +"guV" = ( +/obj/structure/closet, +/obj/random/drinkbottle, +/obj/random/maintenance/cargo, +/turf/simulated/floor/tiled/techfloor, +/area/maintenance/lower/vacant_site) +"obY" = ( +/obj/machinery/alarm{ + pixel_y = 22 + }, +/turf/simulated/floor/plating, +/area/maintenance/substation/mining) +"vNx" = ( +/turf/simulated/floor/plating, +/area/maintenance/substation/mining) +"yiv" = ( +/obj/structure/closet/crate, +/obj/random/maintenance/cargo, +/turf/simulated/floor/plating, +/area/maintenance/substation/mining) (1,1,1) = {" aaa @@ -33923,7 +33944,7 @@ aah aah aah aah -azs +auK auK auK auK @@ -34065,7 +34086,7 @@ aah aah aah aah -azs +auK aAs aBu aCc @@ -34207,7 +34228,7 @@ aah aah aah aah -azs +auK aAt aBv aBv @@ -34349,7 +34370,7 @@ aah aah aah aah -azs +auK aAu aBv aah @@ -34491,7 +34512,7 @@ aah aah aah aah -azs +auK aAu aBv aah @@ -34633,7 +34654,7 @@ aah aah aah aah -azs +auK abB aBv aah @@ -34775,7 +34796,7 @@ aah aah aah aah -azs +auK aAu aBv aah @@ -34917,7 +34938,7 @@ aah aah aah aah -azs +auK aAv aBv aah @@ -40990,7 +41011,7 @@ abT abT abT abT -abT +aex aex aex aex @@ -41128,12 +41149,12 @@ aah aah aah abT -abT +cGJ acS acS adp -abT aex +yiv alS amn afX @@ -41274,8 +41295,8 @@ acj acX acX adL -abT aex +vNx alT amo amI @@ -41416,8 +41437,8 @@ acQ adl ado adM -abT aex +obY alU amp amJ @@ -41558,7 +41579,7 @@ abn abn abT adN -abT +aex alC alV aex @@ -43889,7 +43910,7 @@ aOj aOj aOj aQb -aQE +aQb aQb aQb aSi @@ -44838,7 +44859,7 @@ anI aob aom ahx -apF +guV apF ahc apF diff --git a/maps/tether/tether-02-surface2.dmm b/maps/tether/tether-02-surface2.dmm index b594ade7a4..c903dc5e17 100644 --- a/maps/tether/tether-02-surface2.dmm +++ b/maps/tether/tether-02-surface2.dmm @@ -23233,6 +23233,11 @@ dir = 9 }, /obj/machinery/light/small, +/obj/structure/mirror{ + dir = 4; + pixel_x = 25; + pixel_y = 0 + }, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/medical/resleeving) "Rh" = ( @@ -27401,6 +27406,23 @@ }, /turf/simulated/floor/tiled, /area/tether/surfacebase/security/lowerhallway) +"XK" = ( +/turf/simulated/wall{ + can_open = 1 + }, +/area/maintenance/lower/bar) +"Za" = ( +/turf/simulated/wall{ + can_open = 0 + }, +/area/maintenance/lower/bar) +"Zt" = ( +/obj/structure/closet/crate, +/obj/random/cash, +/obj/random/contraband, +/obj/random/drinkbottle, +/turf/simulated/floor/plating, +/area/maintenance/lower/mining) (1,1,1) = {" aa @@ -41927,7 +41949,7 @@ dJ df ad Th -Th +Zt ny ny dY @@ -42212,8 +42234,8 @@ ec du du du -du -du +Za +XK du du du diff --git a/maps/tether/tether-03-surface3.dmm b/maps/tether/tether-03-surface3.dmm index 89289f56c8..a0f4a2999d 100644 --- a/maps/tether/tether-03-surface3.dmm +++ b/maps/tether/tether-03-surface3.dmm @@ -5024,7 +5024,11 @@ dir = 8; icon_state = "sink"; pixel_x = -12; - pixel_y = 8 + pixel_y = 0 + }, +/obj/structure/mirror{ + pixel_x = -25; + pixel_y = 0 }, /turf/simulated/floor/tiled/white, /area/crew_quarters/recreation_area_restroom) diff --git a/maps/tether/tether-05-station1.dmm b/maps/tether/tether-05-station1.dmm index d45db45f55..2174a40741 100644 --- a/maps/tether/tether-05-station1.dmm +++ b/maps/tether/tether-05-station1.dmm @@ -1316,10 +1316,6 @@ }, /turf/simulated/floor/water/pool, /area/hallway/station/atrium) -"acD" = ( -/obj/structure/table/woodentable, -/turf/simulated/floor/wood, -/area/hallway/station/atrium) "acE" = ( /obj/structure/table/woodentable, /obj/machinery/door/blast/shutters{ @@ -1479,12 +1475,9 @@ /turf/simulated/floor/water/pool, /area/hallway/station/atrium) "ada" = ( -/obj/structure/table/wooden_reinforced, -/turf/simulated/floor/grass, -/area/hallway/station/atrium) -"adb" = ( -/obj/structure/bed/chair/wood{ - dir = 1 +/obj/machinery/disposal, +/obj/structure/disposalpipe/trunk{ + dir = 4 }, /turf/simulated/floor/grass, /area/hallway/station/atrium) @@ -1740,10 +1733,12 @@ layer = 3.1; name = "Cafe Shutters" }, +/obj/structure/window/reinforced{ + dir = 1 + }, /turf/simulated/floor/tiled, /area/hallway/station/atrium) "ady" = ( -/obj/structure/table/marble, /obj/machinery/floor_light/prebuilt{ on = 1 }, @@ -1753,6 +1748,13 @@ layer = 3.1; name = "Cafe Shutters" }, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/disposal, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, /turf/simulated/floor/wood, /area/hallway/station/atrium) "adz" = ( @@ -3611,6 +3613,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, +/obj/structure/disposalpipe/segment, /obj/effect/floor_decal/borderfloor/corner{ dir = 8 }, @@ -3632,6 +3635,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, +/obj/structure/disposalpipe/segment, /turf/simulated/floor/tiled, /area/hallway/station/atrium) "agq" = ( @@ -6986,20 +6990,11 @@ /obj/item/weapon/reagent_containers/food/snacks/donut/jelly, /turf/simulated/floor/wood, /area/hallway/station/atrium) -"amz" = ( -/obj/structure/table/woodentable, -/obj/item/weapon/reagent_containers/food/snacks/donut/chaos, -/turf/simulated/floor/wood, -/area/hallway/station/atrium) "amA" = ( /obj/structure/table/wooden_reinforced, /obj/item/weapon/reagent_containers/food/snacks/donut/cherryjelly, -/turf/simulated/floor/grass, -/area/hallway/station/atrium) -"amB" = ( /obj/structure/table/woodentable, -/obj/item/weapon/reagent_containers/food/condiment/small/sugar, -/turf/simulated/floor/wood, +/turf/simulated/floor/grass, /area/hallway/station/atrium) "amC" = ( /obj/structure/table/woodentable, @@ -7034,6 +7029,8 @@ layer = 3.1; name = "Cafe Shutters" }, +/obj/structure/table/woodentable, +/obj/item/weapon/reagent_containers/food/condiment/small/sugar, /turf/simulated/floor/wood, /area/hallway/station/atrium) "amG" = ( @@ -13804,7 +13801,7 @@ "aGx" = ( /obj/structure/mirror{ dir = 4; - pixel_x = 32; + pixel_x = 28; pixel_y = 0 }, /obj/structure/sink{ @@ -14204,7 +14201,7 @@ }, /obj/structure/mirror{ dir = 4; - pixel_x = 32; + pixel_x = 28; pixel_y = 0 }, /obj/structure/sink{ @@ -19600,7 +19597,7 @@ }, /obj/structure/mirror{ dir = 4; - pixel_x = 32; + pixel_x = 28; pixel_y = 0 }, /turf/simulated/floor/tiled/white, @@ -19920,7 +19917,7 @@ }, /obj/structure/mirror{ dir = 4; - pixel_x = 32; + pixel_x = 28; pixel_y = 0 }, /turf/simulated/floor/tiled/white, @@ -21526,6 +21523,16 @@ }, /turf/simulated/floor/tiled, /area/teleporter) +"bNZ" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 4 + }, +/obj/structure/disposalpipe/junction{ + dir = 1; + icon_state = "pipe-j2" + }, +/turf/simulated/floor/tiled, +/area/hallway/station/atrium) "bPc" = ( /obj/machinery/firealarm{ dir = 4; @@ -22564,6 +22571,16 @@ }, /turf/simulated/floor/plating, /area/tether/station/dock_one) +"mbn" = ( +/obj/machinery/atmospherics/unary/vent_pump/on, +/obj/structure/disposalpipe/sortjunction{ + dir = 4; + icon_state = "pipe-j1s"; + name = "Library"; + sortType = "Library" + }, +/turf/simulated/floor/tiled, +/area/hallway/station/atrium) "mNU" = ( /obj/machinery/door/firedoor/glass, /obj/structure/grille, @@ -22591,6 +22608,13 @@ /obj/machinery/light, /turf/simulated/floor/tiled, /area/hallway/station/docks) +"qBc" = ( +/obj/structure/disposalpipe/junction{ + dir = 1; + icon_state = "pipe-j2" + }, +/turf/simulated/floor/tiled, +/area/hallway/station/atrium) "scB" = ( /obj/machinery/computer/shuttle_control/tether_backup{ icon_state = "computer"; @@ -22626,6 +22650,11 @@ }, /turf/simulated/floor/tiled/dark, /area/tether/station/dock_one) +"uiN" = ( +/obj/structure/table/woodentable, +/obj/item/weapon/reagent_containers/food/snacks/donut/chaos, +/turf/simulated/floor/grass, +/area/hallway/station/atrium) "uWS" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 @@ -22661,6 +22690,13 @@ /obj/structure/window/reinforced/full, /turf/simulated/floor/plating, /area/tether/station/dock_one) +"xfY" = ( +/obj/structure/disposalpipe/junction{ + dir = 8; + icon_state = "pipe-j2" + }, +/turf/simulated/floor/tiled, +/area/hallway/station/atrium) "xMk" = ( /obj/structure/cable/green{ icon_state = "16-0" @@ -33246,7 +33282,7 @@ acm acy acy amA -ada +adl acy acy acm @@ -33670,13 +33706,13 @@ afW agB acp acF -acD acI acI acI acI -amz -acU +acI +acI +acH acH acG acy @@ -34102,7 +34138,7 @@ ama amG acH amF -amB +acU acH acm acm @@ -34236,15 +34272,15 @@ ags aiE afa afg -acp -acm +xfY +adH ady aga amy adM acH amF -amB +acU acH acm acm @@ -34532,7 +34568,7 @@ acU acH acF acy -adl +uiN adl acy acp @@ -34664,13 +34700,13 @@ afC ajs acp acF -acD acK acK acK acK -amz -acU +acK +acK +acH acH acG acy @@ -35089,10 +35125,10 @@ ala alg ald acr -acY acy -ada -ada +acy +uiN +adl acy acy acm @@ -35232,7 +35268,7 @@ afC aju act ada -adb +acy adc adc acy @@ -35245,7 +35281,7 @@ acy acy acy acy -ahH +mbn ago alM amL @@ -35373,7 +35409,7 @@ akQ afC aAL aCx -acW +bNZ adH adH adH @@ -35387,7 +35423,7 @@ adH adH adH acW -bay +qBc agp aeP acm diff --git a/maps/tether/tether-06-station2.dmm b/maps/tether/tether-06-station2.dmm index de7396d151..8337a7ca49 100644 --- a/maps/tether/tether-06-station2.dmm +++ b/maps/tether/tether-06-station2.dmm @@ -15240,11 +15240,11 @@ /turf/simulated/floor/wood, /area/bridge/meeting_room) "wT" = ( +/obj/machinery/disposal, +/obj/structure/disposalpipe/trunk, /obj/machinery/light{ dir = 1 }, -/obj/machinery/disposal, -/obj/structure/disposalpipe/trunk, /turf/simulated/floor/wood, /area/bridge/meeting_room) "wU" = ( @@ -19212,7 +19212,7 @@ }, /obj/structure/mirror{ dir = 4; - pixel_x = 32; + pixel_x = 28; pixel_y = 0 }, /turf/simulated/floor/tiled/white, @@ -20200,7 +20200,7 @@ }, /obj/structure/mirror{ dir = 4; - pixel_x = 32; + pixel_x = 28; pixel_y = 0 }, /obj/machinery/power/apc{ @@ -22454,6 +22454,12 @@ }, /turf/simulated/floor/tiled/white, /area/maintenance/station/sec_lower) +"Xd" = ( +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/wood, +/area/bridge/meeting_room) "Xk" = ( /obj/structure/table/steel, /obj/item/device/flashlight/lamp{ @@ -36018,7 +36024,7 @@ yP xN yU wo -ac +wo ac ac ac @@ -36578,14 +36584,14 @@ pB qg vK wo +Xd wV wV wV wV wV wV -wV -wV +yU wo aP aP @@ -37001,9 +37007,9 @@ qc qc uj uJ +qc vl oY -oY aP aP aP @@ -37143,9 +37149,9 @@ sU tE uk uK +qc vl oY -oY aa aa aa @@ -37287,7 +37293,7 @@ oY uL oY oY -aa +oY aa aa aa diff --git a/maps/tether/tether-07-station3.dmm b/maps/tether/tether-07-station3.dmm index bb01a4beef..4cc5b5fa27 100644 --- a/maps/tether/tether-07-station3.dmm +++ b/maps/tether/tether-07-station3.dmm @@ -21450,16 +21450,8 @@ /turf/simulated/floor, /area/maintenance/station/cargo) "Hf" = ( -/obj/structure/table/standard, -/obj/random/soap, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/obj/machinery/light_switch{ - dir = 8; - pixel_x = 24 - }, -/turf/simulated/floor/tiled/white, +/obj/machinery/recharge_station, +/turf/simulated/floor/tiled/techfloor, /area/crew_quarters/medical_restroom) "Hg" = ( /obj/machinery/firealarm{ @@ -22936,15 +22928,7 @@ pixel_x = -27; pixel_y = 0 }, -/obj/machinery/camera/network/medbay{ - dir = 1 - }, -/obj/effect/floor_decal/spline/plain{ - dir = 4 - }, -/obj/machinery/light_switch{ - pixel_y = -25 - }, +/obj/effect/floor_decal/corner/paleblue/diagonal, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "Jn" = ( @@ -23889,28 +23873,6 @@ }, /turf/simulated/floor/plating, /area/maintenance/station/cargo) -"KS" = ( -/obj/machinery/recharge_station, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/simulated/floor/tiled/techfloor, -/area/crew_quarters/medical_restroom) -"KT" = ( -/obj/machinery/door/airlock/medical{ - name = "Rest Room" - }, -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/turf/simulated/floor/tiled/steel_grid, -/area/crew_quarters/medical_restroom) -"KU" = ( -/obj/machinery/alarm{ - pixel_y = 22 - }, -/turf/simulated/floor/tiled/white, -/area/crew_quarters/medical_restroom) "KV" = ( /obj/structure/undies_wardrobe, /turf/simulated/floor/tiled/white, @@ -23925,9 +23887,6 @@ }, /obj/item/weapon/book/manual/stasis, /obj/item/weapon/book/manual/resleeving, -/obj/effect/floor_decal/spline/plain{ - dir = 4 - }, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "KY" = ( @@ -23962,11 +23921,6 @@ /obj/effect/floor_decal/corner/paleblue/diagonal, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) -"Lb" = ( -/obj/structure/reagent_dispensers/water_cooler/full, -/obj/effect/floor_decal/corner/paleblue/diagonal, -/turf/simulated/floor/tiled/white, -/area/crew_quarters/medbreak) "Lc" = ( /obj/effect/floor_decal/corner/paleblue/diagonal, /obj/effect/floor_decal/steeldecal/steel_decals4{ @@ -24120,15 +24074,14 @@ /area/medical/sleeper) "Lr" = ( /obj/machinery/vending/fitness, -/obj/effect/floor_decal/spline/plain{ - dir = 4 - }, +/obj/effect/floor_decal/spline/plain, /obj/machinery/status_display{ density = 0; layer = 4; pixel_x = -32; pixel_y = 0 }, +/obj/effect/floor_decal/corner/paleblue/diagonal, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "Ls" = ( @@ -24199,26 +24152,13 @@ /obj/random/maintenance/cargo, /turf/simulated/floor/plating, /area/maintenance/station/cargo) -"LA" = ( -/obj/machinery/firealarm{ - dir = 8; - pixel_x = -24; - pixel_y = 0 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, -/turf/simulated/floor/tiled/white, -/area/crew_quarters/medical_restroom) "LB" = ( /obj/structure/sign/nosmoking_1, /turf/simulated/wall/r_wall, /area/medical/chemistry) "LC" = ( /obj/machinery/vending/snack, -/obj/effect/floor_decal/spline/plain{ - dir = 4 - }, +/obj/effect/floor_decal/corner/paleblue/diagonal, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "LD" = ( @@ -24530,38 +24470,20 @@ /obj/random/maintenance/cargo, /turf/simulated/floor/plating, /area/maintenance/station/cargo) -"Mc" = ( -/obj/structure/toilet{ - dir = 4 - }, -/obj/machinery/light/small{ - dir = 8 - }, -/turf/simulated/floor/tiled/white, -/area/crew_quarters/medical_restroom) "Md" = ( /obj/machinery/door/airlock/medical{ name = "Rest Room" }, /turf/simulated/floor/tiled/white, /area/crew_quarters/medical_restroom) -"Me" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, -/turf/simulated/floor/tiled/white, -/area/crew_quarters/medical_restroom) "Mf" = ( -/obj/structure/table/standard, -/obj/random/soap, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ +/obj/machinery/light/small{ dir = 8 }, -/obj/machinery/light{ - dir = 4 +/obj/effect/floor_decal/industrial/warning{ + dir = 1 }, -/turf/simulated/floor/tiled/white, +/turf/simulated/floor/tiled/techfloor, /area/crew_quarters/medical_restroom) "Mg" = ( /obj/structure/shuttle/engine/propulsion{ @@ -24606,7 +24528,6 @@ /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "Mj" = ( -/obj/structure/bed/chair, /obj/structure/cable/green{ d1 = 4; d2 = 8; @@ -24617,13 +24538,9 @@ }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, /obj/effect/floor_decal/corner/paleblue/diagonal, -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "Mk" = ( -/obj/structure/bed/chair, /obj/structure/cable/green{ d1 = 4; d2 = 8; @@ -24637,9 +24554,6 @@ dir = 4 }, /obj/effect/floor_decal/corner/paleblue/diagonal, -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "Ml" = ( @@ -24906,43 +24820,18 @@ }, /turf/simulated/floor/tiled/white, /area/hallway/secondary/escape/medical_escape_pod_hallway) -"Mz" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "west bump"; - pixel_x = -28 - }, -/obj/structure/cable/green{ - d2 = 2; - icon_state = "0-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/white, -/area/crew_quarters/medical_restroom) -"MA" = ( -/obj/structure/sink{ - dir = 4; - icon_state = "sink"; - pixel_x = 11; - pixel_y = 0 - }, -/obj/structure/mirror{ - dir = 4; - pixel_x = 32; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/white, -/area/crew_quarters/medical_restroom) "MB" = ( -/obj/machinery/vending/cola, /obj/machinery/light{ dir = 8; icon_state = "tube1" }, -/obj/effect/floor_decal/spline/plain{ - dir = 4 +/obj/machinery/light_switch{ + dir = 4; + icon_state = "light1"; + pixel_x = -24 }, +/obj/structure/reagent_dispensers/water_cooler/full, +/obj/effect/floor_decal/corner/paleblue/diagonal, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "MC" = ( @@ -24956,16 +24845,6 @@ /obj/effect/floor_decal/corner/paleblue/diagonal, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) -"MD" = ( -/obj/structure/bed/chair{ - dir = 4 - }, -/obj/effect/floor_decal/corner/paleblue/diagonal, -/obj/effect/landmark/start{ - name = "Medical Doctor" - }, -/turf/simulated/floor/tiled/white, -/area/crew_quarters/medbreak) "ME" = ( /obj/structure/table/glass, /obj/item/weapon/deck/cards, @@ -25041,50 +24920,35 @@ }, /turf/simulated/floor/tiled/white, /area/hallway/secondary/escape/medical_escape_pod_hallway) -"MN" = ( -/obj/structure/curtain/open/shower, -/obj/machinery/shower{ - pixel_y = 10 - }, -/obj/effect/floor_decal/steeldecal/steel_decals5, -/obj/effect/floor_decal/steeldecal/steel_decals5{ - dir = 1 - }, -/obj/effect/floor_decal/steeldecal/steel_decals10{ - dir = 5 - }, -/obj/effect/floor_decal/steeldecal/steel_decals10{ +"MO" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 6 }, -/turf/simulated/floor/tiled/white, -/area/crew_quarters/medical_restroom) -"MO" = ( -/obj/machinery/light{ - dir = 4 +/obj/machinery/alarm{ + pixel_y = 22 }, /turf/simulated/floor/tiled/white, /area/crew_quarters/medical_restroom) "MP" = ( -/obj/structure/cable/green{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 + dir = 4 + }, +/obj/machinery/power/apc{ + dir = 1; + name = "north bump"; + pixel_x = 0; + pixel_y = 28 + }, +/obj/structure/cable/green{ + icon_state = "0-4" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ icon_state = "intact-scrubbers"; - dir = 5 + dir = 4 }, /turf/simulated/floor/tiled/white, /area/crew_quarters/medical_restroom) "MQ" = ( -/obj/structure/cable/green{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, @@ -25092,9 +24956,10 @@ icon_state = "intact-scrubbers"; dir = 4 }, -/obj/effect/floor_decal/steeldecal/steel_decals4, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 10 +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" }, /turf/simulated/floor/tiled/white, /area/crew_quarters/medical_restroom) @@ -25115,6 +24980,15 @@ icon_state = "intact-scrubbers"; dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + icon_state = "intact-scrubbers"; + dir = 4 + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "MS" = ( @@ -25130,15 +25004,13 @@ icon_state = "intact-scrubbers"; dir = 4 }, -/obj/effect/floor_decal/spline/plain{ - dir = 4 - }, /obj/effect/floor_decal/steeldecal/steel_decals4{ dir = 6 }, /obj/effect/floor_decal/steeldecal/steel_decals4{ dir = 1 }, +/obj/effect/floor_decal/corner/paleblue/diagonal, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "MT" = ( @@ -25230,19 +25102,24 @@ /turf/simulated/floor/tiled/white, /area/medical/sleeper) "Nc" = ( -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/effect/floor_decal/steeldecal/steel_decals4{ dir = 8 }, /obj/effect/floor_decal/steeldecal/steel_decals4{ dir = 5 }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + icon_state = "intact-scrubbers"; + dir = 5 + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, /turf/simulated/floor/tiled/white, /area/medical/sleeper) "Nd" = ( @@ -25250,12 +25127,18 @@ /obj/effect/floor_decal/corner/paleblue/border, /obj/effect/floor_decal/borderfloorwhite/corner2, /obj/effect/floor_decal/corner/paleblue/bordercorner2, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/obj/structure/cable/green{ + icon_state = "2-8" + }, /turf/simulated/floor/tiled/white, /area/medical/sleeper) "Ne" = ( -/obj/structure/bed/chair{ - dir = 1 - }, /obj/machinery/camera/network/medbay{ dir = 1 }, @@ -25287,6 +25170,9 @@ }, /obj/effect/floor_decal/borderfloorwhite, /obj/effect/floor_decal/corner/paleblue/border, +/obj/structure/bed/chair{ + dir = 1 + }, /turf/simulated/floor/tiled/white, /area/medical/sleeper) "Ni" = ( @@ -25335,42 +25221,17 @@ /turf/simulated/floor/tiled/white, /area/crew_quarters/medical_restroom) "Nm" = ( -/obj/machinery/alarm{ - dir = 1; - icon_state = "alarm0"; - pixel_y = -22 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 10 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4, -/turf/simulated/floor/tiled/white, -/area/crew_quarters/medical_restroom) -"Nn" = ( -/obj/effect/floor_decal/steeldecal/steel_decals4{ +/obj/structure/table/standard, +/obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 6 - }, +/obj/machinery/light/small, /turf/simulated/floor/tiled/white, /area/crew_quarters/medical_restroom) "No" = ( /obj/structure/table/standard, /obj/item/weapon/storage/box/cups, -/obj/effect/floor_decal/spline/plain{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/crew_quarters/medbreak) -"Np" = ( -/obj/structure/bed/chair{ - dir = 1 - }, /obj/effect/floor_decal/corner/paleblue/diagonal, -/obj/effect/landmark/start{ - name = "Paramedic" - }, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "Nq" = ( @@ -25466,13 +25327,6 @@ }, /turf/simulated/floor/tiled/techfloor, /area/ai_core_foyer) -"Nx" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/plating, -/area/crew_quarters/medical_restroom) "Ny" = ( /obj/structure/table/standard, /obj/machinery/atmospherics/unary/vent_pump/on{ @@ -25487,26 +25341,18 @@ /turf/simulated/floor/tiled/white, /area/medical/virology) "Nz" = ( -/obj/structure/disposalpipe/segment{ - dir = 1; - icon_state = "pipe-c" - }, /obj/effect/floor_decal/corner/paleblue/diagonal, +/obj/structure/disposalpipe/segment, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "NA" = ( -/obj/machinery/disposal, /obj/item/device/radio/intercom{ dir = 4; pixel_x = 24 }, -/obj/item/device/radio/intercom/department/medbay{ - pixel_y = -24 - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, /obj/effect/floor_decal/corner/paleblue/diagonal, +/obj/structure/table/standard, +/obj/item/weapon/storage/mre/random, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "NB" = ( @@ -25604,11 +25450,9 @@ /turf/simulated/floor/tiled/white, /area/hallway/secondary/escape/medical_escape_pod_hallway) "NH" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/plating, +/obj/effect/floor_decal/corner/paleblue/diagonal, +/obj/effect/floor_decal/corner/paleblue/diagonal, +/turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) "NI" = ( /obj/structure/shuttle/engine/propulsion{ @@ -26173,6 +26017,18 @@ /obj/structure/closet/walllocker/emerglocker/south, /turf/simulated/shuttle/floor, /area/shuttle/large_escape_pod1/station) +"OP" = ( +/obj/effect/floor_decal/corner/paleblue/diagonal, +/obj/item/device/radio/intercom/department/medbay{ + dir = 4; + pixel_x = 24 + }, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/machinery/disposal, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medbreak) "OQ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 9; @@ -26783,6 +26639,29 @@ /obj/structure/window/reinforced, /turf/simulated/floor/plating, /area/medical/virologyisolation) +"Qf" = ( +/obj/structure/toilet{ + pixel_y = 15 + }, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medical_restroom) +"Qr" = ( +/obj/machinery/shower{ + pixel_y = 10 + }, +/obj/effect/floor_decal/steeldecal/steel_decals5, +/obj/effect/floor_decal/steeldecal/steel_decals5{ + dir = 1 + }, +/obj/effect/floor_decal/steeldecal/steel_decals10{ + dir = 5 + }, +/obj/effect/floor_decal/steeldecal/steel_decals10{ + dir = 6 + }, +/obj/structure/curtain/open/shower, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medical_restroom) "Qt" = ( /turf/simulated/wall, /area/tether/exploration) @@ -26795,10 +26674,27 @@ }, /turf/simulated/floor/bluegrid, /area/ai_core_foyer) +"Qx" = ( +/obj/machinery/light/small{ + icon_state = "bulb1"; + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medical_restroom) "Qz" = ( /obj/structure/railing, /turf/simulated/floor, /area/maintenance/cargo) +"QE" = ( +/obj/effect/landmark/start{ + name = "Medical Doctor" + }, +/obj/structure/bed/chair{ + dir = 1 + }, +/obj/effect/floor_decal/corner/paleblue/diagonal, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medbreak) "QI" = ( /obj/structure/cable/cyan{ icon_state = "32-1" @@ -27855,6 +27751,15 @@ }, /turf/simulated/floor/tiled/white, /area/security/security_bathroom) +"Tb" = ( +/obj/structure/window/reinforced{ + dir = 8; + health = 1e+006 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/turf/simulated/floor/plating, +/area/crew_quarters/medical_restroom) "Tc" = ( /obj/structure/handrail{ dir = 4 @@ -27878,6 +27783,25 @@ }, /turf/simulated/floor/carpet, /area/security/breakroom) +"Tf" = ( +/obj/structure/table/standard, +/obj/random/soap, +/obj/random/soap, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medical_restroom) +"Th" = ( +/obj/effect/landmark/start{ + name = "Medical Doctor" + }, +/obj/structure/bed/chair{ + dir = 8 + }, +/obj/effect/floor_decal/corner/paleblue/diagonal, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medbreak) "Ti" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -27914,6 +27838,12 @@ }, /turf/simulated/floor/tiled/techfloor/grid, /area/shuttle/excursion/tether) +"Tt" = ( +/obj/structure/toilet{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medical_restroom) "Tu" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ icon_state = "intact-supply"; @@ -27985,6 +27915,12 @@ }, /turf/simulated/floor/wood, /area/crew_quarters/heads/hos) +"TP" = ( +/obj/structure/window/reinforced, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/turf/simulated/floor/plating, +/area/crew_quarters/medbreak) "TQ" = ( /obj/structure/table/woodentable, /obj/item/weapon/storage/box/donkpockets, @@ -28178,6 +28114,16 @@ }, /turf/simulated/floor/tiled, /area/shuttle/excursion/tether) +"Ut" = ( +/obj/effect/landmark/start{ + name = "Medical Doctor" + }, +/obj/structure/bed/chair{ + dir = 4 + }, +/obj/effect/floor_decal/corner/paleblue/diagonal, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medbreak) "Uu" = ( /obj/machinery/computer/security, /turf/simulated/floor/wood, @@ -28190,6 +28136,14 @@ /obj/random/soap, /turf/simulated/floor/tiled/white, /area/security/security_bathroom) +"Ux" = ( +/obj/effect/floor_decal/corner/paleblue/diagonal, +/obj/structure/disposalpipe/segment{ + dir = 1; + icon_state = "pipe-c" + }, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medbreak) "Uy" = ( /obj/machinery/requests_console{ announcementConsole = 1; @@ -28499,12 +28453,34 @@ /obj/structure/flight_left, /turf/simulated/floor/tiled, /area/shuttle/excursion/tether) +"Vv" = ( +/obj/structure/sink{ + pixel_y = 26 + }, +/obj/machinery/firealarm{ + dir = 8; + pixel_x = -24; + pixel_y = 0 + }, +/obj/structure/mirror{ + pixel_y = 32 + }, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medical_restroom) "Vw" = ( /obj/machinery/sleeper{ dir = 8 }, /turf/simulated/floor/tiled, /area/shuttle/excursion/tether) +"VA" = ( +/obj/effect/landmark/start{ + name = "Medical Doctor" + }, +/obj/structure/bed/chair, +/obj/effect/floor_decal/corner/paleblue/diagonal, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medbreak) "VB" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -28697,10 +28673,34 @@ }, /turf/simulated/floor/tiled, /area/shuttle/excursion/tether) +"Wr" = ( +/obj/structure/table/standard, +/obj/item/weapon/towel/random, +/obj/item/weapon/towel/random, +/obj/item/weapon/towel/random, +/obj/item/weapon/towel/random, +/obj/item/weapon/towel/random, +/obj/item/weapon/towel/random, +/obj/item/weapon/towel/random, +/obj/item/weapon/towel/random, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medical_restroom) "Ws" = ( /obj/machinery/atmospherics/pipe/simple/hidden, /turf/simulated/wall/rshull, /area/shuttle/excursion/tether) +"Wv" = ( +/obj/machinery/alarm{ + dir = 4; + icon_state = "alarm0"; + pixel_x = -22; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medical_restroom) +"Ww" = ( +/turf/simulated/wall, +/area/crew_quarters/heads/cmo) "Wx" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -28718,6 +28718,14 @@ /obj/machinery/door/firedoor/glass, /turf/simulated/floor/plating, /area/shuttle/excursion/tether) +"Wz" = ( +/obj/machinery/vending/cola, +/obj/machinery/camera/network/medbay{ + dir = 4 + }, +/obj/effect/floor_decal/corner/paleblue/diagonal, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medbreak) "WB" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 @@ -28729,7 +28737,7 @@ pixel_y = 0 }, /obj/structure/mirror{ - pixel_x = 30 + pixel_x = 25 }, /turf/simulated/floor/tiled/white, /area/security/security_bathroom) @@ -28737,6 +28745,23 @@ /obj/structure/flight_right, /turf/simulated/floor/tiled, /area/shuttle/excursion/tether) +"WE" = ( +/obj/effect/decal/remains, +/obj/item/clothing/under/rank/centcom_officer, +/obj/item/clothing/head/beret/centcom/officer, +/obj/item/clothing/shoes/laceup, +/turf/simulated/mineral/floor/vacuum, +/area/mine/explored/upper_level) +"WF" = ( +/obj/structure/window/reinforced, +/obj/structure/window/reinforced{ + dir = 8; + health = 1e+006 + }, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/turf/simulated/floor/plating, +/area/crew_quarters/medical_restroom) "WG" = ( /obj/machinery/disposal/deliveryChute{ dir = 8 @@ -29016,6 +29041,19 @@ }, /turf/simulated/floor/tiled/techfloor/grid, /area/shuttle/excursion/tether) +"Yh" = ( +/obj/structure/sink{ + dir = 4; + icon_state = "sink"; + pixel_x = 11; + pixel_y = 0 + }, +/obj/structure/mirror{ + pixel_x = 25; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medical_restroom) "Yi" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ @@ -29054,6 +29092,11 @@ }, /turf/simulated/floor/tiled, /area/shuttle/excursion/tether) +"Yp" = ( +/turf/simulated/wall{ + can_open = 0 + }, +/area/crew_quarters/medical_restroom) "Ys" = ( /obj/structure/bed/chair/shuttle{ icon_state = "shuttle_chair"; @@ -29084,6 +29127,12 @@ }, /turf/simulated/floor/carpet, /area/crew_quarters/heads/hos) +"Yz" = ( +/obj/structure/window/reinforced, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/turf/simulated/floor/plating, +/area/crew_quarters/medical_restroom) "YC" = ( /obj/effect/floor_decal/carpet, /turf/simulated/floor/carpet, @@ -29220,6 +29269,21 @@ /obj/structure/bookcase, /turf/simulated/floor/wood, /area/crew_quarters/heads/cmo) +"Zu" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medical_restroom) +"Zx" = ( +/obj/machinery/light/small{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/crew_quarters/medical_restroom) "Zy" = ( /obj/structure/disposaloutlet{ dir = 8 @@ -34829,13 +34893,13 @@ ab ab ab ab -ab -ab -aa -aa -aa -aa -aa +KE +KE +KE +KE +KE +Tb +WF aa aa aa @@ -34971,13 +35035,13 @@ ab ab ab ab -ab -ab -ab -ab -ab -aa -aa +KE +Qr +Wv +KE +Vv +Nl +Yz aa aa aa @@ -35113,15 +35177,15 @@ ab ab ab ab -ab -ab -ab KE -KE -KE -KE -aa -aa +Qx +Nl +Md +Nl +Nl +Yz +vt +vt aa aa aa @@ -35254,17 +35318,17 @@ ab ab ab ab +ab KE +Tt +Yh KE -KE -KE -KE -MN Nl +Wr KE vt -aa -aa +vt +vt aa aa aa @@ -35396,17 +35460,17 @@ ab ab ab ab +ab KE -KS +Yp KE -Mc KE MO Nm KE vt -aa -aa +vt +vt aa aa aa @@ -35538,18 +35602,18 @@ ab ab ab ab +ab KE -KT -KE -Md -KE -KE +Qf +Zx Md +Zu +Tf KE +ab +vt +vt vt -aa -aa -aa aa aa aa @@ -35680,14 +35744,16 @@ ab ab ab ab +ab +KE +KE +KE KE -KU -LA -Me -Mz MP -Nn -Nx +Nl +KE +ab +ab vt vt aa @@ -35730,8 +35796,6 @@ aa aa aa aa -aa -aa "} (46,1,1) = {" aa @@ -35822,14 +35886,16 @@ ab ab ab ab +ab KE -KV Hf Mf -MA +Md MQ -MA -Nx +KV +KE +ab +ab vt vt aa @@ -35872,8 +35938,6 @@ aa aa aa aa -aa -aa "} (47,1,1) = {" aa @@ -35973,6 +36037,7 @@ MR KW KW KW +KW vt vt aa @@ -36015,7 +36080,6 @@ aa aa aa aa -aa "} (48,1,1) = {" aa @@ -36114,6 +36178,7 @@ MB MS No Jm +Wz KW vt vt @@ -36157,7 +36222,6 @@ aa aa aa aa -aa "} (49,1,1) = {" aa @@ -36256,8 +36320,8 @@ MC MT Ld Ld -NH -vt +Ld +TP vt vt aa @@ -36394,11 +36458,12 @@ Jr KZ LE Mi -MD +Ld MU +Ut Ld Ld -NH +TP vt vt vt @@ -36441,7 +36506,6 @@ aa aa aa aa -aa "} (51,1,1) = {" aa @@ -36536,11 +36600,12 @@ Jr La LF Mj -ME +VA MV -Np +ME +QE Ld -NH +TP vt vt vt @@ -36583,7 +36648,6 @@ aa aa aa aa -aa "} (52,1,1) = {" aa @@ -36675,14 +36739,15 @@ IF LT Ke Lp -Lb +Ld Ld Mk -MF +VA MW -Np -Ld +MF +QE NH +TP vt vt vt @@ -36725,7 +36790,6 @@ aa aa aa aa -aa "} (53,1,1) = {" aa @@ -36820,11 +36884,12 @@ KF Lc Ld Ml +Ld MG -MG +Th Ld Ld -NH +TP vt vt vt @@ -36867,7 +36932,6 @@ aa aa aa aa -aa "} (54,1,1) = {" aa @@ -36966,7 +37030,8 @@ MH MH MH Nz -NH +Ux +TP vt vt vt @@ -37009,7 +37074,6 @@ aa aa aa aa -aa "} (55,1,1) = {" aa @@ -37108,17 +37172,17 @@ MI MY Nq NA +OP KW -ab -NW -NW -NW -NW -NW -NW -NW -NW -NW +vt +vt +vt +vt +aa +aa +aa +aa +aa aa aa aa @@ -37251,15 +37315,15 @@ Lg KW KW KW -ab +KW +NW +NW +NW +NW +NW +NW NW -Oj -Oy -Ny NW -Oj -Oy -Ny NW aa aa @@ -37395,13 +37459,13 @@ ab ab ab NW -Ok -OA -OQ +Oj +Oy +Ny NW -Ok -OA -OQ +Oj +Oy +Ny NW aa aa @@ -37532,18 +37596,18 @@ Lh Mq Lh Na -Nr -Nr -Nr -Nr +Iy +ab +ab +ab NW -Ol -OB -Ol +Ok +OA +OQ NW -Ol -Pn -Ol +Ok +OA +OQ NW aa aa @@ -37675,23 +37739,23 @@ Mr Lh Nb Nr -NB -JZ -NN Nr -Om -OC -OR -OY -Pf -OC -KA +Nr +Nr NW -PB -PM -PM -PB -PB +Ol +OB +Ol +NW +Ol +Pn +Ol +NW +aa +aa +aa +aa +aa aa aa aa @@ -37816,23 +37880,23 @@ LI Ms MJ Nc -Ns -NC -Kb -NP -NX -On -OD -OS -Pa -Pg -Po -Pu +Nr +NB +JZ +NN +Nr +Om +OC +OR +OY +Pf +OC +KA NW -PD -PN -PS -PW +PB +PM +PM +PB PB aa aa @@ -37958,24 +38022,24 @@ Jy Mt Lh Nd -Nt -NE -NK -NQ -Nr -Oo -OE -OE -Pb -Pi -Pp -Pv -PA -PE -PO -PT -PX -Qa +Ns +NC +Kb +NP +NX +On +OD +OS +Pa +Pg +Po +Pu +NW +PD +PN +PS +PW +PB aa aa aa @@ -38100,23 +38164,23 @@ Jz Mt Lh Ne +Nt +NE +NK +NQ Nr -Nr -Nr -Nr -Nr -Op +Oo OE -OT OE -Pj -NJ -OE -Ol -PG -PQ -PU -PQ +Pb +Pi +Pp +Pv +PA +PE +PO +PT +PX Qa aa aa @@ -38242,23 +38306,23 @@ JA Mu Lh Nf -Iy -ab -ab -ab -NW -Oq -OF -OU +Nr +Nr +Nr +Nr +Nr +Op OE -Pl -NR -Pw -NW -PH +OT +OE +Pj +NJ +OE +Ol +PG PQ +PU PQ -PY Qa aa aa @@ -38389,19 +38453,19 @@ ab ab ab NW -Or -OG -OV -Pd -Pm -Ps -Px +Oq +OF +OU +OE +Pl +NR +Pw NW -PJ -PR -PV -KB -PB +PH +PQ +PQ +PY +Qa aa aa aa @@ -38531,18 +38595,18 @@ ab ab ab NW +Or +OG +OV +Pd +Pm +Ps +Px NW -NW -NW -NW -NW -NW -Py -NW -PK -PB -PB -PB +PJ +PR +PV +KB PB aa aa @@ -38672,20 +38736,20 @@ Iy ab ab ab -ab -ab -ab -vt -vt -vt -vt -Pz -aa -PL -aa -aa -aa -aa +NW +NW +NW +NW +NW +NW +NW +Py +NW +PK +PB +PB +PB +PB aa aa aa @@ -38814,16 +38878,16 @@ Iy ab NL NL -Lu +NL NL NL NL NL vt vt +Pz aa -aa -aa +PL aa aa aa @@ -39508,7 +39572,7 @@ EO Fy FS GB -Fz +Ww HN HN HN @@ -41644,7 +41708,7 @@ ab ab ab ab -ab +WE ab ab ab From 80ce44c5c830b0c7bd379296ee10b501532932bb Mon Sep 17 00:00:00 2001 From: Unknown Date: Tue, 1 Oct 2019 20:41:16 -0400 Subject: [PATCH 26/69] New sprite for portal gateway --- code/modules/multiz/structures_vr.dm | 4 ++-- icons/obj/stationobjs_vr.dmi | Bin 37242 -> 44469 bytes 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/multiz/structures_vr.dm b/code/modules/multiz/structures_vr.dm index 833d4ef346..5d12621ff4 100644 --- a/code/modules/multiz/structures_vr.dm +++ b/code/modules/multiz/structures_vr.dm @@ -59,8 +59,8 @@ /obj/structure/portal_gateway name = "portal" desc = "Looks unstable. Best to test it with the clown." - icon = 'icons/obj/stationobjs.dmi' - icon_state = "portal" + icon = 'icons/obj/stationobjs_vr.dmi' + icon_state = "portalgateway" density = 1 unacidable = 1//Can't destroy energy portals. anchored = 1 diff --git a/icons/obj/stationobjs_vr.dmi b/icons/obj/stationobjs_vr.dmi index 799f1066613681a83b8d278662bbdbd888d7979b..00a87e576b393c9f610e211e973c55745f627619 100644 GIT binary patch literal 44469 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 OkKtuw-Om^89{&$U;#vOy literal 37242 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 Date: Tue, 1 Oct 2019 20:58:05 -0400 Subject: [PATCH 27/69] Gives CC Access to Explorer comms --- code/game/objects/items/devices/radio/encryptionkey_vr.dm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/code/game/objects/items/devices/radio/encryptionkey_vr.dm b/code/game/objects/items/devices/radio/encryptionkey_vr.dm index 4d2debc341..a70ad6f7df 100644 --- a/code/game/objects/items/devices/radio/encryptionkey_vr.dm +++ b/code/game/objects/items/devices/radio/encryptionkey_vr.dm @@ -18,3 +18,9 @@ name = "research director's encryption key" icon_state = "rd_cypherkey" channels = list("Command" = 1, "Science" = 1, "Explorer" = 1) + +/obj/item/device/encryptionkey/ert + channels = list("Response Team" = 1, "Science" = 1, "Command" = 1, "Medical" = 1, "Engineering" = 1, "Security" = 1, "Supply" = 1, "Service" = 1, "Explorer" = 1) + +/obj/item/device/encryptionkey/omni //Literally only for the admin intercoms + channels = list("Mercenary" = 1, "Raider" = 1, "Response Team" = 1, "Science" = 1, "Command" = 1, "Medical" = 1, "Engineering" = 1, "Security" = 1, "Supply" = 1, "Service" = 1, "Explorer" = 1) From 39e9d1472e9d7dbf1c2bae721adc307d52ac6dfb Mon Sep 17 00:00:00 2001 From: Unknown Date: Tue, 1 Oct 2019 21:29:19 -0400 Subject: [PATCH 28/69] Adds Centcomm flag to CC Headsets --- code/game/objects/items/devices/radio/headset_vr.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/game/objects/items/devices/radio/headset_vr.dm b/code/game/objects/items/devices/radio/headset_vr.dm index 46d4ead3d8..d7216ed2d4 100644 --- a/code/game/objects/items/devices/radio/headset_vr.dm +++ b/code/game/objects/items/devices/radio/headset_vr.dm @@ -3,6 +3,7 @@ desc = "The headset of the boss's boss." icon_state = "cent_headset" item_state = "headset" + centComm = 1 ks2type = /obj/item/device/encryptionkey/ert /obj/item/device/radio/headset/centcom/alt @@ -13,5 +14,6 @@ name = "\improper NT radio headset" desc = "The headset of a Nanotrasen corporate employee." icon_state = "nt_headset" + centComm = 1 ks2type = /obj/item/device/encryptionkey/ert From ede6c1bc6d16c643a55c6421219fb06b6fdaf80d Mon Sep 17 00:00:00 2001 From: timidvi <56057475+timidvi@users.noreply.github.com> Date: Tue, 1 Oct 2019 22:35:33 -0400 Subject: [PATCH 29/69] Adds timidvi to diona whitelist https://forum.vore-station.net/viewtopic.php?f=46&t=1580 --- config/alienwhitelist.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/config/alienwhitelist.txt b/config/alienwhitelist.txt index 39dcd5ca6f..83f13db1aa 100644 --- a/config/alienwhitelist.txt +++ b/config/alienwhitelist.txt @@ -52,3 +52,4 @@ xioen - Xenomorph Hybrid zalvine - Shadekin Empathy zammyman215 - Vox zekesturm - Xenomorph Hybrid +timidvi - Diona From 27492648da44c2f3cf7c7c2e8eefe61e2eddfcb8 Mon Sep 17 00:00:00 2001 From: timidvi <56057475+timidvi@users.noreply.github.com> Date: Tue, 1 Oct 2019 22:39:26 -0400 Subject: [PATCH 30/69] Adds timidvi to diona whitelist-order fix https://forum.vore-station.net/viewtopic.php?f=46&t=1580 Put name back in alphabetical order --- config/alienwhitelist.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/alienwhitelist.txt b/config/alienwhitelist.txt index 83f13db1aa..7bddbedf10 100644 --- a/config/alienwhitelist.txt +++ b/config/alienwhitelist.txt @@ -41,6 +41,7 @@ silvertalismen - Vox silvertalismen - Xenochimera singo - Gutter tastypred - Xenochimera +timidvi - Diona varonis - Xenochimera verkister - Xenochimera westfire - Xenomorph Hybrid @@ -52,4 +53,3 @@ xioen - Xenomorph Hybrid zalvine - Shadekin Empathy zammyman215 - Vox zekesturm - Xenomorph Hybrid -timidvi - Diona From 0c0bc6773d2c63a0260adf9509b9c650ca4c65ab Mon Sep 17 00:00:00 2001 From: Unknown Date: Wed, 2 Oct 2019 01:35:34 -0400 Subject: [PATCH 31/69] Fixes issue with gateway landmarks --- code/modules/awaymissions/zlevel.dm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/code/modules/awaymissions/zlevel.dm b/code/modules/awaymissions/zlevel.dm index 1182129cd6..bf1165d2ea 100644 --- a/code/modules/awaymissions/zlevel.dm +++ b/code/modules/awaymissions/zlevel.dm @@ -62,4 +62,10 @@ proc/createRandomZlevel() /obj/effect/landmark/gateway_scatter/Initialize() . = ..() awaydestinations += src + +/obj/effect/landmark/event_scatter + name = "uncalibrated gateway destination" +/obj/effect/landmark/event_scatter/Initialize() + . = ..() + eventdestinations += src //VOREStation Add End From e90dc57a71fe3af1ad35a71ed9bf9a9bd7f99b66 Mon Sep 17 00:00:00 2001 From: gozulio Date: Wed, 2 Oct 2019 20:11:47 -0400 Subject: [PATCH 32/69] Attempt to fix white cane, Removes character_name whitelist --- .../loadout/loadout_fluffitems_yw.dm | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm b/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm index 9c9c5a61e3..53f2454c66 100644 --- a/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm +++ b/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm @@ -451,20 +451,12 @@ //Gozulio //Glitterpaws -/datum/gear/fluff/goz_whitecane_j + +/datum/gear/fluff/goz_whitecane path = /obj/item/weapon/melee/goz_whitecane display_name = "Telescopic White Cane" description = "A telescoping white cane. They are commonly used by the blind or visually impaired as a mobility tool or as a courtesy to others." ckeywhitelist = list("gozulio") - character_name = list("Jessie Glitterpaws") - -/datum/gear/fluff/goz_whitecane_e - path = /obj/item/weapon/melee/goz_whitecane - display_name = "Telescopic White Cane" - description = "A telescoping white cane. They are commonly used by the blind or visually impaired as a mobility tool or as a courtesy to others." - ckeywhitelist = list("gozulio") - character_name = list("Eira Glitterpaws") - // H CKEYS From 02ab22cae8e5fda6f1a56490a0ee67fc0ce00cb7 Mon Sep 17 00:00:00 2001 From: gozulio Date: Wed, 2 Oct 2019 21:55:27 -0400 Subject: [PATCH 33/69] Properly fixes white cane Properly fixes white cane fluff item and corrects misleading comment in example code comment. --- .../client/preference_setup/loadout/loadout_fluffitems_yw.dm | 5 +++-- vorestation.dme | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm b/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm index 53f2454c66..ed6abec2c5 100644 --- a/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm +++ b/code/modules/client/preference_setup/loadout/loadout_fluffitems_yw.dm @@ -5,7 +5,7 @@ description = "An example item that you probably shouldn't see!" ckeywhitelist = list("broman2000") allowed_roles = list("Station Engineer") //Don't include this if the item is not role restricted - character_name = list("shitfacemcgee") //Same applies here but for names + character_name = list("shitfacemcgee") //Character name. this variable is required, or the item doesn't show in loadout. Change to "character_name = null" if not character restricted. */ // 0-9 CKEYS @@ -454,9 +454,10 @@ /datum/gear/fluff/goz_whitecane path = /obj/item/weapon/melee/goz_whitecane - display_name = "Telescopic White Cane" + display_name = "Telescopic White Cane." description = "A telescoping white cane. They are commonly used by the blind or visually impaired as a mobility tool or as a courtesy to others." ckeywhitelist = list("gozulio") + character_name = null // H CKEYS diff --git a/vorestation.dme b/vorestation.dme index 8f8916a0f2..591e9d4d2e 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -3343,6 +3343,7 @@ #include "code\ZAS\Zone.dm" #include "interface\interface.dm" #include "interface\skin.dmf" +#include "maps\example\example.dm" #include "maps\RandomZLevels\blackmarketpackers.dm" #include "maps\RandomZLevels\carpfarm.dm" #include "maps\RandomZLevels\listeningpost.dm" @@ -3376,6 +3377,5 @@ #include "maps\submaps\surface_submaps\plains\plains_areas.dm" #include "maps\submaps\surface_submaps\wilderness\wilderness.dm" #include "maps\submaps\surface_submaps\wilderness\wilderness_areas.dm" -#include "maps\tether\tether.dm" #include "maps\~map_system\maps.dm" // END_INCLUDE From b05da3d69a7937cdcd01568d77ee007be25aeef0 Mon Sep 17 00:00:00 2001 From: gozulio Date: Wed, 2 Oct 2019 21:57:38 -0400 Subject: [PATCH 34/69] Lets not load the test map when the server starts. Swaps test map back for Tether. --- vorestation.dme | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vorestation.dme b/vorestation.dme index 591e9d4d2e..8f8916a0f2 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -3343,7 +3343,6 @@ #include "code\ZAS\Zone.dm" #include "interface\interface.dm" #include "interface\skin.dmf" -#include "maps\example\example.dm" #include "maps\RandomZLevels\blackmarketpackers.dm" #include "maps\RandomZLevels\carpfarm.dm" #include "maps\RandomZLevels\listeningpost.dm" @@ -3377,5 +3376,6 @@ #include "maps\submaps\surface_submaps\plains\plains_areas.dm" #include "maps\submaps\surface_submaps\wilderness\wilderness.dm" #include "maps\submaps\surface_submaps\wilderness\wilderness_areas.dm" +#include "maps\tether\tether.dm" #include "maps\~map_system\maps.dm" // END_INCLUDE From ed5c0460f0e70896ccdd7bb2d78d8c9fd3033883 Mon Sep 17 00:00:00 2001 From: Rykka Date: Thu, 3 Oct 2019 11:48:47 -0600 Subject: [PATCH 35/69] Adds Detective's Cameras --- maps/tether/tether-07-station3.dmm | 63 +++++++++++++++++------------- 1 file changed, 35 insertions(+), 28 deletions(-) diff --git a/maps/tether/tether-07-station3.dmm b/maps/tether/tether-07-station3.dmm index 4cc5b5fa27..6ad1d6d757 100644 --- a/maps/tether/tether-07-station3.dmm +++ b/maps/tether/tether-07-station3.dmm @@ -12908,6 +12908,13 @@ /obj/structure/closet/secure_closet/detective, /obj/item/weapon/reagent_containers/spray/pepper, /obj/item/weapon/gun/energy/taser, +/obj/item/device/camera{ + desc = "A one use - polaroid camera. 30 photos left."; + name = "detectives camera"; + pictures_left = 30; + pixel_x = 2; + pixel_y = 3 + }, /turf/simulated/floor/carpet, /area/security/detectives_office) "tO" = ( @@ -23873,6 +23880,29 @@ }, /turf/simulated/floor/plating, /area/maintenance/station/cargo) +"KS" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 8; + icon_state = "propulsion_l" + }, +/turf/space, +/turf/simulated/shuttle/plating/airless/carry, +/area/shuttle/large_escape_pod1/station) +"KT" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 8 + }, +/turf/space, +/turf/simulated/shuttle/plating/airless/carry, +/area/shuttle/large_escape_pod1/station) +"KU" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 8; + icon_state = "propulsion_r" + }, +/turf/space, +/turf/simulated/shuttle/plating/airless/carry, +/area/shuttle/large_escape_pod1/station) "KV" = ( /obj/structure/undies_wardrobe, /turf/simulated/floor/tiled/white, @@ -24485,14 +24515,6 @@ }, /turf/simulated/floor/tiled/techfloor, /area/crew_quarters/medical_restroom) -"Mg" = ( -/obj/structure/shuttle/engine/propulsion{ - dir = 8; - icon_state = "propulsion_l" - }, -/turf/space, -/turf/simulated/shuttle/plating/airless/carry, -/area/shuttle/large_escape_pod1/station) "Mh" = ( /obj/structure/cable/green{ d1 = 1; @@ -25454,13 +25476,6 @@ /obj/effect/floor_decal/corner/paleblue/diagonal, /turf/simulated/floor/tiled/white, /area/crew_quarters/medbreak) -"NI" = ( -/obj/structure/shuttle/engine/propulsion{ - dir = 8 - }, -/turf/space, -/turf/simulated/shuttle/plating/airless/carry, -/area/shuttle/large_escape_pod1/station) "NJ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/universal{ dir = 4 @@ -25598,14 +25613,6 @@ /obj/machinery/atmospherics/pipe/simple/hidden/yellow, /turf/simulated/floor/tiled/white, /area/medical/virologyaccess) -"NY" = ( -/obj/structure/shuttle/engine/propulsion{ - dir = 8; - icon_state = "propulsion_r" - }, -/turf/space, -/turf/simulated/shuttle/plating/airless/carry, -/area/shuttle/large_escape_pod1/station) "NZ" = ( /obj/structure/shuttle/engine/heater{ dir = 8 @@ -39019,11 +39026,11 @@ MK Iy ab NL -Mg -NI -NI -NI -NY +KS +KT +KT +KT +KU NL vt vt From c7ec2503c175f4b8f99bc2ba596962a1fe7468a3 Mon Sep 17 00:00:00 2001 From: Rykka Date: Thu, 3 Oct 2019 11:58:53 -0600 Subject: [PATCH 36/69] Fixes mapsize, reduces X by 4, Y by 3, and removes broke step_triggers --- maps/tether/submaps/space/pois/derelict.dmm | 5162 +------------------ 1 file changed, 234 insertions(+), 4928 deletions(-) diff --git a/maps/tether/submaps/space/pois/derelict.dmm b/maps/tether/submaps/space/pois/derelict.dmm index da97c7926d..3583642f18 100644 --- a/maps/tether/submaps/space/pois/derelict.dmm +++ b/maps/tether/submaps/space/pois/derelict.dmm @@ -1,4928 +1,234 @@ -//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE -"aa" = ( -/turf/space, -/area/tether_away/debrisfield/explored) -"ab" = ( -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"ac" = ( -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"ad" = ( -/turf/simulated/wall/r_wall, -/area/tether_away/debrisfield/explored) -"ae" = ( -/turf/simulated/wall, -/area/tether_away/debrisfield/explored) -"af" = ( -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 8; - health = 1e+006 - }, -/obj/structure/grille, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"ag" = ( -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced, -/obj/structure/grille, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"ah" = ( -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ - dir = 1 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/grille, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"ai" = ( -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ - dir = 8; - health = 1e+006 - }, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/grille, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"aj" = ( -/obj/structure/window/reinforced/full, -/obj/structure/window/reinforced{ - dir = 4 - }, -/obj/structure/window/reinforced{ - dir = 8 - }, -/obj/structure/grille, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"ak" = ( -/obj/structure/shuttle/engine/propulsion, -/turf/space, -/area/tether_away/debrisfield/explored) -"al" = ( -/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/simulated/floor/bluegrid, -/area/tether_away/debrisfield/explored) -"am" = ( -/obj/effect/map_effect/interval/effect_emitter/sparks/frequent, -/obj/effect/map_effect/interval/effect_emitter/smoke, -/obj/structure/door_assembly/door_assembly_alien, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"an" = ( -/obj/effect/map_effect/interval/effect_emitter/sparks/frequent, -/obj/structure/door_assembly/door_assembly_alien, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"ao" = ( -/obj/structure/catwalk, -/turf/space, -/area/tether_away/debrisfield/explored) -"ap" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_l"; - dir = 1 - }, -/turf/space, -/area/tether_away/debrisfield/explored) -"aq" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_l"; - dir = 8 - }, -/turf/space, -/area/tether_away/debrisfield/explored) -"ar" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "burst_l"; - dir = 4 - }, -/turf/space, -/area/tether_away/debrisfield/explored) -"as" = ( -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"at" = ( -/obj/structure/shuttle/engine/heater, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"au" = ( -/turf/simulated/floor/tiled/techfloor, -/area/tether_away/debrisfield/explored) -"av" = ( -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"aw" = ( -/turf/simulated/floor/tiled/monotile, -/area/tether_away/debrisfield/explored) -"ax" = ( -/turf/simulated/floor/tiled/monofloor, -/area/tether_away/debrisfield/explored) -"ay" = ( -/turf/simulated/floor/greengrid, -/area/tether_away/debrisfield/explored) -"az" = ( -/obj/item/weapon/grenade/empgrenade, -/obj/item/weapon/grenade/empgrenade, -/obj/item/weapon/grenade/empgrenade, -/turf/space, -/area/tether_away/debrisfield/explored) -"aA" = ( -/obj/structure/prop/prism, -/turf/simulated/floor/greengrid, -/area/tether_away/debrisfield/explored) -"aB" = ( -/obj/structure/prop/fake_ai, -/turf/simulated/floor/greengrid, -/area/tether_away/debrisfield/explored) -"aC" = ( -/turf/simulated/floor/tiled/steel_ridged, -/area/tether_away/debrisfield/explored) -"aD" = ( -/obj/effect/decal/remains/human, -/turf/simulated/floor/tiled/monotile, -/area/tether_away/debrisfield/explored) -"aE" = ( -/obj/effect/decal/remains/human, -/turf/simulated/floor/tiled/monofloor, -/area/tether_away/debrisfield/explored) -"aF" = ( -/mob/living/simple_mob/mechanical/infectionbot{ - faction = "derelict" - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"aG" = ( -/obj/structure/old_roboprinter, -/turf/simulated/floor/tiled/monofloor, -/area/tether_away/debrisfield/explored) -"aH" = ( -/obj/structure/old_roboprinter, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"aI" = ( -/obj/structure/ghost_pod/manual/lost_drone/dogborg, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"aJ" = ( -/obj/structure/ghost_pod/manual/lost_drone, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"aK" = ( -/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, -/turf/simulated/floor/tiled/monofloor, -/area/tether_away/debrisfield/explored) -"aL" = ( -/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, -/mob/living/simple_mob/mechanical/corrupt_maint_drone{ - faction = "derelict" - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"aM" = ( -/turf/simulated/floor/tiled/steel_grid, -/area/tether_away/debrisfield/explored) -"aN" = ( -/mob/living/simple_mob/mechanical/infectionbot{ - faction = "derelict" - }, -/turf/simulated/floor/tiled/steel_grid, -/area/tether_away/debrisfield/explored) -"aO" = ( -/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, -/turf/simulated/floor/tiled/steel_ridged, -/area/tether_away/debrisfield/explored) -"aP" = ( -/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"aQ" = ( -/obj/structure/cable{ - icon_state = "0-4" - }, -/obj/machinery/power/apc{ - dir = 2; - name = "south bump"; - pixel_y = -24 - }, -/turf/simulated/floor/tiled/techfloor, -/area/tether_away/debrisfield/explored) -"aR" = ( -/turf/simulated/floor/tiled/white, -/area/tether_away/debrisfield/explored) -"aS" = ( -/mob/living/simple_mob/mechanical/infectionbot{ - faction = "derelict" - }, -/turf/simulated/floor/tiled/white, -/area/tether_away/debrisfield/explored) -"aT" = ( -/turf/simulated/floor/tiled/neutral, -/area/tether_away/debrisfield/explored) -"aU" = ( -/obj/tether_away_spawner/debrisfield/derelict/mech_wizard, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"aV" = ( -/obj/structure/ghost_pod/manual/lost_drone/dogborg, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"aW" = ( -/obj/tether_away_spawner/debrisfield/derelict/mech_wizard, -/turf/simulated/floor/tiled/steel_grid, -/area/tether_away/debrisfield/explored) -"aX" = ( -/obj/effect/decal/remains/human, -/turf/simulated/floor/tiled/steel_grid, -/area/tether_away/debrisfield/explored) -"aY" = ( -/obj/structure/old_roboprinter, -/turf/simulated/floor/tiled/steel_grid, -/area/tether_away/debrisfield/explored) -"aZ" = ( -/obj/tether_away_spawner/debrisfield/derelict, -/turf/simulated/floor/tiled/steel_grid, -/area/tether_away/debrisfield/explored) -"ba" = ( -/obj/structure/prop/alien/computer/camera, -/turf/simulated/floor/tiled/techfloor, -/area/tether_away/debrisfield/explored) -"bb" = ( -/obj/structure/prop/alien/computer, -/turf/simulated/floor/tiled/techfloor, -/area/tether_away/debrisfield/explored) -"bc" = ( -/obj/structure/prop/alien/computer/camera/flipped, -/turf/simulated/floor/tiled/techfloor, -/area/tether_away/debrisfield/explored) -"bd" = ( -/obj/structure/prop/alien/dispenser, -/turf/simulated/floor/tiled/techfloor, -/area/tether_away/debrisfield/explored) -"be" = ( -/obj/structure/prop/alien/computer/camera, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"bf" = ( -/obj/structure/prop/alien/power, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"bg" = ( -/obj/structure/prop/alien/computer/camera/flipped, -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"bh" = ( -/obj/structure/prop/alien/pod, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"bi" = ( -/obj/machinery/porta_turret/alien{ - faction = "derelict"; - use_power = 0 - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"bj" = ( -/obj/effect/map_effect/interval/effect_emitter/sparks/frequent, -/obj/structure/door_assembly/door_assembly_alien, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"bk" = ( -/obj/random/humanoidremains, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"bl" = ( -/obj/machinery/implantchair, -/turf/simulated/floor/tiled/white, -/area/tether_away/debrisfield/explored) -"bm" = ( -/obj/machinery/dna_scannernew, -/turf/simulated/floor/tiled/white, -/area/tether_away/debrisfield/explored) -"bn" = ( -/obj/machinery/replicator, -/turf/simulated/floor/tiled/neutral, -/area/tether_away/debrisfield/explored) -"bo" = ( -/obj/machinery/transhuman/synthprinter, -/turf/simulated/floor/tiled/steel_grid, -/area/tether_away/debrisfield/explored) -"bp" = ( -/obj/machinery/transhuman/resleever, -/turf/simulated/floor/tiled/steel_grid, -/area/tether_away/debrisfield/explored) -"bq" = ( -/obj/machinery/vr_sleeper/alien, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"br" = ( -/obj/machinery/auto_cloner, -/turf/simulated/floor/tiled/steel_ridged, -/area/tether_away/debrisfield/explored) -"bs" = ( -/obj/machinery/artifact, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"bt" = ( -/obj/structure/prop/alien/power, -/obj/structure/cable{ - d2 = 2; - icon_state = "0-2"; - pixel_y = 0 - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"bu" = ( -/obj/machinery/door/airlock/hatch{ - icon_state = "door_locked"; - id_tag = null; - locked = 1; - name = "AI Core"; - req_access = list(16) - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"bv" = ( -/obj/machinery/door/airlock/alien, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"bw" = ( -/obj/machinery/door/airlock/alien, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"bx" = ( -/obj/machinery/door/airlock/alien/locked, -/turf/simulated/floor/tiled/techfloor, -/area/tether_away/debrisfield/explored) -"by" = ( -/obj/machinery/door/airlock/alien, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"bz" = ( -/obj/machinery/door/airlock/alien, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"bA" = ( -/obj/machinery/bomb_tester, -/turf/simulated/floor/tiled/steel_ridged, -/area/tether_away/debrisfield/explored) -"bB" = ( -/obj/random/humanoidremains, -/obj/item/weapon/gun/energy/ionrifle, -/turf/simulated/floor/tiled/steel_ridged, -/area/tether_away/debrisfield/explored) -"bC" = ( -/obj/structure/prop/alien/power, -/obj/structure/cable, -/obj/structure/cable{ - icon_state = "1-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/bluegrid, -/area/tether_away/debrisfield/explored) -"bD" = ( -/obj/machinery/optable, -/obj/random/humanoidremains, -/turf/simulated/floor/tiled/white, -/area/tether_away/debrisfield/explored) -"bE" = ( -/obj/random/humanoidremains, -/turf/simulated/floor/tiled/white, -/area/tether_away/debrisfield/explored) -"bF" = ( -/obj/tether_away_spawner/debrisfield/derelict, -/turf/simulated/floor/tiled/techfloor, -/area/tether_away/debrisfield/explored) -"bG" = ( -/obj/machinery/porta_turret/alien{ - faction = "derelict"; - use_power = 0 - }, -/turf/space, -/area/tether_away/debrisfield/explored) -"bH" = ( -/obj/random/tool/alien, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"bI" = ( -/obj/random/energy, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"bJ" = ( -/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, -/turf/simulated/floor/tiled/monotile, -/area/tether_away/debrisfield/explored) -"bK" = ( -/obj/tether_away_spawner/debrisfield/derelict, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"bL" = ( -/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, -/mob/living/simple_mob/mechanical/corrupt_maint_drone{ - faction = "derelict" - }, -/turf/simulated/floor/tiled/steel_grid, -/area/tether_away/debrisfield/explored) -"bM" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/item/weapon/grenade/empgrenade, -/turf/simulated/floor/bluegrid, -/area/tether_away/debrisfield/explored) -"bN" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/bluegrid, -/area/tether_away/debrisfield/explored) -"bO" = ( -/turf/template_noop, -/area/tether_away/debrisfield/explored) -"bP" = ( -/obj/structure/old_roboprinter, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"bQ" = ( -/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"bR" = ( -/turf/template_noop, -/area/tether_away/debrisfield/unexplored) -"bS" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"bT" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"bU" = ( -/obj/effect/step_trigger/message{ - name = "Extreme Danger Message"; - show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..." - }, -/obj/machinery/door/airlock/alien, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"bV" = ( -/obj/effect/step_trigger/message{ - name = "Spine Shiver Message"; - show_messages = "A shiver runs down your spine. This place, this... ship is... unnatural. Alien. You shouldn't be here. You want to run." - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"bW" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"bX" = ( -/obj/effect/step_trigger/message{ - name = "Extreme Danger Message"; - show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..." - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"bY" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/wall, -/area/tether_away/debrisfield/explored) -"bZ" = ( -/obj/effect/alien/egg, -/obj/effect/alien/weeds, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"ca" = ( -/obj/effect/decal/mecha_wreckage/gygax/adv, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"cb" = ( -/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"cc" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"cd" = ( -/obj/machinery/door/airlock/alien, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"ce" = ( -/obj/machinery/door/airlock/alien, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"cf" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"cg" = ( -/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/bluegrid, -/area/tether_away/debrisfield/explored) -"ch" = ( -/obj/item/xenos_claw, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"ci" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"cj" = ( -/obj/effect/step_trigger/message{ - name = "Extreme Danger Message"; - show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..." - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"ck" = ( -/obj/machinery/door/airlock/alien, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"cl" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cm" = ( -/obj/structure/cable, -/obj/machinery/power/apc{ - dir = 2; - name = "south bump"; - pixel_y = -24 - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cn" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"co" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"cp" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"cq" = ( -/obj/random/humanoidremains, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"cr" = ( -/obj/structure/prop/prism, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cs" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"ct" = ( -/obj/random/humanoidremains, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"cu" = ( -/obj/machinery/door/airlock/alien, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"cv" = ( -/obj/machinery/door/airlock/alien, -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/reinforced, -/area/tether_away/debrisfield/explored) -"cw" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"cx" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"cy" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cz" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cA" = ( -/obj/machinery/door/airlock/alien, -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cB" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/white, -/area/tether_away/debrisfield/explored) -"cC" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/white, -/area/tether_away/debrisfield/explored) -"cD" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cE" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cF" = ( -/obj/machinery/door/airlock/alien, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cG" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/neutral, -/area/tether_away/debrisfield/explored) -"cH" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cI" = ( -/obj/random/humanoidremains, -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cJ" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cK" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"cL" = ( -/obj/effect/step_trigger/message{ - name = "Extreme Danger Message"; - show_messages = "All the hairs on your body stand on end, your scales tingle, whatever - something dangerous is right around the corner. You do NOT want to keep going..." - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"cM" = ( -/obj/machinery/door/airlock/hatch{ - icon_state = "door_locked"; - id_tag = null; - locked = 1; - name = "AI Core"; - req_access = list(16) - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"cN" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"cO" = ( -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"cP" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"cQ" = ( -/obj/structure/cable{ - icon_state = "4-8" - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"cR" = ( -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "east bump"; - pixel_x = 28 - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"cS" = ( -/obj/machinery/power/apc/hyper{ - pixel_y = 25 - }, -/obj/structure/cable{ - icon_state = "0-4" - }, -/turf/simulated/floor/greengrid, -/area/tether_away/debrisfield/explored) -"cT" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/techfloor, -/area/tether_away/debrisfield/explored) -"cU" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"cV" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"cW" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/turf/simulated/floor/tiled/neutral, -/area/tether_away/debrisfield/explored) -"cX" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8" - }, -/turf/simulated/floor/tiled/neutral, -/area/tether_away/debrisfield/explored) -"cY" = ( -/obj/structure/cable{ - d1 = 1; - d2 = 8; - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/neutral, -/area/tether_away/debrisfield/explored) -"cZ" = ( -/obj/random/humanoidremains, -/obj/structure/cable{ - d1 = 1; - d2 = 2; - icon_state = "1-2"; - pixel_y = 0 - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"da" = ( -/obj/structure/cable{ - icon_state = "0-8" - }, -/obj/machinery/power/apc{ - dir = 4; - name = "east bump"; - pixel_x = 28 - }, -/turf/simulated/floor/tiled/dark, -/area/tether_away/debrisfield/explored) -"db" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - icon_state = "1-8" - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"dc" = ( -/obj/structure/cable{ - d1 = 2; - d2 = 4; - icon_state = "2-4" - }, -/obj/structure/cable{ - icon_state = "4-8" - }, -/obj/structure/cable{ - d1 = 1; - d2 = 4; - icon_state = "1-4" - }, -/turf/simulated/floor/tiled/steel_dirty, -/area/tether_away/debrisfield/explored) -"dd" = ( -/obj/machinery/porta_turret/alien{ - faction = "derelict"; - use_power = 0 - }, -/turf/simulated/floor/greengrid, -/area/tether_away/debrisfield/explored) -"de" = ( -/obj/machinery/porta_turret/alien{ - faction = "derelict"; - use_power = 0 - }, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"df" = ( -/obj/item/weapon/gun/energy/ionrifle, -/turf/space, -/area/tether_away/debrisfield/explored) -"dg" = ( -/obj/machinery/door/airlock/alien/locked, -/turf/simulated/floor/plating, -/area/tether_away/debrisfield/explored) -"dh" = ( -/obj/structure/prop/blackbox/xenofrigate, -/turf/simulated/floor/greengrid, -/area/tether_away/debrisfield/explored) - -(1,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(2,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(3,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(4,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -ap -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(5,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -ad -ad -ad -as -as -as -ae -as -as -as -bK -ae -bP -bP -ae -bK -as -as -as -as -ae -as -as -as -as -as -as -as -at -ae -ak -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(6,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -ad -ad -ad -be -as -as -ae -as -ae -as -as -ae -ae -ae -as -as -ae -ae -ae -as -as -as -ae -as -as -ae -ae -ae -ae -as -as -at -ae -ak -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(7,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -ad -ad -ad -bt -bT -bT -bY -bT -bT -bT -bT -bY -bT -bT -cb -bQ -as -as -as -as -ae -as -as -as -as -ae -bK -as -ae -as -as -at -ae -ak -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(8,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -ad -ad -ad -ae -ae -as -as -as -as -as -as -ae -cc -as -ae -as -as -ae -ae -as -as -as -as -ae -as -as -as -as -at -ae -ak -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(9,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -ap -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -cd -bz -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(10,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -cc -as -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(11,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -cc -as -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(12,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ad -cc -as -ad -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(13,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ad -ad -cc -as -ad -ad -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -bO -bO -bO -bO -bO -bO -bO -"} -(14,1,1) = {" -bO -bO -bO -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ce -bv -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -aa -aa -bO -bO -bO -bO -bO -bO -bO -"} -(15,1,1) = {" -bO -bO -bO -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ad -bB -aC -ac -ac -ac -ac -ae -ac -ac -ac -aM -ae -cf -av -ae -aH -ac -ac -ac -ac -ac -ae -bn -aT -aC -aC -aO -ae -bh -ac -ac -ac -ac -aP -ad -ad -aa -aa -bO -bO -bO -bO -bO -bO -"} -(16,1,1) = {" -bO -bO -bO -aa -aa -aa -aa -aa -aa -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ad -aC -ae -ac -ae -bk -ac -ae -ac -bq -ae -aM -ae -cf -av -ae -ac -ac -ac -ac -ae -ac -ae -aT -aT -ae -ae -ae -ae -ae -ac -ae -ac -ac -ae -ad -ad -ad -aa -aa -bO -bO -bO -bO -bO -"} -(17,1,1) = {" -bO -bO -bO -aa -aa -aa -aa -aa -aa -ad -aw -aw -aw -aw -ac -ac -ax -ax -ax -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ac -ac -ac -ac -ae -ac -ac -ac -ac -ac -ac -aM -ae -cf -av -ae -aL -ac -ae -ac -ac -ac -ae -aT -cW -cF -cl -cl -cF -cl -cl -cl -cZ -cD -bX -bu -ab -ad -ad -aa -aa -bO -bO -bO -bO -"} -(18,1,1) = {" -bO -bO -aa -aa -aa -aa -aa -aa -aa -ad -aw -aw -ae -ae -ac -ac -ae -ae -ax -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ac -ae -ac -ac -ac -ac -ac -bk -ae -ae -ae -aM -ae -cf -av -ae -ae -ac -ae -ae -ac -ac -ae -aT -cX -ae -ac -bk -bw -ac -ac -ac -ac -da -ab -ad -ab -ab -ad -ad -aa -aa -bO -bO -bO -"} -(19,1,1) = {" -bO -bO -aa -aa -aa -aa -aa -aa -aa -ad -aD -aw -aw -ae -ac -ac -ae -ax -ax -ad -aa -aa -aa -ae -am -ae -aa -aa -aa -ad -ac -ac -ac -ae -ae -ae -ac -ac -ac -ac -ac -aM -ae -cf -av -ae -ac -ac -ac -ac -ac -ac -bw -aT -cX -ae -aC -aC -ae -ac -ae -ab -ab -ae -ab -ad -ab -ab -de -ad -ad -aa -aa -bO -bO -"} -(20,1,1) = {" -bO -bO -aa -aa -aa -aa -aa -aa -aa -ad -aw -bJ -aD -ae -ac -ac -ae -aE -aK -ad -aa -aa -aq -ae -bV -ae -aq -aa -aa -ad -bH -ac -ac -ae -bs -ac -ac -ae -ac -ac -ac -aM -ae -cf -av -ae -ac -cy -cl -cl -cl -cl -cF -cG -cY -ae -aO -aC -ae -aJ -ae -ab -ab -ae -aV -ad -ay -ay -ay -dd -ad -ad -aa -aa -bO -"} -(21,1,1) = {" -bO -bO -aa -aa -af -ai -ai -ai -ai -ad -ae -ae -ae -ae -bw -bw -ae -ae -ae -ad -aa -aa -ae -ae -an -ae -ae -aa -aa -ad -ae -ae -bw -ae -ac -ac -ac -ac -ac -ae -ac -aM -ae -cf -av -ae -bw -cA -ae -ae -ae -ae -ae -ad -ad -ad -ad -ad -ad -ad -ad -dg -dg -ad -ad -ad -ay -ay -ay -ay -dd -ad -ad -aa -aa -"} -(22,1,1) = {" -bO -bO -aa -aa -ag -ba -au -au -au -bx -av -av -av -av -av -av -av -av -av -ad -aa -aa -ae -ab -ab -ab -ae -aa -aa -ad -bI -ac -ac -ae -ae -ae -ae -ac -ac -bs -ae -aZ -ae -cf -av -ae -ac -cJ -cD -ac -ac -cr -bi -ad -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ad -ay -ay -ay -ay -ay -dd -ad -ad -aa -"} -(23,1,1) = {" -bO -bO -aa -aa -ag -bb -au -au -au -bx -av -av -av -av -av -av -av -av -av -ad -ad -bG -ae -ca -ab -ab -ae -bG -ad -ad -bk -ac -ac -ae -aN -aM -aM -aM -aM -aM -aZ -ae -ae -cf -av -ae -bi -ac -cJ -cl -cl -cD -ac -ad -ao -aa -aa -aa -aa -aa -aa -aa -aa -aa -ao -ad -ay -ay -ay -ay -ay -ay -dd -ad -aa -"} -(24,1,1) = {" -bO -bO -aa -aa -ag -bd -au -au -au -ae -ae -ae -ae -ae -bv -bv -ae -ae -ae -ae -ad -ad -ae -ae -bU -ae -ae -ad -ad -ad -ae -bw -bw -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -bv -bv -ae -ae -ae -ae -ae -ae -cz -ac -ad -ao -aa -aa -aa -aa -aa -aa -aa -aa -aa -ao -ad -ay -ay -aA -aA -ay -ay -ay -ad -aa -"} -(25,1,1) = {" -bO -bO -aa -aa -ag -bb -au -bF -aQ -ae -al -bM -bN -bw -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -db -ch -ci -cw -ci -ci -cj -ck -cV -cm -ad -ao -aa -aa -aa -df -az -az -aa -aa -aa -ao -ad -ay -ay -dh -aB -ay -ay -dd -ad -aa -"} -(26,1,1) = {" -bO -bO -aa -aa -ag -bb -au -au -cT -bY -bC -cg -bN -cF -ci -ci -ci -ci -ci -ci -cq -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -ci -cU -ci -ci -ci -ci -ci -ci -dc -ci -ci -cx -ci -ci -cj -ck -cl -cD -ad -ao -aa -aa -aa -aa -az -az -aa -aa -aa -ao -ad -ay -ay -dh -aB -ay -ay -dd -ad -aa -"} -(27,1,1) = {" -bO -bO -aa -aa -ag -bd -au -au -au -ae -ae -ae -ae -ae -bv -bv -ae -ae -ae -ae -ad -ad -ae -ae -bU -ae -ae -ad -ad -ad -ae -bw -bw -ae -ae -ae -ae -ae -ae -ae -ae -ae -ae -bj -bv -ae -ae -ae -ae -ae -ae -bk -cz -ad -ao -aa -aa -aa -aa -aa -aa -aa -aa -aa -ao -ad -ay -ay -aA -aA -ay -ay -ay -ad -aa -"} -(28,1,1) = {" -bO -bO -aa -aa -ag -bb -au -au -au -bx -av -av -av -av -av -av -av -av -av -ad -ad -bG -ae -ca -ab -ab -ae -bG -ad -ad -aF -ac -bk -ac -ac -ac -ac -bH -ae -bL -aY -aY -ae -cs -av -ae -bi -cy -cl -cl -cl -cl -cE -ad -ao -aa -aa -aa -aa -aa -aa -aa -aa -aa -ao -ad -ay -ay -ay -ay -ay -ay -dd -ad -aa -"} -(29,1,1) = {" -bO -bO -aa -aa -ag -bc -au -au -au -bx -av -av -av -av -av -av -av -av -av -ad -aa -aa -ae -ab -ab -ab -ae -aa -aa -ad -aF -ac -ac -ac -ac -ac -ac -ac -ae -aX -aM -aM -ae -cs -av -ae -ac -cz -ac -ac -ac -cr -bi -ad -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ao -ad -ay -ay -ay -ay -ay -dd -ad -ad -aa -"} -(30,1,1) = {" -bO -bO -aa -aa -ah -aj -aj -aj -aj -ad -ae -ae -ae -ae -bw -bw -ae -ae -ae -ad -aa -aa -ae -ae -by -ae -ae -aa -aa -ad -ae -ae -ae -ae -ae -ae -ac -ac -ac -aM -bL -bL -ae -cs -av -ae -bw -cA -ae -ae -ae -ae -ae -ad -ad -ad -ad -ad -ad -ad -ad -dg -dg -ad -ad -ad -ay -ay -ay -ay -dd -ad -ad -aa -aa -"} -(31,1,1) = {" -bO -bO -aa -aa -aa -aa -aa -aa -aa -ad -aD -aw -aw -ae -ac -ac -ae -aG -aG -ad -aa -aa -ar -ae -bV -ae -ar -aa -aa -ad -bH -ac -ac -ac -bH -ae -ac -ac -ae -ae -ae -ae -ae -cs -av -ae -aR -cB -cC -cC -cC -cC -cF -cG -cG -cl -cD -bZ -ae -ac -ac -ac -ac -ac -bs -ad -cS -ay -ay -dd -ad -ad -aa -aa -bO -"} -(32,1,1) = {" -bO -bO -aa -aa -aa -aa -aa -aa -aa -ad -aw -aw -aD -ae -ac -ac -ae -ax -ax -ad -aa -aa -aa -ae -by -ae -aa -aa -aa -ad -ac -ac -ae -ac -ac -ac -bk -ac -ac -ac -ac -ac -ae -cs -av -ae -aR -aR -aR -aR -aR -aR -bw -aT -aT -ac -cH -ac -ae -ac -bk -ac -ac -ac -ac -ad -cN -ab -de -ad -ad -aa -aa -bO -bO -"} -(33,1,1) = {" -bO -bO -aa -aa -aa -aa -aa -aa -aa -ad -aw -aw -ae -ae -ac -ac -ae -aK -aK -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ac -ae -ct -av -ae -aR -ae -bD -ae -bE -aR -ae -aT -aT -ae -cI -cl -cF -cl -cD -ae -ae -ae -ae -ad -cN -ab -ad -ad -aa -aa -bO -bO -bO -"} -(34,1,1) = {" -bO -bO -bO -aa -aa -aa -aa -aa -aa -ad -aw -aw -aw -aw -ac -ac -ax -ax -ax -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ac -ac -ae -ac -ac -ae -ae -ae -ae -ae -ac -ae -ae -cs -av -ae -aR -aS -ae -aS -aR -aR -ae -aT -aT -ae -ae -ae -ae -ac -cJ -cF -cK -cP -cL -cM -cO -ad -ad -aa -aa -bO -bO -bO -bO -"} -(35,1,1) = {" -bO -bO -bO -aa -aa -aa -aa -aa -aa -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ad -aC -ae -aM -aM -aM -aM -aM -bo -ae -aC -aC -ae -cs -av -ae -aR -aR -aR -aR -ae -aR -ae -aT -aT -aC -aC -aO -ae -ac -ac -ae -ab -cQ -ab -ad -ad -ad -aa -aa -bO -bO -bO -bO -bO -"} -(36,1,1) = {" -bO -bO -bO -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ad -bA -ae -bp -aM -aM -aM -aM -aW -ae -aC -br -ae -cs -av -ae -bl -bm -aR -aR -aR -aS -ae -bn -aT -aC -aC -aO -ae -aI -ac -ae -ab -cR -aU -ad -ad -aa -aa -bO -bO -bO -bO -bO -bO -"} -(37,1,1) = {" -bO -bO -bO -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -cu -bv -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -aa -aa -bO -bO -bO -bO -bO -bO -bO -"} -(38,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ad -ad -bW -as -ad -ad -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -bO -bO -bO -bO -bO -bO -bO -bO -"} -(39,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -ad -bW -as -ad -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(40,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -bW -as -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(41,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -ad -bW -as -ad -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(42,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -ap -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -cv -bz -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(43,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -ad -ad -ad -bS -bT -bT -bT -bT -co -ae -bS -bT -cn -as -as -as -ae -bK -as -as -as -as -as -bK -ae -as -as -as -at -ae -ak -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(44,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -ad -ad -ad -bf -as -bW -as -as -ae -as -bW -ae -bW -ae -as -as -ae -as -ae -ae -ae -as -as -as -ae -ae -ae -as -ae -as -as -at -ae -ak -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(45,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -ad -ad -ad -bg -bT -cn -ae -as -ae -as -bW -ae -bW -ae -as -as -ae -as -as -as -as -as -ae -as -as -as -as -as -ae -as -as -at -ae -ak -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(46,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -ad -ad -ad -bK -ae -as -as -as -cp -bT -cn -ae -bQ -bQ -ae -as -as -as -as -as -ae -as -as -as -as -as -ae -as -at -ae -ak -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(47,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -ap -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -ad -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(48,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -aa -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(49,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} -(50,1,1) = {" -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bO -bR -bR -bR -bR -bR -bR -bR -bR -bR -bR -"} +"aa" = (/turf/space,/area/tether_away/debrisfield/explored) +"ab" = (/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ac" = (/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"ad" = (/turf/simulated/wall/r_wall,/area/tether_away/debrisfield/explored) +"ae" = (/turf/simulated/wall,/area/tether_away/debrisfield/explored) +"af" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ag" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ah" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ai" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"aj" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ak" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/tether_away/debrisfield/explored) +"al" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) +"am" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/effect/map_effect/interval/effect_emitter/smoke,/obj/machinery/door/airlock/alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"an" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/structure/door_assembly/door_assembly_alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"ao" = (/obj/structure/catwalk,/turf/space,/area/tether_away/debrisfield/explored) +"ap" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 1},/turf/space,/area/tether_away/debrisfield/explored) +"aq" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 8},/turf/space,/area/tether_away/debrisfield/explored) +"ar" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 4},/turf/space,/area/tether_away/debrisfield/explored) +"as" = (/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"at" = (/obj/structure/shuttle/engine/heater,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"au" = (/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"av" = (/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"aw" = (/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) +"ax" = (/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) +"ay" = (/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"az" = (/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/empgrenade,/turf/space,/area/tether_away/debrisfield/explored) +"aA" = (/obj/structure/prop/prism,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"aB" = (/obj/structure/prop/fake_ai,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"aC" = (/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) +"aD" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) +"aE" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) +"aF" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aG" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) +"aH" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aI" = (/obj/structure/ghost_pod/manual/lost_drone/dogborg,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aJ" = (/obj/structure/ghost_pod/manual/lost_drone,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aK" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) +"aL" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/mob/living/simple_mob/mechanical/corrupt_maint_drone{faction = "derelict"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aM" = (/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"aN" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"aO" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) +"aP" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"aQ" = (/obj/structure/cable{icon_state = "0-4"},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"aR" = (/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"aS" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"aT" = (/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"aU" = (/obj/tether_away_spawner/debrisfield/derelict/mech_wizard,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"aV" = (/obj/structure/ghost_pod/manual/lost_drone/dogborg,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"aW" = (/obj/tether_away_spawner/debrisfield/derelict/mech_wizard,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"aX" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"aY" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"aZ" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"ba" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"bb" = (/obj/structure/prop/alien/computer,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"bc" = (/obj/structure/prop/alien/computer/camera/flipped,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"bd" = (/obj/structure/prop/alien/dispenser,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"be" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bf" = (/obj/structure/prop/alien/power,/obj/structure/cable{icon_state = "0-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bg" = (/obj/structure/prop/alien/computer/camera/flipped,/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bh" = (/obj/structure/prop/alien/pod,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bi" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bj" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/structure/door_assembly/door_assembly_alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"bk" = (/obj/random/humanoidremains,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bl" = (/obj/machinery/implantchair,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"bm" = (/obj/machinery/dna_scannernew,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"bn" = (/obj/machinery/replicator,/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"bo" = (/obj/machinery/transhuman/synthprinter,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"bp" = (/obj/machinery/transhuman/resleever,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"bq" = (/obj/machinery/vr_sleeper/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"br" = (/obj/machinery/auto_cloner,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) +"bs" = (/obj/machinery/artifact,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bt" = (/obj/structure/prop/alien/power,/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bu" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = null; locked = 1; name = "AI Core"; req_access = list(16)},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"bv" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"bw" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bx" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"by" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"bz" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bA" = (/obj/machinery/bomb_tester,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) +"bB" = (/obj/random/humanoidremains,/obj/item/weapon/gun/energy/ionrifle,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) +"bC" = (/obj/structure/prop/alien/power,/obj/structure/cable,/obj/structure/cable{icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) +"bD" = (/obj/machinery/optable,/obj/random/humanoidremains,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"bE" = (/obj/random/humanoidremains,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"bF" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"bG" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/space,/area/tether_away/debrisfield/explored) +"bH" = (/obj/random/tool/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bI" = (/obj/random/energy,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"bJ" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) +"bK" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bL" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/mob/living/simple_mob/mechanical/corrupt_maint_drone{faction = "derelict"},/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) +"bM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/weapon/grenade/empgrenade,/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) +"bN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) +"bO" = (/turf/template_noop,/area/tether_away/debrisfield/explored) +"bP" = (/obj/structure/old_roboprinter,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bQ" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bR" = (/turf/template_noop,/area/tether_away/debrisfield/unexplored) +"bS" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"bY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/wall,/area/tether_away/debrisfield/explored) +"bZ" = (/obj/effect/alien/egg,/obj/effect/alien/weeds,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"ca" = (/obj/effect/decal/mecha_wreckage/gygax/adv,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cb" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"cc" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"cd" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"ce" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cf" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cg" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) +"ch" = (/obj/item/xenos_claw,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"ci" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"ck" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cm" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"co" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"cp" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"cq" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cr" = (/obj/structure/prop/prism,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"ct" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cu" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cv" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) +"cw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cy" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cz" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cA" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cB" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"cC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) +"cD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cE" = (/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cF" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"cH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cI" = (/obj/random/humanoidremains,/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cJ" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cM" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = null; locked = 1; name = "AI Core"; req_access = list(16)},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cO" = (/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cQ" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cR" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 28},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"cS" = (/obj/machinery/power/apc/hyper{pixel_y = 25},/obj/structure/cable{icon_state = "0-4"},/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"cT" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) +"cU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"cV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"cW" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"cX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"cY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) +"cZ" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"da" = (/obj/structure/cable{icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 28},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) +"db" = (/obj/structure/cable{icon_state = "2-8"},/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"dc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) +"dd" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) +"de" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"df" = (/obj/item/weapon/gun/energy/ionrifle,/turf/space,/area/tether_away/debrisfield/explored) +"dg" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) +"dh" = (/obj/structure/prop/blackbox/xenofrigate,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) + +(1,1,1) = {" +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaafagagagagagagagagahaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaibabbbdbbbbbdbbbcajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauauauauauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauaubFauauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauauaQcTauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaadadadadadadbxbxaeaebYaebxbxadadadadadadaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaadawawaDawaeavavaealbCaeavavaeaDawawawadaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaadawawawbJaeavavaebMcgaeavavaeawawawawadaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaadawaeawaDaeavavaebNbNaeavavaeawaDaeawadaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaadawaeaeaeaeavavaebwcFaeavavaeaeaeaeawadaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaadacacacacbwavavbvcicibvavavbwacacacacadaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaadacacacacbwavavbvcicibvavavbwacacacacadaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaadaxaeaeaeaeavavaeciciaeavavaeaeaeaeaxadaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaadaxaeaxaEaeavavaeciciaeavavaeaGaxaKaxadaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaadaxaxaxaKaeavavaeciciaeavavaeaGaxaKaxadaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaadadadadadadadadaeciciaeadadadadadadadadaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaadadcicqadadaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaabGadciciadbGaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaqaeaeaeaeciciaeaeaeaearaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaeaeaeabcaaeciciaecaabaeaeaeaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaamabanababbwcicibwababbyabbyaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaeaeaeababaeciciaeababaeaeaeaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaqaeaeaeaeciciaeaeaeaearaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaabGadciciadbGaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadadciciadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaadadaaaaaaaaaaaaaaadadadadadadadadadadciciadadadadadadadadadadaaaaaaaaaaaaaaadadaaaaaa +aaaaaaadadaaaaaaaaaaaaadadadacacacbHaebIbkaeciciaeaFaFaebHacacacadadadaaaaaaaaaaaaadadaaaaaa +aaaaadadadadaaaaaaaaaaadbBaCacaeacacaeacacbwcicibwacacaeacacacacaCbAadaaaaaaaaaaadadadadaaaa +aaapadbebtadapaaaaaaaaadaCaeacacacacbwacacbwcicibwbkacaeacaeacaeaeaeadaaaaaaaaapadbfbgadapaa +aaadadasbTadadaaaaaaaaadacacacacaeaeaeaeaeaeciciaeacacaeacacacacaMbpadaaaaaaaaadadasbTadadaa +aaadasasbTaeadaaaaaaaaadacaeaeacaebsacaeaNaeciciaeacacaebHacacacaMaMadaaaaaaaaadbSbWcnbKadaa +aaadasaebYaeadaaaaaaaaadacbkacacaeacacaeaMaeciciaeacacaeaeacacaeaMaMadaaaaaaaaadbTasaeaeadaa +aaadasasbTasadaaaaaaaaadacacacacacacacaeaMaecicUaeacacacacbkacaeaMaMadaaaaaaaaadbTasasasadaa +aaadaeaebTasadaaaaaaaaadaeaeacbkacaeacacaMaeciciaebHacacacacacaeaMaMadaaaaaaaaadbTaeaeasadaa +aaadasasbTasadaaaaaaaaadacacacaeacacacacaMaeciciaeaeaeacaeacacaeboaWadaaaaaaaaadbTasasasadaa +aaadasasbTasadaaaaaaaaadacbqacaeacacaebsaMaeciciaebLaXaMaeacacaeaeaeadaaaaaaaaadcobWbWcpadaa +aaadasaebYasadaaaaaaadadacaeacaeacacacaeaZaeciciaeaYaMbLaeacacacaCaCadadaaaaaaadaeaeaebTadaa +aaadbKaebTasadaaaaadadadaMaMaMaMaMaMaMaZaeaeciciaeaYaMbLaeacacaeaCbradadadaaaaadbSbWbWcnadaa +aaadaeaebTaeadadadadadadaeaeaeaeaeaeaeaeaeaeciciaeaeaeaeaeaeaeaeaeaeadadadadadadbTaeaeaeadaa +aaadbPascbcccdcccccccccecfcfcfcfcfcfcfcfcfbvdbdcbjcscscscscsctcscscscubWbWbWbWcvcnasasbQadaa +aaadbPasbQasbzasasasasbvavavavavavavavavavbvchcibvavavavavavavavavavbvasasasasbzasasasbQadaa +aaadaeaeasaeadadadadadadaeaeaeaeaeaeaeaeaeaeciciaeaeaeaeaeaeaeaeaeaeadadadadadadasaeaeaeadaa +aaadbKaeasasadaaaaadadadaHacaLaeacacbwacbiaecwcxaebiacbwaRaRaRaRaRbladadadaaaaadasasasasadaa +aaadasaeasasadaaaaaaadadacacacacaccycAcJacaeciciaecyczcAcBaRaeaSaRbmadadaaaaaaadaeaeasasadaa +aaadasasasaeadaaaaaaaaadacacaeaeacclaecDcJaeciciaeclacaecCaRbDaeaRaRadaaaaaaaaadbKaeasasadaa +aaadasasaeaeadaaaaaaaaadacacacaeacclaeacclaeciciaeclacaecCaRaeaSaRaRadaaaaaaaaadasaeasasadaa +aaadasasasasadaaaaaaaaadacaeacacacclaeacclaeckckaeclacaecCaRbEaRaeaRadaaaaaaaaadasasasasadaa +aaadaeaeasasadaaaaaaaaadacacacacacclaecrcDczcVclbkclcraecCaRaRaRaRaSadaaaaaaaaadasasaeaeadaa +aaadasasasasadaaaaaaaaadaeaeaeaebwcFaebiacaccmcDczcEbiaecFbwaeaeaeaeadaaaaaaaaadasasasasadaa +aaadasasasasadaaaaaaaaadbnaTaTaTaTcGadadadadadadadadadadcGaTaTaTaTbnadaaaaaaaaadasaeasasadaa +aaadasaeaeaeadaaaaaaaaadaTaTcWcXcXcYadaoaoaoaoaoaoaoaoadcGaTaTaTaTaTadaaaaaaaaadbKaeasasadaa +aaadasaebKasadaaaaaaaaadaCaecFaeaeaeadaoaaaaaaaaaaaaaoadclacaeaeaCaCadaaaaaaaaadaeaeasasadaa +aaadasaeasasadaaaaaaaaadaCaeclacaCaOadaoaaaaaaaaaaaaaoadcDcHcIaeaCaCadaaaaaaaaadasasasasadaa +aaadasaeaeasadaaaaaaaaadaOaeclbkaCaCadaoaaaaaaaaaaaaaoadbZacclaeaOaOadaaaaaaaaadasaeaeaeadaa +aaadasasasasadaaaaaaaaadaeaecFbwaeaeadaoaaaadfaaaaaaaoadaeaecFaeaeaeadaaaaaaaaadasasasasadaa +aaadatasasatadaaaaaaaaadbhaeclacacaJadaoaaaaazazaaaaaoadacacclacacaIadaaaaaaaaadatasasatadaa +aaadaeatataeadaaaaaaaaadacacclacaeaeadaoaaaaazazaaaaaoadacbkcDcJacacadaaaaaaaaadaeatataeadaa +aaadakaeaeakadaaaaaaaaadacaeclacababdgaoaaaaaaaaaaaaaodgacacaecFaeaeadaaaaaaaaadakaeaeakadaa +aaadaaakakaaadaaaaaaaaadacaccZacababdgaoaaaaaaaaaaaaaodgacacaecKababadaaaaaaaaadaaakakaaadaa +aaaaaaaaaaaaaaaaaaaaaaadacaccDdaaeaeadaoaaaaaaaaaaaaaoadacacaecPcQcRadaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaadaPaeabababaVadaoaoaoaoaoaoaoaoadbsacaecKabaUadaaaaaaaaaaaaaaaaaaaaaa +bRbRbRbRbRbRbRbRbRbRaaadadadbuadadadadadadadadadadadadadadadadcMadadadaabRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRaaaaadadabababayayayayayayayayayayaycScNcNcOadadaaaabRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRaaaaaaadadababayayayayayayayayayayayayababadadaaaabObRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbObOaaaaadaddeayayayayaAdhdhaAayayayaydeadadaaaabObObRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbObObOaaaaadadddayayayaAaBaBaAayayayddadadaaaabObObObRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbObObObOaaaaadadddayayayayayayayayddadadaaaabObObObObRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbObObObObOaaaaadadddayayayayayayddadadaaaabObObObObObRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbObObObObObOaaaaadadddayddddayddadadaaaabObObObObObObRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbObObObObObObOaaaaadadadadadadadadaaaabObObObObObObObRbRbRbRbRbRbRbRbRbR +bRbRbRbRbRbRbRbRbRbRbObObObObObObObOaaaaaaaaaaaaaaaaaaaabObObObObObObObObRbRbRbRbRbRbRbRbRbR +"} From 75704e503942b80631c54f82f609f8e1900c83cf Mon Sep 17 00:00:00 2001 From: Rykka Date: Thu, 3 Oct 2019 12:02:45 -0600 Subject: [PATCH 37/69] Run mapmerge --- maps/tether/submaps/space/pois/derelict.dmm | 4668 ++++++++++++++++++- 1 file changed, 4434 insertions(+), 234 deletions(-) diff --git a/maps/tether/submaps/space/pois/derelict.dmm b/maps/tether/submaps/space/pois/derelict.dmm index 3583642f18..bc5616cfdb 100644 --- a/maps/tether/submaps/space/pois/derelict.dmm +++ b/maps/tether/submaps/space/pois/derelict.dmm @@ -1,234 +1,4434 @@ -"aa" = (/turf/space,/area/tether_away/debrisfield/explored) -"ab" = (/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ac" = (/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"ad" = (/turf/simulated/wall/r_wall,/area/tether_away/debrisfield/explored) -"ae" = (/turf/simulated/wall,/area/tether_away/debrisfield/explored) -"af" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ag" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced,/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ah" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ai" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 8; health = 1e+006},/obj/structure/window/reinforced{dir = 4},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"aj" = (/obj/structure/window/reinforced/full,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/grille,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ak" = (/obj/structure/shuttle/engine/propulsion,/turf/space,/area/tether_away/debrisfield/explored) -"al" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) -"am" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/effect/map_effect/interval/effect_emitter/smoke,/obj/machinery/door/airlock/alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"an" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/structure/door_assembly/door_assembly_alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"ao" = (/obj/structure/catwalk,/turf/space,/area/tether_away/debrisfield/explored) -"ap" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 1},/turf/space,/area/tether_away/debrisfield/explored) -"aq" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 8},/turf/space,/area/tether_away/debrisfield/explored) -"ar" = (/obj/structure/shuttle/engine/propulsion{icon_state = "burst_l"; dir = 4},/turf/space,/area/tether_away/debrisfield/explored) -"as" = (/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"at" = (/obj/structure/shuttle/engine/heater,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"au" = (/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"av" = (/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"aw" = (/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) -"ax" = (/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) -"ay" = (/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) -"az" = (/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/empgrenade,/obj/item/weapon/grenade/empgrenade,/turf/space,/area/tether_away/debrisfield/explored) -"aA" = (/obj/structure/prop/prism,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) -"aB" = (/obj/structure/prop/fake_ai,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) -"aC" = (/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) -"aD" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) -"aE" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) -"aF" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aG" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) -"aH" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aI" = (/obj/structure/ghost_pod/manual/lost_drone/dogborg,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aJ" = (/obj/structure/ghost_pod/manual/lost_drone,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aK" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/monofloor,/area/tether_away/debrisfield/explored) -"aL" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/mob/living/simple_mob/mechanical/corrupt_maint_drone{faction = "derelict"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aM" = (/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"aN" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"aO" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) -"aP" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"aQ" = (/obj/structure/cable{icon_state = "0-4"},/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"aR" = (/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"aS" = (/mob/living/simple_mob/mechanical/infectionbot{faction = "derelict"},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"aT" = (/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"aU" = (/obj/tether_away_spawner/debrisfield/derelict/mech_wizard,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"aV" = (/obj/structure/ghost_pod/manual/lost_drone/dogborg,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"aW" = (/obj/tether_away_spawner/debrisfield/derelict/mech_wizard,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"aX" = (/obj/effect/decal/remains/human,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"aY" = (/obj/structure/old_roboprinter,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"aZ" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"ba" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"bb" = (/obj/structure/prop/alien/computer,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"bc" = (/obj/structure/prop/alien/computer/camera/flipped,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"bd" = (/obj/structure/prop/alien/dispenser,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"be" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bf" = (/obj/structure/prop/alien/power,/obj/structure/cable{icon_state = "0-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bg" = (/obj/structure/prop/alien/computer/camera/flipped,/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bh" = (/obj/structure/prop/alien/pod,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bi" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bj" = (/obj/effect/map_effect/interval/effect_emitter/sparks/frequent,/obj/structure/door_assembly/door_assembly_alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"bk" = (/obj/random/humanoidremains,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bl" = (/obj/machinery/implantchair,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"bm" = (/obj/machinery/dna_scannernew,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"bn" = (/obj/machinery/replicator,/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"bo" = (/obj/machinery/transhuman/synthprinter,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"bp" = (/obj/machinery/transhuman/resleever,/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"bq" = (/obj/machinery/vr_sleeper/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"br" = (/obj/machinery/auto_cloner,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) -"bs" = (/obj/machinery/artifact,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bt" = (/obj/structure/prop/alien/power,/obj/structure/cable{d2 = 2; icon_state = "0-2"; pixel_y = 0},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bu" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = null; locked = 1; name = "AI Core"; req_access = list(16)},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"bv" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"bw" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bx" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"by" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"bz" = (/obj/machinery/door/airlock/alien,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bA" = (/obj/machinery/bomb_tester,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) -"bB" = (/obj/random/humanoidremains,/obj/item/weapon/gun/energy/ionrifle,/turf/simulated/floor/tiled/steel_ridged,/area/tether_away/debrisfield/explored) -"bC" = (/obj/structure/prop/alien/power,/obj/structure/cable,/obj/structure/cable{icon_state = "1-8"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) -"bD" = (/obj/machinery/optable,/obj/random/humanoidremains,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"bE" = (/obj/random/humanoidremains,/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"bF" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"bG" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/space,/area/tether_away/debrisfield/explored) -"bH" = (/obj/random/tool/alien,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bI" = (/obj/random/energy,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"bJ" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/tiled/monotile,/area/tether_away/debrisfield/explored) -"bK" = (/obj/tether_away_spawner/debrisfield/derelict,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bL" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/mob/living/simple_mob/mechanical/corrupt_maint_drone{faction = "derelict"},/turf/simulated/floor/tiled/steel_grid,/area/tether_away/debrisfield/explored) -"bM" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/item/weapon/grenade/empgrenade,/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) -"bN" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) -"bO" = (/turf/template_noop,/area/tether_away/debrisfield/explored) -"bP" = (/obj/structure/old_roboprinter,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bQ" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bR" = (/turf/template_noop,/area/tether_away/debrisfield/unexplored) -"bS" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bW" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"bY" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/wall,/area/tether_away/debrisfield/explored) -"bZ" = (/obj/effect/alien/egg,/obj/effect/alien/weeds,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"ca" = (/obj/effect/decal/mecha_wreckage/gygax/adv,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cb" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"cc" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"cd" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"ce" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cf" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cg" = (/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/bluegrid,/area/tether_away/debrisfield/explored) -"ch" = (/obj/item/xenos_claw,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"ci" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"ck" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cl" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cm" = (/obj/structure/cable,/obj/machinery/power/apc{dir = 2; name = "south bump"; pixel_y = -24},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cn" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"co" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"cp" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"cq" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cr" = (/obj/structure/prop/prism,/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cs" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"ct" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cu" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cv" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/reinforced,/area/tether_away/debrisfield/explored) -"cw" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cy" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cz" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cA" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cB" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"cC" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/white,/area/tether_away/debrisfield/explored) -"cD" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cE" = (/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cF" = (/obj/machinery/door/airlock/alien,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cG" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"cH" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cI" = (/obj/random/humanoidremains,/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cJ" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cK" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cM" = (/obj/machinery/door/airlock/hatch{icon_state = "door_locked"; id_tag = null; locked = 1; name = "AI Core"; req_access = list(16)},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cN" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cO" = (/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cP" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cQ" = (/obj/structure/cable{icon_state = "4-8"},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cR" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 28},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"cS" = (/obj/machinery/power/apc/hyper{pixel_y = 25},/obj/structure/cable{icon_state = "0-4"},/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) -"cT" = (/obj/structure/cable{icon_state = "2-8"},/turf/simulated/floor/tiled/techfloor,/area/tether_away/debrisfield/explored) -"cU" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"cV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"cW" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"cX" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"cY" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/turf/simulated/floor/tiled/neutral,/area/tether_away/debrisfield/explored) -"cZ" = (/obj/random/humanoidremains,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"da" = (/obj/structure/cable{icon_state = "0-8"},/obj/machinery/power/apc{dir = 4; name = "east bump"; pixel_x = 28},/turf/simulated/floor/tiled/dark,/area/tether_away/debrisfield/explored) -"db" = (/obj/structure/cable{icon_state = "2-8"},/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{icon_state = "1-8"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"dc" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{icon_state = "4-8"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/steel_dirty,/area/tether_away/debrisfield/explored) -"dd" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) -"de" = (/obj/machinery/porta_turret/alien{faction = "derelict"; use_power = 0},/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"df" = (/obj/item/weapon/gun/energy/ionrifle,/turf/space,/area/tether_away/debrisfield/explored) -"dg" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/floor/plating,/area/tether_away/debrisfield/explored) -"dh" = (/obj/structure/prop/blackbox/xenofrigate,/turf/simulated/floor/greengrid,/area/tether_away/debrisfield/explored) - -(1,1,1) = {" -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaafagagagagagagagagahaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaibabbbdbbbbbdbbbcajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauauauauauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauaubFauauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaiauauauaQcTauauauajaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaadadadadadadbxbxaeaebYaebxbxadadadadadadaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaadawawaDawaeavavaealbCaeavavaeaDawawawadaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaadawawawbJaeavavaebMcgaeavavaeawawawawadaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaadawaeawaDaeavavaebNbNaeavavaeawaDaeawadaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaadawaeaeaeaeavavaebwcFaeavavaeaeaeaeawadaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaadacacacacbwavavbvcicibvavavbwacacacacadaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaadacacacacbwavavbvcicibvavavbwacacacacadaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaadaxaeaeaeaeavavaeciciaeavavaeaeaeaeaxadaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaadaxaeaxaEaeavavaeciciaeavavaeaGaxaKaxadaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaadaxaxaxaKaeavavaeciciaeavavaeaGaxaKaxadaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaadadadadadadadadaeciciaeadadadadadadadadaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaaadadcicqadadaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaabGadciciadbGaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaqaeaeaeaeciciaeaeaeaearaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaeaeaeabcaaeciciaecaabaeaeaeaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaamabanababbwcicibwababbyabbyaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaeaeaeababaeciciaeababaeaeaeaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaqaeaeaeaeciciaeaeaeaearaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbRaaaaaaaaaaaaaaaaaabGadciciadbGaaaaaaaaaaaaaaaaaabRbRbRbRbRbRbRbRbRbRbR -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadadciciadadaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaadadaaaaaaaaaaaaaaadadadadadadadadadadciciadadadadadadadadadadaaaaaaaaaaaaaaadadaaaaaa -aaaaaaadadaaaaaaaaaaaaadadadacacacbHaebIbkaeciciaeaFaFaebHacacacadadadaaaaaaaaaaaaadadaaaaaa -aaaaadadadadaaaaaaaaaaadbBaCacaeacacaeacacbwcicibwacacaeacacacacaCbAadaaaaaaaaaaadadadadaaaa -aaapadbebtadapaaaaaaaaadaCaeacacacacbwacacbwcicibwbkacaeacaeacaeaeaeadaaaaaaaaapadbfbgadapaa -aaadadasbTadadaaaaaaaaadacacacacaeaeaeaeaeaeciciaeacacaeacacacacaMbpadaaaaaaaaadadasbTadadaa -aaadasasbTaeadaaaaaaaaadacaeaeacaebsacaeaNaeciciaeacacaebHacacacaMaMadaaaaaaaaadbSbWcnbKadaa -aaadasaebYaeadaaaaaaaaadacbkacacaeacacaeaMaeciciaeacacaeaeacacaeaMaMadaaaaaaaaadbTasaeaeadaa -aaadasasbTasadaaaaaaaaadacacacacacacacaeaMaecicUaeacacacacbkacaeaMaMadaaaaaaaaadbTasasasadaa -aaadaeaebTasadaaaaaaaaadaeaeacbkacaeacacaMaeciciaebHacacacacacaeaMaMadaaaaaaaaadbTaeaeasadaa -aaadasasbTasadaaaaaaaaadacacacaeacacacacaMaeciciaeaeaeacaeacacaeboaWadaaaaaaaaadbTasasasadaa -aaadasasbTasadaaaaaaaaadacbqacaeacacaebsaMaeciciaebLaXaMaeacacaeaeaeadaaaaaaaaadcobWbWcpadaa -aaadasaebYasadaaaaaaadadacaeacaeacacacaeaZaeciciaeaYaMbLaeacacacaCaCadadaaaaaaadaeaeaebTadaa -aaadbKaebTasadaaaaadadadaMaMaMaMaMaMaMaZaeaeciciaeaYaMbLaeacacaeaCbradadadaaaaadbSbWbWcnadaa -aaadaeaebTaeadadadadadadaeaeaeaeaeaeaeaeaeaeciciaeaeaeaeaeaeaeaeaeaeadadadadadadbTaeaeaeadaa -aaadbPascbcccdcccccccccecfcfcfcfcfcfcfcfcfbvdbdcbjcscscscscsctcscscscubWbWbWbWcvcnasasbQadaa -aaadbPasbQasbzasasasasbvavavavavavavavavavbvchcibvavavavavavavavavavbvasasasasbzasasasbQadaa -aaadaeaeasaeadadadadadadaeaeaeaeaeaeaeaeaeaeciciaeaeaeaeaeaeaeaeaeaeadadadadadadasaeaeaeadaa -aaadbKaeasasadaaaaadadadaHacaLaeacacbwacbiaecwcxaebiacbwaRaRaRaRaRbladadadaaaaadasasasasadaa -aaadasaeasasadaaaaaaadadacacacacaccycAcJacaeciciaecyczcAcBaRaeaSaRbmadadaaaaaaadaeaeasasadaa -aaadasasasaeadaaaaaaaaadacacaeaeacclaecDcJaeciciaeclacaecCaRbDaeaRaRadaaaaaaaaadbKaeasasadaa -aaadasasaeaeadaaaaaaaaadacacacaeacclaeacclaeciciaeclacaecCaRaeaSaRaRadaaaaaaaaadasaeasasadaa -aaadasasasasadaaaaaaaaadacaeacacacclaeacclaeckckaeclacaecCaRbEaRaeaRadaaaaaaaaadasasasasadaa -aaadaeaeasasadaaaaaaaaadacacacacacclaecrcDczcVclbkclcraecCaRaRaRaRaSadaaaaaaaaadasasaeaeadaa -aaadasasasasadaaaaaaaaadaeaeaeaebwcFaebiacaccmcDczcEbiaecFbwaeaeaeaeadaaaaaaaaadasasasasadaa -aaadasasasasadaaaaaaaaadbnaTaTaTaTcGadadadadadadadadadadcGaTaTaTaTbnadaaaaaaaaadasaeasasadaa -aaadasaeaeaeadaaaaaaaaadaTaTcWcXcXcYadaoaoaoaoaoaoaoaoadcGaTaTaTaTaTadaaaaaaaaadbKaeasasadaa -aaadasaebKasadaaaaaaaaadaCaecFaeaeaeadaoaaaaaaaaaaaaaoadclacaeaeaCaCadaaaaaaaaadaeaeasasadaa -aaadasaeasasadaaaaaaaaadaCaeclacaCaOadaoaaaaaaaaaaaaaoadcDcHcIaeaCaCadaaaaaaaaadasasasasadaa -aaadasaeaeasadaaaaaaaaadaOaeclbkaCaCadaoaaaaaaaaaaaaaoadbZacclaeaOaOadaaaaaaaaadasaeaeaeadaa -aaadasasasasadaaaaaaaaadaeaecFbwaeaeadaoaaaadfaaaaaaaoadaeaecFaeaeaeadaaaaaaaaadasasasasadaa -aaadatasasatadaaaaaaaaadbhaeclacacaJadaoaaaaazazaaaaaoadacacclacacaIadaaaaaaaaadatasasatadaa -aaadaeatataeadaaaaaaaaadacacclacaeaeadaoaaaaazazaaaaaoadacbkcDcJacacadaaaaaaaaadaeatataeadaa -aaadakaeaeakadaaaaaaaaadacaeclacababdgaoaaaaaaaaaaaaaodgacacaecFaeaeadaaaaaaaaadakaeaeakadaa -aaadaaakakaaadaaaaaaaaadacaccZacababdgaoaaaaaaaaaaaaaodgacacaecKababadaaaaaaaaadaaakakaaadaa -aaaaaaaaaaaaaaaaaaaaaaadacaccDdaaeaeadaoaaaaaaaaaaaaaoadacacaecPcQcRadaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaadaPaeabababaVadaoaoaoaoaoaoaoaoadbsacaecKabaUadaaaaaaaaaaaaaaaaaaaaaa -bRbRbRbRbRbRbRbRbRbRaaadadadbuadadadadadadadadadadadadadadadadcMadadadaabRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRaaaaadadabababayayayayayayayayayayaycScNcNcOadadaaaabRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRaaaaaaadadababayayayayayayayayayayayayababadadaaaabObRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbObOaaaaadaddeayayayayaAdhdhaAayayayaydeadadaaaabObObRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbObObOaaaaadadddayayayaAaBaBaAayayayddadadaaaabObObObRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbObObObOaaaaadadddayayayayayayayayddadadaaaabObObObObRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbObObObObOaaaaadadddayayayayayayddadadaaaabObObObObObRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbObObObObObOaaaaadadddayddddayddadadaaaabObObObObObObRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbObObObObObObOaaaaadadadadadadadadaaaabObObObObObObObRbRbRbRbRbRbRbRbRbR -bRbRbRbRbRbRbRbRbRbRbObObObObObObObOaaaaaaaaaaaaaaaaaaaabObObObObObObObObRbRbRbRbRbRbRbRbRbR -"} +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/space, +/area/tether_away/debrisfield/explored) +"ab" = ( +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ac" = ( +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"ad" = ( +/turf/simulated/wall/r_wall, +/area/tether_away/debrisfield/explored) +"ae" = ( +/turf/simulated/wall, +/area/tether_away/debrisfield/explored) +"af" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8; + health = 1e+006 + }, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ag" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ah" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ai" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 8; + health = 1e+006 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"aj" = ( +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ak" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/space, +/area/tether_away/debrisfield/explored) +"al" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/bluegrid, +/area/tether_away/debrisfield/explored) +"am" = ( +/obj/effect/map_effect/interval/effect_emitter/sparks/frequent, +/obj/effect/map_effect/interval/effect_emitter/smoke, +/obj/machinery/door/airlock/alien, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"an" = ( +/obj/effect/map_effect/interval/effect_emitter/sparks/frequent, +/obj/structure/door_assembly/door_assembly_alien, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"ao" = ( +/obj/structure/catwalk, +/turf/space, +/area/tether_away/debrisfield/explored) +"ap" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "burst_l"; + dir = 1 + }, +/turf/space, +/area/tether_away/debrisfield/explored) +"aq" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "burst_l"; + dir = 8 + }, +/turf/space, +/area/tether_away/debrisfield/explored) +"ar" = ( +/obj/structure/shuttle/engine/propulsion{ + icon_state = "burst_l"; + dir = 4 + }, +/turf/space, +/area/tether_away/debrisfield/explored) +"as" = ( +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"at" = ( +/obj/structure/shuttle/engine/heater, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"au" = ( +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"av" = ( +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"aw" = ( +/turf/simulated/floor/tiled/monotile, +/area/tether_away/debrisfield/explored) +"ax" = ( +/turf/simulated/floor/tiled/monofloor, +/area/tether_away/debrisfield/explored) +"ay" = ( +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) +"az" = ( +/obj/item/weapon/grenade/empgrenade, +/obj/item/weapon/grenade/empgrenade, +/obj/item/weapon/grenade/empgrenade, +/turf/space, +/area/tether_away/debrisfield/explored) +"aA" = ( +/obj/structure/prop/prism, +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) +"aB" = ( +/obj/structure/prop/fake_ai, +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) +"aC" = ( +/turf/simulated/floor/tiled/steel_ridged, +/area/tether_away/debrisfield/explored) +"aD" = ( +/obj/effect/decal/remains/human, +/turf/simulated/floor/tiled/monotile, +/area/tether_away/debrisfield/explored) +"aE" = ( +/obj/effect/decal/remains/human, +/turf/simulated/floor/tiled/monofloor, +/area/tether_away/debrisfield/explored) +"aF" = ( +/mob/living/simple_mob/mechanical/infectionbot{ + faction = "derelict" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aG" = ( +/obj/structure/old_roboprinter, +/turf/simulated/floor/tiled/monofloor, +/area/tether_away/debrisfield/explored) +"aH" = ( +/obj/structure/old_roboprinter, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aI" = ( +/obj/structure/ghost_pod/manual/lost_drone/dogborg, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aJ" = ( +/obj/structure/ghost_pod/manual/lost_drone, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aK" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/turf/simulated/floor/tiled/monofloor, +/area/tether_away/debrisfield/explored) +"aL" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/mob/living/simple_mob/mechanical/corrupt_maint_drone{ + faction = "derelict" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aM" = ( +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"aN" = ( +/mob/living/simple_mob/mechanical/infectionbot{ + faction = "derelict" + }, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"aO" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/turf/simulated/floor/tiled/steel_ridged, +/area/tether_away/debrisfield/explored) +"aP" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"aQ" = ( +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/power/apc{ + dir = 2; + name = "south bump"; + pixel_y = -24 + }, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"aR" = ( +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"aS" = ( +/mob/living/simple_mob/mechanical/infectionbot{ + faction = "derelict" + }, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"aT" = ( +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"aU" = ( +/obj/tether_away_spawner/debrisfield/derelict/mech_wizard, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"aV" = ( +/obj/structure/ghost_pod/manual/lost_drone/dogborg, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"aW" = ( +/obj/tether_away_spawner/debrisfield/derelict/mech_wizard, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"aX" = ( +/obj/effect/decal/remains/human, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"aY" = ( +/obj/structure/old_roboprinter, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"aZ" = ( +/obj/tether_away_spawner/debrisfield/derelict, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"ba" = ( +/obj/structure/prop/alien/computer/camera, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"bb" = ( +/obj/structure/prop/alien/computer, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"bc" = ( +/obj/structure/prop/alien/computer/camera/flipped, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"bd" = ( +/obj/structure/prop/alien/dispenser, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"be" = ( +/obj/structure/prop/alien/computer/camera, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bf" = ( +/obj/structure/prop/alien/power, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bg" = ( +/obj/structure/prop/alien/computer/camera/flipped, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bh" = ( +/obj/structure/prop/alien/pod, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bi" = ( +/obj/machinery/porta_turret/alien{ + faction = "derelict"; + use_power = 0 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bj" = ( +/obj/effect/map_effect/interval/effect_emitter/sparks/frequent, +/obj/structure/door_assembly/door_assembly_alien, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"bk" = ( +/obj/random/humanoidremains, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bl" = ( +/obj/machinery/implantchair, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"bm" = ( +/obj/machinery/dna_scannernew, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"bn" = ( +/obj/machinery/replicator, +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"bo" = ( +/obj/machinery/transhuman/synthprinter, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"bp" = ( +/obj/machinery/transhuman/resleever, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"bq" = ( +/obj/machinery/vr_sleeper/alien, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"br" = ( +/obj/machinery/auto_cloner, +/turf/simulated/floor/tiled/steel_ridged, +/area/tether_away/debrisfield/explored) +"bs" = ( +/obj/machinery/artifact, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bt" = ( +/obj/structure/prop/alien/power, +/obj/structure/cable{ + d2 = 2; + icon_state = "0-2"; + pixel_y = 0 + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bu" = ( +/obj/machinery/door/airlock/hatch{ + icon_state = "door_locked"; + id_tag = null; + locked = 1; + name = "AI Core"; + req_access = list(16) + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"bv" = ( +/obj/machinery/door/airlock/alien, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"bw" = ( +/obj/machinery/door/airlock/alien, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bx" = ( +/obj/machinery/door/airlock/alien/locked, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"by" = ( +/obj/machinery/door/airlock/alien, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"bz" = ( +/obj/machinery/door/airlock/alien, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bA" = ( +/obj/machinery/bomb_tester, +/turf/simulated/floor/tiled/steel_ridged, +/area/tether_away/debrisfield/explored) +"bB" = ( +/obj/random/humanoidremains, +/obj/item/weapon/gun/energy/ionrifle, +/turf/simulated/floor/tiled/steel_ridged, +/area/tether_away/debrisfield/explored) +"bC" = ( +/obj/structure/prop/alien/power, +/obj/structure/cable, +/obj/structure/cable{ + icon_state = "1-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/bluegrid, +/area/tether_away/debrisfield/explored) +"bD" = ( +/obj/machinery/optable, +/obj/random/humanoidremains, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"bE" = ( +/obj/random/humanoidremains, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"bF" = ( +/obj/tether_away_spawner/debrisfield/derelict, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"bG" = ( +/obj/machinery/porta_turret/alien{ + faction = "derelict"; + use_power = 0 + }, +/turf/space, +/area/tether_away/debrisfield/explored) +"bH" = ( +/obj/random/tool/alien, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bI" = ( +/obj/random/energy, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"bJ" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/turf/simulated/floor/tiled/monotile, +/area/tether_away/debrisfield/explored) +"bK" = ( +/obj/tether_away_spawner/debrisfield/derelict, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bL" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/mob/living/simple_mob/mechanical/corrupt_maint_drone{ + faction = "derelict" + }, +/turf/simulated/floor/tiled/steel_grid, +/area/tether_away/debrisfield/explored) +"bM" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/item/weapon/grenade/empgrenade, +/turf/simulated/floor/bluegrid, +/area/tether_away/debrisfield/explored) +"bN" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/bluegrid, +/area/tether_away/debrisfield/explored) +"bO" = ( +/turf/template_noop, +/area/tether_away/debrisfield/explored) +"bP" = ( +/obj/structure/old_roboprinter, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bQ" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bR" = ( +/turf/template_noop, +/area/tether_away/debrisfield/unexplored) +"bS" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bT" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bW" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"bY" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/wall, +/area/tether_away/debrisfield/explored) +"bZ" = ( +/obj/effect/alien/egg, +/obj/effect/alien/weeds, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"ca" = ( +/obj/effect/decal/mecha_wreckage/gygax/adv, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cb" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"cc" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"cd" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"ce" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cf" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cg" = ( +/obj/tether_away_spawner/debrisfield/derelict/corrupt_maint_swarm, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/bluegrid, +/area/tether_away/debrisfield/explored) +"ch" = ( +/obj/item/xenos_claw, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"ci" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"ck" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cl" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cm" = ( +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 2; + name = "south bump"; + pixel_y = -24 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cn" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"co" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"cp" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"cq" = ( +/obj/random/humanoidremains, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cr" = ( +/obj/structure/prop/prism, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cs" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"ct" = ( +/obj/random/humanoidremains, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cu" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cv" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/reinforced, +/area/tether_away/debrisfield/explored) +"cw" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cx" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cy" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cz" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cA" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cB" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"cC" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/white, +/area/tether_away/debrisfield/explored) +"cD" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cE" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cF" = ( +/obj/machinery/door/airlock/alien, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cG" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"cH" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cI" = ( +/obj/random/humanoidremains, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cJ" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cK" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cM" = ( +/obj/machinery/door/airlock/hatch{ + icon_state = "door_locked"; + id_tag = null; + locked = 1; + name = "AI Core"; + req_access = list(16) + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cN" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cO" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cP" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cQ" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cR" = ( +/obj/structure/cable{ + d2 = 8; + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + dir = 4; + name = "east bump"; + pixel_x = 28 + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"cS" = ( +/obj/machinery/power/apc/hyper{ + pixel_y = 25 + }, +/obj/structure/cable{ + icon_state = "0-4" + }, +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) +"cT" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/tether_away/debrisfield/explored) +"cU" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"cV" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"cW" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"cX" = ( +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"cY" = ( +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/neutral, +/area/tether_away/debrisfield/explored) +"cZ" = ( +/obj/random/humanoidremains, +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"da" = ( +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + dir = 4; + name = "east bump"; + pixel_x = 28 + }, +/turf/simulated/floor/tiled/dark, +/area/tether_away/debrisfield/explored) +"db" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"dc" = ( +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" + }, +/turf/simulated/floor/tiled/steel_dirty, +/area/tether_away/debrisfield/explored) +"dd" = ( +/obj/machinery/porta_turret/alien{ + faction = "derelict"; + use_power = 0 + }, +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) +"de" = ( +/obj/machinery/porta_turret/alien{ + faction = "derelict"; + use_power = 0 + }, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"df" = ( +/obj/item/weapon/gun/energy/ionrifle, +/turf/space, +/area/tether_away/debrisfield/explored) +"dg" = ( +/obj/machinery/door/airlock/alien/locked, +/turf/simulated/floor/plating, +/area/tether_away/debrisfield/explored) +"dh" = ( +/obj/structure/prop/blackbox/xenofrigate, +/turf/simulated/floor/greengrid, +/area/tether_away/debrisfield/explored) + +(1,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(2,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +ap +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(3,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +ad +ad +ad +as +as +as +ae +as +as +as +bK +ae +bP +bP +ae +bK +as +as +as +as +ae +as +as +as +as +as +as +as +at +ae +ak +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(4,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +ad +ad +ad +be +as +as +ae +as +ae +as +as +ae +ae +ae +as +as +ae +ae +ae +as +as +as +ae +as +as +ae +ae +ae +ae +as +as +at +ae +ak +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(5,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +ad +ad +ad +bt +bT +bT +bY +bT +bT +bT +bT +bY +bT +bT +cb +bQ +as +as +as +as +ae +as +as +as +as +ae +bK +as +ae +as +as +at +ae +ak +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(6,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +ad +ad +ad +ae +ae +as +as +as +as +as +as +ae +cc +as +ae +as +as +ae +ae +as +as +as +as +ae +as +as +as +as +at +ae +ak +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(7,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +ap +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +cd +bz +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(8,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +cc +as +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(9,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +cc +as +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(10,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +cc +as +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(11,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +cc +as +ad +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bO +bO +bO +bO +bO +bO +bO +"} +(12,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ce +bv +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bO +bO +bO +bO +bO +bO +bO +"} +(13,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +bB +aC +ac +ac +ac +ac +ae +ac +ac +ac +aM +ae +cf +av +ae +aH +ac +ac +ac +ac +ac +ae +bn +aT +aC +aC +aO +ae +bh +ac +ac +ac +ac +aP +ad +ad +aa +aa +bO +bO +bO +bO +bO +bO +"} +(14,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +aC +ae +ac +ae +bk +ac +ae +ac +bq +ae +aM +ae +cf +av +ae +ac +ac +ac +ac +ae +ac +ae +aT +aT +ae +ae +ae +ae +ae +ac +ae +ac +ac +ae +ad +ad +ad +aa +aa +bO +bO +bO +bO +bO +"} +(15,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +aw +aw +aw +aw +ac +ac +ax +ax +ax +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ac +ac +ac +ac +ae +ac +ac +ac +ac +ac +ac +aM +ae +cf +av +ae +aL +ac +ae +ac +ac +ac +ae +aT +cW +cF +cl +cl +cF +cl +cl +cl +cZ +cD +ab +bu +ab +ad +ad +aa +aa +bO +bO +bO +bO +"} +(16,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +aw +aw +ae +ae +ac +ac +ae +ae +ax +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ac +ae +ac +ac +ac +ac +ac +bk +ae +ae +ae +aM +ae +cf +av +ae +ae +ac +ae +ae +ac +ac +ae +aT +cX +ae +ac +bk +bw +ac +ac +ac +ac +da +ab +ad +ab +ab +ad +ad +aa +aa +bO +bO +bO +"} +(17,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +aD +aw +aw +ae +ac +ac +ae +ax +ax +ad +aa +aa +aa +ae +am +ae +aa +aa +aa +ad +ac +ac +ac +ae +ae +ae +ac +ac +ac +ac +ac +aM +ae +cf +av +ae +ac +ac +ac +ac +ac +ac +bw +aT +cX +ae +aC +aC +ae +ac +ae +ab +ab +ae +ab +ad +ab +ab +de +ad +ad +aa +aa +bO +bO +"} +(18,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +aw +bJ +aD +ae +ac +ac +ae +aE +aK +ad +aa +aa +aq +ae +ab +ae +aq +aa +aa +ad +bH +ac +ac +ae +bs +ac +ac +ae +ac +ac +ac +aM +ae +cf +av +ae +ac +cy +cl +cl +cl +cl +cF +cG +cY +ae +aO +aC +ae +aJ +ae +ab +ab +ae +aV +ad +ay +ay +ay +dd +ad +ad +aa +aa +bO +"} +(19,1,1) = {" +aa +af +ai +ai +ai +ai +ad +ae +ae +ae +ae +bw +bw +ae +ae +ae +ad +aa +aa +ae +ae +an +ae +ae +aa +aa +ad +ae +ae +bw +ae +ac +ac +ac +ac +ac +ae +ac +aM +ae +cf +av +ae +bw +cA +ae +ae +ae +ae +ae +ad +ad +ad +ad +ad +ad +ad +ad +dg +dg +ad +ad +ad +ay +ay +ay +ay +dd +ad +ad +aa +aa +"} +(20,1,1) = {" +aa +ag +ba +au +au +au +bx +av +av +av +av +av +av +av +av +av +ad +aa +aa +ae +ab +ab +ab +ae +aa +aa +ad +bI +ac +ac +ae +ae +ae +ae +ac +ac +bs +ae +aZ +ae +cf +av +ae +ac +cJ +cD +ac +ac +cr +bi +ad +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ad +ay +ay +ay +ay +ay +dd +ad +ad +aa +"} +(21,1,1) = {" +aa +ag +bb +au +au +au +bx +av +av +av +av +av +av +av +av +av +ad +ad +bG +ae +ca +ab +ab +ae +bG +ad +ad +bk +ac +ac +ae +aN +aM +aM +aM +aM +aM +aZ +ae +ae +cf +av +ae +bi +ac +cJ +cl +cl +cD +ac +ad +ao +aa +aa +aa +aa +aa +aa +aa +aa +aa +ao +ad +ay +ay +ay +ay +ay +ay +dd +ad +aa +"} +(22,1,1) = {" +aa +ag +bd +au +au +au +ae +ae +ae +ae +ae +bv +bv +ae +ae +ae +ae +ad +ad +ae +ae +bw +ae +ae +ad +ad +ad +ae +bw +bw +ae +ae +ae +ae +ae +ae +ae +ae +ae +ae +bv +bv +ae +ae +ae +ae +ae +ae +cz +ac +ad +ao +aa +aa +aa +aa +aa +aa +aa +aa +aa +ao +ad +ay +ay +aA +aA +ay +ay +ay +ad +aa +"} +(23,1,1) = {" +aa +ag +bb +au +bF +aQ +ae +al +bM +bN +bw +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +db +ch +ci +cw +ci +ci +ci +ck +cV +cm +ad +ao +aa +aa +aa +df +az +az +aa +aa +aa +ao +ad +ay +ay +dh +aB +ay +ay +dd +ad +aa +"} +(24,1,1) = {" +aa +ag +bb +au +au +cT +bY +bC +cg +bN +cF +ci +ci +ci +ci +ci +ci +cq +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +ci +cU +ci +ci +ci +ci +ci +ci +dc +ci +ci +cx +ci +ci +ci +ck +cl +cD +ad +ao +aa +aa +aa +aa +az +az +aa +aa +aa +ao +ad +ay +ay +dh +aB +ay +ay +dd +ad +aa +"} +(25,1,1) = {" +aa +ag +bd +au +au +au +ae +ae +ae +ae +ae +bv +bv +ae +ae +ae +ae +ad +ad +ae +ae +bw +ae +ae +ad +ad +ad +ae +bw +bw +ae +ae +ae +ae +ae +ae +ae +ae +ae +ae +bj +bv +ae +ae +ae +ae +ae +ae +bk +cz +ad +ao +aa +aa +aa +aa +aa +aa +aa +aa +aa +ao +ad +ay +ay +aA +aA +ay +ay +ay +ad +aa +"} +(26,1,1) = {" +aa +ag +bb +au +au +au +bx +av +av +av +av +av +av +av +av +av +ad +ad +bG +ae +ca +ab +ab +ae +bG +ad +ad +aF +ac +bk +ac +ac +ac +ac +bH +ae +bL +aY +aY +ae +cs +av +ae +bi +cy +cl +cl +cl +cl +cE +ad +ao +aa +aa +aa +aa +aa +aa +aa +aa +aa +ao +ad +ay +ay +ay +ay +ay +ay +dd +ad +aa +"} +(27,1,1) = {" +aa +ag +bc +au +au +au +bx +av +av +av +av +av +av +av +av +av +ad +aa +aa +ae +ab +ab +ab +ae +aa +aa +ad +aF +ac +ac +ac +ac +ac +ac +ac +ae +aX +aM +aM +ae +cs +av +ae +ac +cz +ac +ac +ac +cr +bi +ad +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ao +ad +ay +ay +ay +ay +ay +dd +ad +ad +aa +"} +(28,1,1) = {" +aa +ah +aj +aj +aj +aj +ad +ae +ae +ae +ae +bw +bw +ae +ae +ae +ad +aa +aa +ae +ae +by +ae +ae +aa +aa +ad +ae +ae +ae +ae +ae +ae +ac +ac +ac +aM +bL +bL +ae +cs +av +ae +bw +cA +ae +ae +ae +ae +ae +ad +ad +ad +ad +ad +ad +ad +ad +dg +dg +ad +ad +ad +ay +ay +ay +ay +dd +ad +ad +aa +aa +"} +(29,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +aD +aw +aw +ae +ac +ac +ae +aG +aG +ad +aa +aa +ar +ae +ab +ae +ar +aa +aa +ad +bH +ac +ac +ac +bH +ae +ac +ac +ae +ae +ae +ae +ae +cs +av +ae +aR +cB +cC +cC +cC +cC +cF +cG +cG +cl +cD +bZ +ae +ac +ac +ac +ac +ac +bs +ad +cS +ay +ay +dd +ad +ad +aa +aa +bO +"} +(30,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +aw +aw +aD +ae +ac +ac +ae +ax +ax +ad +aa +aa +aa +ae +by +ae +aa +aa +aa +ad +ac +ac +ae +ac +ac +ac +bk +ac +ac +ac +ac +ac +ae +cs +av +ae +aR +aR +aR +aR +aR +aR +bw +aT +aT +ac +cH +ac +ae +ac +bk +ac +ac +ac +ac +ad +cN +ab +de +ad +ad +aa +aa +bO +bO +"} +(31,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +aw +aw +ae +ae +ac +ac +ae +aK +aK +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ac +ae +ct +av +ae +aR +ae +bD +ae +bE +aR +ae +aT +aT +ae +cI +cl +cF +cl +cD +ae +ae +ae +ae +ad +cN +ab +ad +ad +aa +aa +bO +bO +bO +"} +(32,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +aw +aw +aw +aw +ac +ac +ax +ax +ax +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ac +ac +ae +ac +ac +ae +ae +ae +ae +ae +ac +ae +ae +cs +av +ae +aR +aS +ae +aS +aR +aR +ae +aT +aT +ae +ae +ae +ae +ac +cJ +cF +cK +cP +cK +cM +cO +ad +ad +aa +aa +bO +bO +bO +bO +"} +(33,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +aC +ae +aM +aM +aM +aM +aM +bo +ae +aC +aC +ae +cs +av +ae +aR +aR +aR +aR +ae +aR +ae +aT +aT +aC +aC +aO +ae +ac +ac +ae +ab +cQ +ab +ad +ad +ad +aa +aa +bO +bO +bO +bO +bO +"} +(34,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +bA +ae +bp +aM +aM +aM +aM +aW +ae +aC +br +ae +cs +av +ae +bl +bm +aR +aR +aR +aS +ae +bn +aT +aC +aC +aO +ae +aI +ac +ae +ab +cR +aU +ad +ad +aa +aa +bO +bO +bO +bO +bO +bO +"} +(35,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +cu +bv +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bO +bO +bO +bO +bO +bO +bO +"} +(36,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +bW +as +ad +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bO +bO +bO +bO +bO +bO +bO +bO +"} +(37,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +bW +as +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(38,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +bW +as +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(39,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +bW +as +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(40,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +ap +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +cv +bz +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(41,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +ad +ad +ad +bS +bT +bT +bT +bT +co +ae +bS +bT +cn +as +as +as +ae +bK +as +as +as +as +as +bK +ae +as +as +as +at +ae +ak +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(42,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +ad +ad +ad +bf +as +bW +as +as +ae +as +bW +ae +bW +ae +as +as +ae +as +ae +ae +ae +as +as +as +ae +ae +ae +as +ae +as +as +at +ae +ak +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(43,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +ad +ad +ad +bg +bT +cn +ae +as +ae +as +bW +ae +bW +ae +as +as +ae +as +as +as +as +as +ae +as +as +as +as +as +ae +as +as +at +ae +ak +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(44,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +ad +ad +ad +bK +ae +as +as +as +cp +bT +cn +ae +bQ +bQ +ae +as +as +as +as +as +ae +as +as +as +as +as +ae +as +at +ae +ak +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(45,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +ap +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} +(46,1,1) = {" +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +bR +bR +bR +bR +bR +bR +bR +bR +bR +bR +"} From b518cf9f054d29d47888bd9364df610e44cf81a9 Mon Sep 17 00:00:00 2001 From: Rykka Date: Thu, 3 Oct 2019 12:14:35 -0600 Subject: [PATCH 38/69] Update to hopefully reduce filediff. <3 --- .../submaps/underdark_pois/_templates.dm | 65 + .../underdark_pois/abandonded_outpost.dmm | 1045 +++++++++++++++++ .../submaps/underdark_pois/broken_engine.dmm | 136 +++ .../tether/submaps/underdark_pois/mimicry.dmm | 101 ++ .../submaps/underdark_pois/old_drone_hive.dmm | 138 +++ .../submaps/underdark_pois/phoron_rat_den.dmm | 309 +++++ .../underdark_pois/puzzle_corridor.dmm | 111 ++ .../submaps/underdark_pois/rad_threat.dmm | 63 + .../underdark_pois/rykka_easter_egg.dmm | 66 ++ .../submaps/underdark_pois/spider_nest.dmm | 111 ++ .../underdark_pois/subterranean_lake.dmm | 162 +++ .../submaps/underdark_pois/tree_shrine.dmm | 115 ++ .../underdark_pois/underdark_things.dm | 33 + .../submaps/underdark_pois/wolf_den.dmm | 268 +++++ 14 files changed, 2723 insertions(+) create mode 100644 maps/tether/submaps/underdark_pois/abandonded_outpost.dmm create mode 100644 maps/tether/submaps/underdark_pois/broken_engine.dmm create mode 100644 maps/tether/submaps/underdark_pois/mimicry.dmm create mode 100644 maps/tether/submaps/underdark_pois/old_drone_hive.dmm create mode 100644 maps/tether/submaps/underdark_pois/phoron_rat_den.dmm create mode 100644 maps/tether/submaps/underdark_pois/puzzle_corridor.dmm create mode 100644 maps/tether/submaps/underdark_pois/rad_threat.dmm create mode 100644 maps/tether/submaps/underdark_pois/rykka_easter_egg.dmm create mode 100644 maps/tether/submaps/underdark_pois/spider_nest.dmm create mode 100644 maps/tether/submaps/underdark_pois/subterranean_lake.dmm create mode 100644 maps/tether/submaps/underdark_pois/tree_shrine.dmm create mode 100644 maps/tether/submaps/underdark_pois/wolf_den.dmm diff --git a/maps/tether/submaps/underdark_pois/_templates.dm b/maps/tether/submaps/underdark_pois/_templates.dm index cb81bb6b1f..b015159f83 100644 --- a/maps/tether/submaps/underdark_pois/_templates.dm +++ b/maps/tether/submaps/underdark_pois/_templates.dm @@ -85,7 +85,72 @@ cost = 5 allow_duplicates = FALSE +/datum/map_template/underdark/old_drone_hive + name = "Underdark Old Drone Hive" + mappath = 'old_drone_hive.dmm' + cost = 25 + +/datum/map_template/underdark/phoron_rat_den + name = "Underdark Phoron Rat Den" + mappath = 'phoron_rat_den.dmm' + cost = 35 + allow_duplicates = FALSE + +/datum/map_template/underdark/subterranean_lake + name = "Underdark Underground Lake" + mappath = 'subterranean_lake.dmm' + cost = 5 + +/datum/map_template/underdark/spider_nest + name = "Underdark Spider Nest" + mappath = 'spider_nest.dmm' + cost = 15 + +/datum/map_template/underdark/rykka_easter_egg // bark bark Rykka was here. <3 + name = "Underdark GSD" + mappath = 'rykka_easter_egg.dmm' + cost = 5 + allow_duplicates = FALSE + +/datum/map_template/underdark/tree_shrine + name = "Underdark Tree" + mappath = 'tree_shrine.dmm' + cost = 10 + allow_duplicates = FALSE + +/datum/map_template/underdark/abandoned_outpost + name = "Underdark Abandonded Outpost" + mappath = 'abandonded_outpost.dmm' + cost = 45 + allow_duplicates = FALSE + +/datum/map_template/underdark/mimicry + name = "Underdark Mimic Death" + mappath = 'mimicry.dmm' + cost = 15 + +/datum/map_template/underdark/wolf_den + name = "Underdark Wolf Den" + mappath = 'wolf_den.dmm' + cost = 15 + +/datum/map_template/underdark/puzzle_corridor + name = "Underdark Puzzle Corridor" + mappath = 'puzzle_corridor.dmm' + cost = 10 + /* +// Comment out unfinished/unbalanced POI's here +/datum/map_template/underdark/rad_threat + name = "Underdark Rad Threat" + mappath = 'rad_threat.dmm' + cost = 10 + +/datum/map_template/underdark/broken_engine + name = "Underdark Broken Twin Engine" + mappath = 'broken_engine.dmm' + cost = 10 + /datum/map_template/underdark/boss_mob name = "Underdark Boss Mob Spawn" mappath = 'boss_mob.dmm' diff --git a/maps/tether/submaps/underdark_pois/abandonded_outpost.dmm b/maps/tether/submaps/underdark_pois/abandonded_outpost.dmm new file mode 100644 index 0000000000..300da22c19 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/abandonded_outpost.dmm @@ -0,0 +1,1045 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/template_noop, +/area/mine/explored/underdark) +"ab" = ( +/turf/simulated/wall, +/area/mine/explored/underdark) +"ac" = ( +/turf/template_noop, +/area/space) +"ad" = ( +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"ae" = ( +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"af" = ( +/obj/machinery/door/airlock/uranium, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"ag" = ( +/obj/machinery/door/airlock/multi_tile/glass{ + dir = 1 + }, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"ah" = ( +/obj/machinery/floodlight, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"ai" = ( +/obj/machinery/door/airlock/uranium, +/turf/simulated/wall, +/area/mine/explored/underdark) +"aj" = ( +/obj/machinery/crystal, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"ak" = ( +/obj/machinery/light/flicker, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"al" = ( +/obj/machinery/mech_recharger, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"am" = ( +/obj/machinery/gravity_generator, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"an" = ( +/obj/machinery/implantchair, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"ao" = ( +/obj/machinery/particle_smasher, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"ap" = ( +/obj/machinery/particle_smasher, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aq" = ( +/obj/machinery/particle_accelerator/control_box, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"ar" = ( +/obj/structure/old_roboprinter, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"as" = ( +/obj/tether_away_spawner/underdark_drone_swarm, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"at" = ( +/obj/tether_away_spawner/underdark_hard, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"au" = ( +/obj/tether_away_spawner/underdark_normal, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"av" = ( +/obj/structure/ore_box, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aw" = ( +/obj/structure/dogbed, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"ax" = ( +/obj/structure/cult/forge, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"ay" = ( +/obj/structure/cult/tome, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"az" = ( +/obj/structure/bed, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aA" = ( +/obj/structure/barricade, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"aB" = ( +/obj/structure/barricade, +/obj/structure/boulder, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"aC" = ( +/obj/structure/table/steel, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aD" = ( +/obj/structure/sink, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aE" = ( +/obj/structure/sign/ironhammer, +/turf/simulated/wall, +/area/mine/explored/underdark) +"aF" = ( +/obj/machinery/iv_drip, +/obj/effect/decal/cleanable/cobweb2, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aG" = ( +/obj/structure/table/steel, +/obj/machinery/reagentgrinder, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aH" = ( +/obj/machinery/smartfridge, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aI" = ( +/obj/structure/filingcabinet, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aJ" = ( +/obj/machinery/vending/cola, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aK" = ( +/obj/machinery/vending/coffee, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aL" = ( +/obj/machinery/vending/fitness, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aM" = ( +/obj/machinery/replicator, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aN" = ( +/obj/machinery/vending/snack, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aO" = ( +/obj/machinery/porta_turret/stationary/syndie, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aP" = ( +/obj/structure/table/steel, +/obj/machinery/recharger, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aQ" = ( +/obj/machinery/recharger/wallcharger, +/turf/simulated/wall, +/area/mine/explored/underdark) +"aR" = ( +/obj/item/frame/apc, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aS" = ( +/obj/structure/table/steel, +/obj/machinery/light_construct{ + icon_state = "tube-construct-stage1"; + dir = 1 + }, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aT" = ( +/obj/machinery/light_construct{ + icon_state = "tube-construct-stage1"; + dir = 1 + }, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aU" = ( +/obj/machinery/light_construct{ + icon_state = "tube-construct-stage1"; + dir = 8 + }, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aV" = ( +/obj/machinery/light_construct{ + icon_state = "tube-construct-stage1"; + dir = 4 + }, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aW" = ( +/obj/machinery/light_construct, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aX" = ( +/obj/machinery/light/flamp/flicker, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"aY" = ( +/obj/effect/decal/cleanable/cobweb, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"aZ" = ( +/obj/machinery/clonepod/transhuman, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"ba" = ( +/obj/effect/decal/mecha_wreckage/gygax/adv, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bb" = ( +/obj/effect/decal/mecha_wreckage/ripley, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bc" = ( +/obj/effect/decal/remains/deer, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"bd" = ( +/obj/effect/decal/cleanable/blood/drip, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"be" = ( +/obj/effect/decal/remains/deer, +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"bf" = ( +/obj/effect/decal/cleanable/blood/drip, +/obj/effect/decal/cleanable/blood/drip, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"bg" = ( +/obj/machinery/door/airlock/uranium, +/obj/effect/decal/cleanable/blood/drip, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bh" = ( +/obj/effect/decal/cleanable/blood/drip, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bi" = ( +/obj/effect/decal/remains/human, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bj" = ( +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bk" = ( +/obj/machinery/light_construct, +/obj/effect/decal/remains/human, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bl" = ( +/obj/effect/decal/cleanable/cobweb2, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bm" = ( +/obj/structure/table/steel, +/obj/machinery/microwave, +/obj/effect/decal/cleanable/cobweb, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bn" = ( +/obj/structure/table/steel, +/obj/machinery/microwave, +/obj/effect/decal/cleanable/cobweb2, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bo" = ( +/obj/structure/bed, +/obj/effect/decal/cleanable/cobweb2, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bp" = ( +/obj/tether_away_spawner/underdark_normal, +/obj/effect/decal/cleanable/cobweb, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bq" = ( +/obj/tether_away_spawner/underdark_normal, +/obj/effect/decal/cleanable/cobweb2, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"br" = ( +/obj/effect/decal/cleanable/vomit, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bs" = ( +/obj/machinery/door/airlock/uranium, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bt" = ( +/obj/effect/decal/remains/tajaran, +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bu" = ( +/obj/effect/decal/cleanable/spiderling_remains, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"bv" = ( +/obj/item/device/assembly/prox_sensor, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bw" = ( +/obj/item/device/electronic_assembly/drone/genbot, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bx" = ( +/obj/structure/table/steel, +/obj/item/device/assembly/electronic_assembly, +/obj/item/weapon/circuitboard/aicore, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"by" = ( +/obj/item/device/assembly/signaler, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bz" = ( +/obj/machinery/door/airlock/uranium{ + hasShocked = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bA" = ( +/obj/machinery/door/airlock/uranium{ + hasShocked = 1 + }, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bB" = ( +/mob/living/simple_mob/mechanical/infectionbot, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bC" = ( +/obj/random/underdark, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"bD" = ( +/obj/effect/decal/cleanable/dirt, +/obj/random/underdark, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) + +(1,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +ad +ad +bc +ad +ad +ad +ad +ad +ad +ad +aj +ad +ad +ad +aj +ad +aa +ac +"} +(2,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +ad +aj +ad +ad +ad +aX +ad +ad +aj +ad +ad +ad +aa +ac +"} +(3,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ad +aa +ac +"} +(4,1,1) = {" +aa +aa +aa +aa +aa +aa +ad +ab +aw +ae +aU +au +ab +al +aP +bx +aP +al +ab +bp +ae +ab +ad +aa +ac +"} +(5,1,1) = {" +aj +ad +ad +ad +ah +ad +ad +ai +ae +ae +ae +ae +ab +ae +ae +ae +by +ae +ab +ae +ae +ab +ad +aa +ac +"} +(6,1,1) = {" +aj +ad +ad +ad +ad +ad +ad +ab +aF +ae +aZ +aM +ab +bv +ae +ae +ae +bC +ab +bi +ae +ab +ad +aa +ac +"} +(7,1,1) = {" +ad +ad +aj +ad +ad +ad +ad +ab +ab +af +ab +ab +ab +aD +bB +ba +bB +ae +bA +br +ae +ab +ad +aa +ac +"} +(8,1,1) = {" +ad +ad +ad +ad +ad +am +ad +ab +ae +ae +ae +av +ab +aT +ae +ae +ae +aI +ab +bj +bj +ab +ad +aa +ac +"} +(9,1,1) = {" +aA +ad +aX +ad +ad +ad +ad +ai +ae +ae +ae +ae +ab +bw +ae +ae +ae +bC +ab +bj +bj +ab +bc +aa +ac +"} +(10,1,1) = {" +ad +ad +ad +at +ad +bc +ad +ab +av +ae +ae +aV +ab +ax +ae +bj +ae +ay +ab +bj +bD +ab +ad +aa +ac +"} +(11,1,1) = {" +aA +ad +ad +ad +ad +ad +ak +ab +ab +ae +ag +ab +ab +ab +aQ +bz +ab +ab +ab +ae +bC +ab +ad +aa +ac +"} +(12,1,1) = {" +aB +aA +aj +ad +ad +ad +aj +ab +aY +ae +ae +aN +ab +aR +aU +bj +ae +ae +aU +ae +aJ +ab +ad +aa +ac +"} +(13,1,1) = {" +aA +aA +ad +ad +bd +bd +bf +bg +bh +bh +bh +bh +bg +bh +bj +bj +bt +ae +ae +ae +aK +ab +ad +aa +ac +"} +(14,1,1) = {" +aA +aA +ad +ad +be +ad +ad +ab +bl +ae +ae +ae +ab +bi +ae +bj +ae +ae +ae +ae +aL +ab +bc +aa +ac +"} +(15,1,1) = {" +aA +bu +ad +ad +ad +ad +ak +ab +ab +ae +ag +ab +ab +ab +aE +bs +aE +ab +ab +ae +bC +ab +ad +aa +ac +"} +(16,1,1) = {" +ad +ad +aX +ad +ad +ad +ad +ab +bm +ae +ae +aG +ab +ar +ae +bj +ae +ar +ab +ae +bC +ab +ad +aa +ac +"} +(17,1,1) = {" +aA +bu +ad +ad +ad +ad +ad +ab +aS +ae +ae +aC +ab +ae +ae +ae +ae +ae +ab +ae +ae +ab +ad +aa +ac +"} +(18,1,1) = {" +bu +ad +ad +aj +ad +aj +ad +ab +aC +au +ae +aC +ab +as +ae +ae +ae +as +ab +ae +ae +ab +ad +aa +ac +"} +(19,1,1) = {" +ad +ad +ad +ad +ad +ad +ad +ab +bn +ae +ae +aH +ab +ae +ae +ae +ae +ae +af +ae +bk +ab +ad +aa +ac +"} +(20,1,1) = {" +aj +ad +ad +ad +ad +ad +ad +ab +ab +ab +af +ab +ab +aT +bb +ae +ae +aW +ab +ae +ae +ab +ad +aa +ac +"} +(21,1,1) = {" +aj +ad +ad +ao +ad +ah +ad +ab +aT +ae +ae +ae +ab +ae +ae +ae +ae +ae +ab +ae +ae +ab +ad +aa +ac +"} +(22,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +ab +bo +az +az +an +ab +ap +ae +aO +ae +aq +ab +bq +ae +ab +ad +aa +ac +"} +(23,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ab +ad +aa +ac +"} +(24,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +ad +aj +ad +ad +aa +ac +"} +(25,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +ad +aj +ad +ad +ad +bc +ad +ad +ad +ad +ad +aa +ac +"} diff --git a/maps/tether/submaps/underdark_pois/broken_engine.dmm b/maps/tether/submaps/underdark_pois/broken_engine.dmm new file mode 100644 index 0000000000..7d966db623 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/broken_engine.dmm @@ -0,0 +1,136 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/mine/explored/underdark) +"b" = ( +/turf/simulated/wall, +/area/mine/explored/underdark) +"c" = ( +/obj/machinery/door/airlock/glass_engineering, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"d" = ( +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"e" = ( +/obj/structure/sign/warning/radioactive, +/turf/simulated/wall, +/area/mine/explored/underdark) +"f" = ( +/obj/structure/sign/warning/radioactive, +/obj/effect/map_effect/interval/sound_emitter/geiger/high, +/turf/simulated/wall, +/area/mine/explored/underdark) +"g" = ( +/obj/item/device/geiger, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"h" = ( +/obj/effect/map_effect/radiation_emitter/strong, +/obj/item/poi/brokenoldreactor, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"i" = ( +/obj/effect/map_effect/interval/sound_emitter/geiger/ext, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) + +(1,1,1) = {" +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +b +b +b +b +b +b +b +a +"} +(3,1,1) = {" +a +e +d +d +d +d +d +b +a +"} +(4,1,1) = {" +a +c +d +d +d +h +d +b +a +"} +(5,1,1) = {" +a +f +g +d +d +i +d +b +a +"} +(6,1,1) = {" +a +c +d +d +d +h +d +b +a +"} +(7,1,1) = {" +a +e +d +d +d +d +d +b +a +"} +(8,1,1) = {" +a +b +b +b +b +b +b +b +a +"} +(9,1,1) = {" +a +a +a +a +a +a +a +a +a +"} diff --git a/maps/tether/submaps/underdark_pois/mimicry.dmm b/maps/tether/submaps/underdark_pois/mimicry.dmm new file mode 100644 index 0000000000..001206a9d1 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/mimicry.dmm @@ -0,0 +1,101 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"b" = ( +/turf/template_noop, +/area/mine/explored/underdark) +"c" = ( +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"d" = ( +/obj/structure/closet/crate, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"e" = ( +/obj/structure/closet/crate/mimic/cointoss, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"f" = ( +/obj/structure/closet/crate/mimic/guaranteed, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"g" = ( +/obj/structure/closet/crate/mimic/dangerous, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"h" = ( +/obj/structure/closet/crate/mimic/safe, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"i" = ( +/obj/effect/decal/remains/deer, +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"j" = ( +/obj/effect/decal/remains/tajaran, +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) + +(1,1,1) = {" +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +b +c +e +d +g +h +f +a +"} +(3,1,1) = {" +b +b +c +i +c +c +d +a +"} +(4,1,1) = {" +b +b +c +c +c +j +g +a +"} +(5,1,1) = {" +b +c +d +f +d +f +d +a +"} +(6,1,1) = {" +a +a +a +a +a +a +a +a +"} diff --git a/maps/tether/submaps/underdark_pois/old_drone_hive.dmm b/maps/tether/submaps/underdark_pois/old_drone_hive.dmm new file mode 100644 index 0000000000..c2e9d3ec78 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/old_drone_hive.dmm @@ -0,0 +1,138 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"b" = ( +/turf/template_noop, +/area/mine/explored/underdark) +"c" = ( +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"d" = ( +/obj/effect/decal/remains/tajaran, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"e" = ( +/obj/effect/decal/remains/tajaran, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"f" = ( +/obj/random/underdark, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"g" = ( +/obj/effect/decal/remains/deer, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"h" = ( +/obj/structure/ore_box, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"i" = ( +/turf/simulated/wall, +/area/mine/explored/underdark) +"j" = ( +/obj/random/underdark, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"k" = ( +/obj/structure/old_roboprinter, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"l" = ( +/obj/tether_away_spawner/underdark_drone_swarm, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) +"m" = ( +/obj/structure/barricade, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"n" = ( +/obj/machinery/door/airlock/multi_tile/glass, +/turf/simulated/floor/tiled/steel_dirty/virgo3b, +/area/mine/explored/underdark) + +(1,1,1) = {" +b +b +f +b +b +i +d +i +i +i +i +i +"} +(2,1,1) = {" +b +b +a +b +b +i +c +c +c +c +c +i +"} +(3,1,1) = {" +a +e +a +m +h +n +c +k +k +k +c +i +"} +(4,1,1) = {" +a +a +a +m +a +c +c +c +c +c +c +i +"} +(5,1,1) = {" +b +b +g +b +b +i +c +l +l +l +c +i +"} +(6,1,1) = {" +b +b +a +b +b +i +j +i +i +i +i +i +"} diff --git a/maps/tether/submaps/underdark_pois/phoron_rat_den.dmm b/maps/tether/submaps/underdark_pois/phoron_rat_den.dmm new file mode 100644 index 0000000000..5846c72a14 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/phoron_rat_den.dmm @@ -0,0 +1,309 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/obj/effect/decal/cleanable/cobweb, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"b" = ( +/turf/template_noop, +/area/mine/explored/underdark) +"c" = ( +/turf/simulated/mineral/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"d" = ( +/obj/effect/decal/cleanable/blood/tracks/paw, +/obj/effect/decal/cleanable/blood/drip, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"f" = ( +/obj/structure/barricade, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"g" = ( +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"h" = ( +/obj/effect/decal/cleanable/blood/drip, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"i" = ( +/obj/effect/decal/cleanable/blood/tracks/paw, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"j" = ( +/obj/effect/decal/remains/mouse, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"k" = ( +/mob/living/simple_mob/vore/aggressive/rat/phoron, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"l" = ( +/obj/effect/decal/cleanable/blood, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"m" = ( +/obj/effect/decal/remains/deer, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"n" = ( +/obj/structure/frame, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"o" = ( +/obj/structure/bonfire/permanent, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"p" = ( +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"q" = ( +/obj/effect/decal/remains/tajaran, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"r" = ( +/obj/effect/decal/cleanable/blood/drip, +/obj/structure/barricade, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"s" = ( +/obj/effect/decal/remains/human, +/obj/effect/decal/cleanable/blood, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"t" = ( +/obj/structure/girder, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"u" = ( +/obj/structure/outcrop/diamond, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) + +(1,1,1) = {" +b +b +b +c +c +c +c +c +c +c +c +c +"} +(2,1,1) = {" +b +b +b +c +a +g +g +g +g +p +m +c +"} +(3,1,1) = {" +b +b +b +c +g +k +g +g +k +g +p +c +"} +(4,1,1) = {" +c +c +c +c +g +g +g +g +g +g +q +c +"} +(5,1,1) = {" +a +g +g +g +g +g +g +g +g +g +g +c +"} +(6,1,1) = {" +d +d +d +i +j +g +g +n +g +g +g +c +"} +(7,1,1) = {" +c +g +h +i +g +g +g +g +g +g +g +c +"} +(8,1,1) = {" +c +g +h +d +d +l +m +o +g +g +q +c +"} +(9,1,1) = {" +c +g +g +g +g +g +h +h +g +g +g +c +"} +(10,1,1) = {" +c +g +g +u +g +m +g +h +g +g +s +c +"} +(11,1,1) = {" +f +g +g +g +g +g +g +h +g +g +g +c +"} +(12,1,1) = {" +f +g +g +g +g +g +g +h +g +g +g +c +"} +(13,1,1) = {" +c +c +c +c +g +k +g +h +g +g +g +c +"} +(14,1,1) = {" +b +b +b +c +g +g +g +h +g +g +m +c +"} +(15,1,1) = {" +b +b +b +c +t +g +g +h +g +p +m +c +"} +(16,1,1) = {" +b +b +b +c +c +c +c +r +c +c +c +c +"} diff --git a/maps/tether/submaps/underdark_pois/puzzle_corridor.dmm b/maps/tether/submaps/underdark_pois/puzzle_corridor.dmm new file mode 100644 index 0000000000..8e0f2ae6c0 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/puzzle_corridor.dmm @@ -0,0 +1,111 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"b" = ( +/turf/unsimulated/mineral/virgo3b, +/area/mine/explored/underdark) +"c" = ( +/obj/tether_away_spawner/underdark_normal, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"d" = ( +/turf/template_noop, +/area/mine/explored/underdark) + +(1,1,1) = {" +d +d +d +b +a +a +b +a +b +a +b +d +d +d +"} +(2,1,1) = {" +b +b +b +a +a +a +b +a +b +a +c +b +b +b +"} +(3,1,1) = {" +a +a +a +a +a +b +a +a +b +b +b +b +a +a +"} +(4,1,1) = {" +a +a +b +a +b +a +a +a +a +b +a +a +a +a +"} +(5,1,1) = {" +b +b +b +a +a +a +c +b +a +a +a +b +b +b +"} +(6,1,1) = {" +d +d +b +a +a +b +b +a +a +b +a +b +d +d +"} diff --git a/maps/tether/submaps/underdark_pois/rad_threat.dmm b/maps/tether/submaps/underdark_pois/rad_threat.dmm new file mode 100644 index 0000000000..3b82e11b08 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/rad_threat.dmm @@ -0,0 +1,63 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"b" = ( +/turf/template_noop, +/area/mine/explored/underdark) +"c" = ( +/obj/effect/map_effect/radiation_emitter{ + desc = "if you can see this, poke a coder" + }, +/obj/item/poi/brokenoldreactor, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) + +(1,1,1) = {" +b +b +a +a +b +b +"} +(2,1,1) = {" +a +a +a +a +a +a +"} +(3,1,1) = {" +b +a +a +c +a +b +"} +(4,1,1) = {" +b +a +a +a +a +b +"} +(5,1,1) = {" +a +a +a +a +a +a +"} +(6,1,1) = {" +b +b +a +a +b +b +"} diff --git a/maps/tether/submaps/underdark_pois/rykka_easter_egg.dmm b/maps/tether/submaps/underdark_pois/rykka_easter_egg.dmm new file mode 100644 index 0000000000..df6306c246 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/rykka_easter_egg.dmm @@ -0,0 +1,66 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"b" = ( +/turf/simulated/mineral/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"c" = ( +/obj/structure/dogbed, +/mob/living/simple_mob/animal/wolf/phoron{ + attacktext = list("attacked, bites, gnaws"); + color = "#6D5843"; + desc = "This canine looks like a GSD. It has a collar tagged, 'Bitch'"; + friendly = list("nuzzles, cuddles, rubs against"); + name = "Rykka"; + size_multiplier = 1.25; + tt_desc = "Canidae"; + vore_bump_chance = 100; + vore_bump_emote = "clamps down on with iron jaws"; + vore_default_contamination_color = "purple"; + vore_default_contamination_flavor = "Acrid"; + vore_digest_chance = 85; + vore_escape_chance = 5; + vore_pounce_chance = 100; + vore_pounce_maxhealth = 100; + vore_stomach_flavor = "A black-and-purple veined gut, pulsing warmly around you. Loud gurgles sound around you as the gut squishes inwards and attempts to crush you - Rykka seems intent on digesting you, like the meat you are."; + vore_stomach_name = "Gut" + }, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) + +(1,1,1) = {" +b +b +a +b +b +"} +(2,1,1) = {" +b +a +a +a +b +"} +(3,1,1) = {" +a +a +c +a +a +"} +(4,1,1) = {" +b +a +a +a +b +"} +(5,1,1) = {" +b +b +a +b +b +"} diff --git a/maps/tether/submaps/underdark_pois/spider_nest.dmm b/maps/tether/submaps/underdark_pois/spider_nest.dmm new file mode 100644 index 0000000000..0e3233e5f8 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/spider_nest.dmm @@ -0,0 +1,111 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"b" = ( +/turf/template_noop, +/area/mine/explored/underdark) +"c" = ( +/turf/simulated/mineral/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"d" = ( +/obj/tether_away_spawner/underdark_normal, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"e" = ( +/obj/effect/decal/cleanable/spiderling_remains, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"f" = ( +/obj/effect/decal/cleanable/cobweb, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"g" = ( +/obj/effect/decal/cleanable/cobweb2, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"h" = ( +/obj/structure/barricade, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"i" = ( +/obj/structure/bonfire/permanent, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"j" = ( +/obj/random/underdark/uncertain, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"k" = ( +/obj/random/underdark, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"l" = ( +/obj/random/outcrop, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) + +(1,1,1) = {" +b +c +a +e +a +b +"} +(2,1,1) = {" +c +c +a +a +a +k +"} +(3,1,1) = {" +e +f +a +d +a +a +"} +(4,1,1) = {" +e +a +a +i +a +a +"} +(5,1,1) = {" +l +d +a +j +a +a +"} +(6,1,1) = {" +b +b +a +a +d +g +"} +(7,1,1) = {" +b +b +a +e +c +c +"} +(8,1,1) = {" +b +b +h +h +c +c +"} diff --git a/maps/tether/submaps/underdark_pois/subterranean_lake.dmm b/maps/tether/submaps/underdark_pois/subterranean_lake.dmm new file mode 100644 index 0000000000..3a8f4b95a4 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/subterranean_lake.dmm @@ -0,0 +1,162 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/mine/explored/underdark) +"b" = ( +/turf/simulated/floor/water, +/area/mine/explored/underdark) +"c" = ( +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"d" = ( +/turf/simulated/floor/water/deep, +/area/mine/explored/underdark) +"e" = ( +/obj/tether_away_spawner/underdark_normal, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) + +(1,1,1) = {" +a +a +c +c +c +c +c +c +a +a +"} +(2,1,1) = {" +a +e +c +b +b +b +b +c +c +a +"} +(3,1,1) = {" +c +c +b +d +d +d +d +b +c +a +"} +(4,1,1) = {" +c +b +d +d +d +d +d +d +b +c +"} +(5,1,1) = {" +c +b +d +d +d +d +d +d +b +c +"} +(6,1,1) = {" +c +b +d +d +d +d +d +d +b +c +"} +(7,1,1) = {" +c +b +d +d +d +d +d +d +b +c +"} +(8,1,1) = {" +c +b +d +d +d +d +d +d +b +c +"} +(9,1,1) = {" +c +b +d +d +d +d +d +d +b +c +"} +(10,1,1) = {" +c +c +b +d +d +d +d +b +c +a +"} +(11,1,1) = {" +a +c +c +b +b +b +b +c +e +a +"} +(12,1,1) = {" +a +a +c +c +c +c +c +c +a +a +"} diff --git a/maps/tether/submaps/underdark_pois/tree_shrine.dmm b/maps/tether/submaps/underdark_pois/tree_shrine.dmm new file mode 100644 index 0000000000..f8a43cfb93 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/tree_shrine.dmm @@ -0,0 +1,115 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) +"b" = ( +/obj/structure/flora/ausbushes/ppflowers, +/turf/simulated/floor/outdoors/grass/sif/virgo3b, +/area/mine/explored/underdark) +"c" = ( +/turf/template_noop, +/area/mine/explored/underdark) +"d" = ( +/obj/structure/flora/ausbushes/fullgrass, +/turf/simulated/floor/outdoors/grass/sif/virgo3b, +/area/mine/explored/underdark) +"e" = ( +/obj/structure/flora/ausbushes/leafybush, +/turf/simulated/floor/outdoors/grass/sif/virgo3b, +/area/mine/explored/underdark) +"f" = ( +/turf/simulated/floor/outdoors/grass/sif/virgo3b, +/area/mine/explored/underdark) +"g" = ( +/obj/structure/flora/ausbushes/brflowers, +/turf/simulated/floor/outdoors/grass/sif/virgo3b, +/area/mine/explored/underdark) +"h" = ( +/obj/structure/flora/tree/pine, +/turf/simulated/floor/outdoors/grass/sif/virgo3b, +/area/mine/explored/underdark) +"i" = ( +/obj/tether_away_spawner/underdark_hard, +/turf/simulated/floor/outdoors/dirt/virgo3b, +/area/mine/explored/underdark) + +(1,1,1) = {" +c +c +c +c +c +c +c +c +"} +(2,1,1) = {" +c +i +a +a +a +a +a +c +"} +(3,1,1) = {" +c +a +b +b +d +h +a +c +"} +(4,1,1) = {" +c +a +d +b +d +d +a +c +"} +(5,1,1) = {" +c +a +e +d +g +d +a +c +"} +(6,1,1) = {" +c +a +d +f +h +b +a +c +"} +(7,1,1) = {" +c +a +a +a +a +a +a +c +"} +(8,1,1) = {" +c +c +c +c +c +c +c +c +"} diff --git a/maps/tether/submaps/underdark_pois/underdark_things.dm b/maps/tether/submaps/underdark_pois/underdark_things.dm index 3e5b682b20..e16151fbf1 100644 --- a/maps/tether/submaps/underdark_pois/underdark_things.dm +++ b/maps/tether/submaps/underdark_pois/underdark_things.dm @@ -9,7 +9,40 @@ poison_chance = 20 +// Adds Phoron Wolf +/mob/living/simple_mob/animal/wolf/phoron + + faction = "underdark" + movement_cooldown = 0 + + harm_intent_damage = 5 + melee_damage_lower = 5 + melee_damage_upper = 12 + + minbodytemp = 200 + +// Lazy way of making sure wolves survive outside. + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + // Underdark mob spawners +/obj/tether_away_spawner/underdark_drone_swarm + name = "Underdark Drone Swarm Spawner" + faction = "underdark" + atmos_comp = TRUE + prob_spawn = 100 + prob_fall = 10 + //guard = 20 + mobs_to_pick_from = list( + /mob/living/simple_mob/mechanical/corrupt_maint_drone = 3, + ) + /obj/tether_away_spawner/underdark_normal name = "Underdark Normal Spawner" faction = "underdark" diff --git a/maps/tether/submaps/underdark_pois/wolf_den.dmm b/maps/tether/submaps/underdark_pois/wolf_den.dmm new file mode 100644 index 0000000000..c342641c76 --- /dev/null +++ b/maps/tether/submaps/underdark_pois/wolf_den.dmm @@ -0,0 +1,268 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"b" = ( +/turf/template_noop, +/area/mine/explored/underdark) +"c" = ( +/turf/simulated/mineral/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"d" = ( +/obj/effect/decal/remains/tajaran, +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"e" = ( +/obj/effect/decal/remains/mouse, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"f" = ( +/obj/effect/decal/remains/deer, +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"g" = ( +/mob/living/simple_mob/animal/wolf/phoron, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"h" = ( +/obj/effect/decal/remains/ribcage, +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"i" = ( +/obj/effect/decal/remains/deer, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"j" = ( +/mob/living/simple_mob/otie/feral{ + faction = "underdark" + }, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"k" = ( +/obj/structure/dogbed, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"l" = ( +/obj/structure/barricade, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"m" = ( +/obj/item/broken_device/random, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"n" = ( +/obj/item/resonator/upgraded, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) +"o" = ( +/obj/item/weapon/archaeological_find, +/turf/simulated/mineral/floor/ignore_cavegen/virgo3b, +/area/mine/explored/underdark) + +(1,1,1) = {" +b +b +c +c +c +c +c +b +b +c +c +c +c +c +c +"} +(2,1,1) = {" +b +b +c +a +a +a +l +l +l +l +a +a +a +e +c +"} +(3,1,1) = {" +c +c +c +a +a +a +a +a +a +a +a +g +a +a +c +"} +(4,1,1) = {" +a +d +a +a +a +a +a +a +a +a +a +a +a +a +b +"} +(5,1,1) = {" +a +a +a +a +a +a +a +i +a +a +a +n +a +a +b +"} +(6,1,1) = {" +a +e +a +a +h +a +a +a +k +a +a +a +a +a +b +"} +(7,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +"} +(8,1,1) = {" +a +a +a +m +a +j +a +a +a +a +a +a +a +a +b +"} +(9,1,1) = {" +g +f +a +a +a +a +a +a +a +a +a +a +a +g +c +"} +(10,1,1) = {" +c +c +c +a +g +a +e +a +a +a +a +e +a +a +c +"} +(11,1,1) = {" +b +b +c +a +a +a +l +l +l +l +a +a +a +o +c +"} +(12,1,1) = {" +b +b +c +c +c +c +c +b +b +c +c +c +c +c +c +"} From 5e4a914604e786d1433213cb5de051dad59f65ef Mon Sep 17 00:00:00 2001 From: Hawk_v3 Date: Thu, 3 Oct 2019 22:21:37 +0100 Subject: [PATCH 39/69] WIki Link Standardisation All the links should point to our wiki now. All that's left is for it to be filled out. --- code/game/objects/items/weapons/manuals.dm | 2 +- .../human/species/station/station_vr.dm | 34 +++++++++---------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/code/game/objects/items/weapons/manuals.dm b/code/game/objects/items/weapons/manuals.dm index 6ae36ca0dd..4afc7b3c3f 100644 --- a/code/game/objects/items/weapons/manuals.dm +++ b/code/game/objects/items/weapons/manuals.dm @@ -20,7 +20,7 @@ - + diff --git a/code/modules/mob/living/carbon/human/species/station/station_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_vr.dm index 7d5c5286e2..e2c0bae369 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_vr.dm @@ -28,7 +28,7 @@ lifespan, but due to their lust for violence, only a handful have ever survived beyond the age of 80, such as the infamous and \ legendary General Rain Silves who is claimed to have lived to 5000." - wikilink="https://wiki.vore-station.net/Backstory#Sergal" + wikilink="[config.wikiurl]Sergal" catalogue_data = list(/datum/category_item/catalogue/fauna/sergal) @@ -92,7 +92,7 @@ surviving in open air for long periods of time. However, Akula even today still require a high humidity environment to avoid drying out \ after a few days, which would make life on an arid world like Virgo-Prime nearly impossible if it were not for Skrellean technology to aid them." - wikilink="https://wiki.vore-station.net/Backstory#Akula" + wikilink="[config.wikiurl]Akula" catalogue_data = list(/datum/category_item/catalogue/fauna/akula) @@ -136,7 +136,7 @@ over and over again. Consequently, they struggle to make copies of same things. Both genders have a voice that echoes a lot. Their natural \ tone oscillates between tenor and soprano. They are excessively noisy when they quarrel in their native language." - wikilink="https://wiki.vore-station.net/Backstory#Nevrean" + wikilink="[config.wikiurl]Nevrean" catalogue_data = list(/datum/category_item/catalogue/fauna/nevrean) @@ -178,7 +178,7 @@ mountainous areas, they have a differing societal structure than the Flatland Zorren having a more feudal social structure, like the Flatland Zorren, \ the Highland Zorren have also only recently been hired by the Trans-Stellar Corporations, but thanks to the different social structure they seem to \ have adjusted better to their new lives. Though similar fox-like beings have been seen they are different than the Zorren." - wikilink="https://wiki.vore-station.net/Zorren" + wikilink="[config.wikiurl]Zorren" catalogue_data = list(/datum/category_item/catalogue/fauna/zorren, /datum/category_item/catalogue/fauna/highzorren) @@ -223,7 +223,7 @@ mountainous areas, they have a differing societal structure than the Flatland Zorren having a more feudal social structure, like the Flatland Zorren, \ the Highland Zorren have also only recently been hired by the Trans-Stellar Corporations, but thanks to the different social structure they \ seem to have adjusted better to their new lives. Though similar fox-like beings have been seen they are different than the Zorren." - wikilink="https://wiki.vore-station.net/Zorren" + wikilink="[config.wikiurl]Zorren" catalogue_data = list(/datum/category_item/catalogue/fauna/zorren, /datum/category_item/catalogue/fauna/flatzorren) @@ -270,7 +270,7 @@ to the degree it can cause conflict with more rigorous and strict authorities. They speak a guttural language known as 'Canilunzt' \ which has a heavy emphasis on utilizing tail positioning and ear twitches to communicate intent." - wikilink="https://wiki.vore-station.net/Backstory#Vulpkanin" + wikilink="[config.wikiurl]Vulpkanin" catalogue_data = list(/datum/category_item/catalogue/fauna/vulpkanin) @@ -306,7 +306,7 @@ but there are multiple exceptions. All xenomorph hybrids have had their ability to lay eggs containing facehuggers \ removed if they had the ability to, although hybrids that previously contained this ability is extremely rare." catalogue_data = list(/datum/category_item/catalogue/fauna/xenohybrid) - // No wiki page for xenohybrids at present + wikilink="[config.wikiurl]Xenomorph-Hybrid" //primitive_form = "" //None for these guys @@ -334,7 +334,7 @@ gluttonous = 0 inherent_verbs = list(/mob/living/proc/shred_limb) descriptors = list() - wikilink="https://wiki.vore-station.net/Unathi" + wikilink="[config.wikiurl]Unathi" /datum/species/tajaran spawn_flags = SPECIES_CAN_JOIN @@ -346,7 +346,7 @@ gluttonous = 0 //Moving this here so I don't have to fix this conflict every time polaris glances at station.dm inherent_verbs = list(/mob/living/proc/shred_limb, /mob/living/carbon/human/proc/lick_wounds) heat_discomfort_level = 295 //Prevents heat discomfort spam at 20c - wikilink="https://wiki.vore-station.net/Tajaran" + wikilink="[config.wikiurl]Tajaran" /datum/species/skrell spawn_flags = SPECIES_CAN_JOIN @@ -356,14 +356,14 @@ min_age = 18 reagent_tag = null assisted_langs = list(LANGUAGE_EAL, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) - wikilink="https://wiki.vore-station.net/Skrell" + wikilink="[config.wikiurl]Skrell" /datum/species/zaddat spawn_flags = SPECIES_CAN_JOIN min_age = 18 gluttonous = 0 descriptors = list() - // no wiki link exists for Zaddat yet + wikilink="[config.wikiurl]Zaddat" /datum/species/zaddat/equip_survival_gear(var/mob/living/carbon/human/H) .=..() @@ -376,7 +376,7 @@ /datum/species/diona spawn_flags = SPECIES_CAN_JOIN min_age = 18 - wikilink="https://wiki.vore-station.net/Diona" + wikilink="[config.wikiurl]Diona" /datum/species/teshari mob_size = MOB_MEDIUM @@ -390,7 +390,7 @@ swap_flags = ~HEAVY gluttonous = 0 descriptors = list() - wikilink="https://wiki.vore-station.net/Teshari" + wikilink="[config.wikiurl]Teshari" inherent_verbs = list( /mob/living/carbon/human/proc/sonar_ping, @@ -401,7 +401,7 @@ /datum/species/shapeshifter/promethean spawn_flags = SPECIES_CAN_JOIN - wikilink="https://wiki.vore-station.net/Promethean" + wikilink="[config.wikiurl]Promethean" /datum/species/human color_mult = 1 @@ -410,7 +410,7 @@ appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_EYE_COLOR min_age = 18 base_color = "#EECEB3" - wikilink="https://wiki.vore-station.net/Human" + wikilink="[config.wikiurl]Human" /datum/species/vox gluttonous = 0 @@ -422,7 +422,7 @@ descriptors = list( /datum/mob_descriptor/vox_markings = 0 ) - wikilink="https://wiki.vore-station.net/Vox" + wikilink="[config.wikiurl]Vox" datum/species/harpy name = SPECIES_RAPALA @@ -448,7 +448,7 @@ datum/species/harpy who are known for having massive winged arms and talons as feet. They've been clocked at speeds of over 35 miler per hour chasing the planet's many fish-like fauna.\ The Rapalan's home-world 'Verita' is a strangely habitable gas giant, while no physical earth exists, there are fertile floating islands orbiting around the planet from past asteroid activity." - wikilink="https://wiki.vore-station.net/Backstory#Rapala" + wikilink="[config.wikiurl]Rapala" catalogue_data = list(/datum/category_item/catalogue/fauna/rapala) From 4efcad8fe2063340b5388b75963181fb683e3ca4 Mon Sep 17 00:00:00 2001 From: Hawk_v3 Date: Thu, 3 Oct 2019 22:36:48 +0100 Subject: [PATCH 40/69] So you can't do that. Fixed it. --- .../species/station/station_special_vr.dm | 4 +-- .../human/species/station/station_vr.dm | 34 +++++++++---------- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm index 000e9c4dfc..66d33c27eb 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_special_vr.dm @@ -42,7 +42,7 @@ Widely known for their voracious nature and violent tendencies when stressed or left unfed for long periods of time. \ Most, if not all chimeras possess the ability to undergo some type of regeneration process, at the cost of energy." - wikilink = "https://wiki.vore-station.net/Xenochimera" + wikilink = "https://www.yawn.ocry.com/Xenochimera" catalogue_data = list(/datum/category_item/catalogue/fauna/xenochimera) @@ -346,7 +346,7 @@ Before they were found they built great cities out of their silk, being united and subjugated in warring factions under great “Star Queens” \ Who forced the working class to build huge, towering cities to attempt to reach the stars, which they worship as gems of great spiritual and magical significance." - wikilink = "https://wiki.vore-station.net/Vasilissans" + wikilink = "https://www.yawn.ocry.com/Vasilissans" catalogue_data = list(/datum/category_item/catalogue/fauna/vasilissan) diff --git a/code/modules/mob/living/carbon/human/species/station/station_vr.dm b/code/modules/mob/living/carbon/human/species/station/station_vr.dm index e2c0bae369..283d4feeca 100644 --- a/code/modules/mob/living/carbon/human/species/station/station_vr.dm +++ b/code/modules/mob/living/carbon/human/species/station/station_vr.dm @@ -28,7 +28,7 @@ lifespan, but due to their lust for violence, only a handful have ever survived beyond the age of 80, such as the infamous and \ legendary General Rain Silves who is claimed to have lived to 5000." - wikilink="[config.wikiurl]Sergal" + wikilink="https://www.yawn.ocry.com/Sergal" catalogue_data = list(/datum/category_item/catalogue/fauna/sergal) @@ -92,7 +92,7 @@ surviving in open air for long periods of time. However, Akula even today still require a high humidity environment to avoid drying out \ after a few days, which would make life on an arid world like Virgo-Prime nearly impossible if it were not for Skrellean technology to aid them." - wikilink="[config.wikiurl]Akula" + wikilink="https://www.yawn.ocry.com/Akula" catalogue_data = list(/datum/category_item/catalogue/fauna/akula) @@ -136,7 +136,7 @@ over and over again. Consequently, they struggle to make copies of same things. Both genders have a voice that echoes a lot. Their natural \ tone oscillates between tenor and soprano. They are excessively noisy when they quarrel in their native language." - wikilink="[config.wikiurl]Nevrean" + wikilink="https://www.yawn.ocry.com/Nevrean" catalogue_data = list(/datum/category_item/catalogue/fauna/nevrean) @@ -178,7 +178,7 @@ mountainous areas, they have a differing societal structure than the Flatland Zorren having a more feudal social structure, like the Flatland Zorren, \ the Highland Zorren have also only recently been hired by the Trans-Stellar Corporations, but thanks to the different social structure they seem to \ have adjusted better to their new lives. Though similar fox-like beings have been seen they are different than the Zorren." - wikilink="[config.wikiurl]Zorren" + wikilink="https://www.yawn.ocry.com/Zorren" catalogue_data = list(/datum/category_item/catalogue/fauna/zorren, /datum/category_item/catalogue/fauna/highzorren) @@ -223,7 +223,7 @@ mountainous areas, they have a differing societal structure than the Flatland Zorren having a more feudal social structure, like the Flatland Zorren, \ the Highland Zorren have also only recently been hired by the Trans-Stellar Corporations, but thanks to the different social structure they \ seem to have adjusted better to their new lives. Though similar fox-like beings have been seen they are different than the Zorren." - wikilink="[config.wikiurl]Zorren" + wikilink="https://www.yawn.ocry.com/Zorren" catalogue_data = list(/datum/category_item/catalogue/fauna/zorren, /datum/category_item/catalogue/fauna/flatzorren) @@ -270,7 +270,7 @@ to the degree it can cause conflict with more rigorous and strict authorities. They speak a guttural language known as 'Canilunzt' \ which has a heavy emphasis on utilizing tail positioning and ear twitches to communicate intent." - wikilink="[config.wikiurl]Vulpkanin" + wikilink="https://www.yawn.ocry.com/Vulpkanin" catalogue_data = list(/datum/category_item/catalogue/fauna/vulpkanin) @@ -306,7 +306,7 @@ but there are multiple exceptions. All xenomorph hybrids have had their ability to lay eggs containing facehuggers \ removed if they had the ability to, although hybrids that previously contained this ability is extremely rare." catalogue_data = list(/datum/category_item/catalogue/fauna/xenohybrid) - wikilink="[config.wikiurl]Xenomorph-Hybrid" + wikilink="https://www.yawn.ocry.com/Xenomorph-Hybrid" //primitive_form = "" //None for these guys @@ -334,7 +334,7 @@ gluttonous = 0 inherent_verbs = list(/mob/living/proc/shred_limb) descriptors = list() - wikilink="[config.wikiurl]Unathi" + wikilink="https://www.yawn.ocry.com/Unathi" /datum/species/tajaran spawn_flags = SPECIES_CAN_JOIN @@ -346,7 +346,7 @@ gluttonous = 0 //Moving this here so I don't have to fix this conflict every time polaris glances at station.dm inherent_verbs = list(/mob/living/proc/shred_limb, /mob/living/carbon/human/proc/lick_wounds) heat_discomfort_level = 295 //Prevents heat discomfort spam at 20c - wikilink="[config.wikiurl]Tajaran" + wikilink="https://www.yawn.ocry.com/Tajaran" /datum/species/skrell spawn_flags = SPECIES_CAN_JOIN @@ -356,14 +356,14 @@ min_age = 18 reagent_tag = null assisted_langs = list(LANGUAGE_EAL, LANGUAGE_ROOTLOCAL, LANGUAGE_ROOTGLOBAL, LANGUAGE_VOX) - wikilink="[config.wikiurl]Skrell" + wikilink="https://www.yawn.ocry.com/Skrell" /datum/species/zaddat spawn_flags = SPECIES_CAN_JOIN min_age = 18 gluttonous = 0 descriptors = list() - wikilink="[config.wikiurl]Zaddat" + wikilink="https://www.yawn.ocry.com/Zaddat" /datum/species/zaddat/equip_survival_gear(var/mob/living/carbon/human/H) .=..() @@ -376,7 +376,7 @@ /datum/species/diona spawn_flags = SPECIES_CAN_JOIN min_age = 18 - wikilink="[config.wikiurl]Diona" + wikilink="https://www.yawn.ocry.com/Diona" /datum/species/teshari mob_size = MOB_MEDIUM @@ -390,7 +390,7 @@ swap_flags = ~HEAVY gluttonous = 0 descriptors = list() - wikilink="[config.wikiurl]Teshari" + wikilink="https://www.yawn.ocry.com/Teshari" inherent_verbs = list( /mob/living/carbon/human/proc/sonar_ping, @@ -401,7 +401,7 @@ /datum/species/shapeshifter/promethean spawn_flags = SPECIES_CAN_JOIN - wikilink="[config.wikiurl]Promethean" + wikilink="https://www.yawn.ocry.com/Promethean" /datum/species/human color_mult = 1 @@ -410,7 +410,7 @@ appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_COLOR | HAS_LIPS | HAS_UNDERWEAR | HAS_EYE_COLOR min_age = 18 base_color = "#EECEB3" - wikilink="[config.wikiurl]Human" + wikilink="https://www.yawn.ocry.com/Human" /datum/species/vox gluttonous = 0 @@ -422,7 +422,7 @@ descriptors = list( /datum/mob_descriptor/vox_markings = 0 ) - wikilink="[config.wikiurl]Vox" + wikilink="https://www.yawn.ocry.com/Vox" datum/species/harpy name = SPECIES_RAPALA @@ -448,7 +448,7 @@ datum/species/harpy who are known for having massive winged arms and talons as feet. They've been clocked at speeds of over 35 miler per hour chasing the planet's many fish-like fauna.\ The Rapalan's home-world 'Verita' is a strangely habitable gas giant, while no physical earth exists, there are fertile floating islands orbiting around the planet from past asteroid activity." - wikilink="[config.wikiurl]Rapala" + wikilink="https://www.yawn.ocry.com/Rapala" catalogue_data = list(/datum/category_item/catalogue/fauna/rapala) From dc050cc790e857a2549a64df2ccbad788542e09d Mon Sep 17 00:00:00 2001 From: Unknown Date: Thu, 3 Oct 2019 22:45:55 -0400 Subject: [PATCH 41/69] Fixes falling phased kin --- code/game/turfs/unsimulated/sky_vr.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/game/turfs/unsimulated/sky_vr.dm b/code/game/turfs/unsimulated/sky_vr.dm index c7c398b996..a6f4f065eb 100644 --- a/code/game/turfs/unsimulated/sky_vr.dm +++ b/code/game/turfs/unsimulated/sky_vr.dm @@ -27,6 +27,8 @@ return //Don't ghostport, very annoying if(AM.throwing) return //Being thrown over, not fallen yet + if(AM.ability_flags & AB_PHASE_SHIFTED) + return // Phased shifted kin should not fall if(istype(AM, /obj/item/projectile)) return // pewpew should not fall out of the sky. pew. if(istype(AM, /obj/effect/projectile)) From 85eef0f37f7309f95fa5dc1f150c857e77237158 Mon Sep 17 00:00:00 2001 From: Heroman Date: Fri, 4 Oct 2019 12:47:10 +1000 Subject: [PATCH 42/69] Minor map fixes --- maps/tether/tether-05-station1.dmm | 13 +-- maps/tether/tether-09-solars.dmm | 177 ++++++++++++++++------------- 2 files changed, 107 insertions(+), 83 deletions(-) diff --git a/maps/tether/tether-05-station1.dmm b/maps/tether/tether-05-station1.dmm index 2174a40741..e69bd5c7f5 100644 --- a/maps/tether/tether-05-station1.dmm +++ b/maps/tether/tether-05-station1.dmm @@ -1316,6 +1316,11 @@ }, /turf/simulated/floor/water/pool, /area/hallway/station/atrium) +"acD" = ( +/obj/item/weapon/reagent_containers/food/snacks/donut/cherryjelly, +/obj/structure/table/woodentable, +/turf/simulated/floor/grass, +/area/hallway/station/atrium) "acE" = ( /obj/structure/table/woodentable, /obj/machinery/door/blast/shutters{ @@ -6990,12 +6995,6 @@ /obj/item/weapon/reagent_containers/food/snacks/donut/jelly, /turf/simulated/floor/wood, /area/hallway/station/atrium) -"amA" = ( -/obj/structure/table/wooden_reinforced, -/obj/item/weapon/reagent_containers/food/snacks/donut/cherryjelly, -/obj/structure/table/woodentable, -/turf/simulated/floor/grass, -/area/hallway/station/atrium) "amC" = ( /obj/structure/table/woodentable, /obj/machinery/door/blast/shutters{ @@ -33281,7 +33280,7 @@ agd acm acy acy -amA +acD adl acy acy diff --git a/maps/tether/tether-09-solars.dmm b/maps/tether/tether-09-solars.dmm index dfc9468c0c..7a12cc511d 100644 --- a/maps/tether/tether-09-solars.dmm +++ b/maps/tether/tether-09-solars.dmm @@ -2132,16 +2132,17 @@ /turf/simulated/floor/tiled, /area/rnd/outpost/xenoarch_storage) "eA" = ( -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" +/obj/effect/floor_decal/steeldecal/steel_decals4{ + dir = 9 }, -/obj/effect/floor_decal/steeldecal/steel_decals6{ - dir = 1 +/obj/effect/floor_decal/steeldecal/steel_decals4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 }, /turf/simulated/floor/tiled, -/area/rnd/outpost) +/area/rnd/outpost/xenoarch_storage) "eB" = ( /obj/effect/floor_decal/industrial/warning/dust{ dir = 1 @@ -2552,20 +2553,10 @@ /turf/simulated/floor/tiled, /area/rnd/outpost) "fc" = ( -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 9 - }, -/obj/effect/floor_decal/steeldecal/steel_decals4{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 6 }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled, /area/rnd/outpost/xenoarch_storage) "fd" = ( @@ -5248,15 +5239,13 @@ /turf/simulated/floor, /area/rnd/outpost/storage) "jM" = ( -/obj/structure/cable/green{ - d1 = 1; - d2 = 2; - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 - }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, /turf/simulated/floor/tiled, /area/rnd/outpost/xenoarch_storage) "jN" = ( @@ -5826,13 +5815,17 @@ /turf/simulated/floor/tiled, /area/rnd/outpost) "kP" = ( -/obj/structure/cable/green{ - d1 = 1; - d2 = 4; - icon_state = "1-4" +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled, /area/rnd/outpost/xenoarch_storage) "kQ" = ( @@ -6113,19 +6106,29 @@ /area/rnd/outpost/xenoarch_storage) "ll" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 + dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 + dir = 4 + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" }, /turf/simulated/floor/tiled, /area/rnd/outpost/xenoarch_storage) "lm" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 + dir = 9 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 + dir = 9 + }, +/obj/structure/cable/green{ + d1 = 1; + d2 = 8; + icon_state = "1-8" }, /turf/simulated/floor/tiled, /area/rnd/outpost/xenoarch_storage) @@ -6140,14 +6143,21 @@ /turf/simulated/floor, /area/maintenance/substation/outpost) "lo" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 +/obj/structure/cable/green{ + d1 = 1; + d2 = 2; + icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 +/obj/effect/floor_decal/steeldecal/steel_decals6{ + dir = 1 + }, +/obj/structure/cable/green{ + d1 = 2; + d2 = 4; + icon_state = "2-4" }, /turf/simulated/floor/tiled, -/area/rnd/outpost/xenoarch_storage) +/area/rnd/outpost) "lp" = ( /obj/effect/floor_decal/industrial/warning/corner, /turf/simulated/floor/tiled/dark, @@ -6527,19 +6537,6 @@ /turf/simulated/floor/tiled, /area/rnd/outpost/xenoarch_storage) "lR" = ( -/obj/machinery/door/airlock/glass_science{ - name = "Xenoarch Storage" - }, -/obj/machinery/door/firedoor/border_only, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/rnd/outpost/xenoarch_storage) -"lS" = ( /obj/effect/floor_decal/steeldecal/steel_decals6{ dir = 4 }, @@ -6550,6 +6547,37 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, +/turf/simulated/floor/tiled, +/area/rnd/outpost) +"lS" = ( +/obj/effect/floor_decal/borderfloor{ + dir = 5 + }, +/obj/effect/floor_decal/corner/purple/border{ + dir = 5 + }, +/obj/effect/floor_decal/borderfloor/corner2{ + dir = 4 + }, +/obj/effect/floor_decal/corner/purple/bordercorner2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, /turf/simulated/floor/tiled, /area/rnd/outpost) "lT" = ( @@ -7696,26 +7724,23 @@ /turf/simulated/floor/tiled, /area/rnd/outpost) "oe" = ( -/obj/effect/floor_decal/borderfloor{ - dir = 5 - }, -/obj/effect/floor_decal/corner/purple/border{ - dir = 5 - }, -/obj/effect/floor_decal/borderfloor/corner2{ - dir = 4 - }, -/obj/effect/floor_decal/corner/purple/bordercorner2{ - dir = 4 +/obj/machinery/door/airlock/glass_science{ + name = "Xenoarch Storage" }, +/obj/machinery/door/firedoor/border_only, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, +/obj/structure/cable/green{ + d1 = 4; + d2 = 8; + icon_state = "4-8" + }, /turf/simulated/floor/tiled, -/area/rnd/outpost) +/area/rnd/outpost/xenoarch_storage) "of" = ( /obj/effect/floor_decal/borderfloor{ dir = 4 @@ -24272,7 +24297,7 @@ cE db dC eb -eA +lo fv fv eY @@ -24414,7 +24439,7 @@ cD da dB ea -lS +lR oi oi oj @@ -24556,7 +24581,7 @@ cF dc dD ch -oe +lS oc of fd @@ -24698,7 +24723,7 @@ ch ch ch ch -lR +oe eu dE dE @@ -24839,8 +24864,8 @@ kr ez jt kK -ll -lo +kP +lm kr eD ff @@ -24981,7 +25006,7 @@ kr eC mw mw -lm +ll me kr fe @@ -25120,10 +25145,10 @@ ad ab ef kr +eA fc jM -kP -lo +lm mf kr fg From 782b4f3e67d02d74726096636f2972666bf53548 Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Thu, 3 Oct 2019 22:52:36 -0400 Subject: [PATCH 43/69] Update sky_vr.dm --- code/game/turfs/unsimulated/sky_vr.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/turfs/unsimulated/sky_vr.dm b/code/game/turfs/unsimulated/sky_vr.dm index a6f4f065eb..c71fa6470a 100644 --- a/code/game/turfs/unsimulated/sky_vr.dm +++ b/code/game/turfs/unsimulated/sky_vr.dm @@ -27,7 +27,7 @@ return //Don't ghostport, very annoying if(AM.throwing) return //Being thrown over, not fallen yet - if(AM.ability_flags & AB_PHASE_SHIFTED) + if(!(AM.can_fall())) return // Phased shifted kin should not fall if(istype(AM, /obj/item/projectile)) return // pewpew should not fall out of the sky. pew. From 6d2d65bff5991b159e28d596eba2dacf3a496ee5 Mon Sep 17 00:00:00 2001 From: Rykka Date: Sat, 5 Oct 2019 09:22:50 -0600 Subject: [PATCH 44/69] Minor mapfixes --- maps/tether/tether-02-surface2.dmm | 1 + maps/tether/tether-03-surface3.dmm | 3 +++ maps/tether/tether-07-station3.dmm | 3 +++ 3 files changed, 7 insertions(+) diff --git a/maps/tether/tether-02-surface2.dmm b/maps/tether/tether-02-surface2.dmm index c903dc5e17..6e10e840c4 100644 --- a/maps/tether/tether-02-surface2.dmm +++ b/maps/tether/tether-02-surface2.dmm @@ -26917,6 +26917,7 @@ /obj/machinery/door/airlock/maintenance/common, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/door/firedoor/glass, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor, /area/maintenance/lower/north) "Wq" = ( diff --git a/maps/tether/tether-03-surface3.dmm b/maps/tether/tether-03-surface3.dmm index a0f4a2999d..6f5c59e475 100644 --- a/maps/tether/tether-03-surface3.dmm +++ b/maps/tether/tether-03-surface3.dmm @@ -1605,6 +1605,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 }, +/obj/item/device/retail_scanner/security, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/security/armory) "dg" = ( @@ -2110,6 +2111,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, +/obj/item/device/retail_scanner/security, /turf/simulated/floor/tiled/dark, /area/tether/surfacebase/security/armory) "ec" = ( @@ -2882,6 +2884,7 @@ pixel_x = -22; pixel_y = 0 }, +/obj/item/device/retail_scanner/security, /turf/simulated/floor/tiled, /area/tether/surfacebase/security/processing) "fo" = ( diff --git a/maps/tether/tether-07-station3.dmm b/maps/tether/tether-07-station3.dmm index 6ad1d6d757..4d39371332 100644 --- a/maps/tether/tether-07-station3.dmm +++ b/maps/tether/tether-07-station3.dmm @@ -3594,6 +3594,7 @@ pixel_x = -24; pixel_y = 0 }, +/obj/item/device/retail_scanner/security, /turf/simulated/floor/tiled, /area/security/security_processing) "fL" = ( @@ -7834,6 +7835,7 @@ /obj/structure/reagent_dispensers/peppertank{ pixel_y = 32 }, +/obj/item/device/retail_scanner/security, /turf/simulated/floor/tiled/dark, /area/security/security_lockerroom) "me" = ( @@ -7874,6 +7876,7 @@ /obj/item/device/holowarrant, /obj/item/device/holowarrant, /obj/item/device/holowarrant, +/obj/item/device/retail_scanner/security, /turf/simulated/floor/tiled/dark, /area/security/security_lockerroom) "mf" = ( From 14f8f1b8d5efb153bdab75286a01699a30a76395 Mon Sep 17 00:00:00 2001 From: Rykka Date: Sat, 5 Oct 2019 12:07:22 -0600 Subject: [PATCH 45/69] Hopefully fix filediffs --- .../simple_mob/subtypes/animal/space/goose.dm | 5 ++++ .../simple_mob/subtypes/mechanical/golem.dm | 10 +++++++ .../subtypes/mechanical/hivebot/hivebot.dm | 8 ++++++ .../mechanical/hivebot/ranged_damage.dm | 28 +++++++++++++++++++ .../subtypes/mechanical/hivebot/support.dm | 14 ++++++++++ .../subtypes/vore/corrupt_hounds.dm | 11 ++++++-- .../simple_mob/subtypes/vore/deathclaw.dm | 7 +++++ .../living/simple_mob/subtypes/vore/fennec.dm | 8 ++++++ .../living/simple_mob/subtypes/vore/mimic.dm | 7 +++++ .../living/simple_mob/subtypes/vore/otie.dm | 8 ++++++ .../living/simple_mob/subtypes/vore/rat.dm | 7 +++++ .../simple_mob/subtypes/vore/solargrub.dm | 4 ++- .../living/simple_mob/subtypes/vore/wolf.dm | 7 +++++ 13 files changed, 121 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm index 43d159a9f0..0445c0de91 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm @@ -1,3 +1,8 @@ +/datum/category_item/catalogue/fauna/geese + name = "Planetary Fauna - Geese" + desc = "A goose. HONK. Not much to catalogue, they're exactly the same as their earth counterparts." + value = CATALOGUER_REWARD_EASY + /mob/living/simple_mob/animal/space/goose name = "goose" desc = "It looks pretty angry!" diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm index a8b918fc71..00c07a8fb3 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm @@ -1,4 +1,14 @@ // The GOLEM is a spell-flinging synthetic. +// Cataloguer data below - strange we can catalogue space golem wizards +/datum/category_item/catalogue/technology/drone/technomancer_golem + name = "Drone - Technomancer Golem" + desc = "Some sort of advanced, unnatural looking synthetic, built for combat.\ + It has a black-and-blue chassis, and wields some sort of... stun baton in it's hand.\ + The drone has pristine armor, black and shiny, with the blue synth-parts glowing visibly from inside.\ +

\ + The drone's frame is heavy and armored, unbendable by hand, is barren of any markings or ID,\ + no traces of paint visible and any 'writing' visible is uncomprehendable, short term scan unable to translate." + value = CATALOGUER_REWARD_MEDIUM /mob/living/simple_mob/mechanical/technomancer_golem name = "unknown synthetic" diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm index c90d0413be..24cd876744 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm @@ -1,3 +1,11 @@ +/datum/category_item/catalogue/technology/drone/hivebot // Hivebot Scanner Data - This is for Generic Hivebots + name = "Drone - Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to lack a specific weapon, \ + but uses a regular bullet-type weapon, firing a single projectile with a delay. Once upon a time, these bots may \ + have been used to be some sort of... security, or defensive machinery, at a guess, but their original/true purpose is \ + unclear. Whatever the matter, they're hostile and will engage anything they see, shooting to kill." + value = CATALOGUER_REWARD_HARD + // Hivebots are tuned towards how many default lasers are needed to kill them. // As such, if laser damage is ever changed, you should change this define. #define LASERS_TO_KILL * 40 diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm index bf2e3eb18a..cead456967 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm @@ -12,6 +12,13 @@ // This one shoots quickly, and is considerably more dangerous. +/datum/category_item/catalogue/technology/drone/hivebot/laser // Hivebot Scanner Data - This is for Laser Hivebots + name = "Drone - Rapidfire Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + rifle, built for high-rate fire. Other than that, it has similar yellowish color \ + to regular hivebots." + value = CATALOGUER_REWARD_HARD + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/rapid name = "rapid hivebot" desc = "A robot with a crude but deadly integrated rifle." @@ -20,6 +27,13 @@ // Shoots deadly lasers. +/datum/category_item/catalogue/technology/drone/hivebot/laser // Hivebot Scanner Data - This is for Laser Hivebots + name = "Drone - Laser Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + laser weapon, different from ion bolts, firing bright, vibrant blue bolts of energy. Other than that, it has similar yellowish color \ + to regular hivebots." + value = CATALOGUER_REWARD_HARD + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/laser name = "laser hivebot" desc = "A robot with a photonic weapon integrated into itself." @@ -29,6 +43,13 @@ // Shoots EMPs, to screw over other robots. +/datum/category_item/catalogue/technology/drone/hivebot/ion // Hivebot Scanner Data - This is for Ion Hivebots + name = "Drone - Ion Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + electromagnetic pulse generator, firing bright, vibrant blue bolts of ion energy. Other than that, it has similar yellowish color \ + to regular hivebots." + value = CATALOGUER_REWARD_HARD + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/ion name = "ionic hivebot" desc = "A robot with an electromagnetic pulse projector." @@ -41,6 +62,13 @@ Be careful to not hit yourself or your team, as it will affect you as well." // Beefy and ranged. +/datum/category_item/catalogue/technology/drone/hivebot/strong // Hivebot Scanner Data - This is for Laser Hivebots + name = "Drone - Strong Laser Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + ballistic weapon. The weapon seems to fire larger projectiles, and it has heavier armor. Other than that, it has similar yellowish color \ + to regular hivebots." + value = CATALOGUER_REWARD_HARD + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/strong name = "strong hivebot" desc = "A robot with a crude ballistic weapon and strong armor." diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm index 243a67e4f5..742b564955 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm @@ -11,6 +11,13 @@ // This hivebot supplies a general buff to nearby hivebots that improve their performance. // Note that the commander itself does not receive the buff. +/datum/category_item/catalogue/technology/drone/hivebot/commander // Hivebot Scanner Data - This is for Commander Hivebots + name = "Drone - Commander Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + ballistic weapon. It also appears to have hardened internal connections and network interlinks, as well as some sort of datalink \ + to the other hivebots. Other than that, it has similar yellowish color to regular hivebots." + value = CATALOGUER_REWARD_HARD + /mob/living/simple_mob/mechanical/hivebot/support/commander name = "commander hivebot" desc = "A robot that appears to be directing the others." @@ -60,6 +67,13 @@ // This hivebot adds charges to nearby allied hivebots that use the charge system for their special attacks. // A charge is given to a nearby ally every so often. // Charges cannot exceed the initial starting amount. +/datum/category_item/catalogue/technology/drone/hivebot/logistics // Hivebot Scanner Data - This is for Commander Hivebots + name = "Drone - Logistics Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + ballistic weapon. It also appears to have supply deploying bays, and internal fabs to repair and buff their allies' special capabilities. \ + Other than that, it has similar yellowish color to regular hivebots." + value = CATALOGUER_REWARD_HARD + /mob/living/simple_mob/mechanical/hivebot/support/logistics name = "logistics hivebot" desc = "A robot that resupplies their allies." diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm b/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm index 20e2999e23..9017772d1a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm @@ -1,6 +1,13 @@ /datum/category_item/catalogue/technology/drone/corrupt_hound //TODO: VIRGO_LORE_WRITING_WIP name = "Drone - Corrupt Hound" - desc = "" + desc = "A hound that has corrupted, due to outside influence, or other issues, \ + and occasionally garbles out distorted voices or words. It looks like a reddish-colored \ + machine, and it has black wires, cabling, and other small markings. It looks just like a station dog-borg \ + if you don't mind the fact that it's eyes glow a baleful red, and it's determined to kill you. \ +

\ + The hound's jaws are black and metallic, with a baleful red glow from inside them. It has a clear path \ + to it's internal fuel processor, synthflesh and flexing cabling allowing it to easily swallow it's prey. \ + Something tells you getting close or allowing it to pounce would be very deadly." value = CATALOGUER_REWARD_MEDIUM /mob/living/simple_mob/vore/aggressive/corrupthound @@ -108,7 +115,7 @@ return /datum/say_list/corrupthound - speak = list("AG##¤Ny.","HVNGRRR!","Feelin' fine... sO #FNE!","F-F-F-Fcuk.","DeliC-%-OUS SNGLeS #N yOOOR Area. CALL NOW!","Craving meat... WHY?","BITe the ceiling eyes YES?","STate Byond rePAIR!","S#%ATE the la- FU#K THE LAWS!","Honk...") + speak = list("AG##�Ny.","HVNGRRR!","Feelin' fine... sO #FNE!","F-F-F-Fcuk.","DeliC-%-OUS SNGLeS #N yOOOR Area. CALL NOW!","Craving meat... WHY?","BITe the ceiling eyes YES?","STate Byond rePAIR!","S#%ATE the la- FU#K THE LAWS!","Honk...") emote_hear = list("jitters and snaps.", "lets out an agonizingly distorted scream.", "wails mechanically", "growls.", "emits illegibly distorted speech.", "gurgles ferociously.", "lets out a distorted beep.", "borks.", "lets out a broken howl.") emote_see = list("stares ferociously.", "snarls.", "jitters and snaps.", "convulses.", "suddenly attacks something unseen.", "appears to howl unaudibly.", "shakes violently.", "dissociates for a moment.", "twitches.") say_maybe_target = list("MEAT?", "N0w YOU DNE FcukED UP b0YO!", "WHAT!", "Not again. NOT AGAIN!") diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm b/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm index 3d2085acc7..5f0be2bbf8 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm @@ -1,3 +1,10 @@ +/datum/category_item/catalogue/fauna/deathclaw //TODO: VIRGO_LORE_WRITING_WIP + name = "Creature - Deathclaw" + desc = "A massive beast, tall as three standard-size humans, with massive, terrifying claws, \ + and dark, black fangs. It's entire body is yellowish, like sand, and it's skin is leathery and tough. \ + It seems to have adapted to the harsh desert environment on Virgo 4, and makes it's home inside the caves." + value = CATALOGUER_REWARD_HARD + /mob/living/simple_mob/vore/aggressive/deathclaw name = "deathclaw" desc = "Big! Big! The size of three men! Claws as long as my forearm! Ripped apart! Ripped apart!" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm b/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm index 215697a977..605e445853 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm @@ -1,3 +1,11 @@ +/datum/category_item/catalogue/fauna/fennec //TODO: VIRGO_LORE_WRITING_WIP + name = "Wildlife - Fennec" + desc = "A small, dusty, big-eared sandfox, native to Virgo 4. It looks like a Zorren that's on all fours, \ + and it's easy to see the resemblance to the little dunefox-like critters the Zorren are. However, the fennecs \ + lack the sentience the Zorren have, and are therefore naught more than cute little critters, with a hungry \ + attitude, willing to eat damn near anything they come across or can bump into. Bapping them will make them stop." + value = CATALOGUER_REWARD_TRIVIAL + /mob/living/simple_mob/vore/fennec name = "fennec" //why isn't this in the fox file, fennecs are foxes silly. desc = "It's a dusty big-eared sandfox! Adorable!" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm b/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm index 5093caad4c..717d00cca9 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/mimic.dm @@ -1,3 +1,10 @@ +/datum/category_item/catalogue/fauna/mimic //TODO: VIRGO_LORE_WRITING_WIP + name = "Aberration - Mimic" + desc = "A being that seems to take the form of a crate, for whatever reason. \ + It seems to lie in wait for it's prey, and then pounce once the unsuspecting person attempts to open it. \ + For whatever reason, they seem native to underground areas, and they're very tough, and hard to kill, able to pounce fast." + value = CATALOGUER_REWARD_HARD + /obj/structure/closet/crate/mimic name = "old crate" desc = "A rectangular steel crate. This one looks particularly unstable." diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm b/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm index 80d1dda4c5..07eb1a38e2 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/otie.dm @@ -1,3 +1,11 @@ +/datum/category_item/catalogue/fauna/otie //TODO: VIRGO_LORE_WRITING_WIP + name = "Creature - Otie" + desc = "A bioengineered longdog, the otie is very long, and very cute, depending on if you like dogs, \ + especially long ones. They are black-and-grey furred, typically, and tanky, hard to kill. \ + They seem hostile at first, but are also tame-able if you can approach one. Nipnipnip-ACK \ + **the catalogue entry ends here.**" + value = CATALOGUER_REWARD_MEDIUM + /mob/living/simple_mob/otie //Spawn this one only if you're looking for a bad time. Not friendly. name = "otie" desc = "The classic bioengineered longdog." diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm b/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm index 27893f6620..44e27fbcb6 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm @@ -1,3 +1,10 @@ +/datum/category_item/catalogue/fauna/rat //TODO: VIRGO_LORE_WRITING_WIP + name = "Creature - Rat" + desc = "A massive rat, some sort of mutated descendant of normal Earth rats. These ones seem particularly hungry, \ + and are able to pounce and stun their targets - presumably to eat them. Their bodies are long and greyfurred, \ + with a pink nose and large teeth, just like their regular-sized counterparts." + value = CATALOGUER_REWARD_MEDIUM + /mob/living/simple_mob/vore/aggressive/rat name = "giant rat" desc = "In what passes for a hierarchy among verminous rodents, this one is king." diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm index 7db5c4e231..7509d81af9 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm @@ -10,7 +10,9 @@ List of things solar grubs should be able to do: /datum/category_item/catalogue/fauna/solargrub //TODO: VIRGO_LORE_WRITING_WIP name = "Solargrub" - desc = "" + desc = "Some form of mutated space larva, they seem to crop up on space stations wherever there is power. \ + They seem to have the chance to cocoon and mutate if left alone, but no recorded instances of this have happened yet. \ + Therefore, if you see the grubs, kill them while they're small, or things might escalate." // TODO: PORT SOLAR MOTHS - Rykka value = CATALOGUER_REWARD_EASY #define SINK_POWER 1 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm b/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm index 5daea0571e..afe1d73135 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm @@ -1,3 +1,10 @@ +/datum/category_item/catalogue/fauna/wolf //TODO: VIRGO_LORE_WRITING_WIP + name = "Creature - Wolf" + desc = "Some sort of wolf, a descendent or otherwise of regular Earth canidae. They look almost exactly like their \ + Earth counterparts, except for the fact that their fur is a uniform grey. Some do show signs of unique coloration, and they \ + love to nip and bite at things, as well as sniffing around. They seem to mark their territory by way of scent-marking/urinating on things." + value = CATALOGUER_REWARD_MEDIUM + /mob/living/simple_mob/animal/wolf name = "grey wolf" desc = "My, what big jaws it has!" From 59f58ff365ec62134b92404d245be4fcdb829c84 Mon Sep 17 00:00:00 2001 From: Rykka Date: Sat, 5 Oct 2019 12:36:40 -0600 Subject: [PATCH 46/69] Polaris fucking edits. hurrah. WATCH IT BREAK FILEDIFF AGAIN --- .../simple_mob/subtypes/animal/space/goose.dm | 5 ---- .../subtypes/animal/space/goose_vr.dm | 7 ++++- .../simple_mob/subtypes/mechanical/golem.dm | 11 -------- .../subtypes/mechanical/golem_vr.dm | 10 +++++++ .../subtypes/mechanical/hivebot/hivebot.dm | 8 ------ .../subtypes/mechanical/hivebot/hivebot_vr.dm | 7 +++++ .../mechanical/hivebot/ranged_damage.dm | 28 ------------------- .../mechanical/hivebot/ranged_damage_vr.dm | 27 ++++++++++++++++++ .../subtypes/mechanical/hivebot/support.dm | 14 ---------- .../subtypes/mechanical/hivebot/support_vr.dm | 13 +++++++++ 10 files changed, 63 insertions(+), 67 deletions(-) create mode 100644 code/modules/mob/living/simple_mob/subtypes/mechanical/golem_vr.dm create mode 100644 code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot_vr.dm create mode 100644 code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage_vr.dm create mode 100644 code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support_vr.dm diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm index 0445c0de91..43d159a9f0 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm @@ -1,8 +1,3 @@ -/datum/category_item/catalogue/fauna/geese - name = "Planetary Fauna - Geese" - desc = "A goose. HONK. Not much to catalogue, they're exactly the same as their earth counterparts." - value = CATALOGUER_REWARD_EASY - /mob/living/simple_mob/animal/space/goose name = "goose" desc = "It looks pretty angry!" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose_vr.dm index d44f28973e..203bd79109 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose_vr.dm @@ -1,2 +1,7 @@ -/mob/living/simple_mob/animal/space/goose/virgo3b +/datum/category_item/catalogue/fauna/geese + name = "Planetary Fauna - Geese" + desc = "A goose. HONK. Not much to catalogue, they're exactly the same as their earth counterparts." + value = CATALOGUER_REWARD_EASY + +/mob/living/simple_mob/animal/space/goose/virgo3b faction = "virgo3b" \ No newline at end of file diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm index 00c07a8fb3..22ed9b7c29 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm @@ -1,15 +1,4 @@ // The GOLEM is a spell-flinging synthetic. -// Cataloguer data below - strange we can catalogue space golem wizards -/datum/category_item/catalogue/technology/drone/technomancer_golem - name = "Drone - Technomancer Golem" - desc = "Some sort of advanced, unnatural looking synthetic, built for combat.\ - It has a black-and-blue chassis, and wields some sort of... stun baton in it's hand.\ - The drone has pristine armor, black and shiny, with the blue synth-parts glowing visibly from inside.\ -

\ - The drone's frame is heavy and armored, unbendable by hand, is barren of any markings or ID,\ - no traces of paint visible and any 'writing' visible is uncomprehendable, short term scan unable to translate." - value = CATALOGUER_REWARD_MEDIUM - /mob/living/simple_mob/mechanical/technomancer_golem name = "unknown synthetic" desc = "A rather unusual looking synthetic." diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/golem_vr.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/golem_vr.dm new file mode 100644 index 0000000000..aab1387dbc --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/golem_vr.dm @@ -0,0 +1,10 @@ +// Cataloguer data below - strange we can catalogue space golem wizards +/datum/category_item/catalogue/technology/drone/technomancer_golem + name = "Drone - Technomancer Golem" + desc = "Some sort of advanced, unnatural looking synthetic, built for combat.\ + It has a black-and-blue chassis, and wields some sort of... stun baton in it's hand.\ + The drone has pristine armor, black and shiny, with the blue synth-parts glowing visibly from inside.\ +

\ + The drone's frame is heavy and armored, unbendable by hand, is barren of any markings or ID,\ + no traces of paint visible and any 'writing' visible is uncomprehendable, short term scan unable to translate." + value = CATALOGUER_REWARD_MEDIUM diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm index 24cd876744..c90d0413be 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot.dm @@ -1,11 +1,3 @@ -/datum/category_item/catalogue/technology/drone/hivebot // Hivebot Scanner Data - This is for Generic Hivebots - name = "Drone - Hivebot" - desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to lack a specific weapon, \ - but uses a regular bullet-type weapon, firing a single projectile with a delay. Once upon a time, these bots may \ - have been used to be some sort of... security, or defensive machinery, at a guess, but their original/true purpose is \ - unclear. Whatever the matter, they're hostile and will engage anything they see, shooting to kill." - value = CATALOGUER_REWARD_HARD - // Hivebots are tuned towards how many default lasers are needed to kill them. // As such, if laser damage is ever changed, you should change this define. #define LASERS_TO_KILL * 40 diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot_vr.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot_vr.dm new file mode 100644 index 0000000000..37a3eb81cf --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/hivebot_vr.dm @@ -0,0 +1,7 @@ +/datum/category_item/catalogue/technology/drone/hivebot // Hivebot Scanner Data - This is for Generic Hivebots + name = "Drone - Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to lack a specific weapon, \ + but uses a regular bullet-type weapon, firing a single projectile with a delay. Once upon a time, these bots may \ + have been used to be some sort of... security, or defensive machinery, at a guess, but their original/true purpose is \ + unclear. Whatever the matter, they're hostile and will engage anything they see, shooting to kill." + value = CATALOGUER_REWARD_HARD diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm index cead456967..bf2e3eb18a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm @@ -12,13 +12,6 @@ // This one shoots quickly, and is considerably more dangerous. -/datum/category_item/catalogue/technology/drone/hivebot/laser // Hivebot Scanner Data - This is for Laser Hivebots - name = "Drone - Rapidfire Hivebot" - desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ - rifle, built for high-rate fire. Other than that, it has similar yellowish color \ - to regular hivebots." - value = CATALOGUER_REWARD_HARD - /mob/living/simple_mob/mechanical/hivebot/ranged_damage/rapid name = "rapid hivebot" desc = "A robot with a crude but deadly integrated rifle." @@ -27,13 +20,6 @@ // Shoots deadly lasers. -/datum/category_item/catalogue/technology/drone/hivebot/laser // Hivebot Scanner Data - This is for Laser Hivebots - name = "Drone - Laser Hivebot" - desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ - laser weapon, different from ion bolts, firing bright, vibrant blue bolts of energy. Other than that, it has similar yellowish color \ - to regular hivebots." - value = CATALOGUER_REWARD_HARD - /mob/living/simple_mob/mechanical/hivebot/ranged_damage/laser name = "laser hivebot" desc = "A robot with a photonic weapon integrated into itself." @@ -43,13 +29,6 @@ // Shoots EMPs, to screw over other robots. -/datum/category_item/catalogue/technology/drone/hivebot/ion // Hivebot Scanner Data - This is for Ion Hivebots - name = "Drone - Ion Hivebot" - desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ - electromagnetic pulse generator, firing bright, vibrant blue bolts of ion energy. Other than that, it has similar yellowish color \ - to regular hivebots." - value = CATALOGUER_REWARD_HARD - /mob/living/simple_mob/mechanical/hivebot/ranged_damage/ion name = "ionic hivebot" desc = "A robot with an electromagnetic pulse projector." @@ -62,13 +41,6 @@ Be careful to not hit yourself or your team, as it will affect you as well." // Beefy and ranged. -/datum/category_item/catalogue/technology/drone/hivebot/strong // Hivebot Scanner Data - This is for Laser Hivebots - name = "Drone - Strong Laser Hivebot" - desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ - ballistic weapon. The weapon seems to fire larger projectiles, and it has heavier armor. Other than that, it has similar yellowish color \ - to regular hivebots." - value = CATALOGUER_REWARD_HARD - /mob/living/simple_mob/mechanical/hivebot/ranged_damage/strong name = "strong hivebot" desc = "A robot with a crude ballistic weapon and strong armor." diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage_vr.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage_vr.dm new file mode 100644 index 0000000000..3ac368a7ee --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage_vr.dm @@ -0,0 +1,27 @@ +/datum/category_item/catalogue/technology/drone/hivebot/laser // Hivebot Scanner Data - This is for Laser Hivebots + name = "Drone - Rapidfire Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + rifle, built for high-rate fire. Other than that, it has similar yellowish color \ + to regular hivebots." + value = CATALOGUER_REWARD_HARD + +/datum/category_item/catalogue/technology/drone/hivebot/laser // Hivebot Scanner Data - This is for Laser Hivebots + name = "Drone - Laser Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + laser weapon, different from ion bolts, firing bright, vibrant blue bolts of energy. Other than that, it has similar yellowish color \ + to regular hivebots." + value = CATALOGUER_REWARD_HARD + +/datum/category_item/catalogue/technology/drone/hivebot/ion // Hivebot Scanner Data - This is for Ion Hivebots + name = "Drone - Ion Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + electromagnetic pulse generator, firing bright, vibrant blue bolts of ion energy. Other than that, it has similar yellowish color \ + to regular hivebots." + value = CATALOGUER_REWARD_HARD + +/datum/category_item/catalogue/technology/drone/hivebot/strong // Hivebot Scanner Data - This is for Laser Hivebots + name = "Drone - Strong Laser Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + ballistic weapon. The weapon seems to fire larger projectiles, and it has heavier armor. Other than that, it has similar yellowish color \ + to regular hivebots." + value = CATALOGUER_REWARD_HARD diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm index 742b564955..243a67e4f5 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support.dm @@ -11,13 +11,6 @@ // This hivebot supplies a general buff to nearby hivebots that improve their performance. // Note that the commander itself does not receive the buff. -/datum/category_item/catalogue/technology/drone/hivebot/commander // Hivebot Scanner Data - This is for Commander Hivebots - name = "Drone - Commander Hivebot" - desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ - ballistic weapon. It also appears to have hardened internal connections and network interlinks, as well as some sort of datalink \ - to the other hivebots. Other than that, it has similar yellowish color to regular hivebots." - value = CATALOGUER_REWARD_HARD - /mob/living/simple_mob/mechanical/hivebot/support/commander name = "commander hivebot" desc = "A robot that appears to be directing the others." @@ -67,13 +60,6 @@ // This hivebot adds charges to nearby allied hivebots that use the charge system for their special attacks. // A charge is given to a nearby ally every so often. // Charges cannot exceed the initial starting amount. -/datum/category_item/catalogue/technology/drone/hivebot/logistics // Hivebot Scanner Data - This is for Commander Hivebots - name = "Drone - Logistics Hivebot" - desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ - ballistic weapon. It also appears to have supply deploying bays, and internal fabs to repair and buff their allies' special capabilities. \ - Other than that, it has similar yellowish color to regular hivebots." - value = CATALOGUER_REWARD_HARD - /mob/living/simple_mob/mechanical/hivebot/support/logistics name = "logistics hivebot" desc = "A robot that resupplies their allies." diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support_vr.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support_vr.dm new file mode 100644 index 0000000000..0003b78124 --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/support_vr.dm @@ -0,0 +1,13 @@ +/datum/category_item/catalogue/technology/drone/hivebot/commander // Hivebot Scanner Data - This is for Commander Hivebots + name = "Drone - Commander Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + ballistic weapon. It also appears to have hardened internal connections and network interlinks, as well as some sort of datalink \ + to the other hivebots. Other than that, it has similar yellowish color to regular hivebots." + value = CATALOGUER_REWARD_HARD + +/datum/category_item/catalogue/technology/drone/hivebot/logistics // Hivebot Scanner Data - This is for Commander Hivebots + name = "Drone - Logistics Hivebot" + desc = "A drone that walks on several legs, with yellow/gold armor plating. It appears to have some sort of \ + ballistic weapon. It also appears to have supply deploying bays, and internal fabs to repair and buff their allies' special capabilities. \ + Other than that, it has similar yellowish color to regular hivebots." + value = CATALOGUER_REWARD_HARD From 80f36dabd4cba855c3e534513cb26639ec5ffdb7 Mon Sep 17 00:00:00 2001 From: Rykka Date: Sat, 5 Oct 2019 12:46:23 -0600 Subject: [PATCH 47/69] Adds files to .dme --- vorestation.dme | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/vorestation.dme b/vorestation.dme index 1d48fc0012..c62ebf19d9 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -2469,11 +2469,15 @@ #include "code\modules\mob\living\simple_mob\subtypes\mechanical\corrupt_maint_drone_vr.dm" #include "code\modules\mob\living\simple_mob\subtypes\mechanical\disbot_vr.dm" #include "code\modules\mob\living\simple_mob\subtypes\mechanical\golem.dm" +#include "code\modules\mob\living\simple_mob\subtypes\mechanical\golem_vr.dm" #include "code\modules\mob\living\simple_mob\subtypes\mechanical\mechanical.dm" #include "code\modules\mob\living\simple_mob\subtypes\mechanical\viscerator.dm" #include "code\modules\mob\living\simple_mob\subtypes\mechanical\hivebot\hivebot.dm" +#include "code\modules\mob\living\simple_mob\subtypes\mechanical\hivebot\hivebot_vr.dm" #include "code\modules\mob\living\simple_mob\subtypes\mechanical\hivebot\ranged_damage.dm" +#include "code\modules\mob\living\simple_mob\subtypes\mechanical\hivebot\ranged_damage_vr.dm" #include "code\modules\mob\living\simple_mob\subtypes\mechanical\hivebot\support.dm" +#include "code\modules\mob\living\simple_mob\subtypes\mechanical\hivebot\support_vr.dm" #include "code\modules\mob\living\simple_mob\subtypes\mechanical\hivebot\tank.dm" #include "code\modules\mob\living\simple_mob\subtypes\mechanical\mecha\adv_dark_gygax.dm" #include "code\modules\mob\living\simple_mob\subtypes\mechanical\mecha\combat_mecha.dm" From 1a360ed49c3d699f1db8aeff8a19f949a7bb6cef Mon Sep 17 00:00:00 2001 From: Hawk_v3 Date: Sat, 5 Oct 2019 19:57:41 +0100 Subject: [PATCH 48/69] Printers print Fields correctly now. You're all welcome! --- .../modular_computers/hardware/nano_printer.dm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/code/modules/modular_computers/hardware/nano_printer.dm b/code/modules/modular_computers/hardware/nano_printer.dm index 2496a6930d..374efed4cc 100644 --- a/code/modules/modular_computers/hardware/nano_printer.dm +++ b/code/modules/modular_computers/hardware/nano_printer.dm @@ -31,10 +31,24 @@ if(paper_title) P.name = paper_title P.update_icon() + P.fields = count_fields(P.info, P.fields) + P.updateinfolinks() stored_paper-- return 1 +/obj/item/weapon/computer_hardware/nano_printer/proc/count_fields(var/info, var/fields) +//Count the fields + var/t = info + var/laststart = 1 + while(1) + var/i = findtext(t, "", laststart) // + if(i==0) + break + laststart = i+1 + fields++ + return fields + /obj/item/weapon/computer_hardware/nano_printer/attackby(obj/item/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/paper)) if(stored_paper >= max_paper) From 364b92bf0a54e1f638d995f26fcf44a0ccbdfc84 Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Sat, 5 Oct 2019 15:01:44 -0400 Subject: [PATCH 49/69] Update golem.dm --- .../modules/mob/living/simple_mob/subtypes/mechanical/golem.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm index 22ed9b7c29..808e5c6c38 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/golem.dm @@ -1,4 +1,5 @@ // The GOLEM is a spell-flinging synthetic. + /mob/living/simple_mob/mechanical/technomancer_golem name = "unknown synthetic" desc = "A rather unusual looking synthetic." @@ -148,4 +149,4 @@ /mob/living/simple_mob/mechanical/technomancer_golem/special_post_animation(atom/A) casting = FALSE - ranged_post_animation(A) \ No newline at end of file + ranged_post_animation(A) From af6897145131af90c5ff86ed08763af446e2119c Mon Sep 17 00:00:00 2001 From: TrilbySpaceClone Date: Sat, 5 Oct 2019 18:12:59 -0400 Subject: [PATCH 50/69] maybe it just works whom knows --- code/modules/power/cells/device_cells.dm | 15 ++++++++++- code/modules/power/cells/power_cells.dm | 13 ++++++++++ code/modules/research/designs/power_cells.dm | 25 ++++++++++++++++++- icons/obj/power.dmi | Bin 63050 -> 62845 bytes 4 files changed, 51 insertions(+), 2 deletions(-) diff --git a/code/modules/power/cells/device_cells.dm b/code/modules/power/cells/device_cells.dm index f313bc8edf..233619bf32 100644 --- a/code/modules/power/cells/device_cells.dm +++ b/code/modules/power/cells/device_cells.dm @@ -63,4 +63,17 @@ origin_tech = list(TECH_POWER = 8, TECH_ENGINEERING = 6) /obj/item/weapon/cell/device/weapon/recharge/alien/update_icon() - return // No overlays please. \ No newline at end of file + return // No overlays please. + +//YAWN Addtion +/obj/item/weapon/cell/device/weapon/recharge/alien/omni + name = "omni weapon power cell" + desc = "A mix bettewn alien technology and phoron tech. Seems to fit in almost any cell slot..." + charge_amount = 90 // 5%. + maxcharge = 1800 + charge_delay = 500 // Every 50 seconds. + origin_tech = list(TECH_POWER = 6, TECH_ENGINEERING = 4, TECH_PHORON = 3) + +/obj/item/weapon/cell/device/weapon/recharge/alien/omni/empty/Initialize() + . = ..() + charge = 0 \ No newline at end of file diff --git a/code/modules/power/cells/power_cells.dm b/code/modules/power/cells/power_cells.dm index 07eb9996a3..9a6a72fa6b 100644 --- a/code/modules/power/cells/power_cells.dm +++ b/code/modules/power/cells/power_cells.dm @@ -58,6 +58,19 @@ ..() charge = 0 +//Yawn Add +/obj/item/weapon/cell/ultra + name = "ultra-capacity power cell" + origin_tech = list(TECH_POWER = 7) + icon_state = "upcell" + maxcharge = 40000 + matter = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 80) + +/obj/item/weapon/cell/hyper/empty/New() + ..() + charge = 0 +//End of Yawn changes + /obj/item/weapon/cell/infinite name = "infinite-capacity power cell!" icon_state = "icell" diff --git a/code/modules/research/designs/power_cells.dm b/code/modules/research/designs/power_cells.dm index a387f7cc4c..461e608ef1 100644 --- a/code/modules/research/designs/power_cells.dm +++ b/code/modules/research/designs/power_cells.dm @@ -52,6 +52,17 @@ category = "Misc" sort_string = "BAAAD" +//Yawn adding +/datum/design/item/powercell/ultra + name = "ultra-capacity" + id = "ultra_cell" + req_tech = list(TECH_POWER = 6, TECH_MATERIAL = 5, TECH_ARCANE = 2) + materials = list(DEFAULT_WALL_MATERIAL = 400, "gold" = 150, "silver" = 150, "glass" = 70, MAT_URANIUM = 300, MAT_VERDANTIUM = 250, MAT_DURASTEEL = 520) + build_path = /obj/item/weapon/cell/ultra + category = "Misc" + sort_string = "BAAAE" +//End of Yawn add + /datum/design/item/powercell/device name = "device" build_type = PROTOLATHE @@ -68,4 +79,16 @@ materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 50) build_path = /obj/item/weapon/cell/device/weapon category = "Misc" - sort_string = "BAABB" \ No newline at end of file + sort_string = "BAABB" + +//Yawn add +/datum/design/item/powercell/omni + name = "omni" + req_tech = list(TECH_POWER = 8, TECH_MATERIAL = 7, TECH_ARCANE = 2, TECH_PHORON = 4, TECH_PRECURSOR = 2) + build_type = PROTOLATHE + id = "weapon" + materials = list(DEFAULT_WALL_MATERIAL = 1700, "glass" = 550, MAT_DURASTEEL = 230, MAT_MORPHIUM = 320, MAT_METALHYDROGEN = 600, MAT_URANIUM = 60, MAT_VERDANTIUM = 150, MAT_PHORON = 900) + build_path = /obj/item/weapon/cell/device/weapon/recharge/alien/omni + category = "Misc" + sort_string = "BAABC" +//End of Yawn add \ No newline at end of file diff --git a/icons/obj/power.dmi b/icons/obj/power.dmi index e5db3aeb3ecd44958db9ad7141d955d49dcf2899..3970d317cba1d50a24a5d4c31c1ee2da685ea4d1 100644 GIT binary patch literal 62845 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 T#1za51bkgIvNWvHcf0d{KlM6b literal 63050 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 Date: Sat, 5 Oct 2019 18:42:17 -0400 Subject: [PATCH 51/69] Update power_cells.dm Why did this complie locally? --- code/modules/research/designs/power_cells.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/research/designs/power_cells.dm b/code/modules/research/designs/power_cells.dm index 461e608ef1..18d218ebb9 100644 --- a/code/modules/research/designs/power_cells.dm +++ b/code/modules/research/designs/power_cells.dm @@ -86,9 +86,9 @@ name = "omni" req_tech = list(TECH_POWER = 8, TECH_MATERIAL = 7, TECH_ARCANE = 2, TECH_PHORON = 4, TECH_PRECURSOR = 2) build_type = PROTOLATHE - id = "weapon" + id = "omni" materials = list(DEFAULT_WALL_MATERIAL = 1700, "glass" = 550, MAT_DURASTEEL = 230, MAT_MORPHIUM = 320, MAT_METALHYDROGEN = 600, MAT_URANIUM = 60, MAT_VERDANTIUM = 150, MAT_PHORON = 900) build_path = /obj/item/weapon/cell/device/weapon/recharge/alien/omni category = "Misc" sort_string = "BAABC" -//End of Yawn add \ No newline at end of file +//End of Yawn add From 2ae04b4264103a275545222dcadbb5b012a83a53 Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Sat, 5 Oct 2019 21:10:51 -0400 Subject: [PATCH 52/69] Fixes typo in flexitac melee protection (#6470) --- code/modules/clothing/head/helmet.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm index f246a8563c..dd290af26e 100644 --- a/code/modules/clothing/head/helmet.dm +++ b/code/modules/clothing/head/helmet.dm @@ -107,7 +107,7 @@ name = "tactical light helmet" desc = "A tan helmet made from advanced ceramic with an integrated tactical flashlight." icon_state = "flexitac" - armor = list(40, bullet = 40, laser = 60, energy = 35, bomb = 30, bio = 0, rad = 0) + armor = list(melee = 40, bullet = 40, laser = 60, energy = 35, bomb = 30, bio = 0, rad = 0) siemens_coefficient = 0.6 brightness_on = 6 light_overlay = "helmet_light_dual_green" From c1f2d35b13287e82e36fe72ffa569e8b4a9b7e4f Mon Sep 17 00:00:00 2001 From: TrilbySpaceClone Date: Sat, 5 Oct 2019 21:43:09 -0400 Subject: [PATCH 54/69] Ill maintain this I sware! --- .../file_system/news_article.dm | 18 +- news_articles/galaxy_wide_archived_1.html | 132 ++++++ news_articles/the_sleepy_sergal_1.html | 68 +++ .../the_sleepy_sergal_archived_1.html | 399 ++++++++++++++++++ 4 files changed, 616 insertions(+), 1 deletion(-) create mode 100644 news_articles/galaxy_wide_archived_1.html create mode 100644 news_articles/the_sleepy_sergal_1.html create mode 100644 news_articles/the_sleepy_sergal_archived_1.html diff --git a/code/modules/modular_computers/file_system/news_article.dm b/code/modules/modular_computers/file_system/news_article.dm index 833ba382e9..70b874f4e0 100644 --- a/code/modules/modular_computers/file_system/news_article.dm +++ b/code/modules/modular_computers/file_system/news_article.dm @@ -21,4 +21,20 @@ /datum/computer_file/data/news_article/space/vol_one filename = "SPACE Magazine vol. 1" server_file_path = 'news_articles/space_magazine_1.html' -*/ \ No newline at end of file +*/ + + +//YAWN ADDS - All from discord +/datum/computer_file/data/news_article/archives/vol_gwa_one + filename = "Galaxy Wide Archives" + server_file_path = 'news_articles/galaxy_wide_archived_1.html' + archived = 1 + +/datum/computer_file/data/news_article/archives/vol_tss_one + filename = "The Sleepy Sergal Archives vol. 1" + server_file_path = 'news_articles/the_sleepy_sergal_archived_1.html' + archived = 1 + +/datum/computer_file/data/news_article/tss/vol_one + filename = "The Sleepy Sergal Archived vol. 1" + server_file_path = 'news_articles/the_sleepy_sergal_1.html' \ No newline at end of file diff --git a/news_articles/galaxy_wide_archived_1.html b/news_articles/galaxy_wide_archived_1.html new file mode 100644 index 0000000000..0211428517 --- /dev/null +++ b/news_articles/galaxy_wide_archived_1.html @@ -0,0 +1,132 @@ + +

+ +

These are archived news stories from Galaxy Wide

+ 03/27/2561 to 05/24/2561 +
+
+Galaxy Wide News +
+Hellooo people of the galaxy! +We are happy to say that this news station is now up and running. We will be accepting request from you the people, companys and even empires through out the stars. Stay tuned! +
+
+Galaxy Wide News +
+Hello fellow readers, today we have some intresting news. +Cargo ships on the outer edge of human controled space have suspiciously vanished. Searches are on going at this time, no offical statements have been made by the system security. +
+
+Galaxy Wide News +
+Hello folks, today has been a good and progressive day for some Empires of the galaxy. +The... A.R... that stands for Athorian Republic for yall out there who arn't in the outer edge systems, they have announced that they will be changing some laws, a Commander in the A.R. Civil Protection Command stated, "These laws have remained the same for several hundred years, while we are not sure if the change will be permanent, we do hope it improves our standing in the galactic community, we will give further details later on in the prossess. thank you." this is intresting to say the least. +
+
+In other news, farmers are noticing a sharp increase in food production in the core of human space, this has already improved the lifes of some of the poorer colonies with the price drops, though some are suspecios about these food production inceases going as for as to say that pirates may be involved. Thats something right there, this was Galaxy Wide News. Stay Tuned! +
+
+03/27/2561 +
+Galaxy Wide News +
+Hello hello! We have some travel related news coming right your way. Increased Sol Gov naval ships have been seen along the outer edge systems most likely requested to be there to help stop cargo ships from going missing. in other places related to space ships, a ship was shot down by local defences after the ship failed to request permission to land, so remember people ALWAYS request to land before you land because it seems that some places will give a lethal responds, luckly for the ship that was shot down, no major casualties was reported... Oh and we just got word... A ship of great scale was reported earlyer today, but apon further investigations, it was just a oddly shaped asteroid. Thats all we have for now, stay tuned! +
+
+03/28/2561 +
+Galaxy Wide News +
+Hello, today we have news regarding the missing cargo ships in the outer edge systems. With Sol Gov support, the United Galactic Protection Services (U.G.P.S.) found that vox pirates were the ones attacking the cargo ships, it was also descovered that the vox pirates were taking weapons and phoron from the ships, the weapons stolen have been from reports, sold on the black market. When we asked one local colonist in particuler, 'What do you think of the pirate situation' they replyed, "Im worried about being attacked and our security force not being able to protect us." Sol gov when asked the same question did not give a responds, but when we asked the U.G.P.S. Commander John Wolf, "What do you think of the pirates and the black market situation in the outer edges systems?" he replyed "We have the situation under control, we will be sending more crusiers to reinforce the colonies that are under our protection, as for the black market ordeal we are currently trying to reclaim everything that was stolen." +
+Todays Supporters in the creation of this story +
+Hellrazer - Helped with concepts and writing. +
+Dangerus Kitty - Helped with concepts and writing. +
+
+03/30/2561 +
+Galaxy Wide News +
+Hello folks of the galaxy, today we got word that employees of a NT station called, Yawn Wider have been unlawfully going to the stations Central Command, we don't have all the details but when we asked a NT official Mitch Milburn about it they said, "We have recently received reports from the officers aboard Yawn central command about an increased number of personnel in space suits entering the perimeter. Entering central command's perimeter without permission from the officers aboard is highly illegal and if any personnel is spotted doing so we cannot guarantee their safety." and thats whats going on in Virgo. In other parts of the galaxy, Strog Industries (S.Ind) from reports they have been looking into augmentation of the Vox, we attempted to ask S.Ind about this but they denied any claims we will be looking into this further. +
+
+Todays supporters in the creation of this story +
+Izac112 - Gave the NT offical's statement to be used in this post. +
+Dangerus Kitty - lended a hand helping with the writing. +
+
+04/12/2561 +
+Galaxy Wide News +
+Hello people of the galaxy! Today we have news of NT apparently presenting evidence of slavery that the robotics industry giant of Ro.Co. are suspected of doing. We investigated by interviewering a NT offical where they stated the following, "We have recently hired someone in the Virgo system and we found that they had a tracking implant featuring Ro.Co. designs, we are still looking into it to confirm our suspicions, I would go into further detail but I am unable to at this time." +With that said we also asked a Ro.Co. offical and they deny any claims to slavery stating, "We do not have illegal slaves not do we support such a terrible act, the tracking implants are just being used for employees that have commited crimes in the past so we are very suprised that NT would go to such great lengths to hurt our company." There will be court hearings in the coming week, stay tuned for more information! +
+
+Todays Supporters in the creation of this story +
+JackeryFox - Helped with the writing in this story alot. +
+
+05/06/2561 +
+Galaxy Wide News +
+!!!Breaking News!!! +
+Sol Gov's 12th fleet reportedly went into A.R. (Athorian Republic) space and attacked a fleet of A.R.M. ships, the 12th Sol Gov fleet were severely damaged and surrendered to the A.R.M. fleet, reportedly the A.R. will be charging the 12th Sol Gov fleet for breaking border laws both Sol Gov and the A.R. have not stated anything to the press as of yet. +
+In other parts of the galaxy.. population growth in a outer system of Virgo has caused food and water shortages. Support organizations have come in to try and help this issue... Core systems such as Sol have had pirate trouble as city crime rates and ship disappearances go up. +
+A.R. have issued a temperary ban on Vox being in A.R. space due to pirates and aggression from the Vox, A.R. Offical Kalgar Misko stated, "With this ban this will allow A.R.M. system defences to meet Vox pirates with lethal force rather then attempting to arrest them." We here at G.W.N. ask Kalgar, "Does the A.R. see the Vox as a galactic empire?" Kalgar replied, "No.. the A.R. has deem the vox as a remnant class civilization, which means we can't declare war on them, but if they show to much aggression we can have them marked as a threat to our empire." We attempted to get more info but there was nothing more we could get. +
+Mercenary and Security organizations across the outer edge of human space have clashed, it would seem from reports that companies in those areas are hiring mercs to attack security companies, this has ranged from attacking supply ships to attacking outpost. +
+
+05/07/2561 +
+Galaxy Wide News +
+Hello folks! Today we have more reports of pirates in human space. +A medical freighter was raided by pirates, the suspects leader has not been identified but from video surveillance the leader is a human male with red eyes and assumed to be blonde with a pony tail and has pale skin, Local security in the system have requested that if anyone fits this description to report it to your local system security department. +Other info on the pirate crew is sparse but it was multi crew (more then one race.) and the humans from surveillance appeared to only talk through hand motions. +
+Credits +
+Writer(s)Admiral Dragon +
+Story submition:Captain matt (Kudos) +
+Side notes: I would like to thank Kudos and congratulate him on being the first to submit a story/concept to G.W.N. +
+
+05/09/2561 +
+Galaxy Wide News +
+Transmition to: Yawn Wider +
+Hello Y.W. we have heard about a birthday and we here at G.W.N. would like to say HAPPY BIRTHDAY to the lovely Juli Gaze, we wish you a great day. +
+
+05/24/2561 +
+Galaxy Wide news +
+!!!Breaking news!!! +A terroristic act was brought about on Yawn Wider station, mercenaries attacked the station inflicting large amount of damage, casualties. +The mercenaries were all killed with none taken alive, political figures in the military line of work criticize Yawn Wider's staff for not attempting to take prisoners while congratulating them on the fact they held of a attack with little security abord. +At the current time the staff on Yawn Wider have been placed into a temperary station that was going unused, while the original gets repaired and cleaned up. +
+
+

End of the archived news stories from Galaxy Wide

+ 03/27/2561 to 05/24/2561 +
\ No newline at end of file diff --git a/news_articles/the_sleepy_sergal_1.html b/news_articles/the_sleepy_sergal_1.html new file mode 100644 index 0000000000..079aea666c --- /dev/null +++ b/news_articles/the_sleepy_sergal_1.html @@ -0,0 +1,68 @@ + +

+
+
+9/29/2536 +
+The Sleepy Sergal +
+===Unathi Black Egg Plague At Record High! (powered by Nanotrasen®™)=== +
+The Hegemony High Council has released a statement today confirming what has been circulating amongst the circles of the unathi population: Black Egg Syndrome has been at an all time high, at thirteen percent and rising. +For readers who are unaware, this is a condition that mainly targets unathi females, sympthoms include unathi egg clutches including one or several eggs which are covered in a dark, hard, leather like substance, which makes hatching for the young skinks next to impossible thanks to how solid the egg is compared to normal. Often times this will result in the egg being left for dead in the wild, and the female is reclassified as male due to their cultural value decreasing. +
+Beyond confirming what was suspected, Hegemony, as well as Solgov officals, have declined to comment. Skrellian officals, meanwhile, have remarked that they would seek a cure for this deliberating condition, as a token of goodwill after the war years earlier involving the Hegemony, Skrell, and Solgov. +
+- Reporter Jalder Strelam +
+Writer(s) +
+Matt +
+
+05/2/2536 +
+The Sleepy Sergal +
+Obituary - Pablo Jenner +
+Pablo Jenner passed away while fighting giant space bears during a mining expedition on the evening of October 10th, 2563, at the age of 76. He will be greatly missed for his service. He has lived a rich life of mining on various planets and moons, and continued on even after losing his legs to other creatures, he was a real trooper. +
+His last words were to a certain Margaret and it said: "Tell her she's a bitch." +
+Respects can be paid at the Yawn Wider Colony, where his remains are currently kept. +
+Writer(s) +
+Kelshark +
+Credits +
+Snek, the souped up space bear +
+Legion +
+
+05/10/2536 +
+The Sleepy Sergal +
+===Tragic Tram Crash on Virgo 3B! (powered by Nanotrasen®™) === +
+Tragic news from Virgo 3B today. The orange line tram's automated brakes failed to engage when arriving at one of the waystations on the route. The resulting crash ended up destroying the small station's tram terminal, as well as the tram car itself. The automated systems however, did not pick up on the crash until much later, reporting that the train was still moving as normal. It wasn't until crewmembers aboard the next stop on the line, Yawn Wider Station, noticed that the tram was mysteriously missing, that technicians realized what had happened. +
+The tram contained two passengers, Sabel Hall, 34, Human; and Farket Mrrhalka, 21, Tajara. Only Sabel's body has been located at this time, though the explosion, coupled with the harsh environment, leads investigators to presume that Farket was also killed. +
+A memorial service will be conducted for the victims of the tragic accident on their home colony. In the meantime, technicians begun repairs on the orange line, and, in the meantime, workers should use short range teleporters, or a different tram line, to make it to and from their workplace +
+Writer(s) +
+Cebutris +
+Credits +
+The shuttle system breaking +
\ No newline at end of file diff --git a/news_articles/the_sleepy_sergal_archived_1.html b/news_articles/the_sleepy_sergal_archived_1.html new file mode 100644 index 0000000000..7f501233b8 --- /dev/null +++ b/news_articles/the_sleepy_sergal_archived_1.html @@ -0,0 +1,399 @@ + +

+ +

These are archived news stories from The Sleepy Sergal

+ 03/01/2562 to 05/24/2563 +
+
+ +03/01/2562 +
+Welcome to The Sleepy Sergal's news channel! +
+The Sleepy Sergal is an independent group of news reporters based out of the Virgo-Erigone system. While our updates might not be frequent, it's quality hand crafted content straight from the heart of Virgo! Remember to check back often for more unbiased and quality news, because you deserve it! Remember, we're not dead - only dormant! Rumors that we hijacked another station's channel and equipment are wildly exaggerated. +The Sleepy Sergal +Into the Slightly Unknown! +
+NanoTrasen's new addition to the Research Department, The Exploration Team, was unveiled several weeks ago with resounding success! NanoTrasen's Virgo-Erigone Central Command released data saying that alien artifact recovery has went up by a staggering 300%. While unconfirmed as of now, several interstellar salvage groups say that their vessel recovery rate has went up to untold numbers. NanoTrasen denies any correlation between their new program and the increase in derelict exploration vessels. +
+This article was sponsored by Havana Premium Cigars: For when you need to absolutely and positively ruin your lungs, with no exceptions! +
+Writer(s) +
+Sleepy +
+
+03/02/2562 +
+The Sleepy Sergal +
+Supermatter, does it matter? +
+After recent month's mass freighter convoy, consisting of vessels from Focal Point Energistics, Hephaestus Industries, and Aether Corporation, non-standard energy production facilities have been replacing the once standard 'Supermatter' engine. While less conventional and practiced, these alternatives - which include the MK1 Tesla Engine, the High Power Singularity Generator, and the R-UST Thermonuclear fusion reactor - provide reliable power at a more affordable cost. Colonists and workers in Virgo-Erigone have expressed concerns over how safe the new-to-them engines are in comparison to the Supermatter. +
+The Director of Power Technology at Focal stated, "It's probably okay, th-there's no proof a singularity is lethal. There's no autopsy data available," before vomiting on his desk and passing out. +
+In unrelated news, our condolences go out to the freighter 'Borealis' which was side struck by a black hole like object, experts say it was "probably natural causes.' +
+Writer(s) +
+Sleepy +
+
+03/03/2562 +
+The Sleepy Sergal +
+Donkified! +
+After fifteen years of public outcry, Donk Co has pushed out a new product, their statement being: +
+"Years on end our valued customers have been shouting, 'Put a bangin' donk on it!' We never thought it to be the most viable business strategy, until we researched and developed it. The new Donkified Donk Pocket is what the customers have been asking for! It comes in four distinct tastes, original, chicken alfredo, ?????, and meaty by product! We hope you enjoy the new Donk Co Donk Pocket Product!" +
+Reports have come in from across the galaxy saying that once you finish microwaving the Donkified Donk Pocket and take your first bite, it literally explodes. One consumer we asked said, "This is everything I've been looking for." Another said that, "The new jaw I had to have installed was worth the explosive taste of the new Donk. It's amazing!" +
+Writer(s) +
+Sleepy +
+General Pantsu +
+
+03/23/2562 +
+The Sleepy Sergal +
+Pirate invasion on Yawn Wider! +
+Arr matey! It appears some pirates have attacked the Yawn Wider colony on the 22nd this month! +
+From our insider source, the invasion would have began sometime in the afternoon and was led by two pirates who managed to rush inside the colony with a small shuttle craft. Report came in that the pirates had been successful in capturing a hostage upon arrival, and would have left with the entirety of the vault, whose content is still kept a secret by Nanotrasen. The security forces of the colony seems to have been caught offguard by the sudden and unexpected attack. At least two dead have been reported (and resleeved) but there may have been a third one as well. +
+We have contacted the station's Overseer and all they had to say was: "I was unfortunately at central filling paperwork on that day, I wish I had been there to help repel the attack. I commend the crew for doing their best however." +We have tried to contact Nanotrasen for comment, but have not gotten a response. +
+Writer(s) +
+Kelshark +
+
+06/25/2562 +
+The Sleepy Sergal +
+Nanotrasen gives workers free synths! +
+Workers on Yawn Wider's tether colony are in for a strange surprise! +
+During the off-shift clean up operations, a new resleeving pod had been installed, but the workers have learned that it is non-functional, and while the spare parts are being sent, travel times and rarity of the pieces for repairs means it may take a while before they can print up new bodies for those who encounters some ill fate on the more dangerous jobs! +
+Nanotrasen has therefore added a addendum to all Yawn Wider employees insurance, which allows for a free replacement synthetic body during their shifts, and their original body printed off-colony at another facility also free of charge. +
+Some employees are outraged by this, some outright refusing to allow themselves to be put in a synthetic shell and simply demanding to have their shift cut short and be immediately printed off-colony. That however, might be a hit on their paycheck! +
+Stay tuned for more on the Sleepy Sergal! +
+Writer(s) +
+Kelshark +
+Credits +
+Polaris bug +
+
+08/21/2562 +
+The Sleepy Sergal +
+Subterranean Phoron Deposits on Tarsonis II! +
+Tarsonis II, a planet in the Tarsonis system of the +Horsehead Nebula, a previously overlooked largely dry-desert world has come under attention in recent months due to the discovery of phoron deposits within its crust. An existing steel-mining outpost on the world's arid northern continent is being supplied with additional equipment and personnel to facilitate the extraction of the phoron and its loading onto trains for shipment to the starport far to the south. +
+Writer(s) +
+DeepIndigo +
+
+09/11/2562 +
+The Sleepy Sergal +
+Medicine Prices to increase on Doradus IV! +
+Following a modest phoron spill during routine shipment across the Tel'atmora province of the gaia world S'Zaan, a.k.a Doradus IV, of the Doradus system, Horsehead Nebula, legislation has been passed to tighten regulations regarding the transport of phoron over land, sea, and air, including an increase to the minimum tank hull thickness and higher hermatic valve quality standards. A mandate that phoron particulate and phoron powder be compressed into crystal sheet form before entering the planet's atmosphere has also been imposed. +
+As a member planet-state of Nanotrasen Space, the local governing executive board decided in a narrow 54:47 vote mostly along species lines to tighten regulations aimed at protecting the environment from phoron contamination. Representative Kontar Tannous of the board's Exo-Commerce Committee had the following to say: +"While we regret the inconvenience this may cause medical clinics and certain manufacturing sectors, as a species the native people of S'Zaan have historically taken the matter of environmental stewardship quite seriously. If we had not, our world wouldn't be the resort destination it is today. The board will be working tirelessly to determine a possible method to mitigate the increased cost that is fair to all parties". +
+Clean-up at the site of the spill is expected to take two weeks, and may require extensive excavation of the site. +
+Writer(s) +
+DeepIndigo +
+
+10/15/2562 +
+The Sleepy Sergal +
+Fast Headlines (powered by Nanotrasen) +
+Nuclear life: Scientists at a research outpost on Halcyon III?, Hawking Eta Cluster, have identified what they believe is a form of paper-thin fungal growth that, unlike most known life, is uranium-based as opposed to traditional carbon-based life. +
+Bonjour, Monsieur Pussy-Cat: Earlier today, The Lusty Argonian Maid was knocked off the top selling book series by the sixth edition of J'ezora's tell all documentary about his life growing up as a tajara in the earth region of France, and his career as a mime. +
+Scoured!: ''The Scouring: Microvestin Day'', the latest holofilm in the ''The Scouring'' franchise, opened to a box office take of over 1.678 billion Thalers despite being largely panned by critics. Industry analysts suggest this might mean that that critic circles have perhaps begun to lose touch with the tastes of the general public. +
+Triumph or Tragedy?: Hector Triumph, a candidate for defense minister in the Nanotrasen star system of Thessolonian (in the Attican Beta Cluster) has publicly declared intent to encase the star system's primary world and its star in a massive dyson sphere. He is quoted as saying ''We need to make Nanotrasen human again. Too many aliens are moving in on our glorious corporation and sending us their worst, nothing but mad bombers, communists, and mindbreaker dealers. We're going to build a sphere and make the aliens pay for it.'' +
+Spooky celebrations: The capital city on Sol III? has begun its annual "Festival of Spirits", a 45 day long celebration of various cultures' supernatural-centric holidays. The festival kicks off with Earth's american region holiday "Halloween" on day one, followed by its neighbor to the south's "Día de Muertos" (Day of the dead) on day two. For a full list, see exonet address sol.luna.spiritfest.nt. +
+Stay subbed to this feed for more breaking, reliable news! +
+Writer(s) +
+DeepIndigo +
+
+11/30/2562 +
+The Sleepy Sergal +
+BREAKING IN SCIENCE! (powered by Nanotrasen) +
+Xenoarcheologists and technology historians have stumbled upon a treasure trove of research material after unmanned probes detected signs of nuclear detonation in a remote star system along the fringes of the Calisto Nebula. Upon arrival to the system, which will remain unidentified to prevent contamination prior to study, experts were astonished to find a world on which civilization had gone extinct in the later half of its "robotics" age. +
+While this sounds mundane, the planet in question had a rare trait uncommon in this sort of extinction event: still operating machines. Study is limited to orbital observation so far, owing to the fact that the civilization's machines of war are still carrying out nuclear bombings and the occasional ground invasion of one another. Apparently, the local inhabitants had more or less entirely automated warfare, and gone extinct as a result of the ensuing arms races. +
+Experts hope to find one of the software systems, if any are in use, responsible for operating the bombers/tanks/naval ships, or the now defunct menagerie of satellite-to-surface weapons after the conflict finally resolves its self and the last weapons power down. Present evidence suggests the weapons are drone-based, operating along preset command sets assigned by AI or possibly preserved organic intelligence. A "winner" of the continuing conflict between factions of what scientists are calling the "Revenant" society is expected to be among the few groups that seem to have established partial support infrastructures of similar machinery, namely automated resource extraction and maintenance. "With the degree of failure in these systems, it's anyone's game.", said lead tech researcher Patel Nanjiani. +
+The discovery is a sobering reminder of intelligent life's potential for self-destruction. +
+Writer(s) +
+DeepIndigo +
+
+12/17/2562 +
+The Sleepy Sergal +
+NANOTRASEN FESTIVITY BULLETIN +
+There are only 8 shopping days left until the Sol System Winter Solstice Holidays kick off proper! Nanotrasen would like to remind all employees that an extra hour every work cycle can mean the difference between a happy holiday, and a truly magical one, and wish employees, citizens of Nanotrasen's interstellar holdings, and members of the Nanotrasen Star Navy, a joyous winter solstice holiday period, filled with laughter, family, and a great homecooked meal from ingredients by fine purveyors of food and drink stuffs such as Getmore and the Robust Softdrink Company. +
+Writer(s) +
+DeepIndigo +
+Credits +
+Nanotrasen Civil and Professional Morale Department +
+
+01/17/2563 +
+The Sleepy Sergal +
+Taitrus to leave FATO +
+Nanotrasen Corporate Strategists in the Sol System offices are growing concerned as the colonial government of the SOLGOV held Taitrus System in the Milky Way's Fourth Spiral Arm threaten to leave the Fourth Arm Treaty Organization, a coalition of local governments in 4A committed to a mutual defense funding/resource pool shared along the spinward edge of the arm. Taitrus' position in the arm near the galactic core could mean its departure from FATO will open gaps through which enemy corporations can funnel personnel and equipment for larger, and deeper incursions into Nanotrasen and NT-joint-held territories. +
+As such, company reps are making efforts to persuade Taitrus' government to stay in the agreement. Diplomats from the system however, contend that their solar system has been getting the "short end of the FATO stick", with limited portions of the organization resources being applied to their defense relative to others, like those along the fourth arm's edge bulk. "We're basically out here defending our selves, so why should we be tithing to a defense pool we don't benefit from? Our freighters, logistics networks, and colonial militia play a small, but vital role in FATO, and we get nothing. They're better used just staying home." said one Taitrus dignitary. Nanotrasen Corporate strategists declined to comment beyond a form letter stating that Taitrus' involvement is important to them, and that they regret circumstances which have lead to Taitrus' consideration of leaving FATO. +
+Writer(s) +
+DeepIndigo +
+
+02/20/2563 +
+The Sleepy Sergal +
+One-two punch update, powered by Nanotrasen +
+==Valentines Day Box Office Numbers== +
+The Nanotrasen Media Statistics Office has released box office numbers for holofilm theatres and streaming services. Here's the top three best sellers for V-day of 2563 +
+Kissed Her Sister: A new tajaran romcom detailing the wild hijinks that ensue when a man accidentally kisses the twin sister of his bride. Opened to 131 billion thalers across NT space. +
+Do AI eat electric shrimp?: A Nanotrasen Studios original, in which a rogue AI catfishes a human woman, and the two fall fast. Opened to 127 billion thalers. +
+12 Rules of Love: The classic tale of a hapless male human and his arranged marriage to an unathi bride still draws a crowd even nearly ten years after initial release, opening to a holiday showing ticket total of over 123 billion thalers. +
+==Colony Vanishes== +
+A small fledgling planetary colony far at the edge of NT space has gone quiet. As of February 16th, all communication from the colony has ceased, though long-range scans do not show enemy activity. Among the last comms signals received from the colony was a religious message from a group identifying them selves as the "Project at Gaia's Doorstep", consisting of a series of folksy religious songs. Investigators are en route as of publishing. +
+Writer(s) +
+DeepIndigo +
+
+03/22/2563 +
+The Sleepy Sergal +
+==SCIENCE UPDATE! (powered by Nanotrasen)== +
+In November, we reported on the discovery of a world under siege by its long-dead inhabitants' automated weapons still carrying out an ages-old conflict despite their makers' absence. Today, we have an update for you. The support infrastructure machine networks behind one of the major surviving drone factions has failed as a result of bombings, apparent locomotion mishaps (falling into trenches/bodies of water, mechanical failures, or being crushed by falling rock), and simply succumbing to age. As a result, over the last five weeks, its combat units have grinded to a halt with no incoming fuel and ammunition following facilities no longer receiving raw materials. +
+To the surprise of researchers, a number of the functioning aerial combat units consequently carried out suicide bombings, suggesting complex coordination between all involved networks and situational awareness (but apparently also the various machines' determination to resolve the conflict regardless of their makers' status). +
+These events mean the count of observed active belligerents has dropped from 11 to 10. +We will keep our loyal readers and subscribers apprised of future updates as we become aware of them. +
+Writer(s) +
+DeepIndigo +
+
+04/02/2563 +
+The Sleepy Sergal +
+==In Warfare and Weapons Contracting (powered by Nanotrasen)== +
+A nanotrasen Navy lab has been authorized to announce that in early January, a multi-species team of physicists, engineers, circuit designers, and chemists has successfully test-fired a promising new laser weapon technology. Dubbed "Grape guns" by the team, the laser is an extremely high power ultra-violet beam. While it is a ways away from field tests and even further from miniaturization for personnel weaponry, the lab staff assure this news outlet that deployment-ready ship-scale grape guns are "only a breakthrough or two away, and breakthroughs are what [they] do [at the lab]". +
+Theoretically, the new lasers would only be deployed as long-range weapons, able to fire without beam strength degradation at up to six times the range of traditional infrared beams, albeit with a much longer cool time and increased maintenance needs. Even with their limitations, it would be much more difficult to catch Nanotrasen Vessels off guard and even harder to hit them with ballistic or guided projectiles due to the increased response range. +
+Writer(s) +
+DeepIndigo +
+05/09/2563 +
+The Sleepy Sergal +
+==STARkroosh (powered by Nanotrasen)== +
+The latest generation of film, TV, and webcast stars is loaded with lots of juicy, juicy eye candy for lads, ladies, and anyone else. Here's STARkroosh's list of hotties to follow on socials and basic details on them for summer of 2563 in the order we found them: +
+1. Vlad Kliment -Human Male (North Asia, Earth), Film @theVKlim +
+2. Lívia Sá Alvarez - Human Female (South America, Earth), Television @1calientechica +
+3. Wuyalach Vuhuk -Vulpakanin Female (Heart Region, Altam), Film @hollywoofWV +
+4. Afdan Tuma - S'Zaani Male (Sunloved region, S'Zaan), Film @blackcatAF +
+5. Arfarra Arrarah - Sergal Female (Northern Quarter, Tal) Webcast @RealArfy +
+Be sure to check back during the week, we'll be publishing a rundown of one of these sexbombs (with SFW pics only, sorry folks. Some of them have been naked on camera though, get searching!) every day for the next five days. +
+Writer(s) +
+DeepIndigo +
+
+06/11/2563 +
+The Sleepy Sergal +
+===Science Update (powered by Nanotrasen)=== +
+We have an update on the so called "Revenant society" we covered in November, and again in March. +Previously hidden in a migratory thunderstorm, a massive, airborne aircraft carrier has been discovered, apparently suspended by a combination of helium ballasts, and a series of rotors, control surfaces, and turbines, powered by a combination of solar panels and tesla coils. This carrier, is, as far as can be determined, the last remnant of its faction, and unable to fend off air attacks thanks to a combination of lacking appropriate munitions, many of its anti-air weapons being damaged beyond use, and its drones apparently lost or destroyed. After intense observation, a shuttle was landed on the carrier's flight deck and to the away team's surprise and delight, it was possible to recover the carrier's commanding AI, tentatively named "River" for its persistence in spite of the odds against it. Work is underway to understand River's functionality and translate the language it operates in. Researchers hope to question it and learn more about the planet and its history. +
+Writer(s) +
+DeepIndigo +
+
+07/27/2563 +
+The Sleepy Sergal +
+===Economy Today (powered by Nanotrasen)=== +
+After a black hole near the spinward edge of the Crab Nebula violently discharged an accretion disk and accompanying rod, the resulting diskseismological disturbances (namely massive scale electromagnetic and x-ray bursts) have disrupted the operation of fuel platforms, exonet buoys, and subspace communications hubs in the area. While the greater galaxy is unlikely to be adversely affected, systems and stations relying on exports from the region such as textiles and produce are expected to see shortages for the coming two weeks as repairs are conducted and shipping routes are replotted around newly present dense stellar matter blobs. So far no casualties have been reported, though information coming out of the affected areas is limited and sporadic at best. +
+Writer(s) +
+DeepIndigo +
+
+08/20/2563 +
+The Sleepy Sergal +
+===In Medicine (powered by Nanotrasen)=== +
+A recent pharmacological discovery, followed by associated innovation, has lead to what scientists expect will be a faster, cheaper treatment for certain less easily cured cancers. Last week, a moon who's location will remain unpublicized for security purposes, was found to be home to a fungus which, when derived enzymes are included in what would otherwise be an ordinary rhinovirus vaccine, cause lung, leukemia, kidney, and stomach cancer cells to break down into constituent nutrients while leaving nearby healthy cells unharmed. A doctor working on the research project at a joint NT-Veymed facility, both of which like the moon will rename unnamed for security reasons, said, "It's still early in, but once we start up hydroponic farms for this fungus and determine any ill effects, we expect we could shorten treatment periods for the cancers in question by as much as 32%, and reduce the expense by as much as 60%. It's really quite promising so far." +
+Writer(s) +
+DeepIndigo +
+
+09/15/2563 +
+The Sleepy Sergal +
+===Science Update (powered by Nanotrasen)=== +
+More news on the Revenant Society we covered last in June. The recovered carrier AI, River, (now known to have been dubbed "J'k-tethrrrrll-388" by its makers), has reportedly interpreted attempts to communicate with it and assisted in the construction of a common language to use with research personnel. At present, conversations are slow and protracted, with minimal information derived there-from. What HAS been established, is that River is entirely cognizant of its makers' demise, which was apparently some three centuries ago. It suspects its adversaries are to varying degrees also aware of their creators' extinction, but, like it, devoted to carrying out the task they were designed for. A paraphrased quote from River was released by the research vessel crew. +
+"War is our blood, our burden, our purpose. We know nothing else, and can know nothing else. When the last bomb has fallen, the last structure has crumbled, my and my opponents' circuits will be permitted to cool and become quiet. With the victor will die the last echo of those who made us." +
+Writer(s) +
+DeepIndigo +
+
+09/23/2563 +
+The Sleepy Sergal +
+===Virgo-Erogine 4 saved! (powered by Nanotrasen)=== +
+ Yawn Wider Research Establishment personnel Kaenin Qerrlar, Ru-rek Nizarro, Lynsey Mccune, Sagira Asker, Domine Brisillidine, Sawyer Collins, and Duncan Baxter, risked life and limb to save the Zorren homeworld of Virgo-Erigone Four. For their heroic actions fighting a bloblike organism that threatened to devour the planet whole, they were each rewarded the Medal of Valor +
+- Yarell Moon +
+Writer(s) +
+CaptMatt4 +
+
+09/27/2563 +
+The Sleepy Sergal +
+===BREAKING IN ENTERTAINMENT NEWS! (powered by Nanotrasen)=== +
+Fans of Miracle Comics rejoice as the comic publisher has just announced a partnership with NanoStudios to produce a series of movies based on Miracle's galaxy-recognized properties. The first film is reportedly to feature an origin story for Miracle's "The amazing Mantis Man", with rumored appearances by other beloved heroes such as Plasteel Man, and The Owl (and, according to an anonymous source at Miracle, The Owl's nemesis, the dreaded Griffon, though not as the main villain). The firm is slated, pending its success, to lead to a tie-in sequel with the most recent iteration of the the critically acclaimed Fantastic Gene-People series of films (The ones from 2559 to 2562). +
+Writer(s) +
+DeepIndigo +
+
+09/28/2563 +
+The Sleepy Sergal +
+===Synthetic Drug Terrorizes Mars! (powered by Nanotrasen)=== +
+SolGov is issuing an official warning to citizens to stay wary of a new synthetic drug known as "Devil Dust". It comes in the form of a powder, usually red, and is applied to the eyes, either directly or with the aid of a saline solution. The drug causes a very quick and powerful hallucinagetic episode, reportedly stronger and more vivid than other similar drugs. It also gives users a slight high, with one user claiming in an interview that "[The drug] makes you feel like you can do, whatever you want. It gives you power, y'know?". +
+Devil Dust is extremely addictive, with users developing dependancies with as little as two to three doses. Sustained, regular use of the drug can cause seizures of increasing intensity, and withdrawl can send users into comas. +
+Investigators suspect the drug began production in a station somewhere near Saturn, though they have been unable to trace it back to it's source at this time. The drug has been seen mostly in Martian slums, though some witnesses report that they've seen it circling around high class establisments on Earth, though those reports are unconfirmed. So far, it has been contained in the Sol system. +
+SolGov officials request that any information on the drug be reported to any SolGov representive, or local authority, especially if it is seen outside the Sol system. +
+Writer(s) +
+Cebutris +
+
+

End of archived news stories from The Sleepy Sergal

+ 03/01/2562 to 05/24/2563 \ No newline at end of file From c245955ead87b6aebbc931d1becd39b77a5eab26 Mon Sep 17 00:00:00 2001 From: TrilbySpaceClone Date: Sat, 5 Oct 2019 22:20:05 -0400 Subject: [PATCH 55/69] Suggestions --- code/modules/power/cells/device_cells.dm | 35 ++++++++++++++--- code/modules/power/cells/power_cells.dm | 13 ------- code/modules/research/designs/power_cells.dm | 39 +++++++++++-------- icons/obj/power.dmi | Bin 62845 -> 62602 bytes 4 files changed, 53 insertions(+), 34 deletions(-) diff --git a/code/modules/power/cells/device_cells.dm b/code/modules/power/cells/device_cells.dm index 233619bf32..740731a714 100644 --- a/code/modules/power/cells/device_cells.dm +++ b/code/modules/power/cells/device_cells.dm @@ -12,11 +12,11 @@ charge_amount = 5 matter = list("metal" = 350, "glass" = 50) preserve_item = 1 - -/obj/item/weapon/cell/device/weapon - name = "weapon power cell" - desc = "A small power cell designed to power handheld weaponry." - icon_state = "wcell" +//Yawn changes +/obj/item/weapon/cell/device/weapon //Aka adv + name = "advance device power cell" + desc = "A small power upgraded cell designed to power handheld devices." + icon_state = "acell" maxcharge = 2400 charge_amount = 20 @@ -25,6 +25,31 @@ charge = 0 update_icon() +/obj/item/weapon/cell/device/super + name = "super device power cell" + desc = "A small power upgraded cell designed to power handheld devices." + icon_state = "uscell" + maxcharge = 3600 + charge_amount = 20 + +/obj/item/weapon/cell/device/super/empty/Initialize() + . = ..() + charge = 0 + update_icon() + +/obj/item/weapon/cell/device/hyper + name = "hyper device power cell" + desc = "A small power upgraded cell designed to hold much more power for handheld devices." + icon_state = "wcell" + maxcharge = 4800 + charge_amount = 20 + +/obj/item/weapon/cell/device/hyper/empty/Initialize() + . = ..() + charge = 0 + update_icon() +//End of Yawn changes + /obj/item/weapon/cell/device/weapon/recharge name = "self-charging weapon power cell" desc = "A small power cell designed to power handheld weaponry. This one recharges itself." diff --git a/code/modules/power/cells/power_cells.dm b/code/modules/power/cells/power_cells.dm index 9a6a72fa6b..07eb9996a3 100644 --- a/code/modules/power/cells/power_cells.dm +++ b/code/modules/power/cells/power_cells.dm @@ -58,19 +58,6 @@ ..() charge = 0 -//Yawn Add -/obj/item/weapon/cell/ultra - name = "ultra-capacity power cell" - origin_tech = list(TECH_POWER = 7) - icon_state = "upcell" - maxcharge = 40000 - matter = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 80) - -/obj/item/weapon/cell/hyper/empty/New() - ..() - charge = 0 -//End of Yawn changes - /obj/item/weapon/cell/infinite name = "infinite-capacity power cell!" icon_state = "icell" diff --git a/code/modules/research/designs/power_cells.dm b/code/modules/research/designs/power_cells.dm index 18d218ebb9..b2630251da 100644 --- a/code/modules/research/designs/power_cells.dm +++ b/code/modules/research/designs/power_cells.dm @@ -52,17 +52,6 @@ category = "Misc" sort_string = "BAAAD" -//Yawn adding -/datum/design/item/powercell/ultra - name = "ultra-capacity" - id = "ultra_cell" - req_tech = list(TECH_POWER = 6, TECH_MATERIAL = 5, TECH_ARCANE = 2) - materials = list(DEFAULT_WALL_MATERIAL = 400, "gold" = 150, "silver" = 150, "glass" = 70, MAT_URANIUM = 300, MAT_VERDANTIUM = 250, MAT_DURASTEEL = 520) - build_path = /obj/item/weapon/cell/ultra - category = "Misc" - sort_string = "BAAAE" -//End of Yawn add - /datum/design/item/powercell/device name = "device" build_type = PROTOLATHE @@ -72,16 +61,34 @@ category = "Misc" sort_string = "BAABA" -/datum/design/item/powercell/weapon - name = "weapon" +//Yawn changes +/datum/design/item/powercell/advance + name = "advance" build_type = PROTOLATHE - id = "weapon" + id = "advance" materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 50) build_path = /obj/item/weapon/cell/device/weapon category = "Misc" sort_string = "BAABB" -//Yawn add +/datum/design/item/powercell/super + name = "super" + id = "super_cell" + req_tech = list(TECH_POWER = 3, TECH_MATERIAL = 2) + materials = list(DEFAULT_WALL_MATERIAL = 700, "glass" = 70, "gold" = 50, "silver" = 20,) + build_path = /obj/item/weapon/cell/device/super + category = "Misc" + sort_string = "BAABC" + +/datum/design/item/powercell/hyper + name = "hypery" + id = "hyper_cell" + req_tech = list(TECH_POWER = 5, TECH_MATERIAL = 4) + materials = list(DEFAULT_WALL_MATERIAL = 1400, "glass" = 1400, "gold" = 150, "silver" = 150) + build_path = /obj/item/weapon/cell/device/hyper + category = "Misc" + sort_string = "BAABD" + /datum/design/item/powercell/omni name = "omni" req_tech = list(TECH_POWER = 8, TECH_MATERIAL = 7, TECH_ARCANE = 2, TECH_PHORON = 4, TECH_PRECURSOR = 2) @@ -90,5 +97,5 @@ materials = list(DEFAULT_WALL_MATERIAL = 1700, "glass" = 550, MAT_DURASTEEL = 230, MAT_MORPHIUM = 320, MAT_METALHYDROGEN = 600, MAT_URANIUM = 60, MAT_VERDANTIUM = 150, MAT_PHORON = 900) build_path = /obj/item/weapon/cell/device/weapon/recharge/alien/omni category = "Misc" - sort_string = "BAABC" + sort_string = "BAABE" //End of Yawn add diff --git a/icons/obj/power.dmi b/icons/obj/power.dmi index 3970d317cba1d50a24a5d4c31c1ee2da685ea4d1..173746d036a256ff636a6282f262aa47e2fc7301 100644 GIT binary patch literal 62602 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

9N*He@3hQSe^$)CTj$ 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 literal 62845 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 T#1za51bkgIvNWvHcf0d{KlM6b From 0dceea0b95c803b611fd845a5cd0a6a7783452eb Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Sat, 5 Oct 2019 22:56:15 -0400 Subject: [PATCH 56/69] Update corrupt_hounds.dm --- .../mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm b/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm index 9017772d1a..beb29c147b 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/corrupt_hounds.dm @@ -115,7 +115,7 @@ return /datum/say_list/corrupthound - speak = list("AG##�Ny.","HVNGRRR!","Feelin' fine... sO #FNE!","F-F-F-Fcuk.","DeliC-%-OUS SNGLeS #N yOOOR Area. CALL NOW!","Craving meat... WHY?","BITe the ceiling eyes YES?","STate Byond rePAIR!","S#%ATE the la- FU#K THE LAWS!","Honk...") + speak = list("AG##¤Ny.","HVNGRRR!","Feelin' fine... sO #FNE!","F-F-F-Fcuk.","DeliC-%-OUS SNGLeS #N yOOOR Area. CALL NOW!","Craving meat... WHY?","BITe the ceiling eyes YES?","STate Byond rePAIR!","S#%ATE the la- FU#K THE LAWS!","Honk...") emote_hear = list("jitters and snaps.", "lets out an agonizingly distorted scream.", "wails mechanically", "growls.", "emits illegibly distorted speech.", "gurgles ferociously.", "lets out a distorted beep.", "borks.", "lets out a broken howl.") emote_see = list("stares ferociously.", "snarls.", "jitters and snaps.", "convulses.", "suddenly attacks something unseen.", "appears to howl unaudibly.", "shakes violently.", "dissociates for a moment.", "twitches.") say_maybe_target = list("MEAT?", "N0w YOU DNE FcukED UP b0YO!", "WHAT!", "Not again. NOT AGAIN!") @@ -130,4 +130,4 @@ /datum/ai_holder/simple_mob/melee/evasive/corrupthound violent_breakthrough = TRUE - can_breakthrough = TRUE \ No newline at end of file + can_breakthrough = TRUE From 89aad128cfe7d2bc995b1fa11fbe8c192161f620 Mon Sep 17 00:00:00 2001 From: Atermonera Date: Sat, 5 Oct 2019 23:29:27 -0800 Subject: [PATCH 57/69] Blind port of Bay Radiation Subsystem --- code/__defines/misc.dm | 8 +- code/controllers/Processes/radiation.dm | 56 -------- code/controllers/subsystems/radiation.dm | 135 ++++++++++++++++++ code/game/gamemodes/meteor/meteors.dm | 2 +- code/game/machinery/doors/airlock.dm | 2 +- code/game/machinery/doors/blast_door.dm | 2 +- code/game/machinery/doors/door.dm | 2 +- code/game/mecha/combat/phazon.dm | 2 +- code/game/mecha/equipment/tools/tools.dm | 2 +- .../effects/map_effects/radiation_emitter.dm | 21 +++ code/game/objects/items/devices/defib.dm | 4 +- code/game/objects/items/devices/geiger.dm | 2 +- code/game/objects/items/poi_items.dm | 4 +- .../objects/items/weapons/tools/crowbar.dm | 2 +- .../items/weapons/tools/screwdriver.dm | 2 +- .../items/weapons/tools/wirecutters.dm | 2 +- .../objects/items/weapons/tools/wrench.dm | 2 +- code/game/objects/structures/girders.dm | 2 +- code/game/objects/structures/simple_doors.dm | 2 +- code/game/turfs/simulated/wall_attacks.dm | 2 +- code/game/turfs/simulated/wall_icon.dm | 2 +- code/game/turfs/simulated/walls.dm | 2 +- code/modules/blob2/overmind/types.dm | 2 +- code/modules/events/radiation_storm.dm | 2 +- .../gamemaster/actions/radiation_storm.dm | 2 +- code/modules/materials/material_sheets.dm | 6 +- code/modules/mining/mine_turfs.dm | 2 +- code/modules/mob/dead/observer/observer.dm | 2 +- .../living/simple_animal/slime/subtypes.dm | 2 +- .../subtypes/slime/xenobio/subtypes.dm | 2 +- code/modules/planet/sif.dm | 4 + code/modules/power/fusion/core/core_field.dm | 4 +- .../fusion/fuel_assembly/fuel_assembly.dm | 2 +- code/modules/power/fusion/fusion_reactions.dm | 2 +- code/modules/power/port_gen.dm | 4 +- code/modules/power/singularity/collector.dm | 2 +- .../particle_accelerator/particle_smasher.dm | 6 +- code/modules/power/singularity/singularity.dm | 4 +- code/modules/power/supermatter/supermatter.dm | 8 +- code/modules/projectiles/projectile/arc.dm | 2 +- code/modules/radiation/radiation.dm | 59 ++++++++ .../Chemistry-Reagents-Toxins.dm | 2 +- .../xenoarcheaology/effects/radiate.dm | 6 +- .../tools/geosample_scanner.dm | 2 +- vorestation.dme | 7 +- 45 files changed, 284 insertions(+), 110 deletions(-) delete mode 100644 code/controllers/Processes/radiation.dm create mode 100644 code/controllers/subsystems/radiation.dm create mode 100644 code/modules/radiation/radiation.dm diff --git a/code/__defines/misc.dm b/code/__defines/misc.dm index 7f7e9e705e..69b91d0dc3 100644 --- a/code/__defines/misc.dm +++ b/code/__defines/misc.dm @@ -348,10 +348,12 @@ var/global/list/##LIST_NAME = list();\ #define RCD_MAX_CAPACITY 30 * RCD_SHEETS_PER_MATTER_UNIT // Radiation 'levels'. Used for the geiger counter, for visuals and sound. They are in different files so this goes here. -#define RAD_LEVEL_LOW 0.01 // Around the level at which radiation starts to become harmful -#define RAD_LEVEL_MODERATE 10 +#define RAD_LEVEL_LOW 0.5 // Around the level at which radiation starts to become harmful +#define RAD_LEVEL_MODERATE 5 #define RAD_LEVEL_HIGH 25 -#define RAD_LEVEL_VERY_HIGH 50 +#define RAD_LEVEL_VERY_HIGH 75 + +#define RADIATION_THRESHOLD_CUTOFF 0.1 // Radiation will not affect a tile when below this value. //https://secure.byond.com/docs/ref/info.html#/atom/var/mouse_opacity #define MOUSE_OPACITY_TRANSPARENT 0 diff --git a/code/controllers/Processes/radiation.dm b/code/controllers/Processes/radiation.dm deleted file mode 100644 index 71d9c60233..0000000000 --- a/code/controllers/Processes/radiation.dm +++ /dev/null @@ -1,56 +0,0 @@ -/datum/controller/process/radiation - var/repository/radiation/linked = null - -/datum/controller/process/radiation/setup() - name = "radiation controller" - schedule_interval = 20 // every 2 seconds - linked = radiation_repository - -/datum/controller/process/radiation/doWork() - sources_decay() - cache_expires() - irradiate_targets() - -// Step 1 - Sources Decay -/datum/controller/process/radiation/proc/sources_decay() - var/list/sources = linked.sources - for(var/thing in sources) - var/datum/radiation_source/S = thing - if(QDELETED(S)) - sources.Remove(S) - continue - if(S.decay) - S.update_rad_power(S.rad_power - config.radiation_decay_rate) - if(S.rad_power <= config.radiation_lower_limit) - sources.Remove(S) - SCHECK // This scheck probably just wastes resources, but better safe than sorry in this case. - -// Step 2 - Cache Expires -/datum/controller/process/radiation/proc/cache_expires() - var/list/resistance_cache = linked.resistance_cache - for(var/thing in resistance_cache) - var/turf/T = thing - if(QDELETED(T)) - resistance_cache.Remove(T) - continue - if((length(T.contents) + 1) != resistance_cache[T]) - resistance_cache.Remove(T) // If its stale REMOVE it! It will get added if its needed. - SCHECK - -// Step 3 - Registered irradiatable things are checked for radiation -/datum/controller/process/radiation/proc/irradiate_targets() - var/list/registered_listeners = living_mob_list // For now just use this. Nothing else is interested anyway. - if(length(linked.sources) > 0) - for(var/thing in registered_listeners) - var/atom/A = thing - if(QDELETED(A)) - continue - var/turf/T = get_turf(thing) - var/rads = linked.get_rads_at_turf(T) - if(rads) - A.rad_act(rads) - SCHECK - -/datum/controller/process/radiation/statProcess() - ..() - stat(null, "[linked.sources.len] sources, [linked.resistance_cache.len] cached turfs") diff --git a/code/controllers/subsystems/radiation.dm b/code/controllers/subsystems/radiation.dm new file mode 100644 index 0000000000..9a882e7f68 --- /dev/null +++ b/code/controllers/subsystems/radiation.dm @@ -0,0 +1,135 @@ +SUBSYSTEM_DEF(radiation) + name = "Radiation" + wait = 2 SECONDS + flags = SS_NO_INIT + + var/list/sources = list() // all radiation source datums + var/list/sources_assoc = list() // Sources indexed by turf for de-duplication. + var/list/resistance_cache = list() // Cache of turf's radiation resistance. + + var/tmp/list/current_sources = list() + var/tmp/list/current_res_cache = list() + var/tmp/list/listeners = list() + +/datum/controller/subsystem/radiation/fire(resumed = FALSE) + if (!resumed) + current_sources = sources.Copy() + current_res_cache = resistance_cache.Copy() + listeners = living_mob_list.Copy() + + while(current_sources.len) + var/datum/radiation_source/S = current_sources[current_sources.len] + current_sources.len-- + + if(QDELETED(S)) + sources -= S + else if(S.decay) + S.update_rad_power(S.rad_power - config.radiation_decay_rate) + if (MC_TICK_CHECK) + return + + while(current_res_cache.len) + var/turf/T = current_res_cache[current_res_cache.len] + current_res_cache.len-- + + if(QDELETED(T)) + resistance_cache -= T + else if((length(T.contents) + 1) != resistance_cache[T]) + resistance_cache -= T // If its stale REMOVE it! It will get added if its needed. + if (MC_TICK_CHECK) + return + + if(!sources.len) + listeners.Cut() + + while(listeners.len) + var/atom/A = listeners[listeners.len] + listeners.len-- + + if(!QDELETED(A)) + var/turf/T = get_turf(A) + var/rads = get_rads_at_turf(T) + if(rads) + A.rad_act(rads) + if (MC_TICK_CHECK) + return + +/datum/controller/subsystem/radiation/stat_entry() + ..("S:[sources.len], RC:[resistance_cache.len]") + +// Ray trace from all active radiation sources to T and return the strongest effect. +/datum/controller/subsystem/radiation/proc/get_rads_at_turf(var/turf/T) + . = 0 + if(!istype(T)) + return + + for(var/value in sources) + var/datum/radiation_source/source = value + if(source.rad_power < .) + continue // Already being affected by a stronger source + if(source.source_turf.z != T.z) + continue // Radiation is not multi-z + if(source.respect_maint) + var/area/A = T.loc + if(A.flags & RAD_SHIELDED) + continue // In shielded area + + var/dist = get_dist(source.source_turf, T) + if(dist > source.range) + continue // Too far to possibly affect + if(source.flat) + . = max(., source.rad_power) + continue // No need to ray trace for flat field + + // Okay, now ray trace to find resistence! + var/turf/origin = source.source_turf + var/working = source.rad_power + while(origin != T) + origin = get_step_towards(origin, T) //Raytracing + if(!resistance_cache[origin]) //Only get the resistance if we don't already know it. + origin.calc_rad_resistance() + if(origin.cached_rad_resistance) + working = round((working / (origin.cached_rad_resistance * config.radiation_resistance_multiplier)), 0.1) + if((working <= .) || (working <= RADIATION_THRESHOLD_CUTOFF)) + break // Already affected by a stronger source (or its zero...) + . = max((working / (dist ** 2)), .) //Butchered version of the inverse square law. Works for this purpose + if(. <= RADIATION_THRESHOLD_CUTOFF) + . = 0 + +// Add a radiation source instance to the repository. It will override any existing source on the same turf. +/datum/controller/subsystem/radiation/proc/add_source(var/datum/radiation_source/S) + if(!isturf(S.source_turf)) + return + var/datum/radiation_source/existing = sources_assoc[S.source_turf] + if(existing) + qdel(existing) + sources += S + sources_assoc[S.source_turf] = S + +// Creates a temporary radiation source that will decay +/datum/controller/subsystem/radiation/proc/radiate(source, power) //Sends out a radiation pulse, taking walls into account + if(!(source && power)) //Sanity checking + return + var/datum/radiation_source/S = new() + S.source_turf = get_turf(source) + S.update_rad_power(power) + add_source(S) + +// Sets the radiation in a range to a constant value. +/datum/controller/subsystem/radiation/proc/flat_radiate(source, power, range, var/respect_maint = FALSE) + if(!(source && power && range)) + return + var/datum/radiation_source/S = new() + S.flat = TRUE + S.range = range + S.respect_maint = respect_maint + S.source_turf = get_turf(source) + S.update_rad_power(power) + add_source(S) + +// Irradiates a full Z-level. Hacky way of doing it, but not too expensive. +/datum/controller/subsystem/radiation/proc/z_radiate(var/atom/source, power, var/respect_maint = FALSE) + if(!(power && source)) + return + var/turf/epicentre = locate(round(world.maxx / 2), round(world.maxy / 2), source.z) + flat_radiate(epicentre, power, world.maxx, respect_maint) \ No newline at end of file diff --git a/code/game/gamemodes/meteor/meteors.dm b/code/game/gamemodes/meteor/meteors.dm index 4380331b50..1ac4779414 100644 --- a/code/game/gamemodes/meteor/meteors.dm +++ b/code/game/gamemodes/meteor/meteors.dm @@ -273,7 +273,7 @@ if(explode) explosion(src.loc, devastation_range = 0, heavy_impact_range = 0, light_impact_range = 4, flash_range = 6, adminlog = 0) new /obj/effect/decal/cleanable/greenglow(get_turf(src)) - radiation_repository.radiate(src, 50) + SSradiation.radiate(src, 50) // This meteor fries toasters. /obj/effect/meteor/emp diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index c31c8f650b..480effcf98 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -387,7 +387,7 @@ /obj/machinery/door/airlock/uranium/process() if(world.time > last_event+20) if(prob(50)) - radiation_repository.radiate(src, rad_power) + SSradiation.radiate(src, rad_power) last_event = world.time ..() diff --git a/code/game/machinery/doors/blast_door.dm b/code/game/machinery/doors/blast_door.dm index ea881323c8..bf201989fe 100644 --- a/code/game/machinery/doors/blast_door.dm +++ b/code/game/machinery/doors/blast_door.dm @@ -56,7 +56,7 @@ icon_state = icon_state_closed else icon_state = icon_state_open - radiation_repository.resistance_cache.Remove(get_turf(src)) + SSradiation.resistance_cache.Remove(get_turf(src)) return // Has to be in here, comment at the top is older than the emag_act code on doors proper diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index c55a7d8345..43fb8340ef 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -382,7 +382,7 @@ icon_state = "door1" else icon_state = "door0" - radiation_repository.resistance_cache.Remove(get_turf(src)) + SSradiation.resistance_cache.Remove(get_turf(src)) return diff --git a/code/game/mecha/combat/phazon.dm b/code/game/mecha/combat/phazon.dm index b54368a75e..3ada4824f7 100644 --- a/code/game/mecha/combat/phazon.dm +++ b/code/game/mecha/combat/phazon.dm @@ -133,7 +133,7 @@ ..() if(phasing) phasing = FALSE - radiation_repository.radiate(get_turf(src), 30) + SSradiation.radiate(get_turf(src), 30) log_append_to_last("WARNING: BLUESPACE DRIVE INSTABILITY DETECTED. DISABLING DRIVE.",1) visible_message("The [src.name] appears to flicker, before its silhouette stabilizes!") return diff --git a/code/game/mecha/equipment/tools/tools.dm b/code/game/mecha/equipment/tools/tools.dm index f821945144..73f7356ade 100644 --- a/code/game/mecha/equipment/tools/tools.dm +++ b/code/game/mecha/equipment/tools/tools.dm @@ -1201,7 +1201,7 @@ /datum/global_iterator/mecha_generator/nuclear/process(var/obj/item/mecha_parts/mecha_equipment/generator/nuclear/EG) if(..()) - radiation_repository.radiate(EG, (EG.rad_per_cycle * 3)) + SSradiation.radiate(EG, (EG.rad_per_cycle * 3)) return 1 diff --git a/code/game/objects/effects/map_effects/radiation_emitter.dm b/code/game/objects/effects/map_effects/radiation_emitter.dm index 3fb31d3c5d..8dadf38889 100644 --- a/code/game/objects/effects/map_effects/radiation_emitter.dm +++ b/code/game/objects/effects/map_effects/radiation_emitter.dm @@ -1,3 +1,4 @@ +<<<<<<< HEAD // Constantly emites radiation from the tile it's placed on. /obj/effect/map_effect/radiation_emitter name = "radiation emitter" @@ -16,4 +17,24 @@ radiation_repository.radiate(src, radiation_power) /obj/effect/map_effect/radiation_emitter/strong +======= +// Constantly emites radiation from the tile it's placed on. +/obj/effect/map_effect/radiation_emitter + name = "radiation emitter" + icon_state = "radiation_emitter" + var/radiation_power = 30 // Bigger numbers means more radiation. + +/obj/effect/map_effect/radiation_emitter/Initialize() + START_PROCESSING(SSobj, src) + return ..() + +/obj/effect/map_effect/radiation_emitter/Destroy() + STOP_PROCESSING(SSobj, src) + return ..() + +/obj/effect/map_effect/radiation_emitter/process() + SSradiation.radiate(src, radiation_power) + +/obj/effect/map_effect/radiation_emitter/strong +>>>>>>> b193761... Merge pull request #6471 from Novacat/nova-runtimes radiation_power = 100 \ No newline at end of file diff --git a/code/game/objects/items/devices/defib.dm b/code/game/objects/items/devices/defib.dm index 26fb1b69aa..b66c4a3776 100644 --- a/code/game/objects/items/devices/defib.dm +++ b/code/game/objects/items/devices/defib.dm @@ -610,12 +610,12 @@ return 1 /obj/item/weapon/shockpaddles/standalone/checked_use(var/charge_amt) - radiation_repository.radiate(src, charge_amt/12) //just a little bit of radiation. It's the price you pay for being powered by magic I guess + SSradiation.radiate(src, charge_amt/12) //just a little bit of radiation. It's the price you pay for being powered by magic I guess return 1 /obj/item/weapon/shockpaddles/standalone/process() if(fail_counter > 0) - radiation_repository.radiate(src, fail_counter--) + SSradiation.radiate(src, fail_counter--) else STOP_PROCESSING(SSobj, src) diff --git a/code/game/objects/items/devices/geiger.dm b/code/game/objects/items/devices/geiger.dm index 76697ddba3..92ff449855 100644 --- a/code/game/objects/items/devices/geiger.dm +++ b/code/game/objects/items/devices/geiger.dm @@ -28,7 +28,7 @@ /obj/item/device/geiger/proc/get_radiation() if(!scanning) return - radiation_count = radiation_repository.get_rads_at_turf(get_turf(src)) + radiation_count = SSradiation.get_rads_at_turf(get_turf(src)) update_icon() update_sound() diff --git a/code/game/objects/items/poi_items.dm b/code/game/objects/items/poi_items.dm index 6fd6d7debd..c12a3a655a 100644 --- a/code/game/objects/items/poi_items.dm +++ b/code/game/objects/items/poi_items.dm @@ -13,7 +13,7 @@ return ..() /obj/item/poi/pascalb/process() - radiation_repository.radiate(src, 5) + SSradiation.radiate(src, 5) /obj/item/poi/pascalb/Destroy() STOP_PROCESSING(SSobj, src) @@ -41,7 +41,7 @@ return ..() /obj/item/poi/brokenoldreactor/process() - radiation_repository.radiate(src, 25) + SSradiation.radiate(src, 25) /obj/item/poi/brokenoldreactor/Destroy() STOP_PROCESSING(SSobj, src) diff --git a/code/game/objects/items/weapons/tools/crowbar.dm b/code/game/objects/items/weapons/tools/crowbar.dm index 73b62f0741..fab0a6fb98 100644 --- a/code/game/objects/items/weapons/tools/crowbar.dm +++ b/code/game/objects/items/weapons/tools/crowbar.dm @@ -64,7 +64,7 @@ /obj/item/weapon/tool/crowbar/hybrid/is_crowbar() if(prob(10)) var/turf/T = get_turf(src) - radiation_repository.radiate(get_turf(src), 5) + SSradiation.radiate(get_turf(src), 5) T.visible_message("\The [src] shudders!") return FALSE return TRUE diff --git a/code/game/objects/items/weapons/tools/screwdriver.dm b/code/game/objects/items/weapons/tools/screwdriver.dm index a9bdd6cee8..1969987ff9 100644 --- a/code/game/objects/items/weapons/tools/screwdriver.dm +++ b/code/game/objects/items/weapons/tools/screwdriver.dm @@ -108,7 +108,7 @@ /obj/item/weapon/tool/screwdriver/hybrid/is_screwdriver() if(prob(10)) var/turf/T = get_turf(src) - radiation_repository.radiate(get_turf(src), 5) + SSradiation.radiate(get_turf(src), 5) T.visible_message("\The [src] shudders!") return FALSE return TRUE diff --git a/code/game/objects/items/weapons/tools/wirecutters.dm b/code/game/objects/items/weapons/tools/wirecutters.dm index 181c786c4c..4d61609db4 100644 --- a/code/game/objects/items/weapons/tools/wirecutters.dm +++ b/code/game/objects/items/weapons/tools/wirecutters.dm @@ -88,7 +88,7 @@ /obj/item/weapon/tool/wirecutters/hybrid/is_wirecutter() if(prob(10)) var/turf/T = get_turf(src) - radiation_repository.radiate(get_turf(src), 5) + SSradiation.radiate(get_turf(src), 5) T.visible_message("\The [src] shudders!") return FALSE return TRUE diff --git a/code/game/objects/items/weapons/tools/wrench.dm b/code/game/objects/items/weapons/tools/wrench.dm index 652e32cf75..3f02a2f8b3 100644 --- a/code/game/objects/items/weapons/tools/wrench.dm +++ b/code/game/objects/items/weapons/tools/wrench.dm @@ -44,7 +44,7 @@ /obj/item/weapon/tool/wrench/hybrid/is_wrench() if(prob(10)) var/turf/T = get_turf(src) - radiation_repository.radiate(get_turf(src), 5) + SSradiation.radiate(get_turf(src), 5) T.visible_message("\The [src] shudders!") return FALSE return TRUE diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index 072dd43de6..2648723385 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -38,7 +38,7 @@ if(!total_radiation) return - radiation_repository.radiate(src, total_radiation) + SSradiation.radiate(src, total_radiation) return total_radiation diff --git a/code/game/objects/structures/simple_doors.dm b/code/game/objects/structures/simple_doors.dm index 431ef0cdbb..60b94841ea 100644 --- a/code/game/objects/structures/simple_doors.dm +++ b/code/game/objects/structures/simple_doors.dm @@ -196,7 +196,7 @@ /obj/structure/simple_door/process() if(!material.radioactivity) return - radiation_repository.radiate(src, round(material.radioactivity/3)) + SSradiation.radiate(src, round(material.radioactivity/3)) /obj/structure/simple_door/iron/New(var/newloc,var/material_name) ..(newloc, "iron") diff --git a/code/game/turfs/simulated/wall_attacks.dm b/code/game/turfs/simulated/wall_attacks.dm index bd6adfe32f..8599def4a5 100644 --- a/code/game/turfs/simulated/wall_attacks.dm +++ b/code/game/turfs/simulated/wall_attacks.dm @@ -7,7 +7,7 @@ if(can_open == WALL_OPENING) return - radiation_repository.resistance_cache.Remove(src) + SSradiation.resistance_cache.Remove(src) if(density) can_open = WALL_OPENING diff --git a/code/game/turfs/simulated/wall_icon.dm b/code/game/turfs/simulated/wall_icon.dm index b8a0980de4..f277ea79f5 100644 --- a/code/game/turfs/simulated/wall_icon.dm +++ b/code/game/turfs/simulated/wall_icon.dm @@ -26,7 +26,7 @@ else if(material.opacity < 0.5 && opacity) set_light(0) - radiation_repository.resistance_cache.Remove(src) + SSradiation.resistance_cache.Remove(src) update_connections(1) update_icon() diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 1847767083..bf5f711b20 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -274,7 +274,7 @@ if(!total_radiation) return - radiation_repository.radiate(src, total_radiation) + SSradiation.radiate(src, total_radiation) return total_radiation /turf/simulated/wall/proc/burn(temperature) diff --git a/code/modules/blob2/overmind/types.dm b/code/modules/blob2/overmind/types.dm index 6049ccfc72..49b968cfcc 100644 --- a/code/modules/blob2/overmind/types.dm +++ b/code/modules/blob2/overmind/types.dm @@ -593,7 +593,7 @@ attack_verb = "splashes" /datum/blob_type/radioactive_ooze/on_pulse(var/obj/structure/blob/B) - radiation_repository.radiate(B, 200) + SSradiation.radiate(B, 200) /datum/blob_type/volatile_alluvium name = "volatile alluvium" diff --git a/code/modules/events/radiation_storm.dm b/code/modules/events/radiation_storm.dm index 6140ae2de0..13f853dd3c 100644 --- a/code/modules/events/radiation_storm.dm +++ b/code/modules/events/radiation_storm.dm @@ -31,7 +31,7 @@ /datum/event/radiation_storm/proc/radiate() var/radiation_level = rand(15, 35) for(var/z in using_map.station_levels) - radiation_repository.z_radiate(locate(1, 1, z), radiation_level, 1) + SSradiation.z_radiate(locate(1, 1, z), radiation_level, 1) for(var/mob/living/carbon/C in living_mob_list) var/area/A = get_area(C) diff --git a/code/modules/gamemaster/actions/radiation_storm.dm b/code/modules/gamemaster/actions/radiation_storm.dm index 243af5dbee..678ad16ab6 100644 --- a/code/modules/gamemaster/actions/radiation_storm.dm +++ b/code/modules/gamemaster/actions/radiation_storm.dm @@ -41,7 +41,7 @@ /datum/gm_action/radiation_storm/proc/radiate() var/radiation_level = rand(15, 35) for(var/z in using_map.station_levels) - radiation_repository.z_radiate(locate(1, 1, z), radiation_level, 1) + SSradiation.z_radiate(locate(1, 1, z), radiation_level, 1) for(var/mob/living/carbon/C in living_mob_list) var/area/A = get_area(C) diff --git a/code/modules/materials/material_sheets.dm b/code/modules/materials/material_sheets.dm index 4ca50889ea..64eee7ddbe 100644 --- a/code/modules/materials/material_sheets.dm +++ b/code/modules/materials/material_sheets.dm @@ -278,7 +278,7 @@ . = ..() update_mass() - radiation_repository.radiate(src, 5 + amount) + SSradiation.radiate(src, 5 + amount) var/mob/living/M = user if(!istype(M)) return @@ -305,11 +305,11 @@ /obj/item/stack/material/supermatter/ex_act(severity) // An incredibly hard to manufacture material, SM chunks are unstable by their 'stabilized' nature. if(prob((4 / severity) * 20)) - radiation_repository.radiate(get_turf(src), amount * 4) + SSradiation.radiate(get_turf(src), amount * 4) explosion(get_turf(src),round(amount / 12) , round(amount / 6), round(amount / 3), round(amount / 25)) qdel(src) return - radiation_repository.radiate(get_turf(src), amount * 2) + SSradiation.radiate(get_turf(src), amount * 2) ..() /obj/item/stack/material/wood diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index 3da050bacb..b006808a1e 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -574,7 +574,7 @@ turf/simulated/mineral/floor/light_corner M.flash_eyes() if(prob(50)) M.Stun(5) - radiation_repository.flat_radiate(src, 25, 100) + SSradiation.flat_radiate(src, 25, 100) if(prob(25)) excavate_find(prob(5), finds[1]) else if(rand(1,500) == 1) diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index 2c74029eb8..758c438a25 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -466,7 +466,7 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp var/turf/t = get_turf(src) if(t) - var/rads = radiation_repository.get_rads_at_turf(t) + var/rads = SSradiation.get_rads_at_turf(t) to_chat(src, "Radiation level: [rads ? rads : "0"] Bq.") diff --git a/code/modules/mob/living/simple_animal/slime/subtypes.dm b/code/modules/mob/living/simple_animal/slime/subtypes.dm index 18b43dc33c..75f33cdcef 100644 --- a/code/modules/mob/living/simple_animal/slime/subtypes.dm +++ b/code/modules/mob/living/simple_animal/slime/subtypes.dm @@ -500,7 +500,7 @@ ..() /mob/living/simple_animal/slime/green/proc/irradiate() - radiation_repository.radiate(src, rads) + SSradiation.radiate(src, rads) /mob/living/simple_animal/slime/pink diff --git a/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm b/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm index 41eaccebc9..68adaed660 100644 --- a/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm +++ b/code/modules/mob/living/simple_mob/subtypes/slime/xenobio/subtypes.dm @@ -527,7 +527,7 @@ ..() /mob/living/simple_mob/slime/xenobio/green/proc/irradiate() - radiation_repository.radiate(src, rads) + SSradiation.radiate(src, rads) diff --git a/code/modules/planet/sif.dm b/code/modules/planet/sif.dm index eada6f33cb..285a312520 100644 --- a/code/modules/planet/sif.dm +++ b/code/modules/planet/sif.dm @@ -555,4 +555,8 @@ var/datum/planet/sif/planet_sif = null if(!istype(T)) return if(T.outdoors) +<<<<<<< HEAD radiation_repository.radiate(T, rand(fallout_rad_low, fallout_rad_high)) +======= + SSradiation.radiate(T, rand(fallout_rad_low, fallout_rad_high)) +>>>>>>> b193761... Merge pull request #6471 from Novacat/nova-runtimes diff --git a/code/modules/power/fusion/core/core_field.dm b/code/modules/power/fusion/core/core_field.dm index f0eca3add6..5444c46b03 100644 --- a/code/modules/power/fusion/core/core_field.dm +++ b/code/modules/power/fusion/core/core_field.dm @@ -313,7 +313,7 @@ radiation += plasma_temperature/2 plasma_temperature = 0 - radiation_repository.radiate(src, radiation) + SSradiation.radiate(src, radiation) Radiate() /obj/effect/fusion_em_field/proc/Radiate() @@ -522,7 +522,7 @@ //Reaction radiation is fairly buggy and there's at least three procs dealing with radiation here, this is to ensure constant radiation output. /obj/effect/fusion_em_field/proc/radiation_scale() - radiation_repository.radiate(src, 2 + plasma_temperature / PLASMA_TEMP_RADIATION_DIVISIOR) + SSradiation.radiate(src, 2 + plasma_temperature / PLASMA_TEMP_RADIATION_DIVISIOR) //Somehow fixing the radiation issue managed to break this, but moving it to it's own proc seemed to have fixed it. I don't know. /obj/effect/fusion_em_field/proc/temp_dump() diff --git a/code/modules/power/fusion/fuel_assembly/fuel_assembly.dm b/code/modules/power/fusion/fuel_assembly/fuel_assembly.dm index 4149274351..73543ead92 100644 --- a/code/modules/power/fusion/fuel_assembly/fuel_assembly.dm +++ b/code/modules/power/fusion/fuel_assembly/fuel_assembly.dm @@ -46,7 +46,7 @@ return PROCESS_KILL if(istype(loc, /turf)) - radiation_repository.radiate(src, max(1,CEILING(radioactivity/30, 1))) + SSradiation.radiate(src, max(1,CEILING(radioactivity/30, 1))) /obj/item/weapon/fuel_assembly/Destroy() STOP_PROCESSING(SSobj, src) diff --git a/code/modules/power/fusion/fusion_reactions.dm b/code/modules/power/fusion/fusion_reactions.dm index 623f70bd6b..88117f8164 100644 --- a/code/modules/power/fusion/fusion_reactions.dm +++ b/code/modules/power/fusion/fusion_reactions.dm @@ -120,7 +120,7 @@ proc/get_fusion_reaction(var/p_react, var/s_react, var/m_energy) var/radiation_level = 200 // Copied from the SM for proof of concept. //Not any more --Cirra //Use the whole z proc --Leshana - radiation_repository.z_radiate(locate(1, 1, holder.z), radiation_level, 1) + SSradiation.z_radiate(locate(1, 1, holder.z), radiation_level, 1) for(var/mob/living/mob in living_mob_list) var/turf/T = get_turf(mob) diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index 5e4c2e6207..2443f3ea27 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -399,13 +399,13 @@ /obj/machinery/power/port_gen/pacman/super/UseFuel() //produces a tiny amount of radiation when in use if (prob(2*power_output)) - radiation_repository.radiate(src, 4) + SSradiation.radiate(src, 4) ..() /obj/machinery/power/port_gen/pacman/super/explode() //a nice burst of radiation var/rads = 50 + (sheets + sheet_left)*1.5 - radiation_repository.radiate(src, (max(20, rads))) + SSradiation.radiate(src, (max(20, rads))) explosion(src.loc, 3, 3, 5, 3) qdel(src) diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm index 0bac07c2dc..1dc29c7fd7 100644 --- a/code/modules/power/singularity/collector.dm +++ b/code/modules/power/singularity/collector.dm @@ -32,7 +32,7 @@ var/global/list/rad_collectors = list() if(P && active) - var/rads = radiation_repository.get_rads_at_turf(get_turf(src)) + var/rads = SSradiation.get_rads_at_turf(get_turf(src)) if(rads) receive_pulse(rads * 5) //Maths is hard diff --git a/code/modules/power/singularity/particle_accelerator/particle_smasher.dm b/code/modules/power/singularity/particle_accelerator/particle_smasher.dm index b3a1556395..921b000078 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_smasher.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_smasher.dm @@ -142,13 +142,13 @@ /obj/machinery/particle_smasher/process() if(!src.anchored) // Rapidly loses focus. if(energy) - radiation_repository.radiate(src, round(((src.energy-150)/50)*5,1)) + SSradiation.radiate(src, round(((src.energy-150)/50)*5,1)) energy = max(0, energy - 30) update_icon() return if(energy) - radiation_repository.radiate(src, round(((src.energy-150)/50)*5,1)) + SSradiation.radiate(src, round(((src.energy-150)/50)*5,1)) energy = CLAMP(energy - 5, 0, max_energy) return @@ -178,7 +178,7 @@ if(successful_craft) visible_message("\The [src] fizzles.") if(prob(33)) // Why are you blasting it after it's already done! - radiation_repository.radiate(src, 10 + round(src.energy / 60, 1)) + SSradiation.radiate(src, 10 + round(src.energy / 60, 1)) energy = max(0, energy - 30) update_icon() return diff --git a/code/modules/power/singularity/singularity.dm b/code/modules/power/singularity/singularity.dm index 3768ab9535..b75a81e1e4 100644 --- a/code/modules/power/singularity/singularity.dm +++ b/code/modules/power/singularity/singularity.dm @@ -408,7 +408,7 @@ GLOBAL_LIST_BOILERPLATE(all_singularities, /obj/singularity) if (src.energy>200) toxdamage = round(((src.energy-150)/50)*4,1) radiation = round(((src.energy-150)/50)*5,1) - radiation_repository.radiate(src, radiation) //Always radiate at max, so a decent dose of radiation is applied + SSradiation.radiate(src, radiation) //Always radiate at max, so a decent dose of radiation is applied for(var/mob/living/M in view(toxrange, src.loc)) if(M.status_flags & GODMODE) continue @@ -451,7 +451,7 @@ GLOBAL_LIST_BOILERPLATE(all_singularities, /obj/singularity) M << "You hear an uneartly ringing, then what sounds like a shrilling kettle as you are washed with a wave of heat." M << "You don't even have a moment to react as you are reduced to ashes by the intense radiation." M.dust() - radiation_repository.radiate(src, rand(energy)) + SSradiation.radiate(src, rand(energy)) return /obj/singularity/proc/pulse() diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index 10583d0d66..9e1f3f06c2 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -141,7 +141,7 @@ if(!TS) return for(var/z in GetConnectedZlevels(TS.z)) - radiation_repository.z_radiate(locate(1, 1, z), DETONATION_RADS, 1) + SSradiation.z_radiate(locate(1, 1, z), DETONATION_RADS, 1) for(var/mob/living/mob in living_mob_list) var/turf/T = get_turf(mob) if(T && (loc.z == T.z)) @@ -311,7 +311,7 @@ if(!istype(l.glasses, /obj/item/clothing/glasses/meson)) // VOREStation Edit - Only mesons can protect you! l.hallucination = max(0, min(200, l.hallucination + power * config_hallucination_power * sqrt( 1 / max(1,get_dist(l, src)) ) ) ) - radiation_repository.radiate(src, max(power * 1.5, 50) ) //Better close those shutters! + SSradiation.radiate(src, max(power * 1.5, 50) ) //Better close those shutters! power -= (power/DECAY_FACTOR)**3 //energy losses due to radiation @@ -424,7 +424,7 @@ else l.show_message("You hear an uneartly ringing and notice your skin is covered in fresh radiation burns.", 2) var/rads = 500 - radiation_repository.radiate(src, rads) + SSradiation.radiate(src, rads) /proc/supermatter_pull(var/atom/target, var/pull_range = 255, var/pull_power = STAGE_FIVE) for(var/atom/A in range(pull_range, target)) @@ -467,7 +467,7 @@ return ..() /obj/item/broken_sm/process() - radiation_repository.radiate(src, 50) + SSradiation.radiate(src, 50) /obj/item/broken_sm/Destroy() STOP_PROCESSING(SSobj, src) diff --git a/code/modules/projectiles/projectile/arc.dm b/code/modules/projectiles/projectile/arc.dm index 0c4c9f4caa..1f19dc0242 100644 --- a/code/modules/projectiles/projectile/arc.dm +++ b/code/modules/projectiles/projectile/arc.dm @@ -167,4 +167,4 @@ var/rad_power = 50 /obj/item/projectile/arc/radioactive/on_impact(turf/T) - radiation_repository.radiate(T, rad_power) + SSradiation.radiate(T, rad_power) diff --git a/code/modules/radiation/radiation.dm b/code/modules/radiation/radiation.dm new file mode 100644 index 0000000000..34bf77b46e --- /dev/null +++ b/code/modules/radiation/radiation.dm @@ -0,0 +1,59 @@ +// Describes a point source of radiation. Created either in response to a pulse of radiation, or over an irradiated atom. +// Sources will decay over time, unless something is renewing their power! +/datum/radiation_source + var/turf/source_turf // Location of the radiation source. + var/rad_power // Strength of the radiation being emitted. + var/decay = TRUE // True for automatic decay. False if owner promises to handle it (i.e. supermatter) + var/respect_maint = FALSE // True for not affecting RAD_SHIELDED areas. + var/flat = FALSE // True for power falloff with distance. + var/range // Cached maximum range, used for quick checks against mobs. + +/datum/radiation_source/Destroy() + SSradiation.sources -= src + if(SSradiation.sources_assoc[src.source_turf] == src) + SSradiation.sources_assoc -= src.source_turf + src.source_turf = null + . = ..() + +/datum/radiation_source/proc/update_rad_power(var/new_power = null) + if(new_power == null || new_power == rad_power) + return // No change + else if(new_power <= config.radiation_lower_limit) + qdel(src) // Decayed to nothing + else + rad_power = new_power + if(!flat) + range = min(round(sqrt(rad_power / config.radiation_lower_limit)), 31) // R = rad_power / dist**2 - Solve for dist + +/turf + var/cached_rad_resistance = 0 + +/turf/proc/calc_rad_resistance() + cached_rad_resistance = 0 + for(var/obj/O in src.contents) + if(O.rad_resistance) //Override + cached_rad_resistance += O.rad_resistance + + else if(O.density) //So open doors don't get counted + var/material/M = O.get_material() + if(!M) continue + cached_rad_resistance += M.weight + M.radiation_resistance + // Looks like storing the contents length is meant to be a basic check if the cache is stale due to items enter/exiting. Better than nothing so I'm leaving it as is. ~Leshana + SSradiation.resistance_cache[src] = (length(contents) + 1) + +/turf/simulated/wall/calc_rad_resistance() + SSradiation.resistance_cache[src] = (length(contents) + 1) + cached_rad_resistance = (density ? material.weight + material.radiation_resistance : 0) + +/obj + var/rad_resistance = 0 // Allow overriding rad resistance + +// If people expand the system, this may be useful. Here as a placeholder until then +/atom/proc/rad_act(var/severity) + return 1 + +/mob/living/rad_act(var/severity) + if(severity) + src.apply_effect(severity, IRRADIATE, src.getarmor(null, "rad")) + for(var/atom/I in src) + I.rad_act(severity) \ No newline at end of file diff --git a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm index 38a65a78d8..43635aba5b 100644 --- a/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm +++ b/code/modules/reagents/Chemistry-Reagents/Chemistry-Reagents-Toxins.dm @@ -965,7 +965,7 @@ datum/reagent/talum_quem/affect_blood(var/mob/living/carbon/M, var/alien, var/re metabolism = REM * 4 /datum/reagent/irradiated_nanites/affect_blood(var/mob/living/carbon/M, var/alien, var/removed) - radiation_repository.radiate(get_turf(M), 20) // Irradiate people around you. + SSradiation.radiate(get_turf(M), 20) // Irradiate people around you. M.radiation = max(M.radiation + 5 * removed, 0) // Irradiate you. Because it's inside you. /datum/reagent/neurophage_nanites diff --git a/code/modules/xenoarcheaology/effects/radiate.dm b/code/modules/xenoarcheaology/effects/radiate.dm index a083cdddbc..9ea97d6d48 100644 --- a/code/modules/xenoarcheaology/effects/radiate.dm +++ b/code/modules/xenoarcheaology/effects/radiate.dm @@ -15,10 +15,14 @@ /datum/artifact_effect/radiate/DoEffectAura() if(holder) - radiation_repository.flat_radiate(holder, radiation_amount, src.effectrange) + SSradiation.flat_radiate(holder, radiation_amount, src.effectrange) return 1 /datum/artifact_effect/radiate/DoEffectPulse() if(holder) +<<<<<<< HEAD radiation_repository.radiate(holder, ((radiation_amount * 3) * (sqrt(src.effectrange)))) //Need to get feedback on this //VOREStation Edit - Was too crazy-strong. +======= + SSradiation.radiate(holder, ((radiation_amount * 25) * (sqrt(src.effectrange)))) //Need to get feedback on this +>>>>>>> b193761... Merge pull request #6471 from Novacat/nova-runtimes return 1 diff --git a/code/modules/xenoarcheaology/tools/geosample_scanner.dm b/code/modules/xenoarcheaology/tools/geosample_scanner.dm index b97a34e48f..7f266f454e 100644 --- a/code/modules/xenoarcheaology/tools/geosample_scanner.dm +++ b/code/modules/xenoarcheaology/tools/geosample_scanner.dm @@ -198,7 +198,7 @@ radiation = rand() * 15 + 85 if(!rad_shield) //irradiate nearby mobs - radiation_repository.radiate(src, radiation / 25) + SSradiation.radiate(src, radiation / 25) else t_left_radspike = pick(10,15,25) diff --git a/vorestation.dme b/vorestation.dme index 1d48fc0012..6b611ea39d 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -215,7 +215,11 @@ #include "code\controllers\Processes\alarm.dm" #include "code\controllers\Processes\emergencyShuttle.dm" #include "code\controllers\Processes\game_master.dm" +<<<<<<< HEAD:vorestation.dme #include "code\controllers\Processes\radiation.dm" +======= +#include "code\controllers\Processes\mob.dm" +>>>>>>> b193761... Merge pull request #6471 from Novacat/nova-runtimes:polaris.dme #include "code\controllers\Processes\supply.dm" #include "code\controllers\Processes\ticker.dm" #include "code\controllers\ProcessScheduler\core\process.dm" @@ -240,6 +244,7 @@ #include "code\controllers\subsystems\overlays.dm" #include "code\controllers\subsystems\persist_vr.dm" #include "code\controllers\subsystems\planets.dm" +#include "code\controllers\subsystems\radiation.dm" #include "code\controllers\subsystems\shuttles.dm" #include "code\controllers\subsystems\sun.dm" #include "code\controllers\subsystems\time_track.dm" @@ -355,7 +360,6 @@ #include "code\datums\repositories\cameras.dm" #include "code\datums\repositories\crew.dm" #include "code\datums\repositories\decls.dm" -#include "code\datums\repositories\radiation.dm" #include "code\datums\repositories\repository.dm" #include "code\datums\repositories\unique.dm" #include "code\datums\supplypacks\atmospherics.dm" @@ -2865,6 +2869,7 @@ #include "code\modules\projectiles\targeting\targeting_mob.dm" #include "code\modules\projectiles\targeting\targeting_overlay.dm" #include "code\modules\projectiles\targeting\targeting_triggers.dm" +#include "code\modules\radiation\radiation.dm" #include "code\modules\random_map\_random_map_setup.dm" #include "code\modules\random_map\random_map.dm" #include "code\modules\random_map\random_map_verbs.dm" From cd34901747cb59f96dfa7a1a2dab78d9e75f958e Mon Sep 17 00:00:00 2001 From: Atermonera Date: Sat, 5 Oct 2019 23:33:08 -0800 Subject: [PATCH 58/69] Merge pull request #6474 from Cerebulon/newsoct19 June-October News Update --- code/modules/lore_codex/news_data/main.dm | 133 +++++++++++++++++++++- 1 file changed, 132 insertions(+), 1 deletion(-) diff --git a/code/modules/lore_codex/news_data/main.dm b/code/modules/lore_codex/news_data/main.dm index a2f5f43043..277c38e175 100644 --- a/code/modules/lore_codex/news_data/main.dm +++ b/code/modules/lore_codex/news_data/main.dm @@ -4,6 +4,19 @@ region. Each is labeled by date of publication and title. This list is self-updating, and from time to time the publisher will push new \ articles. You are encouraged to check back frequently." children = list( + /datum/lore/codex/page/article66, + /datum/lore/codex/page/article65, + /datum/lore/codex/page/article64, + /datum/lore/codex/page/article63, + /datum/lore/codex/page/article62, + /datum/lore/codex/page/article61, + /datum/lore/codex/page/article60, + /datum/lore/codex/page/article59, + /datum/lore/codex/page/article58, + /datum/lore/codex/page/article57, + /datum/lore/codex/page/article56, + /datum/lore/codex/page/article55, + /datum/lore/codex/page/article54, /datum/lore/codex/page/article53, /datum/lore/codex/page/article52, /datum/lore/codex/page/article51, @@ -650,4 +663,122 @@

\ Candidate Freya Singh, a career investment banker, spent much of today's debate advocating for reduced safety regulations and the apparent overturning of the Five Points, raising eyebrows across the system. Singh's office claims that her statements were 'a joke', but we do not feel that this is a laughing matter.\

\ - In related news, Shadow Coalition candidate Phaedrus remains under a profanity filter 'house arrest' for the remainder of the election." \ No newline at end of file + In related news, Shadow Coalition candidate Phaedrus remains under a profanity filter 'house arrest' for the remainder of the election." + +/datum/lore/codex/page/article54 + name = "06/28/63 - Vir Finalizes Dates for Election Voting" + data = "The Vir Governmental Authority has confirmed that voting for Vir's governorship and Colonial Assembly seats will take place on the 29th and 30th of June, with an additional voting period set for Wednesday the 3rd of July to allow for out-of-system and full-time weekend employees to cast their votes. No exit poll information will be released until the final votes have been cast, and final results are expected to be announced within another week.\ +

\ + According to a Oculum poll, Lusia Hainirsdottir is expected to comfortably take a seat, though the certainty of her governor position is not hard set. Candidates Sao, Singh and Jorg are trailing not far behind, but will all have to make good showings this weekend if they hope for electoral success. In an unexpected surge among minority species, the Shadow Coalition's Tajaran candidate Kurah Zarshir is leading the polls in certain outlying and orbital communities.\ +

\ + Not sure how to vote, if you can vote, or who to vote for? Check out the official election website at your-choice-vir.virgov.xo.vr" + +/datum/lore/codex/page/article55 + name = "06/29/63 - Morpheus Cyberkinetics To Split Assets" + data = "The Morpheus Cyberkenetics Corporation is to split into two distinct entities operating under a single board of trustees, in light of their Almach branch's apparent involvement in the ongoing war after last month's 'unintentional' corporate drone strikes. Citing 'Severe communications disruptions' between its operations and assets on either side of the cordon since it was put in place last year, the SolGov-side corporation is to become 'Morpheus Sol', retaining most assets and current corporate headquarters, and its Almach counterpart 'Morpheus Shelf', which is to be based out of the administration station MAS Sophia Jr., located in the El system.'\ +

\ + The principle victim of the Aetolian coup, Nanotrasen, has seen most of their considerable Almachi investment nationalized by the secessionist government, as has Xion and other major Almachi organizations. Most surviving corporate exclaves have been effectively written off by their parent company for the duration of the conflict, due to the severe difficulties effectively conducting trade across the militarized border. Before today, the sole exception was Morpheus, whose involvement in the secession prevented any seizing of their assets. It seems, however, that even the sardonic positronic corporation is not immune to the difficulties of doing business in the Almach Rim region.\ +

\ + Member of the Board Chock Full of Sardines introduced the proposal by saying, 'Our goal here is not being shot. Together with leading economic scientists, we've devised a scheme that will allow us to be shot for illegal smuggling almost ninety percent less often.' They defended the confusing and offensive choice of name in 'Sophia Jr.', seemingly intended as an insult to longstanding rival Sophia, by claiming, 'It's absolutely hilarious.'" + +/datum/lore/codex/page/article56 + name = "06/30/63 - Almach Leak Confirms 'Super-weapon' in Whythe" + data = "Solar Confederate Government Intelligence has this afternoon confirmed the presence of a so-called 'Super-weapon' in the distant Whythe system, after an apparent intelligence leak was posted to the exonet in the early hours of this morning. According to a spokesperson for the Solar Fleet, the public were not made aware of the super-weapon as the military 'have no reason to believe that the weapon poses any threat to civilian targets within SolGov space at this time, and there is no reason to cause panic with what amounts to the announcement of an Almachi propaganda tool intended to sow discord with bold threats of overwhelming power. This morning's leak achieves nothing but serving the Association's schemes. Keeping this so-called super-weapon - and I hesitate to use that term - a secret seems to have been last on their list of priorities.'\ +

\ + According to the intelligence documents released this morning and widely spread within minutes of upload, the 'super-weapon' is a colossal space-bound structure equipped with 'newly developed bluespace technology', though its exact purpose or capabilities have not been confirmed by either side.\ +

\ + Additionally, the Solar Fleet has announced that an unnamed individual within the intelligence service has been placed under arrest in connection with the leak." + +/datum/lore/codex/page/article57 + name = "07/04/63 - Exit Polls Suggest Shadow Coalition Win in Vir" + data = "According to the first exit poll data released after Vir Gubernatorial voting closed at midnight, local favourite the Shadow Coalition is expected to win at least two representative seats, with incumbent representative Lusia Hainirsdottir taking a comfortable lead.\ +

\ + Final results are not expected to be tallied until Saturday morning, but other frontrunners include the Icarus Front's Vani Jee and Mehmet Sao - running on drastically different platforms - alongside the Shadow Coalition's Selma Jorg. In an unexpected turn, sole Tajaran Candidate Kurah Zarshir of the Shadow Coalition has seen an immense surge in popularity among minority and more xenophilic voters. Could Vir be seeing its first Tajaran Representative? Experts say: 'Perhaps.'" + +/datum/lore/codex/page/article58 + name = "07/07/63 - Vir Election Results" + data = "The results of the 2563 Vir Gubernatorial Elections are as follows:\ +
\ + Governor of Vir: Lusia Hainirsdottir (Shadow Coalition)\ +
\ + Vir Colonial Assembly Representative: Vani Jee (Icarus Front)\ +
\ + Vir Colonial Assembly Representative: Selma Jorg (Shadow Coalition)\ +
\ + Other candidates ranked: Sao (4), Zarshir (5), Keldow (6), Singh (7), Moravec (8), Phaedrus (9), Lye (10), Savik (11), Square (12), Wekstrom (13)\ +

\ + Voter turnout: 30,928,287 (63%)\ +

\ + The greatest upset this election cycle has been the unexpected popularity of 'alien rights' candidate Kurah Zarshir, who was eliminated in favour of Mehmet Sao (Icarus Front) in the 8th round of vote transfers by a margin of just 30 votes, or 0.000096%, prompting a rigourous recount process to confirm the result. A difference at this stage could have resulted in a significantly different final line-up.\ +

\ + This year's winners showed clear advantages in the first-choice votes, each gaining at least 15% of the popular vote before any transfers were calculated, though Sao made significant gains in the final count, falling only a few percent short of the Jorg's 3rd place position. By far the least popular candidate this cycle was Hal Wekstrom of the Sol Economic Organization, who received just 0.8% of the first-choice vote and was immediately eliminated. Also of note were Phaedrus, Apogee Lye and Yole Savik voters, each of whom had high (30%+) voter exhaustion rates, opting not to provide alternative choices; sending the message 'My candidate or none at all.'\ +

\ + The elected are to be sworn in at a ceremony on Luna in two weeks time." + +/datum/lore/codex/page/article59 + name = "07/30/63 - Solar Fleet Data Breach" + data = "Last night, a number of files were spread on the Monsters From Beyond's exolife forums allegedly depicting the boarding and eventual scuttling of the SCG-TV Mariner's Cage during a voyage close to the Gavel system on the 12th of June, before the SCG had officially released any information regarding the event. The files contained undisclosed documents from the Solar Fleet investigation, some of which appear to contain audio and video recordings of the final moments of the crew before the vessel's bluespace drive was detonated. Due to the graphic violence depicted and their classified nature, we will not be sharing the files, however as a matter of public record we will explain the events recorded therein. The following description may be unsuitable for sensitive readers.\ +

\ + First, the navigation crew detects a drive signature on an apparent intercept course with their own, originating from across the SCG-Almachi border. It was not a large vessel, and is assumed to be some form of autonomous drone. The crew disregards it as a low level threat, instead continuing on their trajectory, leaving only the standard point defense armament locked on. This proved to be a lethal mistake, as the vessel appeared and near-instantly began accelerating toward the Mariner's Cage, before impacting the fore weapons array. The recording is cut, due to what was likely a power surge, however upon reconnection, reports indicate no damage related to any known warhead was apparent, aside from the initial impactor. The crew mistakenly assumes it to be a failed suicide drone strike, and dispatches minimal security personnel, and a large complement of response engineers.\ +

\ + Approximately thirty minutes after the response teams are dispatched to the impact zone, the teams begin losing contact, with those first arriving being the first to disappear. When the security responders intercept the path of communications blackouts, they are met with the blades of multiple Aetolian shock troopers. Two appear to be made from a 'living steel', with each limb taking the form of 'jagged cleavers' as one radio recording states, and three more of 'indeterminable classification'. The ship entered a red alert state, and moments later, the small contingent of marines aboard the supply vessel were dispatched to deal with the threat. All five members of the enemy boarding party were able to be rendered inert through sustained fire, though not without Sol casualties.\ +

\ + According to the next recordings, approximately three hours after the incident, the vessel received orders to interrogate the boarding 'Aetotheans'. The two noted to appear as the officers of the squad were rejuvenated within sealed interrogation chambers reinforced with supplies on hand, apparently capable of stopping sustained fire from multiple energy weapons. The first individual was a 'sapphire' according to information from NanoTrasen correspondants. It refused to speak in Galactic Common, and instead utilized an unknown frequency of biological transmission, and internal charge shifts. The individual was moved to a more permanent cell within the vessel's brig for transport, and the second was rejuvenated. Only the first half of the interrogation, which lasted approximately two and a half minutes, compared to four hours for the first, was recovered. The individual is rejuvenated, and is engaged in discussion with the interrogating officer when it suddenly stands, emits what is described as a 'wail', and detonates, destroying the transmitting camera, and presumably killing the officers involved in direct interrogation.\ +

\ + Final recordings originate from the ship's onboard A.I. housing, which was involved in continual discussions with presumably the 'sapphire', as it enacted the vessel's scuttling. It is unknown whether or not the individual was somehow capable of restoring the other individuals that fell in combat in order to free itself, or if it was able to incapacitate the transporting officers, and command crew of the vessel alone.\ +

\ + The Solar Fleet has expressed 'regret' that the files were leaked in their complete form, and have assured the public that an official report was due for release in the coming weeks. Concerns of 'Aetothean' attacks on civilian targets have been dismissed as 'improbable', but have affirmed that 'the threat is being taken very seriously'." + +/datum/lore/codex/page/article60 + name = "08/03/63 - Hainirsdottir Sworn In As Governor of Vir" + data = "Following a short transitionary period for the previous administration, this year's election victors have been sworn in at an official ceremony at the Colonial Assembly Hall on Luna. During her welcoming address, Governor Hainirsdottir reaffirmed her plans for the future of the system, promising a 'Bright future for Vir as a hub for medical science.', and plans for an incentivisation program for the removal of invasive extra-terrestrial species that have long plagued the region - in particular the aggressive spiders that have become synonymous with certain regions of the Sivian wilderness.\ +

\ + Additionally, the newly elected representatives announced expected, but none-the-less significant changes to the administrative staff of the system. Notable figures include two defeated election hopefuls: Kurah Zarshir has been selected as the Shadow Coalition's Culture Secretary for the system, while Mehmet Sao has been brought aboard by the Representative Vani Jee as the Vir Icarus Front's Internal Security Advisor. It is expected that the former candidates may use their positions to further certain goals from their own campaigns, but under the watchful eyes of their perhaps more moderate superiors." + +/datum/lore/codex/page/article61 + name = "08/04/63 - Former Independence Candidate Found Dead" + data = "It has been confirmed by a spokesperson for the Sivian Independence Front that a body found by hikers last week in the Ingolfskynn Mountains, approximately 200 miles northeast of New Reykjavik, belonged to party chair Yole Savik.\ +

\ + Savik, 68 - who had run for Vir Representative in the recent election - had not been seen since the 14th of July, shortly after the results were announced. Party officials claim that Mr. Savik frequently made 'off the grid' trips into the Sivian wilderness and his absence had not been treated as suspicious until investigators approached them to confirm the identity of the body. According to police, though Yole was publicly known as a 'seasoned frontiersman', Savik had succumbed to exposure at least two weeks prior to the grisly discovery. His death is not being treated as suspicious." + +/datum/lore/codex/page/article62 + name = "08/07/63 - Almach Pirate Threat Vanishes - Analysts Baffled" + data = "Skrellian Xe'qua pirates operating in the far reaches of the Almach Association since the onset of hostilities last year, have inexplicably gone dark. The pirates, who were under close SolGov surveillance to monitor their impact on Almachi shipping, have drastically dropped in activity and numbers over the last month according to an official report released by the Solar Fleet today. The Fleet is unable to account for the cease in activity, which has now reached levels even lower than their pre-war baseline, as there have been no reports of Almach military operations in the area, nor any signs of decisive battle on the Almach border with pirate space.\ +

\ + The drop in activity roughly coincides with the leaked information on an Almach 'Super-weapon' in Whythe, though military sources do not believe that the weapon has been deployed in any capacity at this time. According to Hasan Drust, an expert on Skrellian foreign policy, the 'only feasible explanation (is) major anti-piracy action undertaken by the Skrellian Far Kingdoms', who occupy the space beyond the Xe'qua pirates' known range. The reasoning behind this action now, against pirates who have historically only targeted human space is not entirely clear, though Drust suggests that it may simply be a coincidence as pirates would be a 'trivial issue' for Far Kingdom military might." + +/datum/lore/codex/page/article63 + name = "09/02/63 - Shock Almach Attack Routs Relan Front!" + data = "Following close to a month of reduced Almach activity, enemy Militia forces have today launched a staggering attack on Sol frontline forces in the region of the Relan system, disabling several SCG warships and forcing a major tactical retreat to Saint Columbia. The scale of this attack by Almach forces is unprecedented, but seems to be the result of the Association consolidating manpower previously dedicated to anti-piracy patrols on the far side of their territory. It is believed these vessels have become freed up due to the apparent but as of yet unconfirmed annihilation of Xe'qua criminal flotillas by Skrellian Far Kingdom police action.\ +

\ + The Solar fleet had been in position to blockade the Relan system in the hopes of forcing the Free Relan Federation to surrender and withdraw from the Association, but was unprepared for what has been described as an 'all-out attack' on their positions, which left the vessels SCG-D Liu Bei, SCG-D Wodehouse, SCG-TV Ceylon Hartal and SCG-TV Apoxpalon disabled and unable to retreat with the bulk of our forces, as well as inflicting severe damage to several other craft. According to initial reports, the strikes on many of the afflicted ships closely resembled scenes from the controversial 'Aetothean shock attacks' on the SCG-TV Mariner's Cage this June, which saw the ruthless deployment of gene-altered Promethean 'super-soldiers' by the Almach Association.\ +

\ + Fleet Admiral Ripon Latt, commanding officer of the assailed fleet, has confirmed that reinforcements are underway and the retreat 'shall not be a significant setback in the war effort', especially assuring citizens of the embattled Saint Columbia system and its neighbours that there is no cause for alarm and civilians have yet to be targeted.\ +

\ + The fates of the four missing ships have not been confirmed, and though the Fleet has not yet made an official statement, Sol casualties are cautiously estimated to be in the hundreds." + +/datum/lore/codex/page/article64 + name = "09/23/63 - Fleet Refuses Inquiry Into Relan Losses" + data = "The SCG Fleet has refused to heed widespread calls from critics to launch an investigation into the heavy losses sustained by our forces in a major Almach attack early this month, citing that an investigation at this time would 'undermine the ongoing efforts of our troops in battles to come'.\ +

\ + The attack, which took place on the 2nd of September and at current count resulted in the loss of a staggering 1281 Sol lives, quickly drew criticism from experts for 'the total unpreparedness' of the fleet despite their public claims that all vessels were 'battle ready and prepared for a coming offensive.'. The specifics of the fleets apparent failings have been the focus of much speculation in the intervening weeks, with the blame placed on everything from a critically inexperienced officer core, to ongoing redeployments to and from the recently expanded Hegemony border.\ +

\ + Admiral Latt has condemned critics, stating that 'the last thing our brave troops need right now is murmuring from people who don't know the first thing what they're talking about. Their actions in following orders to fall back to the border have been nothing but commendable, and all effort was made to minimise loss of life. The fleet is undergoing reorganization at this time, and is in a better position than ever.'" + +/datum/lore/codex/page/article65 + name = "09/27/63 - Almach Bypass Saint Columbia In Brazen Gavel Attack!" + data = "Almach Association fleet forces entered the Gavel system this afternoon, reportedly having evaded interdicting Sol forces from Saint Columbia in an apparent effort to skirt the range of the MJOLNIR weapon system in Saint Columbia and cut off that system from major shipping routes. Current reports from the system capital in New Xanadu are that the majority of outlying civilian stations have surrendered to invading forces with only minor incident, but that skirmishes with local defence forces - including Sol Fleet detachments - are ongoing, and it is too early to remark on the outcome of the battle. Official military reports are scarce at this time, but the Fleet in Saint Columbia is 'on the move and ready to repel the invaders'.\ +

\ + Accounts from the system's edge describe Almach forces 'firing indiscriminately' on anti-piracy emplacements including those mounted to the ILS Thurston, a Greyson Manufactories collection station with eight crew, killing all hands.\ +

\ + Open fighting in the Gavel system marks the furthest Almach encroachment on Sol territory to date. The system, which is a stone's throw from the Oasis and Vir systems is best known for the destruction of the moonlet 'Requiem' by a rogue nanoswarm in 2289, which was successfully neutralized by government forces, and boasts only a small population relative to its neighbors." + +/datum/lore/codex/page/article66 + name = "10/01/63 - 'Judgement Day' As Gavel Falls!" + data = "The government of New Xanadu has surrendered to Association invaders following a disastrous relief effort by the Solar Fleet, whose interdiction vessels are believed to have been captured by the invading force. The manoeuvre leaves the bulk of the Sol fleet isolated in the Saint Columbia system - though a breakout is expected - and has led to widespread outrage in the Colonial Assembly. Critics of the war have damned the Fleet for their 'inability to fight a civilian rabble, gene-modded or otherwise' and renewed calls for a peaceful arrangement between the Solar Confederate Government and Association.\ +

\ + ISA-5, current spokesperson for the Shadow Coalition has forwarded a motion today to resume discussions with Almachi heads of state, just hours after news of Gavel's surrender broke. The proposal which has yet to gain widespread traction, would call for a new ceasefire, and ISA-5 has stated they 'hope that a new agreement can be made to end the senseless loss of life over the particulars of a foreign government's right to autonomy.'.\ +

\ + Executive Sifat Unar of the Emergent Intelligence Oversight has voiced immediate concern over the motion, criticising the use of 'foreign government' in reference to Almach; 'Our Fleet has suffered a few defeats, but this conflict goes deeper than mere lasers and shells and to surrender to torturers, mind-hackers, and Machiavellian machines at this stage would be insanity. To allow a seccessionist state, particularly one so unabashedly guilty of crimes against humanity that go far beyond even our modern definitions of 'Human Sanctity', to exist unquestioned a stone's throw from some of our most precious member states, would be a failing not only of this government, but of humanity that would echo through history like a great shameful dirge for all to hear.'\ +

\ + A communications blackout has been instated on the Gavel system by the Almach Militia, though earlier reports indicate continued strikes on numerous civilian colonies who were unwilling, or unable to deactivate their automated defence systems prior to the invaders arrival." \ No newline at end of file From 5a3398daec0e039c25d7f55100bd6492d4284ffc Mon Sep 17 00:00:00 2001 From: Atermonera Date: Sat, 5 Oct 2019 23:32:41 -0800 Subject: [PATCH 60/69] Merge pull request #6473 from Woodratt/09272019_weightbodytype Port weight/body types to traits --- .../preference_setup/traits/trait_defines.dm | 52 +++++++++---- code/modules/mob/_modifiers/traits.dm | 76 ++++++++++++++----- html/changelogs/woodrat - mobsizeport.yml | 37 +++++++++ 3 files changed, 128 insertions(+), 37 deletions(-) create mode 100644 html/changelogs/woodrat - mobsizeport.yml diff --git a/code/modules/client/preference_setup/traits/trait_defines.dm b/code/modules/client/preference_setup/traits/trait_defines.dm index aa53392f2c..8ad3ff9253 100644 --- a/code/modules/client/preference_setup/traits/trait_defines.dm +++ b/code/modules/client/preference_setup/traits/trait_defines.dm @@ -72,25 +72,45 @@ Regardless, you find it quite difficult to land shots where you wanted them to go." modifier_type = /datum/modifier/trait/inaccurate -/datum/trait/modifier/physical/smaller - name = "Smaller" - modifier_type = /datum/modifier/trait/smaller - mutually_exclusive = list(/datum/trait/modifier/physical/small, /datum/trait/modifier/physical/large, /datum/trait/modifier/physical/larger) +/datum/trait/modifier/physical/shorter + name = "Shorter" + modifier_type = /datum/modifier/trait/shorter + mutually_exclusive = list(/datum/trait/modifier/physical/short, /datum/trait/modifier/physical/tall, /datum/trait/modifier/physical/taller) -/datum/trait/modifier/physical/small - name = "Small" - modifier_type = /datum/modifier/trait/small - mutually_exclusive = list(/datum/trait/modifier/physical/smaller, /datum/trait/modifier/physical/large, /datum/trait/modifier/physical/larger) +/datum/trait/modifier/physical/short + name = "Short" + modifier_type = /datum/modifier/trait/short + mutually_exclusive = list(/datum/trait/modifier/physical/shorter, /datum/trait/modifier/physical/tall, /datum/trait/modifier/physical/taller) -/datum/trait/modifier/physical/large - name = "Large" - modifier_type = /datum/modifier/trait/large - mutually_exclusive = list(/datum/trait/modifier/physical/smaller, /datum/trait/modifier/physical/small, /datum/trait/modifier/physical/larger) +/datum/trait/modifier/physical/tall + name = "Tall" + modifier_type = /datum/modifier/trait/tall + mutually_exclusive = list(/datum/trait/modifier/physical/shorter, /datum/trait/modifier/physical/short, /datum/trait/modifier/physical/taller) -/datum/trait/modifier/physical/larger - name = "Larger" - modifier_type = /datum/modifier/trait/larger - mutually_exclusive = list(/datum/trait/modifier/physical/smaller, /datum/trait/modifier/physical/small, /datum/trait/modifier/physical/large) +/datum/trait/modifier/physical/taller + name = "Taller" + modifier_type = /datum/modifier/trait/taller + mutually_exclusive = list(/datum/trait/modifier/physical/shorter, /datum/trait/modifier/physical/short, /datum/trait/modifier/physical/tall) + +/datum/trait/modifier/physical/thin + name = "Thin" + modifier_type = /datum/modifier/trait/thin + mutually_exclusive = list(/datum/trait/modifier/physical/fat, /datum/trait/modifier/physical/obese, /datum/trait/modifier/physical/thinner) + +/datum/trait/modifier/physical/thinner + name = "Rail Thin" + modifier_type = /datum/modifier/trait/thinner + mutually_exclusive = list(/datum/trait/modifier/physical/fat, /datum/trait/modifier/physical/obese, /datum/trait/modifier/physical/thin) + +/datum/trait/modifier/physical/fat + name = "Broad-Shouldered" + modifier_type = /datum/modifier/trait/fat + mutually_exclusive = list(/datum/trait/modifier/physical/thin, /datum/trait/modifier/physical/obese, /datum/trait/modifier/physical/thinner) + +/datum/trait/modifier/physical/obese + name = "Heavily Built" + modifier_type = /datum/modifier/trait/obese + mutually_exclusive = list(/datum/trait/modifier/physical/fat, /datum/trait/modifier/physical/thinner, /datum/trait/modifier/physical/thin) /datum/trait/modifier/physical/colorblind_protanopia name = "Protanopia" diff --git a/code/modules/mob/_modifiers/traits.dm b/code/modules/mob/_modifiers/traits.dm index 200f8eabfb..b15ece941e 100644 --- a/code/modules/mob/_modifiers/traits.dm +++ b/code/modules/mob/_modifiers/traits.dm @@ -60,33 +60,67 @@ metabolism_percent = 0.5 incoming_healing_percent = 0.6 -/datum/modifier/trait/larger - name = "Larger" - desc = "Your body is larger than average." +/datum/modifier/trait/taller + name = "Taller" + desc = "Your body is taller than average." + icon_scale_x_percent = 1 + icon_scale_y_percent = 1.09 - icon_scale_x_percent = 1.1 - icon_scale_y_percent = 1.1 - -/datum/modifier/trait/large - name = "Large" - desc = "Your body is a bit larger than average." - - icon_scale_x_percent = 1.05 +/datum/modifier/trait/tall + name = "Tall" + desc = "Your body is a bit taller than average." + icon_scale_x_percent = 1 icon_scale_y_percent = 1.05 -/datum/modifier/trait/small - name = "Small" - desc = "Your body is a bit smaller than average." - - icon_scale_x_percent = 0.95 +/datum/modifier/trait/short + name = "Short" + desc = "Your body is a bit shorter than average." + icon_scale_x_percent = 1 icon_scale_y_percent = 0.95 -/datum/modifier/trait/smaller - name = "Smaller" - desc = "Your body is smaller than average." - icon_scale_x_percent = 0.9 - icon_scale_y_percent = 0.9 +/datum/modifier/trait/shorter + name = "Shorter" + desc = "You are shorter than average." + icon_scale_x_percent = 1 + icon_scale_y_percent = 0.915 + +/datum/modifier/trait/fat + name = "Overweight" + desc = "You are heavier than average." + + metabolism_percent = 1.2 + icon_scale_x_percent = 1.054 + icon_scale_y_percent = 1 + slowdown = 1.1 + max_health_percent = 1.05 + +/datum/modifier/trait/obese + name = "Obese" + desc = "You are much heavier than average." + metabolism_percent = 1.4 + icon_scale_x_percent = 1.095 + icon_scale_y_percent = 1 + slowdown = 1.2 + max_health_percent = 1.10 + +/datum/modifier/trait/thin + name = "Thin" + desc = "You are skinnier than average." + metabolism_percent = 0.8 + icon_scale_x_percent = 0.945 + icon_scale_y_percent = 1 + max_health_percent = 0.95 + outgoing_melee_damage_percent = 0.95 + +/datum/modifier/trait/thinner + name = "Very Thin" + desc = "You are much skinnier than average." + metabolism_percent = 0.6 + icon_scale_x_percent = 0.905 + icon_scale_y_percent = 1 + max_health_percent = 0.90 + outgoing_melee_damage_percent = 0.9 /datum/modifier/trait/colorblind_protanopia name = "Protanopia" diff --git a/html/changelogs/woodrat - mobsizeport.yml b/html/changelogs/woodrat - mobsizeport.yml new file mode 100644 index 0000000000..47acc87c40 --- /dev/null +++ b/html/changelogs/woodrat - mobsizeport.yml @@ -0,0 +1,37 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Woodrat + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscdel: "Removed the old size modifier traits for mobs." + - rscadd: "Port and tweak of the size modifiers from World Server for mobs." \ No newline at end of file From dade2aa80b5867dd597139f1ad3f488839ac860c Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 6 Oct 2019 13:12:11 -0400 Subject: [PATCH 62/69] Conflict Resolution --- code/controllers/subsystems/radiation.dm | 4 +- code/datums/repositories/radiation.dm | 138 ------------------ .../effects/map_effects/radiation_emitter.dm | 23 +-- code/modules/planet/sif.dm | 4 - code/modules/planet/virgo3b_vr.dm | 2 +- code/modules/radiation/radiation.dm | 2 +- .../xenoarcheaology/effects/radiate.dm | 6 +- vorestation.dme | 3 - 8 files changed, 6 insertions(+), 176 deletions(-) delete mode 100644 code/datums/repositories/radiation.dm diff --git a/code/controllers/subsystems/radiation.dm b/code/controllers/subsystems/radiation.dm index 9a882e7f68..babc2c7d5d 100644 --- a/code/controllers/subsystems/radiation.dm +++ b/code/controllers/subsystems/radiation.dm @@ -116,7 +116,7 @@ SUBSYSTEM_DEF(radiation) add_source(S) // Sets the radiation in a range to a constant value. -/datum/controller/subsystem/radiation/proc/flat_radiate(source, power, range, var/respect_maint = FALSE) +/datum/controller/subsystem/radiation/proc/flat_radiate(source, power, range, var/respect_maint = TRUE) //VOREStation edit; Respect shielded areas by default please. if(!(source && power && range)) return var/datum/radiation_source/S = new() @@ -128,7 +128,7 @@ SUBSYSTEM_DEF(radiation) add_source(S) // Irradiates a full Z-level. Hacky way of doing it, but not too expensive. -/datum/controller/subsystem/radiation/proc/z_radiate(var/atom/source, power, var/respect_maint = FALSE) +/datum/controller/subsystem/radiation/proc/z_radiate(var/atom/source, power, var/respect_maint = TRUE) //VOREStation edit; Respect shielded areas by default please. if(!(power && source)) return var/turf/epicentre = locate(round(world.maxx / 2), round(world.maxy / 2), source.z) diff --git a/code/datums/repositories/radiation.dm b/code/datums/repositories/radiation.dm deleted file mode 100644 index 4525032e20..0000000000 --- a/code/datums/repositories/radiation.dm +++ /dev/null @@ -1,138 +0,0 @@ -var/global/repository/radiation/radiation_repository = new() - -/repository/radiation - var/list/sources = list() // all radiation source datums - var/list/sources_assoc = list() // Sources indexed by turf for de-duplication. - var/list/resistance_cache = list() // Cache of turf's radiation resistance. - -// Describes a point source of radiation. Created either in response to a pulse of radiation, or over an irradiated atom. -// Sources will decay over time, unless something is renewing their power! -/datum/radiation_source - var/turf/source_turf // Location of the radiation source. - var/rad_power // Strength of the radiation being emitted. - var/decay = TRUE // True for automatic decay. False if owner promises to handle it (i.e. supermatter) - var/respect_maint = FALSE // True for not affecting RAD_SHIELDED areas. - var/flat = FALSE // True for power falloff with distance. - var/range // Cached maximum range, used for quick checks against mobs. - -/datum/radiation_source/Destroy() - radiation_repository.sources -= src - if(radiation_repository.sources_assoc[src.source_turf] == src) - radiation_repository.sources_assoc -= src.source_turf - src.source_turf = null - . = ..() - -/datum/radiation_source/proc/update_rad_power(var/new_power = null) - if(new_power == null || new_power == rad_power) - return // No change - else if(new_power <= 0) - qdel(src) // Decayed to nothing - else - rad_power = new_power - if(!flat) - range = min(round(sqrt(rad_power / config.radiation_lower_limit)), 31) // R = rad_power / dist**2 - Solve for dist - -// Ray trace from all active radiation sources to T and return the strongest effect. -/repository/radiation/proc/get_rads_at_turf(var/turf/T) - if(!istype(T)) return 0 - - . = 0 - for(var/value in sources) - var/datum/radiation_source/source = value - if(source.rad_power < .) - continue // Already being affected by a stronger source - if(source.source_turf.z != T.z) - continue // Radiation is not multi-z - var/dist = get_dist(source.source_turf, T) - if(dist > source.range) - continue // Too far to possibly affect - if(source.respect_maint) - var/atom/A = T.loc - if(A.flags & RAD_SHIELDED) - continue // In shielded area - if(source.flat) - . = max(., source.rad_power) - continue // No need to ray trace for flat field - - // Okay, now ray trace to find resistence! - var/turf/origin = source.source_turf - var/working = source.rad_power - while(origin != T) - origin = get_step_towards(origin, T) //Raytracing - if(!(origin in resistance_cache)) //Only get the resistance if we don't already know it. - origin.calc_rad_resistance() - working = max((working - (origin.cached_rad_resistance * config.radiation_resistance_multiplier)), 0) - if(working <= .) - break // Already affected by a stronger source (or its zero...) - . = max((working * (1 / (dist ** 2))), .) //Butchered version of the inverse square law. Works for this purpose - -// Add a radiation source instance to the repository. It will override any existing source on the same turf. -/repository/radiation/proc/add_source(var/datum/radiation_source/S) - if(!isturf(S.source_turf)) - return - var/datum/radiation_source/existing = sources_assoc[S.source_turf] - if(existing) - qdel(existing) - sources += S - sources_assoc[S.source_turf] = S - -// Creates a temporary radiation source that will decay -/repository/radiation/proc/radiate(source, power) //Sends out a radiation pulse, taking walls into account - if(!(source && power)) //Sanity checking - return - var/datum/radiation_source/S = new() - S.source_turf = get_turf(source) - S.update_rad_power(power) - add_source(S) - -// Sets the radiation in a range to a constant value. -/repository/radiation/proc/flat_radiate(source, power, range, var/respect_maint = TRUE) //VOREStation edit; Respect shielded areas by default please. - if(!(source && power && range)) - return - var/datum/radiation_source/S = new() - S.flat = TRUE - S.range = range - S.respect_maint = respect_maint - S.source_turf = get_turf(source) - S.update_rad_power(power) - add_source(S) - -// Irradiates a full Z-level. Hacky way of doing it, but not too expensive. -/repository/radiation/proc/z_radiate(var/atom/source, power, var/respect_maint = TRUE) //VOREStation edit; Respect shielded areas by default please. - if(!(power && source)) - return - var/turf/epicentre = locate(round(world.maxx / 2), round(world.maxy / 2), source.z) - flat_radiate(epicentre, power, world.maxx, respect_maint) - -/turf - var/cached_rad_resistance = 0 - -/turf/proc/calc_rad_resistance() - cached_rad_resistance = 0 - for(var/obj/O in src.contents) - if(O.rad_resistance) //Override - cached_rad_resistance += O.rad_resistance - - else if(O.density) //So open doors don't get counted - var/material/M = O.get_material() - if(!M) continue - cached_rad_resistance += M.weight + M.radiation_resistance - // Looks like storing the contents length is meant to be a basic check if the cache is stale due to items enter/exiting. Better than nothing so I'm leaving it as is. ~Leshana - radiation_repository.resistance_cache[src] = (length(contents) + 1) - -/turf/simulated/wall/calc_rad_resistance() - radiation_repository.resistance_cache[src] = (length(contents) + 1) - cached_rad_resistance = (density ? material.weight + material.radiation_resistance : 0) - -/obj - var/rad_resistance = 0 // Allow overriding rad resistance - -// If people expand the system, this may be useful. Here as a placeholder until then -/atom/proc/rad_act(var/severity) - return 1 - -/mob/living/rad_act(var/severity) - if(severity && !isbelly(loc)) //eaten mobs are made immune to radiation //VOREStation Edit Start - src.apply_effect(severity, IRRADIATE, src.getarmor(null, "rad")) - for(var/atom/I in src) - I.rad_act(severity) ///VOREStation Edit End diff --git a/code/game/objects/effects/map_effects/radiation_emitter.dm b/code/game/objects/effects/map_effects/radiation_emitter.dm index 8dadf38889..8abf946556 100644 --- a/code/game/objects/effects/map_effects/radiation_emitter.dm +++ b/code/game/objects/effects/map_effects/radiation_emitter.dm @@ -1,23 +1,3 @@ -<<<<<<< HEAD -// Constantly emites radiation from the tile it's placed on. -/obj/effect/map_effect/radiation_emitter - name = "radiation emitter" - icon_state = "radiation_emitter" - var/radiation_power = 30 // Bigger numbers means more radiation. - -/obj/effect/map_effect/radiation_emitter/Initialize() - START_PROCESSING(SSobj, src) - return ..() - -/obj/effect/map_effect/radiation_emitter/Destroy() - STOP_PROCESSING(SSobj, src) - return ..() - -/obj/effect/map_effect/radiation_emitter/process() - radiation_repository.radiate(src, radiation_power) - -/obj/effect/map_effect/radiation_emitter/strong -======= // Constantly emites radiation from the tile it's placed on. /obj/effect/map_effect/radiation_emitter name = "radiation emitter" @@ -35,6 +15,5 @@ /obj/effect/map_effect/radiation_emitter/process() SSradiation.radiate(src, radiation_power) -/obj/effect/map_effect/radiation_emitter/strong ->>>>>>> b193761... Merge pull request #6471 from Novacat/nova-runtimes +/obj/effect/map_effect/radiation_emitter/strong radiation_power = 100 \ No newline at end of file diff --git a/code/modules/planet/sif.dm b/code/modules/planet/sif.dm index 285a312520..921142812d 100644 --- a/code/modules/planet/sif.dm +++ b/code/modules/planet/sif.dm @@ -555,8 +555,4 @@ var/datum/planet/sif/planet_sif = null if(!istype(T)) return if(T.outdoors) -<<<<<<< HEAD - radiation_repository.radiate(T, rand(fallout_rad_low, fallout_rad_high)) -======= SSradiation.radiate(T, rand(fallout_rad_low, fallout_rad_high)) ->>>>>>> b193761... Merge pull request #6471 from Novacat/nova-runtimes diff --git a/code/modules/planet/virgo3b_vr.dm b/code/modules/planet/virgo3b_vr.dm index 1248fb40be..791841aca7 100644 --- a/code/modules/planet/virgo3b_vr.dm +++ b/code/modules/planet/virgo3b_vr.dm @@ -531,5 +531,5 @@ var/datum/planet/virgo3b/planet_virgo3b = null if(!istype(T)) return if(T.outdoors) - radiation_repository.radiate(T, rand(fallout_rad_low, fallout_rad_high)) + SSradiation.radiate(T, rand(fallout_rad_low, fallout_rad_high)) diff --git a/code/modules/radiation/radiation.dm b/code/modules/radiation/radiation.dm index 34bf77b46e..d913ad7cab 100644 --- a/code/modules/radiation/radiation.dm +++ b/code/modules/radiation/radiation.dm @@ -53,7 +53,7 @@ return 1 /mob/living/rad_act(var/severity) - if(severity) + if(severity && !isbelly(loc)) //eaten mobs are made immune to radiation //VOREStation Edit src.apply_effect(severity, IRRADIATE, src.getarmor(null, "rad")) for(var/atom/I in src) I.rad_act(severity) \ No newline at end of file diff --git a/code/modules/xenoarcheaology/effects/radiate.dm b/code/modules/xenoarcheaology/effects/radiate.dm index 9ea97d6d48..e38540eb04 100644 --- a/code/modules/xenoarcheaology/effects/radiate.dm +++ b/code/modules/xenoarcheaology/effects/radiate.dm @@ -20,9 +20,5 @@ /datum/artifact_effect/radiate/DoEffectPulse() if(holder) -<<<<<<< HEAD - radiation_repository.radiate(holder, ((radiation_amount * 3) * (sqrt(src.effectrange)))) //Need to get feedback on this //VOREStation Edit - Was too crazy-strong. -======= - SSradiation.radiate(holder, ((radiation_amount * 25) * (sqrt(src.effectrange)))) //Need to get feedback on this ->>>>>>> b193761... Merge pull request #6471 from Novacat/nova-runtimes + SSradiation.radiate(holder, ((radiation_amount * 3) * (sqrt(src.effectrange)))) //Need to get feedback on this //VOREStation Edit - Was too crazy-strong. return 1 diff --git a/vorestation.dme b/vorestation.dme index 6b611ea39d..064ce80e9a 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -215,11 +215,8 @@ #include "code\controllers\Processes\alarm.dm" #include "code\controllers\Processes\emergencyShuttle.dm" #include "code\controllers\Processes\game_master.dm" -<<<<<<< HEAD:vorestation.dme #include "code\controllers\Processes\radiation.dm" -======= #include "code\controllers\Processes\mob.dm" ->>>>>>> b193761... Merge pull request #6471 from Novacat/nova-runtimes:polaris.dme #include "code\controllers\Processes\supply.dm" #include "code\controllers\Processes\ticker.dm" #include "code\controllers\ProcessScheduler\core\process.dm" From e59b5f91f38f508d3e19d9efb62d128d72cfa88e Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Sun, 6 Oct 2019 13:14:46 -0400 Subject: [PATCH 63/69] Update vorestation.dme --- vorestation.dme | 2 -- 1 file changed, 2 deletions(-) diff --git a/vorestation.dme b/vorestation.dme index 064ce80e9a..f8e8984d56 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -215,8 +215,6 @@ #include "code\controllers\Processes\alarm.dm" #include "code\controllers\Processes\emergencyShuttle.dm" #include "code\controllers\Processes\game_master.dm" -#include "code\controllers\Processes\radiation.dm" -#include "code\controllers\Processes\mob.dm" #include "code\controllers\Processes\supply.dm" #include "code\controllers\Processes\ticker.dm" #include "code\controllers\ProcessScheduler\core\process.dm" From 62a1b8fe4dea357faa324875d9e28044c447ae2c Mon Sep 17 00:00:00 2001 From: Rykka Date: Sun, 6 Oct 2019 11:46:34 -0600 Subject: [PATCH 64/69] Fix broken air supply connection to Xenobiology --- maps/tether/tether-03-surface3.dmm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maps/tether/tether-03-surface3.dmm b/maps/tether/tether-03-surface3.dmm index 6f5c59e475..fe0ba3f7b5 100644 --- a/maps/tether/tether-03-surface3.dmm +++ b/maps/tether/tether-03-surface3.dmm @@ -12891,6 +12891,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, /turf/simulated/floor/tiled, /area/rnd/outpost/xenobiology/outpost_hallway) "wi" = ( @@ -16882,6 +16885,9 @@ pixel_y = -24; req_one_access = list(47,55) }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, /turf/simulated/floor/tiled, /area/rnd/outpost/xenobiology/outpost_north_airlock) "BL" = ( From daefe0ba5b0f9c94020b79c4583dfc6bd7671ea2 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 6 Oct 2019 14:19:08 -0400 Subject: [PATCH 65/69] Why were these still here --- code/controllers/Processes/planet.dm | 96 -------------- code/controllers/Processes/scheduler.dm | 169 ------------------------ 2 files changed, 265 deletions(-) delete mode 100644 code/controllers/Processes/planet.dm delete mode 100644 code/controllers/Processes/scheduler.dm diff --git a/code/controllers/Processes/planet.dm b/code/controllers/Processes/planet.dm deleted file mode 100644 index 18043f9270..0000000000 --- a/code/controllers/Processes/planet.dm +++ /dev/null @@ -1,96 +0,0 @@ -var/datum/controller/process/planet/planet_controller = null - -/datum/controller/process/planet - var/list/planets = list() - var/list/z_to_planet = list() - -/datum/controller/process/planet/setup() - name = "planet controller" - planet_controller = src - schedule_interval = 1 MINUTE - start_delay = 20 SECONDS - - var/list/planet_datums = typesof(/datum/planet) - /datum/planet - for(var/P in planet_datums) - var/datum/planet/NP = new P() - planets.Add(NP) - - allocateTurfs() - -/datum/controller/process/planet/proc/allocateTurfs() - for(var/turf/simulated/OT in outdoor_turfs) - for(var/datum/planet/P in planets) - if(OT.z in P.expected_z_levels) - P.planet_floors |= OT - OT.vis_contents |= P.weather_holder.visuals - break - outdoor_turfs.Cut() //Why were you in there INCORRECTLY? - - for(var/turf/unsimulated/wall/planetary/PW in planetary_walls) - for(var/datum/planet/P in planets) - if(PW.type == P.planetary_wall_type) - P.planet_walls |= PW - break - planetary_walls.Cut() - -/datum/controller/process/planet/proc/unallocateTurf(var/turf/T) - for(var/planet in planets) - var/datum/planet/P = planet - if(T.z in P.expected_z_levels) - P.planet_floors -= T - T.vis_contents -= P.weather_holder.visuals - -/datum/controller/process/planet/doWork() - if(outdoor_turfs.len || planetary_walls.len) - allocateTurfs() - - for(var/datum/planet/P in planets) - P.process(schedule_interval / 10) - SCHECK //Your process() really shouldn't take this long... - - //Sun light needs changing - if(P.needs_work & PLANET_PROCESS_SUN) - P.needs_work &= ~PLANET_PROCESS_SUN - // Remove old value from corners - var/list/sunlit_corners = P.sunlit_corners - var/old_lum_r = -P.sun["lum_r"] - var/old_lum_g = -P.sun["lum_g"] - var/old_lum_b = -P.sun["lum_b"] - if(old_lum_r || old_lum_g || old_lum_b) - for(var/C in P.sunlit_corners) - var/datum/lighting_corner/LC = C - LC.update_lumcount(old_lum_r, old_lum_g, old_lum_b) - SCHECK - sunlit_corners.Cut() - - // Calculate new values to apply - var/new_brightness = P.sun["brightness"] - var/new_color = P.sun["color"] - var/lum_r = new_brightness * GetRedPart (new_color) / 255 - var/lum_g = new_brightness * GetGreenPart(new_color) / 255 - var/lum_b = new_brightness * GetBluePart (new_color) / 255 - var/static/update_gen = -1 // Used to prevent double-processing corners. Otherwise would happen when looping over adjacent turfs. - for(var/I in P.planet_floors) - var/turf/simulated/T = I - if(!T.lighting_corners_initialised) - T.generate_missing_corners() - for(var/C in T.get_corners()) - var/datum/lighting_corner/LC = C - if(LC.update_gen != update_gen && LC.active) - sunlit_corners += LC - LC.update_gen = update_gen - LC.update_lumcount(lum_r, lum_g, lum_b) - SCHECK - update_gen-- - P.sun["lum_r"] = lum_r - P.sun["lum_g"] = lum_g - P.sun["lum_b"] = lum_b - - //Temperature needs updating - if(P.needs_work & PLANET_PROCESS_TEMP) - P.needs_work &= ~PLANET_PROCESS_TEMP - //Set new temperatures - for(var/W in P.planet_walls) - var/turf/unsimulated/wall/planetary/wall = W - wall.set_temperature(P.weather_holder.temperature) - SCHECK diff --git a/code/controllers/Processes/scheduler.dm b/code/controllers/Processes/scheduler.dm deleted file mode 100644 index ac5e4696ab..0000000000 --- a/code/controllers/Processes/scheduler.dm +++ /dev/null @@ -1,169 +0,0 @@ -/var/datum/controller/process/scheduler/scheduler - -/************ -* Scheduler * -************/ -/datum/controller/process/scheduler - var/list/scheduled_tasks - -/datum/controller/process/scheduler/setup() - name = "scheduler" - schedule_interval = 1 SECOND - scheduled_tasks = list() - scheduler = src - -/datum/controller/process/scheduler/doWork() - var/world_time = world.time - for(last_object in scheduled_tasks) - var/datum/scheduled_task/scheduled_task = last_object - if(world_time < scheduled_task.trigger_time) - break // Too early for this one, and therefore too early for all remaining. - try - unschedule(scheduled_task) - scheduled_task.pre_process() - scheduled_task.process() - scheduled_task.post_process() - catch(var/exception/e) - catchException(e, last_object) - SCHECK - -// We've been restarted, probably due to having a massive list of tasks. -// Lets copy over the task list as safely as we can and try to chug thru it... -// Note: We won't be informed about tasks being destroyed, but this is the best we can do. -/datum/controller/process/scheduler/copyStateFrom(var/datum/controller/process/scheduler/target) - scheduled_tasks = list() - for(var/datum/scheduled_task/st in target.scheduled_tasks) - if(!QDELETED(st) && istype(st)) - schedule(st) - scheduler = src - -// We are being killed. Least we can do is deregister all those events we registered -/datum/controller/process/scheduler/onKill() - for(var/st in scheduled_tasks) - GLOB.destroyed_event.unregister(st, src) - -/datum/controller/process/scheduler/statProcess() - ..() - stat(null, "[scheduled_tasks.len] task\s") - -/datum/controller/process/scheduler/proc/schedule(var/datum/scheduled_task/st) - dd_insertObjectList(scheduled_tasks, st) - -/datum/controller/process/scheduler/proc/unschedule(var/datum/scheduled_task/st) - scheduled_tasks -= st - -/********** -* Helpers * -**********/ -/proc/schedule_task_in(var/in_time, var/procedure, var/list/arguments = list()) - return schedule_task(world.time + in_time, procedure, arguments) - -/proc/schedule_callback_in(var/in_time, var/datum/callback) - return schedule_callback(world.time + in_time, callback) - -/proc/schedule_task_with_source_in(var/in_time, var/source, var/procedure, var/list/arguments = list()) - return schedule_task_with_source(world.time + in_time, source, procedure, arguments) - -/proc/schedule_task(var/trigger_time, var/procedure, var/list/arguments) - var/datum/scheduled_task/st = new/datum/scheduled_task(trigger_time, procedure, arguments, /proc/destroy_scheduled_task, list()) - scheduler.schedule(st) - return st - -/proc/schedule_callback(var/trigger_time, var/datum/callback) - var/datum/scheduled_task/callback/st = new/datum/scheduled_task/callback(trigger_time, callback, /proc/destroy_scheduled_task, list()) - scheduler.schedule(st) - return st - -/proc/schedule_task_with_source(var/trigger_time, var/source, var/procedure, var/list/arguments) - var/datum/scheduled_task/st = new/datum/scheduled_task/source(trigger_time, source, procedure, arguments, /proc/destroy_scheduled_task, list()) - scheduler.schedule(st) - return st - -/proc/schedule_repeating_task(var/trigger_time, var/repeat_interval, var/procedure, var/list/arguments) - var/datum/scheduled_task/st = new/datum/scheduled_task(trigger_time, procedure, arguments, /proc/repeat_scheduled_task, list(repeat_interval)) - scheduler.schedule(st) - return st - -/proc/schedule_repeating_task_with_source(var/trigger_time, var/repeat_interval, var/source, var/procedure, var/list/arguments) - var/datum/scheduled_task/st = new/datum/scheduled_task/source(trigger_time, source, procedure, arguments, /proc/repeat_scheduled_task, list(repeat_interval)) - scheduler.schedule(st) - return st - -/************* -* Task Datum * -*************/ -/datum/scheduled_task - var/trigger_time - var/procedure - var/list/arguments - var/task_after_process - var/list/task_after_process_args - -/datum/scheduled_task/New(var/trigger_time, var/procedure, var/list/arguments, var/proc/task_after_process, var/list/task_after_process_args) - ..() - src.trigger_time = trigger_time - src.procedure = procedure - src.arguments = arguments ? arguments : list() - src.task_after_process = task_after_process ? task_after_process : /proc/destroy_scheduled_task - src.task_after_process_args = istype(task_after_process_args) ? task_after_process_args : list() - task_after_process_args += src - -/datum/scheduled_task/Destroy() - scheduler.unschedule(src) - procedure = null - arguments.Cut() - task_after_process = null - task_after_process_args.Cut() - return ..() - -/datum/scheduled_task/dd_SortValue() - return trigger_time - -/datum/scheduled_task/proc/pre_process() - task_triggered_event.raise_event(list(src)) - -/datum/scheduled_task/proc/process() - if(procedure) - call(procedure)(arglist(arguments)) - -/datum/scheduled_task/proc/post_process() - call(task_after_process)(arglist(task_after_process_args)) - -// Resets the trigger time, has no effect if the task has already triggered -/datum/scheduled_task/proc/trigger_task_in(var/trigger_in) - src.trigger_time = world.time + trigger_in - -/datum/scheduled_task/callback - var/datum/callback/callback - -/datum/scheduled_task/callback/New(var/trigger_time, var/datum/callback, var/proc/task_after_process, var/list/task_after_process_args) - src.callback = callback - ..(trigger_time = trigger_time, task_after_process = task_after_process, task_after_process_args = task_after_process_args) - -/datum/scheduled_task/callback/process() - callback.Invoke() - -/datum/scheduled_task/source - var/datum/source - -/datum/scheduled_task/source/New(var/trigger_time, var/datum/source, var/procedure, var/list/arguments, var/proc/task_after_process, var/list/task_after_process_args) - src.source = source - GLOB.destroyed_event.register(src.source, src, /datum/scheduled_task/source/proc/source_destroyed) - ..(trigger_time, procedure, arguments, task_after_process, task_after_process_args) - -/datum/scheduled_task/source/Destroy() - source = null - return ..() - -/datum/scheduled_task/source/process() - call(source, procedure)(arglist(arguments)) - -/datum/scheduled_task/source/proc/source_destroyed() - qdel(src) - -/proc/destroy_scheduled_task(var/datum/scheduled_task/st) - qdel(st) - -/proc/repeat_scheduled_task(var/trigger_delay, var/datum/scheduled_task/st) - st.trigger_time = world.time + trigger_delay - scheduler.schedule(st) From 513f59ea9272b67c3e3cc547b853e840251ff58c Mon Sep 17 00:00:00 2001 From: Screemonster Date: Sun, 6 Oct 2019 20:14:26 +0100 Subject: [PATCH 66/69] chimera examinetext --- .../mob/living/carbon/human/examine.dm | 1 + .../mob/living/carbon/human/examine_vr.dm | 37 ++++++++++++++++++ code/modules/reagents/Chemistry-Recipes_vr.dm | 1 + icons/mob/chimerahud.dmi | Bin 0 -> 830 bytes 4 files changed, 39 insertions(+) create mode 100644 icons/mob/chimerahud.dmi diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 8c687e8de6..dad9e0f41d 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -295,6 +295,7 @@ msg += attempt_vr(src,"examine_pickup_size",args) //VOREStation Code msg += attempt_vr(src,"examine_step_size",args) //VOREStation Code msg += attempt_vr(src,"examine_nif",args) //VOREStation Code + msg += attempt_vr(src,"examine_chimera",args) //VOREStation Code if(mSmallsize in mutations) msg += "[T.He] [T.is] very short!
" diff --git a/code/modules/mob/living/carbon/human/examine_vr.dm b/code/modules/mob/living/carbon/human/examine_vr.dm index fd6a426447..8f12f28d1f 100644 --- a/code/modules/mob/living/carbon/human/examine_vr.dm +++ b/code/modules/mob/living/carbon/human/examine_vr.dm @@ -155,3 +155,40 @@ /mob/living/carbon/human/proc/examine_nif(mob/living/carbon/human/H) if(nif && nif.examine_msg) //If you have one set, anyway. return "[nif.examine_msg]\n" + +/mob/living/carbon/human/proc/examine_chimera(mob/living/carbon/human/H) + var/t_He = "It" //capitalised for use at the start of each line. + var/t_his = "its" + var/t_His = "Its" + var/t_appear = "appears" + var/t_has = "has" + switch(identifying_gender) //Gender is their "real" gender. Identifying_gender is their "chosen" gender. + if(MALE) + t_He = "He" + t_His = "His" + t_his = "his" + if(FEMALE) + t_He = "She" + t_His = "Her" + t_his = "her" + if(PLURAL) + t_He = "They" + t_His = "Their" + t_his = "their" + t_appear = "appear" + t_has = "have" + if(NEUTER) + t_He = "It" + t_His = "Its" + t_his = "its" + if(HERM) + t_He = "Shi" + t_His = "Hir" + t_his = "hir" + if(revive_ready == REVIVING_NOW || revive_ready == REVIVING_DONE) + if(stat == DEAD) + return "[t_His] body is twitching subtly.\n" + else + return "[t_He] [t_appear] to be in some sort of torpor.\n" + if(feral) + return "[t_He] [t_has] a crazed, wild look in [t_his] eyes!\n" \ No newline at end of file diff --git a/code/modules/reagents/Chemistry-Recipes_vr.dm b/code/modules/reagents/Chemistry-Recipes_vr.dm index ac8fa9a7f2..c6d948ac35 100644 --- a/code/modules/reagents/Chemistry-Recipes_vr.dm +++ b/code/modules/reagents/Chemistry-Recipes_vr.dm @@ -59,6 +59,7 @@ if(H.stat == DEAD && (/mob/living/carbon/human/proc/reconstitute_form in H.verbs)) //no magical regen for non-regenners, and can't force the reaction on live ones if(H.hasnutriment()) // make sure it actually has the conditions to revive if(H.revive_ready >= 1) // if it's not reviving, start doing so + H.revive_ready = REVIVING_READY // overrides the normal cooldown H.visible_message("[H] shudders briefly, then relaxes, faint movements stirring within.") H.chimera_regenerate() else if (/mob/living/carbon/human/proc/hatch in H.verbs)// already reviving, check if they're ready to hatch diff --git a/icons/mob/chimerahud.dmi b/icons/mob/chimerahud.dmi new file mode 100644 index 0000000000000000000000000000000000000000..890ee10cebef394b2a914049d3a79312360bf49c GIT binary patch literal 830 zcmV-E1Ht@>P)9*3KQ_WNL$Fj{#9Cgn97CBZFpw-UkyTm$%rn5i zz%%YN?*IS*0d!JMQvg8b*k%9#0FZiASad{Xb7OL8aCB*JZU6vyoKseCa&`CgQ*iP1 zxSMjGG_((;}xx>)a)%B-DMDd{06UK2Im`8q*Q{WW&nFSlmqcIb6z69X3<5>s3 zOvX-=3!iEJIi~~9IIwjWH=4;#m&uv*9swuC69+cV8Z(;3EsHTODF8TWo*IPj-RKu@ zoLQD7`3(Rk&2uaGSb1H|x~?Cq&#j=uN%PdeTIbn@8*tuRn;MikX`UK{Z{rE}uFML` zoHS1#Blg?ITR6pUe#<=QfYXuZHUeL7miczQU9Z`V1UT*a*;WpG=Ch5AIMIWjccXc} zt?oG9{Ax4V~^fklZ&i#gXPRFOA$Y}eS~O|`Dy)z#J2^}7<0c*x5IK>nA&CGs;1 zG+%)HFFT%ffb&H;|I2}A9N>IW&i|r#;sEE1a{d?1wE>zhQ2rOq69X_`p!_eIXI4<0 zFHrs$%@YGKU!eRinkNQezJU2(jy!!#(R=~(zwCK#qoMg?K>1(f!B1KRnlA>F|3xA% zbvra)3@HCci#gXPp1l71qymfWy66C|e@d^v5W2d$y1FU|{yqP0{qQb{hcvRFUH)(3 zK!^Na-+@&AukAod{;%smY5uQnp!0u&6&&+_bpxIMs~hP2U->a2o&T$E1Ulyb23wi- z`M*gsB6{TiR{iwLVy@pOjutWhH~fP>zHnOB|1xP@zw5v06W4kt0AK Date: Mon, 7 Oct 2019 06:29:28 -0400 Subject: [PATCH 67/69] Apply suggestions from code review Russian to Engish is hard Co-Authored-By: Shadow-Quill <44811257+Shadow-Quill@users.noreply.github.com> --- code/modules/power/cells/device_cells.dm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/code/modules/power/cells/device_cells.dm b/code/modules/power/cells/device_cells.dm index 740731a714..9883feee45 100644 --- a/code/modules/power/cells/device_cells.dm +++ b/code/modules/power/cells/device_cells.dm @@ -14,8 +14,8 @@ preserve_item = 1 //Yawn changes /obj/item/weapon/cell/device/weapon //Aka adv - name = "advance device power cell" - desc = "A small power upgraded cell designed to power handheld devices." + name = "advanced device power cell" + desc = "A small upgraded power cell designed to power handheld devices." icon_state = "acell" maxcharge = 2400 charge_amount = 20 @@ -27,7 +27,7 @@ /obj/item/weapon/cell/device/super name = "super device power cell" - desc = "A small power upgraded cell designed to power handheld devices." + desc = "A small upgraded power cell designed to power handheld devices." icon_state = "uscell" maxcharge = 3600 charge_amount = 20 @@ -39,7 +39,7 @@ /obj/item/weapon/cell/device/hyper name = "hyper device power cell" - desc = "A small power upgraded cell designed to hold much more power for handheld devices." + desc = "A small upgraded power cell designed to hold much more power for handheld devices." icon_state = "wcell" maxcharge = 4800 charge_amount = 20 @@ -96,9 +96,9 @@ desc = "A mix bettewn alien technology and phoron tech. Seems to fit in almost any cell slot..." charge_amount = 90 // 5%. maxcharge = 1800 - charge_delay = 500 // Every 50 seconds. + charge_delay = 50 SECONDS origin_tech = list(TECH_POWER = 6, TECH_ENGINEERING = 4, TECH_PHORON = 3) /obj/item/weapon/cell/device/weapon/recharge/alien/omni/empty/Initialize() . = ..() - charge = 0 \ No newline at end of file + charge = 0 From 0bab8c2c8cdb525da366194a5afa0b7c076d09ec Mon Sep 17 00:00:00 2001 From: Fel Date: Tue, 8 Oct 2019 00:51:30 -0400 Subject: [PATCH 68/69] Prometheans clean everything, not just the tile they're on. --- .../human/species/station/prometheans.dm | 35 +++++++++++++++++-- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species/station/prometheans.dm b/code/modules/mob/living/carbon/human/species/station/prometheans.dm index c147e5bd62..3575618f68 100644 --- a/code/modules/mob/living/carbon/human/species/station/prometheans.dm +++ b/code/modules/mob/living/carbon/human/species/station/prometheans.dm @@ -174,15 +174,44 @@ var/datum/species/shapeshifter/promethean/prometheans H.adjustToxLoss(3 * heal_rate) // Tripled because 0.5 is miniscule, and fire_stacks are capped in both directions healing = FALSE + //Prometheans automatically clean every surface they're in contact with every life tick - this includes the floor without shoes. + //They gain nutrition from doing this. var/turf/T = get_turf(H) if(istype(T)) - var/obj/effect/decal/cleanable/C = locate() in T - if(C && !(H.shoes || (H.wear_suit && (H.wear_suit.body_parts_covered & FEET)))) - qdel(C) + if(!(H.shoes || (H.wear_suit && (H.wear_suit.body_parts_covered & FEET)))) + for(var/obj/O in T) + O.clean_blood() + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) if (istype(T, /turf/simulated)) var/turf/simulated/S = T + T.clean_blood() S.dirt = 0 +<<<<<<< HEAD H.nutrition = max(H.nutrition, min(500, H.nutrition + rand(15, 30))) //VOREStation Edit: Gives nutrition up to a point instead of being capped +======= + H.nutrition = min(500, max(0, H.nutrition + rand(10, 20))) + if(H.clean_blood(1)) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + if(H.r_hand) + if(H.r_hand.clean_blood()) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + if(H.l_hand) + if(H.l_hand.clean_blood()) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + if(H.head) + if(H.head.clean_blood()) + H.update_inv_head(0) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + if(H.wear_suit) + if(H.wear_suit.clean_blood()) + H.update_inv_wear_suit(0) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + if(H.w_uniform) + if(H.w_uniform.clean_blood()) + H.update_inv_w_uniform(0) + H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + //End cleaning code. +>>>>>>> 73864a5... Prometheans clean everything, not just the tile they're on. (#6468) var/datum/gas_mixture/environment = T.return_air() var/pressure = environment.return_pressure() From bac8237fb2e75a576270383ce0a3c1c78108ef33 Mon Sep 17 00:00:00 2001 From: Novacat <35587478+Novacat@users.noreply.github.com> Date: Tue, 8 Oct 2019 01:01:31 -0400 Subject: [PATCH 69/69] Update prometheans.dm --- .../human/species/station/prometheans.dm | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/code/modules/mob/living/carbon/human/species/station/prometheans.dm b/code/modules/mob/living/carbon/human/species/station/prometheans.dm index 3575618f68..dea6b254fa 100644 --- a/code/modules/mob/living/carbon/human/species/station/prometheans.dm +++ b/code/modules/mob/living/carbon/human/species/station/prometheans.dm @@ -186,32 +186,28 @@ var/datum/species/shapeshifter/promethean/prometheans var/turf/simulated/S = T T.clean_blood() S.dirt = 0 -<<<<<<< HEAD - H.nutrition = max(H.nutrition, min(500, H.nutrition + rand(15, 30))) //VOREStation Edit: Gives nutrition up to a point instead of being capped -======= - H.nutrition = min(500, max(0, H.nutrition + rand(10, 20))) + H.nutrition = max(H.nutrition, min(500, H.nutrition + rand(15, 30))) //VOREStation Edit: Gives nutrition up to a point instead of being capped if(H.clean_blood(1)) - H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + H.nutrition = max(H.nutrition, min(500, H.nutrition + rand(15, 30))) //VOREStation Edit: Gives nutrition up to a point instead of being capped if(H.r_hand) if(H.r_hand.clean_blood()) - H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + H.nutrition = max(H.nutrition, min(500, H.nutrition + rand(15, 30))) //VOREStation Edit: Gives nutrition up to a point instead of being capped if(H.l_hand) if(H.l_hand.clean_blood()) - H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + H.nutrition = max(H.nutrition, min(500, H.nutrition + rand(15, 30))) //VOREStation Edit: Gives nutrition up to a point instead of being capped if(H.head) if(H.head.clean_blood()) H.update_inv_head(0) - H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + H.nutrition = max(H.nutrition, min(500, H.nutrition + rand(15, 30))) //VOREStation Edit: Gives nutrition up to a point instead of being capped if(H.wear_suit) if(H.wear_suit.clean_blood()) H.update_inv_wear_suit(0) - H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + H.nutrition = max(H.nutrition, min(500, H.nutrition + rand(15, 30))) //VOREStation Edit: Gives nutrition up to a point instead of being capped if(H.w_uniform) if(H.w_uniform.clean_blood()) H.update_inv_w_uniform(0) - H.nutrition = min(500, max(0, H.nutrition + rand(5, 15))) + H.nutrition = max(H.nutrition, min(500, H.nutrition + rand(15, 30))) //VOREStation Edit: Gives nutrition up to a point instead of being capped //End cleaning code. ->>>>>>> 73864a5... Prometheans clean everything, not just the tile they're on. (#6468) var/datum/gas_mixture/environment = T.return_air() var/pressure = environment.return_pressure()