Asteroids represents my second project in the open source Godot game engine, a recreation of the original arcade game. In this project, I spent my time better familiarizing myself with the engine's features and patterns as well as implementing new things. Godot, with its node and scene design pattern utilizes signals for communication among the moving pieces. Learning how to optimally adapt this pattern has been an interesting challenge.
As far as Asteroids goes, I have personally used it to learn the physics engine, collision handling, sprite animation, and scene switching. The project also features a main menu, a settings menu with controls that can be rebound, and settings and high scores which persist between play sessions.
Credit goes to sp33dy on steemit.com for the ScreenWrap node implementation which helps game objects to wrap around the screen top/bottom and left/right.