Difference between revisions of "Matchmaking rules"

From Gladiabots Wiki
Jump to: navigation, search
Line 1: Line 1:
 
== Matchmaking Basics ==
 
== Matchmaking Basics ==
*Maps are selected randomly, depending on league.  
+
*Maps are selected randomly from a map pool; selection depends on league.  
 
*Opponent's league has to be between your league - 1 and your league + 1
 
*Opponent's league has to be between your league - 1 and your league + 1
 
*At the end of 5 minutes, the player with more bots remaining is declared the winner.  
 
*At the end of 5 minutes, the player with more bots remaining is declared the winner.  

Revision as of 19:25, 6 October 2017

Matchmaking Basics

  • Maps are selected randomly from a map pool; selection depends on league.
  • Opponent's league has to be between your league - 1 and your league + 1
  • At the end of 5 minutes, the player with more bots remaining is declared the winner.
  • If all of a players bots are destroyed prior to the time limit, the match will immediately end, and the person with the remaining bots will be declared the winner.

Ranked

The matchmaking system for ranked games in career works like this:

  1. Determine the eligible map pool:
    • Take the player's league map pool
    • Compute X as the half of the map pool size
    • Get the X last played maps
    • Remove those maps from the map pool
  2. Get the 100 oldest available ranked matches matching these conditions:
    • Map is in the eligible map pool
    • Opponent's league has to be between your league - 1 and your league + 1
    • If opponent's league is different than yours: league score delta has to be lower than 100 points
  3. Remove matches matching these conditions:
    • Opponent has already been played in the last 5 minutes
  4. At this point, there are 2 possible cases:
    • There are some matches remaining:
      • Sort the remaining matches using these comparison rules:
        1. Opponent with the closest league first
        2. In case of equality: opponent using a different IP first
        3. In case of equality: opponent never met or met the furthest in the past first (considered equal under a 10 minutes delta)
        4. In case of equality: opponent with the closest league score first (considered equal under a 10 points delta)
        5. In case of equality: oldest match first
      • Take the first match of the sorted list and join it
    • There's no match remaining:
      1. Pick a random map from the eligible map pool
      2. Pick a random left/right side
      3. Create a new match using these parameters

Unranked

The matchmaking system for unranked games in career works like this:

  1. Determine the eligible map pool:
    • Take the unranked map pool
    • Compute X as the half of the map pool size
    • Get the X last played maps
    • Remove those maps from the eligible map pool
  2. Get the 100 oldest available unranked matches matching these conditions:
    • Map is in the eligible map pool
  3. Remove matches matching these conditions:
    • Opponent has already been played in the last 60 seconds
  4. At this point, there are 2 possible cases:
    • There are some matches remaining:
      • Sort the remaining matches using these comparison rules:
        1. Opponent with the closest XP level first
        2. In case of equality: opponent using a different IP first
        3. In case of equality: opponent never met or met the furthest in the past first (considered equal under a 10 minutes delta)
        4. In case of equality: oldest match first
      • Take the first match of the sorted list and join it
    • There's no match remaining:
      1. Pick a random map from the eligible map pool
      2. Pick a random left/right side
      3. Create a new match using these parameters