The gameplay of The Alchemist Code follows certain conventions and mechanics.
Units[ | ]
These are the characters that make up a battle. Player units and enemy units all operate under the same mechanics, the only difference being that enemy units are automatically AI controlled (though running a battle on auto will make your own units AI controlled as well). However, AI scripts can differ from unit to unit.
A unit will have the following that defines it: (Keep in mind these definitions apply to enemies found on the field, as well)
- Character: The character's model, images, voice and backstory.
- Type: Related to species/material/Size/Misc, like "Human, Gigantic, Sub-Demon, Metal'. Some units might also have a sin type (Sloth, Wrath, Lust, etc)
- Gender: Some effects only work on certain genders.
- Origin: The unit's nationality. Some effects only work on units with specific nationalities.
- Element: Determines base weaknesses and resistances to other elements.
- Core Attributes: These are unique to the unit, used as the basis for all attribute formulas.
- Leader Skill: A passive skill that can have an effect on various units in a battle, provided the unit is the party's "leader". For player units, a player may have up to two leader skills: one from the unit in the first slot (the party leader) and one from a hired mercenary (friend unit). Duplicate leader skills can stack. Not every unit has a leader skill.
- Jobs: The jobs available to the unit. A unit also has a "current job", which the job that is currently in use, or deployed in a battle. Jobs available can not be changed for player characters.
- Master Ability: Some units have a unique master ability. Most require a quest to unlock them (typically at level 80).
- Babel War Art: Some units have a unique babel war art skill, which requires a quest to unlock (typically at level 85).
These also define a unit but can be improved on a player unit:
- Rarity: Determines the unit's maximum level, maximum job level and maximum limit break. Some leader skills change at different rarities. This is increased through evolution. Player units always start at a defined base rarity and have a max rarity.
- Level: The level the unit is, which increases base stats and is needed to use more powerful equipment. Increased by gaining experience points after battles or through using apples. Enlightenment can also increase the unit max level.
- Limit Break: The number of LB points the unit has, typically increased by using unit shards. Every point increases the unit's max level and combo stat by 1. Every 5 points unlocks new jobs (at 5 and 15) and additional gear slots (at 10 and 25). At 25 a unit can also access Enlightenment if available.
- Enlightenment: A unit typically has access to several gates of enlightenment at max limit break, each of which can be leveled up to 5 times. This gives additional stats and can give additional improvements at the max level of various gates. Each gate also increases a unit's max level by 2 when unlocked.
- Gear: The gear the unit is currently using, which can increase attributes, add effects to attacks and provide skills (as well as cosmetics for the equipped weapon).
- Memento: The memento(s) the unit is currently using, which can increase attributes, add effects to attacks and provide skills. It can also provide group buffs to the party.
- Truth Seals: A unit can have up to 6 truth seals which increase the stats of a unit and can also provide bonus stats in specific combinations.
- Enlightened Bond: A unit can also gain additional stat buffs from an enlightened bond with other units. This is a very unit shard intensive feature to access and only some unit groups have this available.
- Babel Expedition: Completing the codex for any Babel Expedition will give a specific permanent stat buff to all units you own.
In battle a unit will also have any of the following:
- Current HP: The current health of the unit. It will die if this reaches 0. All units start a battle with their HP at maximum.
- Current MP (Jewels): The mana pool that a unit draws from when using a skill.
- CT (Charge Time): How close the unit is till it gets its turn.
- Skill Use Counts: Most skills have a limited number of uses per battle.
- Buffs/Debuffs: Effects that can increase or decrease a unit's attributes. Any number of buffs and debuffs can be attached to a unit. These can come from active skill effects or passive ones (including leader skills).
- Status Effects: Similar to buffs and debuffs, status effects can change attributes in some way. They also may cause a wide array of changes to how a unit behaves and what it can do. Any number of status effects can be attached.
- Drops: When killed, the player will acquire this. It can be an item and/or an amount of zeni.
Attributes[ | ]
Every attribute will fall under one of these categories: stats, elemental assistance/resistance, status assistance/resistance and bonus parameters. Every attribute on a unit has a base score, plus additional factors that may increase or decrease them.
Stats[ | ]
These are the scores that can be viewed in the unit information screen. Note that different jobs use different stats to calculate their ability damage formulas, although in general Physical Attack is used by most physical damage units and Magic Attack by most magic damage units.
Health Points: The unit will die when this reaches 0. All units start with their HP full. Some buffs can increase Max HP without increasing current HP. | |
Jewels: The mana pool that a unit draws from when using a skill. Also referred to as MP/MPmax. For calculations, MP refers to the portion of MPmax that a unit starts a battle with (also referred to as initial jewels). | |
Physical Attack: Used in most damage formulas. Note: some damage formulas do not use PATK, making the stat useless. | |
Physical Defense: Determines damage reduction when receiving physical attacks. | |
Magic Attack: Used in some damage formulas. Also used to determine healing from skills. Note: some damage formulas do not use MATK, making the stat useless. | |
Magic Defense: Determines damage reduction when receiving magical attacks. | |
Dexterity: Influences attack accuracy (hit rate). | |
Agility: Determines how quickly and how often a unit can take an action (more specifically, affects how quickly a unit's charge time fills up). | |
Critical: Determines how often a unit will land a critical hit when attacking. Note that only basic attacks and attack which explicitly say they can crit can land a critical hit. | |
Luck: Reduces the chance of receiving a critical hit when taking damage. | |
Combo: Determines the chance of activating a combo attack (blue aura). | |
Move: The number of tiles a unit can move. | |
Jump: How high a unit can jump when moving between tiles. |
Elemental Assistance & Resistance[ | ]
Every unit has a single element (which can not change). Additionally, the unit will have an elemental assistance score for each element (such as Fire Assist) and an elemental resistance score for each as well (such as Light Resist).
Elemental resistance will reduce the damage received from attacks by units with that element by 25%, and if the skill is elemental, it can also add/subtract 25% (the two effects will add together, for a total of 50% if both the unit and skill are a resisted element). Elemental assistance in effect reduces the elemental resistance of a defender. Since assist only applies to the unit's element and a unit's element does not change, assist attributes for any other element are in effect, useless. The elemental resistance reduction from a skill is determined instead by its own assist score (not the units).
By this, each unit has each one of these scores:
- Element (the unit's element)
- FireAssist & FireResist
- WaterAssist & WaterResist
- WindAssist & WindResist
- ThunderAssist & ThunderResist
- LightAssist & LightResist
- DarkAssist & DarkResist
List of skills that can Reduce Elemental Resistance
Status Assistance & Resistance[ | ]
A unit may have any of the below status effects applied to it. Each effect may have a value (such as the damage of poison), as well as a turn count (which may be infinite, such as from a Bishop's Regeneration passive).
- Death Sentence: After a certain number of turns, the unit will die.
- A DeathSentence effect can define a DeathTurnCount, which determines the number of turns the units has to live.
- At the beginning of the units turn, the turn count will reduce by one. If it reaches 0, the unit dies.
- Timer does not count down while the unit is in the air from a jump attack or if the unit is afflicted with stone.
- Does not end unless cured or the unit dies.
- Default DeathTurnCount: 3 turns
- Poison: At the end of the unit's turn, it takes damage.
- A poison effect can define a PoisonRate (% of the unit's HPmax) and a PoisonFixed (deal a fixed amount) and will deal the highest of the two.
- For multiple effects, only the highest damage is applied.
- Default Length: 3 turns
- Default PoisonRate: 10% (PoisonFixed is 0 by default)
- Auto Heal: At the beginning of a unit's turn, it will restore HP.
- An autoheal effect can define an AutoHealRate (% of the unit's HPmax) and an AutoHealFixed (heal a fixed amount) and will heal the highest of the two.
- For multiple effects, only the highest healing is applied.
- Default Length: 3 turns
- Default AutoHealRate: 10% (AutoHealFixed is 0 by default)
- GoodSleep: At the beginning of a unit's turn, if the unit is asleep, it will restore HP and Jewels.
- Heals for 10% of HPmax and restores 5% of MPmax.
- No default length is defined.
- Auto Jewel: At the beginning of a unit's turn, it will generate Jewels.
- An autojewel effect can define an AutoJewelRate (% of the unit's MPmax) and an AutoJewelFixed (generate a fixed amount) and will use the highest of the two.
- For multiple effects, only the highest value is applied.
- Default Length: 3 turns
- Default AutoJewelRate: 10% (AutoJewelFixed is 0 by default)
- Disable Heal: Prevents this unit from restoring HP.
- Specifically, reduces healing skills to 0 and disables HP regeneration from AutoHeal and GoodSleep (but still restores Jewels)
- Default Length: 3 turns
- Blind: Reduces a units hit and avoid rates.
- A blind effect can define a BlindHitRate and a BlindAvoidRate which will act as BuffScales for HitRate and AvoidRate, respectively.
- For multiple effects, the effect which gives the highest of this formula will be what is used for the buff:
abs(BlindHitRate) + abs(BlindAvoidRate)
- Default Length: 3 turns
- Default BlindHitRate: -15%, Default BlindAvoidRate: -15%
- Berserk/Confuse: Forces a unit to attack on auto, while augmenting its stats. (Essentially, Berserk)
- A confuse effect can define a ConfuseAtkRate and a ConfuseDefRate which will act as BuffScales for PATK, MATK, PDEF and MDEF, respectively.
- For multiple effects, the effect which gives the highest of this formula will be what is used for the buff:
abs(ConfuseAtkRate) + abs(ConfuseDefRate)
- Default Length: 3 turns
- Default ConfuseAtkRate: 10%, Default ConfuseDefRate: -10%
- Disables: Player control, Combos, Skills, Items
- Rage: Forces a unit to attack on auto, only attacking its rage target.
- Generally, the rage target will be the unit the inflicted the effect.
- Will end if the rage target dies.
- Default Length: 3 turns
- Disables: Player control, Combos, Skills, Items
- Charm: Forces a unit to attack its allies on its turn.
- Will end if the unit takes damage.
- Default Length: 3 turns
- Disables: Player control, Combos, Skills, Items
- Petrify: Skips the units turn.
- The unit is considered dead (but can still be cured, treating it again as alive). In Mystic Tower Veda, any units petrified at the end of the floor will die.
- Does not end unless cured.
- Disables: Player control, Turn from being taken, Combos, Reactions, Dodges
- Sleep: Skips the units turn.
- GoodSleep can cause the unit to heal or restore jewels.
- Will end if the unit takes damage.
- Default Length: 3 turns
- Disables: Player control, Turn from being taken, Combos, Reactions, Dodges
- Stun: Disables the unit from most actions.
- Outside of Roxanne, stuns usually end by the beginning of the units turn, meaning it prevents dodging, reacting, charge skills, etc.
- Default Length: 1 turn
- Disables: Player control, Turn from being taken, Combos, Reactions, Dodges, Charge Skills
- Paralyze: At the beginning of a unit's turn, it has a chance to not be able to move or take an action (but can still change facing direction).
- A paralyze effect can define a ParalyzeRate, which will be the % that the unit can not act.
- For multiple effects, only the highest ParalyzeRate is used.
- Default Length: 3 turns
- Default ParalyzeRate: 80%
- Disables: Movement, Attacks, Skills, Items, Reactions
- Slow: Reduces the number of tiles a unit can move.
- A slow effect can define a SlowValue, which determines how many tiles a unit can move.
- For multiple effects, only the lowest SlowValue is used.
- Since this effect replaces a unit's MOV stat entirely, in theory, it could actually increase the unit's MOV, providing the SlowValue was higher then the unit's MOV.
- Default Length: 3 turns
- Default SlowValue: 1 tile
- Bind: Prevents a unit from moving.
- Default Length: 3 turns
- Disables: Movement
- Daze: Prevents a unit from attacking.
- Default Length: 3 turns
- Disables: Attacks
- Silence: Prevents a unit from using skills.
- Default Length: 3 turns
- Disables: Skills, Reactions
- DisableKnockback: Prevents a unit from getting knocked back from a knockback skill.
- The assist/resist values for this effect are AssistKnockback and ResistKnockback. Unlike most status effects, they do not influence the application of the DisableKnockback effect.
- Instead, these are used to increase and decrease the chance of a knockback of occurring. If the target has the DisableKnockback effect, they will be ignored.
- Does not end unless removed.
- DisableBuff: Prevents a unit from receiving any buffs.
- The assist/resist values for this effect are AssistBuff and ResistBuff. Unlike most status effects, they do not influence the application of the DisableBuff effect.
- Instead, these are used to increase and decrease the chance of a buff from being applied. If the target has the DisableBuff effect, they will be ignored.
- AssistBuff does not seem to be included in the code.
- Default Length: 3 turns
- DisableDebuff: Prevents a unit from receiving any debuffs.
- The assist/resist values for this effect are AssistDebuff and ResistDebuff. Unlike most status effects, they do not influence the application of the DisableDebuff effect.
- Instead, these are used to increase and decrease the chance of a debuff from being applied. If the target has the DisableDebuff effect, they will be ignored.
- AssistDebuff does not seem to be included in the code.
- Default Length: 3 turns
- Disable Support: Prevents a unit from casting non-attack/non-damage skills (reactives included), the opposite of the daze status.
- Default Length: 3 turns
- Stop: Stops CT from increasing, preventing the unit from taking its turn.
- Default Length: 35 Game Clock Cycles
- Disables: Turn from being taken, Combos, Reactions, Dodges
- Quicken: Increases CT change rate by a percentage.
- Removed if delay is inflicted on the unit.
- Default Length: 35 Game Clock Cycles
- Delay: Decreases CT charge rate by a percentage.
- Removed if quicken is inflicted on the unit.
- Default Length: 35 Game Clock Cycles
Like the elements, a unit can have assistance and resistance scores for each status effect. Assistance determines chance of inflicting that status effect on an attack while resistance reduces the chance when receiving an attack.
For More Information[ | ]
- List of skills can Remove/Inflict Status/Buffs/Debuffs
- Skills Applying/Removing Conditions/Status Effects
Alchemic Effects[ | ]
Some units apply Alchemic Effects. These are not considered status effects and are not prevented by status protection. Each effect has a specific way to be removed. Bishop jobs also have a skill to remove these effects.
- Alchemic Overload (Bomb): Inflicts a 3 turn delayed explosion based on how much damage you dealt when you applied bomb.
- Units with 0 jewels are immune to bomb.
- Can stack up to 5 times. If you go above 5 stacks it overwrites the oldest one.
- Removal: Can be dispelled by using up 80% of the jewels you had when bomb was applied to your unit.
- Alchemic Crush (Slip/Bleed): 20% of the damage you dealt when applying Bleed will be dealt repeatedly over every turn (with no turn limit). Reduces physical damage the unit deals by 50%
- No stack limit
- Removal: Can be dispelled by healing your unit 3 times (Auto heal works too, so a unit with auto heal automatically dispels it after 3 turns).
- Alchemia Freeze (Freeze): Freezes your unit (similar to the Stop status effect)
- Duration: 7 Game Clock Cycles (1/5th of the stop duration)
- Removal: Can be dispelled by receiving damage, but any damage dealt to the unit is increased by 50 (works as a mod like All ATK) while frozen.
Unit Type Advantage and Tags[ | ]
Units in the game have types. Some unit abilities, gear, and leader skills specify increased damage against a specific enemy type, such as "Strong vs Machines" or "Strong vs Demons." Other common enemy types include Humans, Monsters, Airborne, Beasts.
On top of these common types, units can have other additional tags that can modify damage when attacked. Those include gender for Humans (Male, Female), material (Metal, Plant), raid-specific types (Gigantic, Eldritch, Holy Beast), miscellany (Undead, Insect, Hybrid, Demi-Human, Templar) and a special Sin type (Envy, Sloth, Lust, Gluttony, Wrath, Pride, Greed).
"Strong vs Sin" modifiers are currently gained by maxing Gate 4 (Gluttony) of a unit's Enlightenment, often +20 against one type and +40 against another. There are also strong vs sin bonuses on Memento Leader Skills.
It's worth noting that units commonly have multiple tags, and attacks against them with corresponding strength modifiers can deal significantly more damage.
Unit attack abilities that specify enemy type modifiers can have varying degrees of strength modifiers:
- "Strong vs Enemy Type": +50
- "Very Strong vs Enemy Type": +80
- "Powerfully Strong vs Enemy Type": +120
These values are labeled as "killerBonus" in the damage formula. On occasion, abilities labeled as "Strong vs Enemy Type" actually have a higher modifier tier, possibly due to a mistranslation.
Bonus Parameters[ | ]
Miscellaneous attributes fall into this category.
- EffectRange: Increases range of attacks and skills. (Note: Does not seem to increase range on melee attacks/skills; Needs confirmation)
- EffectScope: Alters the area of effect the attack/skill hits, as in "5x5 diamond" or "3 (lateral line)"
- EffectHeight: Increases the height range the attack/skill hits.
- Hit Rate: Increases chance to hit.
- Evasion Rate: Increase chance to avoid being hit.
- Critical Rate: Increase chance of landing a critical attack.
- GainJewel: Increases the number of jewels gained when making a normal attack by a flat amount.
- UsedJewelRate: Reduces the jewel cost of skills.
- ActionCount: Unknown
- Guts Rate: Percentage chance of surviving a killing blow (surviving with 1 hp).
- AutoJewel: Generates a fixed number of jewels each turn (not to be confused with the AutoJewel status effect).
- ChargeTimeRate: Reduces CT needed to take a turn.
- CastTimeRate: Reduces the cast time needed to on relevant skills.
- BuffTurn: Increases the number of turns that buffs cast by this unit will last.
- DebuffTurn: Increase the number of turns that debuffs cast by this unit will last.
- CombinationRange: Increases the number of tiles away that a unit can be to be considered for a combo attack.
- HpCostRate: Reduces the hp cost for skills that cost hp.
- SkillUseCount: Increase the number of uses on each skill.
- PoisonDamage: Increases the damage that poison inflicted by this unit will do by a percentage. PoisonFixed is scaled by this value while PoisonRate is added to.
- PoisonTurn: Increases the number of turns that poison inflicted by this unit will last.
Formula[ | ]
For every attribute, the score is determined by the following formula:
FinalValue = (FinalBase + BuffAdds) * BuffScale FinalBase = (BaseScore + BaseAdds) * BaseScales BaseScore = levelScale(UnitBase, UnitLevel) * JobScale
BaseScore[ | ]
For stats (except MOV and JUMP), every unit has a base score, which is scaled according to the unit's level. That number is then multiplied by a value determined by the current job of that unit to give the BaseScore of that unit.
The base value for MOV and JUMP usually are solely determined by the job. Some units may also increase/decrease these values by a flat amount, regardless of job.
Nearly every other attribute has a base value of 0, though some units and jobs can specify other values.
BaseAdds[ | ]
These include flat increases or decreases that add to the BaseScore, including equipment, gear and skins. Nearly every value from equipment, gear and skins will take be a BaseAdd.
Specific to gear: For any given attribute, the add value will be equal to the highest value for that attribute among all equipped gear. This means having two gear that supply PATK will only give the benefit of the highest value (they do not stack).
BaseScales[ | ]
After adding the BaseScore with all BaseAdds, this value is then multiplied by the sum of all the BaseScales. There is no known BaseScales so this is in effect adding 0%.
In theory, the maximum value restriction on gear does not apply to gear with attribute scales.
BuffAdds[ | ]
These include flat increases or decreases that add to the FinalBase from skills and effects. Both passive (including leader skills) and active effects are included. Some attributes act as a percentage so most increases to these will take the form of an add (such as elemental resistance).
BuffScales[ | ]
After adding the FinalBase with all BuffAdds, this value is then multiplied by the sum of all the BuffScales.
Example: The leader skill Pure Water's Trance increases PATK of water units by 30%. A water unit that has this effect as well as a Bard's Song of the Warrior Lv. 1 (Increases PATK by 10%) will have a total BuffScale to PATK of 40%.
Timing[ | ]
Charge Time (CT)[ | ]
In battle, every unit maintained a Charge Time (CT) value which is used to determine when the unit will get their turn. At 100 CT, a unit will get their turn and will be able to move. CT can go over 100, and the unit with the highest CT will get to move first.
Actions[ | ]
On a units turn, 60 CT is automatically deducted. If the unit moves, 20 more CT is deducted. If that unit takes an action (attacking, casting, etc), an additional 20 CT is also deducted.
By not moving and/or not taking an action, a unit can make its next turn come quicker.
Effect Timing[ | ]
Every buff, debuff and status effect has a timing which determines how long it lasts. With the exception of Eternal, every effect will have a turn count, which will cause the effect to expire once it reached 0. The timings determine how the counter is decremented:
- Eternal: The effect lasts all battle (Passive effects are almost always Eternal).
- ActionStart: Counter decrements at the beginning of a unit's turn.
- SkillEnd: Counter decrements after using any skill (including regular attacks).
- AttackEnd: Counter decrements after doing any attack (any skill that can apply damage).
- DamageEnd: Counter decrements after taking damage.
- GutsEnd: Counter decrements after taking fatal damage.
- Moment (Movement): Counter decrements after the unit moves (or is moved).
- ClockCountUp: Counter decrements after each game clock advancement (see below).
Game Clock[ | ]
When the battle first begins, as well as after any unit ends their turn, the game checks the highest CT of every unit in the battle. If that value is at least 100, that unit will then take its turn. If no unit can take its turn, the game clock is advanced by 1.
Advancing the game clock has these effects:
- Every unit increases its CT by its AGI/10. (This number is rounded to the lowest 0.1, AKA you can have 46.5 CT)
- If a unit has the Stop status effect, its CT does not increase.
- If a unit has the Quicken status effect, the CT increase is scaled up by 50% times the Quicken status effect value.
- If a unit has the Delay status effect, the CT increase is scaled down by 50% times the Delay status effect value.
- All buffs, debuffs and status effects with an effect timing of "ClockCountUp", reduce their turn count by 1, expiring if necessary.
- Some units do not spawn at the beginning of the battle. Instead, they can be set to spawn after X game clock advances.
Casting[ | ]
When a skill with cast time is casted, a "spell unit" is created, when the "spell unit's" CT reaches 100, the spell is cast. The AGI of the spell unit is equal to the spell's cast speed, indicated beside the use count in game. Note that cast speed is NOT related to the caster's AGI, but status effects (Stop, Quicken, Delay) can influence the cast speed. The CastTimeRate bonus param will reduce the total CT needed for the spell unit. For example, a CastTimeRate of -40 will reduce the CT needed for the spell down to 60.
Amount of Starting Jewels[ | ]
Starting jewels are based on these factors:
- Maximum Jewels: Depends on unit, unit's job, job equipment, gear, mementos and skills.
- Initial Jewels:
- Percentage of maximum jewels: each job has a different base percentage- typically magical units start at full jewels and most physical units are at a fraction of their maximum jewels (Job Quick Reference)
- Some gear, mementos, skills can give additional initial jewels
- Starting jewel formula:
- Starting jewels = total maximum jewels * percentage of maximum jewels + initial jewels
Attack Attributes[ | ]
Attribute Legend:[ | ]
Any damage skill, will usually have a combination of three main attributes which are categorized as Damage, Power Type, and Element:
You can see which of these attributes a skill has, at the top left corner of the skill.
"Magical Damage" indicates that it can be reduced by MDEF, but it ignores PDEF
"Missile Type" so it benefits from "Missile ATK Power" modifiers
"Light Element" indicates if the skill gains additional element modifiers
Other skills may have a different combination of attributes, but they all show "damage / power type / element" attribute symbols, unless it's a "non-typed" skill (which won't have symbols)
*** In-game wording can be confusing; the "Attack Type" will determine which "Power Modifiers" an attack will benefit from. Meanwhile the "Attack Damage" will determine if it's reduced by MDEF, or PDEF"
*Even if an attack does Magical damage, it still needs to have the symbol for "Magic Power" to benefit from "MATK Power"
Attack Modifiers[ | ]
With the exception of "Other" attacks (such as a Bard's attack), a unit has 3 bonus modifiers for each ATK Type:
- ATK Power Up: Multiply the damage of that attack type by a percentage. (ex: Slash ATK Power Up)
- Resist: Reduces the damage of that attack type by a percentage. (ex: Missile Resist)
- Avoid: Gives a chance to evade that attack type by a percentage. (ex: Magic Avoid)
Other-type attacks do not use these parameters.
For a list of some skills which modify attack type resistances, see Resist Skills.
For a list of some skills which buff/debuff attack types, see Buff Skills.
Damage Formula[ | ]
Here is some psuedo-code detailing how damage is calculated. Credits to Xores for decoding this:
FinalDamage: if JewelAttack: sqrt(SkillPower)*2 else: SkillPower*(100% - defender.resistDmgType) SkillPower: skillDamage*(100% + atkMod) - defStat*(100% + defMod) 0, If result < 0 skillDamage: if scaling: skillEffect*attackBase if adding: skillEffect+attackBase if fixed: skillEffect skillEffect: skillEffectValue + Random(0, skillEffectRange) + EffectHpMaxRate*hp/maxHp + EffectMpMaxRate*mp/maxMp + EffectDeadRate*numOfDeadUnits + EffectGiantRate*max(defender.lvl - attacker.lvl, 0) attackBase: Uses skill formula depending on job or skill Generally skillAttack * attackerStat / 10 defStat: PDEF or MDEF, if skill is Physical or Magical atkMod: attacker.bonusDmgType // Bonus to Pierce attacks, for example + unitElementBonus // attacker.assist[attacker.element] - defender.resist[attacker.element] + skillElementBonus // skillElementValue - defender.resist[skill.element] + killerBonus // Bonus to machines, for example + heightBonus + comboBonus // 50% per additional unit defMod: skill.ignoreDefenseRate + skillPositionDefenseRate // For skills like sneak attack when attacking from side or back + heightBonus heightBonus: if skill.usesHeightBonus: +5%/-5% or -5%/+5% for atkMod/defMod depending on relative height of attacker and defender else: 0 If the skill is a suicide skill: Scale skillEffectValue by attacker.hp/attacker.maxHp then add standard skillEffect random and bonuses Calculate skillDamage Add attacker.hp/2 to skillDamage
Special Attack References[ | ]
Combat Power[ | ]
The in-game calculation for total power for a unit uses the following formula:
HP / 10 + AGI * 5 + All Other Stats (PATK, PDEF, MATK, MDEF, DEX, CRIT, LUCK)
This calculation includes any equipped gear, mementos, passives, truth seals, etc, as long as they affect the stats on the character screen (so on map abilities will not be included).
Total combat power for an element just adds the power of each unit you have of that element. For the requirements of accessing the Elite Door quests, you must only reach that total combat power once to qualify, you do not need to be at that power when you do the quest.
Gear[ | ]
Attack skills on gear only proc from basic attacks unless otherwise specified. Stats on gear/memento which give +status effect (i.e. charm, poison, etc.) apply to all attacks.
Other Mechanics Guides[ | ]
How Crit, Avoid and Damage work (cut and paste from wayback machine):
I will go intensively into how these are calculated. For the damage formula this means that I will mention some mechanics that are not in the game yet too.
- I will mark every factor that is not out yet in green.
- Factors that already exist but that are randomly assigned, out of your control, will be cyan.
- Multiplications will use the operator x.
- Normal attacks will be referred to as AAs (=auto attack).
- LS = Leadership skill
Damage FormulaThe formula consists of 3 parts, with c being the final damage.
a = Atk x Skill-multiplier + explosionDMG
b = (a x Addition - Def) x Atk-TypeRES x EleFullDef x crit - float
c = b x ReactiveGuard - ShieldAbsorb
- Atk = The base damage calculated from the formula of the skill or normal attack (e.g. a Sniper with 420 Patk and 400 Dex will have 420x0.7+400x0.7 = 574 base damage on their normal attack).
- Skill-multiplier = multipliers from skills (e.g. Othima's WA has 180%, so insert 1.8) - explosionDMG = Exclusive to Prinny, who deals extra damage if his current HP is high. - Addition = A factor that consists of many sub-factors, as follows:
- Single&AoE Attack-/Res-Bonus gives +/-1% per point, from certain gear or skills
- FullEleAtk = gives +1% per point if same element as the FullEleAtk (from EnchanterJEs and KaiganLS or Forecaster passive)
- SpecialEleBonus = extra dmg if used vs certain element (mostly from JE and Kaigan and)
- Element bonus of up to +/-50% (25% from unit elements, 25% from skill elements)
- -1% per point of target's EleResistance from e.g. Teddy or Divine Shelter
- Atk-Type Boni: +1% per point of e.g. StrikeAtk bonus for attacks with Strike Atk type.
- HeightBonus = +/-5% damage (only for AAs)
- Race-Bonus = e.g. +50% dmg vs plants
- Combo = +25% dmg per combo-trigger (only for AAs)
- Def = calculated using either Pdef or Mdef depending on which damage type hits you, following this formula:
Pdef/Mdef x (100%+Reactivebonus) x (100%+ignoreDef + SideIgn.Def+BackIgn.Def+height Difference)
* ReactiveBonus = some reactives e.g. HKStance+2 gives 50% extra defense during the hit.
- ignoreDef reduces def by amount ignored, from certain skills. Side or back attacks also partly ignore defense.
- Height Difference = -5% Def of defender if attack from above/+5% of defender if attack from below (only affects AAs)
- Atk-TypeRES = e.g. JumpRES,MagicRES,MissileRES,StrikeRES,SlashRES,counterRES that gives resist to certain attack type. - EleFullDef = Defense % for specific element units - crit = If you trigger a crit, your damage is randomly increased by multiplication of any number between 1.1 to 1.5 (for 110% to 150% extra damage) - float = reduction of 1-10 random damage if your dmg is higher than 1 - ReactiveGuard = e.g.Machinist/Illya/Stocke/Fiona/Alphonse's Guard Reactive is total damage reduction in % - ShieldAbsorb = DamageReductions from skills that reduce hits X amount of times (sometimes with a max. amount of dmg absorbable)
Crit Chance
(sqrt(CRIT)x2 - sqrt(D.Luck)/2) + HeightCrit + CritRate
* CRIT = One of the visible unit stats. Can be increased from weapons, items or passives (e.g. Scorpio Bracelet)
- CritRate = from Weapon, LS, Nensou, Skills, some Items (e.g. Chloe's LS)
- sqrt = square root of what is inside the brackets
- D. = the defender's stat (e.g. D.Luck = defender's Luck)
- A. = the attacker's stat
- HeightCrit = +/-5% if higher/lower
Note: Only AAs and some physical skills crit. Avoidance ChanceThere are 2 types of avoidance.
- Avoid: avoids magic and physical attacks with a chance, based on the formula:
4 + (D.Agi-A.Dex/2)x(12/100) + sqrt((D.Level - A.Level)/2) + AvoidBonus - HitBonus
*AvoidBonus = Usually from passives, skills or gear (e.g. Dodge Scarf)
- HitBonus = from Gear, passives or skills (e.g. Ranger's Deep Focus passive)
Note: Attacks from the side are supposed to give +25% HitBonus, from the back +50% - Dodge: dodges every specified damage type (even sure-hit skills) with the given chance.
Note: Some dodge-skills only dodge physical attacks (e.g. Perfect Evasion passive), others dodge every type of attack (e.g. Mystic Eyes passive).
Last edited: Jul 14, 2018
- How Crit, Avoid and Damage work (Dead Link)
- Charge Time Planning (Google Doc)
Ocy’s Special Little Damage Calculation Corner[ | ]
A slightly easier to read version of the formula.
Definition of variables:
A= unit’s scaling stat * calculation formula (e.g. if a sword unit has 1000 patk and 1.4 scaling, this value would be 1400. If a katana unit has 800 patk, 400 dex, and 200 agi at lv99 with .9 scaling, this value would be .9(800+200/2+200*99/100 +400/4) or 1078.2)
D= a unit's defense value. This is usually just the flat pdef/mdef stat, however for a unit with a Defend guard this gets multiplied by 1+the %increase (e.g. Chloe with Holy Knight Stance +3 and 1500 pdef this value would be (1+1.5)*1500 or 3750) This value is also affected by defense ignoring skills/attacks. (e.g. the same Chloe was attacked from behind, causing 15% of her def to be ignored, making the value of D be 1500(1+1.5)*(.85) or 3187.5)
- It is important to note that even with the same reaction, if the same Chloe was hit by a magic attack this calculation would instead use her mdef- (let us call this 800) put into the same formula resulting in a final value of 2000 rather than the value of 3750 derived earlier.
R= A unit’s resistance value. Any attack type resistances (e.g. Slash, Pierce, Nontype, ect), distant defenses (ie Tokyo Revengers collab units), damage control reactives (e.g. from the Machinist job, Illyasviel, Nidhogg, Toudou, ect), and all defense fall under this category. Since this value is multiplicative, each instance has to be recorded separately and is subtracted from 1 (e.g. if a unit has 20 slash res, a 35% dmg control react, and 15 all defense, the R value is (1-.2)*(1-.35)*(1-.15) or .442)
For this reason if a unit can by some means get 100+ of a weapon type mod resist or 100+ all defense, any damage will be reduced to 1 even if it would have dealt 999999 or some other arbitrarily high value
- It is worth noting that elemental resistance (e.g fire, water, wind, thunder, dark, light) and aoe/st resistance do not fall into this category. Therefore gaining 100+ of these will not necessarily reduce incoming damage to 1.
Flat damage:
A*Skill scaling%
A fairly simple enough calculation. In practical terms this describes a unit (let us use that sword unit from earlier, only now call it Vettel) with 0 slash attack, 0 fire mod, and no unit type mods hitting an opposing unit with 0 defense, a neutral elemental matchup (e.g. thunder, light, or dark), 0 fire resistance, and no resistances. Let us say our skill has a 150% attack modifier, we now deal 1.4*1000*1.5 or a whopping 2100 damage!
However since this is a rather far fetched scenario in practice, we must add a few elements to make our calculation slightly more accurate
Adding in our attack mods:
A*Skill Scaling%*(1+Attack Mod Sum)
Let us assume you have now equipped your Vettel with his VCR, The Scarlet Flame Guard's Sword - White-Silver (what a mouthful). This sword gives Vettel, among other things, 15 fire attack. But what does this mean? In plain mathematical terms, this grants +.15 to our Attack Mod Sum or AMS.
In other words, with the same match-up as before, the calculation now becomes 1.4*1000*1.5*(1+.15(fire attack)) - this single piece of equipment has increased our damage to 2415! However our AMS is incredibly versatile, and this fire mod is far from the only thing baked into our formula.
Pretend we now have a fully built Vettel. This means, among other things, we now have 50 slash power, the 15 fire mod from before, 25 strong vs wind, and 10 area attack. Our 150% skill is also fire element now, and we are using it on a wind enemy- with the same stats as before. What do we do? Well since each of these is part of our AMS, we can simply plug these into the formula:
1.4*1000*1.5*(1+ .5 (corresponding to slash power)+ .15 (fire attack) + .25 (strong vs wind) + .1 (area attack) + .25 (fire unit attacking wind unit bonus) + .25 (fire skill attacking wind unit bonus))
Or 5250 damage!!
However, our opponent has now gotten a bit trickier and instead of 0 fire resistance they have 15, and instead of 0 area attack resistance they now have 20! So what do we do now? These also gets added to our AMS- but negatively!
1.4*1000*1.5*(1+ .5 + .15 + .25 + .1 + .25 + .25 - .15 (fire resistance) -.2 (area attack resistance))
Or 4515 damage- quite a bit lower than that previous 5250.
Subtracting Defenses:
A*Skill Scaling%*(1+AMS)-D
This is a relatively straightforward addition to our calculation. We simply subtract off the value of the enemies’ defense. Let us assume our enemy learned from our last encounter and now has built up a shocking 800 pdef! They have also decided to equip a guard skill- Holy Knight Stance+2, which- when it activates- grants an additional 50% defense.
Our calculation now looks like so:
1.4*1000*1.5*(1+ .5 + .15 + .25 + .1 + .25 + .25 - .15 - .2)- (800*(1+.5))(pdef times guard %)
Resulting in 3315 damage instead of 4515.
- Side note: the visible effect of defenses (pdef/mdef) drastically decreases as damage increases, especially after resistance is applied, so it is generally considered less important to invest into these stats.
Resistance Scaling:
(A*Skill Scaling%*(1+AMS)-D)*R
We now multiply our value up to this point by R, or the multiplicative resistance value of the defender. Since we last fought with our enemy, they have once again strengthened themselves with 30 slash resistance and 15 all defense. This means our damage calculation is now
(1.4*1000*1.5*(1+.5 +.15 +.25 +.1 +.25 +.25 -.15 -.2)- (800*(1+.5))*(.7) (slash resistance)*(.85) (all defense) or 1972.425 damage- distinctly less than our original 5250.
Fortunately for us, we also happened to crit with our attack, and rolled the full crit value of 1.5x! This also gets factored into our formula here in the same way with the crit value also being multiplied in to our calculation
(1.4*1000*1.5*(1+.5 +.15 +.25 +.1 +.25 +.25 -.15 -.2)- (800*(1+.5))*(.7)*(.85)*(1.5)(crit value)
Meaning we now deal 2958.6375 damage, still managing to get that annoying pest out of our way
- it is worth noting that each weapon type resistance only works against the corresponding attack type. Even if our enemy had 150 pierce resistance, that would have no bearing on this calculation as it is a Slash type attack
Shields:
(A*Skill Scaling%*(1+AMS)-D)*R- Shield Value
- it is important to note that any % based shield should be included in the resistance scaling section (e.g. High Kanon) and this only applies to capped hp valued shields
But If all those resistances weren't enough, our enemy has even deployed a shield! This shield has a total of 1000 hit points and reduces damage by half the incoming value. In other words, if our attack dealt 1000 damage, after the shield it would only deal 500, leaving the shield with 500hp remaining. Our damage calculation now looks like
(1.4*1000*1.5*(1+.5 +.15 +.25 +.1 +.25 +.25 -.15 -.2)- (800*(1+.5))*(.7)*(.85)(1.5)-1000(shield value)
Or 1958.6375 damage- leaving us wide open to retaliation
- It is important to note that in this case if the shield had, say, 4000 hp, it would only reduce our damage by roughly 1500 rather than the full 4000, however the enemy would still have a shield with ~2500 hp remaining.
- If that same 4000 hp shield was a -100% shield instead of a -50%, it would reduce the incoming by the full 2959 damage, and be left with only 1041 remaining
- It is additionally worth noting that any “absorb” damage ignores shields entirely- (e.g. Dark Cavalier’s Blood Drain, or Acht’s Skimming) including jewel drain skills. This applies to ALL shields, not just fixed hp ones.
Some final notes for damage value intricacies:
For an auto attack (AA), height plays a factor and is added to the AMS, +5% (or .05) for being above the enemy, +0% for being at the same height, and -5% (or -.05) for being below the enemy
The AA also benefits from Combo, the blue smoke that surrounds a unit- especially when it starts the turn close to allies: which is +25% (or .25) per unit that contributes to the combo (Added to the AMS).
High Elemental units get .35 as opposed to the usual .25 added to the AMS for elemental advantage (a total of .7 if both the unit and skill are Super Effective) and only lose .15 as opposed to the usual .25 for an elemental disadvantage (a total of -.3 if both the unit and skill are not very effective)
- This is the same defensively, with an adventagous elemental attack only adding +.15 (a total of .3 if both the unit and skill are Super Effective) and gaining .35 for an elemental advantage (a total of -.7 if both the unit and skill are not very effective)
- This also means that any interactions between 2 high units function as normal (.25 for effectiveness)
If a unit has a negative resistance value, it is treated as subtracting a negative- in other words, addition. (e.g. a flying unit with -50 shot res will have an R value of (1-(-.5)) or 1.5- the same as a max roll crit)
Alchemy Freeze additional damage is treated as a elemental res drop, and is therefore added to the AMS with a value of .5
If a skill scales based on the unit’s hp (e.g. Dark Cavalier’s Retribution Blade) it uses the Skill Scaling% associated with the percentile of hp the unit is in. (e.g. Retribution Blade has a 125% mod at full hp and a 140% mod at <1% hp)
Some attacks have unique damage scaling (ie: Diviner wind hp nukes) and use the value of A that corresponds to the set amount of damage (e.g. a diviner with 2000/4000 hp remaining would have a A value for their missing hp nuke of 2000) but this value is still modified by all of the other values in the formula
For units with a defense ignore >100%, the value of D becomes negative- and more negative the more defense you have- thereby increasing damage proportionally to the defense (e.g. Irene with her -400% defense skill vs Chloe with a D value of 3750: 3750(1-4)=-11250, in other words increasing her damage by 11k)
Set damage panels bypass the formula entirely and simply deal the amount stated (still affected by R)
Set damage attacks (usually reactives that deal a certain % of dmg taken) also bypass most of the formula (still affected by R)
Jewel attacks take the final damage value, find the square root of the value, and multiply that by 2 (e.g. final damage of 100, sqrt(100)=10, 10*2=20 for 20 jewel damage)
A unit with Guts will not reduce the damage taken, but will have its hp set to 1 after the attack resolves- so be wary of any reactive reflects/absorbs on a unit with guts
Multihit attacks use the same formula UP TO the shield calculation point. The final damage is then divided by the number of hits (e.g. Zehn's WA Time Funeral which calculates damage using a 168% (1.68) skill modifier before being divided by 5 for the damage of each hit)
- it is worth noting that each hit of a multihit attack can crit/trigger a defensive react/miss separately however if looking for the easiest possible damage calculation (i.e. each hit rolls a max crit independently/each hit triggers the react separately) these values can simply be multiplied to the base damage calculated before division per hit
Any damage calculated to be <1 before applying shield reduction is set to 1, damage is never negative
Damage Rounds according to basic rounding rules- up for .5 and above and down for below .5
- All amounts prior to final damage calculation are truncated (ie cut-off after the decimal)
Actual damage is increased by a random number from 1-10 before shields are applied, causing some slight variation in actual damage output- however this is near negligible
Final Formula:
(A*Skill Scaling%*(1+AMS)-D)*R- Shield Value