Pages:
Author

Topic: Seuntjie' Dice bot programmers mode discussion. - page 20. (Read 125390 times)

HCP
legendary
Activity: 2086
Merit: 4361
You have three possible states...

1. Base betting, waiting for a streak of losses
2. Betting high after 200 rolls under 99.34
3. Betting low after 200 rolls over 0.66

So you set the flags accordingly...

1. bettingHigh = false, bettingLow = false
2. bettingHigh = true, bettingLow = false
3. bettingLow = true, bettingHigh = false

You can then check things like:

Code:
  if lowcount > 200 then
    if bettingHigh then
      #we're already rolling high, so just keep counting
      ... Do other stuff? ...
    else
      #found a streak, and not currently betting, game on!
      chance = 0.66
      bethigh = false
      nextbet = previousbet * 1.00074
      bettingLow = true
    end
  elseif highcount > 200 then
    if bettingLow then
      #we're already rolling low
      ... Other stuff? ...
    else
      #found a streak
      chance = 0.66
      bethigh = true
      ... Etc etc etc
    end
  end

Hopefully that gets you moving in the right direction Wink
newbie
Activity: 28
Merit: 0
Quote
They're just made up variables.... You can call them wherever you want...

In this case, they're what is known as a Boolean or True/False "flag" used to indicate a specific state...

Are we "betting high"?  Yes or No? Etc

Code:
  if highcount > 100 then
    chance = 0.66
    nextbet = previousbet*1.00725
    bethigh = true
    bettinghigh = true
  elseif lowcount > 100 then
    chance = 0.66
    nextbet = previoubet*1.00725
    bethigh = false
    bettinglow = true
  end

How would I define bettinghigh and bettinglow flags before the "function dobet()"?

Do I put like

Code:
bettinghigh = betting>=99.34
bettinglow = betting <=00.66

??


Quote
You will probably need to put in checks on the "bettingHigh = true" and "bettingLow = true" flags or you might find it switches from one to the other if both high and low hit 200+ streaks


I not sure how checking bettinghigh and bettinglow stops from both high and low bets from switching when both are over 200. Could you explain the logic a bit more?

Thank you.
legendary
Activity: 1007
Merit: 1000
They're just made up variables.... You can call them wherever you want...

In this case, they're what is known as a Boolean or True/False "flag" used to indicate a specific state...

Are we "betting high"?  Yes or No? Etc

With regards to the if/elseif/else question: www.tutorialspoint.com/lua/if_else_statement_in_lua.htm

They're useful for identifying a specific condition when you have multiple options...

Ie. (If) Is it blue? (elseif) Or red? (elseif) Or green? (elseif) Or yellow? (else) Or none of those colours

If the terms aren't familiar to you, then I suggest you read some basic programming tutorials and the ones that Seuntjie wrote, specific to the bot: https://bot.seuntjie.com/ProgrammerMode.aspx


There is nothing called elseif.
Yes, there is... Tongue

Not a LUA guy.  Just play one on the interweb...  Tongue  I did not know that.  So you can have multiple elseif's and they get treated something like a select statement in other languages.  Learn something new everyday.  Thanks. 
HCP
legendary
Activity: 2086
Merit: 4361
They're just made up variables.... You can call them wherever you want...

In this case, they're what is known as a Boolean or True/False "flag" used to indicate a specific state...

Are we "betting high"?  Yes or No? Etc

With regards to the if/elseif/else question: www.tutorialspoint.com/lua/if_else_statement_in_lua.htm

They're useful for identifying a specific condition when you have multiple options...

Ie. (If) Is it blue? (elseif) Or red? (elseif) Or green? (elseif) Or yellow? (else) Or none of those colours

If the terms aren't familiar to you, then I suggest you read some basic programming tutorials and the ones that Seuntjie wrote, specific to the bot: https://bot.seuntjie.com/ProgrammerMode.aspx


There is nothing called elseif.
Yes, there is... Tongue
legendary
Activity: 1007
Merit: 1000
PS. when should I use "elseif" instead of "if"
     What is "bettinghigh", "bettinglow" true/false ? What do they do?

https://steemit.com/dicebot/@seuntjie/dicebot-programmer-mode-tutorial-1-1-variables

It doesn't say anything about "elseif"

and "bettinghigh"?

What's the difference between "bethigh" and "bettinghigh"?



   There is nothing called elseif.  it's an
if
else (this is optional)
end
 
 statement.  But you can nest them so you could have

if
else
   if  <- this is only checked if the upper "if" failed. 
   end
end
 
 You can also have
if
  if
  end
else
  if
  end
end


bettinghigh is something you made up, so you will have to tell us what it means. 

bethigh (true/false) is how you tell the program how you want the next bet placed.  bethigh = true (bet high) = false (bet low)

 
newbie
Activity: 28
Merit: 0
PS. when should I use "elseif" instead of "if"
     What is "bettinghigh", "bettinglow" true/false ? What do they do?

https://steemit.com/dicebot/@seuntjie/dicebot-programmer-mode-tutorial-1-1-variables

It doesn't say anything about "elseif"

and "bettinghigh"?

What's the difference between "bethigh" and "bettinghigh"?

legendary
Activity: 1717
Merit: 1125
PS. when should I use "elseif" instead of "if"
     What is "bettinghigh", "bettinglow" true/false ? What do they do?

https://steemit.com/dicebot/@seuntjie/dicebot-programmer-mode-tutorial-1-1-variables
newbie
Activity: 28
Merit: 0
You could just create a 2nd "betcount" variable... and do the check and increment on that as well... so instead of betcount, use lowCount and highCount...

Code:
lowcount = 0
highcount = 0
...
function dobet()
...
  #check and reset on wins etc
...
  if lastBet.Roll < 99.34 then
    highcount += 1
  else
    highcount = 0
  end
  
  if lastBet.Roll > 0.66 then
    lowcount += 1
  else
    lowcount = 0
  end

  if highcount > 100 then
    chance = 0.66
    nextbet = previousbet*1.00725
    bethigh = true
    bettinghigh = true
  elseif lowcount > 100 then
    chance = 0.66
    nextbet = previoubet*1.00725
    bethigh = false
    bettinglow = true
  end

end
You will probably need to put in checks on the "bettingHigh = true" and "bettingLow = true" flags or you might find it switches from one to the other if both high and low hit 200+ streaks


One last thing... the "max expected" loss streak for that chance over 1,000,000 rolls is something like 1400-1500... so don't be too surprised when you suddenly hit a crazy 1000+ losing streak and find you've lost 0.1 BTC+ on your martingale #justSaying Wink



Hi, Thank you for the response on my script!!

I've been working on my script all night long and I succeeded to count both ways. Here is my improved script.


Code:
chance = 50
basebet = .0000002
highcount = 0
lowcount = 0
nextbet= basebet
bethigh = false

function dobet()

if highcount>200 and win then
chance = 50
nextbet= basebet
bethigh=false
highcount=0
end

if lowcount>200 and win then
chance = 50
nextbet= basebet
bethigh=true
lowcount=0
end

if lastBet.Roll <99.34 and lowcount<200  then
highcount +=1
end

if lastBet.Roll >=99.34 then
highcount = 0
end

if lastBet.Roll >00.66 and highcount<200 then
lowcount +=1
end

if lastBet.Roll <=00.66 then
lowcount = 0
end

if highcount >=200  and lowcount <200  then
chance = .66
nextbet = previousbet*1.00725
bethigh = true
end

if lowcount >=200 and highcount <200  then
chance = .66
nextbet = previousbet*1.00725
bethigh = false
end

end



end



However, when the martingale is triggered after 200 count, the other side stop counting at 199 so that I don't trigger the martinale on the high side while low side martingale is in action.

How could I make the other side keep counting yet it doesn't trigger the martingale to other side?

And when that is possible, Let's say after a win on a martingale on the low side, the high side has accumulated count of 400 counts, then I want to go into the high side martingale right away with the increased basebet amount that would have been betted if it was triggered at 200 count.

so when the accumulated count is 400, then I want it to start the martingale at higher bet amount instead of the basebet.


PS. when should I use "elseif" instead of "if"
     What is "bettinghigh", "bettinglow" true/false ? What do they do?

Thank you for the help!!



HCP
legendary
Activity: 2086
Merit: 4361
You could just create a 2nd "betcount" variable... and do the check and increment on that as well... so instead of betcount, use lowCount and highCount...

Code:
lowcount = 0
highcount = 0
...
function dobet()
...
  #check and reset on wins etc
...
  if lastBet.Roll < 99.34 then
    highcount += 1
  else
    highcount = 0
  end
 
  if lastBet.Roll > 0.66 then
    lowcount += 1
  else
    lowcount = 0
  end

  if highcount > 100 then
    chance = 0.66
    nextbet = previousbet*1.00725
    bethigh = true
    bettinghigh = true
  elseif lowcount > 100 then
    chance = 0.66
    nextbet = previoubet*1.00725
    bethigh = false
    bettinglow = true
  end

end
You will probably need to put in checks on the "bettingHigh = true" and "bettingLow = true" flags or you might find it switches from one to the other if both high and low hit 200+ streaks


One last thing... the "max expected" loss streak for that chance over 1,000,000 rolls is something like 1400-1500... so don't be too surprised when you suddenly hit a crazy 1000+ losing streak and find you've lost 0.1 BTC+ on your martingale #justSaying Wink
newbie
Activity: 28
Merit: 0
Hi, I made my first script from watching tutorial youtube and other guides.

What it does is it searches for 200 rows of number < 99.34 while rolling 50% at 10satoshi. (This is because 10 satoshi gives me faster speed)

When it reaches 200 rolls It changes the chance to .66% and starts the martingale to look for high number above 99.34.

increase after each bet is 1.00725x

When I get a hit it goes back to searching for 200 rows again.

Code:
chance = 50

basebet = .0000001
betcount = 0
nextbet= basebet
bethigh = false

function dobet()

if betcount>100 and win then
chance = 50
nextbet= basebet
bethigh=false
betcount=0
end

if lastBet.Roll <99.34 then
betcount +=1
else
betcount = 0
end

if betcount >100 then
chance = .66
nextbet = previousbet*1.00725
bethigh = true
end

end

What I want to improve on my script is that I want to be able to search for not only high .66% numbers but also low .66% numbers at the same time.

And which ever rows of 200 comes first I can start martingale for lows or highs.

Can anybody help me?

Thank you.
legendary
Activity: 1717
Merit: 1125
DiceBot 3.3.9 is now available! Get it at https://bot.seuntjie.com/botpage.aspx

Change Log

New Features
None


Changes
Added Dash and Ltc for Bit-Exo
Added Bch to DuckDice
Disabled withdraw on DuckDice
Added Bch to SafeDice
999Dice added new mirror
crypto games removed game,added stratis
bitvest added ltc, eth
added lua garbage collection to manage memory


Bug Fixes
Fixed bit-Exo login problems
Stake Fixed 2fa sign on
Stake fixed chance bug
Freebitco.in disabled reset seed, tip, withdraw to prevent crash.
DuckDice Fixed login to use new API key
bitvest fixed betting
fixed reset stats without having started the bot previously bug
fixed lower limit
full member
Activity: 319
Merit: 100
... Most-all complaints I have heard about 999dice scamming is the same as you hear about any other site - sore losers.
Quoted for truth...

Honestly, all the threads in the accusations board against the "major" dice sites are generally from users who fail at understanding the basics of "house edge" and "variance" and other math that loads the game in the favour of the house...

They just can't understand how their "fool proof" betting strategy has failed... or why you can get a 20+ losing streak at 49.5% chance... OR they come from users who are pissed off that their faucet farming strategy has been noticed and their account has been blocked. Roll Eyes

Anyone with a basic understanding of math and probability should be able to understand why casinos don't have to cheat the players...
Gold+++
HCP
legendary
Activity: 2086
Merit: 4361
... Most-all complaints I have heard about 999dice scamming is the same as you hear about any other site - sore losers.
Quoted for truth...

Honestly, all the threads in the accusations board against the "major" dice sites are generally from users who fail at understanding the basics of "house edge" and "variance" and other math that loads the game in the favour of the house...

They just can't understand how their "fool proof" betting strategy has failed... or why you can get a 20+ losing streak at 49.5% chance... OR they come from users who are pissed off that their faucet farming strategy has been noticed and their account has been blocked. Roll Eyes

Anyone with a basic understanding of math and probability should be able to understand why casinos don't have to cheat the players...
legendary
Activity: 1717
Merit: 1125
I understand that the 999dice Scam?then which site is better to play

I have not had any issues with 999dice and their provably fair system is fine. Most-all complaints I have heard about 999dice scamming is the same as you hear about any other site - sore losers.

Any site listed on my site is fine to play on: https://bot.seuntjie.com
newbie
Activity: 51
Merit: 0
That's a little tricky because you don't specify the "payout" when using scripts... you specify the "chance" and the site calculates the payout... and because sites have different house edge, the payouts and chances are not the same across all sites... Undecided

So, what you do is work out the "House Edge"... hopefully the site tells you what it is... then use that and the multiplier to work out what the chance is... also, figure out what the maxPayout number is for the site you're using and set that as well!

Code:
-- UNTESTED!!

-- Set these 3 values to match the site you're using and what you want your baseBet to be

houseEdge = 0.8 -- ie HE = 0.8% = 0.8, HE = 1.1% = 1.1
maxPayout = 9920 -- set this to site max! 9920x = Crypto-Games.net
basebet = 0.00001000

---------------------- Don't Edit below here ;) --------------------------

basePayout = 1.1 -- start at 1.1x payout
firstLossPayout = 2
currPayout = basePayout

nextbet = basebet
chance = (100 - houseEdge) / currPayout
bethigh = true

function dobet()
 
  if win then
    --reset Payout to 1.1x
    currPayout = basePayout
  else
    if currPayout == basePayout then
      -- first loss
      currPayout = firstLossPayout
    else
      currPayout = currPayout + 1
    end
  end

  if currPayout > maxPayout then
    stop()
    nextbet = 0
  else
    chance = (100 - houseEdge) / currPayout
  end

end


Hi HCP Th@nkzzz for helping me.



I want a small change to this code like this : when a loss happens at 1.1X payout ,nextbet is placed for an amount which is equal to basebet/10(and not the same amount) on 2 X payout and that same bet is placed on 3X,4X etc until a win. And when the win happens the bet is back to base bet and 1.1X payout. Can Anyone  help me with that.
legendary
Activity: 1717
Merit: 1125
...
   if a == balance then
      n = balance/devider1
   end
...
   bet = n
...
   bet = bet * (100 + ch * bonus)/100
...
   nextbet = bet
...
as far as i can tell, nextbet is only ever set to bet... bet is set to either n or that "bet * (100 + ch * bonus)" value... given that n is set from balance/divider, it's  more than plausible that your bet jumps from 2 sats to 147 sats if your balance is high enough or the ch*bonus value works out that way...

Also, i think it was Seuntjie who mentioned that some sites delay updating "balance" value... which may be a contributing factor.




999dice returns the balance with the bet result. The delayed balance updates should only happen after withdrawals/tips if it is delayed at all.
HCP
legendary
Activity: 2086
Merit: 4361
...
   if a == balance then
      n = balance/devider1
   end
...
   bet = n
...
   bet = bet * (100 + ch * bonus)/100
...
   nextbet = bet
...
as far as i can tell, nextbet is only ever set to bet... bet is set to either n or that "bet * (100 + ch * bonus)" value... given that n is set from balance/divider, it's  more than plausible that your bet jumps from 2 sats to 147 sats if your balance is high enough or the ch*bonus value works out that way...

Also, i think it was Seuntjie who mentioned that some sites delay updating "balance" value... which may be a contributing factor.

full member
Activity: 319
Merit: 100
hi please can you tell me why the jump in rates from 2 Satoshi to 147,
http://pastenow.ru/d5869f41b0849ff29db302ebb260a41f
Without seeing your script, there is no way to tell why your script is doing anything...  The most likely scenario is a logic error in the script that is setting your  bet amount incorrectly. Especially if you are using "% of balance" calculations (I think sometimes balance value might lag)... or a variable is not being reset an still holds an "old" value so your bet amount calculation returns an unexpected value.
-----


it kind of bugs will be only in 999dice, if you open more than one bot at same time, you will see more bugs in betsizing... its not script fault.
HCP
legendary
Activity: 2086
Merit: 4361
hi please can you tell me why the jump in rates from 2 Satoshi to 147,
http://pastenow.ru/d5869f41b0849ff29db302ebb260a41f
Without seeing your script, there is no way to tell why your script is doing anything...  The most likely scenario is a logic error in the script that is setting your  bet amount incorrectly. Especially if you are using "% of balance" calculations (I think sometimes balance value might lag)... or a variable is not being reset an still holds an "old" value so your bet amount calculation returns an unexpected value.
full member
Activity: 319
Merit: 100
hi please can you tell me why the jump in rates from 2 Satoshi to 147,
http://pastenow.ru/d5869f41b0849ff29db302ebb260a41f

i was said it to you, in VK, its 999dice bug, i have many times been bugs when i tested script there, so its bad place to play... but maybe you are edited script and make some kind of mistake, but i think its bug in 999dice.

but there is some mistake, you have ~2m bankroll and divider 190000, so your basebet need to be ~11, there i think you did some edits in script... but how i said 999dice, has betting bugs, he time after time, made "late bets" with last percetnage increasing, in next work basebet percentage.
Pages:
Jump to: