Normal behavior: To be able to "claim the Throne", the user should not already be the "King".
Problem: In this code the require() condition with : msg.sender == currentKing only allows users already King to claim the Throne, then no one will ever be able to claim it.
https://github.com/CodeHawks-Contests/2025-07-last-man-standing/blob/main/src/Game.sol#L188
Likelihood: High
It will occur everytime the function is called because at the beginning of the game currentKing in equel to address(0). It means there is no way msg.sender will ever be equal to address(0) and then the Throne won't ever be claimed.
Impact: High
Impossible to claim the Throne, ever.
No one can play the game.
Replace the condition within require() with msg.sender != currentKing.
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.