Created
August 14, 2018 12:07
-
-
Save ruzli/971bdc02347aa19801085e1af15e6dd1 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const baseBet = 100 | |
const target = 2 | |
const resetTargetAt = 10 | |
const resetTargetTo = 2 | |
const betMultiplier = 0.5 | |
const increaseTargetEvery = 1 | |
const TargetProfit = 2000 | |
const dontLoseThan = 500 | |
const repeatBetTimes = 2 | |
const engine = this | |
let _baseBet = baseBet | |
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() | |
//if (this.balance - betSize(lossCount) < dontLoseThan){} | |
// if (betSize(lossCount) > 50 * 100){ | |
// lossCount = 1 | |
// } | |
// let lossRepeat = lossCount / repeatBetTimes +1 | |
// if (lossRepeat <= 0){lossRepeat = 1} | |
const {multiplier} = await this.bet(betSize(lossCount), _target) | |
if (multiplier < _target) { // loss | |
incLose++ | |
if (incLose >= increaseTargetEvery ){ | |
_target = _target + betMultiplier | |
incLose =0 | |
if (_target >=resetTargetAt ){ | |
_target = resetTargetTo | |
_baseBet = (_baseBet+100) | |
incLose = 0 | |
} | |
} | |
lossCount++ | |
this.log(`Lost bet. new bet size of ${betSize(lossCount)/100}.`) | |
} else { /* [WINS] */ | |
incLose = 0 | |
_baseBet = baseBet | |
lossCount = 1 | |
if (lossCount <= 1){ | |
lossCount = 1 | |
} | |
gong() | |
incLose = 0 | |
_target = target | |
this.log(`Won bet. Setting bet size to ${baseBet/100}.`) | |
} | |
} | |
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 just did your profits, terminating script`) | |
stopGame() | |
} | |
if(balance / 100 <= dontLoseThan){ | |
engine.log(`Stopper triggered script to terminate`) | |
stopGame() | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment