message: Do not evaluate timers if the server is shutting down
  This should fix issues with segfaults when the server is being
  terminated that sometimes occur because things like NPC path traversal
  keep running while the process is executing the signal handler.
diff: @@ -115,6 +115,10 @@ void CNShardServer::kill() {
  void CNShardServer::onStep() {
  time_t currTime = getTime();
  + // do not evaluate timers if the server is shutting down
  + if (!active)
  + return;
  +
  for (TimerEvent& event : Timers) {
  if (event.scheduledEvent == 0) {
  // event hasn't been queued yet, go ahead and do that
  