The best group out of all! (According to Rebecca)
- Create the folders
data/processed/
anddata/raw/
. - Place all your raw
.SC2Replay
files as any structure insidedata/raw/
. - Use the jupyter notebook notebooks/try_generator.ipynb to generate your datasets for Protoss, Terran, and Zerg.
The goal of this project is to analyze, evaluate data, and predict match outcomes for StarCraft II, a real-time strategy game by Blizzard Entertainment. The information that we learn from this analysis can be used to set the base line for Everglades. Data will be collected and different analytics methodologies such as descriptive and diagnostic analysis will be performed. Machine learning algorithms will also be utilized for outcome prediction. The StarCraft II data will be collected as replay files from professional tournaments. It will then be parsed and prepared for analysis and modeling.
The first objective of this analysis is to find characteristics that can lead to wins in a StarCraft II match. To achieve this goal, descriptive analysis will be performed to provide basic information regarding the variables in our data set. Followed by an in-depth diagnostic analysis to find out details causing those outcomes. The second goal for this project is to find new metrics that can predict player’s performance. To achieve this goal, strategies similar to the first goal will be used, but we will be looking at different variables that can explain player’s performance such as action per minute (APM).
Map differences will be identified and studied to understand the effect it has on match outcomes with similar game strategies. This will be achieved by performing descriptive and diagnostic analysis, as well as applying machine learning algorithms. For match outcome prediction, a supervised machine learning classification algorithm will be trained using the characterized behaviors that were determined to be statistically significant to predict the outcome of a match given the current game state. Lastly, a real-time analytics engine that can run simultaneously with StarCraft II match playback will be developed. This engine shall be at a minimum able to predict odds of winning.
.
├── assignments
│ ├── a2
│ │ ├── everglades_analysis_a2.tex
│ │ └── everglades_analysis_a2.pdf
│ └── final
│ ├── everglades_analysis_final.pdf
│ ├── everglades_analysis_final.tex
│ └── media
├── bin
│ ├── Tree.py
│ └── updateReadme.py
├── processing
│ └── sc2reader_test.py
├── README.md
├── readings
│ ├── tools
│ │ ├── pysc2.pdf
│ │ ├── stardata.pdf
│ │ ├── alphastar.pdf
│ │ ├── README.md
│ │ └── sc2_win_prediction.pdf
│ ├── intro
│ │ ├── deep-learning.pdf
│ │ ├── transformer.pdf
│ │ ├── README.md
│ │ ├── sparse-autoencoders.pdf
│ │ ├── useful-ml.pdf
│ │ └── first-cnns-backprop.pdf
│ └── assigner.py
├── data
│ └── functional
│ ├── races.json
│ └── units_dump.json
├── assets
│ └── logo.png
├── preparation
│ ├── playerstatsevent.md
│ ├── scrapers
│ │ └── scrape_pieces.py
│ └── generators
│ ├── WorkReplays.py
│ ├── UseReplay.py
│ └── Generator.py
└── notebooks
├── MapStuff.ipynb
├── terran
│ └── NOTES.md
├── normalize.ipynb
├── zerg
│ └── NOTES.md
├── try_generator.ipynb
├── protoss
│ ├── NOTES.md
│ ├── protoss_exploration.ipynb
│ └── plots
├── initial.ipynb
├── plots
├── tryout.ipynb
└── generator.ipynb