Caveat: All humanized monkeys will still be human, I tried to fix this but thanks to what seems to be a race condition doing so made roughly 50% of all humans drop dead at the first life tick.
Updates the race list in game_options.txt. Our servers don't auto update config files, so this is just for anyone who makes a server going forward.
-only process roundstart spawners when they're needed
-use the same method to call atom_spawners for template loading.
Assuming user is adding to the appropriate process list, this will not
cause issues
This system is called just before initialize and does not use a world
loop, so it is safe to spawn and create new atoms.
Any atom can inherit this behaviour by overriding the
spawn_atom_to_world proc and spawning atoms there at roundstart
Make sure you register the atom in question to the list of spawner atoms
by doing SSobj.atom_spawners += src, and then remove when you are done
spawning objects
lighting removed from dewait because lag checks are better for it and lag checked subsystems that are also dwait systems are given lower priority, we don't want that to happen to lighting.
This setup allows subsystems to pause themselves until next mc fire if they are about to go over a tick, and resume on the next mc tick
It also makes it so we prioritize running subsystems we skipped because there wasn't enough time in the current tick to run them based on their avg tick usage. (as well as subsystems paused mid way thru)
Adds a macro for adding this to non-mc procs. just drop it in the loop. There is a define version as well for if checks if you want to know if you just slept to avoid lag.
This is all inside #if DM_VERSION defines, so once i test that 509 still works to compile/test this should be good to merge
* Fixes SNPCs still healing people
* SNPCs now use similar speech handling to Poly, and will mimic phrases in addition to their usual speech
* SNPCs can now be spawned as traitors, and given a special role.
* Greytide SNPCs now wear assistant outfits
* Certain jobs are now restricted to their area (can be toggled with restrictedJob)
* SNPCs start with a minor variation in stats
* Bartender SNPCs should now appropriately serve people
* Chef SNPC workflow redone, they will now prioritise preparing food over making it, and should serve more food to tables
* Third attempt at fixing infighting
* SNPCs should no longer repeatedly stun a target
* Friendly SNPCs now no longer have a combat module, and they are the station's faction
* NPCPool will routinely trim orders from it, reducing the amount of order ping-pong