SSMD Recon Corvette (#15218)

This commit is contained in:
TheDanseMacabre
2022-12-07 18:07:11 +01:00
committed by GitHub
parent e7474bde47
commit 2a1ec5cc29
13 changed files with 74014 additions and 4 deletions
+2
View File
@@ -3215,6 +3215,8 @@
#include "maps\away\ships\sol_merc\fsf_patrol_ship_ghostroles.dm"
#include "maps\away\ships\sol_pirate\sfa_patrol_ship.dm"
#include "maps\away\ships\sol_pirate\sfa_patrol_ship_ghostroles.dm"
#include "maps\away\ships\sol_ssmd\ssmd_ship.dm"
#include "maps\away\ships\sol_ssmd\ssmd_ship_ghostroles.dm"
#include "maps\away\ships\tajara\taj_smuggler\tajaran_smuggler.dm"
#include "maps\away\ships\tajara\taj_smuggler\tajaran_smuggler_areas.dm"
#include "maps\away\ships\tajara\taj_smuggler\tajaran_smuggler_ghostroles.dm"
+14
View File
@@ -1160,6 +1160,20 @@
for many others, with a Sinta (or their head or skull) taking a central place in the picture, and other elements complimenting it, generally in a symmetrical fashion."
icon_state = "izharshan"
/obj/item/flag/visegrad
name = "\improper Visegrad flag"
desc = "The flag of Visegrad."
desc_extended = "The blue, white, green and red flag of Visegrad was the original Warsaw Pact-created design for the planet's flag, and even after it acquired independence it was maintained, though with the removal of the socialist emblem and the addition of a Solarian ensign. \
It is said that the green represents the forests of the planet, the white the stormclouds, and the blue the sky hidden above, while the red is supposed to represent shared national unity."
flag_path = "visegrad"
/obj/structure/sign/flag/visegrad
name = "\improper Visegrad flag"
desc = "The flag of Visegrad."
desc_extended = "The blue, white, green and red flag of Visegrad was the original Warsaw Pact-created design for the planet's flag, and even after it acquired independence it was maintained, though with the removal of the socialist emblem and the addition of a Solarian ensign. \
It is said that the green represents the forests of the planet, the white the stormclouds, and the blue the sky hidden above, while the red is supposed to represent shared national unity."
icon_state = "visegrad"
/obj/structure/sign/painting_frame
name = "empty frame"
desc = "An empty painting frame."
+6
View File
@@ -24,6 +24,12 @@
icon_state = "army_fatigue"
item_state = "army_fatigue"
/obj/item/clothing/under/rank/sol/ipc //sol IPC fatigues
name = "sol military ipc coveralls"
desc = "An uncomfortable and ill-fitting set of military coveralls issued to the IPCs that are property of the Solarian Armed Forces. Conveniently flame retardant."
icon_state = "ipc_fatigue"
item_state = "ipc_fatigue"
/obj/item/clothing/under/rank/sol/service //navy personnel service uniform
name = "sol navy service uniform"
desc = "A military service uniform issued to Sol Alliance naval personnel, to be worn in environments where a utility uniform is unfitting."
+14 -1
View File
@@ -113,4 +113,17 @@
h_back = /obj/item/mecha_equipment/quick_enter
h_l_hand = /obj/item/mecha_equipment/clamp
h_r_hand = /obj/item/mecha_equipment/catapult
h_l_shoulder = /obj/item/mecha_equipment/mounted_system/flarelauncher
h_l_shoulder = /obj/item/mecha_equipment/mounted_system/flarelauncher
/mob/living/heavy_vehicle/premade/light/recon
name = "gremlin exosuit"
desc = "A light and nimble recon exosuit, bearing the colour scheme of the Solarian Armed Forces."
e_color = COLOR_DARK_GREEN_GRAY
e_arms = /obj/item/mech_component/manipulators/combat
e_head = /obj/item/mech_component/sensors/combat
e_legs = /obj/item/mech_component/propulsion/hover/light
h_back = /obj/item/mecha_equipment/quick_enter
h_l_shoulder = /obj/item/mecha_equipment/mounted_system/flarelauncher
h_r_shoulder = /obj/item/mecha_equipment/mounted_system/combat/smg
@@ -21,6 +21,10 @@
/mob/living/heavy_vehicle/premade/ripley/loader
h_l_hand = /obj/item/mecha_equipment/clamp
/mob/living/heavy_vehicle/premade/ripley/loader/sol
name = "solarian powerloader"
e_color = COLOR_DARK_GREEN_GRAY
/mob/living/heavy_vehicle/premade/ripley/janitorial
name = "janitorial power loader"
desc = "A standard cargo-handling power loader converted into a cleaning machine."
@@ -128,6 +132,10 @@
software = new(src)
software.installed_software = list(MECH_SOFTWARE_UTILITY, MECH_SOFTWARE_ENGINEERING)
/mob/living/heavy_vehicle/premade/firefighter/sol
name = "solarian firefighting exosuit"
e_color = COLOR_DARK_GREEN_GRAY
/mob/living/heavy_vehicle/premade/combatripley
name = "combat APLU \"Ripley\""
desc = "A large APLU unit fitted with specialized composite armor and fancy, though old targeting systems."
+43
View File
@@ -0,0 +1,43 @@
################################
# 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: TheDanseMacabre
# 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: "Added a Southern Solarian Military District third party ship. Also adds a Visegrad flag, and a Solarian military IPC uniform."
- bugfix: "Fixes a problem with the TCFL ship roles not all being able to spawn at the same time."
- tweak: "Changed the shading slightly on a few Solarian uniforms."
Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 161 KiB

After

Width:  |  Height:  |  Size: 161 KiB

@@ -49,7 +49,7 @@
/datum/ghostspawner/human/elyran_naval_infantry/officer
short_name = "elyran_naval_infantry_officer"
name = "Elyran Naval Infantry Officer"
desc = "Command and pilot the Elyran naval infantry strike craft."
desc = "Command and pilot the Elyran naval infantry strike craft. (OOC Note: All characters must be of Elyran ethnic origin and background, this is enforceable by admin/moderator action.)"
mob_name_prefix = "ENS. "
spawnpoints = list("elyran_naval_infantry_officer")
+170
View File
@@ -0,0 +1,170 @@
/datum/map_template/ruin/away_site/ssmd_corvette
name = "SSMD Corvette"
description = "A long-range reconnaissance corvette design in use by the Solarian Navy, the Uhlan-class is a relatively costly and somewhat uncommon ship to be seen in the Alliance's fleets, and is typically reserved for more elite (or at least better equipped and trained) units. Designed to operate alone or as part of a small task force with minimal support in unfriendly space, it is most commonly seen assigned to probing, surveillance, harassment, and strike operations. \
In spite of its small size, the Uhlan has relatively generous crew facilities and it is well-armed relative to its size and role, all made possible by extensive automation."
suffix = "ships/sol_ssmd/ssmd_ship.dmm"
sectors = list(SECTOR_BADLANDS)
spawn_weight = 1
spawn_cost = 1
id = "ssmd_corvette"
shuttles_to_initialise = list(/datum/shuttle/autodock/overmap/ssmd_shuttle)
/decl/submap_archetype/ssmd_corvette
map = "SSMD Corvette"
descriptor = "A long-range reconnaissance corvette design in use by the Solarian Navy, the Uhlan-class is a relatively costly and somewhat uncommon ship to be seen in the Alliance's fleets, and is typically reserved for more elite (or at least better equipped and trained) units. Designed to operate alone or as part of a small task force with minimal support in unfriendly space, it is most commonly seen assigned to probing, surveillance, harassment, and strike operations. \
In spite of its small size, the Uhlan has relatively generous crew facilities and it is well-armed relative to its size and role, all made possible by extensive automation."
//areas
/area/ship/ssmd_corvette
name = "SSMD Corvette"
requires_power = TRUE
/area/ship/ssmd_corvette/bridge
name = "SSMD Corvette Bridge"
/area/ship/ssmd_corvette/hangar
name = "SSMD Corvette Hangar"
/area/ship/ssmd_corvette/starboardengine
name = "SSMD Corvette Starboard Engine"
/area/ship/ssmd_corvette/portengine
name = "SSMD Corvette Port Engine"
/area/ship/ssmd_corvette/synthroom
name = "SSMD Corvette Synthetic Room"
/area/ship/ssmd_corvette/dorms
name = "SSMD Corvette Dorms"
/area/ship/ssmd_corvette/brig
name = "SSMD Corvette Brig"
/area/ship/ssmd_corvette/starboardfoyer
name = "SSMD Corvette Starboard Foyer"
/area/ship/ssmd_corvette/francisca
name = "SSMD Corvette Francisca Gunnery Compartment"
/area/ship/ssmd_corvette/grauwolf
name = "SSMD Corvette Grauwolf Gunnery Compartment"
/area/ship/ssmd_corvette/bathroom
name = "SSMD Corvette Bathroom"
/area/ship/ssmd_corvette/captain
name = "SSMD Corvette Captain's Office"
/area/ship/ssmd_corvette/storage
name = "SSMD Corvette Storage Compartment"
/area/ship/ssmd_corvette/hangar
name = "SSMD Corvette Hangar"
/area/ship/ssmd_corvette/canteen
name = "SSMD Corvette Canteen"
/area/ship/ssmd_corvette/mechbay
name = "SSMD Corvette Mechbay"
/area/ship/ssmd_corvette/medbay
name = "SSMD Corvette Medbay"
/area/ship/ssmd_corvette/cryo
name = "SSMD Corvette Cryogenics"
/area/ship/ssmd_corvette/nuke
name = "SSMD Corvette Reactor Compartment"
/area/ship/ssmd_corvette/portfoyer
name = "SSMD Corvette Port Foyer"
/area/shuttle/ssmd_shuttle
name = "SSMD Shuttle"
icon_state = "shuttle2"
//ship stuff
/obj/effect/overmap/visitable/ship/ssmd_corvette
name = "SSMD Corvette"
class = "SSMDV"
desc = "A long-range reconnaissance corvette design in use by the Solarian Navy, the Uhlan-class is a relatively costly and somewhat uncommon ship to be seen in the Alliance's fleets, and is typically reserved for more elite (or at least better equipped and trained) units. Designed to operate alone or as part of a small task force with minimal support in unfriendly space, it is most commonly seen assigned to probing, surveillance, harassment, and strike operations. \
In spite of its small size, the Uhlan has relatively generous crew facilities and it is well-armed relative to its size and role, all made possible by extensive automation."
icon_state = "shuttle"
moving_state = "shuttle_moving"
max_speed = 1/(2 SECONDS)
burn_delay = 1 SECONDS
vessel_mass = 5000
fore_dir = SOUTH
vessel_size = SHIP_SIZE_SMALL
initial_restricted_waypoints = list(
"SSMD Shuttle" = list("nav_hangar_ssmd")
)
initial_generic_waypoints = list(
"nav_ssmd_corvette_1",
"nav_ssmd_corvette_2"
)
/obj/effect/overmap/visitable/ship/ssmd_corvette/New()
designation = "[pick("Asparuh", "Magyar", "Hussar", "Black Army", "Hunyadi", "Piast", "Hussite", "Tepes", "Komondor", "Turul", "Vistula", "Sikorski", "Mihai", "Blue Army", "Strzyga", "Leszy", "Danube", "Sokoly", "Patriotism", "Duty", "Loyalty", "Florian Geyer", "Pilsudski", "Chopin", "Levski", "Valkyrie", "Tresckow", "Olbricht", "Dubcek", "Kossuth", "Nagy", "Clausewitz", "Poniatowski", "Orzel", "Turul", "Skanderbeg", "Ordog", "Perun", "Poroniec", "Klobuk", "Cavalryman", "Szalai's Own", "Upior", "Szalai's Pride", "Kuvasz", "Fellegvar", "Nowa Bratislawa", "Zbior", "Stadter", "Homesteader", "Premyslid", "Bohemia", "Discipline", "Cavalryman", "Order", "Law", "Tenacity", "Diligence", "Valiant", "Konik", "Victory", "Triumph", "Vanguard", "Jager", "Grenadier", "Honor Guard", "Visegrad", "Nil", "Warsaw", "Budapest", "Prague", "Sofia", "Bucharest", "Home Army", "Kasimir", "Veles", "Blyskawica", "Kubus")]"
..()
/obj/effect/shuttle_landmark/ssmd_corvette/nav1
name = "SSMD Corvette - Port Side"
landmark_tag = "nav_ssmd_corvette_1"
base_turf = /turf/space/dynamic
base_area = /area/space
/obj/effect/shuttle_landmark/ssmd_corvette/nav2
name = "SSMD Corvette - Port Side"
landmark_tag = "nav_ssmd_corvette_2"
base_turf = /turf/space/dynamic
base_area = /area/space
/obj/effect/shuttle_landmark/ssmd_corvette/transit
name = "In transit"
landmark_tag = "nav_transit_ssmd_corvette"
base_turf = /turf/space/transit/north
//shuttle stuff
/obj/effect/overmap/visitable/ship/landable/ssmd_shuttle
name = "SSMD Shuttle"
class = "SSMDV"
designation = "Vizsla"
desc = "A modestly sized shuttle design used by the Solarian armed forces, the Destrier is well-armored but somewhat slow, and was explicitly designed to be as survivable as possible for operations during combat. Notably features a fast-deployment exosuit catapult."
shuttle = "SSMD Shuttle"
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/ssmd_shuttle
name = "shuttle control console"
shuttle_tag = "SSMD Shuttle"
req_access = list(access_sol_ships)
/datum/shuttle/autodock/overmap/ssmd_shuttle
name = "SSMD Shuttle"
move_time = 90
shuttle_area = list(/area/shuttle/ssmd_shuttle)
current_location = "nav_hangar_ssmd"
landmark_transition = "nav_transit_ssmd_shuttle"
range = 1
fuel_consumption = 2
logging_home_tag = "nav_hangar_ssmd"
defer_initialisation = TRUE
/obj/effect/shuttle_landmark/ssmd_shuttle/hangar
name = "SSMD Shuttle Hangar"
landmark_tag = "nav_hangar_ssmd"
docking_controller = "ssmd_shuttle_dock"
base_area = /area/ship/ssmd_corvette
base_turf = /turf/simulated/floor/plating
movable_flags = MOVABLE_FLAG_EFFECTMOVE
/obj/effect/shuttle_landmark/ssmd_shuttle/transit
name = "In transit"
landmark_tag = "nav_transit_ssmd_shuttle"
base_turf = /turf/space/transit/north
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,166 @@
/datum/ghostspawner/human/ssmd_navy_crewman
short_name = "ssmd_navy_crewman"
name = "SSMD Navy Crewman"
desc = "Crew the Southern Solarian Military District reconnaissance corvette. Closely monitor and investigate pirate (especially SFA remnant) activity within the region, while serving the interests of the Solarian government, and the SSMD. (OOC Note: Because the bulk of the SSMD's forces are people from the planet Visegrad or surrounding space, it is recommended that your character use the Visegradi or general Solarian accent.)"
tags = list("External")
mob_name_prefix = "PO3. "
spawnpoints = list("ssmd_navy_crewman")
max_count = 3
outfit = /datum/outfit/admin/ssmd_navy_crewman
possible_species = list(SPECIES_HUMAN)
allow_appearance_change = APPEARANCE_PLASTICSURGERY
assigned_role = "SSMD Navy Crewman"
special_role = "SSMD Navy Crewman"
respawn_flag = null
/datum/outfit/admin/ssmd_navy_crewman
name = "SSMD Navy Crewman"
uniform = /obj/item/clothing/under/rank/sol/
shoes = /obj/item/clothing/shoes/jackboots
back = /obj/item/storage/backpack/satchel
belt = /obj/item/storage/belt/utility/full
head = /obj/item/clothing/head/sol
accessory = /obj/item/clothing/accessory/storage/brown_vest
id = /obj/item/card/id/ssmd_ship
l_ear = /obj/item/device/radio/headset/ship
backpack_contents = list(/obj/item/storage/box/survival = 1, /obj/item/melee/energy/sword/knife/sol = 1)
/datum/outfit/admin/ssmd_navy_crewman/get_id_access()
return list(access_sol_ships, access_external_airlocks)
/datum/ghostspawner/human/ssmd_navy_officer
short_name = "ssmd_navy_officer"
name = "SSMD Navy Officer"
desc = "Command the Southern Solarian Military District reconnaissance corvette. Closely monitor and investigate pirate (especially SFA remnant) activity within the region, while serving the interests of the Solarian government, and the SSMD. (OOC Note: Because the bulk of the SSMD's forces are people from the planet Visegrad or surrounding space, it is recommended that your character use the Visegradi or general Solarian accent.)"
tags = list("External")
mob_name_prefix = "LCDR. "
spawnpoints = list("ssmd_navy_officer")
max_count = 1
outfit = /datum/outfit/admin/ssmd_navy_officer
possible_species = list(SPECIES_HUMAN)
allow_appearance_change = APPEARANCE_PLASTICSURGERY
assigned_role = "SSMD Navy Officer"
special_role = "SSMD Navy Officer"
respawn_flag = null
/datum/outfit/admin/ssmd_navy_officer
name = "SSMD Navy Officer"
uniform = /obj/item/clothing/under/rank/sol/dress/officer
shoes = /obj/item/clothing/shoes/laceup
back = /obj/item/storage/backpack/satchel/leather
head = /obj/item/clothing/head/sol/dress/officer
accessory = /obj/item/clothing/accessory/holster/thigh
id = /obj/item/card/id/ssmd_ship
l_ear = /obj/item/device/radio/headset/ship
backpack_contents = list(/obj/item/storage/box/survival = 1, /obj/item/melee/energy/sword/knife/sol = 1)
/datum/outfit/admin/ssmd_navy_officer/get_id_access()
return list(access_sol_ships, access_external_airlocks)
/datum/ghostspawner/human/ssmd_navy_crewman/senior
short_name = "ssmd_navy_senior_crewman"
name = "SSMD Navy Senior Crewman"
desc = "Serve as the second-in-command of the Southern Solarian Military District reconnaissance corvette. Closely monitor and investigate pirate (especially SFA remnant) activity within the region, while serving the interests of the Solarian government, and the SSMD. (OOC Note: Because the bulk of the SSMD's forces are people from the planet Visegrad or surrounding space, it is recommended that your character use the Visegradi or general Solarian accent.)"
mob_name_prefix = "CPO. "
spawnpoints = list("ssmd_navy_crewman")
max_count = 1
assigned_role = "SSMD Navy Senior Crewman"
special_role = "SSMD Navy Senior Crewman"
/datum/ghostspawner/human/ssmd_marine_pilot
short_name = "ssmd_marine_pilot"
name = "SSMD Marine Exosuit Pilot"
desc = "Protect the Southern Solarian Military District reconnaissance corvette, and pilot the gremlin recon exosuit. Closely monitor and investigate pirate (especially SFA remnant) activity within the region, while serving the interests of the Solarian government, and the SSMD. (OOC Note: Because the bulk of the SSMD's forces are people from the planet Visegrad or surrounding space, it is recommended that your character use the Visegradi or general Solarian accent.)"
tags = list("External")
mob_name_prefix = "SGT. "
spawnpoints = list("ssmd_navy_crewman")
max_count = 1
outfit = /datum/outfit/admin/ssmd_marine_pilot
possible_species = list(SPECIES_HUMAN)
allow_appearance_change = APPEARANCE_PLASTICSURGERY
assigned_role = "SSMD Marine Exosuit Pilot"
special_role = "SSMD Marine Exosuit Pilot"
respawn_flag = null
/datum/outfit/admin/ssmd_marine_pilot
name = "SSMD Marine Exosuit Pilot"
uniform = /obj/item/clothing/under/rank/sol/marine
shoes = /obj/item/clothing/shoes/jackboots
back = /obj/item/storage/backpack/satchel
belt = /obj/item/storage/belt/utility/full
head = /obj/item/clothing/head/sol/marine
accessory = /obj/item/clothing/accessory/storage/pouches/black
id = /obj/item/card/id/ssmd_ship
l_ear = /obj/item/device/radio/headset/ship
backpack_contents = list(/obj/item/storage/box/survival = 1, /obj/item/melee/energy/sword/knife/sol = 1)
/datum/outfit/admin/ssmd_marine_pilot/get_id_access()
return list(access_sol_ships, access_external_airlocks)
/datum/ghostspawner/human/ssmd_ipc
short_name = "ssmd_ipc"
name = "SSMD Military Synthetic"
desc = "Assist the crew of the Southern Solarian Military District reconnaissance corvette in whatever capacity necessary. Use your superior reflexes and skills to expertly pilot the ship and man its targeting systems. Remember that you are not a free, enlisted soldier: you are the military's non-combatant property, programmed to rigidly serve the interests of the Solarian government and the SSMD above all else."
tags = list("External")
spawnpoints = list("ssmd_ipc")
max_count = 1
outfit = /datum/outfit/admin/ssmd_ipc
possible_species = list(SPECIES_IPC, SPECIES_IPC_SHELL)
uses_species_whitelist = TRUE
allow_appearance_change = APPEARANCE_PLASTICSURGERY
assigned_role = "SSMD Military Synthetic"
special_role = "SSMD Military Synthetic"
respawn_flag = null
/datum/outfit/admin/ssmd_ipc
name = "SSMD Military Synthetic"
uniform = /obj/item/clothing/under/rank/sol/ipc
shoes = /obj/item/clothing/shoes/jackboots
back = /obj/item/storage/backpack/satchel
belt = /obj/item/storage/belt/utility/full
id = /obj/item/card/id/ssmd_ship
l_ear = /obj/item/device/radio/headset/ship
backpack_contents = list(/obj/item/storage/box/survival = 1, /obj/item/melee/energy/sword/knife/sol = 1)
/datum/outfit/admin/ssmd_ipc/get_id_access()
return list(access_sol_ships, access_external_airlocks)
//items
/obj/item/card/id/ssmd_ship
name = "\improper SSMD patrol ship identification card"
access = list(access_sol_ships, access_external_airlocks)
@@ -2996,8 +2996,8 @@
/obj/item/bedsheet/black,
/obj/item/clothing/suit/storage/legion,
/obj/effect/ghostspawpoint{
identifier = "tcfl_peacekeeper_pilot";
name = "igs - tcfl_peacekeeper_pilot"
identifier = "tcfl_peacekeeper";
name = "igs - tcfl_peacekeeper"
},
/turf/simulated/floor/carpet,
/area/ship/tcfl_peacekeeper_ship)