Valve's Trust Factor patent application recently published. It contains a massive amount of new...
The information in this thread is from the patent which describes EXAMPLES of how Trust Score MIGHT be used in ANY game on Steam that WANTS to use SOME part of it.
CSGO does not use everything that is described here.
CSGO does not use everything that is described here.
CSGO does not use everything that is described here.
This needed to be added to the top, because a LOT of people decided to take the information here completely out of context to blame for their extremely poor performance in-game.
- Machine-learned trust scoring for player matchmaking - US 2018 patent application
- Machine-learned trust scoring for player matchmaking - WO 2020 patent application
This patent from Valve describes the big-picture idea for the Trust Scoring system. It is not a description of how it's actually being implemented in CS right now (although it pretty clearly references a lot of what they're doing). It's a big-picture description of the entire system so that they are able to patent it.
A Valve dev recently confirmed that the Trust Factor we have in CS:GO only looks at cheating behaviour right now. The patent however specifically lists many other promising avenues and problems it could tackle: "a cheating behavior, a game-abandonment behavior, a griefing behavior, or a vulgar language behavior."
Funeral Chris urged me to add some of the most interesting points to this post, so below is the stuff both of us found interesting and worth sharing.
On the purpose of Trust Scoring
 The techniques and systems described herein may provide an improved gaming experience for users who desire to play a video game in multiplayer mode in the manner it was meant to be played. This is because the techniques and systems described herein are able to match together players who are likely to behave badly (e.g., cheat), and to isolate those players from other trusted players who are likely to play the video game legitimately.
 For example, the trained machine learning model(s) can learn to predict which players are likely to cheat, and which players are unlikely to cheat by attributing corresponding trust scores to the user accounts that are indicative of each player’s propensity to cheating (or not cheating). In this manner, players with low (e.g., below threshold) trust scores may be matched together, and may be isolated from other players whose user accounts were attributed high (e.g., above threshold) trust scores, leaving the trusted players to play in a match without any players who are likely to cheat. Although the use of a threshold score is described as one example way of providing match assignments, other techniques are contemplated, such as clustering algorithms, or other statistical approaches that use the trust scores to preferentially match user accounts (players) with“similar” trust scores together (e.g., based on a similarity metric, such as a distance metric, a variance metric, etc.).
 The techniques and systems described herein also improve upon existing matchmaking technology, which uses static rules to determine the trust levels of users. A machine-learning model(s), however, can leam to identify complex relationships of player behaviors to better predict player behavior, which is not possible with static rules-based approaches. Thus, the techniques and systems described herein allow for generating trust scores that more accurately predict player behavior, as compared to existing trust systems, leading to lower false positive rates and fewer instances of players being attributed an inaccurate trust score. The techniques and systems described herein are also more adaptive to changing dynamics of player behavior than existing systems because a machine learning model(s) is/are retrainable with new data in order to adapt the machine learning model(s) understanding of player behavior over time, as player behavior changes.
 With players grouped into matches based at least in part on the machine-learned scores, the in-game experience may be improved for at least some of the groups of players because the system may group players predicted to behave badly (e.g., by cheating) together in the same match, and by doing so, may keep the bad-behaving players isolated from other players who want to play the video game legitimately.
 Because machine-learned trust scores 118 are used as a factor in the matchmaking process, an improved gaming experience may be provided to users who desire to play a video game in multiplayer mode in the manner it was meant to be played. This is because the techniques and systems described herein can be used to match together players who are likely to behave badly (e.g., cheat), and to isolate those players from other trusted players who are likely to play the video game legitimately.
EXAMPLES of features that MAY be included in the training data, without limitation,
- an amount of time a player spent playing video games in general,
- an amount of time a player spent playing a particular video game,
- times of the day the player was logged in and playing video games,
- match history data for a player- e.g., total score (per match, per round, etc.), headshot percentage, kill count, death count, assist count, player rank, etc.,
- a number and/or frequency of reports of a player cheating,
- a number and/or frequency of cheating acquittals for a player,
- a number and/or frequency of cheating convictions for a player,
- confidence values (score) output by a machine learning model that detected a player of cheat during a video game,
- a number of user accounts associated with a single player (which may be deduced from a common address, phone number, payment instrument, etc. tied to multiple user accounts),
- how long a user account has been registered with the video game service,
- a number of previously-banned user accounts tied to a player,
- number and/or frequency of a player’s monetary transactions on the video game platform,
- a dollar amount per transaction,
- a number of digital items of monetary value associated with a player’s user account,
- number of times a user account has changed hands (e.g., been transfers between different owners/players),
- a frequency at which a user account is transferred between players,
- geographic locations from which a player has logged-in to the video game service,
- a number of different payment instruments, phone numbers, mailing addresses, etc. that have been associated with a user account and/or how often these items have been changed,
- and/or any other suitable features that may be relevant in computing a trust score that is indicative of a player’s propensity to engage in a particular behavior.
On protecting legitimate "outliers", such as Valve employees and pro players from being wrongly assigned low Trust Score
 It is to be appreciated that there may be outliers in the ecosystem that the system can be configured to protect based on some known information about the outliers. For example, professional players may exhibit different behavior than average players exhibit, and these professional players may be at risk of being scored incorrectly. As another example, employees of the service provider of the video game service may login with user accounts for investigation purposes or quality control purposes, and may behave in ways that are unlike the average player’s behavior. These types of players/users can be treated as outliers and proactively assigned a score, outside of the machine learning context, that attributes a high trust to those players/users. In this manner, well-known professional players, employees of the service provider, and the like, can be assigned an authoritative score that is not modifiable by the scoring component to avoid having those players/users matched with bad-behaving players.
On how VAC banned accounts can be used as positive training example
 The training data may also be labeled for a supervised learning approach. Again, using cheating as an example type of behavior that can be used to match players together, the labels in this example may indicate whether a user account was banned from playing a video game via the video game service. The data 114 in the datastore 116 may include some data 114 associated with players who have been banned cheating, and some data 114 associated with players who have not been banned for cheating. An example of this type of ban is a Valve Anti-Cheat (VAC) ban utilized by Valve Corporation of Bellevue, Washington. For instance, the computing system 106, and/or authorized users of the computing system 106, may be able to detect when unauthorized third party software has been used to cheat. In these cases, after going through a rigorous verification process to make sure that the determination is correct, the cheating user account may be banned by flagging it as banned in the datastore 116. Thus, the status of a user account in terms of whether it has been banned, or not banned, can be used as positive, and negative, training examples.
How machine-learned trust scoring can segregate more than just cheaters, for example abandoners, toxic players, griefers and smurfs.
 It is to be appreciated that, although many of the examples described herein reference“cheating” as a targeted behavior by which players can be scored and grouped for matchmaking purposes, the techniques and systems described herein may be configured to identify any type of behavior (good or bad) using a machine-learned scoring approach, and to predict the likelihood of players engaging in that behavior for purposes of player matchmaking. Thus, the techniques and systems may extend beyond the notion of“trust” scoring in the context of bad behavior, like cheating, and may more broadly attribute scores to user accounts that are indicative of a compatibility or an affinity between players.
 FIG. 2 illustrates examples of other behaviors, besides cheating, which can be used as a basis for player matchmaking.
 For example, the trained machine learning model(s) may be configured to output a trust score that relates to the probability of a player behaving, or not behaving, in accordance with a game-abandonment behavior (e.g., by abandoning (or exiting) the video game in the middle of a match). Abandoning a game is a behavior that tends to ruin the gameplay experience for non abandoning players, much like cheating.
 As another example, the trained machine learning model(s) may be configured to output a trust score that relates to the probability of a player behaving, or not behaving, in accordance with a griefing behavior. A “griefer” is a player in a multiplayer video game who deliberately irritates and harasses other players within the video game, which can ruin the gameplay experience for non-griefmg players.
 As another example, the trained machine learning model(s) may be configured to output a trust score that relates to the probability of a player behaving, or not behaving, in accordance with a vulgar language behavior. Oftentimes, multiplayer video games allow for players to engage in chat sessions or other social networking communications that are visible to the other players in the video game, and when a player uses vulgar language (e.g., curse words, offensive language, etc.), it can ruin the gameplay experience for players who do not use vulgar language.
 As yet another example, the trained machine learning model (s) may be configured to output a trust score that relates to a probability of a player behaving, or not behaving, in accordance with a“high-skill” behavior. In this manner, the scoring can be used to identify highly-skilled players, or novice players, from a set of players. This may be useful to prevent situations where experienced gamers create new user accounts pretending to be a player of a novice skill level just so that they can play with amateur players.
 Accordingly, the players matched together in the first match(1) may be those who are likely (as determined from the machine-learned scores) to behave in accordance with a particular “bad” behavior, while the players matched together in other matches, such as the second match(2) may be those who are unlikely to behave in accordance with the particular“bad” behavior.
On various implementations of scoring
 In some embodiments, the score is a variable that is normalized in the range of [0,1]. This trust score may have a monotonic relationship with a probability of a player behaving (or not behaving, as the case may be) in accordance with the particular behavior while playing a video game. The relationship between the score and the actual probability associated with the particular behavior, while monotonic, may or may not be a linear relationship.
On two trust scores. Negative trust score, and positive trust score.
 In some embodiments, the trained machine learning model(s) may output a set of probabilities (e.g., two probabilities), or scores relating thereto, where one probability (or score) relates to the probability of the player behaving in accordance with the particular behavior, and the other probability (or score) relates to the probability of the player not behaving in accordance with the particular behavior. The score that is output by the trained machine learning model(s) can relate to either of these probabilities in order to guide the matchmaking processes.
On the system continuously being retrained on the latest data of user behaviour
1,873 Read the full article on Reddit
 The machine learning model(s) can be retrained using updated (historical) data to obtain a newly trained machine learning model(s) that is adapted to recent player behaviors. This allows the machine learning model(s) to adapt, over time, to changing player behaviors.
 Thus, the process represents a machine-learned scoring approach, where scores (e.g., trust scores) are determined for user accounts, the scores indicating the probability of a player using that user account engaging in a particular behavior in the future. Use of a machine-learning model(s) in this scoring process allows for identifying complex relationships of player behaviors to better predict player behavior, as compared to existing approaches that attempt to predict the same. This leads to a more accurate prediction of player behavior with a more adaptive and versatile system that can adjust to changing dynamics of player behavior without human intervention.