Discussions of game matchmaking often begin with a single question: is it fair?
For a commercial company responsible for publishing, distributing, and operating a game over the long term, however, the more fundamental question may not be fairness. It may be: how can the game continue generating the greatest commercial value?
This does not mean fairness is unimportant. Quite the opposite: fairness may be extremely important:not because fairness is necessarily an end in itself, but because it sustains trust, retention, willingness to pay, competitive credibility, and the life of the game.
In other words, fairness may not be the system’s ultimate objective. It may be infrastructure required for profit maximization.
Starting from that assumption, TrueSkill, EOMM, PCA, GNNs, information entropy, survival analysis, and the other methods discussed here cease to look like ten separate, mysterious mechanisms. They can be disassembled and recombined into a Bayesian machine that continuously learns players, predicts them, allocates experiences, and corrects itself through feedback.
Ten Concepts in One Minute
The table below gives only the simplified definitions needed for the main essay. Formal equations, variable definitions, and limits of applicability appear together in the appendix.
| Concept | One-sentence definition | Possible role in the system |
|---|---|---|
| TrueSkill | Estimates both a player’s skill and the system’s confidence in that estimate | Updates a hidden skill state |
| EOMM | Predicts not only who is evenly matched, but which pairing is more likely to keep players engaged | Defines a retention objective |
| Dynamic K | Dynamically changes how strongly one match affects a rating | Controls hidden rating or progression speed |
| PCA | Compresses many correlated behavioral indicators into a few dimensions | Constructs player profiles |
| GNN | Learns network representations from parties, friendships, matches, and other relationships | Estimates synergy, social value, and anomalous networks |
| Handicap Penalty | Introduces a state-dependent bias into win-probability calculations | Adjusts predicted difficulty; not a universally recognized standard algorithm name |
| Information Entropy | Measures how difficult the result is to predict | Measures suspense or closeness to a 50-50 contest |
| Survival Analysis | Estimates when a player may stop playing in the future | Calculates churn risk |
| Minimax | Finds the most favorable strategy under the worst-case scenario | Supports drafting, anti-cheat, or robust control |
| MIQP / Combinatorial Optimization | Selects concrete teams under constraints such as headcount, role, and latency | Produces the final ten-player combination |
These ten concepts do not occupy the same layer. Some identify players, some predict the future, some define the system’s objective, and others turn that objective into an actual match.
Profit Maximization Is the Top-Level Assumption
If the operator’s first objective is long-term commercial profit, the top-level objective can be abstracted as:
Game revenue, in turn, depends roughly on:
The operator needs more active players, longer lifetimes, higher conversion to payment, and a more stable social ecosystem.
Fairness does not disappear from this model. Severe unfairness produces frustration, complaints, and churn; it also damages competitive credibility. Once players stop believing a match deserves serious participation, both their time investment and willingness to pay decline.
A profit-optimal system will therefore not generate unlimited unfairness. It is more likely to search for a commercial equilibrium:
Fairness is maintained at a level sufficient to preserve trust and participation, while the system remains free:inside that boundary:to optimize retention, spending, and lifetime value.
A Match Is First a Measurement
Before a system can intervene in a player’s experience, it must first know the player.
It cannot simply store one Elo number for each person. The same player’s effective ability may differ radically across roles, heroes, parties, and mental states.
What the system may actually maintain is a hidden state:
This state might include:
- skill level \(s\);
- the system’s uncertainty about its skill estimate \(\sigma\);
- churn risk \(c\);
- propensity for future spending \(m\);
- sensitivity to winning, losing, and difficulty \(e\);
- social-network value \(g\);
- fatigue, frustration, or recent condition \(f\).
None of these states can be observed directly. The system sees wins and losses, KDA, economy, team-fight participation, hero, role, queue time, whether the player continues, whether they party, whether they report others, and whether they pay.
It can therefore maintain only a probabilistic belief:
Before a match, this distribution is the system’s current prior. Afterward, the result and new behavior become evidence from which the posterior is updated. That posterior becomes the prior for the next match.
TrueSkill updates skill and uncertainty. PCA compresses behavioral features. GNNs incorporate parties, friendships, and match relationships into the player profile. Survival analysis estimates the risk that a player will leave in the future.
Every match thus has two natures: for the player, it is a competitive activity; for the system, it is a new measurement experiment.
The System Produces a “Computable Player”
Once skill, churn, spending, and social relationships have all been converted into probabilistic variables, the player becomes a state vector that can enter an objective function.
The system no longer asks only:
How strong is this player?
It can also ask:
How close are they to leaving right now?
How would a loss, a win, or receiving their full preferred role change their behavior?
How much more playtime and spending might they contribute?
If they leave, will regular teammates and friends leave with them?
Would a matchmaking intervention actually change anything?
This is where Bayesian inference and commercial optimization meet.
Bayesian updating has no commercial direction of its own. It only makes the system believe some things more accurately. What determines how the system treats a player is the reward function into which those posteriors are inserted.
From Knowing Players to Pricing Them
For a candidate match \(M\), the system can calculate each player’s future value:
This raises three important questions.
First, the system cares about future lifetime value, not money the player has already spent. Past revenue has already occurred. What affects the next decision is the amount of future activity, relationships, and revenue that may still be generated.
Second, knowing that a player may churn is not enough. The system must also know whether changing the next match can actually save them. A high-value player who will stay regardless of outcome may not be worth spending scarce protective resources on.
Third, individual value is accompanied by network value. When a central player leaves, regular teammates, friends, or guildmates may also become less active. The relationship structure estimated by a GNN can expand personal value into social-network value.
Protection priority may therefore look more like:
That is:
Future value × sensitivity to experience × whether the system can actually change the player’s behavior.
This is considerably more complex than “paying players are always rewarded.”
A player who has spent heavily but is extremely stable may need no protection. A player who has not yet paid, but is near a first conversion and close to churning, may have greater marginal value from protection.
A profit-driven system does not necessarily reward the person who paid most in the past. It rewards the person most worth intervening in for the future.
EOMM Is No Longer a Supporting Mechanism
In a fairness-first model, the system first finds matches close to 50-50, then chooses from among those fair candidates the one most favorable to retention.
In a profit-first model, EOMM can move closer to the top-level objective:
Traditional matchmaking asks:
Which team combination minimizes the skill gap?
Engagement optimization asks:
Which combination produces the greatest future activity and value?
Sometimes the two questions yield the same answer. Sometimes they do not.
If fairness is a hard constraint, EOMM can choose only inside an allowed fairness range. If fairness is merely a soft cost, the system may accept a larger imbalance whenever the expected gain in retention or revenue is high enough.
This is the central dividing line in a profit-first framework:
When the fairness weight \(\lambda_f\) is extremely large, fairness approaches an inviolable boundary. When it is smaller, other gains can offset it.
Fairness Has Not Disappeared; It Has Been Priced
In a profit-first model, fairness can occupy four different positions.
The first is instrumental fairness. The system corrects unfairness only when it causes churn or lower revenue.
The second is statistical fairness. The system keeps aggregate win rates and rank distributions normal without guaranteeing identical treatment for every individual at every moment.
The third is fairness as a guardrail. The system may optimize retention and value, but predicted win probability, role quality, and teammate disparity must remain inside defined boundaries.
The fourth is fairness as a right. Certain variables:for example, payment status:are explicitly prohibited from entering competitive matchmaking; certain differential treatments cannot be used even when they increase profit.
Profit maximization naturally tends toward the first three. The fourth requires institutions, audits, regulation, or an explicit product commitment.
To judge whether a game is fair, therefore, it is not enough to ask whether aggregate win rates are near 50%. We must also ask:
- With skill and queue conditions held equal, does player value alter match quality?
- Do payment status or churn risk change teammates and opponents?
- Which variables are allowed into the objective function?
- Can commercial gains override fairness constraints?
- Are adverse experiences persistently concentrated among particular groups?
The System Never Needs to Write “Punish the Player”
A profit-first system does not need an explicit rule saying:
If the player is stable, give them worse teammates.
Differential treatment can emerge naturally from aggregate optimization.
Let \(d_i\) denote the adverse difficulty borne by player \(i\), and let \(q_i(d_i)\) denote that player’s retention probability. Because relative advantage in a competitive match cannot be given to everyone at once, a simplified constraint is:
The system maximizes:
The Lagrangian condition gives:
This means the system will tend to assign difficult experiences to people for whom the marginal loss is smaller:
- players with an established habit;
- players less sensitive to wins and losses;
- players classified as enjoying challenge;
- players unlikely to leave after short-term frustration;
- players with lower marginal future value.
More favorable experiences may instead be prioritized for:
- players at high risk of churn who can still be recovered;
- players near a first-payment or return-to-game threshold;
- central nodes in the social network;
- high-value players sensitive to positive experiences;
- new players, or players about whom the system is highly uncertain.
The “punishment” here is not revenge. It is the system treating some players as buffers capable of absorbing difficult experiences.
Nor must this form permanent classes. Bayesian posteriors keep changing. Today’s returning player may need protection; a few days later, the same person may become a stable player deemed able to bear greater difficulty.
The System Controls a Probability Environment, Not the Result
A matchmaking system cannot guarantee that a player wins the next game. Within the available candidate pool, however, it can alter win probability, role completeness, teammate stability, and opponent strength.
A profit-first system may search for a different target difficulty for each player:
For a beginner or someone close to churning, the optimal win probability may be above 50%. For someone who enjoys challenge and is highly stable, it may be below 50%.
Information entropy is not a supreme principle of fairness here; it is a tool for measuring suspense. The system may not seek maximum entropy. It may instead search for a difficulty range that neither makes the player despair nor lets them lose their sense of purpose too quickly.
A handicap bias can translate player state into an adjustment to predicted difficulty. Dynamic K can control how quickly the system accepts new match evidence and may also participate in the progression rhythm between hidden MMR and visible rank.
If:
the system can use hidden rating to determine actual match difficulty while using stars, points, promotion gates, and seasonal resets to manage the feeling of progress.
From a profit perspective, the objective may not be to move a player to their true rank as fast as possible. It may be to keep progress from being so fast that the goal disappears, or so slow that the player leaves.
What Is Ultimately Allocated Is the Experience of the Whole Population
A five-on-five match cannot give all ten players a higher win probability at the same time.
The system therefore does not ultimately solve for the maximum experience of one individual. It allocates experience across the whole population:
MIQP, graph matching, network flow, or heuristic search can generate concrete teams under constraints such as player count, role, party, server, and latency.
Minimax can act as a robustness layer: when skill, churn, and spending models may be wrong, the system avoids worst-case mass churn, reputational damage, and regulatory risk.
As long as the objective aggregates value, experience can be transferred between individuals:
Protecting some people means that others bear a relative cost.
The true subject of scrutiny, then, is not whether the algorithm found a mathematical optimum, but whose interests its objective represents.
A Bayesian System Is Reshaped by Its Own Policy
The system’s matchmaking actions change the data used for the next round of training.
If high-churn-risk players are always protected, the system rarely observes whether they would actually leave after an ordinary match.
If stable players consistently receive harder combinations, the system may reinterpret the lower win rates and frustration caused by its own policy as evidence that these players can continue tolerating difficulty.
If certain high-value players receive different experiences, the policy itself can strengthen correlations among spending, retention, and match outcomes.
The loop may become:
The system believes a class of players deserves protection
→ gives them more favorable experiences
→ observes higher retention and spending
→ attributes the result to their high value
→ protects them further
Correspondingly:
The system believes a class of players is stable enough
→ makes them bear more difficult experiences
→ they do not leave immediately
→ the system confirms that they can bear more
Ordinary Bayesian updating cannot automatically solve this problem, because the data is not generated naturally. It has been selected by the preceding policy.
To know whether a matchmaking intervention truly increases retention or spending, the system must estimate a causal effect:
Otherwise, the system may simply keep confirming itself inside its own feedback loop.
How Far the Public Evidence Goes
Tencent’s 2025 annual results report RMB 164.2 billion in domestic game revenue and list Honor of Kings as an evergreen game. Tencent’s definition of an evergreen game includes both large-scale daily active users and annual gross receipts. This shows that long-term activity and revenue are public core business dimensions, but it cannot by itself prove any specific matchmaking mechanism. Tencent 2025 Annual Results
A Tencent patent on user-retention-probability prediction proposes predicting an individual user’s future probability of retention in order to guide business operations. This establishes retention prediction as a real technical and operational object, but does not prove that it necessarily enters real-time matchmaking. CN108765010B
A Tencent patent on MOBA matchmaking describes offline and real-time features, win-probability prediction, candidate combinations, protection for players on losing streaks, and controlling protected players’ win probabilities within a required interval. It shows that differentiated protection has at least been a publicly filed technical direction. CN109453524B
Another Tencent patent discusses matching beginners with simple bots to reduce frustration-driven exits, providing challenge for expert players, and allowing players to accumulate behavioral resources to choose between matchmaking strategies such as “want to win” and “want a challenge.” This indicates that matchmaking difficulty can be designed as an adjustable experiential resource. HK40052285B
These materials can support the following claims:
- long-term game activity and revenue have direct commercial value;
- Tencent has the technical capacity to predict retention, win probability, and player state;
- Tencent has researched losing-streak protection and personalized difficulty adjustment;
- matchmaking cannot be understood as a single Elo number.
They cannot directly prove that:
- all ten algorithms listed in the video have been deployed;
- payment status directly enters real-time Honor of Kings matchmaking;
- the system has a universal winning-streak penalty;
- any specific losing streak was caused by profit optimization.
Conclusion: Who Is the System Really Optimizing?
Once the ten concepts are disassembled, a complete commercial-control loop becomes visible:
Observe players
→ update player posteriors
→ predict retention, spending, and network value
→ calculate the long-term return of different matches
→ allocate the next experience
→ train the system again on player reactions
TrueSkill, PCA, GNNs, and survival analysis turn players into estimable states. EOMM and lifetime-value models price different futures. Information entropy, handicap adjustments, and Dynamic K regulate difficulty, suspense, and progression. MIQP and robust optimization allocate a limited supply of favorable and unfavorable experiences to actual matches.
Together, they form not a simple win-loss machine, but a continuously learning commercial Bayesian machine.
Within this framework, fairness has not disappeared. It has been repriced.
It may be infrastructure required for trust, retention, and the brand. It may also be a cost that can be partially traded away whenever the expected return is high enough.
The central question is therefore no longer:
Has the system fixed my win rate at 50%?
It is:
Which judgments about me did the system put into its posterior?
How does it calculate my future value and elasticity to churn?
Does it use spending, stability, and social value to allocate match quality?
In its objective function, is fairness an untouchable boundary:or merely a price that profit can offset?
What a profit-first system truly optimizes is not the fairness experienced by one player, but the total long-term value the population can contribute.
Once aggregate value becomes the objective, the most important ethical question is no longer whether the algorithm is accurate. It is:
When the system decides whom to protect, whom to stimulate, whose lifetime to extend, and who must bear a relatively harder experience, are players still ends in themselves:or have they become resources inside an optimization function?
Appendix: Equations and Precise Boundaries for the Ten Concepts
The main essay ends here. The following material is for readers who want to verify the mathematical definitions; it is not required for the argument above.
Appendix 1: TrueSkill
Player skill:
Single-match performance:
Team performance can be formed from the sum of member performances. Based on wins, losses, or finishing order, the system updates \(\mu_i,\sigma_i\) through a factor graph and truncated-Gaussian message passing.
The formula in the video:
is a simplified update under a Gaussian prior and Gaussian observation, not the complete TrueSkill match model.
Appendix 2: EOMM
For players \(i,j\), define the paired churn cost:
The original one-on-one form solves a minimum-weight perfect matching:
subject to each player being matched exactly once.
The form used in the video:
adds a player-value weight and expresses weighted engagement optimization. Extending this to five-on-five requires modeling the entire candidate match; it cannot simply reuse one-on-one pairing unchanged.
Appendix 3: Dynamic K-Factor
Elo update:
The specific function in the video:
\(K_t\) is the rating-update step size, not match difficulty itself. Dynamic K is a general name for a varying step size; it has no single standard function.
Appendix 4: PCA
For centered matrix \(X\):
Eigendecomposition:
The first principal component:
PCA maximizes variance in its inputs. It does not maximize the accuracy of skill, win-rate, or spending predictions. Its result depends on centering, standardization, units, and input features.
Appendix 5: GNN
A typical GCN update:
Here \(\tilde A=A+I\), and \(\tilde D\) is the degree matrix. A GNN learns relational representations, but it still requires a training objective and labels. Neighbor aggregation by itself proves neither synergy nor causality.
Appendix 6: Handicap Penalty
The video defines:
This is equivalent to:
Handicap Penalty is not a uniformly recognized standard algorithm name. A positive penalty lowers the allied side’s predicted win probability in this formula, but the direction of the final match depends on how the optimizer uses that prediction.
Appendix 7: Information Entropy
Discrete Shannon entropy:
Binary outcome entropy:
At \(p=0.5\), this reaches its maximum of one bit. High entropy can reasonably be interpreted as a near-even contest only when the win-probability model is adequate and calibrated.
Appendix 8: Survival Analysis
Survival function:
Hazard rate:
Cox proportional-hazards model:
The hazard rate is not the direct probability of uninstalling after a particular match. Churn probability over an interval must be calculated through cumulative hazard and the survival function.
Appendix 9: Minimax
The minimax relationship for a finite zero-sum game:
It describes the optimal guarantee under a worst-case scenario. A general Nash equilibrium is not the same as zero-sum minimax, and relationships among teammates are not inherently zero-sum.
Appendix 10: MIQP and Match Optimization
The video’s objective:
Subject to:
\(Q\) can encode combination costs, \(c\) the cost of individual candidates, and \(A,b\) constraints involving headcount, role, latency, and party composition.
Because \(x\) is binary, the feasible region is discrete. The problem is a binary quadratic program or mixed-integer quadratic program (MIQP). Even if \(Q\) is positive semidefinite, the complete integer problem cannot be called ordinary convex optimization.
Skip to the article