## About The Pull Request
So previously I made a pr for fixing the prosopagnosia quirk, but the
code I wrote was far too ass for what was already incredibly hot code.
In the comments, Mothblocks requested using the same bitflag&signal
logic the other screentip modifiers use.

I, of course, said I'd look into it in a few days.
Anyhow, 199 days later, I've made this pr.
Here we introduce a new `mob_flags` var on `/mob`, where we set
`MOB_HAS_SCREENTIPS_NAME_OVERRIDE`.
Then, based on whether this is set, the screentips system sends a signal
to the user mob to request possible name overrides.
We then make the prosopagnosia quirk set this flag and register the
signal, upon which it just sets the name to "Unknown" if it's a human.
This fixes our issues (in a saner way).
## Why It's Good For The Game
Better is prosopagnosia can't be easily obviated by just having
screentips on.
## Changelog
🆑
fix: Prosopagnosia actually accounts for hover screentips, showing
humans as Unknown in those too.
/🆑
## About The Pull Request
Does as the title says
## Why It's Good For The Game
QoL feature for borgs, allows them to always see their laws without
being in menus/reminded by the AI
## Changelog
🆑
qol: puts silicon laws in the status panel
/🆑
---------
Co-authored-by: Odairu <39929315+Odairu@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
## About The Pull Request
Closes#86993
## Changelog
🆑
fix: Fixed luminiscent major extract activation button not
disappearing/updating when it should've
/🆑
## About The Pull Request
The Derelict Outpost ruin is full of mobs that at absolute most 3-shot
most spacemen and have a very rapid AI. Most of this brought about by
the map being untouched as additional abilities have been given to the
type of mob that occupies it. This is far and away overtuned, so I made
the "hatchling" mobs not have health-based damage and speed scaling.
As a bonus, you get map-level varedits replaced with typepaths.
## Why It's Good For The Game
Do space ruins need very-definitely-instant-death mobs, or are we good
with just quick-death-if-you-cant-retreat-in-time mobs?
## Changelog
🆑
balance: The hatchlings on the Derelict Outpost are marginally less
deadly, to the extent that fighting them is slightly more feasible.
/🆑
---------
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
## About The Pull Request
so turns out `/datum/emote/living/basic/pet/cat/meow` doesn't work the
way I thought
## Changelog
🆑 grungussuss
fix: fixed all mobs being able to meow
/🆑
# Conflicts:
# code/modules/mob/living/basic/pets/cat/cat.dm
## About The Pull Request
This PR implements, as a quality of life feature, the ability to
interact with the ladder in the current turf by pressing the `change
floor` button. This allows for the easier interaction with the ladder if
there are a lot of objects on top of said ladder, but most importantly
fixes many issues where bots could not interact with the ladder and were
stuck!
Bots like the cleanbot could not interact with the ladder, and firebot
could only climb downwards. With this addition to the change floor
button these bots can still freely move up and down, albeit not by
clicking the ladder directly (I will work on that soon™).
## Why It's Good For The Game
Allows for a better UX interacting the change floor button as it feels
weird that you can't change the floor if you are sitting on a ladder.
Also allows cleanbot, firebot and anything that got gatekept previously
to use the ladder with the change floor button.
## Changelog
🆑
qol: change floor button now interacts with ladder if it is in the
current turf
/🆑
## About The Pull Request
Fixes stun not getting applied if you are riding a carp, because it
checks if you are flying and tries to get the wings even if you are not
using them, which causes an exception.
## Why It's Good For The Game
Fixes stun not getting applied properly in the case mentioned above.
## Changelog
🆑
fix: fixes stun not getting applied if you are riding a carp
/🆑
## About The Pull Request
Edits the time it takes for the borg to un-tip themselves
## Why It's Good For The Game
Borg tipping is explicitly a /tg/ salt PR designed to make the game
worse for silicon players:
https://github.com/tgstation/tgstation/pull/64097
(They even drew deranged little comics to support it, and put "i hate
silicon" in "why it's good for the game" section lol)
We have it reduced from **AN ENTIRE MINUTE** to 20 sec... which is still
a ridiculously long stun.
Reducing it to 3sec (the same time it takes to tip the borg over) makes
it more of a silly/annoying little thing than a way to grief.
## Proof Of Testing
I compiled it.
## Changelog
🆑
balance: borg self un-tip time reduced to 3sec from 20sec
/🆑
## About The Pull Request
MEOW MEOW MEOW
Fixes meow and purr after TG added pet emotes. Also fixes a bunch of
third person keys used incorrectly.
<!-- Please make sure to actually test your PRs. If you have not tested
your PR mention it. -->
## Why It's Good For The Game
MEOW
## Proof Of Testing
https://github.com/user-attachments/assets/313f0141-56fd-43e1-9133-44c462b6c05f
## Changelog
🆑 LT3
fix: Fixed meow and purr emotes playing the pet line instead of the
emote line
/🆑
## About The Pull Request
The examine rework bulldozed the change letting people see how long
someone has been SSD for. This fixes it.
## Why It's Good For The Game
🪿
## Proof Of Testing
💤
## Changelog
🆑
fix: SSD timer now visible once more.
/🆑
Co-authored-by: Waterpig <49160555+Majkl-J@users.noreply.github.com>
## About The Pull Request
refactors all behaviors to work through clicking. also removes some now
redundant behaviors. in the future ill try to generalize more of these
behaviors
## Why It's Good For The Game
makes AI controllers work through clicks which may help with swing
combat implementation
## Changelog
🆑
refactor: basic mob AI interactions has been refactored. please report
any bugs
/🆑
---------
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
<!-- 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
Title.
<!-- Please make sure to actually test your PRs. If you have not tested
your PR mention it. -->
## Why It's Good For The Game
TG upstream pull broke it, I fix it.
## Proof Of Testing
I tested it.
## 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. -->
🆑
fix: Headpats show a feedback message again.
/🆑
<!-- 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. -->
<!-- By opening a pull request. You have read and understood the
repository rules located on the main README.md on this project. -->
# This is the 1st commit message:
goofsec hud
# This is the commit message #2:
the sensible tgui errors
# This is the commit message #3:
Gets it to compile
# This is the commit message #4:
Fixes all extra runtimes
# This is the commit message #5:
TGUI Fixes 1
# This is the commit message #6:
Removes open dream check
# This is the commit message #7:
Ticked file enforcement
# This is the commit message #8:
A very harsh way to fix potential missing icons
# This is the commit message #9:
Wipes all the errorneously included files
# This is the commit message #10:
fixes missing_icons fully
# This is the commit message #11:
some extra ci fixes before I forget
# This is the commit message #12:
WHAT THE FUCK
# This is the commit message #13:
really?
# This is the commit message #14:
bye waffles
# This is the commit message #15:
hooray
3591 individual conflicts
Update build.js
Update install_node.sh
Update byond.js
oh my fucking god
hat
slow
huh
holy shit
we all fall down
2 more I missed
2900 individual conflicts
2700 Individual conflicts
replaces yarn file with tg version, bumping us down to 2200-ish
Down to 2000 individual conflicts
140 down
mmm
aaaaaaaaaaaaaaaaaaa
not yt
575
soon
900 individual conflicts
600 individual conflicts, 121 file conflicts
im not okay
160 across 19 files
29 in 4 files
0 conflicts, compiletime fix time
some minor incap stuff
missed ticks
weird dupe definition stuff
missed ticks 2
incap fixes
undefs and pie fix
Radio update and some extra minor stuff
returns a single override
no more dupe definitions, 175 compiletime errors
Unticked file fix
sound and emote stuff
honk and more radio stuff
## About The Pull Request
refactors all behaviors to work through clicking. also removes some now
redundant behaviors. in the future ill try to generalize more of these
behaviors
## Why It's Good For The Game
makes AI controllers work through clicks which may help with swing
combat implementation
## Changelog
🆑
refactor: basic mob AI interactions has been refactored. please report
any bugs
/🆑
---------
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
## About The Pull Request
Adds the following new general shuttle events:_
**Hitchhiker**
- 1% chance
- A single assistant in an EVA suit and some PBJs in a suitcase
**Assistant Wave**
- 0.1% chance
- Spawns 10 assistants with internals
- For clarity, they don't get sent to the shuttle, but get launched at
it from space. It's a scuffle of 10 assistants trying to get in without
being spaced or succumbing to the cold/pressure
**Intern Wave**
- Admin only
- Unarmed and armed version
- Spawns centcom interns, with a little announcement to warn they're
coming
I've also fixed projectiles bugging out and admin forced shuttle events
not activating if they were added after the shuttle launched
<details>
<summary>Admin only events added</summary>
**Nukie**
Spawns a single nukie, armed with a shotgun, pistol and edagger.
Basically the deathmatch nukie loadout, you dont want to fight this
**Meaty ores**
Meaty-ores meteors. Have a 4% chance to hit the shuttle, posing a
potential hazard
**3 player controlled fire-sharks**
3 fire sharks controlled by players. Not much to talk about here
**Fireball Wave**
Shoots a wave of fireballs at the shuttle. I think it's cool but
apparently shuttle walls and windows deflect fireballs so it's kind of
moot unless you're outside :/
</details>
## Why It's Good For The Game
The assistant and hitchhiker events are some flavoring that I thought up
a while ago. The Hitchhiker is just intentionally a flavor addition, but
the assistant wave and intern wave can be used by admins to repopulate
or retake the emergency shuttle as well.
## Changelog
🆑
add: Adds an assistant and hitchiker shuttle event, replenishing the
crew mid flight!
admin: Adds two intern wave shuttle events
code: You can now supply shuttle events with outfits!
code: You can now shoot projectiles with the shuttle events!
fix: Fixes projectiles bugging out when fired in shuttle transit space
fix: Fixes admin forced shuttle events not activating when added mid
transit
/🆑
## About The Pull Request
This PR improves the code for mob/verb/up() and mob/verb/down() by
removing unnecessary checks.
Added a `can_z_move` check before waiting for a second, making it feel
more responsive as a result because the user will immediately know it
cannot move there.
Additionally, vent crawling is handled by if(ismovable(loc)), which
makes the explicit check for the ventcrawl flag unnecessary.
## Why It's Good For The Game
Apart from the code improvements, previously, if there was space above
you that you could move into but you were unable to fly, the game would
instantly tell you, 'You are not Superman.' However, if there was a tile
blocking you, you had to wait for the entire move action before
receiving the same message. With this code cleanup, you now only have to
wait for the move action if you can move to that z level, making the
experience more consistent across different interactions.
## About The Pull Request
All usages of world.icon_size in code have been replaced with new
`ICONSIZE_X`, `ICONSIZE_Y` and `ICONSIZE_ALL` defines depending on
context
Replaces some "32" magic numbers with the defines
A few bits of code have been modified to split up x/y math as well
## Why It's Good For The Game
Magic number bad, code more readable, code more flexible and I'm told
there's an access cost to doing world.icon_size so minor performance
gains
## Changelog
🆑 tonty
code: made some code relating to the world's icon size more readable
/🆑
---------
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
## About The Pull Request
hygeinebot's pathing to unclean people was a little slow and
unresponsive because the behavior was trying to do too many things at
once. this splits the behavior into 2, one for chasing and one for
dealing threats. also fixes a minor bug where sometimes hygeinebots
would be unjustifiably angry at people it just met
## Why It's Good For The Game
fixes wonky hygeinebot pathing
## Changelog
🆑
fix: hygeinebots are better at chasing unclean people
/🆑
<!-- 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
Ports https://github.com/NovaSector/NovaSector/pull/4260
<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->
<!-- Please make sure to actually test your PRs. If you have not tested
your PR mention it. -->
## Why It's Good For The Game
See link
<!-- Argue for the merits of your changes and how they benefit the game,
especially if they are controversial and/or far reaching. If you can't
actually explain WHY what you are doing will improve the game, then it
probably isn't good for the game in the first place. -->
## Proof Of Testing
<!-- Compile and run your code locally. Make sure it works. This is the
place to show off your changes! We are not responsible for testing your
features. -->
## 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. -->
🆑 FlufflesTheDog (code), ReturnToZender (port)
fix: A restraining order has been placed on medibots on behalf of
synthetic crew members due to reports of harassment.
/🆑
<!-- 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. -->
<!-- By opening a pull request. You have read and understood the
repository rules located on the main README.md on this project. -->
## About The Pull Request
raptors werent meant to retaliate against each other or against their
owner. this was initially handled by their targeting strategy, however
some changes to it at some point broke this. raptors would now
over-escalate conflicts against troublemaker raptors, locking both into
a deathmatch. this fixes that
## Why It's Good For The Game
fixes raptor retaliate targetting
## Changelog
🆑
fix: fixes raptors retaliating against each other and their owners
/🆑
## About The Pull Request
123 changed files and multiple crashes after writing broken regex, I
replaced most remains of direct spans with macros. This cleans up the
code and makes it easier to work with in general, see justification for
the original PR. I also fixed a bunch of broken and/or unclosed spans
here too.
I intentionally avoided replacing spans with multiple classes (in most
cases) and spans in the middle of strings as it would impact readability
(in my opinion at least) and could be done later if required.
## Why It's Good For The Game
Cleaner code, actually using our macros, fixes borked HTML in some
places. See original PR.
## Changelog
Nothing player-facing
## About The Pull Request
This PR significantly enhances how zero-g movement works. Its no longer
locked to one of 8 directions, everything now has inertia and is
affected by weight. This means that throwing a piece of wire will no
longer completely reverse your movement direction, and that being thrown
out of mass driver no longer will slow you down to a halt at some point.
This leads to following gameplay changes:
* Guns now accelerate you. Ballistics have higher acceleration than
lasers, and higher calibers have higher acceleration than smaller ones.
This means that firing full-auto weapons in zero-g will make you drift
and accelerate significantly. While this can be a hilarious way to
travel in space, it makes using them trickier.
* Impacting a wall or an object while moving at high speeds will cause
you to violently crash into it as if you were thrown. Careful when
exploring!
* Jetpacks now have inertia. Changes introduced in #84712 have been
mostly reverted, although speed buff has been reduced to 0.3 instead of
0.5 (although this is compensated by new movement mechanics, so overall
speed should be roughly equal). All MODsuit jetpacks now possess the
speed boost. Advanced MODsuit jets (which has also been added back) and
captain's jetpack instead have higher acceleration and stabilization
power, providing much more precise control over your movement.
* Firing guns while moving on a jetpack will partially negate your
pack's acceleration, slowing you down. Non-advanced jetpacks'
stabilization is not enough to compensate for heavy caliber weaponry as
sniper rifles, shotguns or rocket launchers.
* You no longer instantly decelerate upon sliding along a wall. Instead,
it may take a few tiles if you are moving at extreme speeds. Passing
over lattices still allows you to grab onto them!
As space movement is angle-based instead of dir-based now, its much more
smooth than before due to using new movement logic.
Example of jetpack stabilization in action:
https://github.com/tgstation/tgstation/assets/44720187/6761a4fd-b7de-4523-97ea-38144b8aab41
And, of course, you can do this now.

**This pull request requires extensive gameplay testing before
merging**, as a large amount of numbers have been picked arbitrarily in
an attempt to keep consistency with previous behavior (guns and
normal-sized items applying 1 drift force, which is equal to what
everything applied before this PR). Jetpacks and impacts may also
require adjustments as to not be frustrating to use.
Closes#85165
## Why It's Good For The Game
Zero-G refactor - currently our zero-g movement is rather ugly and can
be uncomfortable to work with. A piece of cable being able to accelerate
you the same as a duffelbag full of items when thrown makes no sense,
and so does instantly changing directions. Inertia-based version is
smoother and more intuitive. This also makes being thrown into space
more of a hazard (possibly opening the door for explosive
decompressions?)
Jetpack inertia and gun changes - this is mostly a consequence of
inertia-based movement. However, zero-g combat being preferred during
modes like warops was an issue due to it negatively affecting everyone
without jetpacks which are in limited supply onboard. This reverts the
mobility changes which severely impacted space exploration, while making
zero-g combat more dangerous and having it require more skill to be a
viable option.
## What's left
- [x] Refactor moth wings to use jetpack code
- [x] Refactor functional wings to use jetpack code
- [x] Locate and fix a recursion runtime that sometimes occurs upon
splattering against a wall
- [x] Add craftable tethers and modify engineering MOD tethers to use
the same system
## Changelog
🆑
add: You can now craft tether anchors, which can be secured with a
wrench and attached to with right click. They won't let you drift into
space and you can adjust tether length/cut it via lmb/rmb/ctrl click on
the wire.
add: MOD tethers now remotely place and connect to tether anchors
instead of throwing you at where they landed.
balance: MOD tethers can now be used in gravity
balance: Jetpacks are now inertia-based.
balance: Guns can accelerate you significantly in zero-g.
balance: All jetpacks now give you equal speed buff, however advanced
MOD ion jets and captain's jetpack have higher acceleration/deceleration
values.
refactor: Refactored zero-g movement to be inertia-based and utilize
angles instead of directions.
/🆑
## About The Pull Request
Title; instead of using 200 brute damage as a point of "victim has been
digested enough", it now uses death. Should be about the same
mechanically, though consuming alive humans with burn damage will puke
them out sooner now, since they won't be able to accumulate as much
brute damage as before. But I think it's ?fine?, it feels kinda cheesy
to let the cube eat an already almost fried human patty after it expires
anyway.
EDIT: Consume action isn't allowing for more than one mob to be consumed
at a time, and the cube didn't have a way to dispose of the mob it's
consuming, so per request I changed it so the action now changes to
_Eject Mob_ when you consume a mob, letting you do just that. Also fixes
visible message of an attempt at consuming a mob not showing the
victim's name.
## Why It's Good For The Game
Fixes#53512
QoL for getting rid of the consumed victim
No more devouring blank space (in the visible message)
## Changelog
🆑
fix: gelatinous cubes now puke out their consume victim when said victim
dies, not when it accumulates 200 brute damage (not all mobs can get
damaged to that point)
qol: gelatinous cube's Consume action can now be used to eject the
currently consumed mob
fix: fixed gelatinous cube's consume attempt not showing the victim's
name properly (You start attempting to devour !)
/🆑
## About The Pull Request
<details>
- renamed ai folder to announcer
-- announcer --
- moved vox_fem to announcer
- moved approachingTG to announcer
- separated the ambience folder into ambience and instrumental
-- ambience --
- created holy folder moved all related sounds there
- created engineering folder and moved all related sounds there
- created security folder and moved ambidet there
- created general folder and moved ambigen there
- created icemoon folder and moved all icebox-related ambience there
- created medical folder and moved all medbay-related ambi there
- created ruin folder and moves all ruins ambi there
- created beach folder and moved seag and shore there
- created lavaland folder and moved related ambi there
- created aurora_caelus folder and placed its ambi there
- created misc folder and moved the rest of the files that don't have a
specific category into it
-- instrumental --
- moved traitor folder here
- created lobby_music folder and placed our songs there (title0 not used
anywhere? - server-side modification?)
-- items --
- moved secdeath to hailer
- moved surgery to handling
-- effects --
- moved chemistry into effects
- moved hallucinations into effects
- moved health into effects
- moved magic into effects
-- vehicles --
- moved mecha into vehicles
created mobs folder
-- mobs --
- moved creatures folder into mobs
- moved voice into mobs
renamed creatures to non-humanoids
renamed voice to humanoids
-- non-humanoids--
created cyborg folder
created hiss folder
moved harmalarm.ogg to cyborg
-- humanoids --
-- misc --
moved ghostwhisper to misc
moved insane_low_laugh to misc
I give up trying to document this.
</details>
- [X] ambience
- [x] announcer
- [x] effects
- [X] instrumental
- [x] items
- [x] machines
- [x] misc
- [X] mobs
- [X] runtime
- [X] vehicles
- [ ] attributions
## Why It's Good For The Game
This folder is so disorganized that it's vomit inducing, will make it
easier to find and add new sounds, providng a minor structure to the
sound folder.
## Changelog
🆑 grungussuss
refactor: the sound folder in the source code has been reorganized,
please report any oddities with sounds playing or not playing
server: lobby music has been repathed to sound/music/lobby_music
/🆑
## About The Pull Request
So, do you remember orbies, those cutesy virtual PDA pets from that PR
that Ben made roughly six months ago before moving on his next project,
leaving them to be probably forgotten in a near future/present/past?
Yeah, personally I never played around, however I recalled that they do
have customizable virtual hats, which can be selected from a dropdown in
the UI, and I thought that it would be a perfect target for some
achievement-related content, as they're totally cosmetic that provides
no gameplay advantage nor affects balance in no way whatsoever. I cannot
sit well with cheevos being purely an end to itself, that's the reason
this PR exists.
The new additions to orbies hats, and their respective required
achievements are:
- The fishing hat (Legendary Fisher)
- A huge-ass rollie (Unhealthy Snacks) (yeah, it isn't exactly a hat but
the code in no way assume that the item has to be a hat, beside vars
named like that for the sake of convenience)
- A tape wizard hat (Archmage)
- An energy cakehat (Very Important Piscis)
- A bounty hunter cowboy hat (Hot Damn!)
- A fancy crown (Outdebted)
The huge-ass rollie (called fat dart) in the game, is a new cigarette,
rarely found in hacked cigarette vending machines. It's obviously a
reference to that Ralsei meme from 3 years ago or so but I personally
don't care, I just wanted to give an excessively big cigarette to orbies
to symbolize the proposterous accomplishment of eating 500 cigarettes in
a single round without dying from nicotine OD less than halfway through,
but since orbie hats use actual items are references for their
appearance, I found myself obliged to add one to the code. Overall, the
fat dart comes from an old PR on Citadel, though I had to resprite it
myself.
Here's a lazy collage of the hats. For some reason unbeknownst to me,
the hats are horizontally squished. I need to ask Ben why he did them
this way when Orbies' heads are as wide as a rugby ball.

## Why It's Good For The Game
Simple, extra cosmetic stuff for a simple feature that's as relevant as
playing around with plushes.
## Changelog
🆑
add: Added more customizable options to PDA virtual pets, which can be
unlocked by completing achievements.
add: Added a fat dart that can be rarely found in hacked cigarette
vending machines.
/🆑
Removed the only instance of `only_forced_audio = TRUE` in /tg/,
replaced with `cooldown = (5 SECONDS)`.
The variable is still there in case someone needs it.
## About The Pull Request
The variable was introduced in
https://github.com/tgstation/tgstation/pull/42216
to prevent it from getting annoying.
I discussed this change on the forums, previously assuming it was server
config
https://tgstation13.org/phpBB/viewtopic.php?f=9&t=37131
and people seemed receptive to the idea, spam being the only concern.
## Why It's Good For The Game
There are better ways to prevent spam.
Extending the cooldown is more favorable than being blocked completely
(this is the treatment cyborg *deathgasp received, which is a longer,
more jarring sound).
Audible emotes help you grab the attention of others (for better or
worse).
I genuinely find them amusing at times & they remind me of the person on
the other side.
There is some limit to play-pretend. These emotes enabled some
interactions with players I would not have had otherwise.
As long as we stop the spam, it breathes some life into a game full of
clicking, pointing at people and typing indicators.
## Changelog
🆑
del: Intentional screaming has been unmuted. Now has a 5s cooldown
instead.
/🆑
## About The Pull Request
bot modes werent correctly reflecting the bot's AI states. this pr fixes
that. also fixes some issues where the bot's AI might get stuck
inbetween switching modes
## Why It's Good For The Game
closes#86771
## Changelog
🆑
fix: botkeeper now displays bot's correct states!
/🆑
Fixes#86784
## About The Pull Request
Although some of the issues found were a direct result from #86692
(c698196766), there was still 40% of
length-related issues that wouldn't be covered anyways that are fixed in
this PR. I.E.:
* Name inputs without `MAX_NAME_LEN`
* Desc inputs without `MAX_DESC_LEN`
* Plaque inputs without `MAX_PLAQUE_LEN`
* Some people just screwed up the arguments so it would prefill
something like "40" in the `default` var because they didn't name their
vars.
To help me audit I added a lot of `max_length` named arguments to help
people understand it better. I think it might be kinder to have a
wrapper that handles adding `MAX_MESSAGE_LEN` in a lot of these cases
but I think there is some reason for a coder to be cognitive about input
texts? Let me know what you think. I didn't update anything
admin-related from what I can recall, let me know if anything needs to
be unlimited again.
## Why It's Good For The Game
The change to `INFINITY` notwithstanding, there were still an abundance
of issues that we needed to check up on. A lot of these are filtered on
down the line but it is clear that there needs to be something to catch
these issues. Maybe we could lint to make `max_length` a mandatory
argument? I don't know if that's necessary at all but I think that the
limit should be set by the invoker due to the wide arrangement of cases
that this proc could be used in.
This could all be a big nothingburger if the aforementioned PR is
reverted but a big chunk of cases fixed in this PR need to be fixed
regardless of that since people could put in 1024 character names for
stuff like guardians (or more now with the change). Consider this
"revert agnostic".
## Changelog
🆑
fix: A lot of instances where you could fill in 1024-character names
(normal limit is 42) have been patched out, along with too-long plaque
names, too-long descriptions, and more.
/🆑
## About The Pull Request
Legions borne from mimes can no longer talk
## Why It's Good For The Game
Immersion breaking oversight. Just as dwarves make tiny legions mimes
make mute legions
## Changelog
🆑
fix: Legions borne from mimes can no longer talk
/🆑
<!-- 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
Refactors bloodsuckers powers heavily and changes around a lot of few
powers work and even removes a lot of copypasta from tremere powers.
fixes#1384
<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->
<!-- Please make sure to actually test your PRs. If you have not tested
your PR mention it. -->
## Why It's Good For The Game
Currently Tremere is pretty meh compared to other bloodsuckers, and
bloodsucker powers use a lot of code that actions now implement
themselves.
<!-- Argue for the merits of your changes and how they benefit the game,
especially if they are controversial and/or far reaching. If you can't
actually explain WHY what you are doing will improve the game, then it
probably isn't good for the game in the first place. -->
## Proof Of Testing
I basically test almost every change, as part of how I work, obviously
not completely thoroughly thus testmerges,.
<!-- Compile and run your code locally. Make sure it works. This is the
place to show off your changes! We are not responsible for testing your
features. -->
## 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 it's 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: Heavily refactors how bloodsucker powers function.
refactor: Tremere powers no longer have subtypes for each level.
add: Completely redoes how bloodsucker ability descriptions, both the
longer antag panel and the action button hover over, they will actually
tell you actual values that the game itself uses for damage, cooldowns,
and effect durations
balance: Tremere powers can now level up as far as you want.
balance: Mesmerize is heavily reworked, now it no longer forces both
parties to stand still for it to work, but it is obvious to the victim
when used, however the victim is muted for the duration of the spool up,
and will stun and mute normally if the do_after completes.
add: Mesmerize now has a secondary that allows you to mute and confuse
your victim that happens on a right-click,
dominate, the tremere's version instead knockdowns.
add: Tremere's dominate now has a visual timer for temporary vassals,
visible only to the master's vassals and the master themselves.
balance: Tremere's dominate now only requires level 2 to create
temporary vassals, but the duration now scales with the level. It now
requires the potential vassal to have more than 336 blood, and will use
it all up once the duration ends, effectively making it only usable once
per person.
balance: All tremere powers can now level up past level 4
balance: Thaumaturgy is heavily reworked, it now has a charge system,
and while the projectile deal less damage, you can shoot a lot more of
them, and the projectiles will seek towards any non-vassal mob near
where you cast it.
refactor: Separates bloodsucker ability bitfields and action bitfields
to avoid overriding eachother
balance: Bloodsuckers going into torpor outside of coffins will always
die, but will wake out of torpor at 20% maxhealth(not counting critical
health)
balance: A coffin being opened during sol will wake you up, given you
are LITERALL BURNING UN-ALIVE.
/🆑
<!-- 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. -->
<!-- By opening a pull request. You have read and understood the
repository rules located on the main README.md on this project. -->
---------
Co-authored-by: Waterpig <49160555+Majkl-J@users.noreply.github.com>
Co-authored-by: The Sharkening <95130227+StrangeWeirdKitten@users.noreply.github.com>
## About The Pull Request

## Why It's Good For The Game
A little bit of added immersion, mainly.
Also doesn't mess with people faking death (not ling fake death,
*deathgasp shenanigans) because you can literally just wear glasses or
turn your body over and people can't see your eyes
Also doesn't necessarily *hide* the eyes, so if you examine a dead
cultist you'll still see `They have glowing red eyes`.
Also yes fakedeath (ling fake death) counts as deceased so your eyes
close
## Changelog
🆑 Melbert
qol: Deceased and asleep humanoids will now close their eyes
/🆑