https://tehn1ppe.itch.io/bomberfox
The goal was to clone an old-school arcade game, and we very quickly ended up with Bomberman heritage as the team agreed on creating an action game. We set out to play and watch videos of other Bomberman-style games to draw inspiration from. The main ideas were roguelike elements and an asymmetric co-op play, where players would have different but complimenting abilities. As the scope of this project for us as relative beginners became clear, we simply ditched the multiplayer aspect and concentrated our efforts on creating a smooth single player experience.
The first steps were creating some concept art and themes, and a simple game prototype. One of the early mechanic decisions was about player movement: Would we go for a tile-based movement or give the player free reign to run through the levels? We started early with a completely free movement, but as the bomb-laying and its relation to environment and enemy destruction became convoluted, we changed to a grid-based movement. This turned out to be too rigid for us, and since we were not using tilemaps in the game, the grid wasn’t that useful for us anyway. We ended up with an amalgamation of both; The player having free movement, but bombs and enemies using whole number coordinates, for ease of environment destruction and AI behaviour respectively.
As the art style and core game loop took shape, we started having a more tangible sense of the scope. We wanted to keep things relatively simple to be able to deliver a working game that was fun to play. We had 3 different enemies, a configurable bomb, a simple level and the player character, and early feedback with these drove us refining the core loop further with smoother controls, fluid player movement and animation, and more challenging enemy behaviour. Once this basic flow was established, we could turn our gaze to expanding the gameplay and refining the look of the game with lights, effects, additional animations and even a dedicated story scene.
Our original plan was to give the player some currency from killed enemies and a power-up shop to use it in – either when the player dies, or when transitioning between levels. Difficulties in deciding the exact mechanisms along with feedback given drove us to redesign this part of the game. Instead of recycling the killed enemies through a currency and a shop we decided to drop this idea, and instead give the enemies a chance to drop power-ups directly. Since the bombs were already configurable, creating variation for them wasn’t hard – the difficulty arose from deciding which kinds of power-ups would actually be useful and how players would use and store different bombs and bomb upgrades. We floated ideas between a single special bomb slot to having an inventory of them, and ended up with simply having 3 types of special bombs and a dedicated button and inventory slot for each. The player could only carry a single one of each of these, but they would be complemented with range and capacity upgrades to the basic player bomb.
The idea of endless progression in the game had been in the backs of our heads from the start since we had the concept of implementing something roguelike to the game. At first this was simply adding enemies and changing how the levels looked, but as the enemies themselves were somewhat configurable as well, they ended up getting faster as the player progressed through the levels. At this point we also featured randomly generated levels, but ended up using a combination of presets and randomly generated content to prevent creating dead-ends and unreachable positions in the layout – this turned out to be the easiest solution without using any kind of pathfinding algorithm.
In hindsight leaving the UI and menu mechanics to the end of the project was probably a mistake as it wasn’t as easy or simple as we thought it would be. The implementation of tasks like pausing things and navigating menus became surprisingly difficult because we hadn’t factored them in from the start. Despite this we got everything working and managed to snuff out or avoid game-killing bugs – according to our release candidate testers the game turned out to be fun to play as well, so we are happy with the results!
Eppu Syyrakki: Programming
Laura Huovinen: Programming
Hannu Timonen: Graphic Design, Animation, Music
Niilo Kajala: Graphic Design, Animation, Management
Pekka Juntunen: Sound FX
Emilia Mikkola: Animation, Level Design