Allow Developers to Mark Servers as Unpreferred for New Player Joins

As a Roblox developer, it is currently too hard to prevent first-time or solo players from being sent to servers that are in the middle of a round or other unsuitable game state, leading to a poor first-time experience.

Many Roblox games use round-based gameplay. For example, if a round lasts 10 minutes, and a new player joins during minute one, they may be stuck waiting 9 minutes just to start playing. That’s enough time for them to leave the game entirely. This hurts onboarding, retention, and overall game quality.

Currently, server selection is based mostly on (1) friends and (2) location. While this works well in many cases, it doesn’t give developers control over which servers are appropriate for receiving new players - especially in games where players are meant to start from the lobby or in sync with the round timer.

If this issue is addressed, it would improve my development experience because I could prevent new players from being dropped into servers that aren’t ready to receive them - keeping first impressions clean and improving engagement and retention.


Use Case Examples:

  • Round-Based Games: A 10-minute match should be able to temporarily mark its server as “unpreferred” while mid-round, so new users don’t join mid-match.
  • Cutscene/Narrative Games: Mid-cutscene joins confuse players and break immersion. We need a way to avoid this.
  • Tutorial-Dependent Games: Games that depend on players entering a lobby or tutorial first shouldn’t route users into mid-session servers.

Why Existing Workarounds Aren’t Good Enough:

  • Teleporting after Join: Too late. By the time we detect it and redirect them, they’ve already had a bad experience.
  • Custom Systems: Way too much overhead for most developers, especially solo/small teams. Not worth the cost.
  • Private Servers: Not practical for real-time, ongoing gameplay. Doesn’t scale and not designed for this purpose.

Important Clarification:

This setting would not block joins from friends or manual joins - it would simply deprioritize that server when Roblox chooses which server to place a new or solo player in.


Optional Implementation Note:

A simple flag like game.ServerLocked = true that the scripter can set dynamically would solve this. If all candidate servers are locked, then default behavior (like picking the first one) would still apply - no players are denied access, just steered toward better experiences when possible.

9 Likes

Isn’t this what the new matchmaking customization they are beta testing right now is?

2 Likes

Can we be 100% sure that it’s gonna be reliable? Roblox tends to release unfinished or flawed features as full launches, there’s no clue how long it’s gonna take for the feature to be released, and I feel like some direct overrides would still be better

Huh, interesting. I’ve always strongly believed that Roblox Matchmaking is like the Rivals and BedWars kind of matchmaking, but handled by Roblox through some scripting to ease it for us developers. But allowing us to have what’s custom-weighted as implied by the name and picking servers for us.

I’ve thought of something completely different by that name.

I’ve never thought they referred to the process of joining an experience and finding a server as matchmaking. I’ve always thought they meant a custom handler for looking for custom 2v2s in a competitive setting.

But I just looked into it, and apparently it is when you join an experience. Interesting.

Well, this is amazing and much more useful than anticipated, but probably won’t help me out in the future with 2v2s.

Yeah my feature request, seems to be already covered by this new feature. You just need a custom server attribute that specifies if there is an ongoing round.

Well, I wonder how many other devs like me think Custom Matchmaking refers to allowing custom 2v2s in a game, not how Roblox assigns servers.

1 Like