Skip to content

Latest commit

 

History

15 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OWCS EMEA Stage 2 Analysis (2025)

This project analyzes Overwatch Champion Series (OWCS) EMEA Stage 2 match data using PostgreSQL and Python.

Project Structure

.
├── owcs_analysis.py # Python script to generate charts
├── match_data_analysis.sql # Full cleaned SQL query file
├── owcs25_emea_stage2.csv # The dataset used
├── top_..._... # PNG of charts generated by the Python code
└── README.md # Project documentation

Key Insights

  • Team map and match win rates (per phase)
  • Hero pick and ban rates
  • Hero win rates (min 10 games)
  • Player average performance (damage, healing, elims)
  • Saudi team head-to-head win tracking

Tools Used

  • PostgreSQL 15
  • Python 3.10
    • pandas
    • seaborn
    • matplotlib

How to Run

  1. Run all SQL in match_data_analysis.sql on a PostgreSQL database with match_data_raw table.
  2. Copy the SQL query results (as CSV or DataFrame) into owcs_analysis.py as needed.
  3. Run the Python script:
python owcs_analysis.py

Charts will be viewed in VSCode not saved.

Example Visuals

  • Team win rates by phase
  • Top 20 banned heroes
  • Team map winrate
  • Most frequent hero switches

Key Data Insights

  • Hero Win Rates
    Pharah led with the highest map win rate (68.8%), followed by Kiriko (64.3%) and Symmetra (61.8%) showing their strong impact when picked.

    Hero Win Rates

  • Most Banned Heroes
    Lucio (29 bans), D.Va (23), and Freja (19) were the most banned heroes, reflecting their high strategic threat across both team comps and tempo control. Junkerqueen remained either under-picked or had low win rates suggesting their minimal impact in EMEA Stage 2 until playoffs where the hero got a buff which caused bans to happen.

    Most Banned Heroes

  • Versatility by Role
    Skai (Support), Pak (DPS), and Heesung (Tank) demonstrated the highest flexibility, each playing 9 unique heroes a key trait in dynamic matchups.

    Most Versatile Players

  • Team Performance by Phase
    Al Qadsiah maintained a perfect 100% win rate across both Regular Season and Playoffs. Twisted Minds followed with a strong 71.4% in the Regular Season.

    Match Win Rate per Team

Data Collection Notes

  • Matches are counted from the moment “Assemble Heroes” starts, not when the team fight begins.
  • Switches made at the last second to touch the objective are only counted if the team won the fight. Otherwise, they’re ignored.
  • Symmetra (for TP) and Lucio (for speed) used only briefly at the start are not counted as starting heroes, unless they were used in the first fight.
  • All match data was gathered from OW Esports YouTube VODs.
  • Final scoreboard verification was done using ObsSojourn VODs.

Author: [Majed Almusayhil]
Data Source: Manually curated OWCS EMEA Stage 2 dataset (2025)

About

OWCS EMEA Stage 2 2025: Full data analysis using PostgreSQL & Python - Hero meta, team win rates, bans, and more.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages