Cassette Beasts Review: The Latest Hit Made With Godot
Cassette Beasts is a game that came out in April 2023 and that’s a glorious take at recreating something that feels and looks a bit like Pokemon, but made for the PC platform as well. And best of all, it’s made with Godot (the 3.x version, since it was in development long before 4 came out) so it’s an excellent demonstration that you can have a high quality, successful and original, multiplatform game made with Godot instead of Unity that’s almost used by default these days (at least until the Unity debacle with the pricing hike came by).
Beginnings
The game starts with a character creation screen, where you can choose pretty much everything about your soon-to-be hero. And afterwards, following a short intro, you find yourself teleported in a different world, New Wirral, where monsters roam the land and people fight them to survive. Soon enough you will find that you are not the only person around as a girl called Kayleigh helps you in your first fight and shows you how to fight by using a cassette player and tapes. Such equipment lets you transform into monsters so that you can fight fire with fire. More on that later…
The thing is, New Wirral is not on Earth, it’s some kind of parallel dimension and there is a small community of people who found themselves stuck in there and who built a little village to stay strong together. As you get to know people from there, you find out more and more about this new world and what is really happening. But the intro is very light on details: they just tell you can’t go back to your world, that you are stuck here, and by the way, we need you to go and do some patrols. The writing could certainly have been improved a bit there. I’d be asking a lot more questions if I ever found myself in such a situation!
Quests
As you would expect, you are found to have great abilities to fight, and you are soon enrolled to become a ranger - someone who will venture in the wild and fight monsters. You are aided by your cassette tapes as mentioned earlier. Such tapes can be used to “record” monsters you fight against, in the middle of a fight. When you use them, it will be like rolling a dice, and you will be given a percentage of success to record such monsters. When you do, your empty tape becomes a new monster tape. Such tapes can then be used to transform yourself into that monster.
So in effect you turn yourself into a monster in order to fight other monsters. During a fight, if your monster’s health reaches zero, you come back to your human form for a short time, before transforming to another monster that’s available in your other tapes. Of course, if all your monsters were KO’ed once after the other, you will end up in a game over state. To avoid that, you take breaks during your travels at camp sites, where you can rest and recharge your tapes to full health - you also have a few items that can “rewind” tapes to give them full health again, even during fights. Other items can repair broken tapes (tapes that reached zero health) but you typically only have very few of them.
So as you can imagine, the key mechanics of the game is to go around and collect more and more monsters with your tapes, while only 4 of them will be available to you when you travel. The rest will be in storage, available for switching when you take a break.
Possibilities
Just like in games like Pokemon centered around fighting monsters, the space of possibilities is very high. Monsters can have their own abilities that you can collect through cards, and each of them use a different number of action points. Fights are turn-based so you either attack as often as possible with minor cards, or wait to save on action points to launch more devastating attacks. On top of that, your character and your tapes progressively level up as well, and your monsters will get to turn into new version of themselves after they reach specific thresholds, making them a lot more powerful and resistant.
The game is split between two main phases: one where you wander in the world, going from one place to the next to reach you objectives - in such mode the view will remind you of older J-RPGs with a slightly elevated view above the ground, with your protagonists as 2D sprites. The camera system has some smart tricks under its sleeve, with complete changes of perspective when you enter narrower spaces - unfortunately it’s not perfect and you will have issues finding where your characters are sometimes when behind a large hill that blocks the view. Moving in the world is a kind of mini-game in itself: you need to avoid touching enemies on the map (that would trigger a fight) and the best way to reach the place you want to go to. This means finding bridges, activating switches that add new elements on the map to help you reach new areas. There are chests here and there as well, unveiling some treasures such as usable items (sometimes rare ones). There are camps where you can rest and save the game across the map, too - and when you rest there, you can repair your broken tapes or the damaged ones by using some of your collected items. Many places are inaccessible at first, and you will need to unlock specific abilities (higher jump, gliding, swiming) or solving specific puzzles to open new paths. There’s a lot to do just by looking around and trying to find how far you can get.
The other phase of the game is the combat one. In such scenes you find yourselves (you and your current partner) on the left side of the screen, automatically transforming into their default monsters to fight the enemies that appear on the right side of the screen. All players are represented as 2D sprites, and the action becomes turn-based: you choose your next action, consuming AP, and one by one every monster will attack in a sequence. Depending on which cards you have collected until now, your monster will have different actions available to them: some special effects causing poison or various bonus effects on themselves (speed, strength, barrier, etc.) to help you make it through the fight. Your monsters will level up too as they win fights, and following specific thresholds they morph into advanced versions of themselves, usually bigger and meaner looking.
At some point you will be presented with the possible to “merge” your monsters with your partner on the screen: this only happens in specific situations (usually when fighting against mean bosses or much stronger enemies) and this unlocks new powers and more powerful attacks. But you don’t really have to worry about this - this is more of an exception than something that happens on a regular basis.
How does Godot Perform?
It’s a game that’s not super impressive visually speaking (it’s made to look retro on purpose), but it’s very well done in most aspects. I like the overall design (except the menus that look very out of place and look too simple). The music is absolutely glorious - the fight scenes have excellent and memorable soundtracks, and the other areas benefit from relaxing tunes, too. The client runs natively on Linux, and is seleceted by Valve as such when you check the game info on the Steam Deck (which is not always the case, sometimes even when the Linux client is available, Steam defaults to Proton based on their testing).
Godot performs well - but it’s clear that it does consume quite a bit of power for what there is to see on screen. On the Steam Deck, you need to be between 6 and 8W to have a comfortable framerate with nice visuals, which is higher than you would expect for this type of game. Loading times are also fairly long (especially the first one when starting the game), and this seems to be linked to Godot 3.x where loading assets does not work too well when done in parallel (unstable with crashes) - forcing the devs to do asset loading sequentially instead.
How much of these performance flaws is linked to the Godot engine, and to the actual optimization of the game, I can’t say. We would need to have a lot more Godot games to compare with to make such a judgment. I have recently been playing another game made with Godot, Beat Invaders, and it does suffer from the long initial loading times, so there’s some potential pattern there.
Still, apart from the above, there is no telling that this game uses Godot - it looks as professional as any other great games out there that uses Unity. This is a huge win for any dev out there considering whether Godot can be used to make “real” games and the answer is a resounding YES! Cassette Beasts is the living proof of it (and not the only one, but one of the most elaborate to date).
Cassette Beasts is Fun
Beyond the engine it uses and what it represents for the usage of FOSS game engines, I really liked the game as a whole. It’s well designed, it has a good quest system and tracking, bringing a lot of content and missions progressively, forcing you to explore more of the map and find ways to get to places that seem out of reach. Monsters have cool 2D sprites and the animations are convincing.
There’s a few problems though: the introduction to the world is too short and somewhat unsatisfying - there is also very little character development. It feels like the game was built on mechanics first, and the narration was bolted on it at the last minute for good measure. You meet a lot of NPCs in the game but they have almost nothing to say, and are just placeholders for more fights. This part deserved a lot more. Some lore, some background stories, some actual dialogs. Instead, the NPCs just give one line or two with barely any information. Too bad, they could have used such characters as a narrative mechanism. A missed opportunity.
The camera problems are real, too, but don’t occur too often to ruin your experience so you will live with it most of the time. The most problematic part is the lack of different actions available for your monsters, at least at the beginning, making fights very repetitive (most monsters have the same basic actions) and not challenging enough. If you expected something with the depth and the richness of a Pokemon game, you are probably going to be somewhat disappointed.
Lastly, the game features some stronger bosses called the archangels - they have a very different look than your regular monsters, and they feel out of place in the game, design wise and tone-wise. When you fight them, it feels like you stepped into a horror game, very far from the pokemon-y atmosphere of the rest of the world. That may be the biggest design flaw of Cassette Beasts.
None of this is a huge deal breaker. I return to Cassette Beasts to progress on the missions and hopefully beat it at some point. Its existence is a huge win for Godot, and this may well be the game that convinces some other game developers that this FOSS game engine is definitely worth a try, in case Unity did not do enough to turn them away.
Multiplatform: Unlocking Consoles
Godot was able to cover both platforms out of the box: Windows and Linux. However, the developers of Cassette Beasts had to contract out the development of the Switch version, since Godot could not help for that part. This may be one of the key problems for Godot at this stage for devs who are looking to leave Unity behind. If you want to target the Switch, which is another huge market for indies, you will need extra steps to reach that market. There is a section about this topic on the wiki and the company called Lone Wolf Technology has developed their own ports of Godot for the Playstation and Switch and can do the extra work for you to publish on those platforms.
So the solution already exists - and their prices start at 3000 USD for a port, which sounds reasonable if your game is getting some traction on PC anyway. I don’t have any info what would drive the cost upwards for a port. In any case, it’s definitely worth checking it out if you are a game dev yourself and interested in Godot.
You can find Cassette Beasts on Steam - we have received a key from the publisher to review the game.