// ==UserScript==
// @name Freebitco.in - Auto Roll - Advanced - Status Concole - ALL Bonuses - no captcha - NOV 2020
// @description AUTOROLL SCRIPT [NOV 2020] --Auto Roll --Status Console --Close ADS --Human Simulation --Play Multiply Game --Buy Lottery tickets --Buy 1000% Bonus --Buy RP Bonuses --NEW* AutoRoll with Low Balance paying RP --Slower in the night --Advance randomic times simulating humans --made by dany-veneno in 2018, published in 2020, extra functions added daily.
// @author dany-veneno
// @icon https://bit.ly/3bY0vU9
// @match https://freebitco.in/*
// @grant none
// @create 2018-05-27
// @lastmodified 2020-11-16
// @version 2.9.6
// @namespace https://greasyfork.org/users/572366
// @license NTP
// @supportURL https://bit.ly/3d1kW48
// @home-url https://bit.ly/2M4BNH7
// @home-url2 https://bit.ly/2zn0b4p
// @homepageURL https://greasyfork.org/en/scripts/404112
// @copyright 2018-2020, dany-veneno
// @run-at document-end
// @note 2020-11-14-V.2.9.6 >> Code Revision, improvements and begin multiply basic logic
// @note 2020-11-11-V.2.9.4 Resolved -script not working- problem, removing jquery dependency
// @note 2020-08-03-V.2.9.3 "Last Bonus" fix
// @note 2020-06-09-V.2.9.2 Title, jquery cdn
// @note 2020-06-09-V.2.9.1 Bug fix lottery, buying big quantity of tickets
// @downloadURL none
// ==/UserScript==
////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////
///////// CONFIG ///
////// EDIT JUST THIS SECTION //
////////////////////////////////////
// ** BEHAVIOR ** //
var PROMO_MODE = true; // play faster when some promo (bonus RP or 1000% is active, or not. 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
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 = 48; // How many hours to wait before to buy Bonuses Rewards Promo again
// *** Lottery
var LOTTERY = true; //decide if auto buy lottery tickets, or not. ***When true, It will buy lottery tickets 7% of the times ***
var LOTTERY_MAX_TICKETS = 30; // Max ticket to buy
// *** Multiply Game
// Available just if Multiply Bonus is active, and if multiply bonus balance is higher then max bet
var MULTIPLY = true; //decide if play Multiply games or not, It's a doubling technique. Play at your own risk. When true, it's played randomly.
var MAX_ROLLS_AT_MULTIPLY = 1000; //how many rolls in multiply.
var HOURS_BETWEEN_MULTIPLY = 32; // How many hours to wait before to play multiply
var BASE_BET = 0.00000001; // First Bet
var MAX_BET = 0.0004097; // Max Bet Before STOP
var MARTINGALE_AUTO = true; // martingale strategy with autobet config; override next
// var MARTINGALE_MANUAL = false; //martingale strategy simulating manual betting, with timeouts; override nexts;
// *** CAPTCHA ERROR *** ///
var PLAY_WITHOUT_CAPTCHA = true;
var CAPTCHA_ERROR = true;
// ** Logging
var LOGGING = 5; //0 is no messages, 5 is debug
///////// END CONFIG ///
/////////////////////////////////////////////////////////////////////////////////////////////////
// System Variables //
var css_reset='font-weight: reset; color:reset';
var css_bold='font-weight:bold;';
var script_output = "";
var script_output_msg_1 = "";
var script_output_msg_2 = "";
var script_output_msg_css = "";
var points=0;
var ads_closed=0; //number of ads closed, increasing
var rolling_mode="Day"; //night, day, promo, etc
var dateTimeFormat = new Intl.DateTimeFormat('en', { year: 'numeric', month: 'short', day: '2-digit', hour: 'numeric', minute: 'numeric', hour12: false });
var script_version = GM_info.script.version;
var isBonusActive = false;
var rand = 0;
var r = 0;
var d = new Date();
// COOKIES Variables and Retrieve //
var totJack = getCookie("totJack");
var tot_exec = getCookie("executions");
var tot_btc_winning_rolling = getCookie('tot_btc_winning_rolling');
var tot_lottery_winning_rolling = getCookie('tot_lottery_winning_rolling');
var tot_rp_winning_rolling = getCookie('tot_rp_winning_rolling');
var tot_lottery_tickets = getCookie('tot_lottery_tickets');
var tot_rp_spent_rewards = getCookie('tot_rp_spent_rewards');
var tot_rp_spent_captcha = getCookie('tot_rp_spent_captcha');
var tot_multiply_balance = getCookie('tot_multiply_balance');
var tot_multiply_games = getCookie('tot_multiply_games');
var executions = getCookie('executions');
var last_bonus = Date.parse(getCookie("last_bonus"));
var last_multiply = Date.parse(getCookie("last_multiply"));
if (! (tot_btc_winning_rolling > 0)) tot_btc_winning_rolling = 0;
if (! (tot_lottery_winning_rolling > 0)) tot_lottery_winning_rolling = 0;
if (! (tot_rp_winning_rolling > 0)) tot_rp_winning_rolling = 0;
if (! (tot_lottery_tickets > 0)) tot_lottery_tickets = 0;
if (! (tot_rp_spent_rewards > 0)) tot_rp_spent_rewards = 0;
if (! (tot_rp_spent_captcha > 0)) tot_rp_spent_captcha = 0;
if (! (tot_multiply_balance > 0)) tot_multiply_balance = 0;
if (! (tot_multiply_games > 0)) tot_multiply_games = 0;
if (! (executions > 0)) executions = 0;
if (! (last_bonus > 0)) last_bonus = 0;
if (! (last_multiply > 0)) last_multiply = 0;
// END COOKIES //
(function() {
'use strict';
if (LOGGING > 0) console.log("%c<<<<<<<<<< Script Begin >>>>>>>>>>", 'font-weight:bold; color: green');
// Initialize the Status Panel
panelInit();
// Lottery function
// It will plan to buy few lottery tickets, more less 7% of the times
lottery();
// Reward function
setInterval(function(){
setTimeout(function(){ rewards(); }, 3000 );
setTimeout(function(){ showStatus(); }, 1000 );
}(), 900000);
// Call the freeRoll
setTimeout(function(){ Roll(); }, 8000 );
setInterval(function(){
// Close the reveals mode
closePopupInterval($('.close-reveal-modal'));
closePopupInterval($('.pushpad_deny_button'));
}, 30000);
//Close Ads but not always
setTimeout(function(){
closeRandomPopupInterval($('div.close_daily_jackpot_main_container_div'),90);
closeRandomPopupInterval($('i.fa.fa-times-circle.close_deposit_promo_message'),40);
closeRandomPopupInterval($('div#lambo_contest_msg a.close'),10); //lambo contest
closeRandomPopupInterval($('div#earn_btc_msg a.close'),20);
closeRandomPopupInterval($('div#enable_2fa_msg_alert a.close'),30);
closeRandomPopupInterval($("[id^='hide_rp_promo']"),50);
}, 20000)
//Show elapsed time every 10 min.
setInterval(function(){
showStatus();
}, 900000);
rand=random(3000,12000);
setTimeout(function(){
multiply()
}, rand);
// Activate DOM Monitors
// First, check all played numbers, even in multiply, and check if it's 8888. To have a measure when to play *jackpot*.
$('#previous_roll').on('DOMSubtreeModified', function(){
if (LOGGING > 4) console.log("%c[Debug] DomMonitor Activating", 'color:grey');
var rolled = $('#previous_roll').html();
if (rolled > 0 && rolled <= 10000 && rolled != 8888){
//if (LOGGING > 4) console.log("prevNumber rolled: "+rolled);
totJack++;
setCookie("totJack", totJack, 365);
//console.log(document.cookie);
} else if (rolled == 8888) {
setCookie("totJack", 0, 365);
if (LOGGING > 0) console.log("************** 8888 **************");
}
});
// Call debugs functions
$('#multiplier_fifth_digit').on('click', function(){
showStatus();
});
}
)();
function panelInit () {
if (LOGGING > 4) console.log("%c[Debug] Function panelInit begin", 'color:grey');
// Create the Div on the page
script_output_msg_css = "";
script_output = script_output_msg_css + '
';
script_output += '
AutoRoll Status v.'+script_version+'
';
script_output += '
';
script_output += 'Executions #'+tot_exec+'
';
script_output += 'Ads Closed: 0
';
script_output += 'Bonus: Wait
';
script_output += 'Multiply: Wait
';
script_output += 'Mode: Wait';
script_output += '';
script_output += '
';
script_output += '
';
script_output += '
';
script_output += '
Donations are welcome, BTC addr: 3FwAazZDEuy3ER4NQVp4Yqo6kDxCFntwS8 - Config HowTo - Rate - © daniele-veneno 2018-2020
';
$('#reward_points_bonuses_main_div').prepend(script_output);
}
function rewards() {
if (LOGGING > 4) console.log("%c[Debug] Function rewards begin", 'color:grey');
var bonustime = {};
var t = missingTime();
var _min = 20;
var milli_between_bonuses = Math.floor(HOURS_BETWEEN_BUY_BONUS*60*60*1000);
points = parseInt($('.user_reward_points').text().replace(',',""));
if ($("#bonus_container_free_points").length != 0) {
bonustime.text = $('#bonus_span_free_points').text();
bonustime.hour = parseInt(bonustime.text.split(":")[0]);
bonustime.min = parseInt(bonustime.text.split(":")[1]);
bonustime.sec = parseInt(bonustime.text.split(":")[2]);
bonustime.current = bonustime.hour * 3600 + bonustime.min * 60 + bonustime.sec;
if (LOGGING > 4) console.log("%c[Debug] Active Bonus missing seconds: "+bonustime.current+" -- RP avail: "+points+" -- missingTime: "+t[0], 'color:grey');
if (LOGGING > 3) console.log("%cPromo RP is active!", 'color: grey');
if(Boolean(PROMO_MODE)) $("#script_output_title_msg_mode").text("Promo");
$('#script_output_title_bonus_wait_hours').text('Active '+bonustime.hour+'h');
setCookie("last_bonus", d, 7);
isBonusActive = true;
} else {
var last_bonus_diff = Math.floor(d.getTime() - last_bonus);
if (LOGGING > 4) console.log("%c[Debug] lastBonus diff: "+last_bonus_diff+" -- last_bonus: "+last_bonus+" -- now: "+d.getTime(), 'color:grey');
bonustime.current = 0;
// Buy Bonus if missing less then _min minutes before roll
// AND has passed at least HOURS_BETWEEN_BUY_BONUS from the last one
// AND missing time > 0 AND REWARDS is true
if (Boolean(REWARDS) && t[0]<=_min && t[0] > 0 && last_bonus_diff > milli_between_bonuses) {
$('.rewards_link').not('.hide_menu').click();
if (points < 12) {
if (LOGGING > 2) console.log("No enough points to buy bonus. Less then 12. Waiting for points in next rolls");
} else if (points < 120) {
if (LOGGING > 1) console.log("buying bonus 1RP");
setTimeout(function(){ RedeemRPProduct('free_points_1'); },random(2000,16000));
tot_rp_spent_rewards=Math.floor(tot_rp_spent_rewards+12);
} else if (points < 600) {
if (LOGGING > 1) console.log("buying bonus 10RP");
setTimeout(function(){ RedeemRPProduct('free_points_10'); },random(2000,16000));
tot_rp_spent_rewards=Math.floor(tot_rp_spent_rewards+120);
} else if (points < 1200) {
if (LOGGING > 1) console.log("buying bonus 50RP");
setTimeout(function(){ RedeemRPProduct('free_points_50'); },random(2000,16000));
tot_rp_spent_rewards=Math.floor(tot_rp_spent_rewards+600);
} else {
if (LOGGING > 1) console.log("buying bonus 100RP");
setTimeout(function(){ RedeemRPProduct('free_points_100');},random(2000,16000));
tot_rp_spent_rewards=Math.floor(tot_rp_spent_rewards+1200);
}
if ($('#bonus_span_fp_bonus').length === 0)
if (points >= 4600 && Boolean(BONUS1000) ) {
if (LOGGING > 1) console.log("buying bonus 1000% roll");
setTimeout(function(){ RedeemRPProduct('fp_bonus_1000')},random(15000,35000));
tot_rp_spent_rewards=Math.floor(tot_rp_spent_rewards+3200);
}
setCookie("tot_rp_spent_rewards",tot_rp_spent_rewards,365);
//Back to the main page
setTimeout(function(){ $('.free_play_link').not('.hide_menu').click(); }, random(35000,40000));
// Update Status Menu
$("#script_output_title_msg_mode").text("promo");
} else {
// Not buying RP Bonuses
// setting colors
var c1 = 'red'; var c2 = 'red'
if (t[0] < 0){
if (LOGGING > 3) console.log('%cError getting missing time.','color:red');
$('#script_output_title_bonus_wait_hours').text('Wait');
$('#script_output_title_bonus_wait_hours').removeClass('true').addClass('false');
} else if ( t[0] >= _min ) {
if (LOGGING > 3) console.log('Not buying RPBonuses. Wait '+Math.floor(t[0]-_min)+' minutes to buy near roll');
$('#script_output_title_bonus_wait_hours').text('Wait Roll');
}
if ( last_bonus_diff < milli_between_bonuses ) {
if (LOGGING > 3) console.log('Not buying RPBonuses. Wait HOURS_BETWEEN_BUY_BONUS before buy again, missing '+Math.floor((milli_between_bonuses-last_bonus_diff)/1000/60)+' minutes');
$('#script_output_title_bonus_wait_hours').text('Wait '+Math.floor((milli_between_bonuses-last_bonus_diff)/1000/60/60)+"h");
} else c2 = 'green';
if (Boolean(REWARDS)) { c1 = 'green'; }
else {
if (LOGGING > 3) console.log('Not buying RPBonuses. Not Active by config');
$('#script_output_title_bonus_wait_hours').text('Disabled');
$('#script_output_title_bonus_wait_hours').removeClass('true').addClass('false');
}
if (LOGGING > 3) console.log('Not buying RPBonuses: Setting Variable is: %c'+Boolean(REWARDS)+' %c -- %c and missing minutes are: %c '+t[0]+' %c(<'+_min+')', 'color:'+c1, 'color:reset; font-weight:bold', 'font-weight: reset', 'color:'+c2, 'color:reset; font-weight:bold');
}
}
}
function Roll() {
if (LOGGING > 4) console.log("%c[Debug] Function Roll begin", 'color:grey');
var h = d.getHours();
if ($('#free_play_form_button').is(':visible') && ! $('#play_without_captchas_button').is(':visible')) {
r=random(1,100);
$('body').focus();
if ( (h <= 6 || h>=22) && Boolean(NIGHT_MODE) ) { //from 22 to 7am
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,50000);
else if (r <= 20) rand=random(30000,1500000);
else if (r <= 40) rand=random(60000,2000000);
else rand=random(90000,3000000);
rolling_mode="Slow";
}
if (Boolean(isBonusActive) && Boolean(PROMO_MODE) ) { //If promo is active, roll faster
if (r <= 5) rand=random(9000,3600000);
else if (r <= 20) rand=random(6000,1500000);
else if (r <= 40) rand=random(3000,1000000);
else rand=random(500,240000);
rolling_mode="Promo";
}
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);
// Real ROLL Function
rollAndRetrieve(rand);
} else if ($('#play_without_captchas_button').is(':visible') && Boolean(PLAY_WITHOUT_CAPTCHA)){
//Try to play without captcha, if enough RP
if (LOGGING > 2) console.log ("Captcha Roll");
captchaRoll();
} else {
$('#script_output_title_msg_roll').html('Waiting Next Roll');
//$("#script_output_title_msg_mode").text("Wait");
if (LOGGING > 2) console.log("No roll");
}
}
function captchaRoll() {
if (LOGGING > 4) console.log("%c[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 ("%cTry to play without captcha for "+cost_rp+" RP points. You have "+points+" RP.", 'color:purple;');
if (points >= cost_rp ) {
// ROLL anyway paying
if (LOGGING > 2) console.log ("Roll with Captcha");
$('#script_output_title_msg_roll').html('Captcha OK');
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 (tot_rp_spent_captcha+cost_rp);
setCookie("tot_rp_spent_captcha", tot_rp_spent_captcha, 365);
} else {
if (LOGGING > 2) console.log ("%cNot enough RP. No Roll", 'color: red');
$('#script_output_title_msg_roll').html('Miss RP'); // Status on page
}
}, random(1000,3000));
}
function rollAndRetrieve (rand) {
if (LOGGING > 4) console.log("%c[Debug] Function rollAndRetrieve begin", 'color:grey');
var h = d.getHours();
// Show hour when will roll in status panel
d.setSeconds(d.getSeconds() + rand/1000);
var [{ value: year },,{ value: month },,{ value: day },,{ value: hour },,{ value: minute }] = dateTimeFormat .formatToParts(d);
$('#script_output_title_msg_roll').html('Roll at '+hour+':'+minute+'');
if (LOGGING > 2) console.log('%c+++Will roll in '+rand/1000/60+' minutes','color:green');
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();
//Update Status on page
$('#script_output_title_msg_roll').html('++ Rolling NOW!'); // Status on page
if (LOGGING > 2) console.log('%c+++ROLL!','color:purple; font-weight: bold');
setTimeout(function(){
// var event= $.Event('click');
// event.ClientX = random(20,100).toFixed(0);
// event.ClientY = random(5,42).toFixed(0);
// if (LOGGING > 4) console.log('[Debug][freeRoll] Clicking at position: '+event.ClientX+':'+event.ClientY);
$('#free_play_form_button').click();
}, 500);
setTimeout(function(){
var win_btc = $('#winnings').text();
var win_lottery = $('#fp_lottery_tickets_won').text();
var win_rp = $('#fp_reward_points_won').text();
executions++;
//Update Status on page
$('#script_output_title_msg_roll').html('++ Rolled'); // Status on page
$('#script_output_title_executions_num').text(executions);
setCookie('executions', executions, 365);
if (LOGGING > 2) console.log('%cExecution number: '+executions,'font-weight:bold; color:green');
if (LOGGING > 2) console.log('%cGot '+win_btc+' btc, '+win_lottery+' tickets and '+win_rp+' RP!','font-weight:bold; color:green');
if (win_btc > 0) {
tot_btc_winning_rolling = parseFloat(parseFloat(tot_btc_winning_rolling) + parseFloat(win_btc)).toFixed(8);
setCookie('tot_btc_winning_rolling', tot_btc_winning_rolling, 365);
if (LOGGING > 2) console.log('%cBTC Won totally with script %c'+tot_btc_winning_rolling,'color: gray', 'font-weight:bold');
} else {
if (LOGGING > 1) console.log(''+'%cSome error retrieving Roll Winnings. Winning btc was: '+win_btc, 'color: red');
}
if (win_lottery > 0) {
tot_lottery_winning_rolling = parseFloat(parseFloat(tot_lottery_winning_rolling) + parseFloat(win_lottery)).toFixed(0);
setCookie('tot_lottery_winning_rolling', tot_lottery_winning_rolling, 365);
if (LOGGING > 2) console.log('%cTickets Won with script %c'+tot_lottery_winning_rolling,'color: gray', 'font-weight:bold');
} else {
if (LOGGING > 1) console.log(''+'%cSome error retrieving Roll Winnings. Winning lottery was: '+win_btc, 'color: red');
}
if (win_rp > 0) {
tot_rp_winning_rolling = parseFloat(parseFloat(tot_rp_winning_rolling) + parseFloat(win_rp)).toFixed(0);
setCookie('tot_rp_winning_rolling', tot_rp_winning_rolling, 365);
if (LOGGING > 2) console.log('%cRP Won with script %c'+tot_rp_winning_rolling,'color: gray', 'font-weight:bold');
} else {
if (LOGGING > 1) console.log(''+'%cSome error retrieving Roll Winnings. Winning RP was: '+win_btc, 'color: red');
}
}, 6999);
} else {
if (LOGGING > 3) console.log('Already Rolled maybe by some human..');
//Update Status on page
$('#script_output_title_msg_roll').html('Already Rolled'); // Status on page
setTimeout(function(){ location.reload(); }, 30000);
}
},rand);
//Random Action After ROLL
var rand1=rand+random(90000,1800000);
rand=random(0,1000);
if (rand < 500) {
if (LOGGING > 2) console.log('[Debug][freeRoll] Reload page after roll in '+rand1/1000/60+' minutes!');
setTimeout(function(){ location.reload(); }, rand1);
} else if (rand > 900 && Boolean(MULTIPLY) && h>=8) {
if (LOGGING > 0) console.log('Will multiply in '+rand1/1000/60+' minutes!');
setTimeout(function(){ multiply(); }, rand1);
} else {
if (LOGGING > 2) console.log('No action after roll. Rand was '+rand);
}
}
function lottery () {
//Plan buying lottery ticket
if(Boolean(LOTTERY)){
if (LOGGING > 4) console.log("%c[Debug] Function lottery begin", 'color:yellow');
var r = random(1,100);
var d = new Date();
var h = d.getHours();
var balance = parseInt($('#balance').text().split(".")[1]);
var randl = random(1,LOTTERY_MAX_TICKETS).toFixed(0); //Tickets to buy
if (r > 93 && h >= 5 && balance > randl) {
if (LOGGING > 2) console.log("%cBuy "+ randl + " lottery tickets in some time....", 'color:yellow');
setTimeout(function(){
$('#lottery_tickets_purchase_count').val(randl);
setTimeout(function(){
$('#purchase_lottery_tickets_button').click();
if (LOGGING > 2) console.log("%cBought "+ randl + " lottery tickets", 'color:yellow');
tot_lottery_tickets = Math.floor(tot_lottery_tickets+randl);
setCookie('tot_lottery_tickets',tot_lottery_tickets,365);
}, random(2000,4000));
}, random(40000,120000));
}
}
}
function missingTime () {
var min = 0; var sec = 0; var str = "";
str = $('title').text().split(" ")[0];
if (LOGGING > 4) console.log("%c[Debug] [missingTime] 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 { min = -1; sec = -1; }
return [min,sec];
}
function random(min,max){
return min + (max - min) * Math.random();
}
function closePopupInterval (target) {
//if (LOGGING > 4) console.log("%c[Debug] Function closePopupInterval begin", 'color:grey');
if (target.is(':visible')) {
setTimeout(function(){
if (LOGGING > 3) console.log("%cClose ADS", 'color: grey');
target.click();
ads_closed ++;
$('#script_output_title_ads_closed_num').text(ads_closed);
}, random (500,120000));
} else {
//if (LOGGING > 4) console.log("%cNot visible: "+target.attr('id')+" "+target.attr('class'), 'color: grey');
}
}
function closeRandomPopupInterval (target, randomness) {
//if (LOGGING > 4) console.log("%c[Debug] Function closeRandomPopupInterval begin", 'color:grey');
var rand = random(1,100);
if (rand < randomness && target.is(':visible')) {
setTimeout(function(){
if (LOGGING > 3) console.log("%cClose Random ADS", 'color: grey');
target.click();
ads_closed ++;
$('#script_output_title_ads_closed_num').text(ads_closed);
}, random (500,120000));
} else {
//if (LOGGING > 4) console.log("%cNot visible: "+target.attr('id')+" "+target.attr('class'), 'color: grey');
}
}
function showStatus(){
if (LOGGING > 4) console.log("%c[Debug] Function showStatus begin", 'color:grey');
var t=missingTime();
var date = new Date();
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(">>>>>>>>>> Rolls from last 8888: "+"%c"+totJack, css_bold+'color:'+c2);
// Update Status Message OnPage
script_output_msg_1 = "Config: ";
script_output_msg_1 += "REWARDS <> ";
script_output_msg_1 += "BONUS1000 <> ";
script_output_msg_1 += "MULTIPLY <> ";
script_output_msg_1 += "LOTTERY";
$('#script_output_msg_1').html(script_output_msg_1);
script_output_msg_2 = " Script Winnings: ";
script_output_msg_2 += ""+tot_btc_winning_rolling+" btc; ";
script_output_msg_2 += ""+tot_lottery_winning_rolling+" tickets; ";
script_output_msg_2 += ""+tot_rp_winning_rolling+" RP.";
script_output_msg_2 += "";
script_output_msg_2 += " Script Purchasing: ";
script_output_msg_2 += ""+tot_lottery_tickets+" lottery tickets; ";
script_output_msg_2 += ""+tot_rp_spent_rewards+" RP in bonus; ";
script_output_msg_2 += ""+tot_rp_spent_captcha+" RP in captcha. ";
script_output_msg_2 += "";
script_output_msg_2 += " Script Multiply Balance: ";
script_output_msg_2 += ""+tot_multiply_balance+" btc in ";
script_output_msg_2 += ""+tot_multiply_games+" games played ";
$('#script_output_msg_2').html(script_output_msg_2);
}
function getCookie(cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for(var i = 0; i 4) console.log("%c[Debug] Function multiply begin", 'color:grey');
var t = missingTime();
var _min = 10;
var milli_between_multiplies = Math.floor(HOURS_BETWEEN_MULTIPLY*60*60*1000);
var balance = parseInt($('#balance').text().split(".")[1]);
var bonus_mul = false;
var last_multiply_diff = Math.floor(d.getTime() - last_multiply);
if (LOGGING > 4) console.log("%c[Debug] lastMultiply diff: "+last_multiply_diff+" -- last_multiply: "+last_multiply+" -- now: "+d.getTime(), 'color:grey');
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('bonus balance: '+bonus_mul_balance+'; wager remaining: '+bonus_mul_wager_remaining);
bonus_mul = true;
} else bonus_mul = false;
var max_lose = 0; var i=0; var j=0;
if ( Boolean(bonus_mul) && bonus_mul_balance > MAX_BET && Boolean(MULTIPLY) && t[0]>_min && last_multiply_diff > milli_between_multiplies ) {
$('.double_your_btc_link').not('.hide_menu').click();
// Autobet at "martingale"
if (Boolean(MARTINGALE_AUTO)) {
setTimeout(function(){ $('#auto_bet_on').click(); }, random(2000,2200));
setTimeout(function(){ $('#autobet_base_bet').val(BASE_BET); }, random(2200,3000));
//14 rolls loosing in a row, 1 every 8156 games. Every script exec game you win ~500 sat, playing ~500 games.
setTimeout(function(){ $('#autobet_max_bet').val(MAX_BET); }, random(3500,7000));
setTimeout(function(){ $('#autobet_roll_count').val(MAX_ROLLS_AT_MULTIPLY); }, random(3500,7000));
setTimeout(function(){ $('#autobet_bet_hi').prop('checked', true); $('#autobet_bet_alternate').prop('checked', false); }, random(3500,7000));
setTimeout(function(){ $('#show_double_your_btc_auto_bet_on_lose').click(); }, random(7500,9000));
setTimeout(function(){ $('#autobet_lose_increase_bet').prop('checked', true); $('#autobet_lose_return_to_base').prop('checked', false); }, random(9100,11000));
setTimeout(function(){ $('#autobet_max_bet_stop').prop('checked', true); $('#autobet_max_bet_reset').prop('checked', false); }, random(9100,11000));
setTimeout(function(){ $('#autobet_lose_increase_bet_percent').val('100'); }, random(9100,11000));
setTimeout(function(){ $('#autobet_dnr').prop('checked', true); }, random(11000,12000));
setTimeout(function(){ $('#start_autobet').click(); }, random(17100,30000));
setCookie("last_multiply", d, 7);
} else if (Boolean(MARTINGALE_MANUAL)) {
}
} else {
if (t[0] < 0){
if (LOGGING > 3) console.log('%cError getting missing time.','color:red');
$('#script_output_title_multiply_wait_hours').text('Wait');
$('#script_output_title_multiply_wait_hours').removeClass('true').addClass('false');
} else if ( t[0] <= _min ) {
if (LOGGING > 3) console.log('Not playing multiply. Wait to play far from next roll');
$('#script_output_title_multiply_wait_hours').text('Wait Roll');
}
if ( last_multiply_diff < milli_between_multiplies ) {
if (LOGGING > 3) console.log('Not playing multiply. Wait HOURS_BETWEEN_MULTIPLY before play again, missing '+Math.floor((milli_between_multiplies - last_multiply_diff)/1000/60)+' minutes');
$('#script_output_title_multiply_wait_hours').text('Wait '+Math.floor((milli_between_multiplies - last_multiply_diff)/1000/60/60)+"h");
}
if (!Boolean(MULTIPLY)) {
if (LOGGING > 3) console.log('Not playing multiply. Disabled by config');
$('#script_output_title_multiply_wait_hours').text('Disabled');
$('#script_output_title_multiply_wait_hours').removeClass('true').addClass('false');
}
}
setTimeout(function(){ $('.free_play_link').not('.hide_menu').click(); }, random(900000,1200000));
}