I had the idea in my head to create a late 90s era JRPG in which the various characters, instead of teaming up into a single party and spanking monsters to death with their swords, all had such wildly different fighting styles that each had his own combat system completely different from the other characters. Combat encounters, I imagined, would shift at unpredictable intervals to the perspective of different characters in the fight, who had drastically different objectives and ways of achieving them.
I set out brainstorming a handful of different characters: a fencer, an archer, a knight, a general, a witch, a ninja. Each had his own set of commands and his own set of stats which only applied to his kind of fighting. With a suitably disparate collection of character types, I moved on to the task of designing a rough combat sequence for each, starting with our fencer.
Now, I had always been interested in the concept of a combat system not based on armor and hit points, but on combatants’ balance and tempo, that is who is in control of the melee’s rhythm. I had a lot of ideas going into this about how the fencer would play but very few and very vague ideas about how any of the other characters would and the more I dove into the intricacies of the fencer’s combat system, the less I even cared about the rest of the party.
After coding, compiling, and thoroughly playing the heck out of a duel.cpp, I came to ask myself how, if the game were to have a dozen or so unique and intricate combat systems, would a player, or a programmer for that matter, wrap his mind around all of them enough to play or write the game well and not come to loathe the parts of the game focusing on anything but his favorite characters.
So, I revised the game’s basic concept to allow every character to participate in the fencing combat system but to also have a support mode. For the most part, characters will want to take on the bad guys in a series of contained one-on-one fights. Any characters left over without an enemy to square off with can be assigned to support another character.
For example, suppose our paladin and our scout (formerly our knight and archer) run into a lone troll while traveling the wilderness. We could choose to have the paladin engage the troll front-line with his great sword, leaving the scout in back fire arrows and set traps, or whatever it is that type of character ends up doing in the final iteration of the game, or we can put the scout on front-line with his dual short swords, leaving the paladin in the back to cast healing and protective magic. Later, when an angry wolf joins the fray on the troll’s side, we can decide to either have the support character move up and engage the wolf, or we can leave the party as is, with the front line character attempting to fight both enemies. Or we might even have chosen to have both characters swing their swords at the troll from the get-go.
The combat styles of the characters, the types of monsters being fought, and the environment in which the battle takes place all modify the efficiency of various arrangements. The scout, for example, might have a front-line advantage against beasts, and a small advantage when fighting multiple opponents, but he might also find his archery of much better use when he can safely firer over the paladin’s head at the troll which towers over his human adversaries. Likewise, the paladin might fight best when he’s going toe-to-toe with a larger foe, but have penalties against innocent or neutral creatures like our wolf.
Monsters, being less special than the player characters, would have set roles. Monsters like Trolls and Wolves will always step up to the front-line position, while Mages or Spitting-Lizards, will always want to support their bigger allies.
A typical combat encounter would go something like this…
Introduction: You will get a quick look at the monsters you’re up against, possibly with some sort of bad ass pose for boss fights. We then move into the assignment phase.
Assignment: monsters will already be sorted out into support/front-line combinations. You will get to assign each of the characters in your party to a front-line monster as a front-line fighter, or to one of your already assigned characters in a support role. After you finish assigning all of your characters, we move into a recurring combat phase.
Combat: In most cases, this will boil down to a series of one-on-one duel between two front-line combatants. Though there will be situations where extra characters will exist on either side of the fight, we won’t worry about that for now. The first thing we’ll do is take a pair of dueling front-liners who have not yet been exhausted (see below) and their support and pit them against each other in a Round. If all of the characters are exhausted, we instead remove the exhausted condition from all non-KOed characters and try again. If all of the characters on one side of the fight are KOed, we instead move to the End phase.
Round (Initiative): At the start of a round, Initiative will be granted to one side or the other by means of a die roll heavily modified by the Tempo of the fight. If the Tempo is currently in your favor, you will be much more likely to win Initiative, though at the start of the fight, the Tempo will probably be even resulting in a virtual coin-toss to determine Initiative.
Round (Support): With Tempo decided, all support characters will choose their actions, be they spells, ranged attacks, or even flanking around to backstab the enemy’s support. Once support actions are selected, they either take effect immediately, or they will wait for a specific trigger. A paladin’s heal spell, for example, will be used as soon as the character he is supporting takes damage.
Round (Melee): Next, the front-line fighter who currently has initiative will choose an attack mode to use, and his opponent will choose a defense mode. Depending on the types of modes selected, and a bit of chance, the Tempo of the fight may shift slightly in either direction, and either of the defender or the attacker might get hit and take damage. The Round (Melee) phase then repeats two more times. At the end of the third Round (Melee), the attacker can either Pass, allowing a new round to start with different fighters, or Press and continue attacking his opponent. Different types of attacks and defenses will deplete the users Balance by different amounts, with the goal generally being to conserve as much balance as possible so that you can unleash a series of attacks when you have the Initiative. Running out of Balance will prevent the character from acting at all and will probably cause him to lose a substantial amount of the Tempo. If any character takes sufficient damage, he will be KOed. When a front-line combatant is KOed, one of his support characters must be nominated to move up and take his place and, in the case of monsters, will likely fair poorly at this. If the combatant with Initiative chooses to Press, or if we haven’t yet completed our third Round (Melee) step with these combatants, just repeat this step. If the combatant with Initiative chooses to pass, we move on to Round (Recovery).
Round (Recovery): The non-KOed front-line combatants gain back a bit of their balance, and become Exhausted. If any characters exist who are not Exhausted, we can now move back to the main Combat step and pick a different pairing of front-line combatants, and their support.
End: If all of the monsters are KOed, the party gains whatever reward was involved (treasure, experience, plot progression, etc). If, on the other hand, the player characters are all KOed, you will get a nice sad Game Over type ending. That is not to say a YOU LOSE screen and/or a message asking whether to load your most recent save, but a real Ending showing exactly what bad consequences befall the world shortly after the heroes’ demise… followed most likely by a message asking whether to load your most recent save.