Copied from my discord.
We’re facing a dilemma:
On one hand, we want to split large rooms into smaller ones so that big lobbies don’t absorb all players and prevent other rooms from filling up.
On the other hand, we want players to be able to join the rooms they actually want to play in, without being restricted by hard player limits.
The idea is to remove strict player caps and instead use a soft, dynamic limit:
Each room has an optimal player count — not a hard cap, but a recommended size.
If a player tries to join a room that has reached this optimal number, they enter a waiting queue that gradually fills a “lobby expansion bar.”
Once the bar is filled, the room’s player limit increases by +1, allowing the player to join.
The more the current player count exceeds the optimal size, the longer it takes to fill the bar — acting as a soft penalty.
If the player count drops, the limit slowly decreases back toward the optimal value.
This system:
Lets players join rooms they’re interested in.
Encourages better distribution without enforcing it.
Prevents one popular room from stagnating the rest.
Players can still push limits, but they’ll need to wait a bit — which is a fair trade-off if they’re truly committed to that specific room.