With the first stages of the movement and dungeon mechanics working, the time has come to have think about the battle mechanics. As mentioned before, I’m pretty keen to get some card fighting in there; the build part can come later, but for now I’d like to get a turn based system where the player can:
- Enter ‘battle mode’
- Engage in battle with multiple enemies.
- Damage, Heal and Buff
- Cycle through a deck of cards
- Arrive at an outcome.
Setting these up will ensure a good pathway forward for future iterations and development.
1. Entering Battlemode
This is a fairly simple concept, the player should be travelling along and then enter into a battlemode. This should;
- Be pronounced – the player should know they are in a battlemode.
- This pronunciation can be achieved audibly by changing the music/playing an SFX.
- Other pronunciations will occur, that are discussed further, in this post.
- Disable movement until the battle is concluded.
- Fairly self explanatory, the player can’t move until the battle has concluded.
- Change the UI
- UI cards should popup
- Enemies UI elements should popup.
- Health
- Next Move
- Attack
- Defend
- Buff
- Player UI elements should popup
- Health
- Attack Points
- Buffs
- Debuffs
- Cards Left
- Have the enemies pop up in front of the player.
- For now just have three slots, however this will need to be able to accommodate more or less (remember odd and even numbers).
Below is an example of what this screen could look like:
These concepts can be expanded upon, but for now; these will form our need for a basic card battle.
2. Engage in Battle/Enemy Cycles
As mentioned, there should be three enemies that the player can battle. This needs to be scalable.
Each enemy can access the following actions:
- Attack – Attacks the player
- Defend – Builds a defensive resistance to the players next attack
- Buff – Increase the attack of a random enemy.
- Heal – Heal the most damaged enemy.
The attack patterns of each enemy can be predetermined, depending on their ‘class’. For now we will put in three classes:
- Attacker; Cycles between ‘Attack’ and ‘Defend’.
- Healer; Cycles between ‘Buff’ and ‘Heal’
- Tank; Cycles between ‘Defend’, ‘Buff’ and ‘Attack’.
Each enemy can only make one move per turn. This will be revisited when buffs are expanded.
On top of the UI mentioned previously
- A damage counter should be added in the event that the enemy is damaged.
- A red screen should flash when the player is hurt.
- A damage counter should be added in the event that the player is damaged.
3. Cycling the Deck
Each turn, the player is handed a new deck of cards. Each new hand is a maximum of four.
On top of the UI elements mentioned above, there needs to be a little icon and number, showing the amount of cards left in the player’s deck. (Bottom Left)
At this point of the project, the count is redundant. However, this will be relevant when ‘one use’ cards are introduced.
4. Outcome
There are two available outcomes at this point;
- The player dies and a game over screen is displayed
- The player loses all progress
- They can only restart or exit the game
- The player wins
- The movement controls are restored.
Down the track, the player should be rewarded for winning each battle, however at this stage of the project we just need the player to be able to continue on.