## About The Pull Request
I'm pretty sure I tacked on this bit ***after*** testing the PR and
forgot to check if it actually returned the value I needed. Oops.
Closes#93389
## Changelog
🆑
fix: Fixed raptors going at mach speeds
/🆑
## 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
Immerse element now uses an alpha filter rather than a vis_contents
object, which allows them to be much more smooth and seamless. There's
no longer a visible contour on fully opaque liquids, nor a janky effect
when you move in a liquid. This also fixes the broken fluid animation,
so now it actually has a bit of a wave to it.
<img width="179" height="183" alt="dreamseeker_PDjP1zyMRl"
src="https://github.com/user-attachments/assets/7c1bbefe-0e97-456e-a303-c34e6a1a238a"
/>
<img width="177" height="180" alt="dreamseeker_hGjKOyBL8f"
src="https://github.com/user-attachments/assets/6c3bc33f-a22c-452a-beb0-9dd44b080a7c"
/>
<img width="152" height="162" alt="dreamseeker_Et3eRd3NF6"
src="https://github.com/user-attachments/assets/1478aaba-d345-44de-8baa-9d0da0bc9d1c"
/>
<img width="185" height="182" alt="dreamseeker_5Iok1lUni2"
src="https://github.com/user-attachments/assets/4ac5fea4-24a7-46c2-b475-4445a43493b4"
/>
The code is immensely cursed in some places, ideally this should not
have to use vis_contents whatsoever but BYOND seems to be intent on
causing memory leaks whenever you try to set mutable's render_target to
an interpolated string, so I'm using a VIS_HIDE object as a relay for
the filter for the time being.
I've ended up changing some mob pixel_y offsets to pixel_z (as they
should've been from the start) to account for this (the logic is being
that pixel_y is "physical" position on the turf, while pixel_z is how
high above the turf something is)
## Why It's Good For The Game
The effect is less jank and looks cool.
## Changelog
🆑
refactor: Refactors immerse element to use alpha filters instead of
static overlays. It should look much prettier now.
/🆑
## About The Pull Request
red raptors will now be able to retaliate against mobs adjacent to it
while ridden.
## Why It's Good For The Game
red raptors dont have much use compared to its colleagues. this gives it
a bit of a unique purpose and makes it a viable option to have out on
the field
## Changelog
🆑
balance: red raptors are now able to attack while ridden
/🆑
This is a big one so please bear with me, wounds are complicated
We've decreased the max contributed damage to wound rolls from 35 to 25.
This results, after the exponent, a max possible wound roll of 1 to 91
before any modifiers (assuming the attack, after armor, is 25 or above).
The minimum value to wound is still 5.
Most wounds were contributing significant numbers per wound type to the
potential for a new wound to occur. Getting wounded once meant you were
getting wound a lot, but actually getting past that first wounding may
be the tricky part.
We have significantly reigned in the wound penalty that having a wound
contributes, and instead utilize the series wound penalty to allow same
type wounds to escalate themselves faster as a priority. Having wounds
still makes you more wound vulnerable, just not to such an extreme
degree.
The priority here for what wounds matter most for contributing to
overall wounding vulnerability is ``Infected BURNS > BURNS >
SLASH|PIERCE > BLUNT.``
Wound armor, unlike all other kinds of armor, was used as a additive
value to the wound roll modifiers rather than a multiplicative value.
We have reworked how wound armor is determined by changing how wound
modifiers are calculated.
Firstly, we're passing our entire injury roll into the
``check_woundings_mod()`` proc, as we're not treating this as a proc
that just adds values anymore.
Secondly, bare wound bonus only applies if there is no potential wound
protection from any source, as expected. But it comes last in the
calculations.
Thirdly, wound protection is applied to the injury roll last, after
wound bonuses from the attack, wound bonuses from other wounds and wound
bonuses from a disabled limb are applied. This does not include serial
wound bonuses, which are determined outside of this proc.
Wound protection comes from two sources. Clothing and limb wound
resistance. Your chest and head have an amount of wound resistance so
long as they are not mangled in any fashion. Being mangled means having
either a hairline fracture or a weeping avulsion wound.
Wound protection reduces the final injury roll by a percentage. Say our
roll is 50, and we have effectively 50% wound protection. The final roll
would be 25.
~~Most clothing have had their wound armor values changed. As a loose
rule, I used the highest of melee or bomb armor, except where that value
was 100, in which case I used the lowest instead. I'm basing this
decision on how embeds are calculated, which is attack type agnostic.~~
~~Some armor have inconsistent values because they are alternative
armors to an existing armor type or are hyperspecialized armor.
Ablative, bulletproof and security vests all share a value of 35,
despite the former two not having decent melee or bomb armor.~~
~~Some clothing missing wound armor that should have had them now have
wound armor.~~
~~This may need a bit of scrutiny in case one or two seem weirdly high.
Some have maybe become too low. Its a bit hard to say.~~
I changed it to ``exposed_wound_bonus`` to better represent when it
applies. You can be naked and still not be affected by this bonus if the
limb has wound resistance.
I'm not promising anything with this PR, but this is an attempt to
sanity check the values on wounds so that we're not seeing what the data
that determined the removal of beheading presented. An extreme
over-representation of tier 3 wounds. ~~And, from that, maybe I can
argue for beheadings coming back. That's my goal. I think beheadings
happened so much because the numbers were in need of work.~~ Well okay I
just wanna make wounds a bit more workable actually more than I want
beheadings.
Why is it that tier 3 wounds were so over-represented? Because wounds
will often force more severe wounds of other types by merit of any
wounds existing at all on a limb. Having **_a_** wound makes you more
wound prone for any kind of wound, and not just making you more likely
to suffer a more severe type of the same wound.
The threshold mechanic was intended to simulate making a wound worse,
but oddly just made a limb broadly more prone to getting worse from any
kind of attack to such a degree that future wound rolls of different
types were often going to start at the threshold necessary to be a tier
3 wound.
Dismemberment, mind you, requires you to suffer a flesh wound while you
have a bone wound of tier 2 or higher (with tier 3 giving a bonus to
this). You can do this readily via just a sharp weapon, because having a
mangled limb causes the wound to turn into a bone wound. Technically,
this is meant to be less likely as the effective damage for this wound
is halved. But the wound bonus from having a flesh wound was almost
always significant enough to kick your new bone wound up to a tier 3.
In other words; its not surprising that you saw so many beheadings,
because the system wanted to behead you as fast as it possibly can
thanks to all these escalating values.
Wound armor was only applied as a flat reduction on the roll. The
average for wound armor was 10. After receiving a single wound, you can
expect wound rolls to reach upwards of 100, even if the actual damage
roll was not particularly high, due to wound stacking bonuses form being
wounded.
This meant that wounds, if they happened, came thick and fast after the
first, regardless of what your protection might be to wounds. It was
just a matter of getting past the initial bump.
This is why effects that forced wounds were so powerful. They basically
made a given limb more prone to taking a wound without having to deal
with the protection problem first.
Finally, this is just a broad flaw with the system that is not its
fault. It is actually a problem that isn't a problem. Most people in the
game are not wearing helmets that protect their head. So most people are
going to suffer from a higher proclivity of being wounded if people are
aiming for the head. There is this...kind of cargo cult belief that
aiming for the head means you do more damage, or can stun someone if
you're lucky or what have you. It's entirely nonsense, but it has a
grain of truth in that people rarely wear, or even have access too,
headwear that provides wound protection or any protection at all. People
have jumpsuits, which are universally wound protected, but that isn't
true of the head. Look, the point is, they're not aiming at the head
because it is usually less armored, its for other reasons but it just so
happens to become true due to wounds and how wounds roll their type.
To soften this issue, I've decided to treat wound resistance as armor
until the limb suffers a tier 3 wound. This way, hits to the head MAY
not necessarily escalate to tier 3 instantly as they would on live even
from relatively low power weapons. Some weapons have very low force, but
have extreme bare wound bonuses. This should be less likely after this
change. I doubt this will necessarily make high damage high wound
weapons like energy swords any less prone to cutting you clean open, but
it might thanks to the reduction to contributed damage to the injury
roll. The system is now _a bit more random_.
🆑
balance: Wounds do not make you as vulnerable to suffering wounds of all
types as before. Instead, wounds make you more vulnerable to suffering
worse versions of themselves as a priority.
balance: Wound armor is now more impactful when protecting you from
wounds when you have already been wounded.
balance: Your head and chest are more difficult to wound until they have
been mangled; either from suffering from a weeping avulsion or a
hairline fracture.
code: Changed the variable for bare_wound_bonus to exposed_wound_bonus
to better explain what that variable is doing.
/🆑
---------
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
## About The Pull Request
This is a big one so please bear with me, wounds are complicated
### Max Potential Wound Rolls
We've decreased the max contributed damage to wound rolls from 35 to 25.
This results, after the exponent, a max possible wound roll of 1 to 91
before any modifiers (assuming the attack, after armor, is 25 or above).
The minimum value to wound is still 5.
### Wound Escalation Penalties
Most wounds were contributing significant numbers per wound type to the
potential for a new wound to occur. Getting wounded once meant you were
getting wound a lot, but actually getting past that first wounding may
be the tricky part.
We have significantly reigned in the wound penalty that having a wound
contributes, and instead utilize the series wound penalty to allow same
type wounds to escalate themselves faster as a priority. Having wounds
still makes you more wound vulnerable, just not to such an extreme
degree.
The priority here for what wounds matter most for contributing to
overall wounding vulnerability is ``Infected BURNS > BURNS >
SLASH|PIERCE > BLUNT.``
### Wound Armor
Wound armor, unlike all other kinds of armor, was used as a additive
value to the wound roll modifiers rather than a multiplicative value.
We have reworked how wound armor is determined by changing how wound
modifiers are calculated.
Firstly, we're passing our entire injury roll into the
``check_woundings_mod()`` proc, as we're not treating this as a proc
that just adds values anymore.
Secondly, bare wound bonus only applies if there is no potential wound
protection from any source, as expected. But it comes last in the
calculations.
Thirdly, wound protection is applied to the injury roll last, after
wound bonuses from the attack, wound bonuses from other wounds and wound
bonuses from a disabled limb are applied. This does not include serial
wound bonuses, which are determined outside of this proc.
Wound protection comes from two sources. Clothing and limb wound
resistance. Your chest and head have an amount of wound resistance so
long as they are not mangled in any fashion. Being mangled means having
either a hairline fracture or a weeping avulsion wound.
Wound protection reduces the final injury roll by a percentage. Say our
roll is 50, and we have effectively 50% wound protection. The final roll
would be 25.
### ~~Wound Armor on Clothing~~ Reverted
~~Most clothing have had their wound armor values changed. As a loose
rule, I used the highest of melee or bomb armor, except where that value
was 100, in which case I used the lowest instead. I'm basing this
decision on how embeds are calculated, which is attack type agnostic.~~
~~Some armor have inconsistent values because they are alternative
armors to an existing armor type or are hyperspecialized armor.
Ablative, bulletproof and security vests all share a value of 35,
despite the former two not having decent melee or bomb armor.~~
~~Some clothing missing wound armor that should have had them now have
wound armor.~~
~~This may need a bit of scrutiny in case one or two seem weirdly high.
Some have maybe become too low. Its a bit hard to say.~~
### The ``bare_wound_bonus`` variable
I changed it to ``exposed_wound_bonus`` to better represent when it
applies. You can be naked and still not be affected by this bonus if the
limb has wound resistance.
## Why It's Good For The Game
I'm not promising anything with this PR, but this is an attempt to
sanity check the values on wounds so that we're not seeing what the data
that determined the removal of beheading presented. An extreme
over-representation of tier 3 wounds. ~~And, from that, maybe I can
argue for beheadings coming back. That's my goal. I think beheadings
happened so much because the numbers were in need of work.~~ Well okay I
just wanna make wounds a bit more workable actually more than I want
beheadings.
Why is it that tier 3 wounds were so over-represented? Because wounds
will often force more severe wounds of other types by merit of any
wounds existing at all on a limb. Having **_a_** wound makes you more
wound prone for any kind of wound, and not just making you more likely
to suffer a more severe type of the same wound.
The threshold mechanic was intended to simulate making a wound worse,
but oddly just made a limb broadly more prone to getting worse from any
kind of attack to such a degree that future wound rolls of different
types were often going to start at the threshold necessary to be a tier
3 wound.
Dismemberment, mind you, requires you to suffer a flesh wound while you
have a bone wound of tier 2 or higher (with tier 3 giving a bonus to
this). You can do this readily via just a sharp weapon, because having a
mangled limb causes the wound to turn into a bone wound. Technically,
this is meant to be less likely as the effective damage for this wound
is halved. But the wound bonus from having a flesh wound was almost
always significant enough to kick your new bone wound up to a tier 3.
In other words; its not surprising that you saw so many beheadings,
because the system wanted to behead you as fast as it possibly can
thanks to all these escalating values.
Wound armor was only applied as a flat reduction on the roll. The
average for wound armor was 10. After receiving a single wound, you can
expect wound rolls to reach upwards of 100, even if the actual damage
roll was not particularly high, due to wound stacking bonuses form being
wounded.
This meant that wounds, if they happened, came thick and fast after the
first, regardless of what your protection might be to wounds. It was
just a matter of getting past the initial bump.
This is why effects that forced wounds were so powerful. They basically
made a given limb more prone to taking a wound without having to deal
with the protection problem first.
Finally, this is just a broad flaw with the system that is not its
fault. It is actually a problem that isn't a problem. Most people in the
game are not wearing helmets that protect their head. So most people are
going to suffer from a higher proclivity of being wounded if people are
aiming for the head. There is this...kind of cargo cult belief that
aiming for the head means you do more damage, or can stun someone if
you're lucky or what have you. It's entirely nonsense, but it has a
grain of truth in that people rarely wear, or even have access too,
headwear that provides wound protection or any protection at all. People
have jumpsuits, which are universally wound protected, but that isn't
true of the head. Look, the point is, they're not aiming at the head
because it is usually less armored, its for other reasons but it just so
happens to become true due to wounds and how wounds roll their type.
To soften this issue, I've decided to treat wound resistance as armor
until the limb suffers a tier 3 wound. This way, hits to the head MAY
not necessarily escalate to tier 3 instantly as they would on live even
from relatively low power weapons. Some weapons have very low force, but
have extreme bare wound bonuses. This should be less likely after this
change. I doubt this will necessarily make high damage high wound
weapons like energy swords any less prone to cutting you clean open, but
it might thanks to the reduction to contributed damage to the injury
roll. The system is now _a bit more random_.
## Changelog
🆑
balance: Wounds do not make you as vulnerable to suffering wounds of all
types as before. Instead, wounds make you more vulnerable to suffering
worse versions of themselves as a priority.
balance: Wound armor is now more impactful when protecting you from
wounds when you have already been wounded.
balance: Your head and chest are more difficult to wound until they have
been mangled; either from suffering from a weeping avulsion or a
hairline fracture.
code: Changed the variable for bare_wound_bonus to exposed_wound_bonus
to better explain what that variable is doing.
/🆑
---------
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
## About The Pull Request
Caused by ``initial()`` usage on the base type, and speed modification
on the holy child. Since move_intent can only be run or walk, we're good
to just +- on the base type instead.
Closes#91492
## Changelog
🆑
fix: Fixed holy hoverboards being able to gain speed boosts via move
intent changing while in space
/🆑
## About The Pull Request
Caused by ``initial()`` usage on the base type, and speed modification
on the holy child. Since move_intent can only be run or walk, we're good
to just +- on the base type instead.
Closes#91492
## Changelog
🆑
fix: Fixed holy hoverboards being able to gain speed boosts via move
intent changing while in space
/🆑
## About The Pull Request
Since we now have deep water that makes people drown, it makes sense to
go the extra mile and incorporate the ability for boats to travel over
water. This should allow some cool mapping stuff where you can make
islands that are only reachable by boat.
## Why It's Good For The Game
Mapping benefits.
## Changelog
🆑
add: Allow boats to travel over water
/🆑
## About The Pull Request
adds a single line (`override_allow_spacemove = TRUE`) to the megacarp
movement datum
## Why It's Good For The Game
it's a big ass fucking shark if the small carp can carry me through
space so can the megacarp. if i remember correctly it used to be able to
so why not. i want to ride my cool ass shark through space
## Changelog
🆑 Goat
fix: The megacarp (shark) will now be able to fly through space when
ridden like its smaller carp siblings.
/🆑
## About The Pull Request
Turns out that's what that file did
- Moved the featherweight stuff into the main `riding_mob.dm` because
we've already torn that file up by necessity
- Update the logic to work with upstream riding offset changes
- Fix layers being wrong on fireman carrying/piggybacks
## Why It's Good For The Game
Fixes#3662
## Proof Of Testing
<details>
<summary>Screenshots/Videos</summary>

</details>
## Changelog
🆑
fix: fixed the featherweight quirk doing nothing when you're picked up
fix: fixed rider always layering above carrier when fireman
carrying/piggybacking
/🆑
## About The Pull Request
Since we now have deep water that makes people drown, it makes sense to
go the extra mile and incorporate the ability for boats to travel over
water. This should allow some cool mapping stuff where you can make
islands that are only reachable by boat.
## Why It's Good For The Game
Mapping benefits.
## Changelog
🆑
add: Allow boats to travel over water
/🆑
## About The Pull Request
adds a single line (`override_allow_spacemove = TRUE`) to the megacarp
movement datum
## Why It's Good For The Game
it's a big ass fucking shark if the small carp can carry me through
space so can the megacarp. if i remember correctly it used to be able to
so why not. i want to ride my cool ass shark through space
## Changelog
🆑 Goat
fix: The megacarp (shark) will now be able to fly through space when
ridden like its smaller carp siblings.
/🆑
## About The Pull Request
516 requires float layered overlays to be using pixel_w and pixel_z
instead of pixel_x and pixel_y respectively, unless we want
visual/layering errors. This makes sense, as w,z are for visual effects
only. Sadly seems we were not entirely consistent in this, and many
things seem to have been using x,y incorrectly.
This hopefully fixes that, and thus also fixes layering issues. Complete
1:1 compatibility not guaranteed.
I did the lazy way suggested to me by SmArtKar to speed it up (Runtiming
inside apply_overlays), and this is still included in the PR to flash
out possible issues in a TM (Plus I will need someone to grep the
runtimes for me after the TM period to make sure nothing was missed).
After this is done I'll remove all these extra checks.
Lints will probably be failing for a bit, got to wait for [this
update](https://github.com/SpaceManiac/SpacemanDMM/commit/4b77cd487d0a7b6a069df20356b701af5b20489d)
to them to make it into release. Or just unlint the lines, though that's
probably gonna produce code debt
## Why It's Good For The Game
Fixes this massive 516 mess, hopefully.
closes#90281
## Changelog
🆑
refactor: Changed many of our use cases for pixel_x and pixel_y
correctly into pixel_w and pixel_z, fixing layering issues in the
process.
/🆑
---------
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
Co-authored-by: SmArtKar <master.of.bagets@gmail.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. -->
<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! --> this reworks and changes the raptor taming minigame
to be in-world.
to tame a raptor after mounting it, u have to steer it in different
directions to get it to calm down. ur progress will be displayed on a
bar underneath the raptor.
https://github.com/user-attachments/assets/adefe23c-ce07-48ef-b011-72cf0618d236
<!-- 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. --> i dont like the
current minigame very much as i dont think its very fun and engaging,
and i dont like that it opens up a new tgui screen. this solves both of
those
<!-- 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. -->
🆑
qol: the raptor minigame now no longer opens up a new window
add: the raptor minigame has been reworked
/🆑
<!-- 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
ive heard from a few players that the game is a bit too difficult,
especially when there's lag. this makes the minigame generally much
easier, and takes ping into account. ive also made the difficulty depend
on a few factors:
- the raptor's personality affects the difficulty, where raptors with
the cowardly trait will be slightly harder to tame
- Settlers will have a much easier time taming raptors
(ive also moved the minigame into its own file)
## Why It's Good For The Game
the game was a bit too unforgiving, this makes it easier for people to
win. And the dynamic difficulty gives the feature some personality.
## Changelog
🆑
add: tweaks the raptor taming minigame to be fairer
add: the taming minigame's difficulty now relies on the raptor's
personality as well as the rider's quirks
/🆑
## About The Pull Request
Speedbikes, wheelchairs and speedwagon have separate cover overlays -
this just made them render ontop of owners.
Closes https://github.com/tgstation/tgstation/issues/89481
## Changelog
🆑
fix: Fixed broken layering on some vehicles
/🆑
Fixes#85980
- Pixel adjustments are now sourced
When tweaking a mob's pixel w, x, y, z, is is now done via `add_offsets`
and must have a source string associated
- Refactors riding
Refactors how riding component selects the offsets to use. It's now all
done via the getter rather than a weird mix of a var, a cache, and a
getter.
- Moves a bunch of animations to use `pixel_w` / `pixel_z`
Largely to prevent conflicts with adjustments to a mob's pixel position,
but also as many animations are not actual movements, but visual
movements. Floating is one such example.
It just works
🆑 Melbert
fix: Fixed grab offsets not showing for anything but passive grab
fix: Fix jank with mob offsets when riding things
refactor: Refactored riding component, particularly how it selects layer
and offsets. Report any oddities
refactor: Refactored pixel offsets of mobs. Report any oddities
/🆑
<!-- 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
<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! --> this reworks and changes the raptor taming minigame
to be in-world.
to tame a raptor after mounting it, u have to steer it in different
directions to get it to calm down. ur progress will be displayed on a
bar underneath the raptor.
https://github.com/user-attachments/assets/adefe23c-ce07-48ef-b011-72cf0618d236
## Why It's Good For The Game
<!-- 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. --> i dont like the
current minigame very much as i dont think its very fun and engaging,
and i dont like that it opens up a new tgui screen. this solves both of
those
## 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. -->
🆑
qol: the raptor minigame now no longer opens up a new window
add: the raptor minigame has been reworked
/🆑
<!-- 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
Speedbikes, wheelchairs and speedwagon have separate cover overlays -
this just made them render ontop of owners.
Closes https://github.com/tgstation/tgstation/issues/89481
## Changelog
🆑
fix: Fixed broken layering on some vehicles
/🆑
## About The Pull Request
Fixes#85980
- Pixel adjustments are now sourced
When tweaking a mob's pixel w, x, y, z, is is now done via `add_offsets`
and must have a source string associated
- Refactors riding
Refactors how riding component selects the offsets to use. It's now all
done via the getter rather than a weird mix of a var, a cache, and a
getter.
- Moves a bunch of animations to use `pixel_w` / `pixel_z`
Largely to prevent conflicts with adjustments to a mob's pixel position,
but also as many animations are not actual movements, but visual
movements. Floating is one such example.
## Why It's Good For The Game
It just works
## Changelog
🆑 Melbert
fix: Fixed grab offsets not showing for anything but passive grab
fix: Fix jank with mob offsets when riding things
refactor: Refactored riding component, particularly how it selects layer
and offsets. Report any oddities
refactor: Refactored pixel offsets of mobs. Report any oddities
/🆑
## About The Pull Request
This isn't how that works.
## Why It's Good For The Game
They trained me wrong. As a joke.
🐱🧠
## Changelog
🆑
code: Removes a variable in the riddable creature component that
shouldn't be doing what it is doing.
/🆑
<!-- 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
Port of https://github.com/NovaSector/NovaSector/pull/3112, which is a
continuation of a work I stopped development on
Adds saddles, saddlebags, both of which can only be worn by quadruped
taurs in the backslot
Saddles allow taurs to be piggybacked with the rider having both hands
free, saddlebags allow riders to have ONE hand free, have sueprior
storage, but you can altclick the wearer to access the storage
Saddles can be made from leather, saddles are avaialble in the secvend,
and both saddles and saddlebags are in loadout
Part of a taur rework thingy magig I originally made for nova
Main design doc: https://hackmd.io/@NikoTheGuyDUde/rJ7C9HPe0
Quadruped design doc: https://hackmd.io/@NikoTheGuyDUde/rJzJiBPgC
<!-- 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
Read the main design doc. In short, taurs have very exotic anatomy that
isnt explored much, and the game would be greatly diversified if we
added some mechanical differences.
<!-- 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. -->
<details>
<summary>Screenshots/Videos</summary>
https://github.com/user-attachments/assets/c3a48127-0c54-4b62-a450-e14e210d1f56
</details>
## 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. -->
🆑
add: Quadruped taurs can now wear saddles, which allow anyone to
clickdrag themselves onto them to ride with free hands
add: Saddlebags for quadruped taurs, which are one-handed saddles that
allow anyone to access their storage by alt clicking the wearer
/🆑
<!-- 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
I randomly came across a `var/list/static` in the code, which does not
actually do what was intended, and thought it was silly. A ctrl+f
revealed that this was a fairly common mistake, so I went and fixed all
the instances of it I could find.
~~Including one in lighting code, which it looked like they were trying
to create a global list to cache generated lighting sheet values for
speed, but it was just a normal list that got created each time
pointlessly. Now those values are actually being cached (using a global
var, because a `static` list was not the right thing to use there in the
first place).~~
Nevermind, it seems that this was in fact being cached even if it
shouldn't have been, because byond. Just rearranged it there seeing as
it works either way.
## Why It's Good For The Game
Code that does what it's supposed to
## Changelog
🆑
fix: fixes a bunch of improper static list declarations
/🆑
# Conflicts:
# code/game/objects/items/kirby_plants/kirbyplants.dm
## About The Pull Request
Fixes bug introduced by
https://github.com/tgstation/tgstation/pull/84306 that broke borg
throwing
## Why It's Good For The Game
Bugfix. Lets borgs throw again
## Changelog
🆑
fix: Fix borg throwing not working
/🆑
## About The Pull Request
I've added a trait for when a speed potion is applied to the object.
This allows me to remove some args and variables from riding and
ridable, and allow fish past 2000 units of weight to have speed potions
applied to them without the risk of the slowdown being reset the next
time `update_size_and_weight()` is called.
Speed potions now also affect drag slowdown.
## Why It's Good For The Game
Small code improvement, leading to a possible balance change.
This fixes#38623.
## Changelog
🆑
balance: Speed potions now cancel drag slowdown too.
balance: Speed potions can be used on fish past 2000 units of weight.
fix: You can now speed up cardboard boxes with speed potions.
/🆑
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
I randomly came across a `var/list/static` in the code, which does not
actually do what was intended, and thought it was silly. A ctrl+f
revealed that this was a fairly common mistake, so I went and fixed all
the instances of it I could find.
~~Including one in lighting code, which it looked like they were trying
to create a global list to cache generated lighting sheet values for
speed, but it was just a normal list that got created each time
pointlessly. Now those values are actually being cached (using a global
var, because a `static` list was not the right thing to use there in the
first place).~~
Nevermind, it seems that this was in fact being cached even if it
shouldn't have been, because byond. Just rearranged it there seeing as
it works either way.
## Why It's Good For The Game
Code that does what it's supposed to
## Changelog
🆑
fix: fixes a bunch of improper static list declarations
/🆑
## 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
<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
fixes a bug where if people ride animals that share abilities with their
rider, and this animal happens to be polymorphed, players would be able
to turn into it by clicking that ability. this pr makes it so riders are
unable to use the ridden mob's polymorph ability, or if they are, it
will only transform the ridden.
## Why It's Good For The Game
closes#85114 , closes#85122
## Changelog
🆑
fix: fixes being able to transform into polymorphed mobs by riding them
/🆑
## About The Pull Request
this is a revival of #82635 . i got permission from potato to reopen
this, he did almost all the work. i only just solved the conflicts and
fixed all the bugs that were preventing the original from being merged
(but it should be TMed first)
## Why It's Good For The Game
slightly improves the performance of basic mob AI
## Changelog
🆑
LemonInTheDark
refactor: able_to_run and incapacitated have been refactored to be event
based
/🆑
---------
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: ZephyrTFA <matthew@tfaluc.com>