Untitled

mail@pastecode.io avatar
unknown
plain_text
2 years ago
25 kB
1
Indexable
Never
//******************* Nubs27's Smart Script for Crash  *******************
//
//
//
// If you find this script helpful please consider donating to Nubs27 or tipping on NanoGames.io:
// Referral Link: https://n-luzqe.nanogames.io/
//
// Donations accepted in many coin/token types. List & Addresses:
// https://sites.google.com/view/nanogamescrashscripts/home/donation-addresses
//
//
//
var config = {
    mainTitle: { label: '*** Nubs27\'s Smart Script for Crash ***', type: 'title' },
    auto: { label: '', value: 'Script', type: 'radio', options: [
           { value: 'Script', label: 'Script chooses Base Bet'},
           { value: 'Player', label: 'Player chooses Base Bet'} ]},
    bet: { label: 'Base Bet', value: currency.minAmount, type: 'number' },
    lossTitle: { label: 'Stop When ', type: 'title' },
    stop: { label: 'Coins Lost >', value: 1, type: 'number' },
    end: { label: 'Minutes >', value: 250, type: 'number' },
    profit: { label: 'Profit >', value: 100, type: 'number' },
};

function main () {
//PayOuts checked in the Stats Update
const MultiplierArray = [2.5, 3.00, 5.00, 6.00, 7.00];
const LMultiplierArray = [10.00, 20.00, 50.00, 100.00];
var version = "v2.3";
var PayOutPercents = [];
var PayOutConfidence = [];
var Array2Filter = [];
var FilteredArray = [];
var ScriptHistory = [];
var Trains = []; // Red Train IDs - finding gaps between & correlation between gap & duration
var History = [];
var RoundsPlayed = 0;
var RoundsViewed = 0;
var LastGameID = 1;
var CurrentGameID = LastGameID + 1;
var MinimumBet = currency.minAmount;
var MaxBet = (currency.amount / 10);
var TotalBets = 0;
var CurrentMultiplier = MultiplierArray[1];
var LastMultiplier = MultiplierArray[1];
var MaxLossesEncountered = 3;
var MostLost = 0;
var LargestMulitplier = 2;
var BaseBet = config.bet.value;
var CurrentBet = BaseBet;
var LastBet = BaseBet;
var LastShrek = CurrentGameID;
var LastTrain = 0;
var Gap = 0;
var AverageGap = 0;
var LargestBet = [0,0];
var Enable100ID = 1000000;
var LastResult = "Won";
var CoinLost = 0;
var StopLossCoin = config.stop.value;
var Losses = 0;
var Wins = 0;
var Red = 0;
var Green = 0;
var StartTime = new Date();
var EndTime = new Date();
var TimeDiff = (EndTime - StartTime);
var StartBalance = currency.amount;
var EndBalance = 0;
var Profit = 0;
var ATHProfit = 0;
var ProfPerMin = 0;
var NetProfit = 0;
var DisplayGreeting = "False";
var GotHistory = "False";
var BetYet = "False";
var LoggedBetData = "False";
var GameInfoLogged = "False";
var StrategyFound = "False";
var IsPlaying = "False";
var UpdateBets = "False";
var Enable100 = "False";
var LastCrash = 0;
var PrevCashOut = 0;
var WonAmount = 0;
var FindThisMultiplier = 1;
var FindShouldHave = 2;
var ThisAverage = 1;
var HistorySlice = 50;
var Paused = "True";
var IndexMax = PayOutConfidence[0];
var MaxIndex = 0;
var GetNumber = 0;

// Welcome the Player to the Script
console.clear();
engine.on('GAME_STARTING', function () {
    if (DisplayGreeting == "False") {
        log.info('     Nubs27s Smart Script for Crash');
        log.info("      ****************");
        log.info("See Web Console for more Information (Press F12)");
        console.log('%c~~~~~~~~~~~~~~~~~ Nubs27\'s Smart Script for Crash ~~~~~~~~~~~~~~~~~','color:Purple; font-weight:bold');
        console.log('%cScript Start Time: ' + StartTime,'color:Purple; font-weight:200');
        console.log('  %cWelcome ' , 'color:Purple; font-weight:bold');
        console.log('  %cYour Starting Balance is: ' + StartBalance + ' ' + currency.currencyName, 'color:Purple; font-weight:bold');
        if (config.auto.value == 'Player') {
            if (config.stop.value > currency.amount) {
                MaxBet = (currency.amount / 10);
                config.stop.value = currency.amount * 0.98;
                console.log('%c[WARNING]: Stop Loss is above your Bankroll','color:Orange; font-weight:bold');
                console.log('%c[WARNING]: Stop Loss Updated to ' + config.stop.value, 'color:Orange; font-weight:bold');
            }
            if (config.bet.value > (config.stop.value / 15000)) {
                log.info('[WARNING]: Script Recommends a bankroll of at least ' + (BaseBet * 15000) + '' + currency.currencyName + ' for the Base Bet you provided');
                log.info('[WARNING]: Script Recommends a bankroll of at least ' + (BaseBet * 20000) + '' + currency.currencyName + ' for the Base Bet you provided');
                log.info('[WARNING]: Script Recommends a bankroll of at least ' + (BaseBet * 25000) + '' + currency.currencyName + ' for the Base Bet you provided');
            }
            console.log('  %cYou Input: ' + BaseBet + ' ' + currency.currencyName + ' as the Base Bet', 'color:Purple; font-weight:bold');
        }else{
            betupdate();
            console.log('  %cYour Starting Base Bet is: ' + BaseBet + ' ' + currency.currencyName, 'color:Purple; font-weight:bold');
        }
        console.log('  %cYour Stoppers are: Coin Lost > ' + config.stop.value + '; Minutes > ' + config.end.value + '; Profit > ' + config.profit.value, 'color:Purple; font-weight:bold');
        console.log('%c~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~','color:Purple; font-weight:bold');
        if (config.stop.value > currency.amount) {
            MaxBet = (currency.amount / 10);
            config.stop.value = currency.amount * 0.95;
            console.log('%c[WARNING]: Stop Loss Updated to ' + config.stop.value, 'color:Orange; font-weight:bold');
        }
    }
    DisplayGreeting = "True";
    if (GotHistory == "False") {
        getnanohistory();
        GotHistory = "True";
        console.log(ScriptHistory);
        LastShrek = [];
        LastTrain = [];
    }
//
//
//
//Everything above here only runs 1 time
    console.log(' ----------------------------');
    CurrentGameID = (LastGameID + 1);
    console.log('[Round ID]: ' + CurrentGameID);
    if (StrategyFound == "False") {
        strategy();
    }
//Checks User Parameters for Stopping Script
    checkstoppers();
    CurrentBet = BaseBet;
    MaxIndex = Math.floor(Math.random() * MaxIndex);
    CurrentMultiplier = GetNumber;
    CurrentBet = ((CoinLost + BaseBet) / CurrentMultiplier - 1);
    checkbet();
    if (BetYet == "False") {
        engine.bet(CurrentBet, CurrentMultiplier);
        console.log("[Betting] " + CurrentBet.toFixed(7) + " at " + CurrentMultiplier + "x");
        log.info("[Betting] " + CurrentBet.toFixed(7) + " at " + CurrentMultiplier + "x");
    }
    BetYet = "True";
});
function getnanohistory() {
    History = engine.getHistory();
    for (i = 0; i < History.length; i++) {
        ScriptHistory.push(History.crash / 100);
        RoundsViewed++;
    }
}
function strategy() {
// Is there a Payout with a 80% Confidence or Higher? If not, pause.
    findconfidence();
// Which Payout has highest confidence based upon history & math?
    findlargestindex();
//    console.log('[Index] ' + '(' + MaxIndex + ')' + ' PayOut: ' + MultiplierArray[MaxIndex] + ' [Largest Confidence] ' + PayOutConfidence[MaxIndex]);
//    console.log(' PayOut ' + MultiplierArray[MaxIndex] + '; Confidence Level ' + PayOutConfidence[MaxIndex] + ' %');
    GetNumber = MultiplierArray[MaxIndex];
// Randomize the PayOut
    randompayout();
//    console.log('[Get Number] is: ' + GetNumber);
    checkforstreaks();
    CurrentMultiplier = GetNumber;
    StrategyFound = "True";
// Which Payout has highest confidence based upon streakiness of rounds?
}
function randompayout() {
    if (LastResult == "Lost" && CurrentMultiplier > 1.98) {
        GetNumber = (CurrentMultiplier * 0.95);
    }else if (LastResult =="Lost") {
        GetNumber = (CurrentMultiplier * 1.25);
    }
    GetNumber = GetNumber * 100;
    GetNumber = Math.floor(Math.random() * GetNumber) + 211;
    GetNumber = GetNumber / 100;
    if (isNaN(GetNumber)) {
        GetNumber = Math.floor(Math.random() * 311) + 251;
        GetNumber = GetNumber / 100;
    }
}
function checkforstreaks() {
    threeafterthree();
    minitrains();
    prevpayouts();
    htrains();
    tens();
//    hundred();
    HistorySlice = 50;
}
function tens() {
    FindThisMultiplier = 9.99;
    HistorySlice = 10;
    historyfilter();
    if (FilteredArray.length > 2) {
        CurrentBet = BaseBet;
        CurrentMultiplier = 3.11;
        console.log('[Bet Adjustment] PayOut +10x = ' + FilteredArray.length);
    }
}
function hundred() {
    FindThisMultiplier = 69;
    HistorySlice = 100;
    historyfilter();
    if (Enable100 == "True" && (CurrentGameID - Enable100ID) > 25) {
        Enable100 = "False";
    }
    if (Enable100 == "True" && LastResult == "Won") {
        Enable100 = "False";
    }
    if (FilteredArray.length === 0) {
        if (Enable100 == "True") {
            CurrentMultiplier = 88.00;
            CurrentBet = ((CoinLost + (BaseBet * Losses)) / (CurrentMultiplier - 1));
            console.log('Manadory run at 100x');
        }
    }
}
function historyfilter() {
    Array2Filter = ScriptHistory.slice(0,[HistorySlice]);
    FilteredArray = Array2Filter.filter(function (e) {
        return e > FindThisMultiplier;
    });
}
function htrains() {
    if (Red > 5) {
        CurrentMultiplier = Math.floor(Math.random() * 311) + 199;
        CurrentMultiplier = CurrentMultiplier / 100;
        CurrentBet = ((CoinLost + BaseBet) / (CurrentMultiplier - 1));
        GetNumber = CurrentMultiplier;
        console.log('[Bet Adjustment] Reds > 5');
    }
    if (Red > 9) {
        CurrentMultiplier = Math.floor(Math.random() * 488) + 235;
        CurrentMultiplier = CurrentMultiplier / 100;
        CurrentBet = ((CoinLost + BaseBet) / (CurrentMultiplier - 1));
        GetNumber = CurrentMultiplier;
        console.log('[Bet Adjustment] Reds > 5');
    }
}
function prevpayouts() {
    if (ScriptHistory[0] > 5.00 || ScriptHistory[1] > 5.00 || ScriptHistory[2] > 5.00) {
        CurrentMultiplier = Math.floor(Math.random() * 299) + 233;
        CurrentMultiplier = CurrentMultiplier / 100;
        GetNumber = CurrentMultiplier;
        console.log('[Bet Adjustment] 5x in last 3 rounds');
    }
    if (LastResult == "Won") {
        CurrentMultiplier = Math.floor(Math.random() * 311) + 215;
        CurrentMultiplier = CurrentMultiplier / 100;
        GetNumber = CurrentMultiplier;
        CurrentBet = ((CoinLost + (BaseBet * Losses)) / (CurrentMultiplier - 1));
    }

}
function minitrains() {
    if (Green > 3 && LastResult == "Lost") {
        CurrentBet = ((CoinLost + (BaseBet * Losses)) / (CurrentMultiplier - 1));
        CurrentMultiplier = 2.14;
        GetNumber = CurrentMultiplier;
        console.log('[Bet Adjustment] Green x3 & Loss');
    }
    if (Green > 3 && LastResult == "Won") {
        CurrentBet = BaseBet;
        CurrentMultiplier = 3.11;
        GetNumber = CurrentMultiplier;
        console.log('[Bet Adjustment] Green x3 & Won');
    }
    if (Red > 3 || Green > 3) {
        CurrentMultiplier = Math.floor(Math.random() * 311) + 199;
        CurrentMultiplier = CurrentMultiplier / 100;
        CurrentBet = ((CoinLost + (BaseBet * Losses)) / (CurrentMultiplier - 1));
        GetNumber = CurrentMultiplier;
        console.log('[Bet Adjustment] Red/Green x3');
    }
}
function threeafterthree () {
    if (ScriptHistory[0] > 2.99 && ScriptHistory[1] > 2.99 && ScriptHistory[2] > 2.99) {
        if ((CurrentGameID - LastTrain) > 15 && (CurrentGameID - LastShrek > 10)) {
            if (LastResult == "Won") {
                CurrentBet = BaseBet * 2;
                CurrentMultiplier = 2.14;
                GetNumber = CurrentMultiplier;
                console.log('[Bet Adjustment] 3x after 3 rounds & Won');
            }
            if (LastResult == "Lost") {
                CurrentMultiplier = Math.floor(Math.random() * 288) + 211;
                CurrentMultiplier = CurrentMultiplier / 100;
                CurrentBet = ((CoinLost + (BaseBet * Losses)) / (CurrentMultiplier - 1));
                GetNumber = CurrentMultiplier;
                console.log('[Bet Adjustment] 3x after 3 rounds & Lost');
            }
        }
    }
    
}
function findconfidence() {
    PayOutConfidence = [];
    for (i = 0; i < PayOutPercents.length; i++) {
        if (PayOutPercents < 100) {
            PayOutConfidence = (100 - PayOutPercents);
            PayOutConfidence = Math.abs(PayOutConfidence);
            PayOutConfidence = (PayOutConfidence + 25);
        }else if (PayOutPercents == 100) {
            PayOutConfidence = 25;
        }else{
            PayOutConfidence = 0;
        }
        if (i > 3) {
            PayOutConfidence = (PayOutConfidence - 25);
        }
        if (i > 5) {
            PayOutConfidence = (PayOutConfidence - 25);
        }
        if (PayOutConfidence < 0) {
            PayOutConfidence = 0;
        }
    }
}
function findlargestindex() {
    IndexMax = PayOutConfidence[0];
    MaxIndex = 0;
    for (var i = 1; i < PayOutConfidence.length; i++) {
        if (PayOutConfidence >= IndexMax) {
            MaxIndex = i;
            IndexMax = PayOutConfidence;
        }
    }
}

function checkbet() {
    MinimumBet = currency.minAmount;
    BaseBet = config.bet.value;
//Check bet against player bankroll --- For what parameters???
//Check bet against site bankroll  - is there enough to win all we want?
    if (CurrentBet < BaseBet) {
        CurrentBet = BaseBet;
    }
    if (CurrentBet < MinimumBet) {
        CurrentBet = MinimumBet;
    }      
    if (CurrentBet > MaxBet) {
        CurrentBet = MaxBet;
        console.log('[Bet Adjustment] Survive Losses');
    }
    if (CurrentBet > currency.maxAmount) {
        CurrentBet = currency.maxAmount;
        MaxBet = currency.maxAmount / 5;
        console.log('[Bet Adjustment] Maximum Bet allowed by platform');
    }
    if (CurrentBet > LargestBet[0]) {
        LargestBet[0] = CurrentBet;
        LargestBet[1] = CurrentMultiplier;
    }
}
engine.on('GAME_ENDED', function (data) {
    console.log(data);
    RoundsViewed++;
    LastCrash = data.crash;
    PrevCashOut = LastCrash;
    LastGameID = data.gameId;
    if (GameInfoLogged == "False") {
        loglastcrash(data);
    }
    updateplayer();
    updatestats();
    CurrentGameID = CurrentGameID.toString();
    if (CurrentGameID.endsWith('0')) {
        console.log(version);
        console.log('%c~~Nov~~~~ Update Completed ~~~~2019~~','color:blue;font-weight:bold');
        log.info('~~Nov~~~~ Update Completed ~~~~2019~~');
        log.info(version);
    }
    if (UpdateBets == "True" && LastResult == "Won") {
        betupdate();
        UpdateBets = "False";
    }
    BetYet = "False";
    StrategyFound = "False";
    LoggedBetData = "False";
    Paused = "False";
});
function loglastcrash(data) {
    if (PrevCashOut > LargestMulitplier) {
        LargestMulitplier = PrevCashOut;
    }
    if (PrevCashOut < 2.01) {
        Red++;
        Green = 0;
        if (Red == 6) {
            if (LastTrain === 0) {
                Trains = [];
            }
            Trains.unshift(CurrentGameID);
            Gap = CurrentGameID - LastTrain;
            AverageGap = (AverageGap + Gap) / Trains.length;
            console.log('Logging Round ' + CurrentGameID + ' as H Train');
            console.log('Average Gap ' + AverageGap + ' between H Trains');
            log.info('Logging Round ' + CurrentGameID + ' as H Train');
            console.log('Gap from last H Train ' + Gap + ' rounds');
            log.info('Gap from last H Train ' + Gap + ' rounds');
            LastTrain = CurrentGameID;
        }
    }else{
        Green++;
        Red = 0;
        if (Green == 6) {
            LastShrek = CurrentGameID;
            console.log('Logging Round ' + CurrentGameID + ' as Shrek');
            log.info('Logging Round ' + CurrentGameID + ' as Shrek');
        }
    }
    if (CoinLost > MostLost) {
        MostLost = CoinLost;
    }
    if (ScriptHistory.unshift(PrevCashOut) > 999) ScriptHistory.pop();
//Check for if round was played
    if (data.wager > 0) {
        TotalBets = TotalBets + CurrentBet;
        data.wager = CurrentBet;
        IsPlaying = "True";
        winorlose(data);
        RoundsPlayed++;
        LastBet = CurrentBet;
        LastMultiplier = CurrentMultiplier;
    }else{
        LastResult = "Not Played";
    }
}
function winorlose (data) {
    if (data.cashedAt) {
        WonAmount = ((CurrentBet * CurrentMultiplier) - CoinLost - CurrentBet);
        Profit = Profit + WonAmount;
        LastResult = "Won";
        Wins++;
        Losses = 0;
        if (Profit > ATHProfit) {
            ATHProfit = Profit;
            CoinLost = 0;
        }else{
            CoinLost = ATHProfit - Profit;
        }
        log.info("[Profit] " + WonAmount);
        console.log('%c[Result] Round Won. ' + 'Net Profit of ' + WonAmount.toFixed(7),'color:green');
    }else{
        LastResult = "Lost";
        Losses++;
        Wins = 0;
        CoinLost = CoinLost + CurrentBet;
        console.log('%c[Result] Round ' + LastResult,'color:red');
        log.info('Round Lost');
    }
    if (Losses > MaxLossesEncountered) {
        MaxLossesEncountered = Losses;
        console.log("Encountered Streak of " + Losses + " Losses Before Win");
        log.info("Encountered Streak of " + Losses + " Losses Before Win");
    }
    if (Losses > 3) {
        console.log('%c[Coin Lost] Cumulative Since Last Win: ' + CoinLost.toFixed(7),'color:red');
        log.info('%c[Coin Lost] Cumulative Since Last Win: ' + CoinLost.toFixed(7));
    }
}
function updatestats() {
    //Lists PayOuts under 10x for last 50 rounds
    for (i = 0; i < MultiplierArray.length; i++) {
        FindThisMultiplier = MultiplierArray;
        FindMultiplierHistory();
        PayOutPercents = ThisAverage;
    }
    //Lists PayOuts 10x and over for last 100 rounds
    if (RoundsViewed > 100) {
        HistorySlice = 100;
        CurrentGameID = CurrentGameID.toString();
        if (CurrentGameID.endsWith('0')) {
            console.log("In the last " + HistorySlice + " rounds there was: ");
        }
        for (i = 0; i < LMultiplierArray.length; i++) {
            FindThisMultiplier = LMultiplierArray;
            FindMultiplierHistory();
        }
    }
//    console.log(PayOutPercents);
}
function FindMultiplierHistory() {
    FindThisMultiplier = (FindThisMultiplier - 0.01);
    Array2Filter = ScriptHistory.slice(0,[HistorySlice]);
    FilteredArray = Array2Filter.filter(function (e) {
        return e > FindThisMultiplier;
        });
    FindThisMultiplier = (FindThisMultiplier + 0.01);
    DisplayTimesSeen();
    findpercents();
}
function DisplayTimesSeen() {
    FindShouldHave = (Array2Filter.length / FindThisMultiplier);
    FindShouldHave = (FindShouldHave * 100);
    FindShouldHave = Math.round(FindShouldHave);
    FindShouldHave = (FindShouldHave / 100);
    CurrentGameID = CurrentGameID.toString();
    if (CurrentGameID.endsWith('0')) {
        console.log("PayOuts " + FindThisMultiplier + "x & Higher " + Math.round(FindShouldHave) + " times. There were " + FilteredArray.length);
    }
}
function findpercents() {
    ThisAverage = FilteredArray.length / Math.round(FindShouldHave);
    ThisAverage = (ThisAverage * 100);
    ThisAverage = Math.round(ThisAverage);
}
function updateplayer() {
    EndBalance = currency.amount;
    NetProfit = EndBalance - StartBalance;
    var ProfitPercent = (NetProfit / StartBalance) * 100;
    EndTime = new Date();
    TimeDiff = ((EndTime - StartTime) / 1000 )/ 60;
    ProfPerMin = (Profit / TimeDiff);
    CurrentGameID = CurrentGameID.toString();
    if (CurrentGameID.endsWith('0')) {
        console.log(" ");
        log.info(" ");
        console.log('%c~~~~~~~~~~ NubsScript Update ~~~~~~~~~~','color:blue;font-weight:bold');
        log.info('~~~~~  NubsScript Update  ~~~~~');
        figuretime();
        console.log("Begining Bank " + StartBalance.toFixed(7) + " Current Bank " + currency.amount.toFixed(7) + " " + currency.currencyName);
        log.info("Begining Bank " + StartBalance.toFixed(7) + " Current Bank " + currency.amount.toFixed(7) + " " + currency.currencyName);
        console.log("Current Base Bet: " + config.auto.value + " "+ BaseBet  + " " + currency.currencyName);
        log.info("Current Base Bet: " + BaseBet + " " + currency.currencyName);
        console.log("Session Net Profit " + NetProfit.toFixed(7) + ' ' + currency.currencyName + " or " + ProfitPercent.toFixed(2) + "% ");
        log.info("Session Net Profit " + NetProfit.toFixed(7) + ' ' + currency.currencyName + " or " + ProfitPercent.toFixed(2) + "% ");
        console.log("Profit Per Minute " + ProfPerMin.toFixed(7) + ' ' + currency.currencyName);
        log.info("Profit Per Minute " + ProfPerMin.toFixed(7) + ' ' + currency.currencyName);
        console.log("Highest PayOut Seen: " + LargestMulitplier + "x");
        log.info("Highest PayOut Seen: " + LargestMulitplier + "x");
        console.log("Cumulative Amount Bet: " + TotalBets.toFixed(7) + " " + currency.currencyName);
        log.info("Cumulative Amount Bet: " + TotalBets.toFixed(7) + " " + currency.currencyName);
        console.log("Biggest Bet Placed " + LargestBet[0] + " at " + LargestBet[1] + "x");
        log.info("Biggest Bet Placed " + LargestBet[0] + " at " + LargestBet[1] + "x");
        console.log("Largest Loss: " + MostLost.toFixed(7) + " " + currency.currencyName + " on " + MaxLossesEncountered + " consecutive losses");
        log.info("Largest Loss: " + MostLost.toFixed(7) + " " + currency.currencyName + " on " + MaxLossesEncountered + " consecutive losses");
        if (Trains.length > 2) {
            console.log("Hilarious Train IDs:");
            console.log(Trains);
        }
        console.log("In the last " + HistorySlice + " rounds there was: ");
    }
    RoundsViewed = RoundsViewed.toString();
    if (RoundsViewed.endsWith('00') && config.auto.value == "Script") {
        UpdateBets = "True";
    }
}
function figuretime() {
// get total seconds between the times
var delta = Math.abs(StartTime - EndTime) / 1000;
// calculate (and subtract) whole days
var days = Math.floor(delta / 86400);
delta -= days * 86400;
// calculate (and subtract) whole hours
var hours = Math.floor(delta / 3600) % 24;
delta -= hours * 3600;
// calculate (and subtract) whole minutes
var minutes = Math.floor(delta / 60) % 60;
delta -= minutes * 60;
// what's left is seconds
var seconds = delta % 60;  // in theory the modulus is not required
if (days > 0) {
    console.log("Viewed " + RoundsViewed + " Rounds in " + days + " days " + hours + " hours " + minutes + " minutes");
    log.info("Viewed " + RoundsViewed + " Rounds in " + days + " days " + hours + " hours " + minutes + " minutes");
}else if (hours > 0) {
    console.log("Viewed " + RoundsViewed + " Rounds in " + hours + " hours " + minutes + " minutes");
    log.info("Viewed " + RoundsViewed + " Rounds in " + hours + " hours " + minutes + " minutes");
}else{
    console.log("Viewed " + RoundsViewed + " Rounds in " + minutes + " minutes");
    log.info("Viewed " + RoundsViewed + " Rounds in " + minutes + " minutes");
}
}
function checkstoppers() {
    if (TimeDiff > config.end.value && LastResult == "Won") {
        log.info("Stopped Due to User Parameters (Minutes)");
        console.log("Stopped Due to User Parameters (Minutes)");
        engine.stop();
    }
    if (Profit > config.profit.value && LastResult == "Won") {
        log.info("Stopped Due to User Parameters (Profit)");
        console.log("Stopped Due to User Parameters (Profit)");
        engine.stop();
    }
    if (CoinLost > StopLossCoin) {
        log.info("Stopping Due to User Parameters");
        console.log("Stopping Due to User Parameters (Coin Lost)");
        engine.stop();
    }
}
function betupdate() {
    BaseBet = currency.amount / 15000;
    if (BaseBet < currency.minAmount) {
        BaseBet = currency.minAmount;
        console.log("Bankroll too small. Attempting script by user's command");
    }
    config.bet.value = BaseBet;
    MaxBet = (currency.amount / 10);
    config.stop.value = currency.amount * 0.98;
    console.log('%c[WARNING]: Stop Loss Updated to ' + config.stop.value, 'color:Orange; font-weight:bold');
    console.log('%c[WARNING]: Base Bet Updated to ' + BaseBet, 'color:Orange; font-weight:bold');
}
}