Nerfs the shit out of lexorin jelly's oxygen damage(two-hit crit, holy shit)
Blobbernaut chem attack is baaaaaack, but less absolutely insane this time; blobbernauts with an overmind will do 70% of the normal chem damage(plus 4) and attack at a much slower rate than the blob itself can. (So a blobbernaut with the ripping tendrils overmind would do 15 brute and 10 stamina damage)
Full list of blobbernaut hits to kill/stun, assuming no attempts to escape, armor, or bio protection;
Ripping Tendrils; 7, stun at 5
Reactive Gelatin; 5 to 10, Average of 7(not 7.5)
Energized Fibers; 10, stun at 5
Boiling Oil; 6
Sorium; 7, assuming no nearby objects
Envenomed Filaments; 7, stun at 5
Lexorin Jelly(after nerf), 4
Cryogenic Liquid; 9, stun at 7
Dark Matter; 7, assuming no nearby objects
Hallucinogenic Nectar; 8
Pressurized Slime; 7, stun at 5
SLIP BLOB, DAMAGE IT AND IT SLIPS YOU
ENERGIZED BLOB, IT DOES STAMINA DAMAGE AND STUNS YOU EVENTUALLY ALSO DISABLERS HEAL IT
DRUG BLOB, IT MAKES YOUR INTERFACE TERRIBLE AND DOES TOXIN DAMAGE
REACTIVE BLOB, HIT IT WITH BRUTE DAMAGE GET HIT BACK
any blob can block atmos, the core and nodes now do so
blobs use two different procs for checking health and updating icons instead of one(there's probably a use for this)
the split consciousness verb now requires a node under your selector, instead of checking a global list of nodes and picking the newest(why?)
blobs can no longer take non-brute and burn damage types(I would make toxin do bonus damage but the crew can't apply it anyway)
This is a bug that seems to have been around since... a long time ago.
It also explains why blobs keep winning easily, seeing as their win
condition used to be SET to 2*350 instead of increasing by the the
amount used per blob.
This should hopefully make blob mode work as intended.
Stuff fixed: My sad attempt at fixing #13126.
The expand() proc for blobs is hopefully less intensive now (WHY did it
used to spawn a blob only to destroy it? That must've been such a
waste...).
Destroy code no longer needs to adjust for the expand() proc doing weird
things.
The antag panel will now show the correct variable used to determine
blob progress.
Renamed the variables I used so they're not so similar to each other.
blob_legit and blobs_legit was WAY to easy to mix up.
🆑 ktccd
Fixes bug #13126 and also a few other areas blobs shouldn't be win from
absorbing (centcom, SPACE etc).
Added a variable to areas.
Kept the original blobs list as a list of all blobs, in case that was
used somewhere else, and instead made a separate list for legit blobs.
/🆑
Blobs now get to know what their chemical does.
Added two more buttons, for readapt chemical and storage blob.
Added hotkey for removing blobs, alt-click.
Removing a blob gives you some points back.
Replaces typesof(path) - path with subtypesof(path) in obvious places. I was a bit conservative, there's probably a few more places that could use this.
obj/effect/effect is now renamed obj/effect/particle_effect for better usability.
datum/effect/system and /datum/effect/effect/system are now both /datum/effect_system.
Fixes a bug where wall mounted igniters (and other spark producing objects) didn't produce sparks sometimes.
Moved explosion_particles.dm into the effect_system folder, because it has effect_systems code.
Also smoke reaction now uses the TOUCH method instead of VAPOR, to differentiate smoke and foam. Mob without internals or gas masks also ingests reagents in the smoke.
Moved nanofrost smoke code to effects/effect_system/effects_smoke.dm
be_special and antag defines are no longer limited to 16 values (1 - 32768) by being changed from a bitfield to a list, an appropriate block of code exists to automatically update bitfield versions to the new list format. the list format allows us to have (functionally) infinite antag types.