Hephaestus Security Ship & Corporate Voidsuit Tweaks (#17962)

* hephaestus security ship

* fuck off

* welcome mesgaes

* lattice hell

* damn you kaizr

* cabinet
This commit is contained in:
RustingWithYou
2023-12-18 11:36:32 +00:00
committed by GitHub
parent 27e3c66929
commit bc66a212d7
11 changed files with 72453 additions and 61 deletions
+3
View File
@@ -3620,6 +3620,9 @@
#include "maps\away\ships\heph\cyclops\cyclops_ghostroles.dm"
#include "maps\away\ships\heph\cyclops\cyclops_mining_areas.dm"
#include "maps\away\ships\heph\cyclops\cyclops_mining_ship.dm"
#include "maps\away\ships\heph\heph_security\heph_security.dm"
#include "maps\away\ships\heph\heph_security\heph_security_areas.dm"
#include "maps\away\ships\heph\heph_security\heph_security_ghostroles.dm"
#include "maps\away\ships\iac\iac_rescue_ship.dm"
#include "maps\away\ships\iac\iac_rescue_ship_ghostroles.dm"
#include "maps\away\ships\kataphracts\kataphract_areas.dm"
-28
View File
@@ -314,34 +314,6 @@
/obj/item/clothing/suit/space/void/unathi_pirate/captain = /obj/item/clothing/suit/space/void/unathi_pirate/hiskyn/captain
)
/obj/item/voidsuit_modkit/heph_unathi
name = "\improper Hephaestus Industries voidsuit kit"
desc = "A highly complicated device that allows you to convert a Hephaestus Caiman suit into its Unathi-fitted counterpart and vice versa. Practical!"
desc_info = "This is an OOC item, don't let anyone see it! In order to convert a voidsuit simply click on voidsuit or helmet with this item. \
The same process can be used to convert the voidsuit back into a regular voidsuit. Make sure not to have a helmet or tank in the suit \
or else it will be deleted."
w_class = ITEMSIZE_SMALL
suit_options = list(
/obj/item/clothing/head/helmet/space/void/hephaestus = /obj/item/clothing/head/helmet/space/void/hephaestus/unathi,
/obj/item/clothing/suit/space/void/hephaestus = /obj/item/clothing/suit/space/void/hephaestus/unathi,
/obj/item/clothing/head/helmet/space/void/hephaestus/unathi = /obj/item/clothing/head/helmet/space/void/hephaestus,
/obj/item/clothing/suit/space/void/hephaestus/unathi = /obj/item/clothing/suit/space/void/hephaestus
)
/obj/item/voidsuit_modkit/zeng_skrell
name = "\improper Zeng-Hu Pharmaceuticals voidsuit kit"
desc = "A highly complicated device that allows you to convert a Zeng-Hu Dragon suit into its Skrell-fitted counterpart and vice versa. Practical!"
desc_info = "This is an OOC item, don't let anyone see it! In order to convert a voidsuit simply click on voidsuit or helmet with this item. \
The same process can be used to convert the voidsuit back into a regular voidsuit. Make sure not to have a helmet or tank in the suit \
or else it will be deleted."
w_class = ITEMSIZE_SMALL
suit_options = list(
/obj/item/clothing/head/helmet/space/void/zenghu = /obj/item/clothing/head/helmet/space/void/zenghu/skrell,
/obj/item/clothing/suit/space/void/zenghu = /obj/item/clothing/suit/space/void/zenghu/skrell,
/obj/item/clothing/head/helmet/space/void/zenghu/skrell = /obj/item/clothing/head/helmet/space/void/zenghu,
/obj/item/clothing/suit/space/void/zenghu/skrell = /obj/item/clothing/suit/space/void/zenghu
)
/obj/item/voidsuit_modkit/nexus
name = "\improper Nexus voidsuit kit"
desc = "A highly complicated device that allows you to convert a NanoTrasen hardsuit into its Nexus variant. Wow!"
@@ -294,7 +294,6 @@
/obj/structure/closet/crate/gear_loadout/zenghu/fill()
new /obj/item/clothing/head/helmet/space/void/zenghu(src)
new /obj/item/clothing/suit/space/void/zenghu(src)
new /obj/item/voidsuit_modkit/zeng_skrell(src)
new /obj/item/tank/oxygen/red(src)
new /obj/item/clothing/shoes/magboots(src)
@@ -308,7 +307,6 @@
new /obj/item/clothing/suit/space/void/hephaestus(src)
new /obj/item/tank/oxygen/red(src)
new /obj/item/clothing/shoes/magboots(src)
new /obj/item/voidsuit_modkit/heph_unathi(src)
/obj/structure/closet/crate/gear_loadout/einstein/suit/fill()
new /obj/item/clothing/head/helmet/space/void/einstein(src)
+16 -30
View File
@@ -324,11 +324,14 @@
rad = ARMOR_RAD_SMALL
)
siemens_coefficient = 0.35
species_restricted = list(BODYTYPE_HUMAN, BODYTYPE_IPC_INDUSTRIAL, BODYTYPE_IPC_ZENGHU, BODYTYPE_IPC_BISHOP)
species_restricted = list(BODYTYPE_HUMAN, BODYTYPE_IPC_INDUSTRIAL, BODYTYPE_IPC_ZENGHU, BODYTYPE_IPC_BISHOP, BODYTYPE_SKRELL)
light_overlay = "helmet_light_dragon"
brightness_on = 6
light_color = "#7ffbf7"
desc_extended = "An easily recognized Zeng-Hu Pharmaceuticals biohazard control suit helmet. Its bug-eyed goggle visor design is unique among its class, alongside cutting-edge radiation protection."
icon_auto_adapt = TRUE
icon_supported_species_tags = list("skr")
icon_species_in_hand = TRUE
refittable = FALSE
/obj/item/clothing/suit/space/void/zenghu
@@ -351,22 +354,13 @@
)
allowed = list(/obj/item/device/flashlight,/obj/item/tank,/obj/item/device/suit_cooling_unit,/obj/item/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/melee/energy/sword,/obj/item/handcuffs)
siemens_coefficient = 0.35
species_restricted = list(BODYTYPE_HUMAN, BODYTYPE_IPC_INDUSTRIAL, BODYTYPE_IPC_ZENGHU, BODYTYPE_IPC_BISHOP)
species_restricted = list(BODYTYPE_HUMAN, BODYTYPE_IPC_INDUSTRIAL, BODYTYPE_IPC_ZENGHU, BODYTYPE_IPC_BISHOP, BODYTYPE_SKRELL)
desc_extended = "An easily recognized Zeng-Hu Pharmaceuticals biohazard control suit. It is relatively fragile but has very apparent radiation shielding. Most often seen in the hands of post-disaster cleanup teams and private military contractors."
icon_auto_adapt = TRUE
icon_supported_species_tags = list("skr")
icon_species_in_hand = TRUE
refittable = FALSE
/obj/item/clothing/head/helmet/space/void/zenghu/skrell
name = "skrell dragon biohazard suit helmet"
desc = "A remarkably lightweight Zeng-Hu Pharmaceuticals suit sporting excellent ambient radiation protection. This one appears to be fitted for a Skrell wearer."
species_restricted = list(BODYTYPE_SKRELL)
icon_state = "dragonhelm_skrell"
item_state = "dragonhelm_skrell"
/obj/item/clothing/suit/space/void/zenghu/skrell
name = "skrell dragon biohazard control suit"
desc = "A remarkably lightweight Zeng-Hu Pharmaceuticals suit sporting excellent ambient radiation protection. This one appears to be fitted for a Skrell wearer."
species_restricted = list(BODYTYPE_SKRELL)
//Hephaestus Industries espionage voidsuit
/obj/item/clothing/head/helmet/space/void/hephaestus
name = "caiman drop suit helmet"
@@ -386,11 +380,14 @@
rad = ARMOR_RAD_SMALL
)
siemens_coefficient = 0.35
species_restricted = list(BODYTYPE_HUMAN)
species_restricted = list(BODYTYPE_HUMAN, BODYTYPE_IPC_INDUSTRIAL, BODYTYPE_IPC_BISHOP, BODYTYPE_IPC_ZENGHU, BODYTYPE_UNATHI)
light_overlay = "helmet_light_caiman"
brightness_on = 6
light_color = "#ffce01"
desc_extended = "An easily recognized Hephaestus terraforming suit helmet. Its low, protruding brow and heavy plating is useful in the event you happen to be cutting down things. Mostly trees. Hopefully trees."
icon_supported_species_tags = list("una")
icon_auto_adapt = TRUE
icon_species_in_hand = TRUE
refittable = FALSE
/obj/item/clothing/suit/space/void/hephaestus
@@ -413,24 +410,13 @@
)
allowed = list(/obj/item/device/flashlight,/obj/item/tank,/obj/item/device/suit_cooling_unit,/obj/item/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/melee/energy/sword,/obj/item/handcuffs)
siemens_coefficient = 0.35
species_restricted = list(BODYTYPE_HUMAN)
species_restricted = list(BODYTYPE_HUMAN, BODYTYPE_UNATHI, BODYTYPE_IPC_BISHOP, BODYTYPE_IPC_INDUSTRIAL, BODYTYPE_IPC_ZENGHU)
desc_extended = "An easily recognized Hephaestus terraforming suit. Used often on jungle worlds to handle local wildlife and safely deforest areas in hostile environments. It found recent popularity due to its combat effectiveness that resulted in its proliferation in the hands of Hephaestus private military."
icon_supported_species_tags = list("una")
icon_auto_adapt = TRUE
icon_species_in_hand = TRUE
refittable = FALSE
/obj/item/clothing/head/helmet/space/void/hephaestus/unathi
name = "unathi caiman drop suit helmet"
desc = "A massively heavy helmet, part of a larger terraforming suit assembly. This one looks to have been refitted for an Unathi wearer."
species_restricted = list(BODYTYPE_UNATHI)
icon_state = "caimanhelm_unathi"
item_state = "caimanhelm_unathi"
/obj/item/clothing/suit/space/void/hephaestus/unathi
name = "caiman drop suit"
desc = "A superheavy Hephaestus-designed terraforming suit, iconic for its usage in orbital drops onto hostile jungle worlds. This one looks to have been refitted for an Unathi wearer."
species_restricted = list(BODYTYPE_UNATHI)
icon_state = "caiman_unathi"
item_state = "caiman_unathi"
//Zavodskoi Interstellar espionage voidsuit
/obj/item/clothing/head/helmet/space/void/zavodskoi
name = "revenant suit helmet"
@@ -0,0 +1,42 @@
################################
# 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
# balance
# admin
# backend
# security
# refactor
#################################
# Your name.
author: RustingWithYou
# 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:
- rscadd: "Adds a Hephaestus asset protection ship."
- tweak: "Megacorporate voidsuits no longer use modkits for species changes."
Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.4 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB

-1
View File
@@ -4509,7 +4509,6 @@
/obj/item/clothing/shoes/magboots/vaurca,
/obj/item/clothing/shoes/magboots/vaurca,
/obj/item/clothing/shoes/magboots/vaurca,
/obj/item/voidsuit_modkit/heph_unathi,
/obj/item/device/gps/mining,
/obj/item/device/suit_cooling_unit,
/turf/simulated/floor/tiled/dark,
@@ -0,0 +1,116 @@
/datum/map_template/ruin/away_site/heph_security
name = "Hephaestus Security Vessel"
description = "A vessel for protecting Hephaestus assets."
suffixes = list("ships/heph/heph_security/heph_security.dmm")
sectors = list(SECTOR_BURZSIA, SECTOR_UUEOAESA, SECTOR_TAU_CETI, SECTOR_CORP_ZONE) //Sectors with heavy Hephaestus presence specifically. These guys aren't going to be out patrolling the Badlands, they're going to be sticking close to valuable Heph installations.
spawn_weight = 1
ship_cost = 1
id = "Hephaestus Security Vessel"
shuttles_to_initialise = list(/datum/shuttle/autodock/overmap/hephsec_shuttle)
unit_test_groups = list(2)
/singleton/submap_archetype/heph_security
map = "Hephaestus Security Vessel"
descriptor = "A vessel for protecting Hephaestus assets."
/obj/effect/overmap/visitable/ship/heph_security
name = "Hephaestus Security Vessel"
class = "HCV"
desc = "The Eumenides-class security transport is a Hephaestus design, largely used by the corporation's own asset protection forces. Designed for rapid response and usually outfited with high-grade equipment, these vessels are rarely seen far from major Hephaestus investments."
icon_state = "cetus"
moving_state = "cetus_moving"
colors = list("#BAB86C", "#8B4000")
designer = "Hephaestus Industries"
weapons = "Dual extruding fore-mounted medium caliber ballistic armament, aftobscured flight craft docking port"
drive = "Low-Speed Warp Acceleration FTL Drive"
sizeclass = "Eumenides-class security transport"
max_speed = 1/(2 SECONDS)
burn_delay = 1 SECONDS
vessel_mass = 5000
fore_dir = SOUTH
vessel_size = SHIP_SIZE_SMALL
initial_restricted_waypoints = list(
"Hephaestus Security Shuttle" = list("hephsec_shuttle")
)
initial_generic_waypoints = list(
"hephsec_nav1",
"hephsec_nav2",
"hephsec_nav3",
"hephsec_nav4",
"hephsec_dock"
)
invisible_until_ghostrole_spawn = TRUE
/obj/effect/overmap/visitable/ship/heph_security/New()
designation = "[pick("Erebus", "Tisiphone", "Megaera", "Alecto", "Erinyes")]"
..()
/obj/effect/shuttle_landmark/heph_security
base_turf = /turf/space/dynamic
base_area = /area/space
/obj/effect/shuttle_landmark/heph_security/nav1
name = "Fore"
landmark_tag = "hephsec_nav1"
/obj/effect/shuttle_landmark/heph_security/nav2
name = "Aft"
landmark_tag = "hephsec_nav2"
/obj/effect/shuttle_landmark/heph_security/nav3
name = "Port"
landmark_tag = "hephsec_nav3"
/obj/effect/shuttle_landmark/heph_security/nav4
name = "Starboard"
landmark_tag = "hephsec_nav4"
/obj/effect/shuttle_landmark/heph_security/dock
name = "Docking Port"
landmark_tag = "hephsec_dock"
docking_controller = "airlock_heph_sec_ship"
/obj/effect/overmap/visitable/ship/landable/hephsec_shuttle
name = "Hephaestus Security Shuttle"
class = "HCV"
designation = "Lachesis"
desc = "A short-range transport shuttle designed by Hephaestus, often seen in the hands of interstellar law enforcement.."
shuttle = "Hephaestus Security Shuttle"
icon_state = "shuttle"
moving_state = "shuttle_moving"
colors = list("#BAB86C", "#8B4000")
max_speed = 1/(3 SECONDS)
burn_delay = 2 SECONDS
vessel_mass = 3000 //very inefficient pod
fore_dir = NORTH
vessel_size = SHIP_SIZE_TINY
/obj/machinery/computer/shuttle_control/explore/hephsec_shuttle
name = "shuttle control console"
shuttle_tag = "Hephaestus Security Shuttle"
/datum/shuttle/autodock/overmap/hephsec_shuttle
name = "Hephaestus Security Shuttle"
move_time = 20
shuttle_area = list(/area/shuttle/heph_security)
current_location = "hephsec_shuttle"
landmark_transition = "hephsec_shuttle_transit"
dock_target = "airlock_heph_shuttle"
range = 1
fuel_consumption = 2
logging_home_tag = "hephsec_shuttle"
defer_initialisation = TRUE
/obj/effect/shuttle_landmark/hephsec_shuttle
name = "Security Shuttle Dock"
landmark_tag = "hephsec_shuttle"
docking_controller = "heph_security_dock"
base_turf = /turf/space/dynamic
base_area = /area/space
/obj/effect/shuttle_landmark/hephsec_shuttle_transit
name = "In transit"
landmark_tag = "hephsec_shuttle_transit"
base_turf = /turf/space/transit/north
base_area = /area/space
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,71 @@
/area/heph_security_ship
name = "Hephaestus Security Vessel - Central Hallway"
icon_state = "bluenew"
requires_power = TRUE
dynamic_lighting = TRUE
no_light_control = FALSE
area_flags = AREA_FLAG_RAD_SHIELDED
/area/heph_security_ship/bridge
name = "Hephaestus Security Vessel - Bridge"
icon_state = "bridge"
/area/heph_security_ship/grauwolf
name = "Hephaestus Security Vessel - Flak Battery"
icon_state = "thunder"
/area/heph_security_ship/francisca
name = "Hephaestus Security Vessel - Rotary Cannon"
icon_state = "Tactical"
/area/heph_security_ship/kitchen
name = "Hephaestus Security Vessel - Kitchen"
icon_state = "kitchen"
/area/heph_security_ship/captain
name = "Hephaestus Security Vessel - Captain's Bunk"
icon_state = "captain"
/area/heph_security_ship/crew
name = "Hephaestus Security Vessel - Crew Bunks"
icon_state = "crew_quarters"
/area/heph_security_ship/bathroom
name = "Hephaestus Security Vessel - Bathroom"
icon_state = "toilet"
/area/heph_security_ship/armory
name = "Hephaestus Security Vessel - Armory"
icon_state = "armory"
/area/heph_security_ship/brig
name = "Hephaestus Security Vessel - Brig"
icon_state = "brig"
/area/heph_security_ship/medbay
name = "Hephaestus Security Vessel - Medical Bay"
icon_state = "medbay"
/area/heph_security_ship/atmos
name = "Hephaestus Security Vessel - Atmospherics"
icon_state = "atmos"
/area/heph_security_ship/engineering
name = "Hephaestus Security Vessel - Engineering"
icon_state = "engineering"
/area/heph_security_ship/thrusterport
name = "Hephaestus Security Vessel - Port Thruster"
icon_state = "engine"
/area/heph_security_ship/thrusterstarb
name = "Hephaestus Security Vessel - Starboard Thruster"
icon_state = "engine"
/area/heph_security_ship/dock
name = "Hephaestus Security Vessel - Shuttle Dock"
icon_state = "exit"
/area/shuttle/heph_security
name = "Hephaestus Security Shuttle"
requires_power = TRUE
@@ -0,0 +1,74 @@
/datum/ghostspawner/human/heph_security
name = "Hephaestus Asset Protection Agent"
short_name = "hephsec"
desc = "Crew a Hephaestus asset protection vessel. Ensure the company's operations in the sector stay secure and profitable."
tags = list("External")
welcome_message = "You are an asset protection agent for Hephaestus Industries, assigned to keeping the company's assets in this sector in one piece. Follow your leader's orders, and make sure nothing impacts the bottom line. Remember, you are not SCC/Horizon crew. While you can help them with problems if they ask you are under no obligation to, and you hsoud not be showing up uncalled for to act as Security+ for the Horizon."
spawnpoints = list("hephsec")
max_count = 4
outfit = /datum/outfit/admin/heph_security
possible_species = list(SPECIES_HUMAN, SPECIES_HUMAN_OFFWORLD, SPECIES_IPC_G1, SPECIES_IPC_G2, SPECIES_IPC_SHELL, SPECIES_IPC_XION, SPECIES_UNATHI, SPECIES_VAURCA_WARRIOR)
uses_species_whitelist = TRUE
allow_appearance_change = APPEARANCE_PLASTICSURGERY
assigned_role = "Hephaestus Asset Protection Agent"
special_role = "Hephaestus Asset Protection Agent"
respawn_flag = null
/datum/outfit/admin/heph_security
name = "Hephaestus Asset Protection"
uniform = /obj/item/clothing/under/rank/security/heph
shoes = /obj/item/clothing/shoes/jackboots
gloves = /obj/item/clothing/gloves/combat
l_ear = /obj/item/device/radio/headset/ship
belt = /obj/item/storage/belt/military
back = /obj/item/storage/backpack/satchel/heph
id = /obj/item/card/id/hephaestus
backpack_contents = list(/obj/item/storage/box/survival = 1)
species_shoes = list(
SPECIES_UNATHI = /obj/item/clothing/shoes/sandals/caligae/socks,
SPECIES_VAURCA_WARRIOR = /obj/item/clothing/shoes/vaurca
)
species_suit = list(
SPECIES_UNATHI = /obj/item/clothing/accessory/poncho/unathimantle/hephaestus
)
/datum/outfit/admin/heph_security/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
. = ..()
if(isoffworlder(H))
H.equip_or_collect(new /obj/item/storage/pill_bottle/rmt, slot_in_backpack)
if(isvaurca(H))
H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/vaurca/filter(H), slot_wear_mask)
var/obj/item/organ/internal/vaurca/preserve/preserve = H.internal_organs_by_name[BP_PHORON_RESERVE]
H.internal = preserve
H.internals.icon_state = "internal1"
H.equip_or_collect(new /obj/item/reagent_containers/food/snacks/koisbar, slot_in_backpack)
var/obj/item/organ/A = new /obj/item/organ/internal/augment/language/klax(H)
var/obj/item/organ/external/affected = H.get_organ(A.parent_organ)
A.replaced(H, affected)
H.update_body()
if(H?.wear_suit)
H.wear_suit.color = pick("#4f3911", "#292826")
/datum/outfit/admin/heph_security/get_id_access()
return list(access_hephaestus, access_external_airlocks)
/datum/ghostspawner/human/heph_security/captain
name = "Hephaestus Asset Protection Squad Leader"
short_name = "hephsec_boss"
desc = "Command a Hephaestus asset protection vessel. Ensure that your crew keeps the company's investments in the sector safe, secure and profitable. Keep an eye out for any unions."
welcome_message = "You are the leader of a Hephaestus Industries asset protection squad, assigned to keeping the company's assets in this sector in one piece. Keep your team in line, and make sure nothing impacts the bottom line. Remember, you are not SCC/Horizon crew. While you can help them with problems if they ask you are under no obligation to, and you hsoud not be showing up uncalled for to act as Security+ for the Horizon."
spawnpoints = list("hephsec_boss")
outfit = /datum/outfit/admin/heph_security/captain
max_count = 1
possible_species = list(SPECIES_HUMAN, SPECIES_HUMAN_OFFWORLD, SPECIES_UNATHI)
assigned_role = "Hephaestus Asset Protection Squad Leader"
special_role = "Hephaestus Asset Protection Squad Leader"
/datum/outfit/admin/heph_security/captain
name = "Hephaestus Asset Protection Squad Leader"
uniform = /obj/item/clothing/under/rank/captain/hephaestus