Adds toolspeed var, which is a multiplier on how 'fast' the tool works. 0.5 means it goes twice as fast.
Adds usesound var, which determines what sound is used when a tool is being used.
Changes a lot of code to use those two vars instead.
Adds 'ayyy' tools, which are ported from /tg/'s abductor gamemode. They're currently admin only but I might make them obtainable by xenoarch later.
Adds powertools, also from /tg/. CE starts with them in a new toolbelt that spawns in their locker, ported from (you guessed it) /tg/.
Changes welder sprites to look nicer, ported yet again from /tg/. Modified the blue welder slightly so it can be the electric welder sprite.
Adds various sounds from /tg/, for tools and welders.
* Creating new objects is cheap, in fact comparable to the cost of getting it out of the pool, so it doesn't help there.
* Placing items in the pool is far more expensive than letting them garbage collect due to the resetting of vars and such.
The short naming of central command has been really inconsistent across
the game's files. This has always annoyed the shit out of me.
CentComm and Centcomm and Centcom are now all CentCom, specifically with
that capitalization. Why one M instead of two M's? Because Comm with two
'M's = Communications. Hence, Telecomms, NOT Telecoms. Telecoms is
incorrect. CentCom was also chosen because CentCom with one M and this
casing is most found throughout the game's files.
Speaking of Telecomms, I corrected one instance in the game where it's
Telecom. Like I said, this is not correct. There was only one
inconsistency.
Likewise, Nanotrasen has been changed to NanoTrasen. Nanotrasen only
appears 20 times, where NanoTrasen appears 62. NanoTrasen is clearly the
preferred, correct naming.
This updates synthetic limbs to make more sense. It tweaks what you can 'see' when examining people. If someone has a robotic leg but is wearing pants, how would you know that? If someone has a burn on their arm, but their jumpsuit sleeves down, how would you know that? If someone has a replacement Vey-Med arm, how would you know it's robotic? It also treats examining FBPs more 'realistically'. If they are covered except for their head, it doesn't matter if their whole body is Bishop robotic. If their head is Vey-Med and that's all you can see, they just look human to you.
So FBP manufacturers can have a 'lifelike' var set. Vey-Med has this. This makes the limbs not show obviously non-organic damage (dents) until they are more damaged and start showing wires/metal. Attempts to treat these limbs with medical stuff results in a different message. Manufacturers can also set individual blood colors. Vey-Med blood is now white, ala Bishop from Aliens.
isSynthetic proc = Is the mob actually synthetic, as in, mechanically for breathing/tox purposes?
looksSynthetic proc = Does the mob display outward signs of being synthetic? Based on head and torso and what's revealed.
Other fixes:
You can no longer attach limbs to non-existent parents. You can't give somone a foot on a leg that doesn't exist.
You can't attach fleshy limbs to robotic ones. BODIES DO NOT WORK THAT WAY.
'Synthetic' var on humans points to manufacturer if you need to grab it quickly. isSynthetic returns this as well.
Robolimb count (and thus overheating speed) updates whenever your limbs change.
Lifelike FBPs do not show a 'system offline glyph'.
isSynthetic and looksSynthetic moved to human_helpers becasue they were defined on human in mob_helpers
Nanopaste correctly repairs limbs using the new procs (both burn and brute, making it an expensive welder+wire)
More tweaks to IPC fixes.
Merge resolution/compile fixes.
Further work on properly integrating, updating and fixing prosthetic options.
Repathed internal organs to organ/internal.
More work on full synthetics, changelings, overheating.
Working on getting organs to qdel properly and spawn properly when robotized.
Finalized some overheating values, added remaining prosthetic icons.
Finalizing the testing version of the full prosthetic bodies branch.
Added suit cyclers to the autolathe and map.
Fixing runtime errors.
Fixing errors.
Changelog.
Replacing limb and organ strings with constants.
Prevented brainless species from becoming full cyborgs.
Fixed issues with brain/MMIs renaming themselves inappropriately.
Various fixes and oversights.
Instead of several minutes long spawn, blood is added to processing for drying out now. Processing proc itself is just compraing two vars so shouldn't be as bad.
This way it doesn't get referenced by unnamed proc and can be qdel'd properly.
General:
Bots are now /mob/living/bot. They support player control fully. Just in
case an admin feels like letting a ghost take control of beepsky or
something.
Since they are bots, spooders and whatnot will attack them.
They now don't need an open panel to be emagged.
Spawns replaced with do_after, meaning that they will stop
injecting/cleaning/repairing/arresting if pulled away.
Medbot:
Emagger is added to ignore list.
Will now inject spaceacilin regardeless of disease type and level.
Previously: only if disease was past stage 1 or airbone.
Cleanbot:
Patrolling rewritten. They now find a closest beacon, and go to the NEXT
beacon after the closest one.
They will not wiggle out when pulled.
They will now ignore (for a while) the gibs they make if odd button is
pressed.
They will now freely claim cleanables. Previously, they would not target
ones targeted by other bots.
Floorbot:
This was a helluva buggy one.
They will now build bridges (but still won't do random repairs) in space
area.
They will now build bridges even if the tile directly next to them in
that direction is tiled.
They will now ignore for a while a tile they can't reach. This is to
stop them from hopelessly targeting tiles under grilles for upgrades and
getting stuck.
They will now slowly (200 ticks for a tile) build new tiles on their
own.
They will now preserve tile's icon when repairing it like a player
would.
They will now place first rods, then tile when fixing space breaches.
Rod costs two tiles.
When emagged, they will first always tear off the tile, then will (over
triple the normal amount of time) breach the tile to space. There are
noticeable warnings for both actions.
Secbot:
Will no longer run away to patrol when panel is open.
Now deals stamina damage instead of instastuns.
Small delay between approaching the target and stunning them.
Laserbots axed.
Removed their weird EMP act.
Will no longer stun lying people, just cuff.
They will also demand surrenderring (lying down) before smacking you. If
target moves, or 5 seconds pass, it will attack.
Farmbot:
It's alive!
It has settings to: water trays, refill its own water, uproot weeds, add
nutriment (ammonia, internal synthesizer), collect produce, and remove
dead plants.
Implements liquid fuel fires using the liquid fuel cleanable decal objects.
Rewrites zburn to be more sane, replaces convoluted calculations with straightforward reaction limit.
Fixes issue with liquid fuel spreading caused by thee object being deleted.
Prevents zones from being repeatedly added to the active fire zones list, and processed repeatedly.