Damage Formula
VBFI’s damage formula can be found in data\gamesystem\datas\CalcUnit.tjs, line 102.
|
|
The full formula is therefore: ( (2*Attack+5) * sqrt(AttackersHP)) / (defense + 5 + sqrt(Land)). Attack very quickly outpaces defense in this game. To survive, you must use skills to their fullest extent, such as Defense Only, or Hardy Physique.
Counterattack Formula
|
|
Counterattacks are nearly identical to attacks, except counter-attacks only do 1/3rd damage.
End of Turn Formula
End of Turn, which is used for spells (like Fire Field or Dark Blast), as well as healing (such as Equitable Heal or Group Heal) is also found in data\gamesystem\datas\CalcUnit.tjs, line 124
|
|
The only two values that matter are HP of the unit, as well as the SkillValue. All skill values are added together. So if you have Group Heal 3 and Group Heal 7 and 500 HP, you’ll restore 60HP to all of your non-undead allies. 50HP from being 10% of your current HP (500), and then +10 from the +value in the formula.
Unit Formulas
|
|
|
|
|
|
Here we can see the growth of unit stats, specifically HP, Attack, Defense, Speed, and Morale.
HP Grows by 25% of the level1 HP. For example, a unit with 100 HP at level 1, will have 125HP at level 2, and then 150 HP at level 3.
We see that “Level = sqrt(experience/10)” + 1, and we see that Attack/Defense/Speed stats grow at sta_ = sta_ + (int)((sta_ * Math.sqrt(Exp_)/200) + (int)(Math.sqrt(Exp_)/25)), with a cap at 999. A unit that starts with 40 Attack at level 1 (Ex: Tyrca) will gain roughly .63 attack per level from the base stat, as well as +.12 attack from the Math.sqrt(Exp_)/25 portion of the formula.
Or to put it another way: unit stats grow approximately BaseStat/63.24 + .1265 per level.
Unit Cost Formula
|
|
|
|
This one is a bit more complicated. “Rank” for all units starts at 10, and by equipping various prefix or suffix titles, the rank increases. “Cost” is the value found in the unit tables, the value is quadratic, increasaing the cost by x2 causes the total price to grow by x4.
char_statick_cost adjusts the cost downward by “ch_", which happens to be loyalty. 100 loyalty means that the cost will only be 25% of the original, leading to significant (but difficult to calculate) savings. Be sure to max the loyalty stat by firing units and rehiring them after 100 Valor.
The total cost in food (or energy) to deploy a unit is (rank+5) * (cost+2) * (cost+2) / 10 + (level*5). Those 13-cost units are very, VERY expensive to deploy!
Unit Caps Formula
|
|
With sqrt(exp)/10 +1 converting exp to level, we get the following table:
Growth Class | Level Cap |
---|---|
S | 150 |
A | 140 |
B | 130 |
C | 120 |
D | 110 |
E | 100 |
F | 90 |
G | 80 |
A unit’s final stats are proportional to their level (or the sqrt of their experience). A unit with mediocre initial stats can get a decent boost by reaching level 140, or 150, while units with very high initial stats are often Growth Class D or E, reducing their final potential over multiple playthroughs.
You cannot reach the level cap in one normal mode playthrough. So these level caps are for planning New Game+ teams over the course of many playthroughs.