1 of 17

Team Evolution and Dynamics in Online Multiplayer Games

Mentor: Goran Murić, ISI Artificial Intelligence Division

Students: Kevin Tsang (MS Applied Data Science/Year 1)

Jiaqi Liu (MS Electrical Engineering/Year 1)

2 of 17

Motivation

Esports is a booming multi-billion-dollars industry where millions of players and viewers actively play and watch games everyday.

Gaming community, especially games with teamwork, is a fruitful environment to explore and analyze some of the real-world collaborative phenomena.

Insight to whether a team performance changes when a player(s) switch teams elucidates about the human collaboration and competition and aid in decision making for owners and coaches.

3 of 17

Counter Strike: Global Offense is a first-person shooter game with two teams (Counter-terrorists vs Terrorists) consist of 5 players each to compete in a best-of-30 match.

4 of 17

The professional CS:GO scene hosts tournaments year-round with prize pool for teams from around the world to compete for.

CS:GO Major Championships have prize pools > $1,000,000

5 of 17

Problem

This project aims to study the changes in team dynamics when a player transfer teams in Counter Strike: Global Offense (CS:GO).

First, we will need a complete data collection on CS:GO statistics.

Our goal is to build models to explain the following questions:

  • What is the effect on a player after changing the team?
  • How does player transfer affects the team performance?

6 of 17

Data Source

HLTV.org is the most prominent website that keeps track of all major professional events in CS:GO.

��

Tabular data available:

  • Players
  • Teams
  • Matches
  • Events
  • Maps

7 of 17

Our Data Schema

8 of 17

Challenges in data collection

  • Understanding of how the website is organized by the administrators of HLTV.org
    • E.g. Map ID vs Match ID (Each Match has several Maps and the Match results is the sum of all of the maps combined)
  • Some of our first times in web scraping data and learning how to organize our data to avoid redundancy.
  • Data cleaning and imputation on missing value for data
    • E.g. Calculate player tenure in various teams, or over the entire career

��

9 of 17

Approach

  1. The data has been collected by web scraping using Python BeautifulSoup library 4.4.0 and Selenium.
  2. A structured data schema has been created to organize the data sets and demonstrate relationships amongst data values.
  3. We organized the data into dataframes and exported as csv files.
  4. We analyze the following:
  5. Relation between player characteristics and player performance
  6. Relation between team characteristics and team performance
  7. What happens with player performance when switching the team

10 of 17

Data statistics

Data Type

Count

Players

13706

Teams

4832

Matches

76450

Events

4051

Mean: 23.70

Std.dev: 2.16

Mean: 23.59

Std.dev: 3.10

11 of 17

Best Teams and Players of CS:GO

Natus Vincere

Astralis

fnatic

mousesports

G2

12 of 17

Younger players play better

Linear Regression: Player Age vs Player Performance

  • Older players have less kills per match (-0.0768)
  • Older players have lower Kill-to-Death ratio (-0.0024)
  • Older players have lower damage per round (-0.2067)
  • Older players have fewer kills per round (-0.0025)
  • p<0.0001

13 of 17

Players improve with the experience

Linear regression: Player Tenure vs Player Performance

  • More kills per day (0.0014)
  • More damage per round (0.0016)
  • More kills per round (2.28e-05)
  • Similar kill/death ratio (5.992e-05)
  • Similar headshot ratio (-0.0005)

14 of 17

Linear regression coef:

Team number 0.63

R-squared: 0.19

Good players change teams often

Linear regression coef:

Team number 0.24

R-squared: 0.20

15 of 17

Good teams are more stable - do not change players often

Linear regression coef:

Player number -0.04

Constant 12.6

R-squared: 0.059

16 of 17

Change team does not affect player performance

For each player that played in at least 2 teams, we calculate the performance before and after the change, and compare it:

The average kills before change a team: 16.38

The average kills after change a team: 16.34

17 of 17

Questions?