Summary
The idea originating in the 72 hour Ludum Dare #26 challenge, Bipolar is a First Person, physics based, platform-puzzle game, which has been an hobby project for me and my team since it’s inception. So far we have been awarded the “Most Promising Demo” award at the annual Videojogos event in Portugal.
All is well in the orbital factory, when a MAGBOT9000 fails to pass Quality Assurance and is sent plummeting down to become scrap metal, only to awaken years later in the deactivated facility. What happened on the day he was rejected? And what was so faulty about him anyway? His magnet arms work fine!
The game focuses on the use of Magbot’s arms to attract and repel the player towards or away from various magnetic surfaces.
By using this means of locomotion, and through good timing, the player must overcome challenges where jumping isn’t the solution. Along side the platforming aspect of the game there is also a puzzle solving component, employing magnetism, be it to move platforms, or activate circuits through the generation of magnetic fields.
For more information about this project, visit the team webpage
My Contribution
During development of this project, I was in charge of defining the architecture to allow my co-workers to work in a focused and planned manner, however I was also responsible for writing some core systems within the game.
I was responsible for:
- The dynamic level loading system (not present in the Ludum Dare demo) which dynamically loads new levels and areas as the player moves along. This allows the game to be loading screen free, as well as giving it a bit of a metroidvania feel, which was one of our design goals.
- The player controller, managing controls, player movement and abilities.
- Audio manager, playing background music with configurable fades, as well as easily playing 3d SFXs while avoiding an overcrowding of sound.
- Resource loading pipeline, which dynamically caches “deleted” game assets, avoiding many costly re-instantiations of common objects.
- Savegame system, which is capable of serializing world states including all moving and interactible objects.