diff --git a/server/channelserver/handlers_stage.go b/server/channelserver/handlers_stage.go index e3196bc44..8a1abbc35 100644 --- a/server/channelserver/handlers_stage.go +++ b/server/channelserver/handlers_stage.go @@ -150,6 +150,9 @@ func removeSessionFromStage(s *Session) { func isStageFull(s *Session, StageID string) bool { if stage, exists := s.server.stages[StageID]; exists { + if _, exists := stage.reservedClientSlots[s.charID]; exists { + return false + } return len(stage.reservedClientSlots)+len(stage.clients) >= int(stage.maxPlayers) } return false