To learn the most about battles, always turn on battle logs! (owo battlesetting logs=link).
I’ve learned 50% of what I know today, just from logs.
Other sources of learning include Helper bots, as some of them also have logs and can help you simulate & understand matchups better.
Otherwise, just talking with experienced players is a great resource, as the community is super helpful and always happy to explain mechanics.
There are 2 types of battles: friendly battles (owob @user) and random battles (owob).
When doing a friendly battle, the challenger will always go second, in random battles, however, they will always go first.
The way that owo does random battle matchmaking is by generating a random ID and checking what team correlates to that ID.
Which means that you mostly battle old and inactive teams, not the actively played ones.
When a user gets their team deleted, that ID is no longer available and gets rounded up when checked.
This is super rare, but when it happens, another team would be twice as common to encounter in battles.
Each battle is split into 24 turns.
Each turn is split into pre-phase, main-phase, and end-phase.
Firstly canAttack gets checked, which will determine whether your pets will be able to act this turn.
This returns false for dead pets and for pets with the
freeze debuff applied.
canAttack getting determined this early in the turn, means that even if your pet is un-frozen or revived later in the turn, it still won’t be able to act.
Then, during the pre-phase only, pets holding a
Shield or
Banner might act.
If a pet is holding a
Shield but has no active
Taunt Buff, then the pet will use its shield, casting said buff.
For
Banner the logic is slightly different, it will cast if it has no
AttackUp Buff or if the
AttackUp it has, were to expire after this turn.
This is where the real magic happens! Damage is dealt, health is healed, and more! 
During the main phase, all pets act in alternating turns:
if a pet is dead or its canAttack is false, its turn is skipped, but the order will stay the same,
i.e., two pets of one team might act after one another.
Position is incredibly important because of this ordering.
Poison,
Flame,
Celebration.
(but
Freeze duration is reduced elsewhere)
Hgen procs, healing its holder.
Wgen also procs, replenishing its holder.After everything has resolved, all buffs and debuffs marked for removal are cleaned up.
Only after the Turn has ended, does the Battle Snapshot you see in the Logs get made.
Example: You’d think my Tank didn’t have
this turn, but that’s incorrect.
It had
throughout the whole turn, but only after the turn has ended, does OwO show the Battle Snapshot.
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 !