Commit Graph

987 Commits

Author SHA1 Message Date
Fikou
205dda301a fixies (#45886) 2019-08-13 17:19:49 -07:00
nemvar
041a62e0e3 Adds inhands for all the surgery tools. (#45864)
* Adds inhands for all the surgery tools.

* didn't even show the conflict
let's hope this works.
2019-08-13 17:16:43 -07:00
moo
98765bae0a Dissection Examine + Logic Fix + Ayy (#45807)
clDissectby
add: Examining a dissected body will provide insight on the highest tier performed.
fix: You can do ayy dissection now if you get the tech
fix: FINALLY fixed the surgery logic correctly
/cl
2019-08-12 11:39:25 +12:00
moo
d75332ffd6 Merge pull request #45773 from nemvar/patch-96
Failing healing surgery only gives one error message now
2019-08-08 19:28:10 -04:00
Mickyan
ad86530e5c dont worry i was a doctor once (#45765) 2019-08-08 00:06:53 -04:00
nemvar
0b5c61c899 Failing healing surgery only gives one error message now 2019-08-07 14:06:18 +02:00
kingofkosmos
c3ea51908d Adds "you" to local visible_messages (#45631)
* adds "you" to some combat visible_messages.

* more you-messages and attack verbs to present tense.

* small fixes

* more additions and small fixes

* few message tweaks

* Fixes a typo and few other wordings.
2019-08-06 02:15:34 -07:00
YPOQ
4f48850fce Fixes muscled veins surgery (#45642) 2019-08-05 01:58:36 -07:00
nemvar
e587b970da Adds parent calls to almost all tool_acts (#45582)
* Adds parent calls to almost all tool_acts

* actually compiles
2019-08-03 22:25:57 -07:00
nemvar
ea70deb828 List of contents (#45476)
About The Pull Request

-You know require medical access to change the medical records with the hud
-Medical/Sec HUD examine now relies on a trait instead of istype checks.
-Removed a shitload of excessive nesting
Why It's Good For The Game

This isn't a full refactor, just a small attempt to make this code slightly more sane and more friendly to work with. I do not intend to fix all the problems this piece of code has (ohh, there are so many of them) with this PR.
Changelog

cl
balance: You now require medical access to change the medical records with a medHUD.
/cl
2019-08-03 14:49:36 +12:00
moo
7c551c7e85 Tend Wounds Now Is -2 Steps and Borg-Friendly! (#45457)
cl Cobby
balance: Tend Wounds is -2 Steps (Scalpel > Healing w Hemo > Cautery)
fix: Borgs can now perform Tend Wounds
add: Anti-spam on Tend Wounds (Starting Message only, Result Message untouched)
admin: The incise step for Tend Wounds does not cause damage, making it borg friendly.
/cl
Why

Tend wounds should be the baseline so let's make it easy to perform.
2019-07-30 20:53:50 +12:00
RandolfTheMeh
48fbc073e5 [TMC] Defib Rework, Organ Damage Effects (#45104)
* Brain damage works on organ damage procs, some defib reworks

* Heart and Lung damaging effects and failure, liver damage and failure moved to its organ again

* Cleans up reused global

* Organ damage procs on living and living/carbon

* Changes brain damage procs again

* SR heals all organs on revive, no decay for cybernetic implants, stomach damage and fail effects.

* Damage and failure effects for the appendix, ears, and some touchups on the stomach

* Committing changes so I don't lose them

* Organs now cease decaying in the proper containers

* Organ Fridges

* Reverts map changes

* Adds coronary bypass, lobectomy, trying to deal with organ_stat runtime

* Actually fixes merge conflict

* Smartfridge tweaks

* Think I figured out map merger

* Evidently not

* Still runtiming with glass shards even after I remove the map changes?

* Fixes runtime error with brain_item

* Runtime fix on living/carbon/life

* Cleaning up old PR code

* Brain damage fix, moves defines to actually be in _DEFINES, under DNA since that's where organ slots were

* Wrong math operation used

* Brains in MMIs no longer decay

* Removes redundant variable, and defibs no longer work on heart attacks caused by failing hearts

* Removes misleading comment

* init freezes organs in case organ crates are added, morgue corpses are frozen, removes adjustLiverLoss

* Removes random spaces, scanners check brain damage severity now

* Swaps numbers for defines, fixes brain surgery, rebalances coronary bypass bleed since that was insane last I tested it

* List change

* Runs off of an index instead of using cut

* Brains can be put into organ fridges

* Fixes minor type, hotfix for cloning problem

* Removes pointless check

* Demon hearts no longer decay

* Nightmare hearts no longer decay

* Removes istype() check on process, sets can_decompose instead

* Condenses organ damage report

* Removes organ failure messages

* Less organ damage spam, implements organ threshold messages instead

* Brain damage messages go to owner, not source

* Self-examine shows damaged organs

* Minor code cleanup, adds autodoc comments to the new procs

* Inverts standard organ vars to prevent random organs decaying, adds a few more autodoc comments.

* Merged the booleans into a set of flags

* Healthy living improves organ healing rates

* dunno why this didn't update

* my actions have consequences

* Sets ORGAN_SYNTHETIC for overlooked robotics organs

* Doubles heart decay time

* 3 minute heart decay

* Lobectomy/Coronary_Bypass heal more

* removes hivemind spells from the changes
2019-07-29 02:18:22 -07:00
oranges
51744f7dbe autodoc organ helpers (#45464) 2019-07-26 03:01:22 -07:00
Qustinnus
b33d1c49a3 [READY] Floydmats (Datum materials) & custom toolboxes (#45118)
* Initial work

* more

* ass

* wsedfwedff

* asss

* test

* stuff

* fuck

* sss

a

* kms

* asdadwedwdfwefwef

* start

* test

* dwwdew

* ewefwfef

* Redemption machine (#8)

* Redemption machine

* Removes debug messages

* changes

* fuckmyshitup

* coin mint works with new material shenanigans (#10)

* Auto stash before merge of "materials" and "origin/materials"

* woops

* furnace (#11)

* autolathe manufacturing of toolboxes

* eggs in a basket

* some small changes

* matcolors

* documentation

* more documentation and effects

* done

* Color man bad (#12)

* fixes designs

* ass

* more fixes

* fuck me

* firestacks adder

* epic fixes

* fixes designs

* DONE DIDDILY DOO

* removes category macro

* ch-ch-ch-changes

* fixes some stuff

* Fixes display of ore values (#9)

* Redemption machine

* Removes debug messages

* Re-adds value display

* Replaces the fire stacking component with an element instead (#13)

* fixes examine

* fixes ligma bugs

* double ligma boofus

* fix

* misses some defines

* fixes ORM

* Update code/datums/components/material_container.dm

Co-Authored-By: Emmett Gaines <ninjanomnom@gmail.com>

* fixes

* Makes glass objects weaker (#14)

* Makes glass objects weaker

* uses correct proc

* fixes shit

* honk honk

* better

* oh shit oh fuck

* fixes

* fuck ORMs

* fixes the biogen

* documentation

* ass (#15)

* component

* changes

* ass

* ass

* doc

* Auto stash before merge of "materials-plasmacomponent" and "origin/materials-plasmacomponent"

* fixes rounding

* fixed
2019-07-24 11:27:01 -04:00
Bobbahbrown
2e7075426d fixed surgery being broken how did nobody notice this LOL (#45182) 2019-07-15 15:29:32 -04:00
XDTM
a5296e434c Makes undeads and androids have no metabolism (#44846)
About The Pull Request

Added two new traits, TRAIT_NOMETABOLISM and TRAIT_TOXIMMUNE. Does what it says on the tin, making livers not process reagents at all (except liverless reagents) and gives immunity to toxin damage. Species with NOMETABOLISM spawn with no liver (NOLIVER is now redundant and has been removed). This trait also prevents liver failure damage, for obvious reasons.

These traits have been given by default to androids (artificial, they were already immune to chemical healing anyway), zombies (who have their own regeneration) and skeletons (milk still works).

Other changes:

    Species' handle_reagents proc now fires before checking for metabolization, so species can process chems even when liverless.
    Removed the calcium healer trait, making it into a species handle_reagents check for each affected species (skeletons, plasmamen, bone golems). Skeletons now also heal burn damage from milk, since it's one of the few forms of healing they have available.

Note:
These traits should logically be applied to plasmamen and golems, but i intentionally left them out for now since it would be a significant balance shift, and there should be a proper alternative way of healing them first.
Why It's Good For The Game

Balances the significant benefits of being undead with a significant negative: being immune to chemical healing. Since zombies don't really rely on it and androids were already heal-immune, this mostly affects liches, and i believe it should be fine: considering that the main point of the spell is the resurrection mechanism, the space, gas, pierce, and heat/cold immunity they also gain should be counterbalanced by having a harder time recovering from injuries.

There is also a silver lining to having this trait: poison immunity. Effectively this is a buff to androids and zombies, the latter especially because they can no longer process mutation toxins. While this tactic is creative, it also trivializes a very expensive investment of TC. I might still add a liverless way to apply mutation toxins later on, but zombies shouldn't be effectively one-shot by a syringe gun.
Changelog

cl
add: Androids, skeletons and zombies no longer metabolize reagents. As such they no longer benefit from healing reagents, nor are affected by poisons and toxins.
add: These species are now also immune to any other form of toxin damage.
tweak: Milk now also heals burn damage for skeletons.
/cl
2019-07-15 09:07:26 +12:00
Dennok
f9addce004 Runtimes fixes (#44885)
* fix meter work on un initialized pipe

* fix runtime in process_cell

whet it try to call to wrong type turf

* fix roundstart runtime in debug sungery disc

*  fix return_air() runtime

Runtime in pipes.dm, line 52: Cannot read null.air

* s

* Update surgery.dm

* Update pipes.dm

* Update meter.dm

* Update LINDA_turf_tile.dm

* Disable atmos processing in outer border on load.

* Update map_template.dm

* Update map_template.dm

* Update map_template.dm

* Update pipes.dm

more runtimes for good of runtimes
2019-07-13 03:58:02 -07:00
XDTM
95981ea926 Makes the abductor healing gland more interesting (#44903)
* Makes the abductor healing gland more interesting

* Implant rejection

* .

* no vomit for blood regen

* Update code/modules/antagonists/abductor/equipment/glands/heal.dm

Co-Authored-By: moo <11748095+ExcessiveUseOfCobblestone@users.noreply.github.com>
2019-07-12 02:25:31 -07:00
nemvar
60d04f6632 Fixes surgery runtime. (#45042)
* fixes surgery runtime

* ?

* Update surgery.dm
2019-07-10 15:55:47 -04:00
Jordie
0df815b905 Merge pull request #45079 from willox/borg_hand_holding
remove special borg behaviour during surgery
2019-07-10 21:37:03 +10:00
ShizCalev
63cb731429 Merge pull request #45057 from AnturK/slimelungruntime
Fixes slime lungs runtime.
2019-07-09 15:51:26 -04:00
William Wallace
0e7589827b remove special borg behaviour during surgery 2019-07-09 02:49:26 +01:00
moo
8fcf42eff9 Experimental Cobbisection [150+ Hours and Ready] (#44821)
About The Pull Request & Why
Dissection (Prev Experimental Dissection) Is Now Roundstart

Goal:give medbay a task they can do outside of normal healing on the off chance they're overstaffed and/or are in need of work.
Dissection (Prev Experimental Dissection) Is Now Tiered

Goal: I'm still not seeing competition in the medical tree that I'd like to see. Now that science benefits from going to this tree, I expect it to be a prominent if not the main pick.

Goal: Provide Medical bargaining power with Science. Want you cool gear bros? Better indulge us a bit if you want us to farm corpses.

NOTE: You will NOT be punished for doing low tiered surgeries then unlocking further tiers. It adjusts your rewards depending on if the body has been experimented on before and gives you the difference, it will not block you from doing the surgery entirely.
Repeatability

Goal: Make it less balanced around the all/nothing mechanic and more with rewarding constantly running the surgery.

Failing the surgery will give you a pity amount (1%, something slightly more than none in grand scheme) but more importantly will NOT add the trait that disables you from using that body for the surgery again.
Silicons can now perform dissection

Since It's not All/Nothing I decided to allow silicons to be able to help out. This is the first (and only) surgery that they can potentially fail.
Nerfs (yikes!)

Needed to nerf it to compensate for the fact that it was now roundstart. The hardest one was pointgain. I decided to mega nerf it so tiered would be desired. This was also a result in the shift of balance off the RNG and more on the repeatability.
Dissection Can Now Be Performed on ANY LIVING MOB

Goal: Cooperation between Mining (returning Mobs) and Medbay (turning these mobs into points)

The foundation is really lacking imo since I didn't want to dance around with numbers in this PR. Currently all mobs that aren't human and aren't explicitly listed in check_value are 300 points per surgery.

I hope you guys can add more mobs to the pool with better rewards (imagine dissecting the dragon for science!)
Dissection Surgery Minor Edits
Step Configuration Edit

Needed to change just for repeatability in the dissect step (didn't like the end step being the proceeding step).

I replaced the incision step with a post-dissection clamp step to keep the theme of scalpel > hemo (dissection uses scalpel)
Implement Changes / Probability Effects

Rewards using the researched tools (further integrates medsci coop), lowers standard gear to appropriately balance higher tiers.
MISC
Prices are Define Bound

Everything is relative to a single number via calculating off a define instead of independent values. Balance discussion shifts from "Is X number fair" to a more tangible "Is this mob worth X times the amount of a normal human". If everything is strong/low we can just edit a single number!
Let me know if there's any undoc'd changes!
Changelog

cl Cobby x Medbay
balance: (Experimental) Dissection is now roundstart.
balance: (Experimental) Dissection is now tiered and give higher point outputs than their predecessors.
add: All living mobs with corpses can be dissected.
code: Attention, all ss13 gamers! I need YOUR help adding mobs to the pool so they don't get the lame 60% of normal human pricing! You can dissect DRAGONS FOR CRY IT OUT LOUD!
balance: You are NOT punished for doing the lower tier surgeries then unlocking higher ones!
add: Borgs can perform dissection but they are not 100% successful.
tweak: Shifts balance of dissection surgery towards spammability vs. rng mechanic.
balance: All point rewards are severely nerfed to promote doing this multiple times (since it's now available from the getgo).
tweak: If you fail the dissection step, you get a pity reward (1% credits) and can repeat the step until you successfully dissect the being.
tweak: Lowered probabilty of success on default tools, increased probability for researched tools.
tweak: removed 2nd incision step, added clamp step post dissection (repeatability purposes).
/cl
2019-07-09 11:57:26 +12:00
XDTM
0e07c79902 Fire Cremation (#44764)
Bodies can now be cremated (dusted) by setting them on fire while their limbs are at maximum damage.
The process goes like this:

    Body needs to be on fire
    Chest needs to have maximum damage
    At this point, limbs with maximum damage will start to slowly burn off (or detach, if augmented). Burnt off limbs are deleted, detached limbs will remain.
    When no limbs are left, the head is eligible to burn off, same rules as above.
    When nothing is left, the body will (still gradually) dust, dropping any equipped items (that managed to survive the fire).

Every limb has a cremation counter that ticks up if the limb is at max damage and on fire, and is reduced when the limb is healed. Past a certain threshold, the cremation counter causes the limb to burn off and get deleted or detached.

Extra change: Damage from fire is now applied evenly across the body instead of picking a random limb, to make burning people for cremation more consistent. Without this change, damage tended to plateau after most limbs reached max damage.

Fixes #44755
Why It's Good For The Game

A slow but effective way to dispose of corpses if you have time and access to fire. Makes sense to be able to burn off the evidence, after all.

It's also an extra way to kill off people with NODEATH if you dont have dismemberment tools, as they can be tossed into a fire until they become ash. So flooding the station with plasmafire is now an appropriate response to a zombie invasion.

You can now actually dispose of bodies in lava, instead of leaving a permanent ever-burning husk.

It's worth noting that unless done intentionally or literally swimming in plasmafire, this won't happen randomly.
Changelog

cl
add: Bodies can now be manually cremated by setting them on fire while their limbs are fully damaged.
add: Cremation causes limbs to gradually burn off into ash; once none are left, the body is destroyed.
tweak: Fire damage is now evenly distributed instead of applied to a random limb every tick.
/cl
2019-07-09 11:39:39 +12:00
AnturK
e6ef17efc1 Fixes slime lungs runtime. 2019-07-08 11:17:01 +02:00
RandolfTheMeh
e9dab4c665 Universal Organ Damage system (#44710)
About The Pull Request

So organ damage is a thing now associated with general object of organ, meaning all organs inherit a damage variable, failing boolean, healing variable, and maxHealth variable. The proc applyOrganDamage takes in the damage and organ path, applying damage/healing to said organ. While an organ is in use, it heals a small amount over time (granted the organ is not failing), with this fraction being set by the healing variable.

This also reworks preexisting organ damage systems to function more so on the universal organ damage system, the liver specifically. So much code exists in regards to eyes/blindness and ears/deafness that I'll need to go ahead and take a longer time combing through the code to get everything that can reasonably be tied to those two organs and their level of damage reworked to function off of the organ damage system, as opposed to just a trait add/remove system.

Lastly, this slightly reworks scanners, since now you need to check for every organ in the body. Since organs are stored as "the [organ]" with the method I used to get them, the phrasing on the medical scanner was changed to make more sense given it now has to say something along the lines of "severe/minor damage detected within [the organ]". I'll likely add another proc if I cannot find a way to get the organ's max health during this operation, since a static number determining minor/severe damage does not work when an organ's max health is less than the typical 100 points (as is the case with eyes).
Why It's Good For The Game

Every organ can be damaged, though not every damaged organ does anything right now. Damaged livers do the same thing as they did previously, and damaged eyes develop varying levels of vision impairments. The benefits to this PR are more for future coding projects than it is for the game currently, with no foreseeable changes to the way it's played currently.
Changelog

cl
code: Universal Organ Damage variables and procs
/cl
2019-07-05 09:40:30 +12:00
Tlaltecuhtli
6fa189a822 Make limbs small, to fit in trashbags (#44730)
It's a pain when you are a janitor and the crew starts losing limbs in
the hallway and you can't quick grab them with the trashbag. The head
bodypart overwrites it to bulky so this doesn't change it.
2019-07-02 18:06:05 -07:00
ShizCalev
6e44bd3a93 Merge pull request #44796 from kingofkosmos/addswarningspans
Adds warning-spans
2019-07-02 00:47:43 -04:00
XDTM
d70c43c5f1 Checks for metabolization on some has_reagent (#44653)
About The Pull Request

Stuff that should logically require you to actually be metabolizing the reagent now requires a liver, or the reagent to not need one.
Some reagents have been granted self consuming status, like holy water, since their effects are not tied to the metabolism.

Fixes #44650
Fixes #43024 since there should be no real way to mitigate the constant toxin damage now
Why It's Good For The Game

Less exploits with livers, more consistency in mechanics.
Changelog

cl XDTM
fix: Viral healing symptoms that are tied to reagents now also require a functioning liver to work.
tweak: Holy water, Pyrosium, Cryostilane, Napalm and Phlogiston no longer need a liver to have their effects.
/cl
2019-06-29 21:08:38 +12:00
terranaut1
1b5329a10a Dissection/Revival Surgery Tweak (#44819) 2019-06-29 01:48:46 +02:00
nemvar
b83eca4647 Fix sharpness-related issues (#44830)
Turned off energy weapons can no longer cut down trees, destroy wooden
walls, harvest lavaland plants and make planks.
2019-06-27 21:19:33 -07:00
moo
585fa910b9 Stasis beds now are surgery-friendly (#44838)
Adds a modifier to probability for SBs, making them better than both
tables and beds but not as good as dedicated surgery tables.

It allows for a decision making process that previously would rarely
exist since a 0% bonus compared to a 100% bonus is pretty steep (if
you knew it didn't have one). Now you trade 10% for the perks of being
in stasis.
2019-06-27 20:56:35 -07:00
vuonojenmustaturska
a61b86a052 fixes2 (#44736) 2019-06-27 14:13:19 +02:00
kingofkosmos
c969f6d3eb Merge branch 'master' into addswarningspans 2019-06-27 15:12:54 +03:00
kingofkosmos
ec5c82029a * "Is already...", "Can not...", "Not when..." etc. 2019-06-27 06:15:43 +03:00
kingofkosmos
6bbb64e2cf * more warnings 2019-06-25 21:46:21 +03:00
kingofkosmos
fb9731492c * extra spaces removed from "span class = '" --> "span class='"
* warning-spans added to cases of "You need..."
2019-06-25 21:03:25 +03:00
imsxz
23f0289934 is that bacteria i smell? (#44641) 2019-06-24 19:52:43 -04:00
oranges
f213838d09 Merge pull request #44654 from XDTM/SurgeryIsStoredInTheMind
Adv Surgery now also checks mind for the surgeon trait
2019-06-24 10:36:51 +12:00
4dplanner
6e1427d91f Stamina tweaks (#44671)
* Stam damage limb coefficient up to 0.75

Stam damage more responsive

* Short-circuits in the correct order

* Other damage types in a limb no longer make you stamina resistant
2019-06-21 16:17:26 -04:00
nemvar
f2ff96683b Fixes CNS rebooter. (#44630)
* welp

* h

* fixes

* slightly prettier

* accounts for stun reduction
2019-06-21 15:14:28 -04:00
vuonojenmustaturska
8ddc9677c7 examine-code refactor (#44636)
* 1/4 done? maybe?

* more

* stuff

* incremental stuff

* stuff

* stuff & things

* mostly done but not yet

* stuffing

* stuffing 2: electric boogaloo

* Git Commit and the Kingdom of the Crystal Skull

* make it actually compile

* found more stuff

* fixes

* fix AI laws appearing out of order

* fix windows

* should be the remaining stuff

* this time for real

* i guess it should compile too

* fix sechuds
2019-06-19 22:07:57 +02:00
YPOQ
c6c133a6f4 Fixes livers not being damaged by toxins (#44611)
* Fixes livers not being damaged by toxins

* Swaps amount checks for readability
2019-06-19 13:41:43 -04:00
XDTM
8a74481554 Adv Surgery now also checks mind for the surgeon trait 2019-06-19 12:40:28 +02:00
XDTM
6ea00689b0 Using the wrong tool during surgery won't hit the patient with it (#44482)
* Using the wrong tool during surgery won't hit the patient with it

* Update surgery.dm
2019-06-18 23:19:01 -04:00
XDTM
5c41cc6f52 Muscled Veins experimental surgery (#44481)
* A

* Update all_nodes.dm

* Update all_nodes.dm
2019-06-18 19:37:29 -04:00
XDTM
3f28227f6c Makes surgery more stealthy (#44483)
About The Pull Request

Part of #44440

Surgery now gives detailed description to the surgeon and anyone within one tile of distance, and more vague or ambiguous descriptions to the patient and anyone further away. This can lead to a surgeon being able to perform a brainwashing in place of a brain surgery with nobody being the wiser, or implanting a different organ than the one agreed on, and so on.
Changelog

cl
add: Surgery steps are now shown in detail only to the surgeon and anyone standing adjacent to them; the patient and people watching from further away get a more vague/ambiguous description.
/cl
2019-06-18 11:44:58 +12:00
4dplanner
0e2d198a0e Stamcrit variable [READY] (#44361)
About The Pull Request

Splits stamcrit into its own variable checked by isparalyzed().
Why It's Good For The Game

Fixes a few bugs + inconsistencies, stamina damage now behaves more like real damage instead of stunning you for 10 seconds at a time.
Max stamina damage to the chest is changed to 120 so you can lock someone with small amounts of stam healing chems in stamcrit without counterintuitively shooting multiple limbs.
Changelog

cl
balance: max stamina damage to the chest is now 120.
fix: stamcrit and stuns now stack properly (stamcrit cleanse no longer cleanses other stuns)
fix: stam paralysis now ends instantly on healing stamina damage to below 100
fix: stamina damage will no longer spam exhaustion messages if you are stunimmune
tweak: stamcrit will still respect stun immunity, but not stun reduction (as it has no well-defined duration).
/cl
2019-06-17 13:35:44 +12:00
XDTM
30c9c46de5 Fix limb disabling not updating the limb (#44524)
Fixes items not dropping when limbs are brokes as well as the lack of
screaming, warning messages, and lack of no-hand icon on the disabled
limb.
2019-06-16 11:45:43 -07:00
Fel
99c915f6e4 Fixes every issue in the slimes milestone. (#44450)
* Fixes every open issue in the slimes milestone.

* Fixes The Fixes

* Fixes even more fixes.
2019-06-14 09:46:19 -04:00