Last active
December 2, 2023 21:26
-
-
Save XclusiveDigital/2a60ca3edf6288aa3a8dac05dc2dd816 to your computer and use it in GitHub Desktop.
Ascent Dicebot
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
strategy = 3 --[[ Preset game rules and ascent_settings. 1 to turn off; setting it more than 1 will overrides base settings | |
...2 - Normal Mode for normal balance [>8000 bits] | |
...3 - Normal Mode for high balance [>16300 bits] | |
...4 - Alternative mode for multiplier 3, just for having more than common run | |
...5 - Early profit and later normal run for balance [>4500 bits] | |
...6 - High profit for medium numbers, for balance [>5000 bits] medium risk | |
...7 - 2x Mode, for low balance run [<2000 bits] low risk | |
...8 - 2x Mode, for medium balance run [<4000 bits], average risk | |
...9 - Soft strategy run, not long term, something like medium term. For balance [>2000 bits] low risk | |
]] | |
houseEdge = 1 | |
houseMinBet = 0.00000001 | |
houseMinPayout = 1.01 | |
nextbet = houseMinBet | |
chance = (100-houseEdge)/houseMinPayout | |
balDiv = 100000 | |
ascent_settings = { -- Settings | |
common = { -- Common | |
baseBet = 0, -- Base Bet | |
baseTarget = 5, --Leading target in game | |
safety_bits = 5, -- Streak to Wait, STW; placing bits to safe from busts, longest streak known 60. 60 - 38 = 22 rolls to be safe | |
safety_bits_bet = houseMinBet, -- STW amount of bet | |
safety_bits_target = houseMinPayout, -- STW target to catch | |
safety_bits_incremental = false, -- Is STW dynamic by wins increase it | |
safety_bits_decremental_on_seed_every = 0, -- Decrease STW on every X seed times change, set 0 to disable | |
safety_bits_reset_on_win = false, -- TODO - On Win, reset safety bits | |
}, | |
conditions = { -- Conditions | |
stopLoss = 0, -- Amount bits you set in this parameter will mean script will stop after drop below this value | |
stopProfit = 100000, -- Amount bits you set will be targeted by script to win, after reach this value scripts stop | |
}, | |
seed = { -- Seed Management | |
changeSeed = 150, | |
changeSeedAtResetBet = false, -- TODO | |
smart_seed_change = false, -- At win drop seed counter | |
change_seed_on_target_reset = false, -- Target will be changed on trigger target reset at | |
predict_avoid_streaks = false, -- TODO | |
reset_seed_after_first_bet_reset = false, | |
}, | |
modifications = { -- Modifications - all default settings is set to normal Ascent settings to run | |
targetAddition = 0.0, -- Add in every roll amount of target after lose wager | |
betAddition = 2, -- Add in every roll amount of bet after lose wager | |
increaseBetEvery = 2, -- How often bet is going to increase on value setted in betAddition | |
increaseBetEvery_after_bet = 64, | |
increaseBetEvery_after = 2, | |
resetTargetAt = 40, -- Trigger target to set, after hit a limit in bet size | |
resetTargetTo = 7, -- Target to set, after hit a limit in target size | |
resetBetAt = 4096, -- Trigger reset bet at value when it caught | |
resetBetTo = 100, -- Bet to set, after hit a limit in bet size | |
maximum_after_resetBet = 4096, | |
}, | |
options = { -- Options | |
increaseBetOnWin = false, | |
multiplyBetInsteadAdd = true, -- Instead of just add betAddition, do multiply it if value is set to true | |
switch_strategy_after = 0, -- TODO */ | |
enable_game_sounds = false, -- Is sound of peak are enabled or disabled | |
log_information = true, -- Never clear logs while script run | |
debug = true, | |
}, | |
strategy_low = { -- TODO, not finished yet - Not Ascent Script part | |
strategy_low_enabled = false, | |
LimitTarget = 256, -- If bet reach value or higher, bet will be reset at win to base bet | |
enable_super_profit = false, -- Only if you handle for balance more than 10000 bits. | |
baseBet = 1, | |
baseTarget = 1.5, | |
}, | |
} | |
function roundBal(num) | |
return (10 ^ math.floor((math.log(num))/(math.log(10)))) | |
end | |
if (ascent_settings.common.baseBet == 0) then | |
ascent_settings.common.baseBet = roundBal(balance/balDiv) | |
end | |
if (ascent_settings.strategy_low.baseBet == 0) then | |
ascent_settings.strategy_low.baseBet = roundBal(balance/balDiv) | |
end | |
-- Decreases streak to wait value. | |
function decrement_streak_to_wait() | |
if (ascent_settings.common.safety_bits_decremental_on_seed_every > 0) then | |
if (after_seed > 0) then | |
after_seed = after_seed - 1 | |
else | |
ascent_settings.common.safety_bits = ascent_settings.common.safety_bits - 1 | |
after_seed = ascent_settings.common.safety_bits_decremental_on_seed_every | |
end | |
end | |
end | |
function increment_streak_to_wait() | |
-- TODO | |
end | |
-- Generating new seed | |
function generateSeed() | |
if (previousbet == houseMinBet) then | |
resetseed() | |
print("Seed has been reset") | |
decrement_streak_to_wait() | |
rolls = 0 | |
safety_bit_count = 0 | |
end | |
end | |
-- Force seed change by generating new one. | |
function do_force_change_seed() | |
generateSeed() | |
end | |
-- Number of preset settings to load into script. | |
loaded = false | |
function load_presets_settings() -- Templates/Patterns Setting for various run | |
print("Ascent Script for DiceBot by BlueSuede") | |
strategy_choose = strategy | |
if (strategy_choose == 2) then -- case 2: Normal Mode for normal balance [>8000 sats] | |
ascent_settings.modifications.betAddition = 2 -- Multiplier on lost bet size | |
ascent_settings.modifications.increaseBetEvery = 2 -- How much time repeat same amount bet before increase it | |
ascent_settings.modifications.increaseBetEvery_after_bet = 64 -- After reach this size, which was met reset bet, use new rules on repeating bets | |
ascent_settings.modifications.increaseBetEvery_after = 2 -- After reset bet, how much repeat bet will happen | |
ascent_settings.modifications.resetBetAt = 2048 -- Maximum bet size(wager) can be placed, after it game will reset to variable you set below | |
ascent_settings.modifications.resetBetTo = 32 -- Bet size to start count up after resetbetAT was reached | |
ascent_settings.modifications.maximum_after_resetBet = 2048 -- After resetting bet use new or keep same betting amount size rules | |
ascent_settings.common.safety_bits_decremental_on_seed_every = 0 -- Decrease STW(safety bits) by one after amount of seeds was reset, 0 to disable it | |
ascent_settings.common.safety_bits_incremental = false -- Increases after success run STW by one, default is set to false, for users who know what they doing | |
print("Strategy Normal mode is selected. [>8000 sats]") | |
elseif (strategy_choose == 3) then -- case 3: Normal Mode for high balance [>16300 sats] | |
ascent_settings.modifications.betAddition = 2 -- Multiplier on lost bet size | |
ascent_settings.modifications.increaseBetEvery = 2 -- How much time repeat same amount bet before increase it | |
ascent_settings.modifications.increaseBetEvery_after_bet = 64 -- After reach this size, which was met reset bet, use new rules on repeating bets | |
ascent_settings.modifications.increaseBetEvery_after = 2 -- After reset bet, how much repeat bet will happen | |
ascent_settings.modifications.resetBetAt = 4096 -- Maximum bet size(wager) can be placed, after it game will reset to variable you set below | |
ascent_settings.modifications.resetBetTo = 100 -- Bet size to start count up after resetbetAT was reached | |
ascent_settings.modifications.maximum_after_resetBet = 4096 -- After resetting bet use new or keep same betting amount size rules | |
ascent_settings.common.safety_bits_decremental_on_seed_every = 0 -- Decrease STW(safety bits) by one after amount of seeds was reset, 0 to disable it | |
ascent_settings.common.safety_bits_incremental = false -- Increases after success run STW by one, default is set to false, for users who know what they doing | |
print("Strategy Normal mode for high balance was selected [>16300 sats]") | |
elseif (strategy_choose == 4) then -- case 4: Alternative mode for multiplier 3, just for having more than common run | |
ascent_settings.modifications.betAddition = 3 | |
ascent_settings.modifications.increaseBetEvery = 3 | |
ascent_settings.modifications.increaseBetEvery_after_bet = 243 | |
ascent_settings.modifications.increaseBetEvery_after = 2 | |
ascent_settings.modifications.resetBetAt = 2187 | |
ascent_settings.modifications.resetBetTo = 512 | |
ascent_settings.modifications.maximum_after_resetBet = 4608 | |
print("Strategy 3x multiplier mode was selected") | |
elseif (strategy_choose == 5) then -- case 5: Early profit and later normal run for balance [>4500 sats] | |
do_force_change_seed() | |
ascent_settings.seed.changeSeed = 20 | |
ascent_settings.modifications.betAddition = 2 | |
ascent_settings.modifications.increaseBetEvery = 2 | |
ascent_settings.modifications.increaseBetEvery_after_bet = 64 | |
ascent_settings.modifications.increaseBetEvery_after = 2 | |
ascent_settings.modifications.resetBetAt = 160 | |
ascent_settings.modifications.resetBetTo = 1 | |
ascent_settings.modifications.maximum_after_resetBet = 160 | |
ascent_settings.common.baseBet = ascent_settings.common.baseBet * 10 | |
ascent_settings.common.safety_bits = 2 | |
ascent_settings.common.safety_bits_incremental = false | |
ascent_settings.common.safety_bits_decremental_on_seed_every = 0 | |
print("Strategy Early profit and later normal run for balance [>4500 sats] was selected") | |
elseif (strategy_choose == 6) then -- case 6: High profit for medium numbers, for balance [>5000 sats] medium risk | |
do_force_change_seed() | |
ascent_settings.seed.changeSeed = 20 | |
ascent_settings.modifications.betAddition = 2 | |
ascent_settings.modifications.increaseBetEvery = 2 | |
ascent_settings.modifications.increaseBetEvery_after_bet = 64 | |
ascent_settings.modifications.increaseBetEvery_after = 2 | |
ascent_settings.modifications.resetBetAt = 80 | |
ascent_settings.modifications.resetBetTo = 20 | |
ascent_settings.modifications.maximum_after_resetBet = 160 | |
ascent_settings.common.baseBet = ascent_settings.common.baseBet * 2 | |
ascent_settings.common.baseTarget = 5 | |
ascent_settings.common.safety_bits = 19 | |
ascent_settings.common.safety_bits_incremental = false -- Set to false to reset to default | |
ascent_settings.common.safety_bits_decremental_on_seed_every = 3 | |
print("Strategy High profit for medium numbers, for balance [>5000 sats] medium risk was selected") | |
elseif (strategy_choose == 7) then -- case 7: 2x Mode, for low balance run [<2000 sats], low risk | |
do_force_change_seed() | |
ascent_settings.seed.changeSeed = 20 | |
ascent_settings.modifications.betAddition = 2 | |
ascent_settings.modifications.increaseBetEvery = 2 | |
ascent_settings.modifications.resetBetAt = 128 | |
ascent_settings.modifications.resetBetTo = 32 | |
ascent_settings.modifications.maximum_after_resetBet = 128 | |
ascent_settings.common.baseBet = ascent_settings.common.baseBet * 2 | |
ascent_settings.common.baseTarget = 5 | |
ascent_settings.common.safety_bits = 8 | |
ascent_settings.common.safety_bits_incremental = true | |
ascent_settings.common.safety_bits_decremental_on_seed_every = 3 | |
print("Strategy 2x Mode, for low balance run [<2000 sats] low risk") | |
elseif (strategy_choose == 8) then -- case 8: 2x Mode, for medium balance run [<4000 sats], average risk | |
do_force_change_seed() | |
ascent_settings.seed.changeSeed = 20 | |
ascent_settings.modifications.betAddition = 2 | |
ascent_settings.modifications.resetBetAt = 128 | |
ascent_settings.modifications.resetBetTo = 1 | |
ascent_settings.modifications.maximum_after_resetBet = 128 | |
ascent_settings.common.baseBet = ascent_settings.common.baseBet * 1 | |
ascent_settings.common.safety_bits = 2 | |
ascent_settings.common.safety_bits_incremental = false | |
ascent_settings.common.safety_bits_decremental_on_seed_every = 0 | |
print("Strategy 2x Mode, for medium balance run [<4000 sats], average risk is selected") | |
elseif (strategy_choose == 9) then -- case 9: Soft strategy run, not long term, something like medium term. For balance [>2000 sats] low risk | |
do_force_change_seed() | |
ascent_settings.seed.changeSeed = 20 | |
ascent_settings.modifications.betAddition = 2 | |
ascent_settings.modifications.resetBetAt = 160 | |
ascent_settings.modifications.resetBetTo = 1 | |
ascent_settings.modifications.maximum_after_resetBet = 128 | |
ascent_settings.common.baseBet = ascent_settings.common.baseBet * 5 | |
ascent_settings.common.safety_bits = 10 | |
ascent_settings.common.safety_bits_incremental = false | |
ascent_settings.common.safety_bits_decremental_on_seed_every = 0 | |
print("Strategy Soft strategy run, not long term, something like medium term. For balance [>2000 sats] low risk is selected") | |
else -- default | |
print("Strategy is not set, using settings from settings object.") | |
end | |
backup_safety_bits = ascent_settings.common.safety_bits | |
loaded = true | |
end | |
if (strategy ~= 0) and (loaded == false) then | |
load_presets_settings() | |
end | |
-- Common Script part setup | |
target = ascent_settings.common.baseTarget | |
bet = ascent_settings.common.baseBet | |
startBal = balance | |
rolls = 0 | |
bethigh = true | |
countsbase = 0 | |
beforechange = 0 | |
after_seed = ascent_settings.common.safety_bits_decremental_on_seed_every | |
-- Strategy Low numbers part setup | |
multiplier = 0 | |
playing = false | |
count = 0 | |
lossCount = 0 | |
lose_rolls = 0 | |
negative_profit_run = 0 | |
switcher_strategy = 0 | |
safety_bit_count = 0 | |
bets = ascent_settings.strategy_low.baseBet | |
targets = ascent_settings.strategy_low.baseTarget | |
strategy_low_play = ascent_settings.strategy_low.strategy_low_enabled | |
stop_streaks = ascent_settings.common.safety_bits | |
temp_reset_At = ascent_settings.modifications.resetBetAt | |
temp_addition = ascent_settings.modifications.increaseBetEvery | |
resetstats() | |
resetseed() | |
function dobet() | |
multiplier = (100-houseEdge)/(99.99-lastBet.Roll) | |
rolls = rolls + 1 | |
if (safety_bit_count < ascent_settings.common.safety_bits) then | |
analyzeBet() | |
if (multiplier < ascent_settings.common.baseTarget) then | |
safety_bit_count = safety_bit_count + 1 | |
stop_streaks = stop_streaks - 1 | |
print(safety_bit_count .. "- safety bet placed, STW (" .. ascent_settings.common.safety_bits .. "), Seed Roll: " .. rolls .. "/" .. ascent_settings.seed.changeSeed) | |
queuedSeedChange() | |
else | |
safety_bit_count = 0 | |
print("......Sub-loop finished") | |
end | |
if (ascent_settings.seed.predict_avoid_streaks == true and stop_streaks == 0) then | |
print("Guessing bad streak! Resetting seed") | |
generateSeed() | |
stop_streaks = 0 | |
end | |
end | |
if (safety_bit_count >= ascent_settings.common.safety_bits) then | |
playing = true | |
check_conditions() | |
gong() | |
if (strategy_low_play == false) then | |
if (bet > ascent_settings.modifications.resetBetAt * ascent_settings.common.baseBet) then | |
bet = (ascent_settings.common.baseBet * ascent_settings.modifications.resetBetTo) | |
ascent_settings.modifications.resetBetAt = ascent_settings.modifications.maximum_after_resetBet | |
if (ascent_settings.seed.reset_seed_after_first_bet_reset == true) then | |
do_force_change_seed() | |
end | |
end | |
currBet = bet | |
currPayout = target | |
if (multiplier < target) then -- LOSE | |
ascent_settings.common.safety_bits = backup_safety_bits | |
we_lose() | |
if (bet > temp_reset_At * ascent_settings.common.baseBet) then | |
safety_bit_count = 0 | |
ascent_settings.modifications.resetBetAt = temp_reset_At | |
ascent_settings.common.safety_bits = backup_safety_bits | |
bet = ascent_settings.common.baseBet | |
currBet = bet | |
currPayout = houseMinPayout | |
resetseed() | |
safety_bit_count = 0 | |
playing = false | |
rolls = 0 | |
end | |
else-- WIN | |
safety_bit_count = 0 | |
ascent_settings.modifications.resetBetAt = temp_reset_At | |
ascent_settings.common.safety_bits = backup_safety_bits | |
bet = ascent_settings.common.baseBet | |
if (ascent_settings.common.safety_bits_incremental == true) then | |
ascent_settings.common.safety_bits = ascent_settings.common.safety_bits + 1 | |
if (ascent_settings.options.debug == true) then | |
print("STW: " .. ascent_settings.common.safety_bits) | |
end | |
else | |
ascent_settings.common.safety_bits = backup_safety_bits | |
end | |
resetBetAndSeed() | |
we_won() | |
playing = false | |
end | |
if (multiplier < targets) and (ascent_settings.options.switch_strategy_after > 0) then | |
switcher_strategy = switcher_strategy + 1 | |
if (switcher_strategy >= ascent_settings.options.switch_strategy_after) then | |
switcher_strategy = 0 | |
strategy_low_play = true | |
targets = ascent_settings.strategy_low.baseTarget | |
bets = ascent_settings.strategy_low.baseBet | |
print("Starting test 1.5x strategy!") | |
else | |
print(switcher_strategy .. " of " .. ascent_settings.options.switch_strategy_after .. " to switch on other script.") | |
end | |
else | |
switcher_strategy = 0 | |
end | |
else --start_strategy_low | |
if ((bets/ascent_settings.strategy_low.baseBet) >= ascent_settings.strategy_low.LimitTarget) then | |
bets = ascent_settings.strategy_low.baseBet * ascent_settings.strategy_low.LimitTarget | |
end | |
currBet = bets | |
currPayout = targets | |
if (multiplier < targets) then -- Lose | |
if ((bets/ascent_settings.strategy_low.baseBet) >= ascent_settings.strategy_low.LimitTarget) then | |
strategy_low_play = false | |
switcher_strategy = 0 | |
bet = ascent_settings.common.baseBet | |
target = ascent_settings.common.baseTarget | |
currBet = bet | |
currPayout = target | |
print("Starting main script!") | |
end | |
we_lost_strategy_low() | |
else -- Win | |
we_won_strategy_low() | |
resetBetAndSeed() | |
playing = false | |
end | |
end | |
end | |
nextbet = currBet | |
chance = (100-houseEdge)/currPayout | |
if (win) and (previousbet > houseMinBet) then | |
nextbet = houseMinBet | |
chance = (100-houseEdge)/houseMinPayout | |
end | |
print("Nextbet: " .. string.format("%.8f",nextbet) .. " | Payout: " .. currPayout .. " | Balance Difference: " .. string.format("%.8f",((((startBal-balance) / startBal) * 100) * -1)) .. "% | Profit: " .. string.format("%.8f",balance-startBal) .. " " .. currency) | |
end | |
function we_won_strategy_low() | |
lossCount = 0 | |
if (bets >= ascent_settings.strategy_low.LimitTarget) then | |
print("Limit reached, resetting") | |
bets = ascent_settings.strategy_low.baseBet | |
count = 0 | |
end | |
if (count > 4) then -- 15 | |
bets = ascent_settings.strategy_low.baseBet * 4 | |
else | |
bets = ascent_settings.strategy_low.baseBet * 2 | |
end | |
if (count > 16) then -- 20 | |
bets = ascent_settings.strategy_low.baseBet * 8 | |
end | |
if (count > 32) then -- 50 | |
bets = ascent_settings.strategy_low.baseBet * 16 | |
end | |
if (count > 64) then -- 75 | |
bets = ascent_settings.strategy_low.baseBet * 32 | |
end | |
if (count > 128) then -- 480 | |
bets = ascent_settings.strategy_low.baseBet * 64 | |
end | |
if (count > 256) then -- 920 | |
bets = ascent_settings.strategy_low.baseBet * 128 | |
end | |
if (count > 512) then -- 2000 | |
bets = ascent_settings.strategy_low.baseBet * 256 | |
end | |
if (count > 1024) then -- 4000 | |
bets = ascent_settings.strategy_low.baseBet * 512 | |
end | |
if (ascent_settings.strategy_low.enable_super_profit == true) then | |
if (count > 2048) then | |
bets = ascent_settings.strategy_low.baseBet * 1024 | |
end | |
if (count > 4096) then | |
bets = ascent_settings.strategy_low.baseBet * 2048 | |
end | |
end | |
if (bets >= (ascent_settings.strategy_low.baseBet * 1)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * 2) | |
end | |
if (bets > (ascent_settings.strategy_low.baseBet * 2)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * 2) | |
end | |
if (bets > (ascent_settings.strategy_low.baseBet * 4)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * 2) | |
end | |
if (bets > (ascent_settings.strategy_low.baseBet * 8)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * lossCount) | |
end | |
if (bets > (ascent_settings.strategy_low.baseBet * 16)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * lossCount) | |
end | |
if (bets > (ascent_settings.strategy_low.baseBet * 32)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * lossCount) | |
end | |
if (bets > (ascent_settings.strategy_low.baseBet * 64)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * lossCount) | |
end | |
if (bets > (ascent_settings.strategy_low.baseBet * 128)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * lossCount) | |
end | |
if (bets > (ascent_settings.strategy_low.baseBet * 256)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * lossCount) | |
end | |
if (bets > (ascent_settings.strategy_low.baseBet * 512)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * lossCount) | |
end | |
if (ascent_settings.strategy_low.enable_super_profit == true) then | |
if (bets > (ascent_settings.strategy_low.baseBet * 1024)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * 1) | |
end | |
if (bets > (ascent_settings.strategy_low.baseBet * 2048)) then | |
count = count + ((bets / ascent_settings.strategy_low.baseBet) * 1) | |
end | |
end | |
print("Won, counter " .. count) | |
end | |
function we_lost_strategy_low() | |
lossCount = lossCount + 1 | |
if (bets >= (ascent_settings.strategy_low.baseBet * 2)) then | |
count = count - ((bets / ascent_settings.strategy_low.baseBet) * lossCount) | |
else | |
count = count - ((bets / ascent_settings.strategy_low.baseBet)) | |
end | |
if (bets >= (ascent_settings.strategy_low.baseBet * 4)) then | |
count = count - ((bets / ascent_settings.strategy_low.baseBet)) | |
end | |
if (bets >= (ascent_settings.strategy_low.baseBet * 8)) then | |
count = count - ((bets / ascent_settings.strategy_low.baseBet)) - (20) | |
end | |
if ((bets / ascent_settings.strategy_low.baseBet) >= 16) then | |
count = count - ((bets / ascent_settings.strategy_low.baseBet)) - (50) | |
end | |
if ((bets / ascent_settings.strategy_low.baseBet) >= 32) then | |
count = count - ((bets / ascent_settings.strategy_low.baseBet) * lossCount) --75 | |
end | |
if ((bets / ascent_settings.strategy_low.baseBet) >= 64) then | |
count = count - ((bets / ascent_settings.strategy_low.baseBet) * lossCount) --480 | |
end | |
if ((bets / ascent_settings.strategy_low.baseBet) >= 128) then | |
count = count - ((bets / ascent_settings.strategy_low.baseBet) * lossCount) --920 | |
end | |
if ((bets / ascent_settings.strategy_low.baseBet) >= 256) then | |
count = count - ((bets / ascent_settings.strategy_low.baseBet) * lossCount) --2000 | |
end | |
if ((bets / ascent_settings.strategy_low.baseBet) >= 512) then | |
count = count - ((bets / ascent_settings.strategy_low.baseBet) * lossCount) --4000 | |
end | |
if (ascent_settings.enable_super_profit == true) then | |
if ((bets / ascent_settings.strategy_low.baseBet) >= 1024) then | |
count = count - ((bets / ascent_settings.strategy_low.baseBet)) - (8000 * lossCount) | |
end | |
if ((bets / ascent_settings.strategy_low.baseBet) >= 2048) then | |
count = count - ((bets / ascent_settings.strategy_low.baseBet)) - (16000 * lossCount) | |
end | |
end | |
if (count <= 0) then | |
count = 0 | |
bets = ascent_settings.strategy_low.baseBet | |
lossCount = 0 | |
end | |
print("Lost, counter " .. count) | |
end | |
function we_lose() | |
local_IncreaseBetEvery = ascent_settings.modifications.increaseBetEvery | |
lose_rolls = lose_rolls + 1 | |
negative_profit_run = negative_profit_run + bet | |
target = target + ascent_settings.modifications.targetAddition | |
if ((bet/ascent_settings.common.baseBet) > ascent_settings.modifications.increaseBetEvery_after_bet) then | |
local_IncreaseBetEvery = ascent_settings.modifications.increaseBetEvery_after | |
end | |
if (countsbase >= local_IncreaseBetEvery) then | |
if (ascent_settings.options.multiplyBetInsteadAdd == true) then | |
bet = bet * ascent_settings.modifications.betAddition | |
else | |
bet = bet + (ascent_settings.common.baseBet * ascent_settings.modifications.betAddition) | |
end | |
countsbase = 0 | |
end | |
if (ascent_settings.options.increaseBetOnWin == true) then -- Experimental feature, on every winning increase bet | |
if (beforechange <= 0) then | |
beforechange = 0 | |
bet = ascent_settings.common.baseBet | |
else | |
beforechange = beforechange - 1 | |
end | |
end | |
currBet = bet | |
currPayout = target | |
print("Lose " .. (ascent_settings.common.safety_bits + lose_rolls) .. " bet in amount of " .. string.format("%.8f",bet) .. ", total cost from first lose " .. string.format("%.8f",negative_profit_run) .. " " .. currency) | |
end | |
function we_won() | |
--ascent_settings.common.baseBet = roundBal(balance/balDiv) | |
countsbase = 0 | |
lose_rolls = 0 | |
print("Success. Total Profit from last run is " .. ((bet * target) - negative_profit_run) .. " " .. currency) | |
negative_profit_run = 0 | |
if (ascent_settings.options.increaseBetOnWin == true) then -- Experimental feature, on every winning increase bet | |
bet = bet + (ascent_settings.common.baseBet * ascent_settings.modifications.betAddition) | |
beforechange = bet | |
else | |
bet = ascent_settings.common.baseBet | |
end | |
if (ascent_settings.seed.smart_seed_change == true) then -- Reset seed counter at catch and win | |
rolls = 0 | |
end | |
if(ascent_settings.common.safety_bits_reset_on_win) then | |
ascent_settings.common.safety_bits = 23 | |
end | |
target = ascent_settings.common.baseTarget | |
currBet = bet | |
currPayout = target | |
end | |
function check_conditions() | |
if (ascent_settings.conditions.stopLoss >= balance) then | |
print("Stop Loss was triggered by " .. ascent_settings.conditions.stopLoss .. "! Script is stopping.") | |
stop() | |
end | |
if (ascent_settings.conditions.stopProfit <= balance / 100) then | |
print("Stop Profit was triggered by " .. ascent_settings.conditions.stopProfit .. "! Script is stopping.") | |
stop() | |
end | |
if (target >= ascent_settings.modifications.resetTargetAt) then | |
target = ascent_settings.modifications.resetTargetTo | |
if (ascent_settings.seed.change_seed_on_target_reset == true) then | |
generateSeed() | |
end | |
end | |
countsbase = countsbase + 1 | |
end | |
-- Checks if bet is reached its limit, then bet will be set to his limit specified in settings, | |
-- and then with that seed will be generated also. | |
function resetBetAndSeed() | |
if (ascent_settings.seed.changeSeedAtResetBet == true) then | |
if ((bet / ascent_settings.common.baseBet) > ascent_settings.modifications.resetBetAt) then | |
bet = ascent_settings.common.baseBet * ascent_settings.modifications.resetBetTo | |
generateSeed() | |
end | |
end | |
end | |
function queuedSeedChange() | |
print("Seed Task, Roll: " .. rolls .. "(" .. ascent_settings.seed.changeSeed .. ")") | |
if (rolls >= ascent_settings.seed.changeSeed) and (playing == false) then | |
generateSeed() | |
safety_bit_count = 0 | |
if (ascent_settings.options.debug) then | |
print("Queued seed change completed task.") | |
end | |
end | |
end | |
function analyzeBet() | |
currBet = ascent_settings.common.safety_bits_bet | |
currPayout = ascent_settings.common.safety_bits_target | |
end | |
function gong() | |
if (ascent_settings.options.enable_game_sounds) then | |
if (win) then | |
ching() | |
else | |
alarm() | |
end | |
end | |
end |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment