universal_understand = 1 now allows player-controlled mobs to understand what everybody is saying without necessarily allowing them to talk back intelligibly. Mice have universal_understand = 1 by default.
Since we're unable to reproduce this bug in a testing environment and I've already concluded this isn't a telescience bug then I am leaning more towards Xenoarchiology, specifically the artifacts.
This sanity check basically makes it where if there is an artifact on null terf or inside a container it won't process the effect.
If it's the teleport effect of artifacts that is causing this to happen and it's based on the item being in nullspace somehow then it should squash the bug.
Though the root of this is probably #4037 I cannot reproduce the runtime either.
So here goes, a stab in the dark.
I debugged telesci with a proc that fires the teleport but bypasses all sanity checks and sets target = locate(0,0,0) or null
neither case caused the teleport bugs we are seeing
UI will now update when clicking on stuffs
Added a sanity check to make sure the teleport location isn't 0 or null on all 3 coordinates.
Not sure if this will plug up the random teleporting bug but it can't hurt to have this in there.
Tanks placed in canisters, scanned with PDA or other analysis tool will set the manipulated_by variable to whoever did so.
The idea is that this person is aware what's in the tank and will act accordingly when you press the internals HUD icon.
If the user was the last person to manipulate the tank (or it's not been manipulated) then the user is smart about selecting the proper tank.
If the user was not the last person to manipulate the tank then he is only checking the pressure gauge to see what tank is fullest that matches his species breath_type
If that tank has nasties in it, welp he is going to get a breathful of nasties.
Before: If you had a tank on your back full of nice precious oxygen, and a tank of plasma in your hand and thought "I'll play it safe and turn on internals" and click the internals icon you would start sucking down plasma like you weren't really qualified to handle such things, how do you even get those two mixed up you big dummy! Code was hardcoded junk.
After: A check of what your species prefers to breath, you are an adult, I'm pretty sure you can remember if the tank on your back is oxygen or not, and you will turn on the fullest tank.
Code is now nolonger hardcoded junk, and is expandable by editing a couple of variables instead of hardcoding everything. Double Rainbow, All The Way Across The Sky!
Also coded in a check for "Carbon Dioxide" in the event a downstream server uses a race that breathes that or we move dionaea to breathing it in the future.