Skip to content

GameLift Matchmaking players back to original sessions

0

We have long running game worlds and players can be matched with others based on their similar attributes to join a shared world. As it's a long running persistent world, players leave and we remove them from the session to open up a slot for someone else. We're noticing that once a player leaves it appears they're never be matched back to the same game session. Their session shows as COMPLETED and I'm wondering if that's a signal used by the Matchmaker to avoid placing players back into sessions they've been removed from?

Does anyone have any insights on how to match players back into game sessions they've previously been part of?

asked a year ago102 views
2 Answers
0

The behavior you're observing where players are not being matched back to their original game sessions after leaving is likely related to how GameLift handles player sessions and matchmaking. When a player leaves a game session and their player session status is set to COMPLETED, this does indeed signal to the matchmaker that the player is no longer part of that session.

However, this doesn't necessarily mean that players can never be matched back to their previous game sessions. The key is in how you manage your matchmaking requests and game session data.

To match players back into game sessions they've previously been part of, you could implement the following approach:

  1. Use FlexMatch with custom matchmaking rules that take into account the player's previous game session.

  2. When a player requests to rejoin, include their previous game session ID as part of the matchmaking request data.

  3. Create custom matchmaking rules that prioritize placing players into their previous game sessions if those sessions still exist and have open slots.

  4. Implement match backfill functionality. This allows you to fill empty slots in existing game sessions, which could include slots left by players who have temporarily disconnected.

  5. For your long-running persistent worlds, consider using manual backfill requests. This gives you more control over when and how to fill empty slots in your game sessions.

  6. Maintain a record of player-to-game session associations outside of GameLift (e.g., in a database). This way, when a player attempts to rejoin, you can first check if their previous session still exists and has open slots before initiating a new matchmaking request.

Remember that while a player's session may show as COMPLETED, the game session itself can still be active and accept new players. The key is to manage this information in your game logic and use it to inform your matchmaking and backfill strategies.

By combining these approaches, you can create a system that allows players to rejoin their previous game sessions when appropriate, while still maintaining the flexibility to place them in new sessions when necessary.

Sources
FlexMatch matchmaking process - Amazon GameLift
Backfill existing games with FlexMatch - Amazon GameLift
Generate manual backfill requests from a backend service - Amazon GameLift

answered a year ago
EXPERT
reviewed a year ago
0

I have the same problem, and would like for a real person (not AI generated) to give more details, maybe an example on how to setup such custom matchmaking rule for this specific problem.

answered 9 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.