## About The Pull Request
As title. I moved the /tg/ toys (dice, plushies, cards) into the Toys
tab (for the longest time they've been in the Others tab). Also
categorised them into Plushies, Cards, Dice, Balls, Art tools.
## Why It's Good For The Game
## Proof Of Testing
<img width="400" alt="image"
src="https://github.com/user-attachments/assets/5f08006f-c096-4b1f-b57f-44987bdf09ce"
/>
</details>
## Changelog
🆑
code: Tidied up the Toys tab in the loadout menu.
/🆑
---------
Co-authored-by: Alexis <catmc8565@gmail.com>
## About The Pull Request
Fix loadout bugs from the latest upstream
## Why It's Good For The Game
its bugs
## Proof Of Testing
I did
## Changelog
🆑
fix: fixed receiving duplicate loadout items
fix: fixed receiving job-restricted loadout items on incorrect jobs
/🆑
## About The Pull Request
Adds support for holiday-specific loadout items.
They are only visible in the loadout during the holiday.
When the holiday ends, the item's removed from your loadout list.
During the entire month of December (IE, During the "Festive Season"
holiday) you can equip a recolorable santa hat as a loadout option
## Why It's Good For The Game
Holiday cheer (Also assistants already spawn with one)
## Changelog
🆑 Melbert
add: You can select a recolorable Santa Hat in the loadout during the
festive season (December 1st - 31st)
/🆑
## About The Pull Request
Closes#93635
`unique_reskin` is no longer a list on `/item`, now `/datum/atom_skin`
The actual reskinning behavior has been moved out to
`/datum/component/reskinable_item`
PKC reskinning is now handled via alt-click reskin, rather than via the
retooling kit. The retooling kit has been removed.
There's no limit on how many times you can reskin your PKC (though
perhaps we limit it to one reskin and keep the retooling kit as a way to
allow a miner to reskin it a second time?)
The Ashen Skull unique reskin is still a trophy, and instead unlocks its
unique reskin option in the alt-click radial.
## Why It's Good For The Game
I'm unsure why the retooling kit exists on its own, when it's relatively
cheap and just performs the behavior of alt-click reskinning.
So to keep it consistent with all other forms of reskinning I've just
made it baseline. To accomplish that I refactored reskinning.
The new form of reskinning allows for greater potential in adding
reskins, allowing far more than just an icon state change. Also we can
put it on turfs and mobs and structures now which is cool I guess
There's also the added benefit of being able to see an item's reskins
without needing to instantiate it, which the loadout menu uses to great
effect.
## Changelog
🆑 Melbert
refactor: Refactored item reskinning (the alt-click way), report any
oddities with that
del: Deleted the crusher retool kit, now you can just reskin your
crusher with alt-click. The Skull skin is still locked behind having the
Ashen Skull trophy applied.
fix: Stunswords no longer have an incorrect lore blurb
fix: Fixed loadout item reskinning's UI
/🆑
## About The Pull Request
This is me picking up #93077 but with code changes relative to the two
new flags that Krysonism added in his PR, which unfortunately he never
finished.
## Why It's Good For The Game
Monkeys should be able to ventcrawl even if their left or right arm is
actually a chainsaw or armblade or whatever. See #93077
## Changelog
🆑 Krysonism
balance: prosthetic item limbs are no longer considered equipped items
for some purposes such as ventcrawling.
/🆑
---------
Co-authored-by: Krysonism <robustness13@hotmail.com>
## About The Pull Request
### Adds job palette system to loadout
Loadout items now have a system for coloring the equipped item based on
job palettes.
Job palettes are generically defined but can be overriden on a per-job,
per-department basis for subtypes.
### Adds overalls to the Loadout
These use the job palette system.
<img width="956" height="954" alt="image"
src="https://github.com/user-attachments/assets/7cc03eec-11c6-48e1-ace5-7097bf820a57"
/>
Some notes:
- Assistant always picks black. Initially I was going to go full grey,
but black fits grey and colored jumpsuits.
- Clown is a bit of a sin, but it's kind of unavoidable.
- Jobs with suit storage items will attempt to relocate them - Either to
the backpack, belt slot, or one of the two hands. If all of these fail
it'll just delete the suit storage item.
- Before anyone says "The botanist color doesn't fit!!", that's
LITERALLY the color we already give them in their vendor
## Why It's Good For The Game
The job palette system lets us add more variety to loadouts, opening up
player customization without harming the indetifiability of jobs at a
glance.
In this case, overalls are a retro sci-fi stable (see: Paranoia ttrpg)
but we couldn't hand them out willy-nilly as they were fully recolorable
- A scientist could have bright red overalls, looking more like a
security officer. But the palette system gives the scientist a dark
purple set of overalls, which makse them very obviously scientist.
Colors are subject to change.
## Changelog
🆑 Melbert
add: Adds job-colored overalls to the loadout
/🆑
## About The Pull Request
moves all implementations (im aware of) for "Im a parent type dont spawn
me please" to the datum layer to standardized behavior
adds a standerized proc for filtering out "bad" items that we dont want
spawning. applies to it the subtype vendor, gifts, and a new spawner and
mystery box for a random gun (neither playerfacing)
"port" of https://github.com/shiptest-ss13/Shiptest/pull/4621https://github.com/user-attachments/assets/22f6f0b2-b44e-411a-b3dc-6b97dc0287aa
small warning: I dont have EVERY abstract type defined right now but,
ive done a good enough job for now. Im tired of data entry rn
## Why It's Good For The Game
standardizing behavior. Might be a micro hit to performance however
having this lets us not rely on icon state to determine whether
something is a parent type and makes it much easier to tell something is
a parent type (could be applied further to things like admin spawning
menus and things like that).
need feedback on if this is actually good for the game.
## Changelog
🆑
add: Soda cans show up in the silver slime drink table.
add: Examine tag for items that are not mean to show up ingame.
refactor: Standardizes how gifts rule out abstract types.
fix: gifts no longer check if something has an inhand, massively
expanding the list of potential items.
/🆑
## About The Pull Request
Puts le new "tactical workboots" in le loadout
## Why It's Good For The Game
I think there's a fair argument that there are many jobs on the station
would REASONABLY wear boots over flimsy sneakers:
- Assistants
- Botanists (Well, preferably would use tan, but that's engi's thing)
- Atmospheric Technicians (Now that I think about it, why don't these
guys spawn with tan engi workboots?)
- Cargo Technicians
- Janitor (Seriously this is the grimiest guy ever)
- Scientists (Some)
So let them wear boots. Jumpsuited and booted goon is sci-fi kino.
## Changelog
🆑 Melbert
add: Adds Black Workboots to Loadout
/🆑
(cherry picked from commit ef1cf7ad54)
## About The Pull Request
Puts le new "tactical workboots" in le loadout
## Why It's Good For The Game
I think there's a fair argument that there are many jobs on the station
would REASONABLY wear boots over flimsy sneakers:
- Assistants
- Botanists (Well, preferably would use tan, but that's engi's thing)
- Atmospheric Technicians (Now that I think about it, why don't these
guys spawn with tan engi workboots?)
- Cargo Technicians
- Janitor (Seriously this is the grimiest guy ever)
- Scientists (Some)
So let them wear boots. Jumpsuited and booted goon is sci-fi kino.
## Changelog
🆑 Melbert
add: Adds Black Workboots to Loadout
/🆑
## About The Pull Request
Borg me dogtag is a loadout item instead of a quirk
## Why It's Good For The Game
The quirk doesn't do anything
## Changelog
🆑 Melbert
del: "Cyborg Pre-screened dogtag" quirk. It's a loadout item now.
/🆑
## About The Pull Request
Borg me dogtag is a loadout item instead of a quirk
## Why It's Good For The Game
The quirk doesn't do anything
## Changelog
🆑 Melbert
del: "Cyborg Pre-screened dogtag" quirk. It's a loadout item now.
/🆑
Revival of https://github.com/tgstation/tgstation/pull/86482, which is
even more doable now that we have rustg iconforge generation.
What this PR does:
- Sets up every single GAGS icon in the game to have their own preview
icon autogenerated during compile. This is configurable to not run
during live. The icons are created in `icons/map_icons/..`
- This also has the side effect of providing accurate GAGS icons for
things like the loadout menu. No more having to create your own
previews.

<details><summary>Mappers rejoice!</summary>


</details>
<details><summary>Uses iconforge so it does not take up much time during
init</summary>

</details>
---
this still applies:
Note for Spriters:
After you've assigned the correct values to vars, you must run the game
through init on your local machine and commit the changes to the map
icon dmi files. Unit tests should catch all cases of forgetting to
assign the correct vars, or not running through init.
Note for Server Operators:
In order to not generate these icons on live I've added a new config
entry which should be disabled on live called GENERATE_ASSETS_IN_INIT in
the config.txt
No more error icons in SDMM and loadout.
🆑
refactor: preview icons for greyscale items are now automatically
generated, meaning you can see GAGS as they actually appear ingame while
mapping or viewing the loadout menu.
/🆑
---------
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
## About The Pull Request
Since when previewing your character it doesn't actually put the loadout
items in a case it needs to be searching in the mob like normal
## Why It's Good For The Game
Fixes#3860
## Proof Of Testing
Tested it before and after with all 3 loadout pref options
## Changelog
🆑
fix: fixed GAGS modifications to loadout items not showing in preview
when using place all in case pref
/🆑
## About The Pull Request
Revival of https://github.com/tgstation/tgstation/pull/86482, which is
even more doable now that we have rustg iconforge generation.
What this PR does:
- Sets up every single GAGS icon in the game to have their own preview
icon autogenerated during compile. This is configurable to not run
during live. The icons are created in `icons/map_icons/..`
- This also has the side effect of providing accurate GAGS icons for
things like the loadout menu. No more having to create your own
previews.

<details><summary>Mappers rejoice!</summary>


</details>
<details><summary>Uses iconforge so it does not take up much time during
init</summary>

</details>
---
### Copied from https://github.com/tgstation/tgstation/pull/86482 as
this still applies:
Note for Spriters:
After you've assigned the correct values to vars, you must run the game
through init on your local machine and commit the changes to the map
icon dmi files. Unit tests should catch all cases of forgetting to
assign the correct vars, or not running through init.
Note for Server Operators:
In order to not generate these icons on live I've added a new config
entry which should be disabled on live called GENERATE_ASSETS_IN_INIT in
the config.txt
## Why It's Good For The Game
No more error icons in SDMM and loadout.
## Changelog
🆑
refactor: preview icons for greyscale items are now automatically
generated, meaning you can see GAGS as they actually appear ingame while
mapping or viewing the loadout menu.
/🆑
---------
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
## About The Pull Request
Adds horse and unicorn plushies. Available from cargo, plus horse
plushie is available as a loadout option.

## Why It's Good For The Game
Horses are the original sports car. They're like big dogs you can ride.
They're like motorcycles that love you back. We have horses to thank for
pulling our ambulances and fire trucks before engines were invented. God
I fucking love horses.
Unicorns are okay.
## Changelog
🆑
add: horse and unicorn plushies
/🆑
## About The Pull Request
Adds horse and unicorn plushies. Available from cargo, plus horse
plushie is available as a loadout option.

## Why It's Good For The Game
Horses are the original sports car. They're like big dogs you can ride.
They're like motorcycles that love you back. We have horses to thank for
pulling our ambulances and fire trucks before engines were invented. God
I fucking love horses.
Unicorns are okay.
## Changelog
🆑
add: horse and unicorn plushies
/🆑
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->
## About The Pull Request
So yesterday I've spotted that we had wrong SLOTS_AMT value set, and
went a bit down a rabbit hole and found how abhorrent our
ITEM_SLOT_BACKPACK and ITEM_SLOT_BELTPACK usage is. They're not real
inventory slots, but just "hints" at items being located in backpacks or
belts, or instructions to put an item into a belt/backpack. This PR
rewrites all usages of them as "hints", and adds an equip_to_storage
proc used to equip an item into a storage positioned in a certain slot,
so ``equip_to_slot_if_possible(item, ITEM_SLOT_BACKPACK)`` is now
``equip_to_storage(item, ITEM_SLOT_BACK)``
## Why It's Good For The Game
Its really stupid and we shouldn't have those as slot flags,
ITEM_SLOT_HANDS at least makes sense but those two are just absurd.
Should make equipping things into non-backpack storage a bit easier too,
in case we end up going through with the idea of suit/uniform pockets
being a major part of player inventory.
## Changelog
<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and its effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->
🆑
refactor: Refactored how backpack and belt contents are handled in mob
inventory code, report any issues with lingering item effects or
inability to equip things into them!
/🆑
<!-- Both 🆑's are required for the changelog to work! You can put
your name to the right of the first 🆑 if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->
## About The Pull Request
So yesterday I've spotted that we had wrong SLOTS_AMT value set, and
went a bit down a rabbit hole and found how abhorrent our
ITEM_SLOT_BACKPACK and ITEM_SLOT_BELTPACK usage is. They're not real
inventory slots, but just "hints" at items being located in backpacks or
belts, or instructions to put an item into a belt/backpack. This PR
rewrites all usages of them as "hints", and adds an equip_to_storage
proc used to equip an item into a storage positioned in a certain slot,
so ``equip_to_slot_if_possible(item, ITEM_SLOT_BACKPACK)`` is now
``equip_to_storage(item, ITEM_SLOT_BACK)``
## Why It's Good For The Game
Its really stupid and we shouldn't have those as slot flags,
ITEM_SLOT_HANDS at least makes sense but those two are just absurd.
Should make equipping things into non-backpack storage a bit easier too,
in case we end up going through with the idea of suit/uniform pockets
being a major part of player inventory.
## Changelog
<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and its effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->
🆑
refactor: Refactored how backpack and belt contents are handled in mob
inventory code, report any issues with lingering item effects or
inability to equip things into them!
/🆑
<!-- Both 🆑's are required for the changelog to work! You can put
your name to the right of the first 🆑 if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
## About The Pull Request
I unhid ckey-locked and donor-locked items in #3747, but it's been
expressed that people don't want to see items they'll never be able to
obtain, so this re-hides them (while still keeping donor-locked ones
visible, so people can see what they'll be getting if they donate)
## Why It's Good For The Game
Hide items you'll never be able to use
## Proof Of Testing
Tested both with and without having a ckey-locked item for my ckey
## Changelog
🆑
qol: ckey-locked loadout items that you can't obtain are hidden again
/🆑
## About The Pull Request
Is this user a donator validation was being done in the `deserialize`
proc for the pref which is bad because if someone was auto reconnected
to the server after restart and joins right as it restarts it'll be run
before the ranks system has loaded meaning this check will always fail
and remove the item from their loadout. Moved the validation to when the
player spawns in, so ranks is guaranteed to be loaded. Also changed
something that was checking the donator list directly to use the proc
for it. Also removed two unused variables that got deprecated in #3747
## Why It's Good For The Game
Fixes#3773
## Proof Of Testing
Tested it on a local before and after
## Changelog
🆑
fix: fixed donator-only loadout items disappearing from donator's
loadouts
/🆑
## About The Pull Request
Upstream had TGUI changes it broke stuff :(
- Updated our SideDropdown component (because tgui-core Dropdown still
doesn't let you specify a placement besides top and bottom) - fixes the
character slot, background, and preview type dropdowns being broken
- Fix the TGUI color picker being broken
- Fixed the character preview being too small
- Removed extra delete character button
- Fixed character lore tab text areas being small
- Fixed character lore tab text areas being insanely laggy to type in
- Ripped out skyrat's way of adding info about loadout item restrictions
(the blue toolbox icon) because tg now has a way to do it
## Why It's Good For The Game
Shits fucked
## Proof Of Testing
Oh it's a whole thing
## Changelog
🆑
fix: the character setup menu is significantly less messed up and broken
now
/🆑
## About The Pull Request
Loadout equipping code checks mob equipment when running `on_equip_item`
which would normally be fine because it eventually loops to the items in
the case but if a job has the same type path as something in the
loadout, say `/obj/item/clothing/head/beret` in the loadout and
`/obj/item/clothing/head/beret/blueshield` in the job, it'll apply the
loadout prefs to the job item because that's earlier in the list and
that can break shit
## Why It's Good For The Game
Fixes#3667
## Proof Of Testing
<details>
<summary>Screenshots/Videos</summary>

</details>
## Changelog
🆑
fix: fixed loadout item customization breaking job equipment under
certain circumstances
/🆑
Improves how the loadout menu looks by switching it to the new
ImageButton component, converting recolorable/reskinnable to use icons
with tooltips, and allowing items within a category to be grouped up
together (only used by pocket items as of now)
<details>
<summary>How it looks:</summary>


</details>
Monocles have been made prescription, and prescription, contains pens,
hair color, and other misc tags have been removed.
<details>
<summary>Additionally, plushies now have better baked-in sprites for
loadouts, with randomized lizard plushie receiving a coat of rainbow
paint in place of the removed tooltip.</summary>

</details>
Blue button make it hard to figure out details on certain items, and
tiny grey text is borderline unreadable. Also our pocket items category
is horribly bloated.
🆑
qol: Redesigned the loadout UI
balance: Monocles now work as prescription glasses
image: Loadout plushies no longer use mapper previews for their images
/🆑
## About The Pull Request
Improves how the loadout menu looks by switching it to the new
ImageButton component, converting recolorable/reskinnable to use icons
with tooltips, and allowing items within a category to be grouped up
together (only used by pocket items as of now)
<details>
<summary>How it looks:</summary>


</details>
Monocles have been made prescription, and prescription, contains pens,
hair color, and other misc tags have been removed.
<details>
<summary>Additionally, plushies now have better baked-in sprites for
loadouts, with randomized lizard plushie receiving a coat of rainbow
paint in place of the removed tooltip.</summary>

</details>
## Why It's Good For The Game
Blue button make it hard to figure out details on certain items, and
tiny grey text is borderline unreadable. Also our pocket items category
is horribly bloated.
## Changelog
🆑
qol: Redesigned the loadout UI
balance: Monocles now work as prescription glasses
image: Loadout plushies no longer use mapper previews for their images
/🆑
## About The Pull Request
This adds holodisks to the loadout options pool.
## Why It's Good For The Game
I have _never_ seen this item used in game. Like many other cool items
it has been banished to the toy vendor, but unlike the hoverboard it is
not just a vanity item to show that you have lots of money. By taking it
out into the light alongside dice and trading cards I hope it will be
used more often, because holograms are cool. From what I understand the
item does not conflict with the loadout guidelines, it's an in-pocket
item so it does not conflict with silhouette, it is not distracting for
the same reason, most jobs can purchase it roundstart (I believe only
one or two jobs lack the roundstart credits to afford it), and because
it is a hologram it cannot provide much mechanical benefit outside of
roleplay. Ideally these would be used to record things like this:

That would be a cool thing to find on a dead person.
## Changelog
🆑
add: Added Holodisks to loadout options
/🆑
## About The Pull Request
Classic case of "this accepts a datum not a typepath".
Though weirdly it works anyways, likely because it's modifying the list
in place
## About The Pull Request
- Selecting Wallet in the loadout, will equip the wallet when you load
into the game. It will auto-fill the wallet with small items from your
roundstart kit like quirk items or other loadout items.
- Selecting Lipstick in the loadout will automatically apply it to your
character. You still get the lipstick item at game start.
- Deletes all the preset lipstick colors, now you can just pick what
color you want. You can also pick what layer the lipstick starts at
(high, middle, low).
## Why It's Good For The Game
- Makes it work like the station trait (except the money part)
- Convenience
- Extra customization
## Changelog
🆑 Melbert
qol: Wallet loadout item comes pre-equipped
qol: Lipstick loadout item comes pre-applied
qol: You can choose your lipstick color from any color now. You can also
choose what layer it defaults to.
/🆑
## About The Pull Request
Recently, I realized (almost) every (roundstart) species have their own
Plushies, Spesifically in Loadouts
As a cause
This PR adds the human plushie from SS14 as a common, obtainable plushie
https://github.com/user-attachments/assets/678505c7-7764-4557-ba14-657011e0122b
Note: this is my first PR in a good while, tell me if i missed anything
or you have suggestions
Port from:
https://github.com/space-wizards/space-station-14/pull/23518
## Why It's Good For The Game
Another species plushie, similar to moth, lizard, and plasmaman plushies
Nonhumans can now bring their own completely horrible quality human
plushie to their work, Similar to how you can bring your own lizard
plushie.
## Changelog
🆑
add: Human plushie has been added to the game, Obtainable thru Cargo,
Loadouts and Spawners.
/🆑
## About The Pull Request
Recently, I realized (almost) every (roundstart) species have their own
Plushies, Spesifically in Loadouts
As a cause
This PR adds the human plushie from SS14 as a common, obtainable plushie
https://github.com/user-attachments/assets/678505c7-7764-4557-ba14-657011e0122b
Note: this is my first PR in a good while, tell me if i missed anything
or you have suggestions
Port from:
https://github.com/space-wizards/space-station-14/pull/23518
## Why It's Good For The Game
Another species plushie, similar to moth, lizard, and plasmaman plushies
Nonhumans can now bring their own completely horrible quality human
plushie to their work, Similar to how you can bring your own lizard
plushie.
## Changelog
🆑
add: Human plushie has been added to the game, Obtainable thru Cargo,
Loadouts and Spawners.
/🆑
## About The Pull Request
This pull request makes the flower items that can be worn in the hair no
longer donator only, just like on TG.
## Why It's Good For The Game
Cute boys everywhere may rejoice for they may wear a cute flower in
their hair
## Proof Of Testing

## Changelog
🆑 ReturnToZender
qol: Flowers no longer donator-only in the loadout
Fix: Donator Only nullcheck from Skyrat to work properly
/🆑