Commit Graph
44 Commits
Author SHA1 Message Date
xPokee 939f2fc9ac Merge branch 'master' of https://github.com/tgstation/tgstation into xpokee-test-upstream-sync 2025-09-10 14:12:16 -04:00
MrMelbertandGitHub 135a09182b Refactors obscured (#92779)
## About The Pull Request

Fixes #85028

Obscured flags and covered flags are tracked on carbons, updated as
items are equipped and unequipped. It's that shrimple.

Closes #92760

Just removes the species exception checks for not making sense

Also refactors handcuffs / legcuffs removal. In all of these situations
they were hardcoded when they could easily just use an inventory proc to
work.

## Why It's Good For The Game

Stops a million excessive calls to `check_obscured_slots`

Makes obscured behavior more consistent

Makes obscured behavior easier to use

Cleans up human rendering (There was some cursed stuff before with
render item -> updated obscured -> update body -> cause side effects)

## Changelog

🆑 Melbert
del: Golems which somehow manage to grow wings and somehow manage to
equip something that covers their jumpsuit can no longer fly.
(Seriously, this will not affect anyone)
refactor: Refactored clothing obscurity entirely. Items should be a
loooot more consistent and what covers what, and should update a lot
snappier. As always, report any oddities, like mysteriously disappearing
articles of clothing, hair, or species parts
refactored: Refactored handcuffs and legcuffs a bit, report any odd
situations with cuffs like getting stuck restrained
/🆑
2025-09-07 09:24:34 +02:00
8eeca186df [MIRROR] Cleans up some extra args in Destroy() [MDB IGNORE] (#25907)
* Cleans up some extra args in Destroy() (#80642)

## About The Pull Request

After https://github.com/tgstation/tgstation/pull/80628, these shouldn't
be needed anymore right?

## Why It's Good For The Game

Cleans up some vestigial code

## Changelog
EDIT: Not player-facing.

* Cleans up some extra args in Destroy()

---------

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
Co-authored-by: Pinta <68373373+softcerv@users.noreply.github.com>
2023-12-30 01:21:26 -05:00
BloopandGitHub f34174414d Cleans up some extra args in Destroy() (#80642)
## About The Pull Request

After https://github.com/tgstation/tgstation/pull/80628, these shouldn't
be needed anymore right?

## Why It's Good For The Game

Cleans up some vestigial code

## Changelog
EDIT: Not player-facing.
2023-12-30 03:54:07 +01:00
de08946673 [MIRROR] Fixed headless zambos and the oversight of no bio armor resistance [MDB IGNORE] (#23948)
* Fixed headless zambos and the oversight of no bio armor resistance (#78589)

## About The Pull Request

Fixed zombies being able to infect headless corpses (Including former
zombies)

Fixed bio armor being totally useless against zombies. Now it checks how
hurt your limb is: If it's more than the bio armor value, you get
infected. THICKMATERIAL clothing guarantees at least 25 damage required
to infect you, non-thick clothing reduces effective defence by 25. In
practice this means people with MODsuits, biosuits will resist infection
unless they're pummeled into crit, and wearing a firesuit will save you
from the first few slashes.

Fixed the bomb hood armor not having the same bio armor value as bomb
armor.

Added a message to the zed when they succesfully infect someone.

Turned some proc names into snake_case rather than, uh, nospacecase.

## Why It's Good For The Game

> Fixed zombies being able to infect headless corpses (Including former
zombies)

This is pretty cool but it also means you can't actually permanently
kill a zombie if they just get slashed again by another zombie.

> Fixed bio armor being totally useless against zombies. Now it checks
how hurt your limb is: If it's more than the bio armor value, you get
infected. THICKMATERIAL clothing guarantees at least 25 damage required
to infect you, non-thick clothing reduces effective defence by 25. In
practice this means people with MODsuits, biosuits will resist infection
unless they're pummeled into crit, and wearing a firesuit will save you
from the first few slashes.

Melbert told me this is an oversight, so I, uh, 'fixed' it? This also
lets people have some true actual defence against zombie infections,
without making them immune to it.

> Fixed the bomb hood armor not having the same bio armor value as bomb
armor.

Bug I noticed while going over bio armors.

> Added a message to the zed when they succesfully infect someone.

QoL and good feedback

> Turned some proc names into snake_case rather than, uh, nospacecase.

what the hell do you call isuckatnamignprocs(). what case is that.
cougarcase?

## Changelog

🆑
fix: Fixed zombies being able to infect headless corpses (Including
former zombies)
fix: Fixed bio armor being totally useless against zombies. Now it
checks how hurt your limb is: If it's more than the bio armor value, you
get infected. THICKMATERIAL clothing guarantees at least 25 damage
required to infect you, non-thick clothing reduces effective defence by
25. In practice this means people with MODsuits, biosuits will resist
infection unless they're pummeled into crit, and wearing a firesuit will
save you from the first few slashes.
fix: Fixed the bomb hood armor not having the same bio armor value as
bomb armor.
qol: Added a message to the zed when they succesfully infect someone.
code: Turned some proc names into snake_case rather than, uh,
nospacecase.
/🆑

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>

* Fixed headless zambos and the oversight of no bio armor resistance

---------

Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com>
2023-09-27 02:25:05 -04:00
047f7aa316 Fixed headless zambos and the oversight of no bio armor resistance (#78589)
## About The Pull Request

Fixed zombies being able to infect headless corpses (Including former
zombies)

Fixed bio armor being totally useless against zombies. Now it checks how
hurt your limb is: If it's more than the bio armor value, you get
infected. THICKMATERIAL clothing guarantees at least 25 damage required
to infect you, non-thick clothing reduces effective defence by 25. In
practice this means people with MODsuits, biosuits will resist infection
unless they're pummeled into crit, and wearing a firesuit will save you
from the first few slashes.

Fixed the bomb hood armor not having the same bio armor value as bomb
armor.

Added a message to the zed when they succesfully infect someone.

Turned some proc names into snake_case rather than, uh, nospacecase.

## Why It's Good For The Game

> Fixed zombies being able to infect headless corpses (Including former
zombies)

This is pretty cool but it also means you can't actually permanently
kill a zombie if they just get slashed again by another zombie.

> Fixed bio armor being totally useless against zombies. Now it checks
how hurt your limb is: If it's more than the bio armor value, you get
infected. THICKMATERIAL clothing guarantees at least 25 damage required
to infect you, non-thick clothing reduces effective defence by 25. In
practice this means people with MODsuits, biosuits will resist infection
unless they're pummeled into crit, and wearing a firesuit will save you
from the first few slashes.

Melbert told me this is an oversight, so I, uh, 'fixed' it? This also
lets people have some true actual defence against zombie infections,
without making them immune to it.

> Fixed the bomb hood armor not having the same bio armor value as bomb
armor.

Bug I noticed while going over bio armors. 

> Added a message to the zed when they succesfully infect someone.

QoL and good feedback

> Turned some proc names into snake_case rather than, uh, nospacecase.

what the hell do you call isuckatnamignprocs(). what case is that.
cougarcase?

## Changelog

🆑
fix: Fixed zombies being able to infect headless corpses (Including
former zombies)
fix: Fixed bio armor being totally useless against zombies. Now it
checks how hurt your limb is: If it's more than the bio armor value, you
get infected. THICKMATERIAL clothing guarantees at least 25 damage
required to infect you, non-thick clothing reduces effective defence by
25. In practice this means people with MODsuits, biosuits will resist
infection unless they're pummeled into crit, and wearing a firesuit will
save you from the first few slashes.
fix: Fixed the bomb hood armor not having the same bio armor value as
bomb armor.
qol: Added a message to the zed when they succesfully infect someone.
code: Turned some proc names into snake_case rather than, uh,
nospacecase.
/🆑

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2023-09-27 06:56:41 +02:00
59f028e756 [MIRROR] Does a stack trace if a scar cant get a valid description [MDB IGNORE] (#23768)
* Does a stack trace if a scar cant get a valid description (#78247)

## About The Pull Request

Title. Logs the file, keyword, and scar type.
## Why It's Good For The Game

This is basically an error state already, and we shouldn't be passing in
invalid files/keywords. This helps people (me specifically) figure out
what's wrong with scars, especially since I'm already seeing a few
general disfigurements floating about without being able to replicate.
## Changelog
🆑
code: Scars now stack trace if they fail to get a valid description
/🆑

* Does a stack trace if a scar cant get a valid description

---------

Co-authored-by: nikothedude <59709059+nikothedude@users.noreply.github.com>
2023-09-17 22:14:39 -04:00
nikothedudeandGitHub 4154ab05ef Does a stack trace if a scar cant get a valid description (#78247)
## About The Pull Request

Title. Logs the file, keyword, and scar type.
## Why It's Good For The Game

This is basically an error state already, and we shouldn't be passing in
invalid files/keywords. This helps people (me specifically) figure out
what's wrong with scars, especially since I'm already seeing a few
general disfigurements floating about without being able to replicate.
## Changelog
🆑
code: Scars now stack trace if they fail to get a valid description
/🆑
2023-09-17 18:41:17 -07:00
+1 9f3be12c19 [MIRROR] [TEST-MERGE FIRST] Wound refactor number two: Full synthetic support [MDB IGNORE] (#23601)
* [TEST-MERGE FIRST] Wound refactor number two: Full synthetic support

* Wound refactor two compatability (#23618)

* Delam emergency procedure moth (#23483)

* safety moff

* delta/whitespace/examine

* icebox

* moff poster

* moff poster

* Update DelamProcedure.tsx

* Update scram.dm

* sound plays during warning

* remove nightshift, theres already a global proc

* scrubber hint

* missed that define

* Apply suggestions from code review

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>

* covered by ui_interact

* Update modular_skyrat/modules/delam_emergency_stop/code/scram.dm

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>

* Update modular_skyrat/modules/delam_emergency_stop/code/scram.dm

---------

Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Automatic changelog for PR #23483 [ci skip]

* Automatic changelog compile [ci skip]

* [non modular] disables TG "hold up" for the foreseeable future (#23607)

Update gun.dm

* Automatic changelog for PR #23607 [ci skip]

* [MIRROR] Desouls Hivelord [MDB IGNORE] (#23609)

* Desouls Hivelord (#78213)

## About The Pull Request

![dreammaker_RJz4brjobM](https://github.com/tgstation/tgstation/assets/7483112/e5e4a3e9-ea6b-47f9-887c-3339d24d3fa8)

Replaces the sprite of the hivelord with a new one, in my continuing
quest to annihilate the old asteroid mob sprites.
A (never completed) asteroid mob resprite was actually my first PR, this
one is my 200th.
I am also planning on fucking with basic mob versions of these mobs some
time but the sprites can be atomised out.

In addition to replacing the old-ass MSPaint sprites, this PR also adds
a short death animation effect to the hivelord brood (from hivelords or
legions) which looks nicer than them just vanishing instantly upon
death.

Look at this video for an example of the animation:
https://www.youtube.com/watch?v=cKaskN5-y2A

## Why It's Good For The Game

Looks nicer.

## Changelog

🆑
image: Hivelords have a new sprite.
image: Hivelord and Legion brood have a death animation.
/🆑

* Desouls Hivelord

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>

* Automatic changelog for PR #23609 [ci skip]

* [MIRROR] Updates chem factory tank sprites [MDB IGNORE] (#23608)

* Updates chem factory tank sprites (#78209)

Updates chem factory tank sprites.

* Updates chem factory tank sprites

---------

Co-authored-by: Wallem <66052067+Wallemations@users.noreply.github.com>

* [MIRROR] Rice Dough can be made in a beaker [MDB IGNORE] (#23611)

* Rice Dough can be made in a beaker (#78062)

## About The Pull Request

Rice dough can be made in a beaker using 20u of Rice Flour and 10u of
Water. 10u of Rice Flour is made from 5u of Rice and 5u of Flour. Rice
dough can still be crafted manually using the crafting menu and the
original recipe.
## Why It's Good For The Game

Cooks can sometimes get swamped with work, especially on a high-pop
shift or when there are no botanists. By making rice dough more
convenient to make, cooks don't need to spend as much time in the
crafting menu.
Rice Flour is made from mixing equal parts Rice and Flour. Since no
recipe other than Rice dough uses both Rice and Flour in it's Recipe, it
should be fine to turn those regents into the intermediate reagent "Rice
Flour".
Fixes #77966
## Changelog
🆑
qol: Rice Dough may be made in beaker instead of being crafted, but the
rice and flour must be added first
/🆑

* Rice Dough can be made in a beaker

---------

Co-authored-by: blueDev2 <89804215+blueDev2@users.noreply.github.com>

* Automatic changelog for PR #23608 [ci skip]

* Automatic changelog for PR #23611 [ci skip]

* f

* awda

* unused type!!!

* Apply suggestions from code review

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* oh hey unused defines! bye

---------

Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
Co-authored-by: SkyratBot <59378654+SkyratBot@users.noreply.github.com>
Co-authored-by: Changelogs <action@github.com>
Co-authored-by: RatFromTheJungle <62520989+RatFromTheJungle@users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Wallem <66052067+Wallemations@users.noreply.github.com>
Co-authored-by: blueDev2 <89804215+blueDev2@users.noreply.github.com>

---------

Co-authored-by: nikothedude <59709059+nikothedude@users.noreply.github.com>
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
Co-authored-by: Changelogs <action@github.com>
Co-authored-by: RatFromTheJungle <62520989+RatFromTheJungle@users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: Wallem <66052067+Wallemations@users.noreply.github.com>
Co-authored-by: blueDev2 <89804215+blueDev2@users.noreply.github.com>
2023-09-16 11:24:49 -04:00
nikothedudeandGitHub 009af8c2ce [TEST-MERGE FIRST] Wound refactor number two: Full synthetic support (#78124)
## About The Pull Request

Heavily refactors wounds AGAIN.

The primary thing this PR does is completely change how wounds are
generated and added - while the normal "hit a guy til they bleed" stuff
works about the same, asking for a specific type of wound, say, like how
vending machines try to apply a compound fracture sometimes, isnt going
to work if we ever get any non-organic wounds, which the previous
refactor allowed.

With this PR, however...
* You can now ask for a specific type of wound via
get_corresponding_wound_type(), which takes wound types, a limb, wound
series, etc. and will try to give you a wound fitting those
specifications - but also, a wound that can be applied to a limb.
* This will allow for a vending machine to apply a compound fracture to
a human, but a collapsed superstructure (assuming my synth wounds go in)
to a robot

There are now new "series types" and "wound specific types" that allow
us to designate what series are "mainline" and randomly generatable, and
what are "alternate types" and must be generated manually - you can see
the documentation in wounds.dm.

The behavior of limping and interaction delays has been abstracted to
datum/wound from bone wounds to allow just, general ease of development

Pregen data now allows for series-specific wound penalties. Example: You
could set a burn wound's series wound penalty to 40, which would make
wound progression in the burn category easier - but it would not make it
any easier to get a slashing wound. As it stands wound penalties are for
wounds globally

Scar files are now picked in a "priority" list, where the wound checks
to see if the limb has a biostate before moving down in said list.
Example: Wounds will check for flesh first, if it finds it - it will use
the flesh scar list. Failing that, they then check bone - if it uses
that, it will use the bone scar list. This allows for significantly more
modular scars that dont even need much proc editing when a new wound
type is added

Misc changes: most initial() usage has been replaced by singleton
datums, wound_type is now wound_types and thus wounds can accept
multiple wound types, wounds can now accept multiple tool behaviors for
treatment, wounds now have a picking weight so we can make certain
wounds rarer flatly,

This PR also allows for wounds to override lower severity wounds on
generation, allowing eswords to jump to avulsions - but in spirit of
refactoring, this has been disabled by default (see pregen data's
competition_mode var).
## Why It's Good For The Game

Code quality is good!

Also, all the changes above allow wounds to be a MUCH more modular
system, which is one of its biggest problems right now - everything is
kinda hardcoded and static, making creative work within wounds harder to
do.

## Changelog
🆑
refactor: Refactored wounds yet again
fix: Wounds are now picked from the most severe down again, meaning
eswords can jump to avulsions
fix: Scar descs are now properly applied
/🆑
2023-09-09 19:20:21 -04:00
2bcbb36ab9 [MIRROR] [TEST-MERGE FIRST] Allows all limbs to be dismembered and significantly refactors wounds [MDB IGNORE] (#23407)
* [TEST-MERGE FIRST] Allows all limbs to be dismembered and significantly refactors wounds

* ah fuck it

* test

* edaawdawd

* Revert "edaawdawd"

This reverts commit 47be710fe61a1f4ca79212b29b3e88bf05ec9a3a.

* nothing but sheer hatred

* freaawd

* dzfxg

* Fixing some diffs here while we are at it.

* These are deprecated and should be removed

---------

Co-authored-by: nikothedude <59709059+nikothedude@users.noreply.github.com>
Co-authored-by: nikothedude <simon.prouty@gmail.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-09-05 13:24:22 -04:00
nikothedudeandGitHub b49d31916c [NO GBP] Removes a redundant file from my refactor (#78026)
## About The Pull Request

Title. It just wasnt used.
## Why It's Good For The Game

Redundant files bad
## Changelog
🆑
del: Deleted a unused file
/🆑
2023-08-31 10:32:04 -06:00
nikothedudeandGitHub 554edc60e9 [TEST-MERGE FIRST] Allows all limbs to be dismembered and significantly refactors wounds (#77813)
## About The Pull Request
**_THIS PR UPDATES THE SCAR VERSION - ALL EXISTING SCARS WILL BE
WIPED_**

Expands the wound system functionality to support any type of limb at
all.

To do this, wounds have been significantly refactored. For starters,
wounds now use limb biotype instead of wound type for determining what
they can be applied to. They also use singleton instances for most "can
we apply this" checks instead if copy pasted initial().

Wounds now use a "wound series" instead of wound_type for determining
the, well, series. Previously, all WOUND_BLUNT wounds were considered
bone wounds, making it impossible to have multiple WOUND_BLUNT wounds at
once. Now, its based on wound series - bone wounds are of the blunt bone
wound series, and use the typical logic.
One change that results from this is the ability for everything with a
jointed limb to get a dislocation. Yes, this includes things like
prosthetics.

On the note of external and internal biotypes: Exterior are bones,
Interior is flesh. Interior protects exterior from slash until its
mangled, at which point it either exposes exterior to slash or allows
dismemberment if theres no exterior.
Basically - it acts the exact same way, except its not hardcoded, and
its more modular.

A lot, lot more changes were made - I cant name them all, but if youre
interested, you can read up. Wounds have more procs, more
modularization, and less hardcoding.

Sadly, scars have been updated in such a way so that the wound version
must be updated. Scars will be deleted.

## Why It's Good For The Game

As it stands, half the limbs in the game can't be dismembered. This
changes that, allowing every single limb to be dismembered.

The two dismemberment critera are now:

1. If able to get mangled flesh or bone, it can be dismembered once it
gets mangled flesh and bone (or JUST flesh if it only has a internal
biostate, vice vers afor bone if external only)
2. If it cant be dismembered by the above, it will have a chance to
dismember when at or above 80% of its total max damage

Finally, code being better is usually a good thing.

## Changelog
🆑
balance: Prosthetics and slimepeople can now have limbs dismembered
balance: Slimepeople can now receive slash wounds, but cannot bleed
balance: Most limbs can now be dislocated
refactor: Scar backend reworked, scars will be wiped as they update to
the new format
/🆑
2023-08-29 21:00:36 -04:00
07fa5992a4 [MIRROR] Adds p_They (and friends) for capitalized pronoun helpers [MDB IGNORE] (#22555)
* Adds p_They (and friends) for capitalized pronoun helpers

* Fixes modular pronouns

* Merge conflict

* Update spank_related.dm

---------

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: Bloop <vinylspiders@gmail.com>
Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com>
2023-07-18 22:10:59 -04:00
dfd4801122 Adds p_They (and friends) for capitalized pronoun helpers (#76910)
## About The Pull Request

![image](https://github.com/tgstation/tgstation/assets/66640614/f8afe149-85cf-40d2-a5c1-4c96a3ccdfe4)

Basically replaces p_they(TRUE) with p_They

## Why It's Good For The Game
Fewer ambiguous parameters (what does TRUE mean when passed to p_they?)
More comprehensive helper functions.

## Changelog
🆑 Tattle
spellcheck: Fixed the grammar on a few revenant messages
/🆑

---------

Co-authored-by: tattle <article.disaster@gmail.com>
2023-07-17 22:55:58 -07:00
6dfe17306c [MIRROR] Pulls apart the vestiges of components still hanging onto signals [MDB IGNORE] (#21738)
* Pulls apart the vestiges of components still hanging onto signals

* update modular

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Tom <8881105+tf-4@users.noreply.github.com>
2023-06-18 13:18:23 +00:00
LemonInTheDarkandGitHub ae5a4f955d Pulls apart the vestiges of components still hanging onto signals (#75914)
## About The Pull Request

Signals were initially only usable with component listeners, which while
no longer the case has lead to outdated documentation, names, and a
similar location in code.

This pr pulls the two apart. Partially because mso thinks we should, but
also because they really aren't directly linked anymore, and having them
in this midstate just confuses people.

[Renames comp_lookup to listen_lookup, since that's what it
does](https://github.com/tgstation/tgstation/commit/102b79694fa8eb57ecf7b36032616a9e368ccced)

[Moves signal procs over to their own
file](https://github.com/tgstation/tgstation/commit/33d07d01fd336726b4f6f6f1b61bb0b3f11a00dc)

[Renames the PREQDELETING and QDELETING comsigs to drop the parent bit
since they can hook to more then just comps
now](https://github.com/tgstation/tgstation/commit/335ea4ad081ec63c42cfa05856e582cca833af6e)

[Does something similar to the attackby comsigs (PARENT ->
ATOM)](https://github.com/tgstation/tgstation/commit/210e57051df63f88dac3dd83321236da825aae5e)

[And finally passes over the examine
signals](https://github.com/tgstation/tgstation/commit/65917658fb8a1e7d28ae23c9437a583d646f0302)

## Why It's Good For The Game

Code makes more sense, things are better teased apart, s just good imo

## Changelog
🆑
refactor: Pulled apart the last vestiges of names/docs directly linking
signals to components
/🆑
2023-06-09 06:14:31 +00:00
3af3989a89 [MIRROR] Makes biological states for wounding limb based, not species based [MDB IGNORE] (#18257)
Makes biological states for wounding limb based, not species based (#71745)

I noticed something pretty terrible when playing around with some humans
locally.
As it turns out, limbs did not preserve their biological state when
amputated - This meant that a skeleton limb on a normal human, still
behaved as if it had a bunch of flesh and veins on it.
I didn't like that, and it seems like an oversight, so I decoupled the
biological state from the species and made it limb based.

What does this mean?
Skeleton limbs on a human will not bleed, but will still break (and be
more prone to breaking)
Human limbs on a skeleton will not bleed, however they will get cuts and
pierces that will not clot and need to be treated to go away - These
limbs will have the same requirements for dismemberment on a skeleton as
they have on a human.

This makes limbs behave according to how they look instead of causing
mild confusion.

🆑 Big chungus wholesome 100
fix: Amputated and reattached limbs now get wounded based on their own
biology, not the current owner's biology.
/🆑

Co-authored-by: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com>
2023-01-09 17:24:08 +13:00
ChungusGamer666andGitHub f9bb9742e9 Makes biological states for wounding limb based, not species based (#71745)
## About The Pull Request

I noticed something pretty terrible when playing around with some humans
locally.
As it turns out, limbs did not preserve their biological state when
amputated - This meant that a skeleton limb on a normal human, still
behaved as if it had a bunch of flesh and veins on it.
I didn't like that, and it seems like an oversight, so I decoupled the
biological state from the species and made it limb based.

What does this mean?
Skeleton limbs on a human will not bleed, but will still break (and be
more prone to breaking)
Human limbs on a skeleton will not bleed, however they will get cuts and
pierces that will not clot and need to be treated to go away - These
limbs will have the same requirements for dismemberment on a skeleton as
they have on a human.

## Why It's Good For The Game

This makes limbs behave according to how they look instead of causing
mild confusion.

## Changelog

🆑 Big chungus wholesome 100
fix: Amputated and reattached limbs now get wounded based on their own
biology, not the current owner's biology.
/🆑
2022-12-21 19:35:12 +01:00
f7c26bbf25 515 Compat (#17465)
* ONLY SKYRAT CHANGES

* ACTUALLY SKYRAT CHANGES

* yolo, revert later

* Update alternate_byond_versions.txt

Co-authored-by: AnturK <AnturK@users.noreply.github.com>
2022-11-15 06:59:06 +00:00
4d6a8bc537 515 Compatibility (#71161)
Makes the code compatible with 515.1594+

Few simple changes and one very painful one.
Let's start with the easy:
* puts call behind `LIBCALL` define, so call_ext is properly used in 515
* Adds `NAMEOF_STATIC(_,X)` macro for nameof in static definitions since
src is now invalid there.
* Fixes tgui and devserver. From 515 onward the tmp3333{procid} cache
directory is not appened to base path in browser controls so we don't
check for it in base js and put the dev server dummy window file in
actual directory not the byond root.
* Renames the few things that had /final/ in typepath to ultimate since
final is a new keyword

And the very painful change:
`.proc/whatever` format is no longer valid, so we're replacing it with
new nameof() function. All this wrapped in three new macros.
`PROC_REF(X)`,`TYPE_PROC_REF(TYPE,X)`,`GLOBAL_PROC_REF(X)`. Global is
not actually necessary but if we get nameof that does not allow globals
it would be nice validation.
This is pretty unwieldy but there's no real alternative.
If you notice anything weird in the commits let me know because majority
was done with regex replace.

@tgstation/commit-access Since the .proc/stuff is pretty big change.

Co-authored-by: san7890 <the@san7890.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2022-11-15 03:50:11 +00:00
bc5a1ccc30 [MIRROR] Limb targeting fix [MDB IGNORE] (#15767)
* Limb targeting fix

* Fixed another conflict!

Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
2022-08-28 15:51:08 -04:00
ShizCalevandGitHub b477a620e5 Limb targeting fix (#69405)
* makes targeting limbs work again
2022-08-23 21:17:30 +02:00
3916ea03de [MIRROR] Kapulimbs [MDB IGNORE] (#12497)
* Kapulimbs

* conflicts

* part one of fixes

* more fex

* ugh

* more fix

* eee

* e

* more fix

* Well it compiles, but we need to get digi legs working

* more fixes

* https://github.com/tgstation/tgstation/pull/65887

* https://github.com/tgstation/tgstation/pull/65904

* https://github.com/tgstation/tgstation/pull/65923

* more fix

* now uses dna specific icon overrides.

* species code no longer dictates what icon the limbs use

* digitigrade legs implemenation

* more fixes, species indexing, species bodyparts

* remaining mutant bois

* 0

* okay this work!

* IPC stuffs

* inv file uses

* optimisation and limb string rendering digitigrade stuff

* wew

* partial vox support

* bodymarkings are now stored on the bodypart

* limb key caching

* Update carbon_update_icons.dm

* Update carbon_update_icons.dm

* Moves our mutant variance to the new system and makes shoes squash.

* all legs do it

* https://github.com/tgstation/tgstation/pull/65918

* https://github.com/tgstation/tgstation/pull/65899

* https://github.com/tgstation/tgstation/pull/65990

* teshari bodytype

* them teshari's aren't humans

* bandaid for future proper teshari implementation

* Update vox_bodyparts.dm

* fixes chests and teshari implementation

* fixes

* fex

* Update mutant_zombie_bodyparts.dm

* oops

* Update synthetic_lizard_bodyparts.dm

* Update code/modules/mob/living/carbon/human/human_update_icons.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update code/modules/mob/living/carbon/human/human_update_icons.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update code/modules/mob/living/carbon/human/human_update_icons.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update modular_skyrat/master_files/code/modules/surgery/bodyparts/species_parts/ghoul_bodyparts.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update modular_skyrat/master_files/code/modules/surgery/bodyparts/species_parts/ghoul_bodyparts.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update modular_skyrat/master_files/code/modules/surgery/bodyparts/species_parts/ghoul_bodyparts.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update modular_skyrat/master_files/code/modules/surgery/bodyparts/species_parts/ghoul_bodyparts.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update code/modules/mob/living/carbon/human/species.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update scissors.dm

* wound stuff

* Update carbon_examine.dm

* more stuff

* Delete human_update_icons.dm

* begone thot

* https://github.com/tgstation/tgstation/pull/66065

* Update _external_organs.dm

Co-authored-by: Kapu1178 <75460809+Kapu1178@users.noreply.github.com>
Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2022-04-11 02:40:05 +01:00
Kapu1178andGitHub 1d0eadcb12 Kapulimbs (#65523)
* i wanna go to bed so im pushing this

* It compiles but doesn't work yet

* It works!

* I WANT TO DIE

* Appease linters

* some CI fixes

* Address reviews + oversight

* Limb grower fix

* more icon fixes

* forgot to hit save

* I'm a dumbass

* Removes bodypart parent from unit test

* Fixes monkeys and CI

* Grammar pass

* I hate zombie code so much

* General code cleanup

* THE SHITCODERS ARE COMING FOR MY VARS

* THE UNIT TESTS ARE COMING FOR MY SHITCODE

* Reviews + skirts

* Removes an unused DMI

* Why didn't I do this in the first place?

* HAIR REFACTOR

* Haha whoops

* How did I miss this

* Admin spawned creatures now have their features

* Optimize me harder

* minor fix i need to push to merge master

* Fixes hair (maybe) and a runtime

* Maybe fixes mirrors

* Attempts to fix women

* Fixes hair on dismembered heads and a grammar change

* Caps lock did me dirty

* address reviews

* icon failures fix + missed reviews

* Fixes: Facehuggers and Regenerate_limb

* Fixes ethereal color pref appearance

* How the fuck did this not break everything else horribly?

* JESUS FUCKING CHRIST IM A MORON

* Fixes compile

* I'm not high I swear

* Im a dipshiiiit

* grumble grumble

* Fixes a visual bug with digitigrade legs. Adds \improper to roundstart species names. Added two new clothing-related helper procs. Renamed a couple procs to be more accurate. Adds SHOULD_CALL_PARENT(TRUE) to examine_more. Addresses reviews.

* Forgot this little readability thing.

* Updates CODEOWNERS

* Me when I forget how github works

* mapload me harder

* Last second fixes
2022-04-01 21:07:46 -04:00
7d1d0e1fad [MIRROR] Refactors most spans into span procs (#6315)
* Refactors most spans into span procs

* AA

* a

* AAAAAAAAAAAAAAAAAAAAAA

* Update species.dm

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-06-16 00:24:49 +01:00
Watermelon914andGitHub 375a20e49b Refactors most spans into span procs (#59645)
Converts most spans into span procs. Mostly used regex for this and sorted out any compile time errors afterwards so there could be some bugs.
Was initially going to do defines, but ninja said to make it into a proc, and if there's any overhead, they can easily be changed to defines.

Makes it easier to control the formatting and prevents typos when creating spans as it'll runtime if you misspell instead of silently failing.
Reduces the code you need to write when writing spans, as you don't need to close the span as that's automatically handled by the proc.

(Note from Lemon: This should be converted to defines once we update the minimum version to 514. Didn't do it now because byond pain and such)
2021-06-14 13:03:53 -07:00
c2d6dd7d75 [MIRROR] Fixes a ton of harddels (#4215)
* Fixes a ton of harddels (#57736)

Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: ShizCalev <ShizCalev@ users.noreply.github.com>

* Fixes a ton of harddels

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
Co-authored-by: ShizCalev <ShizCalev@ users.noreply.github.com>
2021-03-17 20:42:47 +00:00
7f444f510e Fixes a ton of harddels (#57736)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com>
2021-03-17 05:51:53 -07:00
c487c73f39 [MIRROR] Grep for space indentation (#1969)
* Grep for space indentation

* aa

* Update species.dm

* Update species.dm

* Update maps.dm

* Update examine.dm

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-12-01 12:26:41 +01:00
TiviPlusandGitHub 0eaab0bc54 Grep for space indentation (#54850)
#54604 atomizing
Since a lot of the space indents are in lists ill atomize those later
2020-11-30 12:48:40 -05:00
600810e91f [MIRROR] Fixes runtime with persistent dismemberment scars (#1495)
* Fixes runtime with persistent dismemberment scars (#54571)

* Fixes runtime with persistent dismemberment scars

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-10-27 17:39:39 +00:00
Ryll RyllandGitHub 882f05d1b3 Fixes runtime with persistent dismemberment scars (#54571) 2020-10-27 11:52:19 -03:00
b576900a8b [MIRROR] Temporal Scarring is now per-character-slot, changelings now fake scars when disguising (#1274)
* Temporal Scarring is now per-character-slot, changelings now fake scars when disguising (#54311)

* Temporal Scarring is now per-character-slot, changelings now fake scars when disguising

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-10-12 23:26:04 +02:00
Ryll RyllandGitHub 9d5a3ceba0 Temporal Scarring is now per-character-slot, changelings now fake scars when disguising (#54311) 2020-10-12 13:39:44 -07:00
c0401a81b1 [MIRROR] Fixes scars sticking around after a limb is dismembered (#928)
* Fixes scars sticking around after a limb is dismembered (#53763)

During dismemberment from wounds, some scars would stick around even though the limb was no longer attached to the person. This was because I removed the scars from the person before removing the wounds, which itself would create more scars that would still be tied to the victim's scars. This fixes that, and tidies up some related code as well. Notably, you can now see which types of wounds a detached limb is suffering from by sight. Also, I have no clue what happened before when you attached a limb with existing wounds to someone, but I've made sure it applies the wounds to the person where they left off.

I also realized I made an order of operations error in the self-treatment for broken bones (with the bone gel and surgical tape) on the bone gel step, which made failing these treatments and briefly passing out/wasting a use of the gel 38 percentage points more likely than intended. This corrects that, so the base is 25%/45% failure for severe/critical blunt wounds. It also raises the bonuses to succeeding you get from painkillers a bit since you're going through a lot of trouble for all this already.

* Fixes scars sticking around after a limb is dismembered

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-09-23 14:43:15 +02:00
Ryll RyllandGitHub 105107bb41 Fixes scars sticking around after a limb is dismembered (#53763)
During dismemberment from wounds, some scars would stick around even though the limb was no longer attached to the person. This was because I removed the scars from the person before removing the wounds, which itself would create more scars that would still be tied to the victim's scars. This fixes that, and tidies up some related code as well. Notably, you can now see which types of wounds a detached limb is suffering from by sight. Also, I have no clue what happened before when you attached a limb with existing wounds to someone, but I've made sure it applies the wounds to the person where they left off.

I also realized I made an order of operations error in the self-treatment for broken bones (with the bone gel and surgical tape) on the bone gel step, which made failing these treatments and briefly passing out/wasting a use of the gel 38 percentage points more likely than intended. This corrects that, so the base is 25%/45% failure for severe/critical blunt wounds. It also raises the bonuses to succeeding you get from painkillers a bit since you're going through a lot of trouble for all this already.
2020-09-23 02:48:11 -03:00
76efc3d305 [MIRROR] Grabbing Yourself + Wound Fixes: Take 2 (+Minor Scar Changes) (#544)
* Grabbing Yourself + Wound Fixes: Take 2 (+Minor Scar Changes) (#52951)

By clicking yourself with grab intent while targeting a limb of yours that's bleeding, you'll "grab" onto it with your free hand to apply pressure. This takes 1.5 seconds to do, takes up a hand while you do so, and applies a slowdown while you're holding it. In return, that limb will bleed 30% less while you're holding it (though it won't clot any faster). This stacks with the 25% reduction in bleeding you get from being horizontal, so laying down clutching your gushing gut while waiting for help is now both thematic and viable!
Other fixes and changes

I also made some other changes to wounds of various importance. Here's a quick list

-Most wound treatments now respect thick clothing/materials, so you can no longer suture slashes through spacesuits.
-Using sutures on slashes and pierces now actually use up sutures, and regen mesh must be opened to treat wounds with
-Infectious zombies (romerol) can now be wounded as intended
-Coagulant has been nerfed again to reduce bleeding less for every wound it's reducing bleeding on. This'll still need more love and attention later, but I need to find a good middle point where medipens are good for bleeding in an emergency without being a way to sidestep any and all bleeding wounds in one go.
-I added a recipe for improvised coagulant in the Wounds 2 PR using baked pulped banana peels and salglu, but then realized that recipe sucked and was overly complicated. You can now drink straight up ground/juiced banana peels to help close up slashes and piercings. Yuckm!
-You can no longer repeatedly disembowel people who have already lost their internal organs
-Whetstones now make things edged sharp rather than pointy sharp, fixing a carryover from when sharpness = 2 used to be accurate sharpness. This'll have the effect of making sharpened weapons less sucky at chopping people apart since slashing is usually more devastating than piercing

I've also made a few tweaks to scars, mostly making them a bit smaller. It now takes twice as much scar severity to reach "absolutely fucked up" when examined, and the other steps have been raised a few points as well. Minor scar examine text is a tad smaller text-wise, and the precise locations for the scars are a bit more procedural as well (more location modifiers like upper/lower/inner/outer wrist/whatever). These changes will hopefully add a bit more variety to the scarring you see on random crew members, since it's pretty easy to hit max examine severity as is.

* Grabbing Yourself + Wound Fixes: Take 2 (+Minor Scar Changes)

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-08-27 21:52:59 +02:00
Ryll RyllandGitHub 52b5eecced Grabbing Yourself + Wound Fixes: Take 2 (+Minor Scar Changes) (#52951)
By clicking yourself with grab intent while targeting a limb of yours that's bleeding, you'll "grab" onto it with your free hand to apply pressure. This takes 1.5 seconds to do, takes up a hand while you do so, and applies a slowdown while you're holding it. In return, that limb will bleed 30% less while you're holding it (though it won't clot any faster). This stacks with the 25% reduction in bleeding you get from being horizontal, so laying down clutching your gushing gut while waiting for help is now both thematic and viable!
Other fixes and changes

I also made some other changes to wounds of various importance. Here's a quick list

-Most wound treatments now respect thick clothing/materials, so you can no longer suture slashes through spacesuits.
-Using sutures on slashes and pierces now actually use up sutures, and regen mesh must be opened to treat wounds with
-Infectious zombies (romerol) can now be wounded as intended
-Coagulant has been nerfed again to reduce bleeding less for every wound it's reducing bleeding on. This'll still need more love and attention later, but I need to find a good middle point where medipens are good for bleeding in an emergency without being a way to sidestep any and all bleeding wounds in one go.
-I added a recipe for improvised coagulant in the Wounds 2 PR using baked pulped banana peels and salglu, but then realized that recipe sucked and was overly complicated. You can now drink straight up ground/juiced banana peels to help close up slashes and piercings. Yuckm!
-You can no longer repeatedly disembowel people who have already lost their internal organs
-Whetstones now make things edged sharp rather than pointy sharp, fixing a carryover from when sharpness = 2 used to be accurate sharpness. This'll have the effect of making sharpened weapons less sucky at chopping people apart since slashing is usually more devastating than piercing

I've also made a few tweaks to scars, mostly making them a bit smaller. It now takes twice as much scar severity to reach "absolutely fucked up" when examined, and the other steps have been raised a few points as well. Minor scar examine text is a tad smaller text-wise, and the precise locations for the scars are a bit more procedural as well (more location modifiers like upper/lower/inner/outer wrist/whatever). These changes will hopefully add a bit more variety to the scarring you see on random crew members, since it's pretty easy to hit max examine severity as is.
2020-08-26 23:19:49 -07:00
cb3c031e54 [MIRROR] Refactors Temporal Scarring, changes how it works, removes longtimer quirk (#264)
* Refactors Temporal Scarring, changes how it works, removes longtimer quirk (#52688)

* changes temporal scarring

* hhh why is there no ckey

* note

* oops

* fixed

* Refactors Temporal Scarring, changes how it works, removes longtimer quirk

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-08-10 23:16:22 +01:00
Ryll RyllandGitHub b7ae6fc64d Refactors Temporal Scarring, changes how it works, removes longtimer quirk (#52688)
* changes temporal scarring

* hhh why is there no ckey

* note

* oops

* fixed
2020-08-10 16:29:27 -03:00
a97c51b30b [READY] Wounds part 2: Piercing wounds, dismemberment changes, housekeeping (#51786)
* pierce the heavens

* starts doing projs

* continue pierce

* before armor

* before sharpness redefine

* rename sharp defines, before further implementation

* finishing undoing atk_type back to sharpness

* neatens up sharpness defines, FALSE -> SHARP_NONE

* more piercing, removes brute damage bleed, bubblegum no longer wound

* starts letting embeds get in on the fun

* half with embed

* work on dismembering

* continued embed work

* more moving bandaging to limbs

* more dismemberment work

* removing embed pierce stuff

* tweaking bullets

* more docs and work on dismemberment

* spans, piercing, guns

* dismemberment and scar fixes

* bee changes

* bullets embedding

* more bullet and dismember work

* dismemberment, surgery, piercing, formaldehyde,

* pleases travis

* pierce smite

* nicer on blood

* Auto stash before rebase of "tgstation/master"

* more neatening

* wounds only consider up to 35 damage, wounds on l6 and 762

* updates hulk

* balance

* defines

* lower slug to 50 brute to accommodate wounds

* adds differentiation for having flesh/bones/both in mobs

* moves scar descs to json, renames organic_state

* excises removed healing skill

* fixes logs, inconsistencies, some balance changes

* untab

* slight compress

* a

* kills pointed global list

* dmdoc

* halfway through roh

* finishes roh review

* okay NOW i finished roh's reviews

* roh roh roh your boat

* gently down the stream

* global lists

* list ops, fix scanner for bone gel improvised fix

* travis moment

* sounds added and moved

* pellet clouds can join the fun fully, slight gun balancing for wounds

* doc moment

* unconflicts myself

* update hulk

* Update code/_onclick/item_attack.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* crying ascii face

* final rohview

* oops

* final final

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-07-23 22:20:09 -04:00
46dd89b07a [READY] Wounds part 2: Piercing wounds, dismemberment changes, housekeeping (#51786)
* pierce the heavens

* starts doing projs

* continue pierce

* before armor

* before sharpness redefine

* rename sharp defines, before further implementation

* finishing undoing atk_type back to sharpness

* neatens up sharpness defines, FALSE -> SHARP_NONE

* more piercing, removes brute damage bleed, bubblegum no longer wound

* starts letting embeds get in on the fun

* half with embed

* work on dismembering

* continued embed work

* more moving bandaging to limbs

* more dismemberment work

* removing embed pierce stuff

* tweaking bullets

* more docs and work on dismemberment

* spans, piercing, guns

* dismemberment and scar fixes

* bee changes

* bullets embedding

* more bullet and dismember work

* dismemberment, surgery, piercing, formaldehyde,

* pleases travis

* pierce smite

* nicer on blood

* Auto stash before rebase of "tgstation/master"

* more neatening

* wounds only consider up to 35 damage, wounds on l6 and 762

* updates hulk

* balance

* defines

* lower slug to 50 brute to accommodate wounds

* adds differentiation for having flesh/bones/both in mobs

* moves scar descs to json, renames organic_state

* excises removed healing skill

* fixes logs, inconsistencies, some balance changes

* untab

* slight compress

* a

* kills pointed global list

* dmdoc

* halfway through roh

* finishes roh review

* okay NOW i finished roh's reviews

* roh roh roh your boat

* gently down the stream

* global lists

* list ops, fix scanner for bone gel improvised fix

* travis moment

* sounds added and moved

* pellet clouds can join the fun fully, slight gun balancing for wounds

* doc moment

* unconflicts myself

* update hulk

* Update code/_onclick/item_attack.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* crying ascii face

* final rohview

* oops

* final final

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-07-23 23:19:30 -03:00
Ryll RyllandGitHub 0f6496a55c [READY] Adds Medical Wounds: Bamboo Bones and the Skin of Your Teeth (#50558)
About The Pull Request

This PR adds medical wounds, new forms of injuries that people can suffer that cause debilitation and complications, and often require more than what can be found in a medkit to treat. But let's be honest, big complicated walls of text about medical changes make people's eyes glaze over easily- so I created a handy infograph to explain the basics!

Also there's a full guide here!

dreamseeker_2020-04-18_20-42-19.png

The infograph may not be fully up to date with the specifics of the PR's status, but it'll be updated along with major changes so people have something to use as a crash course for familiarizing themselves with how wounds function. I also have another infograph with all 9 of the possible initial wounds coming, and will be up soon. You can also find the longform design doc here with more info on the broad details, including descriptions of treatments: hackmd whee
What this does

There's a lot to cover, but here's the bullet points of the main features and changes:

    Getting lots of damage on a limb can result in wounds, with more damage causing worse wounds. These can range from dislocated joints and minor cuts to compound fractures and fourth degree burns, and can affect you in different ways depending on what bodypart they're applied to (namely with broken bones).
    You can damage individual bodyparts on clothing (only jumpsuits for now) through the use of lasers and sharp weapons. Bodyparts that reach max damage are considered "shredded" and will not apply any protection for that zone until it is repaired with cloth. If all zones are disabled, the entire piece of clothing is shredded and unwearable until repaired with 3 cloth. Jumpsuits give a small amount of wound protection, and since sharp weapons and lasers generally get extra wound bonuses against bare flesh, even a plain jumpsuit provides decent protection from a few laser shots or scalpel stabs.
    Lasers gain a powerful niche versus unarmored/lightly armored carbons! As noted above, lasers can shred clothing and burn away zones of jumpsuits in 2 shots each, after which the target's bare flesh is exposed (barring other clothing), and lasers excel at dealing burn wounds against uncovered skin. Think big, nasty charring!
    Bleeding is now totally limb based, and gauze is as well. Bleeding is also 95% cut wound based, meaning sharp weapons make you bleed rather than just having 40+ brute on a limb.
    The more wounds and damage you get on a bodypart, the easier it'll be to gain more severe wounds. Wounds are arranged from Moderate, to Severe, to Critical in increasing severity, and you'll generally have to suffer the lesser ones before getting the worse ones.

dreamseeker_2020-05-15_03-15-59.png
Above: Someone having an incredibly bad day from bloodloss

dreamseeker_2020-05-04_22-29-29.png
Above: Scars from healed wounds

ShareX_2020-05-15_06-55-20.png
Above: Actual combat involving someone's head getting cracked

Here's a quick, if non-exhaustive, list of things I have left to do before I consider it feature complete

Finish adding treatments for each wound type/severity (mostly surgeries/triage for critical wounds)
Add second winds for bad injuries to give the victim a chance to get away
Flesh out severe & critical injuries in general
Find sprites for the bonesetter, bone gel, and anything else that might be needed
Add the medical items for treating the less severe wounds to the station
Polish code and remove any redundancies I left behind

    Quick balance pass to make sure nothing is horribly abuseable

Why It's Good For The Game

Adds a flexible new system for representing damage on carbons with injuries that can be treated in different ways. Moderate wounds from getting toolboxed or sliced with a scalpel can usually be treated by a buddy or even by yourself with the right tools, but getting flayed with a fireaxe or a laser gun emptied into your bare skin may require extra attention or even surgery in bad cases! Also makes laser guns cooler and more like 40k lasguns that can flash fry people (cool!)

This should also make spessmen more resilient and harder to kill outright, while still adding consequences and complications to getting hurt. Wounds aren't immediately fatal, but they can do things like slow down interactions, deal damage over time through infections, and generally make you more fragile until fixed. They can also give you a "second wind" on being applied that gives you a small adrenaline boost (or whatever) to help disengage and escape immediate danger.
Changelog

🆑 Ryll/Shaps
add: Introduces medical wounds, new injuries that can happen to fleshy carbons when they sustain lots of damage on a bodypart. There's quite a lot of change here, but you can read the guide at: https://tgstation13.org/wiki/Guide_to_wounds and an extended changelog is available here: https://hackmd.io/l_FI9b3tSqa_woDadewJXA
add: Introduces scars and temporal scarring! Healing a wound leaves a scar behind that can be seen by examining someone twice rapidly, and if Temporal Scarring is enabled in character prefs, surviving a round with scars will save them to be granted at roundstart another round! Let your body tell stories!
tweak: Bleeding is now fully bodypart-focused, and 95% of bleeding comes from cut wounds from sharp weapons. Gauze is applied on a limb-by-limb basis, and helps staunch bloodflow rather than totally stop it. Notably, you no longer bleed just from having 40+ brute damage on a limb.
del: Organic bodyparts are no longer disabled at maximum damage, but are easier to cause wounds to
add: O2 medkits in emergency lockers have been replaced with new emergency medkits with basic tools for diagnosing and treating wounds and basic damage
tweak: Herapin now rapidly increases bleeding on all open cuts, rather than causing bleeding by itself. The more cuts on the target, the more it will affect them.
tweak: Neckgrab table slams now hit the targeted limb rather than just the head, with a large chance to dislocate or break a bone
tweak: Sharp weapons and burning weapons can now shred zones on jumpsuits, disabling protection on that limb. Damaged clothes can be repaired with cloth.
tweak: Slaughter demons now deal less raw damage, but gain the ability to cause cut wounds, which becomes more powerful with each attack on a humanoid but resets when bloodcrawling.
/🆑
2020-06-12 23:47:33 +12:00