1.0 Release

Spark of the Walrus is now released! I've been working on it for about 8 months, but since I have a day job, I've probably only spent about 200 hours making it. So it's a pretty short game, but I think it captures the ideas I wanted to experiment with.
In this version:
This final update just makes the party hats stackable, with little shadows under them
Technology:
I used Monogame as the base. Monogame is an abstraction over SDL 2 and OpenGL, which itself is an abstraction over the operating system. It has an interface based on XNA, which was used for the original Xbox. It's a good API, but the performance is quite bad by default, so most people make their own batchers, which I did. It's so common that Monogame have a tutorial on how to do this!
On top of Monogame, I use an open source library called Penumbra for the beautiful real-time lighting/shadows. I've hacked normal mapping on top of Penumbra, but I barely understand Penumbra so it's a complete mess. Somehow it works.
I'm using FMOD for the sound, though it doesn't really serve any purpose for me, since for Linux I couldn't get it working so I can compile to not use it, and there is barely any difference between it and Monogame. I originally chose FMOD to allow layering tracks synchronized, so that I could play different sound in and out of water. But I found that the music then sounded worse one way or the other. Maybe I'll add it back in a future update.
Game design:
I recommend playing the game before reading this, since it has some spoilers.
The core challenge I set for myself was: make a water level fun. They're infamously bad in Mario and Zelda, partly because the movement speed is so slow, but also because you get moved constantly and still have to avoid obstacles. So I had some ideas to solve this:
- Water movement should be smooth and fast
- The water level should be changeable and allow access to new areas
- Land movement should feel uncomfortable, and have reduced access
So the player is encouraged to raise the water level by wanting to have more fun moving, and to gain access to new places. This basic system has limited gameplay options though, since doing much on land is (purposefully) uncomfortable and in the water its hard to have any challenge. Pretty early in the game you get the ability to control the water level freely, which is then stifled by Orcas which love water even more than you do. This conflict means you have to find just the right water level for a couple problems, before the game becomes more obviously a Metroidvania by unlocking components of better land movement, flipping the paradigm on its head, until you become all powerful and leave.
Closing thoughts:
I think the core idea of this game is flawed. Making land uncomfortable is not the right way to make a water level fun. But it does result in a sequence of design decisions which lead to an interesting and unique experience. I feel happy that playtesters have pretty quickly understood what to do, but without it seeming too trivial. Once players do figure out what to do, they usually can achieve it, if they're experienced with platformers - there are a couple parts which can be really really hard if you aren't!
Monogame was not a good choice for this game. It's not low level enough for me to be able to tune performance sufficiently for the game to perform well on a wide range of devices. I still have frametime spikes which I cannot find the cause of, despite memory debugging tools telling my I am not allocating memory so it can't be the garbage collector. If I had instead picked an existing engine like Unity, the game would have performed even worse, but at least I would have finished it much faster. However, Monogame was a good choice for me. I enjoyed developing in it much more than Unity, mostly because it is fun developing algorithms for the basic stuff. And I wouldn't have been ready to develop in something lower level when I started.
I'm looking forward to trying something lower-level with my next project, though it's pretty unlikely that is reaches a releasable state - it takes a lot of work to make a game.
I hope you enjoy it!
Files
Get Spark of the Walrus
Spark of the Walrus
Blubber, bounce, and break free in this challenging short metroidvania
Status | Released |
Author | ominous pot of leeks |
Genre | Platformer |
Tags | 2D, Indie, Metroidvania, No AI, Pixel Art, Singleplayer |
More posts
- 1.1 Bugfix1 day ago
Leave a comment
Log in with itch.io to leave a comment.