You start with the main character himself, and you will end up with six total playable characters at the end. You can only choose four characters to participate in a battle, and you can place them anywhere you want in the 3x3 grid. You can change their positioning in the overworld menu, but you cannot change their positioning in battle.
Arthur and Wendy are locked to your team, but the other two characters are up to you to pick. Characters that are not on your team will be walking around in the town scene, just like normal NPCs. You can talk to them and ask them to join your team, which also means that you have to drop one character that is already on your team. Characters that are on your team will not be visible in the overworld.
Turns will be determined by the characters’ spd values. The higher spd value the character has, the quicker the character can move. Every character will get to move once before one character gets to move for the second time.
Skills can deal either physical or magical damage, and that is dependent on the character’s setting. Each skill also has an attack range. It can be either straight line, vertical line, diagonal line, cross, or all. Straight-line means that the skill attacks everyone on the same y coordinate as the target. Vertical-line means that the skill attacks everyone on the same x coordinate as the target. Same idea for diagonal-line, cross, and all. The attack ranges are also dependent on the character’s setting. For example, Arthur is a swordsman, his skills will be mostly straight-line skills. Some other character, who could be a mage, his/her skills will be mostly all and cross. Wide-range skills will have less power than narrow-range skills. Physical skills deal consistent damage, whereas magical skills deal heavy damage and damage goes down as MP drops. Magical skills also have special effects, which include stun, freeze, burn, etc.
Burn - lose health over time
Freeze - unable to move
Poison - lose health over time
Mute - unable to use skills
Blind - Dex goes down
Confuse - player cannot control the character and the character will attack a random target. This character can attack an ally or attack an enemy.
Physical/magical reflect shield - reflects a certain percentage of the damage you received to the character who attacked you. This damage is true damage, meaning the target will receive exactly the same damage as you did.
Health regeneration - target's health recovers by a certain amount every turn
Stat Change - increase/decrease Str, Def, Mgs, Mdf, Spd, or elemental reduction by a certain amount temporarily.
Status Conditions - apply a certain status condition to your selected target
Status Conditions Canceler - cancels a certain status condition that your selected target has
Heal - health your selected target
Random modifier is a random number between 0.85 and 1. If the attack is a critical hit, this modifier becomes a random number between 1.1 and 1.25.
If damage is less than 1, set the damage to 1.
When an attack is made (attack or skill), it first checks to see if the attack is hit. Then it checks to see if the attack is a critical hit. Lastly, it calculates the damage.
Attack damage = (attacker.str - target.def) * random modifier.
Physical skill damage = (1.1 or 0.8) * (attacker.str - target.def) * (0.5 or 0.8 or 1.2) * random modifier + (skill power * 10).
Magical skill damage = (1.1 or 0.8) * (attacker.mgs- target.mdf) * (0.5 or 0.8 or 1.2) * random modifier + (skill power * 10).
Final damage = (1 - elemental damage reduction) * physical skill damage or magical skill damage
If your character base type is the same as the magic type, use 1.1. If not, use 0.8
If your skill type is countered by the target's base type, use 0.5. If your skill type is the same as the target's base type, use 0.8. If your skill type counters the target's base type, use 1.2.
Skill power is specific to each skill.
Final damage = (1 - skill type elemental damage reduction) * the skill damage. If the skill type is fire, use 1 - fire damage reduction. If the skill type is water, use 1 - water damage reduction.
Attacker has a str value of 999.
Target has a def value of 100.
Damage = (999 - 100) * modifier = 899 * modifier.
Attacker has a str value of 999 and a base type of fire.
The skill type is fire, and the power is 10.
Target has a def value of 100, a base type of water, and a water damage reduction of 10%.
Skill damage = (1.1) * (999 - 100) * (0.5) * modifier * (10 * 10).
Final damage = (1 - 0.1) * skill damage.
Once mage characters are out of MP, they have to use a potion to recover their MP, or else they can’t deal maximum damage.
This is also the “punishment” for using magical skills. In most RPGs, you have to wait for a turn before you can use magic, or you have to skip a turn after using magic. For our game, you have to use a potion every now and then, or else you can’t deal maximum damage.