Skip to content

Instantly share code, notes, and snippets.

@XclusiveDigital
Forked from dsetzer/climb3-v1.5-dice.js
Created March 21, 2020 14:40
Show Gist options
  • Save XclusiveDigital/1e9e8d7d099995ddce281a8f8027e65d to your computer and use it in GitHub Desktop.
Save XclusiveDigital/1e9e8d7d099995ddce281a8f8027e65d to your computer and use it in GitHub Desktop.
Upgrade from climb-v2 script with more customization, compounding, and halving feature for bustadice.
var config = {
baseBet: { label: 'Base Bet', type: 'balance', value: 1000 },
minPayout: { label: 'Target Min', type: 'multiplier', value: 1.08 },
maxPayout: { label: 'Target Max', type: 'multiplier', value: 50.00 },
divPayout: { label: 'Target Div', type: 'multiplier', value: 0.80 },
compRate: { label: 'Compound %', type: 'multiplier', value: 0.02 },
compStep: { label: 'Compound At', type: 'multiplier', value: 1.10 },
betSpeed: { label: 'Bet Speed', type: 'multiplier', value: 100 }
};
let baseBet = config.baseBet.value, basePayout = config.minPayout.value, rate = config.compRate.value;
let currentBet = baseBet, currPayout = basePayout, lastPayout, baseMulti = 1.005, betMulti = 1.006;
let startBal = this.balance, lastBal = startBal, nextBal = startBal * config.compStep.value, comp = 0;
const sleep = (ms) => { return new Promise(r => setTimeout(r, ms)); }
for(;;){
const result = await this.bet(Math.round((currentBet + comp) / 100) * 100, currPayout);
this.log(`Status (BaseBet: ${baseBet / 100} bits, Comp: ${comp / 100}, Rate: ${rate * 100}%)`);
if (result.multiplier < currPayout){
if(currPayout >= config.maxPayout.value){
lastPayout = currPayout, currPayout *= (1 - config.divPayout.value);
currentBet *= (lastPayout / (currPayout - 1));
}else{ currPayout += baseMulti, currentBet *= betMulti; }
}else{
currPayout = basePayout, currentBet = baseBet;
if(this.balance >= nextBal){ omp = 0, nextBal = (lastBal * config.compStep.value)
}else{ omp = (this.balance - lastBal) * rate, lastBal = this.balance; }
}
await sleep(config.betSpeed.value)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment