In the North American build, an attack hits when the displayed hit is greater than the average of two random numbers from 0 to 99, rounded down; each number scales a 16-bit NextRN() by 100/65,536. | src/rng.c L68–70src/rng.c L89–93src/bmbattle.c L1007–1011src/bmbattle.c L879–882src/bksel.c L260 | Code |
| Computed from the code, taking the two numbers as independent and evenly spread, a displayed hit connects times in 10,000 up to 50 and times above it, so a displayed 80 hits 92.2% of the time, 20 hits 8.2%, and 50 hits 50.5%. | src/rng.c L89–93 | Code |
| In the North American build, a unit's hit is twice its skill, plus its weapon's hit, half its luck, and the weapon triangle's bonus; its avoid is twice its attack speed plus its terrain's avoid and its luck; the hit shown and rolled is the attacker's hit less the defender's avoid, held within 0–100. | src/bmbattle.c L577–586src/bmbattle.c L599–607src/bmbattle.c L476–487src/bmbattle.c L642–651 | Code |
| In the North American build, a unit's crit is its weapon's crit plus half its skill, plus 15 for classes with a crit bonus; the crit shown and rolled is that less the defender's luck, at least 0, and one random number from 0 to 99 below it triples the hit's damage. | src/bmbattle.c L588–597src/bmbattle.c L612–618src/rng.c L85–87src/bmbattle.c L1030–1039src/bmbattle.c L883src/bksel.c L243 | Code |
| In the North American build, the weapon triangle gives 15 hit and 1 damage to the side whose weapon type has the edge and takes the same from the other; swords beat axes, axes lances, and lances swords, and anima beats light, light dark, and dark anima. | src/bmbattle.c L39–55src/bmbattle.c L1911–1917src/bmbattle.c L527 | Code |
| In the North American build, a reaver weapon on one side only reverses the weapon triangle and doubles it, to 30 hit and 2 damage. | src/bmbattle.c L1899–1904src/bmbattle.c L1923–1927 | Code |
| In the North American build, damage is attack less defense, where attack is the weapon's might plus the triangle's damage bonus, tripled when the attacker or its weapon is effective against the target (doubled instead when the effective weapon is one of eight legendary weapons), plus the attacker's strength, and defense is terrain defense plus Defense, or terrain resistance plus Resistance against magic; no roll changes it except two skills, Pierce (which sets defense to 0) and Great Shield (which sets the damage to 0); a critical triples it, and the result is held within 0–127. | src/bmbattle.c L511–517src/bmbattle.c L527–557src/bmbattle.c L1022–1028src/bmbattle.c L1030–1039src/bmbattle.c L1043–1047include/bmbattle.h L16–17 | Code |
| In the North American build, a battle runs the attacker's round, then the defender's counter, then one follow-up round by the unit whose attack speed beats the other's by 4 or more; attack speed is speed less the weapon's weight beyond constitution, at least 0. | include/bmbattle.h L13–14src/bmbattle.c L743–749src/bmbattle.c L766–771src/bmbattle.c L563–574 | Code |
| In the North American build, a level-up rolls each of seven stats on the character's own growth rate, with one random number from 0 to 99; each full 100 of a rate is a sure point, and if no stat rises, the game rerolls the stats in order up to twice, stopping at the first that does. | src/bmbattle.c L1227–1238src/bmbattle.c L1275–1281src/bmbattle.c L1299–1304 | Code |
| In the North American build, a non-player unit placed with autoleveling, unless it is a boss or its character number is below 0x40, adds to each stat one roll on its class's growth times its levels above 1, moved at random by up to an eighth of that product either way. | src/bmunit.c L617–638src/bmunit.c L823–827src/bmunit.c L776–779src/bmbattle.c L1241–1242 | Code |
| In the North American build, a player unit whose HP reaches 0 in combat is flagged dead and hidden rather than erased, unless it is a phantom, which is erased; the cleanup between chapters keeps the flag, clearing it only for a class with the supply attribute. | src/bmmind.c L510–517src/bmunit.c L958–967src/bmio.c L1249–1255 | Code |