diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm
index 5f6c36454f..fe0ebfdb2f 100644
--- a/code/game/machinery/portable_turret.dm
+++ b/code/game/machinery/portable_turret.dm
@@ -89,7 +89,7 @@
/obj/machinery/porta_turret/alien // The kind used on the UFO submap.
name = "interior anti-boarding turret"
desc = "A very tough looking turret made by alien hands."
- installation = /obj/item/weapon/gun/energy/laser
+ installation = /obj/item/weapon/gun/energy/alien
enabled = TRUE
lethal = TRUE
ailock = TRUE
diff --git a/code/game/objects/items/devices/gps.dm b/code/game/objects/items/devices/gps.dm
index b9c6952bc9..18fc47b617 100644
--- a/code/game/objects/items/devices/gps.dm
+++ b/code/game/objects/items/devices/gps.dm
@@ -100,6 +100,8 @@ var/list/GPS_list = list()
var/area/their_area = get_area(G)
var/area_name = their_area.name
+ if(istype(their_area, /area/submap))
+ area_name = "Unknown Area" // Avoid spoilers.
var/coord = "[T.x], [T.y], [T.z]"
var/degrees = round(Get_Angle(curr, T))
var/direction = uppertext(dir2text(get_dir(curr, T)))
@@ -202,4 +204,8 @@ var/list/GPS_list = list()
/obj/item/device/gps/internal/base
gps_tag = "NT_BASE"
- desc = "A homing signal from NanoTrasen's outpost."
\ No newline at end of file
+ desc = "A homing signal from NanoTrasen's outpost."
+
+/obj/item/device/gps/internal/alien_vessel
+ gps_tag = "Mysterious Signal"
+ desc = "A signal that seems forboding."
\ No newline at end of file
diff --git a/code/game/objects/items/weapons/teleportation.dm b/code/game/objects/items/weapons/teleportation.dm
index b991db0510..33ed9f96e1 100644
--- a/code/game/objects/items/weapons/teleportation.dm
+++ b/code/game/objects/items/weapons/teleportation.dm
@@ -133,7 +133,7 @@ Frequency:
/obj/item/weapon/hand_tele/attack_self(mob/user as mob)
var/turf/current_location = get_turf(user)//What turf is the user on?
- if(!current_location||current_location.z==2||current_location.z>=7)//If turf was not found or they're on z level 2 or >7 which does not currently exist.
+ if(!current_location||current_location.z==2||current_location.z>=7 || current_location.block_tele)//If turf was not found or they're on z level 2 or >7 which does not currently exist.
user << "\The [src] is malfunctioning."
return
var/list/L = list( )
@@ -148,6 +148,7 @@ Frequency:
for(var/turf/T in orange(10))
if(T.x>world.maxx-8 || T.x<8) continue //putting them at the edge is dumb
if(T.y>world.maxy-8 || T.y<8) continue
+ if(T.block_tele) continue
turfs += T
if(turfs.len)
L["None (Dangerous)"] = pick(turfs)
diff --git a/code/game/objects/structures/loot_piles.dm b/code/game/objects/structures/loot_piles.dm
index 23c8ebd4a1..6948e20d1d 100644
--- a/code/game/objects/structures/loot_piles.dm
+++ b/code/game/objects/structures/loot_piles.dm
@@ -480,11 +480,20 @@ Loot piles can be depleted, if loot_depleted is turned on. Note that players wh
// May contain powercells or alien weaponry.
/obj/structure/loot_pile/surface/alien/security
uncommon_loot = list(
- /obj/item/weapon/cell/device/weapon/recharge/alien
+ /obj/item/weapon/cell/device/weapon/recharge/alien,
+ /obj/item/clothing/suit/armor/alien,
+ /obj/item/clothing/head/helmet/alien
+ )
+ rare_loot = list(
+ /obj/item/clothing/suit/armor/alien/tank,
+ /obj/item/weapon/gun/energy/alien
)
// The pile found at the very end, and as such has the best loot.
/obj/structure/loot_pile/surface/alien/end
+ chance_uncommon = 30
+ chance_rare = 10
+
common_loot = list(
/obj/item/device/multitool/alien,
/obj/item/stack/cable_coil/alien,
@@ -504,8 +513,13 @@ Loot piles can be depleted, if loot_depleted is turned on. Note that players wh
/obj/item/weapon/surgical/surgicaldrill/alien,
/obj/item/weapon/cell/device/weapon/recharge/alien,
+ /obj/item/clothing/suit/armor/alien,
+ /obj/item/clothing/head/helmet/alien,
+ /obj/item/weapon/gun/energy/alien
)
uncommon_loot = list(
/obj/item/weapon/storage/belt/medical/alien,
- /obj/item/weapon/storage/belt/utility/alien/full
+ /obj/item/weapon/storage/belt/utility/alien/full,
+ /obj/item/clothing/suit/armor/alien/tank,
+ /obj/item/clothing/head/helmet/alien/tank,
)
diff --git a/code/game/turfs/simulated/floor_types.dm b/code/game/turfs/simulated/floor_types.dm
index 0949e69404..723998d4da 100644
--- a/code/game/turfs/simulated/floor_types.dm
+++ b/code/game/turfs/simulated/floor_types.dm
@@ -171,6 +171,7 @@
light_range = 3
light_power = 3
light_color = "#66ffff" // Bright cyan.
+ block_tele = TRUE
/turf/simulated/shuttle/floor/alien/initialize()
..()
@@ -178,6 +179,7 @@
/turf/simulated/shuttle/floor/alienplating
icon_state = "alienplating"
+ block_tele = TRUE
/turf/simulated/shuttle/plating
name = "plating"
diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm
index 66827de346..8527e8b501 100644
--- a/code/modules/clothing/head/helmet.dm
+++ b/code/modules/clothing/head/helmet.dm
@@ -109,6 +109,17 @@
min_cold_protection_temperature = SPACE_HELMET_MIN_COLD_PROTECTION_TEMPERATURE
siemens_coefficient = 0.5
+/obj/item/clothing/head/helmet/alien
+ name = "alien helmet"
+ desc = "It's quite larger than your head, but it might still protect it."
+ icon_state = "alienhelmet"
+ siemens_coefficient = 0.4
+ armor = list(melee = 50, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 0, rad = 40)
+
+/obj/item/clothing/head/helmet/alien/tank
+ name = "alien warhelm"
+ armor = list(melee = 70, bullet = 70, laser = 70, energy = 70, bomb = 70, bio = 0, rad = 40)
+
/obj/item/clothing/head/helmet/thunderdome
name = "\improper Thunderdome helmet"
desc = "'Let the battle commence!'"
diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm
index 088043b33b..eb4023a444 100644
--- a/code/modules/clothing/suits/armor.dm
+++ b/code/modules/clothing/suits/armor.dm
@@ -210,15 +210,35 @@
icon_state = "reactiveoff"
..()
+// Alien armor has a chance to completely block attacks.
/obj/item/clothing/suit/armor/alien
- name = "alien armor"
- desc = "It's really resilient yet lightweight, so it's probably meant to be armor. Strangely enough it seems to have been designed for a humanoid shape."
- icon_state = "alien"
+ name = "alien enhancement vest"
+ desc = "It's a strange piece of what appears to be armor. It looks very light and agile. Strangely enough it seems to have been designed for a humanoid shape."
+ description_info = "It has a 20% chance to completely nullify an incoming attack, and the wearer moves slightly faster."
+ icon_state = "alien_speed"
blood_overlay_type = "armor"
item_state_slots = list(slot_r_hand_str = "armor", slot_l_hand_str = "armor")
+ slowdown = -1
+ body_parts_covered = UPPER_TORSO|LOWER_TORSO
+ armor = list(melee = 50, bullet = 50, laser = 50, energy = 50, bomb = 50, bio = 0, rad = 40)
+ siemens_coefficient = 0.4
+ var/block_chance = 25
+
+/obj/item/clothing/suit/armor/alien/tank
+ name = "alien protection suit"
+ desc = "It's really resilient yet lightweight, so it's probably meant to be armor. Strangely enough it seems to have been designed for a humanoid shape."
+ description_info = "It has a 40% chance to completely nullify an incoming attack."
+ icon_state = "alien_tank"
slowdown = 0
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
- armor = list(melee = 65, bullet = 65, laser = 65, energy = 50, bomb = 50, bio = 0, rad = 40)
+ armor = list(melee = 70, bullet = 70, laser = 70, energy = 70, bomb = 70, bio = 0, rad = 40)
+ block_chance = 40
+
+/obj/item/clothing/suit/armor/alien/handle_shield(mob/user, var/damage, atom/damage_source = null, mob/attacker = null, var/def_zone = null, var/attack_text = "the attack")
+ if(prob(block_chance))
+ user.visible_message("\The [src] completely absorbs [attack_text]!")
+ return TRUE
+ return FALSE
//Non-hardsuit ERT armor.
/obj/item/clothing/suit/armor/vest/ert
diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm
index c9b195a204..5d18858cc3 100644
--- a/code/modules/clothing/under/accessories/accessory.dm
+++ b/code/modules/clothing/under/accessories/accessory.dm
@@ -244,6 +244,14 @@
name = "medal of exceptional heroism"
desc = "An extremely rare golden medal awarded only by high ranking officials. To recieve such a medal is the highest honor and as such, very few exist. This medal is almost never awarded to anybody but distinguished veteran staff."
+// Base type for 'medals' found in a "dungeon" submap, as a sort of trophy to celebrate the player's conquest.
+/obj/item/clothing/accessory/medal/dungeon
+
+/obj/item/clothing/accessory/medal/dungeon/alien_ufo
+ name = "alien captain's medal"
+ desc = "It vaguely like a star. It looks like something an alien captain might've worn. Probably."
+ icon_state = "alien_medal"
+
//Scarves
/obj/item/clothing/accessory/scarf
diff --git a/code/modules/power/cells/device_cells.dm b/code/modules/power/cells/device_cells.dm
index 87a2a577b7..822370a6b1 100644
--- a/code/modules/power/cells/device_cells.dm
+++ b/code/modules/power/cells/device_cells.dm
@@ -44,4 +44,7 @@
icon_state = "cell"
charge_amount = 120 // 5%.
charge_delay = 50 // Every five seconds, bit faster than the default.
- origin_tech = list(TECH_POWER = 8, TECH_ENGINEERING = 6)
\ No newline at end of file
+ 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
diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm
index 820486198d..40e1f55277 100644
--- a/code/modules/projectiles/guns/energy/laser.dm
+++ b/code/modules/projectiles/guns/energy/laser.dm
@@ -56,6 +56,22 @@
icon_state = "retro"
cell_type = null
+
+/obj/item/weapon/gun/energy/alien
+ name = "alien pistol"
+ desc = "A weapon that works very similarly to a traditional energy weapon. How this came to be will likely be a mystery for the ages."
+ icon_state = "alienpistol"
+ item_state = "alienpistol"
+ fire_sound = 'sound/weapons/eLuger.ogg'
+ fire_delay = 10 // Handguns should be inferior to two-handed weapons. Even alien ones I suppose.
+ charge_cost = 480 // Five shots.
+
+ projectile_type = /obj/item/projectile/beam/cyan
+ cell_type = /obj/item/weapon/cell/device/weapon/recharge/alien // Self charges.
+ origin_tech = list(TECH_COMBAT = 8, TECH_MAGNET = 7)
+ modifystate = "alienpistol"
+
+
/obj/item/weapon/gun/energy/captain
name = "antique laser gun"
icon_state = "caplaser"
diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm
index a271684f7c..32dce8e3b9 100644
--- a/code/modules/projectiles/projectile/beams.dm
+++ b/code/modules/projectiles/projectile/beams.dm
@@ -70,6 +70,16 @@
tracer_type = /obj/effect/projectile/xray/tracer
impact_type = /obj/effect/projectile/xray/impact
+/obj/item/projectile/beam/cyan
+ name = "cyan beam"
+ icon_state = "cyan"
+ damage = 40
+ light_color = "#00C6FF"
+
+ muzzle_type = /obj/effect/projectile/laser_omni/muzzle
+ tracer_type = /obj/effect/projectile/laser_omni/tracer
+ impact_type = /obj/effect/projectile/laser_omni/impact
+
/obj/item/projectile/beam/pulse
name = "pulse"
icon_state = "u_laser"
diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi
index 984f68f176..8a975ff39c 100644
Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ
diff --git a/icons/mob/items/lefthand_guns.dmi b/icons/mob/items/lefthand_guns.dmi
index afbbf18ea2..cc203abe61 100644
Binary files a/icons/mob/items/lefthand_guns.dmi and b/icons/mob/items/lefthand_guns.dmi differ
diff --git a/icons/mob/items/righthand_guns.dmi b/icons/mob/items/righthand_guns.dmi
index d5263d59bb..989fd341e2 100644
Binary files a/icons/mob/items/righthand_guns.dmi and b/icons/mob/items/righthand_guns.dmi differ
diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi
index 3029d8f3d6..6702a8fc8f 100644
Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ
diff --git a/icons/mob/ties.dmi b/icons/mob/ties.dmi
index e50ef604e2..e27298c236 100644
Binary files a/icons/mob/ties.dmi and b/icons/mob/ties.dmi differ
diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi
index 8abb265fde..03e3ad4b26 100644
Binary files a/icons/obj/clothing/hats.dmi and b/icons/obj/clothing/hats.dmi differ
diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi
index fa6ecad57a..1857cac578 100644
Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ
diff --git a/icons/obj/clothing/ties.dmi b/icons/obj/clothing/ties.dmi
index e1a834e6a2..f4355867ba 100644
Binary files a/icons/obj/clothing/ties.dmi and b/icons/obj/clothing/ties.dmi differ
diff --git a/icons/obj/gun.dmi b/icons/obj/gun.dmi
index 6d41018d59..0b21b0f129 100644
Binary files a/icons/obj/gun.dmi and b/icons/obj/gun.dmi differ
diff --git a/maps/submaps/cave_submaps/cave.dm b/maps/submaps/cave_submaps/cave.dm
index 4242b0171b..cfe68f2574 100644
--- a/maps/submaps/cave_submaps/cave.dm
+++ b/maps/submaps/cave_submaps/cave.dm
@@ -7,6 +7,7 @@
#include "quarantineshuttle.dmm"
#include "Mineshaft1.dmm"
#include "Scave1.dmm"
+#include "crashed_ufo.dmm"
#endif
/datum/map_template/cave
@@ -43,3 +44,8 @@
desc = "A minning tunnel home to an aggressive collection of spiders."
mappath = 'maps/submaps/cave_submaps/Scave1.dmm'
+/datum/map_template/cave/crashed_ufo
+ name = "Crashed UFO"
+ desc = "A (formerly) flying saucer that is now embedded into the mountain, yet it still seems to be running..."
+ mappath = 'maps/submaps/cave_submaps/crashed_ufo.dmm'
+ cost = 40
\ No newline at end of file
diff --git a/maps/submaps/cave_submaps/cave_areas.dm b/maps/submaps/cave_submaps/cave_areas.dm
index 13e97c9fc3..eca5ad2d6a 100644
--- a/maps/submaps/cave_submaps/cave_areas.dm
+++ b/maps/submaps/cave_submaps/cave_areas.dm
@@ -15,7 +15,7 @@
name = "Abandoned Mine"
/area/submap/cave/Scave1
- name = "Spider Cave 1" name = "Quarantined Shuttle"
+ name = "Spider Cave 1"
/area/submap/cave/crashed_ufo
name = "Crashed Alien Vessel"
diff --git a/maps/submaps/cave_submaps/crashed_ufo.dmm b/maps/submaps/cave_submaps/crashed_ufo.dmm
index a61d3cd11b..e6911eb76a 100644
--- a/maps/submaps/cave_submaps/crashed_ufo.dmm
+++ b/maps/submaps/cave_submaps/crashed_ufo.dmm
@@ -1,17 +1,17 @@
-"aa" = (/turf/space,/area/space)
+"aa" = (/turf/template_noop,/area/template_noop)
"ab" = (/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
"ac" = (/turf/simulated/shuttle/wall/alien,/area/submap/cave/crashed_ufo)
"ad" = (/obj/structure/closet/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"ae" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"af" = (/obj/effect/decal/remains/xeno,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"ag" = (/obj/machinery/porta_turret/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"ah" = (/obj/structure/loot_pile/surface/alien/engineering,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"ai" = (/obj/structure/prop/alien/computer,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"aj" = (/obj/item/weapon/wrench/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"ak" = (/obj/structure/bed/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"al" = (/obj/structure/table/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"am" = (/obj/structure/table/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"an" = (/obj/structure/closet/alien,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"ae" = (/obj/structure/closet/alien,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"af" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"ag" = (/obj/effect/decal/remains/xeno,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"ah" = (/obj/machinery/porta_turret/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"ai" = (/obj/structure/loot_pile/surface/alien/engineering,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aj" = (/obj/structure/prop/alien/computer,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"ak" = (/obj/item/weapon/wrench/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"al" = (/obj/structure/bed/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"am" = (/obj/structure/table/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"an" = (/obj/structure/table/alien,/obj/item/clothing/head/helmet/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
"ao" = (/obj/structure/prop/alien/power,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
"ap" = (/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
"aq" = (/obj/structure/table/alien,/obj/item/weapon/paper/alien{icon_state = "alienpaper_words"; info = "\[i]This tablet has a large collection of symbols that you've never seen before outside this ship. You have no hope of figuring out what any of the mean...\[/i]"},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
@@ -25,79 +25,87 @@
"ay" = (/obj/machinery/door/airlock/alien/locked{welded = 1},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
"az" = (/obj/structure/bed/alien,/obj/effect/decal/remains/xeno,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
"aA" = (/obj/item/weapon/screwdriver/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"aB" = (/obj/item/device/multitool/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"aC" = (/obj/structure/prop/alien/computer/camera/flipped{tag = "icon-camera_flipped (EAST)"; icon_state = "camera_flipped"; dir = 4},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aD" = (/obj/structure/prop/alien/computer/camera{tag = "icon-camera (WEST)"; icon_state = "camera"; dir = 8},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aE" = (/obj/machinery/porta_turret/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aF" = (/obj/machinery/door/airlock/alien/locked{p_open = 1},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"aG" = (/obj/effect/decal/remains/robot,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"aH" = (/obj/item/stack/cable_coil/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"aI" = (/obj/structure/table/alien,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"aJ" = (/obj/structure/prop/alien/computer{tag = "icon-console-c (EAST)"; icon_state = "console-c"; dir = 4},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aK" = (/obj/structure/table/alien,/obj/item/weapon/weldingtool/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"aL" = (/obj/structure/bed/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aM" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aN" = (/obj/structure/closet/alien,/obj/item/weapon/paper/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aO" = (/obj/structure/bed/alien,/obj/effect/decal/remains/xeno,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aP" = (/obj/structure/loot_pile/surface/alien/end,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"aQ" = (/obj/structure/table/alien,/obj/item/weapon/crowbar/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aR" = (/obj/structure/table/alien,/obj/item/weapon/surgical/FixOVein/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aS" = (/obj/structure/table/alien,/obj/item/weapon/wirecutters/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aT" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aU" = (/obj/effect/decal/remains/lizard,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aV" = (/obj/structure/prop/alien/dispenser,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aW" = (/obj/structure/table/alien,/obj/item/weapon/surgical/bone_clamp/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aX" = (/obj/structure/loot_pile/surface/alien/medical,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"aY" = (/obj/structure/closet/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"aZ" = (/obj/structure/prop/alien/dispenser,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"ba" = (/obj/effect/decal/remains/mouse,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
-"bb" = (/obj/structure/closet/alien,/obj/item/prop/alien/junk,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"bc" = (/obj/machinery/porta_turret/alien/destroyed{tag = "icon-destroyed_target_prism (SOUTHEAST)"; icon_state = "destroyed_target_prism"; dir = 6},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"bd" = (/obj/item/weapon/cell/device/weapon/empty,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"be" = (/obj/machinery/porta_turret/alien/destroyed{tag = "icon-destroyed_target_prism (SOUTHWEST)"; icon_state = "destroyed_target_prism"; dir = 10},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"bf" = (/obj/item/weapon/gun/energy/retro/empty,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"bg" = (/obj/item/weapon/reagent_containers/hypospray/autoinjector/used,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"bh" = (/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/burn,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"bi" = (/obj/effect/decal/remains/human{desc = "They look like human remains. Based on the equipment you saw nearby when you walked in, they were some kind of command person, and a poor one at that."},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"bj" = (/obj/item/clothing/gloves/yellow,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"bk" = (/obj/item/weapon/storage/belt/utility/full,/obj/item/device/multitool,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"bl" = (/obj/machinery/door/airlock/alien/public,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
-"bm" = (/obj/item/clothing/suit/storage/hooded/wintercoat/captain,/obj/item/clothing/shoes/boots/winter/command,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aB" = (/obj/item/weapon/wirecutters/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aC" = (/obj/structure/table/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aD" = (/obj/item/device/multitool/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aE" = (/obj/structure/prop/alien/computer/camera/flipped{tag = "icon-camera_flipped (EAST)"; icon_state = "camera_flipped"; dir = 4},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aF" = (/obj/structure/prop/alien/computer/camera{tag = "icon-camera (WEST)"; icon_state = "camera"; dir = 8},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aG" = (/obj/machinery/porta_turret/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aH" = (/obj/machinery/door/airlock/alien/locked{p_open = 1},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aI" = (/obj/effect/decal/remains/robot,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aJ" = (/obj/item/weapon/crowbar/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aK" = (/obj/item/stack/cable_coil/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aL" = (/obj/structure/table/alien,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aM" = (/obj/structure/table/alien,/obj/item/weapon/paper/alien{icon_state = "alienpaper_words"; info = "\[i]This tablet has a large collection of symbols that you've never seen before outside this ship. You have no hope of figuring out what any of the mean...\[/i]"},/obj/item/device/gps/internal/alien_vessel,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aN" = (/obj/structure/prop/alien/computer{tag = "icon-console-c (EAST)"; icon_state = "console-c"; dir = 4},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aO" = (/obj/structure/table/alien,/obj/item/clothing/accessory/medal/dungeon/alien_ufo,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aP" = (/obj/structure/table/alien,/obj/item/weapon/weldingtool/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aQ" = (/obj/structure/bed/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aR" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aS" = (/obj/structure/closet/alien,/obj/item/weapon/paper/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aT" = (/obj/structure/bed/alien,/obj/effect/decal/remains/xeno,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aU" = (/obj/structure/loot_pile/surface/alien/end,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"aV" = (/obj/structure/table/alien,/obj/item/weapon/surgical/circular_saw/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aW" = (/obj/structure/table/alien,/obj/item/weapon/surgical/FixOVein/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aX" = (/obj/structure/table/alien,/obj/item/weapon/surgical/scalpel/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aY" = (/obj/item/weapon/surgical/hemostat/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"aZ" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"ba" = (/obj/effect/decal/remains/lizard,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"bb" = (/obj/structure/prop/alien/dispenser,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"bc" = (/obj/structure/table/alien,/obj/item/weapon/surgical/bone_clamp/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"bd" = (/obj/structure/loot_pile/surface/alien/medical,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"be" = (/obj/structure/closet/alien,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"bf" = (/obj/structure/prop/alien/dispenser,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bg" = (/obj/effect/decal/remains/mouse,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
+"bh" = (/obj/structure/closet/alien,/obj/item/prop/alien/junk,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bi" = (/obj/machinery/porta_turret/alien/destroyed{tag = "icon-destroyed_target_prism (SOUTHEAST)"; icon_state = "destroyed_target_prism"; dir = 6},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bj" = (/obj/item/weapon/cell/device/weapon/empty,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bk" = (/obj/machinery/porta_turret/alien/destroyed{tag = "icon-destroyed_target_prism (SOUTHWEST)"; icon_state = "destroyed_target_prism"; dir = 10},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bl" = (/obj/item/weapon/gun/energy/retro/empty,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bm" = (/obj/item/device/gps{gps_tag = "COMDOM1"},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bn" = (/obj/item/weapon/reagent_containers/hypospray/autoinjector/used,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bo" = (/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/burn,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bp" = (/obj/effect/decal/remains/human{desc = "They look like human remains. Based on the equipment you saw nearby when you walked in, they were some kind of command person, and a poor one at that."},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bq" = (/obj/item/clothing/gloves/yellow,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"br" = (/obj/item/weapon/storage/belt/utility/full,/obj/item/device/multitool,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bs" = (/obj/machinery/door/airlock/alien/public,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bt" = (/obj/item/clothing/suit/storage/hooded/wintercoat/captain,/obj/item/clothing/shoes/boots/winter/command,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
+"bu" = (/turf/simulated/mineral/floor/ignore_mapgen,/area/template_noop)
(1,1,1) = {"
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaababababacacacacacacacababababaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaabababacacacacadadadadadacacacacabababaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaababacacacabaeabababafabababaeabacacacababaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaabababacacacacadadaeadadacacacacabababaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaababacacacabafabababagabababafabacacacababaaaaaaaaaaaaaa
aaaaaaaaaaaaababacacabababacabababababababacabababacacababaaaaaaaaaaaa
-aaaaaaaaaaababacacababacacacacagabababagacacacacababacacababaaaaaaaaaa
-aaaaaaaaababacacababacacahaiacacababajacacakafacacababacacababaaaaaaaa
-aaaaaaababacacababacacagababalacacabacacamabafanacacababacacababaaaaaa
-aaaaaaabacacababacacaoababapalaqaraearacacaeacacacacacababacacabaaaaaa
-aaaaababacababacacaoababapapapabarabaragapapasatatacacacababacababaaaa
-aaaaabacacabacacagababapapapababaeabaeababapapapauacanacacabacacabaaaa
-aaaaabacababacahababapapapababaharabaravababapapawacabafacababacabaaaa
-aaababacaeacacaxabapapapababadacarayaracavababapapaeabazacacaeacababaa
-aaabacacababacacalalapaAabadacacasabasacacavababapacamacacababacacabaa
-aaabacadababagacacamaBafahacacaCapabapaDacacavabaEacacacagababadacabaa
-aaabacadababababacararaFaracapapapaGapapapacaraeararacababababadacabaa
-aaabacadabaHabababaeabababacagapaIaqaqapagacabababaeabababababadacabaa
-aaabacadababababacararaearacaJapamafaKapawacaraeararacafabababadacabaa
-aaabacadababagacacasacapaLacacapapapapapacacaMapapaNacacagababadacabaa
-aaabacacababacacapapacapapaOacacagaPagacacaQapapapacacacacababacacabaa
-aaababacaeacacaRapaOaracapapaLacacacacacaSaEapaparacapacacacaeacababaa
-aaaaabacababacauapapaTapapapapaOarabaraCapapapapaTapaUapacababacabaaaa
-aaaaabacacabacacaVaWaragapacapapaeabaeapapapapaparacapacacabacacabaaaa
-aaaaababacababacacacacaraearacacarabarapaparaTaracacacacababacababaaaa
-aaaaaaabacacababacacacaXabababaXaraearaYacacapacacacacababacacabaaaaaa
-aaaaaaababacacababacacaZababaXacacabacacacapbaapacacababacacababaaaaaa
-aaaaaaaaababacacababacacbbaXacacabababacacacapacacababacacababaaaaaaaa
-aaaaaaaaaaababacacababacacacacbcbdababbeacacacacababacacababaaaaaaaaaa
-aaaaaaaaaaaaababacacabababarabababbfabbgbharabababacacababaaaaaaaaaaaa
-aaaaaaaaaaaaaaababacacacabaeabbdababbibjbkaeabacacacababaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaabababacacaracabarblarbmacaracacabababaaaaaaaaaaaaaaaa
+aaaaaaaaaaababacacababacacacacahabababahacacacacababacacababaaaaaaaaaa
+aaaaaaaaababacacababacacaiajacacababakacacalagacacababacacababaaaaaaaa
+aaaaaaababacacababacacahababamacacabacacanabagaeacacababacacababaaaaaa
+aaaaaaabacacababacacaoababapamaqarafaracacafacacacacacababacacabaaaaaa
+aaaaababacababacacaoababapapapabarabarahapapasatatacacacababacababaaaa
+aaaaabacacabacacahababapapapababafabafababapapapauacaeacacabacacabaaaa
+aaaaabacababacaiababapapapababaiarabaravababapapawacabagacababacabaaaa
+aaababacafacacaxabapapapababadacarayaracavababapapafabazacacafacababaa
+aaabacacababacacamamapaAaBadacacasabasacacavababapacaCacacababacacabaa
+aaabacadababahacacaCaDagaiacacaEapabapaFacacavabaGacacacahababaeacabaa
+aaabacadababababacararaHaracapapapaIapapapacarafararacabababaJadacabaa
+aaabacaeabaKabababafabababacahapaLaMaqapahacabababafabababababadacabaa
+aaabacaeababababacararafaracaNapaOagaPapawacarafararacagabababaeacabaa
+aaabacadababahacacasacapaQacacapapapapapacacaRapapaSacacahababadacabaa
+aaabacacababacacapapacapapaTacacahaUahacacaVapapapacacacacababacacabaa
+aaababacafacacaWapaTaracapapaQacacacacacaXaGapaparacaYacacacafacababaa
+aaaaabacababacauapapaZapapapapaTarabaraEapapapapaZapbaapacababacabaaaa
+aaaaabacacabacacbbbcarahapacapapafabafapapapapaparacapacacabacacabaaaa
+aaaaababacababacacacacarafaracacarabarapaparaZaracacacacababacababaaaa
+aaaaaaabacacababacacacbdabababbdarafarbeacacapacacacacababacacabaaaaaa
+aaaaaaababacacababacacbfababbdacacabacacacapbgapacacababacacababaaaaaa
+aaaaaaaaababacacababacacbhbdacacabababacacacapacacababacacababaaaaaaaa
+aaaaaaaaaaababacacababacacacacbibjababbkacacacacababacacababaaaaaaaaaa
+aaaaaaaaaaaaababacacabababarabababblbmbnboarabababacacababaaaaaaaaaaaa
+aaaaaaaaaaaaaaababacacacabafabbjababbpbqbrafabacacacababaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaabababacacaracabarbsarbtacaracacabababaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaababababacararabaracacababababaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaabababarblarabababaaaaaaaaaaaaaaaaaaaaaaaaaa
-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaabububuabababarbsarabababbububuaaaaaaaaaaaaaaaaaaaa
+aaaaaaaaaaaaaaaaaaaabububububububububububububububuaaaaaaaaaaaaaaaaaaaa
"}
diff --git a/polaris.dme b/polaris.dme
index 93263d1b7a..d3d2a4d215 100644
--- a/polaris.dme
+++ b/polaris.dme
@@ -2350,7 +2350,6 @@
#include "maps\submaps\_readme.dm"
#include "maps\submaps\cave_submaps\cave.dm"
#include "maps\submaps\cave_submaps\cave_areas.dm"
-#include "maps\submaps\cave_submaps\crashed_ufo.dmm"
#include "maps\submaps\space_submaps\space.dm"
#include "maps\submaps\surface_submaps\forest.dm"
#include "maps\submaps\surface_submaps\forest_areas.dm"