The function RapBattle::_battle()
can incorrectly emit the Battle event in a particular case.
In the event, the defender wins if random is strictly less than his skill level.
But, after the event is emitted, the if block uses a <= to determine the winner.
So, if random happens to be equal to the defender skill level, the event will emit the incorrect winner.
The users and the off-chain detection tools will register the incorrect winner.
Simply change the chech condition inside the event to match the correct one used after it:
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.