Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions code/__DEFINES/jobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@

//Jobs depatment lists for use in constant expressions
#define JOBS_SECURITY "Ironhammer Commander","Ironhammer Gunnery Sergeant","Ironhammer Inspector","Ironhammer Medical Specialist","Ironhammer Operative"
#define JOBS_ARMORY "Captain","First Officer","Ironhammer Commander","Ironhammer Gunnery Sergeant"
#define JOBS_COMMAND "Captain","First Officer","Ironhammer Commander","Guild Merchant","Technomancer Exultant","Moebius Biolab Officer","Moebius Expedition Overseer","NeoTheology Preacher"
#define JOBS_ARMORY "Captain","First Officer","Communications Officer","Ironhammer Commander","Ironhammer Gunnery Sergeant"
#define JOBS_COMMAND "Captain","First Officer","Communications Officer","Ironhammer Commander","Guild Merchant","Technomancer Exultant","Moebius Biolab Officer","Moebius Expedition Overseer","NeoTheology Preacher"
#define JOBS_ENGINEERING "Technomancer Exultant","Technomancer"
#define JOBS_MEDICAL "Moebius Biolab Officer","Moebius Doctor","Moebius Psychiatrist","Moebius Chemist","Moebius Paramedic","Moebius Bio-Engineer"
#define JOBS_SCIENCE "Moebius Expedition Overseer","Moebius Scientist","Moebius Roboticist"
Expand Down
1 change: 1 addition & 0 deletions code/datums/contract.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ GLOBAL_LIST_INIT(antag_item_targets,list(
"the hypospray" = /obj/item/reagent_containers/hypospray,
"the captain's pinpointer" = /obj/item/pinpointer,
"an ablative armor vest" = /obj/item/clothing/suit/armor/laserproof/full,
"the Comms Officer's headset" = /obj/item/device/radio/headset/heads/comm,
"an Ironhammer hardsuit control module" = /obj/item/rig/combat/ironhammer
))
GLOBAL_LIST_INIT(excel_item_targets,list(
Expand Down
1 change: 1 addition & 0 deletions code/datums/objective/steal.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
"a Moebius biolab officer's jumpsuit" = /obj/item/clothing/under/rank/moebius_biolab_officer,
"a Ironhammer commander's jumpsuit" = /obj/item/clothing/under/rank/ih_commander,
"a First Officer's jumpsuit" = /obj/item/clothing/under/rank/first_officer,
"the Comms Officer's headset" = /obj/item/device/radio/headset/heads/comm,
"the hypospray" = /obj/item/reagent_containers/hypospray,
"the captain's pinpointer" = /obj/item/pinpointer,
"an ablative armor vest" = /obj/item/clothing/suit/armor/laserproof,
Expand Down
14 changes: 14 additions & 0 deletions code/datums/outfits/jobs/command.dm
Original file line number Diff line number Diff line change
Expand Up @@ -41,3 +41,17 @@
id_type = /obj/item/card/id/hop
pda_type = /obj/item/modular_computer/pda/heads/hop
backpack_contents = list(/obj/item/storage/box/ids = 1, /obj/item/tool/knife/dagger/ceremonial = 1, /obj/item/clothing/accessory/cross = 1, /obj/item/gun/projectile/avasarala, /obj/item/ammo_magazine/magnum/rubber = 1)

//WIP: ADD COMMS OFFICER OUTFIT
/decl/hierarchy/outfit/job/comm
name = OUTFIT_JOB_NAME("Communications Officer")
head = /obj/item/clothing/head/caphat/hop
glasses = /obj/item/clothing/glasses/sunglasses/sechud
uniform = /obj/item/clothing/under/rank/first_officer
suit = /obj/item/clothing/suit/armor/vest
l_ear = /obj/item/device/radio/headset/heads/hop
shoes = /obj/item/clothing/shoes/reinforced
gloves = /obj/item/clothing/gloves/thick
id_type = /obj/item/card/id/hop
pda_type = /obj/item/modular_computer/pda/heads/hop
backpack_contents = list(/obj/item/tool/knife/dagger/ceremonial = 1, /obj/item/gun/projectile/revolver/mateba, /obj/item/ammo_magazine/magnum/rubber = 1, /obj/item/device/encryptionkey/heads/comm = 1)
71 changes: 71 additions & 0 deletions code/game/jobs/job/captain.dm
Original file line number Diff line number Diff line change
Expand Up @@ -138,3 +138,74 @@ Act as the captain's sidekick, bodyguard, and last line of defense in a crisis o
name = "First Officer"
icon_state = "player-gold"
join_tag = /datum/job/hop



/datum/job/comm
title = "Communications Officer"
flag = COMMSOFFICER
department = DEPARTMENT_COMMAND
exp_requirements = 50 //baby role
exp_required_type_department = DEPARTMENT_CIVILIAN
exp_granted_type = EXP_TYPE_CREW
head_position = TRUE
department_flag = COMMAND
faction = "CEV Eris"
total_positions = 1
spawn_positions = 1
supervisors = "the captain & the first officer"
selection_color = "#e5e5fc"
req_admin_notify = 1
wage = WAGE_COMMAND
also_known_languages = list(LANGUAGE_CYRILLIC = 25, LANGUAGE_SERBIAN = 20, LANGUAGE_LATIN = 25, LANGUAGE_JIVE = 20)//mr. worldwide
perks = list(/datum/perk/sommelier)
//lvl. 2 goblin
ideal_character_age = 27
//fake head of staff = no keycard auth
access = list(
access_teleporter, access_eva, access_heads, access_heads_vault, access_tcomsat, access_eva, access_maint_tunnels, access_external_airlocks
)

description = "You are a junior officer serving under the Captain of the CEV Eris, enlisted to tend to the ship's Comms. <br>\
Your duty is to serve as command's ears- listen well, and ensure nothing escapes your hearing. <br>\
Many comms officers are children of power, the spawn of wealthy, well connected peoples whetting their teeth on a relatively humble command position.<br>\
Others might be ambitious young crewmembers, promoted in the line of duty."

duties = "Monitor communications in every nook and cranny of the CEV Eris. <br>\
Sort through the chaos and find information of value to your Captain- dangers, opportunities, items of interest. Make sure he is well informed of the goings on of the ship. <br>\
<br>\
Relay the Captain's words back to the crew. You have access to their factional comms, making it easier to get their attention. <br>\
Make sure the Captain's will is well understood by his peons- though recognize your power is entirely provisional to theirs. <br>\
<br>\
Ensure nothing stops the (air)mail. Prevent any interruption the ship's internal communications network- divided, the crew will be good as doomed. <br>\
Work together with technomancers to address any technical issues- and take matters into your own hands if the situation becomes desperate.<br>\
<br>\
Provide what limited counsel you can to the captain on various matters. You lack the experience or influence of your senior officer, but 3 heads are often better than two.<br>\
And, if circumstance should threaten their lives, more bodies to throw at the problem couldn't hurt."

loyalties = "As Comms officer, your first loyalty is to the Captain, who is solely responsible for your livelihood and potential future career prospects. <br>\
<br>\
Your second loyalty is to the First Officer, who wields the Captain's authority in their stead. Since the Captain rarely concerns themselves with minor details, many matters will instead pass through the FO.<br>\
<br>\
Your third loyalty is to the ship, and to its mission. Your career won't have much of a future if your first command posting goes down in flames."

//MAKE THIS
//outfit_type = /decl/hierarchy/outfit/job/comm

software_on_spawn = list(/datum/computer_file/program/comm,
/datum/computer_file/program/camera_monitor,
/datum/computer_file/program/reports)

stat_modifiers = list(
STAT_ROB = 10,
STAT_TGH = 10,
STAT_BIO = 5,
STAT_MEC = 20,//cuz they have to fix tcomms if all the technos are too drunk
STAT_VIG = 15,
STAT_COG = 10
)

/obj/landmark/join/start/comms
name = "Communications Officer"
icon_state = "player-gold"
join_tag = /datum/job/comm
1 change: 1 addition & 0 deletions code/game/jobs/jobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ var/const/GUILDTECH =(1<<4)
var/const/MINER =(1<<5)
var/const/ARTIST =(1<<6)
var/const/ASSISTANT =(1<<7)
var/const/COMMSOFFICER =(1<<8)


var/const/CHAPLAIN =(1<<0)
Expand Down
7 changes: 6 additions & 1 deletion code/game/objects/items/devices/radio/encryptionkey.dm
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@
/obj/item/device/encryptionkey/heads/captain
name = "Eris captain's encryption key"
icon_state = "cap_cypherkey"
channels = list("Command" = 1, "Security" = 1, "Engineering" = 1, "NT Voice" = 1, "Science" = 1, "Medical" = 1, "Supply" = 1, "Service" = 1)
channels = list("Command" = 1, "Security" = 1)

/obj/item/device/encryptionkey/heads/ai_integrated
name = "ai integrated encryption key"
Expand Down Expand Up @@ -119,6 +119,11 @@
/obj/item/device/encryptionkey/heads/hop
name = "First Officer's encryption key"
icon_state = "hop_cypherkey"
channels = list("Command" = 1, "Security" = 1)

/obj/item/device/encryptionkey/heads/comm
name = "Comms Officer's encryption key"
icon_state = "hop_cypherkey"
channels = list("Command" = 1, "Security" = 1, "Engineering" = 1, "NT Voice" = 1, "Science" = 1, "Medical" = 1, "Supply" = 1, "Service" = 1)

/obj/item/device/encryptionkey/heads/merchant
Expand Down
7 changes: 7 additions & 0 deletions code/game/objects/items/devices/radio/headset.dm
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,13 @@
item_state = "headset"
ks2type = /obj/item/device/encryptionkey/heads/hop

/obj/item/device/radio/headset/heads/comm
name = "comm officer's headset"
desc = "The vaunted headset, graced with every channel. The reason why communication officers everywhere love their job- and fear leaving the safety of their office."
icon_state = "com_headset"
item_state = "headset"
ks2type = /obj/item/device/encryptionkey/heads/comm

/obj/item/device/radio/headset/heads/merchant
name = "guild merchant's headset"
desc = "The headset of the guy who know price for everything."
Expand Down
Loading
Loading