Job + department descriptions (#13157)

Co-authored-by: Sissel <axel.roche@pm.me>
This commit is contained in:
Kara
2022-12-23 17:36:12 -06:00
committed by GitHub
parent 92f806439e
commit a1350df01a
43 changed files with 121 additions and 3 deletions

View File

@@ -1,3 +1,4 @@
using System.Linq;
using Robust.Shared.Prototypes; using Robust.Shared.Prototypes;
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.List; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.List;
@@ -8,6 +9,18 @@ public sealed class DepartmentPrototype : IPrototype
{ {
[IdDataFieldAttribute] public string ID { get; } = default!; [IdDataFieldAttribute] public string ID { get; } = default!;
/// <summary>
/// A description string to display in the character menu as an explanation of the department's function.
/// </summary>
[DataField("description", required: true)]
public string Description = default!;
/// <summary>
/// A color representing this department to use for text.
/// </summary>
[DataField("color", required: true)]
public Color Color = default!;
[ViewVariables(VVAccess.ReadWrite), [ViewVariables(VVAccess.ReadWrite),
DataField("roles", customTypeSerializer: typeof(PrototypeIdListSerializer<JobPrototype>))] DataField("roles", customTypeSerializer: typeof(PrototypeIdListSerializer<JobPrototype>))]
public List<string> Roles = new(); public List<string> Roles = new();

View File

@@ -0,0 +1,7 @@
department-Cargo-description = Purchase and deliver useful supplies to the crew.
department-Civilian-description = Perform small helpful tasks to keep the station sane.
department-Command-description = Manage the crew and keep them working efficiently.
department-Engineering-description = Keep the station operational.
department-Medical-description = Keep the crew healthy.
department-Security-description = Keep the peace around the station.
department-Science-description = Research new technologies and dangerous artifacts.

View File

@@ -0,0 +1,42 @@
job-description-technical-assistant = Learn the basics of managing the station's engine, as well as repairing the station's hull & power.
job-description-atmostech = Optimize the station's atmospherics setup, and synthesize rare gases to use or sell.
job-description-bartender = Manage the bar and keep it lively, give out drinks, and listen to the crew's stories.
job-description-botanist = Grow food for the chef, drugs for medbay, and other plants to keep yourself entertained.
job-description-boxer = Fight your way to the top! Challenge the head of personnel and get brigged when you win. Not available on all maps!
job-description-cadet = Learn the basics of arresting criminals and managing the brig.
job-description-captain = Keep the station running, delegate work to the other heads of staff, and exert your will.
job-description-cargotech = Deal with requisitions and deliveries for emergencies, pilot the cargo shuttle, and work with others to make ludicrous amounts of cash.
job-description-ce = Manage the engineering department to ensure power, atmospherics, and the hull are in perfect shape.
job-description-centcomoff = Act as an ambassador to the newest state-of-the-art space station in Nanotrasen's fleet.
job-description-chaplain = Preach the good word of your deity and religion, and conduct spiritual healing.
job-description-chef = Keep the station fed with a variety of food items, butcher dead animals to ensure miasma doesn't leak, and help keep the bar lively.
job-description-chemist = Produce medicinal drugs for the doctors to use, research ethically dubious rare chemicals, and produce weapons of war when enemies of the station arrive.
job-description-clown = Entertain the crew through elaborate slapstick routines or terrible jokes.
job-description-cmo = Manage the resources and personnel of the medical department to keep the crew alive and disease-free.
job-description-detective = Investigate crime scenes using forensic tools, ensure that the guilty party is found, and have a couple smokes.
job-description-doctor = Diagnose and heal crewmembers through medicinal chemicals, vaccinations, and disease cures, along with cloning the dead.
job-description-engineer = Keep the station's main engine & solars active, optimize the power network, and make emergency repairs using your hardsuit.
job-description-ertengineer = Ensure that the station has power and clean air.
job-description-ertjanitor = Ensure that the station is properly cleaned--for morale.
job-description-ertleader = Lead the Emergency Response Team in dealing with threats to Nanotrasen assets.
job-description-ertmedic = Ensure that the crew of the station is kept alive and healthy.
job-description-ertsecurity = Ensure that any active threats to the station are put to rest.
job-description-hop = Handle access reassignment fairly using your ID console, manage the service department, and keep Ian safe.
job-description-hos = Manage your security force and keep them efficient, quell dissent, and keep the other heads of staff safe.
job-description-intern = Learn the basics of administering medicine, cloning the dead, and creating chemicals.
job-description-janitor = Keep the station clean of any trash or slipping hazards, and help deal with rat infestations.
job-description-lawyer = Ensure that every prisoner or criminal receives a fair judgment and trial if necessary.
job-description-librarian = Manage the library, give out knowledge to any who seek it, and report on activities aboard the station.
job-description-mime = Entertain the crew through non-vocal means, and engage with light rivalry with the clown.
job-description-musician = Entertain the crew with your unique musical talent, and acquire new instruments to mess around with.
job-description-passenger = Enjoy your stay aboard the station with no obligations!
job-description-psychologist = Provide emotional support to traumatized crew. Not available on all maps!
job-description-qm = Manage the supplies of the station & the cargo department, keep the salvage specialists working, make sure all orders are fulfilled, and keep the money flowing.
job-description-rd = Manage the science department, unlocking technologies, acquiring & researching artifacts, and performing experiments.
job-description-reporter = Entertain & inform the crew with your vibrant journalism through wireless cameras and the radio. Not available on all maps!
job-description-salvagespec = Use the salvage magnet to draw in derelicts & asteroids to loot and enrich the station, and fight off any space fauna along the way.
job-description-scientist = Research alien artifacts, unlock new technologies, upgrade machines around the station, and make everything run more efficiently.
job-description-security = Catch criminals and enemies of the station, enforce the law, and ensure that the station does not fall into disarray.
job-description-serviceworker = Learn the basics of bartending, cooking, and growing plants.
job-description-warden = Patrol the security department, ensure that no one is stealing from the armory, and make sure that all prisoners are processed and let out when their time is up.
job-description-zookeeper = Put on a joyful display of cute animals and space carps for all the crew to see. Not available on all maps!

View File

@@ -10,7 +10,7 @@ job-name-intern = medical intern
job-name-doctor = medical doctor job-name-doctor = medical doctor
job-name-cmo = chief medical officer job-name-cmo = chief medical officer
job-name-chemist = chemist job-name-chemist = chemist
job-name-assistant = technical assistant job-name-technical-assistant = technical assistant
job-name-engineer = station engineer job-name-engineer = station engineer
job-name-atmostech = atmospheric technician job-name-atmostech = atmospheric technician
job-name-hop = head of personnel job-name-hop = head of personnel

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: CargoTechnician id: CargoTechnician
name: job-name-cargotech name: job-name-cargotech
description: job-description-cargotech
playTimeTracker: JobCargoTechnician playTimeTracker: JobCargoTechnician
startingGear: CargoTechGear startingGear: CargoTechGear
icon: "CargoTechnician" icon: "CargoTechnician"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Quartermaster id: Quartermaster
name: job-name-qm name: job-name-qm
description: job-description-qm
playTimeTracker: JobQuartermaster playTimeTracker: JobQuartermaster
requirements: requirements:
- !type:RoleTimeRequirement - !type:RoleTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: SalvageSpecialist id: SalvageSpecialist
name: job-name-salvagespec name: job-name-salvagespec
description: job-description-salvagespec
playTimeTracker: JobSalvageSpecialist playTimeTracker: JobSalvageSpecialist
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Passenger id: Passenger
name: job-name-passenger name: job-name-passenger
description: job-description-passenger
playTimeTracker: JobPassenger playTimeTracker: JobPassenger
startingGear: PassengerGear startingGear: PassengerGear
icon: "Passenger" icon: "Passenger"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Bartender id: Bartender
name: job-name-bartender name: job-name-bartender
description: job-description-bartender
playTimeTracker: JobBartender playTimeTracker: JobBartender
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Botanist id: Botanist
name: job-name-botanist name: job-name-botanist
description: job-description-botanist
playTimeTracker: JobBotanist playTimeTracker: JobBotanist
startingGear: BotanistGear startingGear: BotanistGear
icon: "Botanist" icon: "Botanist"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Chaplain id: Chaplain
name: job-name-chaplain name: job-name-chaplain
description: job-description-chaplain
playTimeTracker: JobChaplain playTimeTracker: JobChaplain
startingGear: ChaplainGear startingGear: ChaplainGear
icon: "Chaplain" icon: "Chaplain"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Chef id: Chef
name: job-name-chef name: job-name-chef
description: job-description-chef
playTimeTracker: JobChef playTimeTracker: JobChef
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Clown id: Clown
name: job-name-clown name: job-name-clown
description: job-description-clown
playTimeTracker: JobClown playTimeTracker: JobClown
startingGear: ClownGear startingGear: ClownGear
icon: "Clown" icon: "Clown"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Janitor id: Janitor
name: job-name-janitor name: job-name-janitor
description: job-description-janitor
playTimeTracker: JobJanitor playTimeTracker: JobJanitor
startingGear: JanitorGear startingGear: JanitorGear
icon: "Janitor" icon: "Janitor"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Lawyer id: Lawyer
name: job-name-lawyer name: job-name-lawyer
description: job-description-lawyer
playTimeTracker: JobLawyer playTimeTracker: JobLawyer
startingGear: LawyerGear startingGear: LawyerGear
icon: "Lawyer" icon: "Lawyer"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Librarian id: Librarian
name: job-name-librarian name: job-name-librarian
description: job-description-librarian
playTimeTracker: JobLibrarian playTimeTracker: JobLibrarian
startingGear: LibrarianGear startingGear: LibrarianGear
icon: "Librarian" icon: "Librarian"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Mime id: Mime
name: job-name-mime name: job-name-mime
description: job-description-mime
playTimeTracker: JobMime playTimeTracker: JobMime
startingGear: MimeGear startingGear: MimeGear
icon: "Mime" icon: "Mime"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Musician id: Musician
name: job-name-musician name: job-name-musician
description: job-description-musician
playTimeTracker: JobMusician playTimeTracker: JobMusician
startingGear: MusicianGear startingGear: MusicianGear
icon: "Musician" icon: "Musician"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: ServiceWorker id: ServiceWorker
name: job-name-serviceworker name: job-name-serviceworker
description: job-description-serviceworker
playTimeTracker: JobServiceWorker playTimeTracker: JobServiceWorker
startingGear: ServiceWorkerGear startingGear: ServiceWorkerGear
icon: "ServiceWorker" icon: "ServiceWorker"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Captain id: Captain
name: job-name-captain name: job-name-captain
description: job-description-captain
playTimeTracker: JobCaptain playTimeTracker: JobCaptain
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: CentralCommandOfficial id: CentralCommandOfficial
name: job-name-centcomoff name: job-name-centcomoff
description: job-description-centcomoff
playTimeTracker: JobCentralCommandOfficial playTimeTracker: JobCentralCommandOfficial
setPreference: false setPreference: false
startingGear: CentcomGear startingGear: CentcomGear

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: HeadOfPersonnel id: HeadOfPersonnel
name: job-name-hop name: job-name-hop
description: job-description-hop
playTimeTracker: JobHeadOfPersonnel playTimeTracker: JobHeadOfPersonnel
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: AtmosphericTechnician id: AtmosphericTechnician
name: job-name-atmostech name: job-name-atmostech
description: job-description-atmostech
playTimeTracker: JobAtmosphericTechnician playTimeTracker: JobAtmosphericTechnician
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: ChiefEngineer id: ChiefEngineer
name: job-name-ce name: job-name-ce
description: job-description-ce
playTimeTracker: JobChiefEngineer playTimeTracker: JobChiefEngineer
requirements: requirements:
- !type:RoleTimeRequirement - !type:RoleTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: StationEngineer id: StationEngineer
name: job-name-engineer name: job-name-engineer
description: job-description-engineer
playTimeTracker: JobStationEngineer playTimeTracker: JobStationEngineer
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: TechnicalAssistant id: TechnicalAssistant
name: job-name-assistant name: job-name-technical-assistant
description: job-description-technical-assistant
playTimeTracker: JobTechnicalAssistant playTimeTracker: JobTechnicalAssistant
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -2,6 +2,7 @@
- type: job - type: job
id: ERTLeader id: ERTLeader
name: job-name-ertleader name: job-name-ertleader
description: job-description-ertleader
playTimeTracker: JobERTLeader playTimeTracker: JobERTLeader
setPreference: false setPreference: false
startingGear: ERTLeaderGearEVA startingGear: ERTLeaderGearEVA
@@ -46,6 +47,7 @@
- type: job - type: job
id: ERTEngineer id: ERTEngineer
name: job-name-ertengineer name: job-name-ertengineer
description: job-description-ertengineer
playTimeTracker: JobERTEngineer playTimeTracker: JobERTEngineer
setPreference: false setPreference: false
startingGear: ERTEngineerGearEVA startingGear: ERTEngineerGearEVA
@@ -90,6 +92,7 @@
- type: job - type: job
id: ERTSecurity id: ERTSecurity
name: job-name-ertsecurity name: job-name-ertsecurity
description: job-description-ertsecurity
playTimeTracker: JobERTSecurity playTimeTracker: JobERTSecurity
setPreference: false setPreference: false
startingGear: ERTEngineerGearEVA startingGear: ERTEngineerGearEVA
@@ -134,6 +137,7 @@
- type: job - type: job
id: ERTMedical id: ERTMedical
name: job-name-ertmedic name: job-name-ertmedic
description: job-description-ertmedic
playTimeTracker: JobERTMedical playTimeTracker: JobERTMedical
setPreference: false setPreference: false
startingGear: ERTMedicalGearEVA startingGear: ERTMedicalGearEVA
@@ -180,6 +184,7 @@
- type: job - type: job
id: ERTJanitor id: ERTJanitor
name: job-name-ertjanitor name: job-name-ertjanitor
description: job-description-ertjanitor
playTimeTracker: JobERTJanitor playTimeTracker: JobERTJanitor
setPreference: false setPreference: false
startingGear: ERTJanitorGearEVA startingGear: ERTJanitorGearEVA

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Chemist id: Chemist
name: job-name-chemist name: job-name-chemist
description: job-description-chemist
playTimeTracker: JobChemist playTimeTracker: JobChemist
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -3,6 +3,7 @@
- type: job - type: job
id: ChiefMedicalOfficer id: ChiefMedicalOfficer
name: job-name-cmo name: job-name-cmo
description: job-description-cmo
playTimeTracker: JobChiefMedicalOfficer playTimeTracker: JobChiefMedicalOfficer
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: MedicalDoctor id: MedicalDoctor
name: job-name-doctor name: job-name-doctor
description: job-description-doctor
playTimeTracker: JobMedicalDoctor playTimeTracker: JobMedicalDoctor
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: MedicalIntern id: MedicalIntern
name: job-name-intern name: job-name-intern
description: job-description-intern
playTimeTracker: JobMedicalIntern playTimeTracker: JobMedicalIntern
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: ResearchDirector id: ResearchDirector
name: job-name-rd name: job-name-rd
description: job-description-rd
playTimeTracker: JobResearchDirector playTimeTracker: JobResearchDirector
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Scientist id: Scientist
name: job-name-scientist name: job-name-scientist
description: job-description-scientist
playTimeTracker: JobScientist playTimeTracker: JobScientist
startingGear: ScientistGear startingGear: ScientistGear
icon: "Scientist" icon: "Scientist"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Detective id: Detective
name: job-name-detective name: job-name-detective
description: job-description-detective
playTimeTracker: JobDetective playTimeTracker: JobDetective
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: HeadOfSecurity id: HeadOfSecurity
name: job-name-hos name: job-name-hos
description: job-description-hos
playTimeTracker: JobHeadOfSecurity playTimeTracker: JobHeadOfSecurity
requirements: requirements:
- !type:RoleTimeRequirement - !type:RoleTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: SecurityCadet id: SecurityCadet
name: job-name-cadet name: job-name-cadet
description: job-description-cadet
playTimeTracker: JobSecurityCadet playTimeTracker: JobSecurityCadet
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: SecurityOfficer id: SecurityOfficer
name: job-name-security name: job-name-security
description: job-description-security
playTimeTracker: JobSecurityOfficer playTimeTracker: JobSecurityOfficer
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Warden id: Warden
name: job-name-warden name: job-name-warden
description: job-description-warden
playTimeTracker: JobWarden playTimeTracker: JobWarden
requirements: requirements:
- !type:DepartmentTimeRequirement - !type:DepartmentTimeRequirement

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Boxer id: Boxer
name: job-name-boxer name: job-name-boxer
description: job-description-boxer
playTimeTracker: JobBoxer playTimeTracker: JobBoxer
startingGear: BoxerGear startingGear: BoxerGear
setPreference: false setPreference: false

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Psychologist id: Psychologist
name: job-name-psychologist name: job-name-psychologist
description: job-description-psychologist
playTimeTracker: JobPsychologist playTimeTracker: JobPsychologist
startingGear: PsychologistGear startingGear: PsychologistGear
icon: "Psychologist" icon: "Psychologist"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Reporter id: Reporter
name: job-name-reporter name: job-name-reporter
description: job-description-reporter
playTimeTracker: JobReporter playTimeTracker: JobReporter
startingGear: ReporterGear startingGear: ReporterGear
icon: "Reporter" icon: "Reporter"

View File

@@ -1,6 +1,7 @@
- type: job - type: job
id: Zookeeper id: Zookeeper
name: job-name-zookeeper name: job-name-zookeeper
description: job-description-zookeeper
playTimeTracker: JobZookeeper playTimeTracker: JobZookeeper
startingGear: ZookeeperGear startingGear: ZookeeperGear
icon: "Zookeeper" icon: "Zookeeper"

View File

@@ -1,5 +1,7 @@
- type: department - type: department
id: Cargo id: Cargo
description: department-Cargo-description
color: "#A46106"
roles: roles:
- CargoTechnician - CargoTechnician
- Quartermaster - Quartermaster
@@ -7,6 +9,8 @@
- type: department - type: department
id: Civilian id: Civilian
description: department-Civilian-description
color: "#9FED58"
roles: roles:
- Bartender - Bartender
- Botanist - Botanist
@@ -29,6 +33,8 @@
- type: department - type: department
id: Command id: Command
description: department-Command-description
color: "#334E6D"
roles: roles:
- Captain - Captain
- CentralCommandOfficial - CentralCommandOfficial
@@ -41,6 +47,8 @@
- type: department - type: department
id: Engineering id: Engineering
description: department-Engineering-description
color: "#EFB341"
roles: roles:
- AtmosphericTechnician - AtmosphericTechnician
- ChiefEngineer - ChiefEngineer
@@ -49,6 +57,8 @@
- type: department - type: department
id: Medical id: Medical
description: department-Medical-description
color: "#52B4E9"
roles: roles:
- Chemist - Chemist
- ChiefMedicalOfficer - ChiefMedicalOfficer
@@ -58,6 +68,8 @@
- type: department - type: department
id: Security id: Security
description: department-Command-description
color: "#DE3A3A"
roles: roles:
- HeadOfSecurity - HeadOfSecurity
- SecurityCadet - SecurityCadet
@@ -67,6 +79,8 @@
- type: department - type: department
id: Science id: Science
description: department-Command-description
color: "#D381C9"
roles: roles:
- ResearchDirector - ResearchDirector
- Scientist - Scientist