The random number is generated using cryptographically secure functions, making it practically impossible to predict.
I just take a look to the code and find the random number generator.
function getRandomNumber(
uint256 minValue,
uint256 maxValue
) public returns (uint256) {
require(minValue < maxValue, 'Invalid range');
// Pseudo-random number generation
uint256 randomNumber = ((
uint256(
keccak256(
abi.encodePacked(
seed,
blockhash(block.number - 1),
block.coinbase,
block.timestamp,
block.difficulty,
msg.sender
)
)
)
) % (maxValue - minValue + 1)) + minValue;
// Update seed for next use
seed = randomNumber;
return randomNumber;
}
And to get the main seed you use:
seed = uint256(
keccak256(abi.encodePacked(block.timestamp, block.difficulty, msg.sender))
);
So, the round result is based on the current block, and if I'm not wrong that information is accessible to anyone, I'm not an expert on the topic, but you should have a server seed generated by the site on a random way, and not based on public information.