After a pet uses a weapon, it goes through three main steps to calculate the total damage:
All three of these steps are done for every Attack, Heal, or Replenish,
but for simplicity they will only be referred to as Attacks or Damage in this section.
Each step will be followed by the example math for a level 50
Eagle holding a

The first step for any attack involves only two numbers:
STR or
MAG for attacking weapons),
).Since the passives
Strength and
Magic are calculated into the base
STR/MAG stat, these are also accounted for during this step.
BaseDamage = STR × WeaponModifier
BaseDamage = (50 × 13 + 100) × 1.6
BaseDamage = 1200
After base damage is calculated, a random ±50 damage is added.
OwO will pick a random number from -50 to +50 and add it, then it will round to the nearest whole number.
For simplicity, we will be assuming that OwO picked the random number 0, so 1200 is still our total damage to this point.
There are many modifiers that can add and subtract from the base damage.
These factors are categorized into four distinct groups:
Attack Up)
Defense Up)
PR /
MR
Safeguard,
Tether, and
Leech)These are done step by step, and any increase or decrease to damage is based on the total of the previous step.
Positive Modifiers include
,
,
,
,
,
,
, and
.
Each of their buffs is based on the total of the Base Damage done.
In our example, the damage will go through
.
AfterPosModifiers = BaseDamage + (BaseDamage × Modifier)
AfterPosModifiers = 1200 + (1200 × 0.25)
AfterPosModifiers = 1500
Note that you can add as many + (BaseDamage × Modifier) terms as you need, adding them all onto the Base Damage.
Negative Modifiers include
,
,
,
, and
.
These are stacked multiplicatively, with passives always going before buffs, multiplying on top of the previous step (Positive Modifiers).
In our example, the damage will go through
Taunt and 1 stack of
Resonance.
AfterNegModifiers = AfterPosModifiers × (1 - Modifier)
AfterNegModifiers = 1500 × (1 - 0.5) × (1 - 0.1)
AfterNegModifiers = 675
Note that you can add as many × (1 - Modifier) terms as you need, multiplying them with your current result.
Resistance is the most basic of all of the steps,
simply reducing damage from the previous step by the res % shown on owoteam.
It is important to note that res is rounded as shown, with no decimals after the %.
In our example, the damage will go through 60%
PR.
AfterRes = AfterNegModifiers × (1 - Resistance)
AfterRes = 675 × (1 - 0.6)
AfterRes = 270
Finally comes Redirect Modifiers, which send the damage intercepted to something else.
There are only three Redirect Modifiers,
,
, and
.
These are stacked multiplicatively, with passives always going before buffs, multiplying on top of the previous step (Resistance).
In our example, the damage will go through
Safeguard and
Tether.
FinalDamage = AfterRes × (1 - Modifier)
FinalDamage = 270 × (1 - 0.4) × (1 - 0.4)
FinalDamage = 97.2
Note that you can add as many × (1 - Modifier) terms as you need, multiplying them with your current result.
This section is currently under construction!
Please contribute to the site, we need all the help we can get!! <3
Think it’s too difficult? A marathon is also tough, but it’s just a thousand steps— and each step is easy!
Let me show you the first step and you can continue from there.
If you have questions about how our code works, or how Github works,
feel free to message me on discord @hsse !