您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds a martingale bot to just-dice.com
// ==UserScript== // @name nixbot // @namespace nixbot // @include https://just-dice.com/* // @description Adds a martingale bot to just-dice.com // @version 1 // @grant none // ==/UserScript== //Copyright (C) 2013 CriticalNix // //This program is free software; you can redistribute it and/or //modify it under the terms of the GNU General Public License //version 2. // //This program is distributed in the hope that it will be useful, //but WITHOUT ANY WARRANTY; without even the implied warranty of //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //GNU General Public License for more details. // //A full copy of the GNU General Public License, version 2 can be found here. http://www.gnu.org/licenses/gpl-2.0.html //------------------------------------------------------------------- var winning = 2; // 1 = winning 0 = losing var round_length = 0; // holds the amount of times we can multiply. var running = 0; //running 1 is working. var run_round = 0; var betting = 0; //1 = making bet. var start_balance = 0; var balance = 0; var start_values_check = 0; var betid = 0; var last_betid = 0; var last_betid2 = 0; var version_c = "3.0.5"; var heartbeat_bpm = 100; //this is the bots ticker if for some reason the site temp bans for spam betting lower this to 125 var bet_data = []; var arr_bets = []; var ev_data = []; var current_time = 1; var start_time = 0; var start_bet = 0; var current_bet = 0; var won = 0; var lost = 0; var win1 = 0; var lose1 = 0; var steps = 0; var reset_steps = 0; var max_win = 0; var max_loss = 0; var marti_limit = 0; var betid_check = 0; var reset_bet = 0; var start_bal = 0; var first_run = 0; var current_profit = 0; var hi_lo; var randomizer_count = 0; var randomizing = 0; var cpr; var site = 2; var ddt = "Doge-Dice.com"; var jdt = "Just-Dice.com"; var delay_bet = 1000; var reset_check = 0; var win_ratio = 0; var profit_lock_a = 0; var flot = "https://cdnjs.cloudflare.com/ajax/libs/flot/0.8.3/jquery.flot.js"; var dep = []; //window.location.reload(true); //-------------------------------------- Heart and possibly soul of the bot. Everything is called from here. function heart_beat() { gui(); footer(); cpr = !cpr; includeJS(flot); console.log(' Started ' + gets_date() + ' Heartbeat:' + heartbeat_bpm + '\n' + '\n'); setInterval(function() { if (cpr) { value_grip(); results(); stats_update(); total_check(); Martingale(); } }, heartbeat_bpm); } function includeJS(jsFile) { $('head').append($('<script>').attr('type', 'text/javascript').attr('src', jsFile)); } //-------------------------------------- determine if we are on just-dice or doge-dice function which_site() { var dd = $('div.header').text(); if (dd == ddt) { site = 1; } else { site = 0; } console.log('we are on the ' + site + "-dice site" + "\n"); } //-------------------------------------- increments max loss and max win display function max_loss_streak() { // longest loss streak $("#maxLossInput").css("color", "red"); if (lose1 > max_loss) { max_loss++; $("#maxLossInput").val(max_loss); } else { // nothing here move along XD } } function max_win_streak() { //longest win streak $("#maxWinInput").css("color", "green"); if (win1 > max_win) { max_win++; $("#maxWinInput").val(max_win); } else { // nothing here move along XD } } function stop_bank() { if ($('#profit_stop_check').prop('checked')) { var bal_checked = parseFloat($("#pct_balance").val()); var stop_bank = parseFloat($("#stop_bank").val()); if (bal_checked >= stop_bank) { running = 0; } } } function profit_lock() { if ($('#profit_lock').prop('checked')) { var bal_checked = parseFloat($("#pct_balance").val()); //profit_lock_val var profit_lock_val = parseFloat($("#profit_lock_val").val()); var checky_bal = bal_checked - profit_lock_val; if (current_profit >= profit_lock_val && profit_lock_a == 0) { profit_lock_a = 1; console.log('profit lock active'); } if (checky_bal <= 0 && profit_lock_a == 1) { running = 0; console.log('reached bottom'); } } } //-------------------------------------- Randomizer function. function randomizer() { if ($('#randomizer_check').prop('checked') && randomizer_count >= 12) { randomizer_count = 0; randomizing = 1; $("button#a_random").click(); running = 0; setTimeout(function() { $("button.seed_button").click(); running = 1; randomizing = 0; }, 1000); } } //-------------------------------------- Unused for now but will be used in future updates. function randomString(length) { var chars = "0123456789"; var string_length = length; var randomstring = ''; for (var i = 0; i < string_length; i++) { var rnum = Math.floor(Math.random() * chars.length); randomstring += chars.substring(rnum, rnum + 1); } return randomstring; } //--------------------------------------- Local storage functions function clearItem(key, value) { //console.log("Removing [" + key + ":" + value + "]"); window.localStorage.removeItem(key); } function setItem(key, value) { //console.log("Storing [" + key + ":" + value + "]"); window.localStorage.removeItem(key); window.localStorage.setItem(key, value); //console.log("Return from setItem" + key + ":" + value); } function getItem(key) { var value; //console.log('Retrieving key [' + key + ']'); value = window.localStorage.getItem(key); //console.log("Returning value: " + value); return value; } //--------------------------------------- store and load functions function loads() { var l1 = getItem('limiter'); var m1 = getItem('multiplier'); var r1 = getItem('reset_step'); var r2 = getItem('reset_value'); var s1 = getItem('stop_bank'); $('#limiter').val(l1); $('#multiplier').val(m1); $('#reset_step').val(r1); $('#reset_value').val(r2); $('#stop_bank').val(s1); } function saves() { var limiters = parseFloat($("#limiter").val()); var multipliers = parseFloat($("#multiplier").val()); var reset_steps = parseFloat($("#reset_step").val()); var reset_values = parseFloat($("#reset_value").val()); var stop_banks = parseFloat($("#stop_bank").val()); setItem('limiter', limiters); setItem('multiplier', multipliers); setItem('reset_step', reset_steps); setItem('reset_value', reset_values); setItem('stop_bank', stop_banks); } //--------------------------------------- Used to reset stats function reset_stats() { //setTimeout(function(){ $("#a_hi").trigger('click') },delay_bet); reset_check = 1; start_balance = parseFloat($("#pct_balance").val()); won = 0; win1 = 0; lose1 = 0; steps = 0; run_round = 0; lost = 0; max_win = 0; $("#maxWinInput").val(max_win); max_loss = 0; $("#maxLossInput").val(max_loss); cBust3 = 0; stats_update(); reset_check = 0; var bet_data = []; var arr_bets = []; var ev_data = []; update_graphs(); } //-------------------------------------- gathers results and increments counters function results() { var results2 = $("div#me .results")[0]; var result = $(results2).children()[0]; var betid = $($(result).children(".betid")).text(); balance = parseFloat($("#pct_balance").val()); if (betid != last_betid) { last_betid = betid; max_loss_streak(); max_win_streak(); stop_bank(); profit_lock(); var win = ($($(result).children(".profit")).text()[0] == "+"); //console.log('win:' + win + '\n'); if (win) { won++; win1++; depth(lose1); lose1 = 0; steps = 0; reset_steps = 0; winning = 1; run_round++; betting = 0; if ($('#stopwin_check').prop('checked')) { // checks to see if stop on win is checked running = 0; } update_graphs(); play_sound1(); popArray(); randomizer_count++; } else { win1 = 0; lose1++; steps++; reset_steps++; lost++; winning = 0; run_round++; hi_lo = !hi_lo; betting = 0; update_graphs(); play_sound2(); popArray(); randomizer_count++; if (first_run === 0) { lose1--; steps--; run_round--; lost--; first_run = 1; } } } } //-------------------------------------- Invest function function invest(value) { var invest_send = $('<button id="invest_all" style="width:80px;margin-right:10px;border:1px solid" onClick=\'javascript:socket.emit("invest_box", csrf); socket.emit("invest", csrf, "all", ' + value + ');\'></button>'); $($footer).append(invest_send); $("#invest_all").trigger('click'); invest_send.remove(); console.log('invested:' + value + '\n'); } //-------------------------------------- probability and stat's update function stats_update() { //probability var ccbust1 = parseFloat($("#pct_chance").val()); var ccbust2 = parseFloat($("#limiter").val()); var cBust3 = 0; var results = $("div#me .results")[0]; var result = $(results).children()[0]; var betid = $($(result).children(".betid")).text(); balance = parseFloat($("#pct_balance").val()); cBust1 = 1 - ccbust1 / 100; cBust2 = Math.pow(cBust1, ccbust2) * 100; if (cBust3 != cBust2) { cBust3 = cBust2; scientific(cBust2); $("#probability").val(cBust2.toFixed(10)); } $("#ebank").val(balance); //betsInput ---total bets $("#betsInput").val(run_round); //current loss length $("#c_loss").val(lose1); //profitInput ---profit -- start_bal if (betid != last_betid2 || reset_check == 1) { last_betid2 = betid; current_profit = balance - start_balance; $("#profitInput").val(current_profit.toFixed(8)); } win_ratio = ((won / run_round) * 100); if (isNaN(win_ratio)) { win_ratio = 0; } if (win_ratio !== 0) { win_ratio = win_ratio - ccbust1; } $("#percentWonInput").val(win_ratio.toFixed(8)); if ($("#reconnect").is(':visible')) { //Thanks 'eltopo' prevents user timeout. $("#reconnect").click(); } } //-------------------------------------- Populates bet array with information then offers to save on bust function save_to_file() { window.webkitRequestFileSystem(window.TEMPORARY, 1024 * 1024, function(fs) { fs.root.getFile('open-with-notepad.bin', { create: true }, function(fileEntry) { fileEntry.createWriter(function(fileWriter) { var blob = new Blob([arr_bets]); fileWriter.addEventListener("writeend", function() { // navigate to file, will download location.href = fileEntry.toURL(); }, false); fileWriter.write(blob); }, function() {}); }, function() {}); }, function() {}); } function popArray() { //populate bet array if ($('#bet_logging').prop('checked')) { var results = $("div#me .results")[0]; var result = $(results).children()[0]; var betid = $($(result).children(".betid")).text(); var c_balance = parseFloat($("#pct_balance").val()); var c_chance = parseFloat($("#pct_chance").val()); var arr_bet = parseFloat($("#pct_bet").val()); arr_bets.push('\n'); arr_bets.push(gets_date() + ' '); arr_bets.push('Bet number:' + run_round + ' '); arr_bets.push('betid:' + betid + ' '); arr_bet1 = scientific(arr_bet); arr_bet2 = parseFloat(arr_bet1).toFixed(8); arr_bets.push('bet amount:' + arr_bet2 + ' '); arr_bets.push('Balance:' + c_balance + ' '); arr_profit = scientific(current_profit); arr_profit2 = parseFloat(arr_profit).toFixed(8); arr_bets.push('profit:' + arr_profit2 + ' '); arr_bets.push('chance:' + c_chance + ' |'); } } //-------------------------------------- Show version in footer function footer() { $footer = $('<div style="position:fixed;bottom:0px;background-color:White;">v' + version_c + '</div>'); $("body").append($footer); } //-------------------------------------- Grabs single instance values function value_grip() { if (start_values_check === 0) { start_balance = parseFloat($("#pct_balance").val()); if (isNaN(start_balance)) { console.log('start_balance ...Loading' + '\n'); } else if (start_balance > 0.00000001) { start_values_check = 1; console.log('start balance found: ' + start_balance + '\n'); } } } //-------------------------------------- Martingale Function function Martingale() { // pass bet value here bet_click(bet_value) if (running == 1) { if (winning === 1 && betting === 0) { randomizer(); bet_click(reset_bet); } else if (winning === 0 && betting === 0) { var new_bet = parseFloat($("#pct_bet").val() * $multiplierInput.val()); randomizer(); bet_click(new_bet); } else { //console.log('martingale else'); } } } //-------------------------------------- bets from a value passed to it if it has not reached step limiter. Also switch on loss and random hi lo function bet_click(bet_value) { var rndhilo = Math.random() < 0.5 ? 1 : 0; var marti_limit = parseFloat($("#limiter").val()); var marti_reset_value = parseFloat($("#reset_value").val()); //value to reset to var marti_reset_step = parseFloat($("#reset_step").val()); //step number to reset to var balance_check_1 = parseFloat($("#pct_balance").val()); var x = $("#step_option").val() delay_bet = parseFloat($("#bot_delay_length").val()); if (reset_steps == (marti_reset_step - 1) && steps < marti_limit && betting === 0 && running == 1 && $('#resetL_check').prop('checked')) { reset_steps = 0; if ($('#switch_loss_check').prop('checked') && betting === 0 && running == 1) { if (hi_lo) { betting = 1; var bet = bet_value * marti_reset_value; bet = scientific(bet); $("#pct_bet").val(bet); setTimeout(function() { if (bet > balance_check_1) { bust(); } else { $("#a_hi").trigger('click'); } }, delay_bet); } else { betting = 1; var bet = bet_value * marti_reset_value; bet = scientific(bet); $("#pct_bet").val(bet); setTimeout(function() { if (bet > balance_check_1) { bust(); } else { $("#a_lo").trigger('click'); } }, delay_bet); } } else if ($('#rstep_opts').prop('checked') && steps < marti_limit && betting === 0 && running == 1) { //rstep_opts if (hi_lo) { betting = 1; var step_option_num = parseFloat($("#option_loss").val()); if ($('#step_option option:selected').val() == 1) { var bet = (bet_value * marti_reset_value) + step_option_num; bet = scientific(bet); console.log('new bet: ' + bet + ' added: ' + step_option_num); $("#pct_bet").val(bet); } else if ($('#step_option option:selected').val() == 2) { var bet = (bet_value * marti_reset_value) - step_option_num; bet = scientific(bet); if (bet < 0) { console.log('Preventing negative number:: bet set to minimum'); bet = 0.00000001; } console.log('new bet: ' + bet + ' minus: ' + step_option_num); $("#pct_bet").val(bet); } setTimeout(function() { if (bet > balance_check_1) { bust(); } else { $("#a_hi").trigger('click'); } }, delay_bet); } else { betting = 1; var step_option_num = parseFloat($("#option_loss").val()); if ($('#step_option option:selected').val() == 1) { var bet = (bet_value * marti_reset_value) + step_option_num; bet = scientific(bet); console.log('new bet: ' + bet + ' added: ' + step_option_num); $("#pct_bet").val(bet); } else if ($('#step_option option:selected').val() == 2) { var bet = (bet_value * marti_reset_value) - step_option_num; bet = scientific(bet); if (bet < 0) { console.log('Preventing negative number:: bet set to minimum'); bet = 0.00000001; } console.log('new bet: ' + bet + ' minus: ' + step_option_num); $("#pct_bet").val(bet); } setTimeout(function() { if (bet > balance_check_1) { bust(); } else { $("#a_lo").trigger('click'); } }, delay_bet); } } else { betting = 1; var bet = bet_value * marti_reset_value; bet = scientific(bet); $("#pct_bet").val(bet); setTimeout(function() { if (bet > balance_check_1) { bust(); } else { $("#a_hi").trigger('click'); } }, delay_bet); } } else if (steps < marti_limit && betting === 0 && running == 1) { if ($('#switch_loss_check').prop('checked')) { if (hi_lo) { betting = 1; bet_value = scientific(bet_value); $("#pct_bet").val(bet_value); setTimeout(function() { if (bet > balance_check_1) { bust(); } else { $("#a_hi").trigger('click'); } }, delay_bet); } else { betting = 1; bet_value = scientific(bet_value); $("#pct_bet").val(bet_value); setTimeout(function() { if (bet > balance_check_1) { bust(); } else { $("#a_lo").trigger('click'); } }, delay_bet); } } else { betting = 1; bet_value = scientific(bet_value); $("#pct_bet").val(bet_value); setTimeout(function() { if (bet > balance_check_1) { bust(); } else { $("#a_hi").trigger('click'); } }, delay_bet); } } else if (randomizing == 1) { console.log('Randomizing Please wait....'); } else { bust(); } } function bust() { log_message('***limit reached***'); console.log('***limit reached***'); steps = 0; running = 0; $("#pct_bet").val(reset_bet); play_sound3(); } //-------------------------Looks at bet depth and passes it to array ready for bar chart. function depth(x) { if (!dep[x]) { dep[x] = 1; } else { dep[x]++; } } //-------------------------------------- Graphing functions function generate_graph() { var res = []; var gb = parseFloat($("#graph_length").val()); for (var i = 0; i < bet_data.length; ++i) { if (res.length >= gb) { while (res.length > gb) { res.shift(); } res.push([i, bet_data[i]]); } else { res.push([i, bet_data[i]]); } } return res; } function generate_ev_graph() { var res = []; var gb = parseFloat($("#graph_length").val()); for (var i = 0; i < ev_data.length; ++i) { if (res.length >= gb) { while (res.length > gb) { res.shift(); } res.push([i, ev_data[i]]); } else { res.push([i, ev_data[i]]); } } return res; } function generate_bar_graph() { var res = []; for (var i = 0; i < dep.length; ++i) { res.push([i, dep[i]]); } return res; } function update_graphs() { var g_bal = $('#pct_balance').val(); var ev_data1 = $("#percentWonInput").val(); ev_data.push(ev_data1); bet_data.push(g_bal); var data1 = generate_graph(); var data2 = generate_ev_graph(); var data = [{ data: data1, label: "profit", yaxis: 1, color: 'green', lines: { show: true } }, { data: data2, label: "EV", yaxis: 2, color: 'red', lines: { show: true } }]; var options = { legend: { position: "nw", noColumns: 2, container: $("#chartLegend") }, yaxes: [{ }, { position: "right" }] }; var plotb = $.plot("#g_placeholder2", [generate_bar_graph()], { series: { color: '#cdffcc' }, bars: { show: true }, yaxis: {}, xaxis: {} }); var plot2 = $.plot("#g_placeholder", data, options); plotb.setData([generate_bar_graph()]); plotb.setupGrid(); plotb.draw(); } //---------------------------------------------------------------------------- builds user interface //-------------------------------------- Opens help html function basicPopup(url) { popupWindow = window.open(url, 'popUpWindow', 'height=500,width=500,left=100,top=100,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no, status=yes'); } function basicPopup2(url) { popupWindow = window.open(url, 'popUpWindow', 'height=620,width=1024,left=100,top=100,resizable=yes,scrollbars=yes,toolbar=no,menubar=no,location=no,directories=no, status=no'); } function gui() { // //-------------------------------------- Invest all and divest all buttons $('.button_inner_group:nth(2)').append( '<button onClick=\'javascript:socket.emit("invest_box", csrf); socket.emit("invest", csrf, "all", $("#invest_code").val());\'>invest all<div class="key">N</div></button>').append( '<button onClick=\'javascript:socket.emit("invest_box", csrf); socket.emit("divest", csrf, "all", $("#divest_code").val());\'>divest all<div class="key">M</div></button>'); //-------------------------------------- Options var $o_row1 = $('<div class="row"/>'); //sound_check $sound_c = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="sound_check" id="sound_check" /> Play sound on win! </font></div>'); $o_row1.append($sound_c); //sound_check2 $sound_check2 = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="sound_check2" id="sound_check2" /> Play sound on loss! </font></div>'); $o_row1.append($sound_check2); //sound_check3 $sound_check3 = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="sound_check3" id="sound_check3" /> Play sound on bust! </font></div>'); $o_row1.append($sound_check3); //stopwin_check $swin_c = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="stopwin_check" id="stopwin_check" /> Stop on win</font></div>'); //smile_check $smile_c = $('<div style="margin-right:10px"><font color="white">type !emote in chat to toggle smileys </font></div>'); $o_row1.append($smile_c); //switch_loss_check $switch_loss_check = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="switch_loss_check" id="switch_loss_check" /> switch hi/lo on loss </font></div>'); $o_row1.append($switch_loss_check); //resetL_check $reset_loss_safety = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="resetL_check" id="resetL_check" value="checked" /> check to enable reset step </font></div>'); $o_row1.append($reset_loss_safety); //profit_stop_check $profit_stop_check = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="profit_stop_check" id="profit_stop_check" /> stop on bank </font></div>'); $o_row1.append($profit_stop_check); //randomizer_check $randomizer_check = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="randomizer_check" id="randomizer_check" /> randomize every 12 </font></div>'); $o_row1.append($randomizer_check); //bet_logging $bet_logging = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="bet_logging" id="bet_logging" /> bet logging enabled </font></div>'); $o_row1.append($bet_logging); //profit_lock $profit_lock = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="profit_lock" id="profit_lock" /> Profit lock </font></div>'); $o_row1.append($profit_lock); //profit_lock_val $profit_lock_val = $('<div style="margin-left:10px;margin-right:10px"><font color="white"><input style="border:1px solid; border-color: #505050;" id="profit_lock_val" value="0"/> value to lock as profit </font></div>'); $o_row1.append($profit_lock_val); //graph_length $graph_length = $('<div style="margin-left:10px;margin-right:10px"><font color="white"><input style="border:1px solid; border-color: #505050;" id="graph_length" value="200"/> max graph length </font></div>'); $o_row1.append($graph_length); //bot_delay_length $bot_delay_length = $('<div style="margin-left:10px;margin-right:10px"><font color="white"><input style="border:1px solid; border-color: #505050;" id="bot_delay_length" value="0"/> bot delay. 1000 = 1 second </font></div>'); $o_row1.append($bot_delay_length); $optional_lossInput = $('<form style="margin-left:10px;margin-right:10px" action=""><input style="border:1px solid; border-color: #505050;" id="option_loss" value="0"/><select id="step_option" name="step_option"><option value="1">plus</option><option value="2">minus</option></select><font color="white"> R step opts</font></form>'); $o_row1.append($optional_lossInput); //rstep_opts $rstep_opts = $('<div style="margin-right:10px"><font color="white"><input type="checkbox" value="1" name="rstep_opts" id="rstep_opts" /> Enable R step opts</font></div>'); $o_row1.append($rstep_opts); //-------------------------------------- builds user interface $container = $('<div id="chipper" class="container"/>'); $container2 = $('<div id="chipper2" class="container"/>'); var $container2 = $('<div id="chipper2" class="container"/>'); var $button_group = $('<div style="width:99%;border:2px solid; border-color: #525252;" class="button_group"/>'); var $options_group = $('<div style="border:2px solid; border-color: #505050;" class="button_group"/>'); $container.append($button_group); //$container2.append($options_group) var $martingale_button = $('<button class="button_label chance_toggle" style="margin-top:27px;margin-right:0px;height:65px;;width:70px;color:transparent;background-color:transparent;border:none;"></button>'); $martingale_button.click(function() { //----- console.log('button clicked'); //----- }); var $run_div = $('<div background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;" class="button_inner_group"/>'); //-------------------------------------- Outer UI buttons $run = $('<button id="c_run" style="color:green;margin-bottom:5px;margin-top:5px;margin-right:2px;height:22px">Go</button>'); $run.click(function() { //----- //Start function //----- reset_bet = parseFloat($("#pct_bet").val()); running = 1; console.log('running = 1' + '\n' + 'Start bet:' + scientific(reset_bet)); }); $run_div.append($run); $store = $('<button id="c_run" style="color:blue;margin-bottom:5px;margin-top:5px;margin-right:2px;height:22px">Store</button>'); $store.click(function() { //----- saves(); //----- }); $run_div.append($store); $load = $('<button id="c_run" style="color:blue;margin-bottom:5px;margin-top:5px;margin-right:2px;height:22px">Load</button>'); $load.click(function() { //----- loads(); //----- }); $run_div.append($load); $Stop = $('<button id="c_stop" style="color:red;margin-bottom:5px;margin-top:5px;height:22px">Stop</button>'); $Stop.click(function() { //----- //Stop function //----- running = 0; console.log('running = 0' + '\n'); steps = 0; }); $run_div.append($Stop); $reset = $('<button title="Resets stats" style="margin-right:10px;border:1px solid" id="fleft chatbutton" >reset stats</button>'); $reset.click(function() { //----- reset_stats(); //----- }); $container.append($reset); $showhidetrigger3 = $('<button title="Toggles bot graph" style="margin-right:10px;border:1px solid" id="showhidetrigger3" href="#">profit/ev</button>'); //toggle hide for graph $showhidetrigger3.click(function() { $('#chipper3').toggle(500); //update_graphs(); $.plot($("#g_placeholder"), [ [] ]); }); $container.append($showhidetrigger3); $showhidetrigger3 = $('<button title="Toggles bot depth graph" style="margin-right:10px;border:1px solid" id="showhidetrigger4" href="#">depth</button>'); //toggle hide for graph $showhidetrigger3.click(function() { $('#chipperb4').toggle(500); //update_graphs(); $.plot($("#g_placeholder2"), [ [] ]); }); $container.append($showhidetrigger3); $showhidetrigger13 = $('<button title="Toggles bot ev graph" style="margin-right:10px;border:1px solid" id="showhidetrigger4" href="#">ev</button>'); //toggle hide for graph $showhidetrigger13.click(function() { $('#chipperb5').toggle(500); //update_graphs(); $.plot($("#g_placeholder3"), [ [] ]); }); //$container.append($showhidetrigger13); $showhidetrigger4 = $('<button title="Toggles bot option gui" style="margin-right:10px;border:1px solid" id="showhidetrigger4" href="#">options</button>'); //toggle hide for options $showhidetrigger4.click(function() { $('#chipper5').toggle(500); }); $container.append($showhidetrigger4); $showhidetrigger5 = $('<button title="Saves betting data" style="margin-right:10px;border:1px solid" id="showhidetrigger5" href="#">save</button>'); //toggle hide for options $showhidetrigger5.click(function() { save_to_file(); }); $container.append($showhidetrigger5); $showhidetrigger6 = $('<button title="Much Help" style="margin-right:10px;border:1px solid" id="showhidetrigger6" href="#">HELP</button>'); //Popup help $showhidetrigger6.click(function() { var help_p = "https://googledrive.com/host/0BywRa_utENFgV0ZBNmdVRTJ0a0k/DD.html "; basicPopup(help_p); }); //$container.append($showhidetrigger6); $calculator = $('<button title="Much Help" style="margin-right:10px;border:1px solid" id="calculator" href="#">Calculator</button>'); //Popup help $calculator.click(function() { var calc = "http://sci-calc.comlu.com/ "; basicPopup2(calc); }); //$container.append($calculator); $stasis = $('<button title="Stops internal functions" style="margin-right:10px;border:1px solid" id="showhidetrigger6" href="#">Cardiology</button>'); //Popup help $stasis.click(function() { cpr = !cpr; }); $container.append($stasis); /* $showhidetrigger7 = $('<button title="Much Help" style="margin-right:10px;border:1px solid" id="showhidetrigger6" href="#">HELP</button>'); //Popup help $showhidetrigger7.click(function () { randomizer(); }); $container.append($showhidetrigger7); */ //-------------------------------------- Inner UI input boxes var $row1a = $('<div class="row"/>'); ////////////////////////////////////// row 1a var $limiter = $('<p style="border:1px solid; border-color: #505050;" class="llabel">Steps</p>'); $limiterInput = $('<input style="border:1px solid; border-color: #505050;" id="limiter" value="100"/>'); var $limiterEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>'); $row1a.append($limiter); $row1a.append($limiterInput); $row1a.append($limiterEnd); var $row1b = $('<div class="row"/>'); ////////////////////////////////////// row 1b var $multiplier = $('<p style="border:1px solid; border-color: #505050;" class="llabel">multiplier</p>'); $multiplierInput = $('<input style="border:1px solid; border-color: #505050;" id="multiplier" value="1"/>'); var $multiplierEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">x</p>'); $row1b.append($multiplier); $row1b.append($multiplierInput); $row1b.append($multiplierEnd); var $row1c = $('<div class="row"/>'); ////////////////////////////////////// row 1c var $required_bank = $('<p style="border:1px solid; border-color: #505050;" class="llabel">required </p>'); $required_bankInput = $('<input style="border:1px solid; border-color: #505050;" id="required_bank" class="readonly" value="0"/>'); var $required_bankEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">Ð</p>'); var $required_bankEndb = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">€</p>'); $row1c.append($required_bank); $row1c.append($required_bankInput); if (site == 1) { $row1c.append($required_bankEnd); } else if (site === 0) { $row1c.append($required_bankEndb); } var $row1d = $('<div class="row"/>'); ////////////////////////////////////// row 1d var $reset_step = $('<p style="border:1px solid; border-color: #505050;" class="llabel">reset step</p>'); $reset_stepInput = $('<input style="border:1px solid; border-color: #505050;" id="reset_step" value="7"/>'); var $reset_stepEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>'); $row1d.append($reset_step); $row1d.append($reset_stepInput); $row1d.append($reset_stepEnd); var $row1e = $('<div class="row"/>'); ////////////////////////////////////// row 1e var $current_loss = $('<p style="border:1px solid; border-color: #505050;" class="llabel">cur loss</p>'); $current_lossInput = $('<input style="border:1px solid; border-color: #505050;" id="c_loss" class="readonly" value="0"/>'); var $current_lossEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>'); $row1e.append($current_loss); $row1e.append($current_lossInput); $row1e.append($current_lossEnd); var $row2a = $('<div class="row"/>'); ////////////////////////////////////////////// row 2a var $maxLoss = $('<p style="border:1px solid; border-color: #505050;" class="llabel">loss streak</p>'); $maxLossInput = $('<input style="border:1px solid; border-color: #505050;" id="maxLossInput" class="readonly" value="0"/>'); var $maxLossEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>'); $row2a.append($maxLoss); $row2a.append($maxLossInput); $row2a.append($maxLossEnd); var $row2b = $('<div class="row"/>'); ////////////////////////////////////////////// row 2b var $maxWin = $('<p style="border:1px solid; border-color: #505050;" class="llabel">win streak</p>'); $maxWinInput = $('<input style="border:1px solid; border-color: #505050;" id="maxWinInput" class="readonly" value="0"/>'); var $maxWinEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>'); $row2b.append($maxWin); $row2b.append($maxWinInput); $row2b.append($maxWinEnd); var $row2c = $('<div class="row"/>'); ////////////////////////////////////// row 2c var $percentWon = $('<p style="border:1px solid; border-color: #505050;" class="llabel">ev</p>'); $percentWonInput = $('<input style="border:1px solid; border-color: #505050;" id="percentWonInput" class="readonly" value="0"/>'); var $percentWonEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>'); $row2c.append($percentWon); $row2c.append($percentWonInput); $row2c.append($percentWonEnd); var $row2d = $('<div class="row"/>'); ////////////////////////////////////// row 2d var $reset_value = $('<p style="border:1px solid; border-color: #505050;" class="llabel">reset mult</p>'); $reset_valueInput = $('<input style="border:1px solid; border-color: #505050;" id="reset_value" value="2.1"/>'); var $reset_valueEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">x</p>'); var $reset_valueEndb = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">x</p>'); $row2d.append($reset_value); $row2d.append($reset_valueInput); if (site == 1) { $row2d.append($reset_valueEnd); //Ð } else if (site === 0) { $row2d.append($reset_valueEndb); //€ } var $row3a = $('<div class="row"/>'); ///////////////////////////////// row 3a var $bets = $('<p style="border:1px solid; border-color: #505050;" class="llabel">total bets</p>'); $betsInput = $('<input style="border:1px solid; border-color: #505050;" id="betsInput" class="readonly" value="0"/>'); var $betsEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">#</p>'); $row3a.append($bets); $row3a.append($betsInput); $row3a.append($betsEnd); var $row3b = $('<div class="row"/>'); ///////////////////////////////// row 3b var $probability = $('<p style="border:1px solid; border-color: #505050;" class="llabel">probability</p>'); $probabilityInput = $('<input style="border:1px solid; border-color: #505050;" id="probability" class="readonly" value="0"/>'); var $probabilityEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">%</p>'); $row3b.append($probability); $row3b.append($probabilityInput); $row3b.append($probabilityEnd); var $row3c = $('<div class="row"/>'); ////////////////////////////////////////////// row 3c var $profit = $('<p style="border:1px solid; border-color: #505050;" class="llabel">profit</p>'); $profitInput = $('<input style="border:1px solid; border-color: #505050;" id="profitInput" class="readonly" value="0.00000000"/>'); var $profitEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">Ð</p>'); var $profitEndb = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">€</p>'); $row3c.append($profit); $row3c.append($profitInput); if (site == 1) { $row3c.append($profitEnd); //Ð } else if (site === 0) { $row3c.append($profitEndb); //€ } var $row3d = $('<div class="row"/>'); ////////////////////////////////////////////// row 3d var $stop_bank = $('<p style="border:1px solid; border-color: #505050;" class="llabel">stop bank</p>'); $stop_bankInput = $('<input style="border:1px solid; border-color: #505050;" id="stop_bank" value="0.00000000"/>'); var $stop_bankEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">Ð</p>'); var $stop_bankEndb = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">€</p>'); $row3d.append($stop_bank); $row3d.append($stop_bankInput); if (site == 1) { $row3d.append($stop_bankEnd); //Ð } else if (site === 0) { $row3d.append($stop_bankEndb); //€ } var $row3e = $('<div class="row"/>'); ////////////////////////////////////////////// row 3e var $ebank = $('<p style="border:1px solid; border-color: #505050;" class="llabel">bank</p>'); $ebankInput = $('<input style="border:1px solid; border-color: #505050;" id="ebank" class="readonly" value="0.00000000"/>'); var $ebankEnd = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">Ð</p>'); var $ebankEndb = $('<p style="border:1px solid; border-color: #505050;" class="rlabel">€</p>'); $row3e.append($ebank); $row3e.append($ebankInput); if (site == 1) { $row3e.append($ebankEnd); //Ð } else if (site === 0) { $row3e.append($ebankEndb); //€ } //-------------------------------------- Graph Div var $graphDiv = $('<fieldset id="chipper3" style="margin-left:70px;background-color:rgba(35,35,35,0.9);border:2px solid; border-color: #999999;width:700px;height:200px;margin-right:3px" class="graph-container"><div style="padding: 0;width:700px;height:200px;margin-right:0px" id="g_placeholder" class="graph-placeholder"></div>'); //graph holder var $legends = $('</br><div id="chartLegend" style="float:right;margin-right:10px;background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;" ></div>'); var $graphDiv2 = $('<fieldset id="chipperb4" style="margin-left:70px;background-color:rgba(35,35,35,0.9);border:2px solid; border-color: #999999;width:700px;height:100px;margin-right:3px" class="graph-container2"><div style="padding: 0;width:700px;height:100px;margin-right:0px" id="g_placeholder2" class="graph-placeholder2"></div>'); //graph holder var $graphDiv3 = $('<fieldset id="chipperb5" style="margin-left:70px;background-color:rgba(35,35,35,0.9);border:2px solid; border-color: #999999;width:700px;height:100px;margin-right:3px" class="graph-container2"><div style="padding: 0;width:700px;height:100px;margin-right:0px" id="g_placeholder3" class="graph-placeholder3"></div>'); //graph holder //-------------------------------------- Putting it all together var $fieldset4 = $('<fieldset style="margin-left:33px;margin-right:auto;background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;"/>'); $fieldset4.append($run_div); var $fieldset_o = $('<div id="chipper5" style="margin-top:8px;border:2px solid; border-color: #505050;" class="button_group"/>'); $fieldset_o.append($o_row1); var $fieldset = $('<fieldset style="margin-left:50px;margin-right:2px;margin-top:10px;background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;"/>'); $fieldset.append($row1a); $fieldset.append($row1b); $fieldset.append($row1c); $fieldset.append($row1d); $fieldset.append($row1e); var $fieldset2 = $('<fieldset style="margin-left:auto;margin-right:2px;margin-top:10px;background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;"/>'); $fieldset2.append($row2a); $fieldset2.append($row2b); $fieldset2.append($row2c); $fieldset2.append($row2d); $fieldset2.append($fieldset4); var $fieldset3 = $('<fieldset style="margin-left:auto;margin-right:2px;margin-top:10px;background-color:rgba(35,35,35,0.5);border:2px solid; border-color: #999999;"/>'); $fieldset3.append($row3a); $fieldset3.append($row3b); $fieldset3.append($row3c); $fieldset3.append($row3d); $fieldset3.append($row3e); $button_group.append($fieldset); $button_group.append($fieldset2); $button_group.append($fieldset3); //$button_group.append($martingale_button); $button_group.append($graphDiv); $button_group.append($legends); $button_group.append($graphDiv2); //$button_group.append($graphDiv3); $button_group.append("<div align='center' style='color:white;font-size:10pt;'>Inkha suite V" + version_c + " </div>"); $container.append($fieldset_o); ///////////////////////////////// chat base buttons //////////////////////////////////////// var $chat_send = $('div#chat .chatbase:last-child'); //location of chatbase var $chat_button_group = $('<div style="width:675px;background-color:#787878 ;border:2px solid; border-color: #505050;" />'); $button1 = $('<button title="REALLY DONT PRESS" style="width:80px;margin-right:10px;border:1px solid" id="button1" >DO NOT PRESS</button>'); $button1.click(function() { alert('ok now the world is gonna end... happy?'); }); //$chat_button_group.append($button1); //$chat_send.append($chat_button_group); ///////////////////////////////////////////////////////////////////////////////////////////////// //-------------------------------------- Add ui elements to page $(".chatstat").append('<a title="Toggles bot gui" id="showhidetrigger" href="#"><font color="blue">Show Bot</font></a>'); //toggles hide for gui $(".chatstat").append($container); $(".chatstat").append('<div style="clear:left;"/>'); //-------------------------------------- Hide Graph and options Div $(document).ready(function() { // toggle hide function for graph $('#chipper3').hide(); $('#chipperb4').hide(); //$('#chipperb5').hide(); $('#chipper5').hide(); }); //-------------------------------------- Add toggle for UI $(document).ready(function() { // toggle hide function for gui $('#chipper').hide(); $('a#showhidetrigger').click(function() { $('#chipper').toggle(500); }); }); } //-------------------------------------- grabs date in readable format function gets_date() { var now = new Date(); var strDateTime = [ [AddZero(now.getDate()), AddZero(now.getMonth() + 1), now.getFullYear()].join("/"), [AddZero(now.getHours()), AddZero(now.getMinutes())].join(":"), now.getHours() >= 12 ? "PM" : "AM" ].join(" "); function AddZero(num) { return (num >= 0 && num < 10) ? "0" + num : num + ""; } return strDateTime; } //-------------------------------------- sleep function function sleep(milliseconds) { var start = new Date().getTime(); for (var i = 0; i < 1e7; i++) { if ((new Date().getTime() - start) > milliseconds) { break; } } } //-------------------------------------- scientific notation function scientific(n) { n = String(n); var info = /([\d\.]+)e-(\d+)/i.exec(n); if (!info) { return n; } var num = info[1].replace('.', ''), numDecs = info[2] - 1; var output = "0."; for (var i = 0; i < numDecs; i++) { output += "0"; } output += num; return output; } //-------------------------------------- starts on page load $(document).ready(function() { which_site(); console.log('Welcome to the Enhancement suite V' + version_c + ''); log_message('Welcome to the Enhancement suite V' + version_c + ''); console.log('\n'); heart_beat(); }); function total_check() { //logic and check if bot has enough bank for martingale if ($multiplierInput !== undefined && $limiterInput !== undefined) if ($.isNumeric($multiplierInput.val()) && $.isNumeric($limiterInput.val()) && $.isNumeric($('#pct_bet').val())) { var total = 0; var mult = 1; var i; var res_val = parseFloat($("#reset_value").val()) - 1; var res_step = parseFloat($("#reset_step").val()); if ($('#resetL_check').prop('checked')) { for (i = 0; i < $limiterInput.val(); i++) { total += $('#pct_bet').val() * mult; mult *= $multiplierInput.val(); } var total2 = total * res_val; total += total2; $("#required_bank").val(total.toFixed(8)); } else { for (i = 0; i < $limiterInput.val(); i++) { total += $('#pct_bet').val() * mult; mult *= $multiplierInput.val(); } $("#required_bank").val(total.toFixed(8)); } if (total !== 0 && total < $('#pct_balance').val()) { // Good to go } else { // not enough balance } } else { //something is missing } } //-------------------------------------- Post message in the log area function log_message(message) { document.querySelector(".log").innerHTML = (message); setInterval(function() { document.querySelector(".log").innerHTML = " "; }, 6000); } //-------------------------------------- Win sound function play_sound1() { if ($('#sound_check').prop('checked')) { //snd_alert.pause(); //snd_beep.pause(); //coin_drop.play(); //coin_drop.currentTime = 0; } else { return; } } //-------------------------------------- Lose sound function play_sound2() { if ($('#sound_check2').prop('checked')) { //snd_alert.pause(); //coin_drop.pause(); //snd_beep.play(); //snd_beep.currentTime = 0; } else { return; } } //-------------------------------------- Bust sound function play_sound3() { if ($('#sound_check3').prop('checked')) { //snd_beep.pause(); //coin_drop.pause(); //snd_alert.play(); //snd_alert.currentTime = 0; //alert("Bot has bust !!"); } else { return; } }