Difference between revisions of "Matchmaking rules"
From Gladiabots Wiki
Line 11: | Line 11: | ||
<span style="color: red">Rules in red only apply to ranked matches</span> | <span style="color: red">Rules in red only apply to ranked matches</span> | ||
+ | |||
<span style="color: blue">Rules in blue only apply to unranked matches</span> | <span style="color: blue">Rules in blue only apply to unranked matches</span> | ||
# A new ghost is created with your ghost composition and AIs, your current league score (elo) and your XP level | # A new ghost is created with your ghost composition and AIs, your current league score (elo) and your XP level | ||
− | # The system lists the 200 most recent ghosts with a league score between <your score -400> and <your score + 400> (it only keep the most recent ghost for each player) | + | # The system lists the 200 most recent ghosts <span style="color: red">with a league score between <your score -400> and <your score + 400></span> (it only keep the most recent ghost for each player) |
# Then it removes from this list the ghosts of players you already met during the last 30 minutes | # Then it removes from this list the ghosts of players you already met during the last 30 minutes | ||
# At this point, there are 2 possible cases: | # At this point, there are 2 possible cases: | ||
Line 21: | Line 22: | ||
#** Sort the list using these rules (ordered by priority): | #** Sort the list using these rules (ordered by priority): | ||
#**# Ghosts from pending matches first | #**# Ghosts from pending matches first | ||
− | #**# Ghosts | + | #**# <span style="color: red">Ghosts from the closest league first</span> |
+ | #**# <span style="color: blue">Ghosts with closest XP level first</span> | ||
#**# Ghosts of players using a different IP first (anti-cheat measure) | #**# Ghosts of players using a different IP first (anti-cheat measure) | ||
#**# Ghosts of players met the furthest in the past first (never met = the furthest possible) | #**# Ghosts of players met the furthest in the past first (never met = the furthest possible) | ||
− | #**# Ghosts with the closest league score first | + | #**# <span style="color: red">Ghosts with the closest league score first</span> |
#**# Most recent ghosts first | #**# Most recent ghosts first | ||
#** Keep the 10 first of the sorted list (10 "best" ghosts) | #** Keep the 10 first of the sorted list (10 "best" ghosts) |
Revision as of 00:11, 10 June 2018
Ghosts
Every time you deploy a team, it becomes a "ghost" that will be used by the matchmaking system. When a match result is known, the league score delta is applied to both the participating ghosts and the player(s) that manually created/joined the match. This way, ghosts score evolves depending on the opponents they meet. The more a ghost "plays", the more accurate its score is.
Matchmaking
Here's what happens when you start a new game:
Rules in red only apply to ranked matches
Rules in blue only apply to unranked matches
- A new ghost is created with your ghost composition and AIs, your current league score (elo) and your XP level
- The system lists the 200 most recent ghosts with a league score between <your score -400> and <your score + 400> (it only keep the most recent ghost for each player)
- Then it removes from this list the ghosts of players you already met during the last 30 minutes
- At this point, there are 2 possible cases:
- Case 1 = the ghost list is empty, your match is pending until someone else joins it
- Case 2 = there are some ghosts remaining:
- Sort the list using these rules (ordered by priority):
- Ghosts from pending matches first
- Ghosts from the closest league first
- Ghosts with closest XP level first
- Ghosts of players using a different IP first (anti-cheat measure)
- Ghosts of players met the furthest in the past first (never met = the furthest possible)
- Ghosts with the closest league score first
- Most recent ghosts first
- Keep the 10 first of the sorted list (10 "best" ghosts)
- Then pick one of them randomly and join it
- Sort the list using these rules (ordered by priority):
Example
Here's an example of the ghost system in action: (asuming the ghost list is initialy empty, all players are in the same league with a similar league score and a different IPs)
- T = 0h00mn > P1 deploys G1
- no ghost available, match is pending
- ghost list: G1
- T = 0h01mn > P2 deploys G2
- matched against G1 (P1 will see the "new" flag on the match)
- ghost list: G1, G2
- T = 0h02mn > P3 deploys G3
- matched against G2 (most recent ghost)
- ghost list: G1, G2, G3
- T = 0h03mn > P3 deploys G3b
- matched against G1 (most recent ghost not already met in the last 30mn)
- ghost list: G1, G2, G3, G3b
- T = 0h04mn > P3 deploys G3c
- no ghost available (fought all the available ghosts in the last 30mn), match pending
- ghost list: G1, G2, G3, G3b, G3c
- T = 0h05mn > P1 deploys G1b
- matched against G3c (most recent ghost)
- ghost list: G1, G2, G3, G3b, G3c, G1b
- T = 0h06mn > P1 deploys G1c
- matched against G2 (most recent ghost not already met in the last 30mn)
- ghost list: G1, G2, G3, G3b, G3c, G1b, G1c
...
- T = 0h40mn > P1 deploys G1d
- matched against G3c (most recent ghost, met more than 30mn ago)
- ghost list: G1, G2, G3, G3b, G3c, G1b, G1c, G1d