Skip to content

Instantly share code, notes, and snippets.

@ruzli
Created August 14, 2018 12:05
Show Gist options
  • Save ruzli/e82b9ff924ecb41d273782fbdb0cff39 to your computer and use it in GitHub Desktop.
Save ruzli/e82b9ff924ecb41d273782fbdb0cff39 to your computer and use it in GitHub Desktop.
const baseBet = 100 // how many satoshis to bet initially
const target = 2 // target multiplier
const TargetProfit = 300000
const dontLoseThan = 2500 // Stopper
const betMultiplier = 1
const engine = this
let lossCount = 1
let _target = target
let incLose = 0
this.log(`Starting martingale with a base bet of ${baseBet} satoshis.`)
while (true) {
checkConditions(this.balance)
collectSound()
const { multiplier } = await this.bet(betSize(lossCount), _target)
if (multiplier < _target) { /* [LOSS] */
incLose++
if (incLose >= 4 ){
_target = _target + betMultiplier
// if (_target >=20){_target = target}
incLose = 0
}
lossCount++
this.log(`Lost bet.`)
} else { /* [WINS] */
incLose = 0
lossCount = 1
if (lossCount <= 1){lossCount = 1}
gong()
incLose = 0
_target = target
this.log(`Won bet.`)
}
}
function betSize(lossCount) {
let bet = baseBet * lossCount
return bet
}
function gong() {
const audio = new Audio("https://bustadice.com/5bb187b7ef764e76fb519939f77288c1.mp3")
audio.play()
return new Promise(resolve => audio.onended = resolve)
}
function collectSound(){
const audio = new Audio ("http://kz-developer.ru/sounds/chipsHandle6.wav")
audio.play()
return new Promise(resolve => audio.onended = resolve)
}
async function generateSeed(){
const { server_seed_hash } = await engine.newSeedPair()
engine.log(`Server seed: ${server_seed_hash}`)
try {
const clientSeed = randomSeed()
await engine.setClientSeed(clientSeed)
engine.log(`Seed was set to: ${clientSeed}`)
}
catch(e){
engine.log(`Client seed already was reset and not used`)
}
}
function randomSeed(){
const words = ['Ze3foA1gAlpha ','Zefo3AG3B2r2a3qtwvo ','Zefo3AG313Charlie ','ZefoA22G3Delta ','Zef3o1GEcho ','ZefoA22G5oxtrot ','ZefoAG34G223tewlf ','Ze1o5A3GHotel ','ZefoA3dda ','Ze5f3Auliet ','ZefoAGK3agalo ','ZefoAG24rqwima ',
'Zef5oAG2Mrhe ','ZefoAG52ovember ','Ze67foGOscar ','Zefo3A45apayww ','Zef44A2Quebec ','ZefoAG433omeo ','ZefoA4GSierra ','ZefoA41GTngo ','ZefoA445GUniorm ','Ze37oGVictor ','ZefoA33W4hiskey ','ZefA3G4oXay ','Zef4Gpooper ','ZefoA3GZulu ']
return words[Math.floor(words.length * Math.random())] + words[Math.floor(words.length * Math.random())] + words[Math.floor(words.length * Math.random())]}
async function stopGame(){
await engine.stop()
}
function checkConditions(balance){
if(balance / 100 >= TargetProfit){
engine.log(`You reached target profit of ${TargetProfit}`)
stopGame()
}
if(balance / 100 <= dontLoseThan){
engine.log(`Your balance limit of ${dontLoseThan}, was reached. Stopping script`)
stopGame()
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment