Skip to content

Commit

Permalink
Survivor Job Additions + Some Minor Fixes (#4956)
Browse files Browse the repository at this point in the history
# About the pull request

The purpose of this Pull Request is adding more survivor jobs like
Flight Control Operator, most colonies have a small office in their
space port or near the administration area that has a bubble for an ATC
Officer or Operator, so as Cooliecan said on
https://forum.cm-ss13.com/t/spitballing-ideas-for-new-survivor-jobs-on-all-colonies-maps/5136/2
which I agree with, could be fun to LARP as an ATC since an area for
that character does exist.

# Explain why it's good for the game

Increases diversity for survivor jobs, could add more RP opportunities,
plus like the Soro CL PR, LV has no special Liaison job like Solaris so
I thought why not, it has a large corpo dome it deserves a unique
Liaison IMO. Now, about the Flight Control Operator, the name speaks for
itself, most spaceports have a flight control bubble which are manned by
Flight Control Operators/Officers, I gave him the trucker skills, though
I thought about changing it to engineer stats. Didn't put him in any
category he is like civilians a random for now (Don't think he fits in
Engineer or Corporate category, or maybe he does?)

# Testing Photographs and Procedure
<details>
<summary>Screenshots & Videos</summary>

Put screenshots and videos here with an empty line between the
screenshots and the `<details>` tags.

</details>


# Changelog
:cl:
add: Added a LV-624 Corporate Liaison Survivor.
add: Added a Flight Control Operator Survivor to Solaris Ridge (for now,
might be added to more maps soon!).
qol: made survivor.dm easier to use by moving the basic security surv
with the engineer/scientist/doctor which it wierdly enough it wasn't
with.
balance: rebalanced CL a lockable satchel.
fix: fixed the survivor.dm comments falsely saying that some surv types
are not used anywhere when they are.
spellcheck: fixed the LV-624 announcement text, made it roll off the
tongue easier.
code: changed CL and ICC survs shoes from centcom? To laceup.
/:cl:

---------

Co-authored-by: Jeff Watchson <[email protected]>
  • Loading branch information
BadAtThisGame302 and Jeff Watchson authored Dec 16, 2023
1 parent 48264c8 commit 01174dd
Show file tree
Hide file tree
Showing 5 changed files with 109 additions and 81 deletions.
13 changes: 13 additions & 0 deletions code/modules/gear_presets/survivors/lv_624/preset_lv.dm
Original file line number Diff line number Diff line change
Expand Up @@ -81,3 +81,16 @@
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/jungle(new_human), WEAR_FEET)
..()

/datum/equipment_preset/survivor/corporate/lv
name = "Survivor - LV-624 Corporate Liaison"
assignment = "LV-624 Corporate Liaison"

/datum/equipment_preset/survivor/corporate/lv/load_gear(mob/living/carbon/human/new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/outing(new_human), WEAR_BODY)
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel/lockable/liaison(new_human), WEAR_BACK)
if(new_human.disabilities & NEARSIGHTED)
new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/prescription(new_human), WEAR_EYES)
else
new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses(new_human), WEAR_EYES)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET)
..()
18 changes: 9 additions & 9 deletions code/modules/gear_presets/survivors/misc.dm
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@


/*
everything bellow isn't used or out of place.
Everything below isn't used or out of place.
*/


// ----- Prisioner Survivors
// after double check prisoner isn't being used anywhere.
// ----- Prisoner Survivors
// Used in Fiorina Science Annex.
/datum/equipment_preset/survivor/prisoner
name = "Survivor - Prisoner"
assignment = "Prisoner"
Expand All @@ -29,7 +29,7 @@ everything bellow isn't used or out of place.
add_survivor_weapon_civilian(new_human)
..()

// after double check gangleader isn't being used anywhere.
// Used in Fiorina Science Annex.
/datum/equipment_preset/survivor/gangleader
name = "Survivor - Gang Leader"
assignment = "Gang Leader"
Expand All @@ -51,7 +51,7 @@ everything bellow isn't used or out of place.

// ----- Civilian Survivor

// after double check civilian isn't being used anywhere.
// Used in LV-624, Solaris Ridge, Trijent Dam, Fiorina Science Annex and Kutjevo Refinery.
/datum/equipment_preset/survivor/civilian
name = "Survivor - Civilian"
assignment = "Civilian"
Expand Down Expand Up @@ -122,7 +122,7 @@ everything bellow isn't used or out of place.

// ----- Roughneck Survivor

// after double check roughneck isn't being used anywhere.
// Used in Trijent Dam.
/datum/equipment_preset/survivor/roughneck
name = "Survivor - Roughneck"
assignment = "Roughneck"
Expand All @@ -147,7 +147,7 @@ everything bellow isn't used or out of place.

// ----- Bum Survivor

// after double check beachbum isn't being used anywhere.
// Used in New Varadero.
/datum/equipment_preset/survivor/beachbum
name = "Survivor - Beach Bum"
assignment = "Beach Bum"
Expand All @@ -173,7 +173,7 @@ everything bellow isn't used or out of place.

// ----- WY Survivors

// after double check goon isn't being used anywhere.
// Used in LV-624.
/datum/equipment_preset/survivor/goon
name = "Survivor - Corporate Security Goon"
flags = EQUIPMENT_PRESET_START_OF_ROUND
Expand Down Expand Up @@ -252,7 +252,7 @@ everything bellow isn't used or out of place.

..()

// after double check /new_varadero/commander isn't being used anywhere.
// New Varadero CO Survivor.
/datum/equipment_preset/survivor/new_varadero/commander
name = "Survivor - USASF Commander"
assignment = "USASF Commander"
Expand Down
154 changes: 84 additions & 70 deletions code/modules/gear_presets/survivors/survivors.dm
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ Standart Survivors : /datum/equipment_preset/survivor/scientist,
/datum/equipment_preset/survivor/miner,
/datum/equipment_preset/survivor/colonial_marshal,
/datum/equipment_preset/survivor/engineer,
/datum/equipment_preset/survivor/security
*/

Expand Down Expand Up @@ -256,37 +257,43 @@ Standart Survivors : /datum/equipment_preset/survivor/scientist,
add_survivor_weapon_civilian(new_human)

..()
/*
Everything bellow is a parent used as a base for one or multiple maps.
*/

// ----- Interstellar Human Rights Survivor
// 8 -- Security Survivor

// it's used as a base for soro map.
/datum/equipment_preset/survivor/interstellar_human_rights_observer
name = "Survivor - Interstellar Human Rights Observer"
assignment = "Interstellar Human Rights Observer(Colony)"
skills = /datum/skills/civilian/survivor
/datum/equipment_preset/survivor/security
name = "Survivor - Security"
assignment = "Security"
skills = /datum/skills/civilian/survivor/marshal
flags = EQUIPMENT_PRESET_START_OF_ROUND
access = list(ACCESS_CIVILIAN_PUBLIC,ACCESS_CIVILIAN_COMMAND)
idtype = /obj/item/card/id/data
access = list(ACCESS_CIVILIAN_PUBLIC,ACCESS_CIVILIAN_BRIG,ACCESS_CIVILIAN_COMMAND)

/datum/equipment_preset/survivor/interstellar_human_rights_observer/load_gear(mob/living/carbon/human/new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/suspenders(new_human), WEAR_BODY)
survivor_variant = SECURITY_SURVIVOR

/datum/equipment_preset/survivor/security/load_gear(mob/living/carbon/human/new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/rank/security(new_human), WEAR_BODY)
if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD])
add_ice_colony_survivor_equipment(new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel(new_human), WEAR_BACK)
add_random_cl_survivor_loot(new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine(new_human), WEAR_HEAD)
add_survivor_weapon_civilian(new_human)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/document(new_human), WEAR_R_STORE)

new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel/sec(new_human), WEAR_BACK)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest/security(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet(new_human), WEAR_HEAD)
if(new_human.disabilities & NEARSIGHTED)
new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud/prescription(new_human), WEAR_EYES)
else
new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(new_human), WEAR_EYES)
new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine(new_human), WEAR_HANDS)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/magazine(new_human), WEAR_R_STORE)
add_survivor_weapon_security(new_human)
..()

/*
Everything bellow is a parent used as a base for one or multiple maps.
*/

// ----- CL Survivor
//used as a base for shiva and solaris spawn.

// Used in Solaris Ridge and LV-624.

/datum/equipment_preset/survivor/corporate
name = "Survivor - Corporate Liaison"
Expand All @@ -312,9 +319,9 @@ Everything bellow is a parent used as a base for one or multiple maps.
add_ice_colony_survivor_equipment(new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/device/radio/headset/distress/WY(new_human), WEAR_L_EAR)
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel(new_human), WEAR_BACK)
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel/lockable/liaison(new_human), WEAR_BACK)
add_random_cl_survivor_loot(new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/centcom(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(new_human), WEAR_FEET)
add_survivor_weapon_civilian(new_human)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/document(new_human), WEAR_R_STORE)

Expand All @@ -334,52 +341,10 @@ Everything bellow is a parent used as a base for one or multiple maps.
return paygrade
return paygrade

// ----- Security Survivor
/*
present in xenomorph.dm file
GLOBAL_LIST_INIT(survivor_types, list()
/datum/equipment_preset/survivor/scientist,
/datum/equipment_preset/survivor/doctor,
/datum/equipment_preset/survivor/security,
/datum/equipment_preset/survivor/engineer
)
and is used as a base for all of the maps.
*/

/datum/equipment_preset/survivor/security
name = "Survivor - Security"
assignment = "Security"
skills = /datum/skills/civilian/survivor/marshal
flags = EQUIPMENT_PRESET_START_OF_ROUND
idtype = /obj/item/card/id/data
access = list(ACCESS_CIVILIAN_PUBLIC,ACCESS_CIVILIAN_BRIG,ACCESS_CIVILIAN_COMMAND)

survivor_variant = SECURITY_SURVIVOR

/datum/equipment_preset/survivor/security/load_gear(mob/living/carbon/human/new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/rank/security(new_human), WEAR_BODY)
if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD])
add_ice_colony_survivor_equipment(new_human)
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel/sec(new_human), WEAR_BACK)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest/security(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet(new_human), WEAR_HEAD)
if(new_human.disabilities & NEARSIGHTED)
new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud/prescription(new_human), WEAR_EYES)
else
new_human.equip_to_slot_or_del(new /obj/item/clothing/glasses/sunglasses/sechud(new_human), WEAR_EYES)
new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine(new_human), WEAR_HANDS)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/jackboots(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/magazine(new_human), WEAR_R_STORE)
add_survivor_weapon_security(new_human)
..()

// ---- Trucker Survivor

// it's used as a base for kutjevo lv nv solaris and trijent maps.
// Used in Kutjevo Refinery, LV-624, New Varadero, Solaris Ridge and Trijent Dam.

/datum/equipment_preset/survivor/trucker
name = "Survivor - Trucker"
assignment = "Trucker"
Expand All @@ -403,9 +368,58 @@ and is used as a base for all of the maps.

..()

// ----- CL Survivor
// -- Flight Control Operator

// Used in Solaris Ridge.

/datum/equipment_preset/survivor/flight_control_operator
name = "Survivor - Flight Control Operator"
assignment = "Flight Control Operator"
skills = /datum/skills/civilian/survivor/trucker
idtype = /obj/item/card/id/data
flags = EQUIPMENT_PRESET_START_OF_ROUND
access = list(ACCESS_CIVILIAN_PUBLIC,ACCESS_CIVILIAN_LOGISTICS)

/datum/equipment_preset/survivor/engineer/load_gear(mob/living/carbon/human/new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/lawyer/bluesuit(new_human), WEAR_BODY)
if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD])
add_ice_colony_survivor_equipment(new_human)
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel(new_human), WEAR_BACK)
new_human.equip_to_slot_or_del(new /obj/item/device/binoculars(new_human), WEAR_IN_BACK)
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/headset(new_human), WEAR_HEAD)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET)
add_survivor_weapon_civilian(new_human)

..()

// ----- Interstellar Human Rights Survivor

// Used in Sorokyne Strata and Fiorina Science Annex.
/datum/equipment_preset/survivor/interstellar_human_rights_observer
name = "Survivor - Interstellar Human Rights Observer"
assignment = "Interstellar Human Rights Observer(Colony)"
skills = /datum/skills/civilian/survivor
flags = EQUIPMENT_PRESET_START_OF_ROUND
access = list(ACCESS_CIVILIAN_PUBLIC,ACCESS_CIVILIAN_COMMAND)

/datum/equipment_preset/survivor/interstellar_human_rights_observer/load_gear(mob/living/carbon/human/new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/under/liaison_suit/suspenders(new_human), WEAR_BODY)
if(SSmapping.configs[GROUND_MAP].environment_traits[MAP_COLD])
add_ice_colony_survivor_equipment(new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/armor/vest(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel(new_human), WEAR_BACK)
add_random_cl_survivor_loot(new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/marine/knife(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/helmet/marine(new_human), WEAR_HEAD)
add_survivor_weapon_civilian(new_human)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/document(new_human), WEAR_R_STORE)

..()


// ----- Interstellar Commerce Commission Survivor

//this is used as a base for corsat and nv
// Used in Trijent Dam and New Varadero.
/datum/equipment_preset/survivor/interstellar_commerce_commission_liason
name = "Survivor - Interstellar Commerce Commission Liaison"
assignment = "Interstellar Commerce Commission Corporate Liaison"
Expand All @@ -429,7 +443,7 @@ and is used as a base for all of the maps.
add_ice_colony_survivor_equipment(new_human)
new_human.equip_to_slot_or_del(new /obj/item/clothing/suit/storage/hazardvest(new_human), WEAR_JACKET)
new_human.equip_to_slot_or_del(new /obj/item/storage/backpack/satchel(new_human), WEAR_BACK)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/centcom(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/shoes/laceup(new_human), WEAR_FEET)
new_human.equip_to_slot_or_del(new /obj/item/clothing/head/hardhat/white(new_human), WEAR_HEAD)
new_human.equip_to_slot_or_del(new /obj/item/clothing/gloves/marine/insulated(new_human), WEAR_HANDS)
new_human.equip_to_slot_or_del(new /obj/item/storage/pouch/document(new_human), WEAR_R_STORE)
Expand Down
1 change: 1 addition & 0 deletions maps/bigredv2.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
"/datum/equipment_preset/survivor/security/solaris",
"/datum/equipment_preset/survivor/colonial_marshal/solaris",
"/datum/equipment_preset/survivor/corporate/solaris",
"/datum/equipment_preset/survivor/flight_control_operator",
"/datum/equipment_preset/survivor/clf",
"/datum/equipment_preset/survivor/civilian"
],
Expand Down
4 changes: 2 additions & 2 deletions maps/lv624.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@
"/datum/equipment_preset/survivor/doctor/lv",
"/datum/equipment_preset/survivor/chaplain/lv",
"/datum/equipment_preset/survivor/engineer/lv",
"/datum/equipment_preset/survivor/corporate",
"/datum/equipment_preset/survivor/corporate/lv",
"/datum/equipment_preset/survivor/trucker/lv",
"/datum/equipment_preset/survivor/security/lv",
"/datum/equipment_preset/survivor/goon",
"/datum/equipment_preset/survivor/clf",
"/datum/equipment_preset/survivor/civilian"
],
"map_item_type": "/obj/item/map/lazarus_landing_map",
"announce_text": "An automated distress signal has been received from archaeology site Lazarus Landing, on border world LV-624. A response team from the ###SHIPNAME### will be dispatched shortly to investigate.",
"announce_text": "An automated distress signal has been received from the archaeological site of Lazarus Landing, on the border world of LV-624. A response team from the ###SHIPNAME### will be dispatched shortly to investigate.",
"monkey_types": [
"farwa",
"monkey",
Expand Down

0 comments on commit 01174dd

Please sign in to comment.