Bustabit Script – Game Timer V1.1

The Game Timer script is very useful for long term and large odds. You can schedule and run automatically as you want.





You can start automatically for after a few hundred games. type the start script and payout, then set the now start or schedule to start. After you win or loss the game if you want to automatically stop the script or you can program to continue.

 

Watch the case study video.

 

 

Change Log

Ver.1.1

  • Losing mode added

 

        
var config = {
    ScriptTitle: {
        type: 'noop', label: ' Crash.Bet Game Timer v1.1'},
    baseBet: {
        value: 100,
        type: 'balance',
        label: 'Bet :'
    },
    payout: {
        value: 2,
        type: 'multiplier',
        label: 'Payout:'
    },
    stop: {
        value: 1e8,
        type: 'balance',
        label: 'Stop if bet >'
    },
    begin: {
        value: 'nowBegin',
        type: 'radio',
        label: 'Start mode',
        options: {
            nowBegin: {
                type: 'noop',
                label: 'Start Now'
            },
            waitBegin: {
                value: 200,
                type: 'multiplier',
                label: 'Waited Game:'
            },
        }
    },
    win: {
        value: 'stop',
        type: 'radio',
        label: 'Wins',
        options: {
            stop: {
                type: 'noop',
                label: 'Stop when you win'
            },
            continus: {
                type: 'noop',
                label: 'continue when you win'
            },
            wait: {
                value: 200,
                type: 'multiplier',
                label: 'waited Game:'
            },
        }
    },
    loss: {
        value: 'stop',
        type: 'radio',
        label: 'Loss',
        options: {
            stop: {
                type: 'noop',
                label: 'Stop when you loss'
            },
            continus: {
                type: 'noop',
                label: 'continue when you loss'
            },
            wait: {
                value: 200,
                type: 'multiplier',
                label: 'waited Game:'
            },
        }
    }
};


log('Script Runing...');

var currentBet = config.baseBet.value;
var lastGame = engine.history.first();
var cashedAtGame = new Array();


if (config.begin.value === 'nowBegin') {
    engine.bet(roundBit(currentBet), config.payout.value);
    log('Game begin, Bet:', currentBet / 100, 'bit Payout:', config.payout.value);
    engine.on('GAME_STARTING', onGameStarted);
    engine.on('GAME_ENDED', onGameEnded);
} else {
    console.assert(config.begin.value === 'waitBegin');
    cashedAtGame[0] = lastGame.id + config.begin.options.waitBegin.value;
    engine.on('GAME_ENDED', againStart);
    log('initialization scheduled, Will start after ', config.begin.options.waitBegin.value, ' games')
}


function againStart() {
    var beginGame = cashedAtGame[0];

    if (engine.history.first().id === beginGame) {
        log('Game begin, Bet: ', currentBet / 100, 'bit Payout: ', config.payout.value);
        engine.removeListener('GAME_ENDED', againStart);
        engine.on('GAME_STARTING', onGameStarted);
        engine.on('GAME_ENDED', onGameEnded);
    } else {
        log(beginGame - engine.history.first().id, 'games left to launch...');

    }
}

function onGameStarted() {
    engine.bet(roundBit(currentBet), config.payout.value);

}

function onGameEnded() {
    var lastGame = engine.history.first()

    // If we wagered, it means we played
    if (!lastGame.wager) {
        return;
    }

    if (lastGame.cashedAt) {
        if (config.win.value === 'stop') {
            engine.removeListener('GAME_STARTING', onGameStarted);
            engine.removeListener('GAME_ENDED', onGameEnded);
            log('You won the game. game stopped')
        } else {
            if (config.win.value === 'continus') {
                currentBet = config.baseBet.value;
            } else {
                console.assert(config.win.value === 'wait');
                cashedAtGame[0] = lastGame.id + config.win.options.wait.value;
                engine.removeListener('GAME_STARTING', onGameStarted);
                engine.removeListener('GAME_ENDED', onGameEnded);
                engine.on('GAME_ENDED', againStart);
                log('You won the game, after the next ', config.win.options.wait.value, 'games')
            }
        }
    } else {
        if (config.loss.value === 'stop') {
            engine.removeListener('GAME_STARTING', onGameStarted);
            engine.removeListener('GAME_ENDED', onGameEnded);
            log('You loss the game. game stopped')
        } else {
            if (config.loss.value === 'continus') {
                currentBet = config.baseBet.value;
            } else {
                console.assert(config.loss.value === 'wait');
                cashedAtGame[0] = lastGame.id + config.loss.options.wait.value;
                engine.removeListener('GAME_STARTING', onGameStarted);
                engine.removeListener('GAME_ENDED', onGameEnded);
                engine.on('GAME_ENDED', againStart);
                log('You loss the game, after the next ', config.loss.options.wait.value, 'games')
            }
        }
    }

    if (currentBet > config.stop.value) {
        log('You have reached the maximum bet, the game is stopped.');
        engine.removeListener('GAME_STARTING', onGameStarted);
        engine.removeListener('GAME_ENDED', onGameEnded);
    }
}

function roundBit(bet) {
    return Math.round(bet / 100) * 100;
}



To help with the continuity of our site and better features, you can donate. Thank you for your support.



How to donate


| #bustabit | #bustabit script