Skip to content

An HTML5 remake, an AI, and a training environment/framework for Asteroids (a retro Atari game)

License

Notifications You must be signed in to change notification settings

siva-tanikonda/asteroids-plus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Asteroids+

How to Use

Play Game/View AI

You can play the game for yourself and see the observe an AI trained by the algorithm at siva-tanikonda.github.io/asteroids-plus.

Note: The amount of asteroids on-screen scales with the resolution of the game window, so your results may vary from the training results. In addition, the game-speed variable doesn't change the rate at which the AI updates its decision, which is intentional and is another way of stress-testing the AI.

Using the Trainer

Install Packages

You need to install C++, SDL2, and the nlohmann JSON library

Run Trainer

  • First, you should alter any parameters you want to in asteroids-plus/Training/config.json.
  • Then, to run the trainer, execute the following command (in the Training directory):
    $ make train
    
  • To monitor the progress of the training, use the window that has now popped-up.

AI Strategy & Training Methodology

A complete overview of the project (including the AI strategy and training methodology) can be found in the Wiki: https://github.com/siva-tanikonda/asteroids-plus/wiki.

Tools/Libraries Used

SDL

This is a JavaScript runtime environment you can learn more about at libsdl.org.

nlohmann/json

This is a library to parse JSON in C++ github.com/nlohmann/json.