It came to our attention today that a Doctor at one of the clinics was not responding to requests for healing. This was because the doctor was not in their clinic! They were in the waiting room. This was because they were puppeted and left in the wrong room. This could also have happened if a player grabbed the NPC and dragged them away into another room and left them there when a GM wasn't paying attention.
I've put together some code that will automatically return service ncps (like shopkeepers, bartenders, and doctors) to their proper place if they aren't otherwise engaged (with being dead, or puppeted).
This should keep things running a bit smoother and reduce the need for GMs to put NPCs back if there is combat, or other shenanigans.