BOT LaBrute

Requests, Deep-Learning


Description

LaBrute is a browser game in which you have your own brute which you can train to fight other brutes. A victory gives you 1xp and a defeat gives you 1xp and 1 injury. When you have 3 injuries cannot fight until the next day.

The project had two goals: optimize the trainings for each brute & determine which skills are the best to create the best brute.

⇾ I choose a request based approach, and a Neural Network for the first of the two goals. Unfortunately, the game is no longer available which did not let me time to implement all the algorithms for the second part.

Play the Game with requests

To manipulate the game and retrieve all the data needed for the game from python, I analysed the requests exchanged between my computer and the game servers using Burp-Suite.

This includes data relating to each brute: Life, Strength, Agility, Speed, Skills, Weapons as well as ID, Energy, Wounds and number of victories.

By reproducing the right requests with the right headers and up-to-date cookies, Python is now ready to play the game.

Neural Network

Guess the winning chances: to maximize the winrate of each of my brutes and make them train faster, I implemented a Neural Network based on a dataset of my brutes winning or losing battles against other ones.

When you fight a new brute you can choose among 8 opponnents, this algorithm helped choosing which opponent to fight, and get +15% winrate in the average of all matches.