diff --git a/evennia/server/server.py b/evennia/server/server.py index e80f9eaad3..42f1529a6a 100644 --- a/evennia/server/server.py +++ b/evennia/server/server.py @@ -280,7 +280,7 @@ class Evennia(object): MONITOR_HANDLER.restore() from evennia.scripts.tickerhandler import TICKER_HANDLER - TICKER_HANDLER.restore() + TICKER_HANDLER.restore(mode in ('True', 'reload')) # call correct server hook based on start file value if mode in ('True', 'reload'): @@ -437,6 +437,11 @@ class Evennia(object): from evennia.objects.models import ObjectDB ObjectDB.objects.clear_all_sessids() + # Remove non-persistent scripts + from evennia.scripts.models import ScriptDB + for script in ScriptDB.objects.filter(db_persistent=False): + script.stop() + if GUEST_ENABLED: for guest in PlayerDB.objects.all().filter(db_typeclass_path=settings.BASE_GUEST_TYPECLASS): for character in guest.db._playable_characters: