Matchmaking rules

From Gladiabots Wiki
Revision as of 08:43, 6 September 2017 by GFX47 (Talk | contribs) (Unranked)

Jump to: navigation, search

Ranked

The matchmaking for ranked multiplayer works like this:

  • Get the 100 "oldest" (creation time) available matches matching these conditions:
    • 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 (Definition: abs(your league score - opponents league score)) has to be lower than 200 points
  • Filter out (remove) matches matching these conditions:
    • The opponent has already been played in the last 5 minutes
  • If there are matches remaining after filtering:
    • Sort the remaining matches using these comparison rules:
      1. Prefer opponents in the closest league
      2. In case of equality: Prefer opponents using a different IP
      3. In case of equality: Prefer opponents never met or met the furthest in the past
        Opponents are considered equal, if they have been met in the last 10 minutes
      4. In case of equality: Prefer opponents with the lowest league score delta
        Opponents are considered equal, if the league score delta is ≤ 10
      5. In case of equality: Prefer oldest match (creation time)
    • Take the first match of the sorted list and join it
  • If there are no matches remaining after filtering:
    • Pick a random map
    • Pick a random left/right side
    • Create a new match using these parameters

Unranked

Here's how the matchmaking system works for unranked matches:

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

Map pool:

  • The seven wonders
  • Set your priorities
  • Meeting point
  • Circle of Death
  • Split team
  • Mind Game (Sneaky/RC)
  • Kingmaker (Erik)
  • Barred Spiral (radyjko8)
  • Flanking (LuBeNo)
  • Dominance (Revenge)
  • Lake Rushtown (Mcompany)

Unranked

Here's how the matchmaking system works for unranked matches:

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

Map pool:

  • The seven wonders
  • Set your priorities
  • Meeting point
  • Circle of Death
  • Split team
  • Mind Game (Sneaky/RC)
  • Kingmaker (Erik)
  • Barred Spiral (radyjko8)
  • Flanking (LuBeNo)
  • Dominance (Revenge)
  • Lake Rushtown (Mcompany)