Essentially the game is an infinite loop of random levels with keeping track of the max score. The infinite loop combines predefined level structures and several visual/sound themes. It supports both Keyboard/Mouse and Gamepads for control. Music and basic SFX is also available.
- Platforming
- Collecting coins
- Shooting enemies
- Avoiding hazards
- A couple of secrets
Levels are split into structures and themes where each level can get any theme to be drawn with. It involves custom Tile development.
Some uGUI elements are customized to provide additional behaviour.
Extenject is heavily used for DI.
Github Actions are used for CI. The Unity-Builder workflow is used to produce the WebGL build, which is automatically deployed to Github Pages and is available here: Platformio.
The game uses some well known packages:
- InputSystem is used with a single InputActionAsset for everything. The package is also used to determine the type of Control Scheme that is currently used in order to adjust icon prompts on UI (like Keyboard/Playstation/Xbox icons).
- Cinemachine is used for setting up the camera rules and switching between multiple virtual cameras.
This project uses a set of music, sound and graphical assets made by Kenney in order to make a coherent gameplay.
Another special thanks for GameCI community for enabling the easy CI integration.
The source code for this project is licensed under the MIT license, which you can find in the LICENSE file.
All used graphical assets as well as music and SFX assets are licensed under the Creative Commons 0 License by Kenney.