Turn-Based RPG Combat


 I developed this game over the course of 6 months in 2018. It was never my intention to make a full RPG when I started working on this prototype. I wanted to test myself and see if I could make an RPG combat system from scratch, and I wanted to learn how to code AI and thought a turn-based RPG was a good starting point for AI. Rather than making several enemy types that you can just mash attack to beat, each of the encounters is difficult, with meaningful mechanics that the player must learn to deal with. You can play the fights yourself or can see them played start to finish below.


 

Rats

Each individual rat isn’t strong alone, but they have strength in numbers. If a rat’s health is low, they will summon a new rat into the fight. On a summoned rat’s first turn they will use an ability which deals damage multiplied by the number of rats in combat.

The player should focus on ensuring that a rat will not start a turn at low hp or the rats will grow in number, overwhelming the action economy and dealing great damage with their initial attack.

 

There are two types of undead enemies. Zombies have high health and focus on applying debuffs to the party, including the ‘Undeath’ debuff that makes healing spells deal damage rather than healing it. Skeletons are glass cannons that will counter-attack if any party member hits it with a basic attack.

Both types of undead only die temporarily. Upon being dropped to 0 hp, the undead turns into a wisp. The wisp grows in size for 3 turns before the undead comes back to life at full hp. The player should ensure that they kill the undead at roughly the same time or they will soon find themselves fighting a downhill battle.

 

Slimes have 4 elements that they switch between during battle: neutral, fire, lightning and ice. Ice is weak to lightning, lightning is weak to fire, fire is weak to ice. Slimes have very high defense, but low defense against any attack that they are weak to. If a slime is hit by an element, they switch types to that element. In the case that the slime is hit by an element they are weak to, they switch back to neutral.

Each element has a unique move pool, and at the start of each turn the slime will gain a beneficial effect dependent on typing. A neutral slime regenerates some health, electric gains a speed boost, fire gains a damage boost and ice gains a defense boost. The boosts stack, so the player should be focused on managing buffs on a slime during battle. If a slime starts it’s turn at low HP and there is another slime in combat, the slime will sacrifice itself to heal the other slime and apply all of their buffs to the target slime.

 

  • Platform: WebGL

  • Engine: Unity

  • Team Size: 1

  • Role: Gameplay, systems, enemy, & combat design, programming.

Previous
Previous

3D Art

Next
Next

Bat.Wav