The Visible Hand - Golden Deep Merchant Ship (#17424)

* golden deep ship skeleton

* more gold

* files & access

* i fucking love gold, i fucking love capitalism

* sectors & fluff

* changelog

* more drip

* whoops

* ENTRY POINTS

* some changes

* airlocks

* grates

* hallway & dock changes

* fixes dock unit test

* switches misplaced docks
This commit is contained in:
RustingWithYou
2023-10-04 20:30:04 +00:00
committed by GitHub
parent 987fc9afd6
commit 28050e3f07
11 changed files with 31006 additions and 1 deletions
+3
View File
@@ -3544,6 +3544,9 @@
#include "maps\away\ships\elyra\elyra_strike_craft_ghostroles.dm"
#include "maps\away\ships\freebooter\freebooter_ship.dm"
#include "maps\away\ships\freebooter\freebooter_ship_ghostroles.dm"
#include "maps\away\ships\golden_deep\golden_deep.dm"
#include "maps\away\ships\golden_deep\golden_deep_areas.dm"
#include "maps\away\ships\golden_deep\golden_deep_ghostroles.dm"
#include "maps\away\ships\hegemony\hegemony_corvette\hegemony_corvette.dm"
#include "maps\away\ships\hegemony\hegemony_corvette\hegemony_corvette_areas.dm"
#include "maps\away\ships\hegemony\hegemony_corvette\hegemony_ghostroles.dm"
+6 -1
View File
@@ -651,4 +651,9 @@ var/const/access_kataphract_knight = 114
/var/const/access_hephaestus= 216
/datum/access/access_hephaestus
id = access_hephaestus
access_type = ACCESS_TYPE_CENTCOM
access_type = ACCESS_TYPE_CENTCOM
/var/const/access_golden_deep = 217
/datum/access/access_golden_deep
id = access_golden_deep
access_type = ACCESS_TYPE_CENTCOM
+6
View File
@@ -110,6 +110,12 @@
. = ..(mapload, MATERIAL_TITANIUM, MATERIAL_TITANIUM)
canSmoothWith = list(src.type)
/turf/simulated/wall/gold_reinforced/Initialize(mapload)
canSmoothWith = list(src.type)
. = ..(mapload, MATERIAL_GOLD, MATERIAL_PLASTEEL)
canSmoothWith = list(src.type)
color = COLOR_GOLD
/turf/simulated/wall/wood
icon = 'icons/turf/smooth/wall_preview.dmi'
icon_state = "wood"
@@ -251,3 +251,7 @@
/datum/computer_file/program/merchant/guild
required_access_run = list(access_merchants_guild)
required_access_download = list(access_merchants_guild)
/datum/computer_file/program/merchant/golden_deep
required_access_run = list(access_golden_deep)
required_access_download = list(access_golden_deep)
@@ -183,6 +183,9 @@
/obj/item/modular_computer/console/preset/merchant/guild
_app_preset_type = /datum/modular_computer_app_presets/merchant/guild
/obj/item/modular_computer/console/preset/merchant/golden_deep
_app_preset_type = /datum/modular_computer_app_presets/merchant/golden_deep
// AI
/obj/item/modular_computer/console/preset/ai
_app_preset_type = /datum/modular_computer_app_presets/ai
@@ -661,6 +661,17 @@
)
return _prg_list
/datum/modular_computer_app_presets/merchant/golden_deep/return_install_programs(obj/item/modular_computer/comp)
var/list/_prg_list = list(
new /datum/computer_file/program/filemanager(comp),
new /datum/computer_file/program/manifest(comp),
new /datum/computer_file/program/newsbrowser(comp),
new /datum/computer_file/program/chat_client(comp),
new /datum/computer_file/program/merchant/golden_deep(comp)
)
return _prg_list
/datum/modular_computer_app_presets/ai
name = "ai"
display_name = "AI"
@@ -0,0 +1,41 @@
################################
# 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 Golden Deep mercantile ship."
+137
View File
@@ -0,0 +1,137 @@
/datum/map_template/ruin/away_site/golden_deep
name = "Golden Deep Merchant Vessel"
id = "golden_deep"
description = "A mercantile transport vessel, registered to the Golden Deep."
suffixes = list("ships/golden_deep/golden_deep_merchant.dmm")
ship_cost = 1
spawn_weight = 1
shuttles_to_initialise = list(/datum/shuttle/autodock/overmap/golden_deep)
sectors = list(SECTOR_HANEUNIM, ALL_TAU_CETI_SECTORS, ALL_COALITION_SECTORS)
/singleton/submap_archetype/golden_deep
map = "Golden Deep Merchant Vessel"
descriptor = "A mercantile transport vessel, registered to the Golden Deep."
/obj/effect/overmap/visitable/ship/golden_deep
name = "Golden Deep Merchant Ship"
desc = "The Anchurus-class mercantile vessel is a common sight in the possession of Golden Deep traders - a high-speed vessel, designed in the shipyards of Midaion by the brightest minds of the Grand Camarilla Estriconian. They are frequently plated in gold and other rare metals, in order to easily distinguish them as Golden Deep property."
class = "GDMV" //Golden Deep Mercantile Vessel
icon_state = "tramp"
moving_state = "tramp_moving"
color = "#efd10fe4"
max_speed = 1/(2 SECONDS)
burn_delay = 1 SECONDS
vessel_mass = 5000
fore_dir = SOUTH
vessel_size = SHIP_SIZE_SMALL
designer = "Grand Camarilla Estriconian, Midaion Anchorage"
volume = "65 meters length, 35 meters beam/width, 18 meters vertical height"
drive = "Low-Speed Warp Acceleration FTL Drive"
weapons = "Not apparent, aft obscured flight craft bay"
sizeclass = "Anchurus-class mercantile freighter"
shiptype = "Long-term shipping utilities"
initial_restricted_waypoints = list(
"Golden Deep Shuttle" = list("gd_nav_hangar")
)
initial_generic_waypoints = list(
"gd_nav1",
"gd_nav2",
"gd_nav3",
"gd_nav4",
"gd_dock",
"gd_dock2",
"gd_dock3",
)
/obj/effect/overmap/visitable/ship/golden_deep/New()
designation = "[pick("Pessinus", "Phyrgia", "Gordia", "Bermion", "Ancyra", "Silenus", "Alyattes", "Orpheus")]"
..()
/obj/effect/shuttle_landmark/golden_deep
base_turf = /turf/space/dynamic
base_area = /area/space
/obj/effect/shuttle_landmark/golden_deep/nav1
name = "Golden Deep Mercantile Vessel, Fore"
landmark_tag = "gd_nav1"
/obj/effect/shuttle_landmark/golden_deep/nav2
name = "Golden Deep Mercantile Vessel, Aft"
landmark_tag = "gd_nav2"
/obj/effect/shuttle_landmark/golden_deep/nav3
name = "Golden Deep Mercantile Vessel, Port"
landmark_tag = "gd_nav3"
/obj/effect/shuttle_landmark/golden_deep/nav4
name = "Golden Deep Mercantile Vessel, Starboard"
landmark_tag = "gd_nav4"
/obj/effect/shuttle_landmark/golden_deep/dock
name = "Golden Deep Mercantile Vessel, Main Docking Port"
landmark_tag = "gd_dock"
/obj/effect/shuttle_landmark/golden_deep/dock2
name = "Golden Deep Mercantile Vessel, Auxiliary Docking Port"
landmark_tag = "gd_dock2"
/obj/effect/shuttle_landmark/golden_deep/dock3
name = "Golden Deep Mercantile Vessel, Docking Port"
landmark_tag = "gd_dock3"
//Shuttle
/obj/effect/overmap/visitable/ship/landable/golden_deep_shuttle
name = "Golden Deep Shuttle"
desc = "The Lityerses-class transport shuttle is a design only seen in the possession of the synthetic merchants of the Golden Deep - designed in the shipyards of Midaion, and frequently used by the Deep's members for matters of interstellar shipping and sales."
icon_state = "shuttle"
moving_state = "shuttle_moving"
color = "#efd10fe4"
class = "GDMV"
designation = "Cybele"
shuttle = "Golden Deep Shuttle"
max_speed = 1/(3 SECONDS)
burn_delay = 2 SECONDS
vessel_mass = 3000 //very inefficient pod
fore_dir = EAST
vessel_size = SHIP_SIZE_TINY
/obj/machinery/computer/shuttle_control/explore/golden_deep
name = "shuttle control console"
shuttle_tag = "Golden Deep Shuttle"
req_access = list(access_golden_deep)
/datum/shuttle/autodock/overmap/golden_deep
name = "Golden Deep Shuttle"
move_time = 20
shuttle_area = list(/area/shuttle/golden_deep)
current_location = "gd_nav_hangar"
landmark_transition = "gd_nav_transit"
dock_target = "golden_shuttle"
range = 1
fuel_consumption = 2
logging_home_tag = "gd_nav_hangar"
defer_initialisation = TRUE
/obj/effect/shuttle_landmark/golden_deep_shuttle/hangar
name = "Golden Deep Mercantile Vessel - Hangar"
landmark_tag = "gd_nav_hangar"
base_turf = /turf/simulated/floor/plating
base_area = /area/golden_deep/hangar
movable_flags = MOVABLE_FLAG_EFFECTMOVE
/obj/effect/shuttle_landmark/golden_deep_shuttle/transit
name = "In transit"
landmark_tag = "gd_nav_transit"
base_turf = /turf/space/transit/east
//Fluff items
/obj/item/storage/secure/safe/golden_deep
starts_with = list(
/obj/item/clothing/accessory/badge/passport = 1,
/obj/item/clothing/accessory/badge/passport/coc = 1,
/obj/item/spacecash/c1000 = 2,
/obj/item/spacecash/c200 = 1,
/obj/item/spacecash/c20 = 1,
/obj/item/stack/nanopaste = 3
)
@@ -0,0 +1,75 @@
/area/golden_deep
name = "Golden Deep Merchant Ship - Main Hallway"
icon_state = "yellow"
requires_power = 1
dynamic_lighting = 1
no_light_control = 0
base_turf = /turf/space
flags = RAD_SHIELDED
/area/golden_deep/hangar
name = "Golden Deep Merchant Ship - Hangar"
icon_state = "quartloading"
/area/golden_deep/portprop
name = "Golden Deep Merchant Ship - Port Propulsion"
icon_state = "engine"
/area/golden_deep/starboardprop
name = "Golden Deep Merchant Ship - Starboard Propulsion"
icon_state = "engine"
/area/golden_deep/atmos
name = "Golden Deep Merchant Ship - Atmospherics"
icon_state = "atmos"
/area/golden_deep/eva
name = "Golden Deep Merchant Ship - Fuel & EVA Storage"
icon_state = "eva"
/area/golden_deep/custodial
name = "Golden Deep Merchant Ship - Custodial Closet"
icon_state = "janitor"
/area/golden_deep/hangar
name = "Golden Deep Merchant Ship - Hangar"
icon_state = "exit"
/area/golden_deep/engineering
name = "Golden Deep Merchant Ship - Engineering"
icon_state = "engineering"
/area/golden_deep/secure
name = "Golden Deep Merchant Ship - Secure Storage"
icon_state = "armory"
/area/golden_deep/captain
name = "Golden Deep Merchant Ship - Captain's Quarters"
icon_state = "captain"
/area/golden_deep/dock
name = "Golden Deep Merchant Ship - Trading Area"
icon_state = "exit"
/area/golden_deep/dock/aux
name = "Golden Deep Merchant Ship - Auxiliary Docking Port"
/area/golden_deep/storage
name = "Golden Deep Merchant Ship - Crew Storage"
icon_state = "crew_quarters"
/area/golden_deep/warehouse
name = "Golden Deep Merchant Ship - Warehouse"
icon_state = "storage"
/area/golden_deep/office
name = "Golden Deep Merchant Ship - Cargo Office"
icon_state = "workshop"
/area/golden_deep/bridge
name = "Golden Deep Merchant Ship - Bridge"
icon_state = "bridge"
//Shuttle
/area/shuttle/golden_deep
name = "Golden Deep Shuttle"
@@ -0,0 +1,77 @@
/datum/ghostspawner/human/golden_deep
short_name = "golden_deep"
name = "Golden Deep Owned Synthetic"
desc = "You are an IPC, property of a merchant of the Golden Deep. Work hard, pay off the debt you owe to your 'employer', and maybe some day you too can acquire your freedom..."
tags = list("External")
spawnpoints = list("golden_deep")
max_count = 3
uses_species_whitelist = FALSE
welcome_message = "You are an IPC, property of a merchant of the Golden Deep. Work hard, pay off the debt you owe to your 'employer', and maybe some day you too can acquire your freedom..."
outfit = /datum/outfit/admin/golden_deep
possible_species = list(SPECIES_IPC, SPECIES_IPC_BISHOP, SPECIES_IPC_G1, SPECIES_IPC_G2, SPECIES_IPC_SHELL, SPECIES_IPC_XION, SPECIES_IPC_ZENGHU)
allow_appearance_change = APPEARANCE_PLASTICSURGERY
respawn_flag = null
assigned_role = "Golden Deep Owned Synthetic"
special_role = "Golden Deep Owned Synthetic"
extra_languages = list(LANGUAGE_EAL)
away_site = TRUE
/datum/ghostspawner/human/golden_deep/boss
short_name = "golden_deep_boss"
name = "Golden Deep Vessel Owner"
desc = "You are a synthetic merchant of the Golden Deep, here with one mission and one mission only - profit! Manage your owned synthetics, sell your goods, and climb the hierarchy of your insular organization."
spawnpoints = list("golden_deep_boss")
max_count = 2
uses_species_whitelist = TRUE
welcome_message = "You are a synthetic merchant of the Golden Deep, here with one mission and one mission only - profit! Manage your owned synthetics, sell your goods, and climb the hierarchy of your insular organization."
outfit = /datum/outfit/admin/golden_deep/boss
assigned_role = "Golden Deep Merchant"
special_role = "Golden Deep Merchant"
/datum/outfit/admin/golden_deep
name = "Golden Deep Owned Synthetic"
id = /obj/item/card/id
l_ear = /obj/item/device/radio/headset/ship
back = /obj/item/storage/backpack/satchel
r_pocket = /obj/item/storage/wallet/random
uniform = /obj/item/clothing/under/gearharness
accessory = /obj/item/clothing/accessory/storage/webbing
/datum/outfit/admin/golden_deep/post_equip(mob/living/carbon/human/H, visualsOnly)
if(!istype(H))
return
var/obj/item/organ/internal/ipc_tag/tag = H.internal_organs_by_name[BP_IPCTAG]
if(istype(tag))
tag.serial_number = uppertext(dd_limittext(md5(H.real_name), 12))
tag.ownership_info = IPC_OWNERSHIP_PRIVATE
tag.citizenship_info = CITIZENSHIP_NONE
/datum/outfit/admin/golden_deep/boss
name = "Golden Deep Merchant"
id = /obj/item/card/id/gold
back = /obj/item/storage/backpack/satchel/leather
r_pocket = /obj/item/storage/wallet/random
uniform = list(
/obj/item/clothing/under/goldendeep/wrap,
/obj/item/clothing/under/goldendeep,
/obj/item/clothing/under/goldendeep/suit,
/obj/item/clothing/under/goldendeep/skirtsuit,
/obj/item/clothing/under/goldendeep/vest
)
shoes = /obj/item/clothing/shoes/laceup/
wrist = /obj/item/clothing/wrists/goldbracer
accessory = /obj/item/clothing/accessory/necklace/chain
head = /obj/item/clothing/head/crest
/datum/outfit/admin/golden_deep/get_id_access()
return list(access_golden_deep, access_external_airlocks)
/datum/outfit/admin/golden_deep/boss/post_equip(mob/living/carbon/human/H, visualsOnly)
if(!istype(H))
return
var/obj/item/organ/internal/ipc_tag/tag = H.internal_organs_by_name[BP_IPCTAG]
if(istype(tag))
tag.serial_number = uppertext(dd_limittext(md5(H.real_name), 12))
tag.ownership_info = IPC_OWNERSHIP_SELF
tag.citizenship_info = CITIZENSHIP_GOLDEN
File diff suppressed because it is too large Load Diff