Since there is no max value for duration, you can easily save some gas with unchecking the value endTime in the function startGame. As it is impossible to overflow, there is no need to check it and pay the gas for it.
endTime = block.timestamp + duration;
By not stating the value as unchecked, you pay a gas fee for every time the function is called, which you easily can escape.
n/a
Add unchecked for the value.
Strategy to save gas and minimize transaction costs
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.