The claimThrone
function should allow new players to overthrow the current king by paying the required claim fee, implementing the core "king of the hill" game mechanic.
The function contains inverted logic that only allows the current king to claim the throne again, preventing any new players from participating after the first claim.
Likelihood:
After the first successful claim, all subsequent claims by different players will revert
Every new player transaction will fail at the second require statement
Impact:
Game becomes permanently stuck with the first king
Core "king of the hill" mechanic is completely non-functional
Contract becomes economically useless after first interaction
All future participants are locked out of the game
Player A calls claimThrone() and becomes the first king (currentKing = Player A)
Player B tries to claim throne with sufficient ETH
Transaction fails at require(msg.sender == currentKing) because Player B ≠ Player A
Only Player A can call claimThrone() again, but error message contradicts this
Game is permanently broken
Fix the inverted logic:
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.