Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

111 #172

Open
wants to merge 2,106 commits into
base: master
Choose a base branch
from
Open

111 #172

wants to merge 2,106 commits into from

Conversation

Huz2e
Copy link
Owner

@Huz2e Huz2e commented Aug 10, 2024

No description provided.

@Huz2e Huz2e added the RED LABEL Anti-stale label Aug 20, 2024
tgstation-ci bot and others added 29 commits September 15, 2024 13:12
## About The Pull Request
GODMODE has a lot of sources that toggle it. From admin-stuff to status
effects, components, actions and mobs which are supposed to be
invincible. It's better off as a trait than a flag, so we can manage
these sources.

## Why It's Good For The Game
See above.

## Changelog

:cl:
admin: godmode is now a datum trait instead of a bitflag. This means the
process for toggling it is a little different now.
/:cl:
## About The Pull Request
The profound fisher component (for both mobs and gloves) as well as the
proc responsible for rolling rewards are now being tested too. This is
something I've meant to do in a while, #86633 just happened to kick it
off now.

## Why It's Good For The Game
More tests, fewer mistakes flying under the radar.

## Changelog
N/A
## About The Pull Request
This PR nerfs the mood event from fishing from 5 to 4. In exchange,
after catching a fish, you can release it in the appropriate fishing
spot for a minor positive mood event (if it's alive, or if the user has
either the morbid or naive traits). It also counts towards fish
population for fish that are limited in the amount of times they can be
catched. Mobs with the naive trait (clowns) get the positive mood event
even if the fish is dead or being released in a bad place like lava

Some fishing spots like toilets and moisture traps don't have this
option, but that's because they've their own interactions with fish
that'd otherwise be overridden by it.

This PR also fixes mobs with the morbid trait (coroners) not enjoying
aquarium in their own morbid ways and add a few touches pertaining the
naive trait like alternative chat messages when interacting with the
fish.

## Why It's Good For The Game
This gives players a way to get rid of unwanted fish without leaving it
to die on the floor, also it's in the spirit of recreational fishing.

## Changelog

:cl:
fix: Fixed morbid mobs (coroners) not enjoying room beauty and aquariums
in their own weird ways.
add: You an now release fish after catching it for a positive moodlet
(or to repopulate certain fishing spot with rare fish).
/:cl:

---------

Co-authored-by: necromanceranne <[email protected]>
## About The Pull Request
Noticed this while resolving conflicts on another fish PR. I had
copypasted the code and then modified it, but I've forgot to change the
path too.

## Why It's Good For The Game
A mistake was made.

## Changelog

:cl:
fix: Fixed the force of swordfish and armored pikes
/:cl:
…86680)

## About The Pull Request
Making the code compile. EDIT: There's an on-going BYOND issue with
datum subtypes (not atoms) in which trying to override the parent value
with null won't work. Melbert has provided me a fix for it too (from:
d6c1dbf)

## Why It's Good For The Game
Making the code compile and the CI succeed

## Changelog
.
## About The Pull Request
I've added an get_icon_dimensions() call to a place where `icon.Width()`
and `icon.Height()` are called twice each. get_icon_dimensions uses a
cache of values so follow-up getFlatIcon() calls with the same current
icon won't have it call`icon.Width()` or `icon.Height()` which aren't
exactly cheap procs iirc.

I've also removed two of the fairly expensive
`length(icon_states(icon(curicon, curstate, dir)))` checks, because all
icon states have NORTH, EAST and WEST directions except 1-dir
icon_states which are always facing SOUTH. That is, unless there is some
farfetched procgenned bullshit that's probably not even possible and
worth checking against. We'll see.

## Why It's Good For The Game
GetFlatIcon is a very expensive proc, every bit of improvement is worth
it.

## Changelog
N/A
…Also makes their camera silent. (#85912)

## About The Pull Request
This PR adds an ID subtype which the detective outfit uses. It that can
be flipped to go plainclothes as an assistant. Access retained. Spare
clothes not included.

I've also made the detective camera silent (a sound cue is still played
to the user, others won't hear it) and with the flash disabled.

## Why It's Good For The Game
I want to make it a little easier for detectives to go plainclothes.
Between clothings and inventory management, it's already quite tricky as
a gimmick and without doubt a double-edged sword that can lead to
goofy-ass situations where officers actually confuse you for an
assistant. As for the camera, it's just a stealth buff.

## Changelog

:cl:
add: Gave the detective an ID that can flipped to look like an assistant
ID.
balance: The detective camera is now silent and doesn't flash.
/:cl:
## About The Pull Request
The idea was born from a small conversation about bepis nodes having low
visibility, which somehow degressed into the idea of announcing
researched nodes to the channels of the interested departments thru the
announcement system machine, which is what I'm doing here, while also
adding documentation, defines and purging some, not all, instances of
camel cases from announcement_system.dm.

Oh, by the by, like the arrival and new head arrival messages, it can be
customized or disabled by interacting with the announcement system.

## Why It's Good For The Game
I think it's helpful to let players know when the research of their dept
is researched, and I think it's kinda interesting to announce bepis tech
on common like it's some hot stuff while it actually isn't just because
it's often missed out and miscellaneous.

## Changelog

:cl:
add: Automated announcement systems now announce researched nodes to
their respective departments. You can stop this by either disabling the
announcement systems or by using a multitool on the circuitboard of the
console you're researching nodes from.
/:cl:
)

Supermatter high energy processing no longer calls supermatter_zap() if
delta_time is 0. Also early returns in supermatter_zap() if zap_str or
zap_cutoff are invalid.
## Changelog
:cl:
fix: Fixes high energy supermatter zaps arcing through an unusually high
amount of objects and ignoring grounding rods.
/:cl:

---------

Co-authored-by: LemonInTheDark <[email protected]>
## About The Pull Request

Bodybags (with people inside them) can be click+dragged to disposals, so
you can dump bodybags down disposals

## Why It's Good For The Game

It's a classic crime trope, so I thought it'd be funny to represent.

## Changelog

:cl: Melbert
qol: You can dump bodybags (with people inside them) down disposals
/:cl:
## About The Pull Request

Tin. Smartfridges have a nonstandard way of arranging their examine text
printout. This just puts it in line with the rest of examines so it will
display multiline and get line breaks added.

## Why It's Good For The Game

Further standardizes examine text.

Before:


![image](https://github.com/user-attachments/assets/85805e36-3733-42c1-850b-cf5e87d550b4)

After:


![ShareX_x7nCaw74BH](https://github.com/user-attachments/assets/2f539109-9601-4688-9cd8-77f29467114f)

## Changelog

:cl:
fix: smartfridges and drying racks will now display their examine text
information mutlilined
/:cl:
## About The Pull Request
when working on #86031 , i added some checks that were already being
handled earlier in the chain, serving nothing. thanks to melbert for
catching these

## Why It's Good For The Game
removes some duplicated checks
## About The Pull Request
This will fix #86668, caused by #86031

## Why It's Good For The Game
This will fix #86668, caused by #86031

## Changelog

:cl:
fix: You once again need to right click to use tackling gloves.
/:cl:
## About The Pull Request

Fixes #86622 

Plasmamen relevant_external_organ is null, and it then checks if
relevant_external_organ is in a list containing nulls
I cleared the nulls from get_mut_organs to fix it

:cl:
fix: Fixes plasmamen having all external organ species preferences
/:cl:
tgstation-ci bot and others added 30 commits September 23, 2024 00:25
## About The Pull Request

Title.

## Why It's Good For The Game

So the beer bottle ring uses this sprite.

![image](https://github.com/user-attachments/assets/3bbd9822-36e4-4520-9a46-6925e71197a7)
But, when you open it, beer bottles.

I hate magic and love consistency so now it's properly beer cans.

## Changelog
:cl:
fix: The Beer Sixpack no longer magically turns into bottles.
/:cl:
## About The Pull Request

This fixes and improves some stuff with the living heart ritual:
- If you don't have any heart at all - i.e, you're a species without a
heart, or have no heart due to vein muscle membrane surgery, you can
still use the ritual to *put* a living heart into your chest.
- Fixed a "qdeleted thing being thrown around" runtime from the ritual
unintentionally deleting your old heart while dramatically throwing it
out of your chest.
- The ritual, when its replacing/adding a new heart to your chest, will
now heal the heart to just below the "severe organ damage" threshold, if
needed. It's very easy for a heart to accidentally decay without you
realizing if you're butchering a monkey in maints to hastily replace
your heart, especially if you accidentally forget the poppy or something
and have to go sprint to get one.

Fixes #71451

## Why It's Good For The Game

Consistency for edge cases is good, as well as avoiding runtimes.

## Changelog
:cl:
fix: Fixed the Living Heart ritual deleting your old heart when
replacing it instead of having it dramatically burst out of your chest
like it should.
qol: The Living Heart ritual will now work if you don't have one at all
for some reason, in the same way that'd you use an organic heart in the
ritual to replace a cybernetic heart.
qol: The Living Heart ritual, when putting a new heart into your chest,
will now heal the heart enough to be just under the "severe damage"
threshold, if needed.
/:cl:
## 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
:cl: 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
/:cl:
…86861)

## About The Pull Request
anything and everything from ghosts to supermatter damage was getting
soapbox speech, this adds a check for isliving so it only gives it to
mobs
## Why It's Good For The Game
bugs bugs bugs
## Changelog
:cl:
fix: fixes soapbox being given to non-mobs
/:cl:
…ute damage; Consume action changes to Eject when a mob is consumed (#86817)

## 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

:cl:
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  !)
/:cl:
…r storage UI open under odd circumstances (#86842)

## About The Pull Request
This is one of the stupidest issues I had the displeasure of working
with and I still do not know concrete details behind the issue because
some of the code introduced in this (supposed-to-be) debug PR
accidentally fixed said issue. Essentially, under odd circumstances of
the user either being SSD or having their storage focus stolen by
something else, an observer who had their storage UI open via
autoobserve could break their UI by moving away because that improperly
removed the user from some lists. This is the primary theory judging
from what fixed the issue, but sadly there is no concrete info behind it
as all attempts to reproduce the bug, both locally and on live, have
failed.

Closes #85259

## Changelog
:cl:
fix: Storage UI should no longer (not so much) randomly disappear,
hooray!
/:cl:
(This folder doesn't even exist anymore)
## About The Pull Request

This pull request fixes the link you get redirected to when you click
the "Rules" button on the top right of the game. Before it redirected to
http://www.tgstation13.org/wiki/Rules but the correct link is
http://tgstation13.org/wiki/rules (the www part is the problem).
## Why It's Good For The Game

Makes the rules button direct you to the correct link, making it easier
for someone to view the rules of the server.
## Changelog
:cl:
fix: fixed link for the rules button
/:cl:
## About The Pull Request
Little oopsie since I've forgot that time is in deciseconds for a moment
there, therefore it should be multiplied by 0.13 and not 1.3

## Why It's Good For The Game
I made a mistake.

## Changelog
Too small to add to the CL.
…cluding nulls (#86866)

## About The Pull Request

Previously the imaginary friend greeting message would be called on
`Login()`, but this meant that it could run before it actually linked
the `owner` value, thus putting nulls in the message where the owner's
name should've been.
This just changes it so `greet()` is only called on `Login()` if there's
already an owner linked, otherwise calling it when being attached to an
owner.
## Why It's Good For The Game

Better if the greeting message actually says whose imaginary friend you
are.
## Changelog
:cl:
fix: The greeting message imaginary friends get upon becoming one
actually includes the owner's name, instead of displaying nothing where
it should've been.
/:cl:
## About The Pull Request
all audible emotes share a cooldown now, that means, for example:
emoting `*scream` will play a sound, then emoting `*cry`, if the
cooldown for `*scream` hasn't passed, will not play a sound for the
`*cry`, but will still play the emote. Note - all audible emotes have a
default audible cooldown of 2 seconds, unless overriden on some emotes.

## Why It's Good For The Game
- prevents people from spamming multiple audio emotes in quick
succession.
- allows us to add more emote sounds without fear of players abusing
them for spam.
- less audio from emotes makes the audible emotes more special and less
ear-fatigue-ing
- forces players to be more considerate with what audible emote they
use, increasing quality of their usage for roleplay.
## About The Pull Request

Fixes this runtime:


![image](https://github.com/user-attachments/assets/7f4640a9-fbf0-4a5e-a51d-5ca1ebe22545)

`account_job` can in fact be null it seems, and that should be taken
into account.

## Why It's Good For The Game

Fixes oversight

## Changelog

Nothing player facing (probably?)
…suit (#86705)

## About The Pull Request

Trying to cable heal as an Aug while not wearing a jumpsuit makes you
cable whip yourself. This fixes it so that you can cable heal even if
you're chrome-ass naked.
## Why It's Good For The Game

Bugfix

## Changelog
:cl: Bisar
fix: Fixes augs not being able to heal with cables if they're naked or
going commando.
/:cl:
## About The Pull Request
varedited sounds/dmis make the map rely on existing in the same folder
as our repo instead of only needing the .rsc file
Closes #86836

## Changelog
:cl:
fix: Kilo whiteship no longer has varedited turrets in it
/:cl:

---------

Co-authored-by: Time-Green <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
RED LABEL Anti-stale
Projects
None yet
Development

Successfully merging this pull request may close these issues.