diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 09598f08ec..4e24a8e270 100644 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -159,7 +159,7 @@ var/datum/subsystem/ticker/ticker if(!can_continue) qdel(mode) mode = null - world << "Error setting up [master_mode]. Reverting to pre-game lobby." + world << "Error setting up [master_mode]. It's likely that there are no available antagonists for the selected mode. Reverting to pre-game lobby." SSjob.ResetOccupations() return 0 else diff --git a/code/controllers/subsystem/voting.dm b/code/controllers/subsystem/voting.dm index a663f44bd8..94ce788774 100644 --- a/code/controllers/subsystem/voting.dm +++ b/code/controllers/subsystem/voting.dm @@ -122,12 +122,12 @@ var/datum/subsystem/vote/SSvote else master_mode = . if("roundtype") - if (ticker && ticker.mode) - return message_admins("A vote has tried to change the gamemode, but the game has already started. Aborting.") - master_mode = . - log_admin("Mode has been voted for and switched to: [master_mode].") - world << "The mode is now: [master_mode]" - world.save_mode(master_mode) + if(ticker && ticker.mode) + message_admins("A vote has tried to change the gamemode, but the game has already started. Aborting.") + else if(master_mode != .) + world.save_mode(.) + master_mode = . + world << "The mode is now: [master_mode]" if(restart) var/active_admins = 0 for(var/client/C in admins)