Skip to content

Commit

Permalink
The Great Loadout Reorganizing (#1230)
Browse files Browse the repository at this point in the history
# Description

This was entirely too long overdue. I am reorganizing the entirety of
all ingame loadouts, so that it is possible to see what jobs are
actually missing loadout items. Every job in the game will have its own
loadout tab, each of them all sharing the same organization hierarchy
with *plainly visible blank spaces* that people can use to see what jobs
are in need of having things added to them.

Command category only contains Captain, Head of Personel, with space for
Centcomm roles and Blueshield if we ever add those. Instead all of the
"Department Specific Commands" are sorted with their respective
departments. Which makes it really obvious if for instance there's an
entire 2nd list of Head of Security drip...

# TODO

- [X] All of the Categories
- [x] Localize the categories
- [x] Make item groups for everything

## Organize Command

- [x] Captain
- [x] Head Of Personnel

## Organize Engineering

- [x] atmos tech
- [x] CE
- [x] senior engineer
- [x] station engineer
- [x] tech assistant

## Organize Epistemics
- [x] acolyte
- [x] cataloger
- [x] chaplain
- [x] golemancer
- [x] mystagogue
- [x] mystic
- [x] noviciate
- [x] psionic mantis

## Organize Logistics

- [x] cargo tech
- [x] courier
- [x] LO
- [x] salvage

## Organize Medical

- [x] chemist
- [x] CMO
- [x] doctor
- [x] medical intern
- [x] paramed
- [x] senior physician

## Organize Security

- [x] cadet
- [x] corpsman
- [x] detective
- [x] HOS
- [x] secoff
- [x] senior officer
- [x] warden

## Organize Service

- [x] bartender
- [x] botanist
- [x] chef
- [x] clown
- [x] janitor
- [x] lawyer
- [x] mime
- [x] musician
- [x] reporter

## GUH

- [x] Add literally everything we are missing
- [x] Do literally all of the Job specific Item Groups

<details><summary><h1>Media</h1></summary>
<p>

![Example Media Embed](https://example.com/thisimageisntreal.png)

</p>
</details>

# Changelog

:cl:
- fix: Reorganized Loadouts so that all Jobs now have their own job
specific tabs. The code for them has been thoroughly reorganized too,
such that figuring out which jobs are missing crap is way easier to do.
- add: Captain's Personal Weapon loadout category. Currently only
contains a choice between the antique laser pistol, or a pulse pistol.
Whichever choice is made will be used as a target for a traitor
objective.

---------

Signed-off-by: VMSolidus <[email protected]>
  • Loading branch information
VMSolidus authored Nov 18, 2024
1 parent 6d6cbdf commit 6c21325
Show file tree
Hide file tree
Showing 171 changed files with 12,579 additions and 5,352 deletions.
72 changes: 62 additions & 10 deletions Resources/Locale/en-US/loadouts/categories.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -7,29 +7,81 @@ loadout-category-Eyes = Eyes
loadout-category-Hands = Hands
loadout-category-Head = Head
loadout-category-Items = Items
# Jobs
loadout-category-Jobs = Jobs
loadout-category-JobsAUncategorized = Uncategorized
loadout-category-JobsCargo = Logistics
# Command
loadout-category-JobsCommand = Command
loadout-category-JobsCommandAUncategorized = Uncategorized
loadout-category-JobsCommandAUncategorized = All Command
loadout-category-JobsCommandCaptain = Captain
loadout-category-JobsCommandCE = Chief Engineer
loadout-category-JobsCommandCMO = Chief Medical Officer
loadout-category-JobsCommandHOP = Head of Personnel
loadout-category-JobsCommandHOS = Head of Security
loadout-category-JobsCommandQM = Logistics Officer
loadout-category-JobsCommandRD = Mystagogue
loadout-category-JobsCommandHeadOfPersonnel = Head of Personnel
# Engineering
loadout-category-JobsEngineering = Engineering
loadout-category-JobsEngineeringAAUncategorized = All Engineers
loadout-category-JobsEngineeringAtmosphericTechnician = Atmospheric Technician
loadout-category-JobsEngineeringChiefEngineer = Chief Engineer
loadout-category-JobsEngineeringSeniorEngineer = Senior Engineer
loadout-category-JobsEngineeringStationEngineer = Station Engineer
loadout-category-JobsEngineeringTechnicalAssistant = Technical Assistant
# Epistemics
loadout-category-JobsEpistemics = Epistemics
loadout-category-JobsEpistemicsAAUncategorized = All Epistemiologists
loadout-category-JobsEpistemicsAcolyte = Acolyte
loadout-category-JobsEpistemicsCataloger = Cataloger
loadout-category-JobsEpistemicsChaplain = Chaplain
loadout-category-JobsEpistemicsGolemancer = Golemancer
loadout-category-JobsEpistemicsMystagogue = Mystagogue
loadout-category-JobsEpistemicsMystic = Mystic
loadout-category-JobsEpistemicsNoviciate = Noviciate
loadout-category-JobsEpistemicsPsionicMantis = Psionic Mantis
# Logistics
loadout-category-JobsLogistics = Logistics
loadout-category-JobsLogisticsAUncategorized = All Logistics
loadout-category-JobsLogisticsCargoTechnician = Cargo Technician
loadout-category-JobsLogisticsCourier = Courier
loadout-category-JobsLogisticsLogisticsOfficer = Logistics Officer
loadout-category-JobsLogisticsSalvageSpecialist = Salvage Specialist
# Medical
loadout-category-JobsMedical = Medical
loadout-category-JobsScience = Epistemics
loadout-category-JobsMedicalAUncategorized = All Medical
loadout-category-JobsMedicalChemist = Chemist
loadout-category-JobsMedicalChiefMedicalOfficer = Chief Medical Officer
loadout-category-JobsMedicalMedicalDoctor = Medical Doctor
loadout-category-JobsMedicalMedicalIntern = Medical Intern
loadout-category-JobsMedicalParamedic = Paramedic
loadout-category-JobsMedicalPsychologist = Psychologist
loadout-category-JobsMedicalSeniorPhysician = Senior Physician
# Security
loadout-category-JobsSecurity = Security
loadout-category-JobsSecurityAUncategorized = All Security
loadout-category-JobsSecurityCadet = Cadet
loadout-category-JobsSecurityCorpsman = Corpsman
loadout-category-JobsSecurityDetective = Detective
loadout-category-JobsSecurityHeadOfSecurity = Head of Security
loadout-category-JobsSecuritySecurityOfficer = Security Officer
loadout-category-JobsSecuritySeniorOfficer = Senior Officer
loadout-category-JobsSecurityWarden = Warden
# Service
loadout-category-JobsService = Service
loadout-category-JobsServiceUncategorized = Uncategorized
loadout-category-JobsServiceAUncategorized = All Service
loadout-category-JobsServiceBartender = Bartender
loadout-category-JobsServiceBotanist = Botanist
loadout-category-JobsServiceChef = Chef
loadout-category-JobsServiceClown = Clown
loadout-category-JobsServiceJanitor = Janitor
loadout-category-JobsServiceLawyer = Lawyer
loadout-category-JobsServiceMime = Mime
loadout-category-JobsServiceMusician = Musician
loadout-category-JobsServiceReporter = Reporter
loadout-category-Mask = Mask
loadout-category-Neck = Neck
loadout-category-Outer = Outer
Expand Down
774 changes: 724 additions & 50 deletions Resources/Locale/en-US/loadouts/itemgroups.ftl

Large diffs are not rendered by default.

5 changes: 0 additions & 5 deletions Resources/Locale/en-US/loadouts/jobs/engineering.ftl

This file was deleted.

22 changes: 22 additions & 0 deletions Resources/Locale/en-US/loadouts/jobs/engineering/engineering.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
loadout-name-LoadoutEngineeringChickenSuit = eggmospheric technician suit
loadout-description-LoadoutEngineeringChickenSuit = For the Eggmos tech who always knows where home is...
loadout-description-LoadoutEngineeringUniformJumpskirtSenior = A skirt fit for the best of the best.
loadout-description-LoadoutEngineeringUniformJumpsuitSenior = A suit fit for the best of the best.
loadout-description-LoadoutEngineeringItemInflatable = A box containing inflatable walls and doors, for quickly patching up breaches.
loadout-name-LoadoutAtmosphericTechnicianBeltUtility = utility belt (empty)
loadout-name-LoadoutAtmosphericTechnicianBeltUtilityAtmos = utility belt (filled, Atmospheric Tools)
loadout-description-LoadoutAtmosphericTechnicianBeltUtilityAtmos =
This standard engineering belt includes a holofan emitter, as well as a gas analyzer instead of a multitool.
loadout-name-LoadoutChiefEngineerBelt = advanced utility belt (empty)
loadout-name-LoadoutChiefEngineerBeltFilled = advanced utility belt (filled)
loadout-name-LoadoutSeniorEngineerBeltUtility = utility belt (empty)
loadout-name-LoadoutSeniorEngineerBeltUtilityEngineering = utility belt (filled)
loadout-name-LoadoutSeniorEngineerBeltUtilityAtmos = utility belt (filled, Atmospheric Tools)
loadout-description-LoadoutSeniorEngineerBeltUtilityAtmos =
This standard engineering belt includes a holofan emitter, as well as a gas analyzer instead of a multitool.
loadout-name-LoadoutEngineeringBeltUtilityAtmos = utility belt (filled, Atmospheric Tools)
3 changes: 0 additions & 3 deletions Resources/Locale/en-US/loadouts/jobs/medical.ftl

This file was deleted.

19 changes: 19 additions & 0 deletions Resources/Locale/en-US/loadouts/jobs/medical/medical.ftl
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
loadout-description-LoadoutMedicalUniformJumpskirtSenior = A skirt fit for the best of the best.
loadout-description-LoadoutMedicalUniformJumpsuitSenior = A suit fit for the best of the best.
loadout-description-LoadoutMedicalHeadBeretSeniorPhysician = A beret fit for the best of the best.
loadout-name-LoadoutMedicalDoctorBeltMedical = medical belt (empty)
loadout-name-LoadoutMedicalDoctorBeltMedicalFilled = medical belt (filled)
loadout-name-LoadoutMedicalDoctorBeltMedicalAdvancedFilled = medical belt (filled, advanced)
loadout-description-LoadoutMedicalDoctorBeltMedicalAdvancedFilled =
The standard alotment of topical medicines in this pouch have been replaced with their advanced varieties, such as medicated sutures and regenerative mesh.
loadout-name-LoadoutChiefMedicalOfficerBeltMedical = medical belt (empty)
loadout-name-LoadoutChiefMedicalOfficerBeltMedicalAdvancedFilled = medical belt (filled, advanced)
loadout-description-LoadoutChiefMedicalOfficerBeltMedicalAdvancedFilled =
The standard alotment of topical medicines in this pouch have been replaced with their advanced varieties, such as medicated sutures and regenerative mesh.
loadout-name-LoadoutSeniorPhysicianBeltMedical = medical belt (empty)
loadout-name-LoadoutSeniorPhysicianBeltMedicalAdvancedFilled = medical belt (filled, advanced)
loadout-description-LoadoutSeniorPhysicianBeltMedicalAdvancedFilled =
The standard alotment of topical medicines in this pouch have been replaced with their advanced varieties, such as medicated sutures and regenerative mesh.
3 changes: 3 additions & 0 deletions Resources/Migrations/eeMigration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -117,3 +117,6 @@ MailPAI: MailNFPAI
# 2024-08-27
Oracle: OracleSpawner
SophicScribe: SophicScribeSpawner

# 2024-11-16
GlassBoxLaser: null #Captain's Laser was moved to Loadouts.
34 changes: 34 additions & 0 deletions Resources/Prototypes/Catalog/Fills/Items/belt.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,22 @@
- id: Welder
- id: Multitool

- type: entity
id: ClothingBeltUtilityAtmos
parent: ClothingBeltUtility
suffix: Engineering
components:
- type: StorageFill
contents:
- id: Crowbar
- id: Wrench
- id: Screwdriver
- id: Wirecutter
- id: Welder
- id: Multitool
- id: GasAnalyzer
- id: HolofanProjector

- type: entity
id: ClothingBeltChiefEngineerFilled
parent: ClothingBeltChiefEngineer
Expand Down Expand Up @@ -83,6 +99,24 @@
- id: Gauze
- id: EmergencyMedipen #You never know what people are going to latejoin into

- type: entity
id: ClothingBeltMedicalAdvancedFilled
parent: ClothingBeltMedical
suffix: Filled
components:
- type: StorageFill
contents:
- id: MedicatedSuture
amount: 2
- id: RegenerativeMesh
amount: 1
- id: Bloodpack
amount: 1
- id: Gauze
- id: EmergencyMedipen
- id: BruteAutoInjector
- id: BurnAutoInjector

- type: entity
id: ClothingBeltMedicalEMTFilled
parent: ClothingBeltMedicalEMT
Expand Down
48 changes: 6 additions & 42 deletions Resources/Prototypes/Catalog/Fills/Lockers/heads.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,55 +32,38 @@
components:
- type: StorageFill
contents:
- id: ClothingOuterArmorCaptainCarapace
- id: NukeDisk
- id: PinpointerNuclear
# - id: CaptainIDCard # DeltaV - Replaced by the spare ID system
- id: CaptainIDCard
- id: ClothingOuterHardsuitCap
- id: WeaponDisabler
- id: CommsComputerCircuitboard
- id: ClothingHeadsetAltCommand
- id: SpaceCash1000
- id: PlushieNuke
prob: 0.1
- id: CigarGoldCase
prob: 0.25
- id: ClothingBeltSheathFilled
- id: DoorRemoteCommand
- id: RubberStampCaptain
# - id: WeaponAntiqueLaser # DeltaV - Remove in favor of the glass box
- id: JetpackCaptainFilled
- id: MedalCase
- id: LunchboxCommandFilledRandom # Delta-V Lunchboxes!
prob: 0.3

- type: entity
id: LockerCaptainFilled
suffix: Filled, AntiqueLaser
suffix: Filled, AntiqueLaser # Deprecated, Antique laser is now part of Captain's Loadouts.
parent: LockerCaptain
components:
- type: StorageFill
contents:
- id: ClothingOuterArmorCaptainCarapace
- id: NukeDisk
- id: PinpointerNuclear
# - id: CaptainIDCard # DeltaV - Replaced by the spare ID system
- id: WeaponDisabler
- id: CaptainIDCard
- id: CommsComputerCircuitboard
- id: ClothingHeadsetAltCommand
- id: SpaceCash1000
- id: PlushieNuke
prob: 0.1
- id: CigarGoldCase
prob: 0.25
- id: ClothingBeltSheathFilled
- id: DoorRemoteCommand
- id: RubberStampCaptain
- id: WeaponAntiqueLaser
- id: JetpackCaptainFilled
- id: MedalCase
- id: ClothingHeadHatBeretCap # Nyanotrasen - Captain's Beret
- id: LunchboxCommandFilledRandom # Delta-V Lunchboxes!
- id: LunchboxCommandFilledRandom
prob: 0.3

- type: entity
Expand All @@ -90,25 +73,17 @@
components:
- type: StorageFill
contents:
- id: ClothingOuterArmorCaptainCarapace
- id: NukeDisk
- id: PinpointerNuclear
# - id: CaptainIDCard # Delta V - Replaced by spare ID system. The funny biscuit that I cant even eat.
- id: WeaponDisabler
- id: CaptainIDCard
- id: CommsComputerCircuitboard
- id: ClothingHeadsetAltCommand
- id: SpaceCash1000
- id: PlushieNuke
prob: 0.1
- id: CigarGoldCase
prob: 0.25
- id: ClothingBeltSheathFilled
- id: DoorRemoteCommand
- id: RubberStampCaptain
- id: JetpackCaptainFilled
- id: MedalCase
- id: ClothingHeadHatBeretCap # Nyanotrasen - Captain's Beret
- id: LunchboxCommandFilledRandom # Delta-V Lunchboxes!
- id: LunchboxCommandFilledRandom
prob: 0.3

- type: entity
Expand All @@ -124,23 +99,13 @@
- id: BoxID
- id: BoxHeadset
- id: IDComputerCircuitboard
- id: WeaponDisabler
- id: ClothingOuterCoatHoPArmored # DeltaV
- id: ClothingOuterArmorDuraVest # DeltaV - replaced HoP's armoured coat with a standard stabproof, pending HoPcoat resprite
- id: CigarGoldCase
prob: 0.25
# Fuck the HoP they don't deserve fucking cigars.
# Yes they do fuck you.
- id: DoorRemoteService
- id: ClothingNeckGoldmedal
- id: RubberStampHop
- id: RubberStampDenied
- id: RubberStampApproved
- id: BoxEncryptionKeyPassenger
- id: BoxEncryptionKeyService
- id: AccessConfigurator
- id: BookIanDossier # DeltaV - HoP steal objective, see Resources/Prototypes/DeltaV/Entities/Objects/Misc/ian_dossier.yml
- id: ClothingHandsGlovesInspection # DeltaV - Add inspection gloves for HoP.
- id: LunchboxCommandFilledRandom # Delta-V Lunchboxes!
prob: 0.3

Expand All @@ -154,7 +119,6 @@
- id: ClothingOuterHardsuitEngineeringWhite
- id: ClothingMaskBreath
- id: ClothingEyesGlassesMeson
- id: ClothingBeltChiefEngineerFilled
- id: ClothingShoesBootsMagAdv
- id: ClothingHandsGlovesColorYellow
- id: CigarCase
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,6 @@
- type: loadout
id: LoadoutBackpackSatchel
- type: loadout
id: LoadoutBackpackClown
id: LoadoutItemBackpackSatchelLeather
- type: loadout
id: LoadoutBackpackMerc
Loading

0 comments on commit 6c21325

Please sign in to comment.