* use titanium/plastitanium on unanchored reinforced fulltile window to make shuttle/plastitanium windows
* updates titanium/plastitanium sprites, adds titanium glass and plastitanium glass, fixes material amount in mineral glass
* Ore Stacking
* honk
* honk
* component memes
* honk2
* fix overlay off-by-1, sheet singular names
* Give the ores more descriptive names since sheets also have
* whoops debug memes
* atom editor memes
* fixes
* snowdin fix
* Fixes name not changing on manual record
* Autolathe material changes
* Allows renaming holodisks and copying records between disks.
* Adds looping
* copy pasta
* sure why not i guess it's not liked i tested it and it worked anyways or anything
🆑 coiax
add: Syndicate intelligence potions also grant an internal syndicate ID
card to the simple animal granted intelligence. This effectively means
that Cayenne can open the airlocks on the Infiltrator.
/🆑
And also maintenance I guess. But she could already smash her way
through doors.
Why? So Cayenne can open airlocks on the infiltrator. That's why.
🆑 XDTM
add: Added Regenerative Jelly, made with tricordrazine and slime jelly. It regenerates a bit faster, and won't harm jellypeople.
add: Added Energized Jelly, made with teslium and jelly. It works as an anti-stun chemical for slimepeople and speeds up luminescents' power cooldown, but non-jellypeople will just get shocked.
add: Added Pyroxadone, made with cryoxadone and slime jelly. It's basically inverse cryoxadone: it heals faster the hotter your body temperature is.
tweak: Cryoxadone no longer deals toxin damage to jellypeople.
tweak: Purple Slime Extracts no longer have their sugar->slime jelly reaction (obsolete with extract grinding), and instead have a blood->regen jelly reaction.
tweak: Purple Extract's major activation by Luminescents now give regenerative jelly instead of tricordrazine.
/🆑
Gives a better purpose to purple slimes, makes slime jelly something nice to give to chemistry for improved healing, and makes it so luminescents no longer kill themselves with cryoxadone and tricordrazine.
Also reduced the amount of frost oil given to luminescents in dark blue's activation, so they match cryoxadone's duration.
Fixes#34517Fixes#34539
Researching an upgrade disk from RnD allows you to upgrade the Express Supply Console (#33436).
Instead of normal drop pods, which crash then stick around until you dissassemble them, the console will call down new Bluespace Drop Pods, which will teleport out after crashing (and bring about a slightly smaller crash-explosion too!)
🆑 MrDoomBringer
add: The RnD department can now develop firmware upgrades to the Express Supply Console, unlocking advanced cargo drop pods!
/🆑
why: adds a little bit more techweb-integrated progression to cargo, also part of a compromise from #34374.
oh, also repaths bsdroppod.dm to supplypod.dm
* It works, but is it worth it?
* bitfield helpers take 1
* Would this work?
* remove dangling debug code
* rebase & fixes
* vv bitfield stuff, reading
* DNM oceans of shitcode DNM
* honk
* honk2
* plonk
* rebase & fix
I've always found grating that xenobiology had access to species they had no business working with, and slime magic can only explain so much. My idea is to separate those species into their respective departments/antags, instead of having them all into a centralized, cheap source.
Androids should be made by robotics through augmentation
Podpeople are a botany feature
Skeletons should be limited to liches or other magic antags
Zombies should stay limited to romerol
Golems are still available in adamantine slimes (and luminescents can morph into golems with them)
Shadowpeople still lack an official place, but luminescents can become shadowpeople with black cores
The basic races are mostly human and lizard, and there are mutation toxins for those in case someone wants their species back after bodyswapping/ling mutation sting/etc.
I don't believe byond supports proc dispatch by arguments, so it's just
calling the same proc on the relic instead of the global proc and
throwing away the extra arguments, this infinite loop will surely end
the server
* Refactor radio message broadcasting in a major way
Broacast_Message and everywhere that uses it, including radio talk_into
and the telecomms broadcaster and allinone. Other telecomms machinery
has had dead code excised.
Functionality should be roughly the same as before, but:
- CentCom headsets are only magic when using the CentCom frequency
- Syndicate frequency speech on the station no longer double-talks
- Talking directly into an intercom or radio which also has its
microphone on no longer double-talks.
* Split signal/vocal into subspace and subspace/vocal
* Move the message server and its computer to telecomms folder
* Slightly tidy the message server and computer
* Move subspace receiver logic to a proc on signal/subspace
* Repath the message server under machinery/telecomms
* Largely get PDA messages onto subspace proper
* Actually require the server for PDA messages
* Improve signal/subspace/New() and copy()
* Improve input handling on the message server
* Fix initialization and Z checks of allinones
* Add a constructor for virtualspeaker
* Fix radiation storms initializing a bad virtualspeaker
* Fix runtimes with machines talking into radios
* Finish making the message server a real telecomms machine
* Make CTF radios independent also
* Fix window IDs of message server PDA photos
* Replaces a bunch of manual OPENCONTAINER checks with helper procs
* Removes unnecessary vars
* Updates reagent bitflags, adds some new ones
* Replaces most of the is_open_container calls with more specific ones
* Puts new AMOUNT_VISIBLE flag to use
* Uses new helper procs in more objects
* Standardizes chemicals logging
* De-snowflakes two more checks
* Fixes
* Minor fixes and improvements
I had some time free, and noticed how awful the reagent grinder code was - it used huge static lists containing types and their associated reagents from grinding.
This is now split into two new vars on /obj/item - var/list/grind_results and var/list/juice_results, as well as two new helper procs, on_grind() and on_juice() to allow those to change based on conditions like plant potency. Such checks and the like have been moved to that. If any of these procs return -1, the operation is canceled.
I also fixed some of the recipes that didn't work. The reagent IDs for them didn't exist, leading me to believe that they weren't tested. I corrected that! (I've tested every single recipe in this PR, with the exception of a few juicing-related ones.)