new damage calculation formula seems nice. I can see necessary tweaking when gear stats are decided. the basePower system is like a simpler FFXIV potency system that uses decimals. it's a scale of 1 to 10 with floating point values.

fire bolt = 1 basePower
hailstone = 0.6 basePower

damage = Math.floor(
Math.floor(
basePower x (primaryStat + secondaryStat x 0.3) x attackMultiplier - defenseStat x 0.5) x
(0.9 + Math.random() x 0.2)
) x target.damageTakenMultiplier
)

mage primary and secondary stats are INT & SPI. SPI scaling skills are calculated differently - not with this equation.