## About The Pull Request
`Moved` -> registers id card in wallet -> `dropped` -> unregisters id
card
Fixes it by registering in dropped. This does mean we register,
unregister, and register again, which is less than ideal - but I'm not
sure how else to tackle this cleanly...
## Changelog
🆑 Melbert
fix: Fix wallet (again)
/🆑
## About The Pull Request
The signals weren't registered if the PDA/wallet were already equipped
in the ID slot.
## Changelog
🆑
fix: Fixed ID cards sometimes not functioning within wallets/PDAs
/🆑
## About The Pull Request
ID cards/MMI mech access/simple mob access/pAIs now use signals instead
of checking specific slots with mob checks. We do this through mob's
``get_access`` proc that collects all access a mob has with a
collect_access signal.
## Why It's Good For The Game
It looks cleaner and we no longer individually check `check_access` for
every single item that may have access. It's cleaner to put it all
together and check in one go with all the access we've got. This also
makes it easier to add items that hold access that aren't necessarily
IDs but you want to be able to open stuff with.
## Changelog
🆑
refactor: ID checking for access has been reworked, please make a bug
report if anything that's supposed to grant access is not working.
/🆑
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
## About The Pull Request
<img width="565" height="201" alt="image"
src="https://github.com/user-attachments/assets/f747992c-82d7-4cd2-9d5c-b94b7de37cdd"
/>
<img width="618" height="108" alt="image"
src="https://github.com/user-attachments/assets/8d5c4e25-87ea-4e53-b9e6-e95e26b3e69f"
/>
- N-spect scanners can no longer print reports
- Clown N-spect scanners have been removed as printing reports was their
primary function
- Security no longer get bounties to loot the brig's equipment. The
contraband bounty is still available.
- Patrol bounties have been reworked.
- A patrol bounty will give you an area and a number of steps that you
must take in an area.
- To complete the bounty, you must walk to the area and take that many
steps. It's that simple.
- Your ID card will update you as you progress the bounty.
- You are rewarded more for larger areas, and less for teeny tiny areas.
- Walking back and forth the same two tiles will not count towards
progress.
- When done, all you need to do is go back to the civ console and press
"send". You don't need to add any items to the pad.
- All security officers can get general patrol bounties (service + maint
+ hallways). Departmental officers can get patrol bounties for their
department.
- And yes, it tracks if your *id card* moves. This means you can strap
your ID card to a drone and it'll count. Get creative if you're lazy.
- ID trims how handle bounty generation. This changes very little,
besides allowing certain trims for certain jobs to add specific
bounties.
- There's now setters for bounties and bank accounts.
- Fix Bountious Bounty trait by having a `get_reward`
## Why It's Good For The Game
Sec bounties to loot a bunch of miscellaneous things from the brig is...
odd. All it does is deprive your team of equipment should you need it.
On the other hand, patrol bounties are really flavorful, but a bit
cumbersome thanks to needing a hand scanner. By integrating the process
of patrolling *into* the officer's ID card, it means you can just grab a
bounty and go about your business.
The idea is that this'll streamline the process of patrolling a bit and
make it more natural and fun (well, as fun as "walking around" can be.
Which is fun to me...)
## Changelog
🆑 Melbert
del: N-spect scanners can no longer print reports. All it does now is
scan for contraband.
del: Clown N-spect scanners have been removed.
del: Security no longer get bounties to loot the brig's equipment.
Though the contraband bounty is still available.
add: Security's patrol bounties have been reworked. Now, they just
require you to walk around an area for a bit. No scanning necessary.
refactor: Adds setters for bounties and bank accounts. Report any
situations where your bank account is not set correctly.
refactor: ID trims now handle bounty generation. Report any situations
where you get a weird pool of bounties.
fix: Bountious Bounties station trait works again
/🆑
## About The Pull Request
ERT Commanders id cards now separated from Emergency Responce Team
Intern one, also changed some code where probably should be commander
cards(debug map, ert commander ofc and ert join button)
## Changelog
🆑
fix: ert commander card properly appear in game, no longer overriding
basetype ert card
/🆑
## About The Pull Request
Extends the part of the crafting unit test that ensures consistency
between the total mats of the components of a recipe (or rather, the
result of said recipe) and a generic instance of the same type as its
result, previously only implemented on food recipes.
## Why It's Good For The Game
This ensures a degree of consistency with the material composition of
various objects in the game. I couldn't do it in the original PR as that
one was too big already and it took months to get it merged, and have
the relative bugs fixed.
Currently a WIP as I slowly deal with the unit test reports.
## Changelog
🆑
refactor: Follow-up to the crafting/material refactor from months ago.
All objects crafted with stacks now inherit their mat composition (not
necessarily the effects and color) by default, while previously only a
few things like chair, sinks and toilets did. Report any object looking
or behaving weirdly as a result.
fix: The material composition of ammo boxes is no longer a 1/10 of what
it's supposed to be. It was a shitty hack to make it harder to recycle
empty ammo boxes. Instead, they lose materials as they're emptied now.
/🆑
## About The Pull Request
Exactly what it says on the tin. When you're forging an Agent ID if
you're a human your age will autofill. If you aren't a human (tested as
a gorilla) it will autofill the minimum age, which is what it currently
always does. This just makes forging quicker, you probably aren't using
an Agent ID to pass off as someone way older than yourself.
Also, when you inspect someone and check their displayed ID it'll show
you the job they entered while forging it and not the job that their
trim is associated with. I'm assuming this fixes an oversight because
you can already rename the ID to display a custom job, the inspection on
examine feature just lets you ignore this for some reason.
<img width="373" height="238" alt="Screenshot 2025-10-20 005151"
src="https://github.com/user-attachments/assets/38345d4b-65cf-4d01-bd88-015321687810"
/>
This lets you display jobs that don't exist. If I tried this on live
servers the job would be listed as "Admiral" while the ID's name would
still be "Nyaria Luma (Nuclear Disk Inspector), making it a dead
giveaway that the ID is fake.
## Why It's Good For The Game
Qol, also enables funny gimmicks.
## Changelog
🆑
qol: Agent IDs autofill the user's current age if they have one
fix: Agent IDs can display custom jobs upon close examination
/🆑
---------
Co-authored-by: Fghj240 <fakeemail@notrealemail.com>
## About The Pull Request
Converts the following:
- Medical Kiosk
- Implant case
- Flamethrower
- Chemical implant case
- Pappercutter
Also I've looked at some alt click procs and adjusted some of their
returns
## About The Pull Request
ports https://github.com/DaedalusDock/daedalusdock/pull/1144
ports https://github.com/DaedalusDock/daedalusdock/pull/1147
full credit to @Kapu1178 for the juice
instead of `reacher.CanReach(target)` we now do
`target.CanBeReachedBy(reacher)`, this allows us to give special
behavior to atoms which we want to reach, which is exactly what I need
for a feature I'm working on.
## Why It's Good For The Game
allows us to be more flexible with reachability
## Changelog
🆑
refactor: refactored how reaching items works, report any oddities with
being unable to reach something you should be able to!
/🆑
## About The Pull Request
Closes#92778Closes#86829
<img width="347" height="39" alt="image"
src="https://github.com/user-attachments/assets/c50bd1ff-8c00-47a7-a31a-617fae2adc5b"
/>
1. Splits `TRAIT_UNKNOWN` into `TRAIT_UNKNOWN_APPEARANCE` and
`TRAIT_UNKNOWN_VOICE`
2. Renames some stuff like `getvoice` and `getspecialvoice`
3. Gets rid some crummy signals around `get_visible_name` and
`get_voice`
4. Heads now apply the disfigured trait when relevant (rather than
snowflake checking for damage amount)
5. Ling voice refactored into using special voice (it was only used by a
viro symptom anyways; I don't anticipate this overlap being problematic)
6. Mask voice changer refactored into a trait
## Why It's Good For The Game
Potted plants shouldn't have magical voice concealing powers -
especially not over radio, but not over in person either. It's a damn
plant
So I addressed this by refactoring our face and voice system. Overall
things should be a lot cleaner and easier to use.
## Changelog
🆑 Melbert
refactor: Refactored a lot of code relating to human face and voice, ie,
what shows up in examine and in say. Report anything odd when examining
people, with ID cards, when talking over radio, or when disguised
refcator: Refactored how you get disfigured when your head's super
damaged
refactor: Refactored ling mimic voice and traitor voice changer
del: Potted plants no longer hide voice. They still hide appearance,
though
qol: Honorifics now show in examine / in world, rather than only when
speaking.
/🆑
<img width="819" height="348" alt="image"
src="https://github.com/user-attachments/assets/0424ec76-2648-43d3-8e94-d44558b44bcf"
/>
## About The Pull Request
Follow up from #92751 - Not to conflict with it but as an idea on how to
change it for the long run.
Paramedics currently start with broad department access. This proposal
replaces that by granting temporary department access only when an
emergency is called.
When a player presses "Call X" on a Requests Console, responders called
receive temporary access to the common work areas of that department.

> [Security] The Automated Announcement System coldly states, "SECURITY
EMERGENCY in Research Lab! (Called by Sloan Keppel, Scientist) RETA door
access granted to responders."
> [Science] The Automated Announcement System coldly states, "RETA
activated (Called by Sloan Keppel, Scientist). Security personnel now
have temporary access to your areas."
They do not receive access to sub rooms or high risk areas.
- Access lasts 5 minutes (configurable)
- Access is removed when the timer expires or the emergency is resolved
- No mapping changes are required (uses existing request consoles)
- Removes Paramedics round start access but gives them external access
to rescue bodies in space by default
- Flashing blue lights on doors affected by temporary access
<img width="897" height="837" alt="image"
src="https://github.com/user-attachments/assets/97980cb4-3481-44b6-9f96-fc241ca16f57"
/>
**The full document is here:
https://hackmd.io/@NM8HxpG_Toahg5pimrpsKw/Hk0tKq3Yxe**
**Wiki documentation for players and admins:
https://wiki.tgstation13.org/Guide_To_RETA**
## Why It's Good For The Game
- Removes paramedics’ broad “Doctor+” access.
- Keeps them effective as emergency responders.
- Responders must be called in OR access upgraded.
- Keeps sensitive areas secure.
- Prevents spam or stacking through cooldown.
- Scales across all maps without mapper work.
- Gives admins a new tool for temp department wide access
- Dedicated logging file and unit tests
- Very performant, only affects living players with connected mind
- Gives Request Consoles more use as an alarm button and further utility
- Imagine later on "Request Janitor" which sorts access and tells
Janitor where needed
## Changelog
🆑
add: RETA System - Request Consoles give temporary access to responders
when used for some areas. Paramedics lose broad access but get external
space access.
qol: Request consoles now show name and job role on call message &
Cooldown on spamming calls + sound prompt
qol: Medibot access no longer based on Paramedic trim ID - Still has
original access
image: Added "lights_reta" for temporary door access when in effect
admin: Gives admins "RETA door access" verb for giving department wide
area access on maps.
config: New config settings for RETA
/🆑
## About The Pull Request
<img width="491" height="301" alt="image"
src="https://github.com/user-attachments/assets/a3b5b19f-edf5-4de9-9201-9cbfab9e8827"
/>
Mod computers with the access changing software installed have a
secondary ID slot once again. This ID slot doesn't contribute to access.
You can insert IDs into the slot with right click and remove them with
alt-right click.
Also removes the "New IDs and you" memo paper.
Also tweaks PDA on_deconstruct so contents are dropped on when they're
deconstructed with assembly.
Fixes#92151
## Why It's Good For The Game
Changing IDs is very unnecessarily clunky with the one slot. Insert hop
id, log in, remove hop id, insert crew id, change access, remove crew
id, log out.
We had it right back when we had two slots. Insert hop ID, insert crew
id, log in. It just works.
This also allows for mobile HoPs to change access without necessitating
removing their ID from their PDA.
Other changes:
The "New IDs and you" memo is very old. They haven't been new for 4
years now. I don't think anyone reads it and they served their purpose.
I found it odd that, if your PDA was melted or blown up, it would delete
your ID. If this is a hold-over from old PDA behavior feel free to let
me know but otherwise it seems sensible that it'd spit out the contents
as you would expect.
## Changelog
🆑 Melbert
qol: The access changing software (the HoP console) now has ID two slots
again (one for the HoP's id and one for the ID being changed). You can
insert IDs in the secondary slot via the UI or right click, and remove
them via the UI or alt-right click.
qol: If your PDA is destroyed via acid or bombs, your ID (and similar
contents such as disks) are spit out instead of being deleted
del: Deletes the "New IDs and you" memo in the HoP's office. They
haven't been new for 4 years.
fix: Engineering sub-tab in the access changing software no longer looks
messed up
fix: Fix reversed alt-click logic for mod pcs
/🆑
# Conflicts:
# code/modules/modular_computers/computers/item/computer.dm
## About The Pull Request
<img width="491" height="301" alt="image"
src="https://github.com/user-attachments/assets/a3b5b19f-edf5-4de9-9201-9cbfab9e8827"
/>
Mod computers with the access changing software installed have a
secondary ID slot once again. This ID slot doesn't contribute to access.
You can insert IDs into the slot with right click and remove them with
alt-right click.
Also removes the "New IDs and you" memo paper.
Also tweaks PDA on_deconstruct so contents are dropped on when they're
deconstructed with assembly.
Fixes#92151
## Why It's Good For The Game
Changing IDs is very unnecessarily clunky with the one slot. Insert hop
id, log in, remove hop id, insert crew id, change access, remove crew
id, log out.
We had it right back when we had two slots. Insert hop ID, insert crew
id, log in. It just works.
This also allows for mobile HoPs to change access without necessitating
removing their ID from their PDA.
Other changes:
The "New IDs and you" memo is very old. They haven't been new for 4
years now. I don't think anyone reads it and they served their purpose.
I found it odd that, if your PDA was melted or blown up, it would delete
your ID. If this is a hold-over from old PDA behavior feel free to let
me know but otherwise it seems sensible that it'd spit out the contents
as you would expect.
## Changelog
🆑 Melbert
qol: The access changing software (the HoP console) now has ID two slots
again (one for the HoP's id and one for the ID being changed). You can
insert IDs in the secondary slot via the UI or right click, and remove
them via the UI or alt-right click.
qol: If your PDA is destroyed via acid or bombs, your ID (and similar
contents such as disks) are spit out instead of being deleted
del: Deletes the "New IDs and you" memo in the HoP's office. They
haven't been new for 4 years.
fix: Engineering sub-tab in the access changing software no longer looks
messed up
fix: Fix reversed alt-click logic for mod pcs
/🆑
## About The Pull Request
Changes human name to update whenever anything that could result in
their visible name changing occurs, such as changing IDs, equipping
gasmasks, picking potted plants, etc. Currently name updates occur every
``Life()`` tick and in a few "special" cases, which causes a lot of name
changes from sources such as equipment to not apply until the mob ticks,
and makes us waste a tiiiny bit of CPU time on name updates.
I've also slighly cleaned up human /Life() and made species'
``spec_life()`` not run when the mob is dead, as it was causing certain
unintended interactions, such as slimepeople regenerating blood while
dead.
## Why It's Good For The Game
Microoptimization, ensures that correct names are always used (in case
something could update their name but the mob hasn't ticked yet), plus
its just a cleaner implementation
(cherry picked from commit 87e1ef6f64)
# Conflicts:
# code/game/data_huds.dm
## About The Pull Request
Changes human name to update whenever anything that could result in
their visible name changing occurs, such as changing IDs, equipping
gasmasks, picking potted plants, etc. Currently name updates occur every
``Life()`` tick and in a few "special" cases, which causes a lot of name
changes from sources such as equipment to not apply until the mob ticks,
and makes us waste a tiiiny bit of CPU time on name updates.
I've also slighly cleaned up human /Life() and made species'
``spec_life()`` not run when the mob is dead, as it was causing certain
unintended interactions, such as slimepeople regenerating blood while
dead.
## Why It's Good For The Game
Microoptimization, ensures that correct names are always used (in case
something could update their name but the mob hasn't ticked yet), plus
its just a cleaner implementation
## About The Pull Request
This mostly just refactors the pdapainter `attackby(...)` into our
modern item interaction system, and adds screentips for such.
On the side it does a minor amount of cleanup/improvements.
Notable changes include:
- It felt odd that almost all id cards could be put in here, despite
them not really being traditionally changeable. Like, the cargo
departmental budget card probably shouldn't be able to get a trim put on
it, and neither should pretty much all non-advanced IDs with preset
trims and no visual nor explained ability to change them. Hence, this
limits it to advanced cards.
- I didn't remove the `to_chat(...)` upon id insertion failure, as I
felt the balloon alert wouldn't actually communicate the problem
sufficiently, but leaving _just_ the `to_chat(...)` felt like it didn't
give enough direct feedback on click. Hence, it uses both.
## Why It's Good For The Game
Less jank, more screentips, more feedback, less use of `attackby(...)`
when we shouldn't.
## Changelog
🆑
refactor: Refactored tablet/ID painter item interactions. Please report
any issues.
fix: You can no longer circumvent the block on inserting chameleon IDs
into tablet/ID painters by inserting them via the UI.
fix: You can no longer insert non-advanced IDs into the tablet/ID
painter and change their trims.
sound: Inserting IDs into tablet/ID painters is no longer silent.
qol: You can repair tablet/ID painters when they're damaged, instead of
just when they're broken.
qol: Improved feedback for tablet/ID painter interactions.
qol: Added screentips to tablet/ID painters.
/🆑
---------
Co-authored-by: san7890 <the@san7890.com>
## About The Pull Request
This mostly just refactors the pdapainter `attackby(...)` into our
modern item interaction system, and adds screentips for such.
On the side it does a minor amount of cleanup/improvements.
Notable changes include:
- It felt odd that almost all id cards could be put in here, despite
them not really being traditionally changeable. Like, the cargo
departmental budget card probably shouldn't be able to get a trim put on
it, and neither should pretty much all non-advanced IDs with preset
trims and no visual nor explained ability to change them. Hence, this
limits it to advanced cards.
- I didn't remove the `to_chat(...)` upon id insertion failure, as I
felt the balloon alert wouldn't actually communicate the problem
sufficiently, but leaving _just_ the `to_chat(...)` felt like it didn't
give enough direct feedback on click. Hence, it uses both.
## Why It's Good For The Game
Less jank, more screentips, more feedback, less use of `attackby(...)`
when we shouldn't.
## Changelog
🆑
refactor: Refactored tablet/ID painter item interactions. Please report
any issues.
fix: You can no longer circumvent the block on inserting chameleon IDs
into tablet/ID painters by inserting them via the UI.
fix: You can no longer insert non-advanced IDs into the tablet/ID
painter and change their trims.
sound: Inserting IDs into tablet/ID painters is no longer silent.
qol: You can repair tablet/ID painters when they're damaged, instead of
just when they're broken.
qol: Improved feedback for tablet/ID painter interactions.
qol: Added screentips to tablet/ID painters.
/🆑
---------
Co-authored-by: san7890 <the@san7890.com>
## About The Pull Request
While I was working on #91319 I noticed ID cards don't actually have
screentips for inserting cash... or a bunch of their other stuff.
This just adds those interactions as screentips as well.
## Why It's Good For The Game
More accurate screentips good.
## Changelog
🆑
qol: Added screentips for inserting cash into and recolouring ID cards.
qol: Added screentips for copying access directly from a card using a
chameleon ID card.
qol: Added screentips for setting prisoner ID sentence time.
qol: Added screentips for forging cardboard ID cards.
/🆑
## About The Pull Request
While I was working on #91319 I noticed ID cards don't actually have
screentips for inserting cash... or a bunch of their other stuff.
This just adds those interactions as screentips as well.
## Why It's Good For The Game
More accurate screentips good.
## Changelog
🆑
qol: Added screentips for inserting cash into and recolouring ID cards.
qol: Added screentips for copying access directly from a card using a
chameleon ID card.
qol: Added screentips for setting prisoner ID sentence time.
qol: Added screentips for forging cardboard ID cards.
/🆑
<!-- 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
HoP spawns with a platinum ID card, an intermediate between gold and
silver. It's one-of-a-kind, has Infinite common slots, 2 command slots,
1 prv command slot (dedicated to their office).
HoP doesn't spawn with all those common slots filled though, they have
to do that manually.
This means they can give themselves access to all common areas on the
station, all the time - but are still limited to a selection of 2
command locations (armor, ai sat, vault, etc)
## Why It's Good For The Game
1. Sovl
2. HoP has taken too many Ls lately
3. HoP already has functional AA by either making multiple cards or by
changing their card's access on the fly via their PDA and I think this
is functionally a bit healthier (at least healthier than the pda thing)
4. Gives the HoP more of an identity as a second in command, being able
to be almost anywhere the captain can be
5. Adds a target back on the HoP's head (not many people gank them for
access anymore)
## Changelog
🆑 Melbert
add: HoP now spawns with a platinum ID card which can hold infinite
common access slots, but is still limited in amount of command slots.
/🆑
## About The Pull Request
No idea how long this has been broken for.
## Why It's Good For The Game
its supposed to do this and it doesnt which is called a bug
## Changelog
🆑
fix: chameleon IDs actually prevent AI tracking now
/🆑
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
With the trim system added years ago, agent IDs have become essentially
worthless. This is because they can only hold SIX COMMON ACCESSES, TWO
COMMAND ACCESSES, AND ONE CAPTAIN LEVEL ACCESS. This leads to the
current situation, where agent IDs are essentially legacy content
included in certain bundles like Contractor, but ultimately go entirely
unused, with players instead opting to simply steal ID cards off of
people and juggle them around.
This PR makes them act more like they used to, where scanning an ID with
one will let you take all of the access codes on the ID card, and add
them to your agent ID.
Having your ID card stolen is extremely frustrating. It's also very
frustrating for traitors to need to carry literally a box of stolen ID
cards to have access to various parts of the station, and it also
hinders stealthy gameplay, since the stealthy ID card doesn't actually
hold access.
🆑
balance: wildcard limits have been removed from Agent ID cards
balance: the specops crate gets a variation of the agent ID card which
can only hold limited access (same as it is now)
/🆑
## About The Pull Request
This PR tackles our piss-poor item action handling. Currently in order
to make an item only have actions when its equipped to a certain slot
you need to override a proc, which I've changed by introducing an
action_slots variable. I've also cleaned up a ton of action code, and
most importantly moved a lot of Trigger effects on items to do_effect,
which allows actions to not call ui_action_click or attack_self on an
item without bypassing IsAvailible and comsigs that parent Trigger has.
This resolves issues like jump boots being usable from your hands, HUDs
being toggleable out of your pockets, etc. Also moved a few actions from
relying on attack_self to individual handling on their side.
This also stops welding masks/hardhats from showing their action while
you hold them, this part of the change is just something I thought
didn't make much sense - you can use their action by using them in-hand,
and flickering on your action bar can be annoying when reshuffling your
backpack.
Closes#89653
## Why It's Good For The Game
Makes action handling significantly less ass, allows us to avoid code
like this
```js
/obj/item/clothing/mask/gas/sechailer/ui_action_click(mob/user, action)
if(istype(action, /datum/action/item_action/halt))
halt()
else
adjust_visor(user)
```
Adds a space ruin revolving around a studio where ghost roles can
provide entertainment to the station, the studio has a bunch of
construction stuff and costume vendors to create any set and portray any
character you'd want. Features 3 stages and a radio station (neutral
aligned syndie comms agent?) there's a total of 4 ghost roles, 3 actors.
1 director.

Studio also has a sizable living quarters and a mini-medbay for basic
provisions. a couple of paper fluff texts are strewn about on the
noticeboards
The cast:

In terms of things that can be balance-breaking, I can only name the gas
masks and agent ID actors/directors spawns in. But I think its a
necessary sacrifice for them to play "characters"
I think too many of the ghost roles have too little interactions with
the main station, this is for good reasons obviously, balance and
metagrudges and all that. But, say. what if we can have a ghost role
that interacts and give something to the station besides being their own
little isolated game? it can't be anything material of course. so what
if we have the ghost role centered around giving entertainment? which is
how this PR came to be
🆑
add: After some light bit of restructuring, the local TV station,
serving SPACE SECTOR 13 has opened up again!
/🆑
## About The Pull Request
Currently if you have a hyphenated name, either being a lizard
(`Wines-And-Dines`) or as someone with a joined name (`Jessica
Smith-Rose`), and choose a "Full Name" honorific, your name gets a
little butchered, producing `Cpt. Wines` or `Cpt. Jessica Rose`
respectively
I find this odd - you ask for "full name" and you only get most-to-some
of your name under some circumstances. So this PR just makes the "Full
name" honorifics actually use the full name, thus including middle
names, hyphenated names, and whole lizard names.
If you are a lizard and only want your first name (current behavior),
you can just select "first name", anyways.
The only thing I can think of that this would negatively affect are
people who have a middle name, and don't want it displayed. But if that
*is* a notable problem, we can introduce a setting for `Full name sans
middle name` or something.
## Why It's Good For The Game
Full name means full name!
## Changelog
🆑 Melbert
del: Honorific "full name" setting no longer cares about mononyms,
meaning Lizards and people with similarly hyphenated names will no
longer get their name butchered.
/🆑
## About The Pull Request
No idea how long this has been broken for.
## Why It's Good For The Game
its supposed to do this and it doesnt which is called a bug
## Changelog
🆑
fix: chameleon IDs actually prevent AI tracking now
/🆑
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
## About The Pull Request
With the trim system added years ago, agent IDs have become essentially
worthless. This is because they can only hold SIX COMMON ACCESSES, TWO
COMMAND ACCESSES, AND ONE CAPTAIN LEVEL ACCESS. This leads to the
current situation, where agent IDs are essentially legacy content
included in certain bundles like Contractor, but ultimately go entirely
unused, with players instead opting to simply steal ID cards off of
people and juggle them around.
This PR makes them act more like they used to, where scanning an ID with
one will let you take all of the access codes on the ID card, and add
them to your agent ID.
## Why It's Good For The Game
Having your ID card stolen is extremely frustrating. It's also very
frustrating for traitors to need to carry literally a box of stolen ID
cards to have access to various parts of the station, and it also
hinders stealthy gameplay, since the stealthy ID card doesn't actually
hold access.
## Changelog
🆑
balance: wildcard limits have been removed from Agent ID cards
balance: the specops crate gets a variation of the agent ID card which
can only hold limited access (same as it is now)
/🆑
## About The Pull Request
This PR tackles our piss-poor item action handling. Currently in order
to make an item only have actions when its equipped to a certain slot
you need to override a proc, which I've changed by introducing an
action_slots variable. I've also cleaned up a ton of action code, and
most importantly moved a lot of Trigger effects on items to do_effect,
which allows actions to not call ui_action_click or attack_self on an
item without bypassing IsAvailible and comsigs that parent Trigger has.
This resolves issues like jump boots being usable from your hands, HUDs
being toggleable out of your pockets, etc. Also moved a few actions from
relying on attack_self to individual handling on their side.
This also stops welding masks/hardhats from showing their action while
you hold them, this part of the change is just something I thought
didn't make much sense - you can use their action by using them in-hand,
and flickering on your action bar can be annoying when reshuffling your
backpack.
Closes#89653
## Why It's Good For The Game
Makes action handling significantly less ass, allows us to avoid code
like this
```js
/obj/item/clothing/mask/gas/sechailer/ui_action_click(mob/user, action)
if(istype(action, /datum/action/item_action/halt))
halt()
else
adjust_visor(user)
```