Commit Graph

29 Commits

Author SHA1 Message Date
SkyratBot
b91c7a976b [MIRROR] Cleans up a circular ref in status effect code (#2313)
* Cleans up a circular ref in status effect code, I'm not sure if it's causing harddels, but I don't like it (#55706)

* Cleans up a circular ref in status effect code

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2020-12-25 08:21:59 +01:00
SkyratBot
e768cef297 [MIRROR] /obj/screen --> /atom/movable/screen (#1646)
* /obj/screen --> /atom/movable/screen

* Update storage.dm

* Update radial.dm

* a

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-11-11 04:12:50 +01:00
SkyratBot
dc3663a8d1 [MIRROR] Adds an action speed modifier system (#522)
* Adds an action speed modifier system (#53023)

* Adds an action speed modifier system

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-08-26 01:40:42 +02:00
Ryll Ryll
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
AnturK
70cc742966 Removes pointless processing status effects from mining mobs. (#51481)
* Removes pointless processing status effects from mining mobs.

* Status effects are bad mkay.
2020-06-08 22:16:58 +08:00
JJRcop
163c463b27 Stasis supports multiple sources (#49237)
* Add grouped status effect
This status effect can be applied by multiple sources
Will not be removed until all sources remove themselves

* Stasis is now a grouped status effect
2020-02-16 18:03:06 -08:00
AnturK
f63a53f5f0 Even more runtime fixes. (#48377)
* Fixes cleaving saw runtime.

* Achievement without DB runtime.

* Jelly transformation runtime

* purging nanite runtime.
2019-12-27 04:29:04 +01:00
spookydonut
2591ce17a6 Travis EOF newline detection v3 (#47539)
* scream

* aaa

* aaa

* new one
2019-11-04 19:16:50 -08:00
py01
cb03a28a4b Stacking Status Effects (#44964)
* magic numbers in saw_bleed moved to class definition

* more saw bleed abstraction

refactors p2

various stacking effect refactors

saw bleed refactors again

moves stacking status class to status_effect.dm

misc stacking changes and documentation

reverts saw_bleed functionality to original

better var names, var name fix

removes extra proc

more sane handling of application

removes unused define

changes saw bleed back to original form

* another proc that can be ovverriden for falling stacks

* fixes path

* simpifies some checks

* feedback fixes

* spelling
2019-07-13 03:03:38 -07:00
coiax
84b64328b9 Improves code implementation of the Musician trait (#41742)
cl coiax
add: Any talented Musician can now use any instrument to lift
spirits, and ease burdens. They can now also use the space piano and minimog
to grant people the Good Music buffs, just like a handheld instrument.
/cl

A living mob with TRAIT_MUSICIAN will now apply the Good Music
status effect to everyone who can hear the music. The buff will
now apply even to players who have disabled instrument sounds.

The Good Music status effect lasts for 6 seconds after the
musician stops playing.

Added STATUS_EFFECT_REFRESH that just refreshes the duration
of a status effect, rather than instancing a new one.
2018-12-09 23:08:03 +13:00
Jordan Brown
98903e3d43 Removes status_effect_listener (#38537) 2018-06-17 21:54:02 -04:00
fludd12
0d429e01b8 [READY][FINALLY] Various Crossbreed Updates (#38039)
* A Variety Of Updates

* Lovey Sprites!

* Adds implementation for listening status effects.

* Fixes implementation, uses defines instead of magic strings.

* Completely reworks status effect listeners

* Fixes Love Potions

* Fixes Approximately All The Things.jpg
2018-06-08 15:51:03 +03:00
kevinz000
4a23703622 Combat Overhaul Staging: Limb Specific Stamina and status effect clickdelay modifiers! (#36274) 2018-03-23 12:36:35 +01:00
Xhuis
2fedae91f8 Small clockcult balance patch 2017-12-20 11:51:22 -05:00
Joan Lung
70e712017e Status effects start processing immediately instead of on the next timer subsystem tick (#28747)
* Status effects start processing immediately instead of on the next timer subsystem tick

* let's fix this while we're at it

* hup

* not technically efficient but better than not updating when needed
2017-06-25 12:47:10 -04:00
Joan Lung
deae811756 Unconscious and Knockdown are now status effects (#28696)
* Unconscious and Knockdown are now status effects

* Fixes #28628

* fixes borgs

* the terrifying second argument

* Much better
2017-06-23 12:00:49 -04:00
Joan Lung
563f66700c Sleeping is now a status effect 2017-06-19 14:47:35 -04:00
4DPlanner
2e28336955 Updates to use status effects, turns off debug population settings 2017-05-06 03:57:09 +01:00
Joan Lung
1234425e0a Mania Motors now do minor damage and continue to affect targets after they leave its range (#26783)
* Mania Motors now do minor damage and continue to affect targets after they leave its range
2017-05-04 00:15:16 -05:00
Joan Lung
4a8fcdd395 Belligerent now prevents you from running even between chants (#25458)
* quick!

* Belligerent now prevents you from running even between chants

* one fuckup and git turns into a screaming hellspace populated only by pain

* glob

* seven seconds of pain
2017-05-01 11:48:55 -06:00
Joan Lung
920c2d00cc Status effects are actually deleted/handled when the mob is deleted (#26662) 2017-04-29 18:50:12 -03:00
Cyberboss
9e1ef0ffe2 Global variable wrappers (#25325)
* Add the system for managed global variables

* Travis ban old globals

* So you CAN inline proccall, that's neat

* Fix that

* master.dm

* Remove the hack procs

* Move InitGlobals to the proper spot

* configuration.dm

* Fix the missing pre-slash

* clockcult.dm

* This is probably for the best

* Doy

* Fix shit

* Rest of the DEFINES tree

* Fix

* Use global. for access

* Update find_references_in_globals

Always hated that proc

Whoever made it must've bee a r e a l idiot...

* __HELPERS tree

* Move global initialization to master.

Fix the declaration

* database.dm

* Dat newline

* I said DECLARATIVE order!

* Here's something you can chew on @Iamgoofball

* game_modes.dm

* Fix this

* genetics.dm

* flavor_misc.dm

* More stuff

* Do it mso's way. Keep the controllers as global

* Make master actually see it

* Fix

* Finish _globalvars/lists

* Finish the rest of the _globalvars tree

* This is weird

* Migrate the controllers

* SLOTH -> GLOB

* Lighting globals

* round_start_time -> ticker

* PAI card list -> pai SS

* record_id_num -> static

* Diseases list -> SSdisease

* More disease globals to the SS

* More disease stuff

* Emote list

* Better and better

* Bluh

* So much stuff

* Ahh

* Wires

* dview

* station_areas

* Teleportlocs

* blood_splatter_icons

* Stuff and such

* More stuff

* RAD IO

* More stuff and such

* Blob shit

* Changeling stuff

* Add "Balance" to changelogs

* Balance for changelog compiler + Auto Tagging

* Update the PR template

* hivemind_bank

* Bip

* sacrificed

* Good shit

* Better define

* More cult shit

* Devil shit

* Gang shit

* > borers

Fix shit

* Rename the define

* Nuke

* Objectives

* Sandbox

* Multiverse sword

* Announce systems

* Stuff and such

* TC con

* Airlock

* doppllllerrrrrr

* holopads

* Shut up byond you inconsistent fuck

* Sneaky fuck

* Burp

* Bip

* Fixnshit

* Port without regard

* askdlfjs;

* asdfjasoidojfi

* Protected globals and more

* SO MANY

* ajsimkvahsaoisd

* akfdsiaopwimfeoiwafaw

* gsdfigjosidjfgiosdg

* AHHHHHHHHHHHHHHHHHHHHHHH!!!!!

* facerolll

* ASDFASDFASDF

* Removes the unused parts of dmm_suite

* WIP

* Fix quote

* asdfjauwfnkjs

* afwlunhskjfda

* asfjlaiwuefhaf

* SO CLOSE

* wwwweeeeeewwwww

* agdgmoewranwg

* HOLY MOTHER OF FUCK AND THATS JUST HALF THE JOB?!?

* Fix syntax errors

* 100 errors

* Another 100

* So many...

* Ugh

* More shit

* kilme

* Stuuuuuufffff

* ajrgmrlshio;djfa;sdkl

* jkbhkhjbmjvjmh

* soi soi soi

* butt

* TODAY WE LEARNED THAT GLOBAL AND STATIC ARE THE EXACT SAME FUCKING THING

* lllllllllllllllllllllllllllllllllllllllllll

* afsdijfiawhnflnjhnwsdfs

* yugykihlugk,kj

* time to go

* STUFFF!!!

* AAAAAAAAAAAAAAAAAHHHHHHHHHHHHHHHHHHHHHHHHHHH!!!!!!!!!!!!!!!!!!!!!!!

* ngoaijdjlfkamsdlkf

* Break time

* aufjsdklfalsjfi

* CONTROL KAY AND PRAY

* IT COMPILEELEELELAKLJFKLDAFJLKFDJLADKJHFLJKAJGAHIEJALDFJ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

* Goteem

* Fix testing mode

* This does not belong in this PR

* Convert it to a controller

* Eh, fuck this option

* Revert controllerization Ill do it some other time

* Fix

* Working controllerization

* FOR THE LOVE OF CHRIST PROTECT THE LOGS

* Protect admins and deadmins

* Use the inbuilt proc
2017-04-06 23:26:13 -06:00
Joan Lung
3b38202b44 Vanguard and Linked Vanguard are much more powerful when Ratvar is up (#25398) 2017-03-23 20:36:04 -03:00
Joan Lung
ad6d33400e Vanguard now shows you how long you have until it deactivates. 2017-02-02 11:19:11 -05:00
Kyle Spier-Swenson
bee4b132a3 [READY]Makes addtimer use callbacks (#22660)
* Makes addtimer use callbacks

* I broke the comment

* I fucked up the regex

* this was a silly idea.
2017-01-04 16:02:56 +13:00
Joan Lung
b2fcbabb0b You can now push Wraith Spectacles up (#22188)
* You can now push Wraith Spectacles up

* you need to... actually LOSE the xray vision

* Don't flicker toooo much

* for bonus points, let's us refactor status effects while we're here

* might as well keep that around
2016-12-16 10:59:26 +13:00
Joan Lung
ea9d9c3261 Converts Vanguard to a status effect (#20208)
* Converts Vanguard to a status effect

* bolding

* do that first, don't runtime first

* gooooof
2016-08-31 09:29:45 +12:00
Iamgoofball
634662d6b4 Adds Freon to the game (#20188)
* Adds Freon to the game

* MAP CHANGE MEMES

* hahahahafuck

* YOU SAW NNOTHING

* fuqq

* sd

* Fixes

* Fixes2

* fixes

* BALANCE

* mob icecubing ALSO FUCK YOUR STATUS EFFECT CODE @Xhuis

* i play pokemon go every day

* Reworks icecubing

* sjyuhdjzsadjhm x jymhuxzc

* Final Pass

* kmJCBQADVNWVBOJRFJN

* changes

* nnjhdxsjhjh
2016-08-31 08:58:55 +12:00
Xhuis
f45c024b67 Adds framework for status effects (#19939)
* Adds framework for status effects

* Completes the Renew define

* Lots of work, refactoring

* Further work on status effects

* Gives status effects autism

* Fixes and stuff
2016-08-28 16:15:44 +12:00