Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/victorgoubet/starcraftoracle
League prediction on starcraft II
https://github.com/victorgoubet/starcraftoracle
ai classification jupyter-notebook python starcraft2
Last synced: about 1 month ago
JSON representation
League prediction on starcraft II
- Host: GitHub
- URL: https://github.com/victorgoubet/starcraftoracle
- Owner: VictorGoubet
- Created: 2022-12-11T17:30:01.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2022-12-19T15:14:56.000Z (about 2 years ago)
- Last Synced: 2024-11-08T18:24:14.945Z (3 months ago)
- Topics: ai, classification, jupyter-notebook, python, starcraft2
- Language: Jupyter Notebook
- Homepage:
- Size: 6.05 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]## About The Project
StarCraft is a famous RTS game where you are part of a faction and must defeat opponents by overpowering them, usually by destroying all of their buildings. Some single-player missions and custom maps feature different objectives. When you are a StarCraft II player, you are ranked among 8 classes:
- Bronze
- Silver
- Gold
- Platinum
- Diamond
- Master
- GrandMaster
- Professional leaguesTo go into an higher league, you have to improve yourself on a lot of multiple factors. The question is, could we use different statistic on the player games behaviors and skills to predict its league. It could allow to discover shadow potential amoung young players, or event to know which skills you should improve to be better at this game and maybe be part of the Professional leagues one day.
[![Product Name Screen Shot][product-screenshot]](screenshot.PNG)
Will the AI see through you ? Let's see!
## Implementation
SkillCraft is a dataset composed of a lot of features of over three thousand players playing at StarCraft II from bronze to professional gamers. In our study we will try to predict the league index of a player considering all his others features. Thus, it is a **classification problem.**
In our notebook we have followed the next steps:
- Data exploration
- Data engeneering
- Modeling
- Optimisation (Tunning)
- ConclusionWe obtain finally a score of **0.45** due to a significant lack of data especially for the level 8 players.
A flask API is available to make predictions on your datas if you want.To request a prediction from our API the input must be composed of all the columns (minus the leagueIndex) and no missing data with the appropriate datatype (float or int depending on the column). Finally, it must be a dictionnary.
## Getting Started
### Prerequisites
You will just need python >= 3.0 ( and < 3.11 if you want to use shap values). You can check the version by using the following command.
```sh
> python -V
> 3.0.0
```### Installation
You can follow the different steps inorder to get the program working on your computer
1. Clone the repo
```sh
git clone https://github.com/VictorGoubet/StarCraftOracle.git
```2. Install python packages
```sh
pip install -r requirements.txt
```3. Open the notebook inn VS code or using jupyter with the following command
```sh
jupyter notebook
```You can explore the notebook and see the different steps to build the model.
Then, inorder to test the API and start to make some predictions you can
execute the following steps:1. Starting the server
```sh
python API/server.py
```2. Go to **localhost:5000/API_form** in a browser
3. Try it yourself!
You can also check the *dev_request_example.py* file to see how to make some prediction using the REST api from code application.
-----
[![LinkedIn][linkedin-shield]][linkedin-url]
Victor Goubet - [email protected]
[![LinkedIn][linkedin-shield]][linkedin-url-chloe]
ChloΓ© Daems - [email protected]
[forks-shield]: https://img.shields.io/github/forks/VictorGoubet/StarCraftOracle.svg?style=for-the-badge
[forks-url]: https://github.com/VictorGoubet/StarCraftOracle/network/members
[stars-shield]: https://img.shields.io/github/stars/VictorGoubet/StarCraftOracle.svg?style=for-the-badge
[stars-url]: https://img.shields.io/github/issues/VictorGoubet/StarCraftOracle/stargazers
[issues-shield]: https://img.shields.io/github/issues/VictorGoubet/StarCraftOracle.svg?style=for-the-badge
[issues-url]: https://github.com/VictorGoubet/StarCraftOracle/issues
[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge&logo=linkedin&colorB=555
[linkedin-url]: https://www.linkedin.com/in/victorgoubet/
[linkedin-url-chloe]: https://www.linkedin.com/in/chloe-daems/
[product-screenshot]: screenshot.PNG
[minmax-screenshot]: MinMax.jpg