My (Failed) Attempt At A Team Builder RPG

I was recently playing a lot of Pokémon on a whim (mostly the NDS versions). There has yet to be a game in the genre that quite scratches the team-building turn-based battle itch so well (although Monster Sanctuary comes the closest).

However, as I’ve gotten older and grumpier, a lot of issues and complaints with the Pokémon games started standing out to me:

  • Heavy RNG can sometimes really screw you
  • Complex damage calculations involving several stats cannot be done in your head on the fly
  • The speed stat is boringly binary (either you go first or you don’t)
  • Catching a monster is annoyingly binary and RNG-based
  • EVs and IVs make for an excruciating experience if you are trying to be a power-player (optimal play should not be lame!)
  • Similarly, acquiring a desired moveset can necessitate a master’s degree in bulbapedia and tedious grinding

So naturally, I thought “hey Wheffle, you make games, you should just make a new game that fixes all that!”


The Concept

Achievement Get: spend way too much time on an intro sequence before you have any actual gameplay

I set out designing a system that I felt would be simpler to understand but still difficult to master. I actually borrowed a few concepts from the aforementioned Monster Sanctuary, and, surprisingly, Jurassic World Alive (which, despite some silly design choices and monetization, is better than it has any right to be and proved that Niantic was just lazy or inept by not implementing direct turn-based head-to-head battles in Pokémon Go! But I digress…)

I came up with a few core design pillars:

  • RNG mechanics will be avoided if at all possible
  • Damage will use simple calculations so that a human can easily calculate how much damage an attack will do
  • Turn order will depend on the move, and moves with matching priority will execute simultaneously
  • Monsters will have branching “skill trees” that allow you to mix and match different paths, creating distinction without mucking around with hidden IVs and crap
  • By defeating wild monsters, incremental points will be earned towards spawning that type of monster for your own

The loose story idea: the game takes place on a planet where humans co-exist with a native “morphling” species. Some humans, for unknown reasons, are able to bond with a morph, which allows them to shapeshift. Your “monster” team consists of a group of these creatures that help you defend yourself by giving you the ability to shapeshift.

I called it “Battlemorph” (a very cool title).

I choose you, Agog-chu!

The Issues

Some problems were apparent very quickly. First of all, it’s a ton of work to create an RPG battle system. A turn-based system may seem simplistic, but most popular game engines are tailored for real-time action with step functions, vector movement, and collision detection built-in. You end up building a stateful turn system mostly from scratch and managing it manually, which is not a trivial task! Something like RPG Maker might have been more appropriate for this project.

There’s an avalanche of content that needs to be stored and organized when it comes to all the monsters, skilltrees, items, etc. And then the UI nightmare that comes with it… I gained a newfound respect for the old Game Boy Pokémon titles. They stuffed so much into such a small space.

There were some design elements that didn’t turn out to be as smart as I thought they would. Simultaneous combat is really hard to follow. it’s difficult to tell what just happened on the screen, even with a decent battle log. I think this could work in some form, but it needs a lot more time in the oven to mature.

What is even going on

Some of the systems that were intended to be simple turned out to just be silly. Each attack consisted of a number of hits and damage per hit. The Defense stat blocked a flat amount of damage per hit, and the Agility stat blocked a flat number of hits per attack. One was strong against numerous small hits and the other was strong against a few large hits. However, having to chew through all of that defense meant that many attacks just did no damage, and battles became tedious. Again, I think this type of system could work if it was tuned properly, but off the cuff it was just annoying.

Lastly, building an overworld is a ton of work! After I set up the tileset and built a test map, I realized how empty everything looked. It takes a lot of time to create all the assets and doodads that fill up a space and make things feel comfy. It sounds obvious, like duh you’re going to need a lot of art, but this personally caught me off guard for some reason. I suppose I don’t normally make games in this genre. Once again I’m taken aback by those old Pokémon Game Boy games and all the little doodads they jammed in there.


The Takeaway

Project death is not uncommon for me or anyone else that works in game development. I don’t regret any of my attempts, I always learn a lot and there’s always the option to try again if I feel like I’m close to something good and I have the motivation to do so. That’s the heart of iterative game design.

If I do come back to Battlemorph, I’d probably spend way more time iterating through the battle system to nail that down and a lot less time with art and frills at the beginning (those high-res animations take a lot of work you know). It’s an ongoing problem I tend to have: I like to polish as I go, which makes throwing out badly designed work more painful and slows down development. It’s sometimes difficult to know if an idea or system is fun without prototyping it, so the battle system really needed a barebones “programmer art” version that I could test and alter quickly.

I’d also put a lot more time into designing the back-end system and mocking up the UI. RPGs tend to be information-heavy, and presenting all that information to the player in an easily-digested format is a project itself.

In the end I learned a lot and I have these cool gifs and screenshots to show for it. As I write this a tiny urge builds within me to hit the drawing board again with this idea, this time with the knowledge experience I have now. Maybe one day.