Toaster Kitty Script for Crash

Toaster Kitty, UN crash sceneggiatura del gioco, è pensato per coloro che mirano a una ricompensa sostanziosa, potenzialmente oltre 50 volte la scommessa iniziale. Imposta il tuo pagamento iniziale e puoi modificare le impostazioni per le perdite e il profitto minimo. Lo script automatizza il processo da lì. È stato preso da BC.Game forumed è stato rifattorizzato per farlo funzionare.

var config = {
  mainTitle: { label: "*** Nubs27's Toaster Kitty ***", type: "title" },
  payout: { label: "Exit Point Minimum", value: 88, type: "number" },
  increase: { label: "Increase Payout", value: 0.05, type: "number" },
  losses: { label: "Minimum Profit on Win", value: 0.01, type: "number" },
  stopTitle: { label: "Stop When", type: "title" },
  stop: { label: "Coins Lost >", value: 1, type: "number" },
  wins: { label: "wins =", value: 1, type: "number" },
};
function main() {
  var isPlaying = false;
  var gamesPlayed = 0;
  var currentGameID = 0;
  var lastResult = "Not Played";
  var lastCrash = 2;
  var prevCashOut = lastCrash;
  var baseBet = config.losses.value / config.payout.value;
  var currentBet = baseBet;
  var lastBet = currentBet;
  var didBet = false;
  var gameInfoLogged = false;
  var scriptHistory = [];
  var updateConsole = false;
  var currentMultiplier = config.payout.value;
  var lastMultiplier = config.payout.value - 0.05;
  var coinLost = 0;
  var wins = 0;
  var losses = 0;
  game.on("GAME_STARTING", function () {
    // set base bet and show initial data log
    if (gamesPlayed < 1) {
      log.info("     Toaster Kitty");
      log.info("     by Nubs27");
      log.info("    ****************");
      baseBet = config.losses.value / config.payout.value;
      if (!Number.isInteger(config.wins.value)) {
        log.info("***** Attention *****");
        log.info("wins = " + config.wins.value + " is NOT valid");
        log.info("Integers ONLY");
        log.info(
          "I could have the script auto round the number, but you like being funny too :)"
        );
        game.stop();
      }
    }
    checkForStops();
    // adjust current bet and multiplier
    if (gamesPlayed < 2 || lastResult === "Won") {
      currentBet = baseBet;
      currentMultiplier = config.payout.value;
      isPlaying = true;
      if (gamesPlayed < 2) {
        log.info(`Played < 2 games`);
      }
      if (lastResult === "Won") {
        log.success(`Won!`);
      }
      log.info(`Current bet: ${currentBet}`);
      log.info(`Current Multiplier: ${currentMultiplier}`);
    }
    // adjust current bet and multiplier
    if (lastResult === "Lost") {
      currentBet = (coinLost + config.losses.value) / (currentMultiplier - 1);
      currentMultiplier = lastMultiplier + config.increase.value;
      log.error(`Lost`);
      log.info(`Current bet: ${currentBet}`);
      log.info(`Current Multiplier: ${currentMultiplier}`);
    }
    // adjust current bet
    if (currentBet < currency.minAmount) {
      currentBet = currency.minAmount;
      log.info(`Current Bet < Min Bet`);
      log.info(`Current bet: ${currentBet}`);
    }
  });
  function checkForStops() {
    if (coinLost > config.stop.value) {
      log.info("Maximum Coin Loss Reached. Script Stopped");
      game.stop();
    }
    if (wins === config.wins.value) {
      log.info("Congratulations");
      log.info("wins goal reached. Script Stopped");
      game.stop();
    }
    currentMultiplier = currentMultiplier * 100;
    currentMultiplier = Math.round(currentMultiplier);
    currentMultiplier = currentMultiplier / 100;
    gamesPlayed++;
    setTimeout(placeBet, 0);
  }
  function placeBet() {
    if (!didBet) {
      game.bet(currentBet, currentMultiplier);
      isPlaying = true;
      didBet = true;
      log.info("    ***********");
    }
    gameInfoLogged = false;
  }
  game.on("GAME_ENDED", function () {
    var lastGame = game.history[0];
    var lastCrash = lastGame.crash / 100;
    currentGameID = lastGame.gameId;
    prevCashOut = lastCrash;
    lastBet = currentBet;
    lastMultiplier = currentMultiplier;
    didBet = false;
    if (!gameInfoLogged) {
      logAllInfo();
    }
  });
  function logAllInfo() {
    if (scriptHistory.push(prevCashOut) > 999) {
      scriptHistory.shift();
    }
    if (isPlaying === true && prevCashOut >= currentMultiplier) {
      var wonAmount = lastBet * currentMultiplier - coinLost;
      lastResult = "Won";
      wins++;
      losses = 0;
      coinLost = config.losses.value;
      log.info("[Game Won] " + wonAmount + " " + currencyName);
    } else if (isPlaying && prevCashOut < currentMultiplier) {
      lastResult = "Lost";
      losses++;
      coinLost = coinLost + lastBet;
    }
    currentGameID = currentGameID.toString();
    if (currentGameID.endsWith("0")) {
      updateConsole = true;
    }
    if (updateConsole) {
      log.info(
        "Amount Lost in search of this Kitty " +
          (coinLost - config.losses.value) +
          " " +
          currency.currencyName
      );
      updateConsole = false;
    }
    gameInfoLogged = true;
  }
}

Proviamo ad analizzarlo e cerchiamo di massimizzarne il profitto.

Configurazione iniziale

  • Punto di uscita minimo (pagamento): 88x (Questo è il tuo moltiplicatore target. Il tuo obiettivo è incassare prima di questo moltiplicatore.)
  • Aumenta il pagamento: 0,05 (Ogni volta che perdi, aumenti il ​​moltiplicatore target di questo importo.)
  • Profitto minimo sulla vincita: $ 0,01 (vuoi garantire un profitto minimo di $ 0,01 per ogni vincita.)
  • Monete perdute >: 1 (Interrompi se il totale delle monete perse supera $ 1.)
  • Vince =: 1 (Stop dopo 1 vittoria.)

Considerata questa impostazione, procediamo con un esempio reale, applicando la strategia dopo una perdita, come suggerisce lo script.

Passaggio 1: calcolare la scommessa iniziale

  • La scommessa base è determinata in modo che una vincita copra il profitto minimo desiderato. Dato che il pagamento è 88x e desideri un profitto di almeno $ 0,01: Scommessa base=Pagamento profitto minimo=0.0188

Per semplicità, arrotondiamo questo valore a $ 0,00011 per il nostro esempio.

Passaggio 2: inizia a giocare

Inizi con una scommessa di $ 0,00011 puntando a un moltiplicatore 88x.

Passaggio 3: aggiustamento dopo una perdita

Lo script calcola una nuova scommessa dopo una perdita per garantire la copertura delle perdite più il profitto minimo. Il calcolo dopo una perdita tiene conto del totale delle monete perse e del nuovo moltiplicatore target.

Se l'ultimo risultato è stato una perdita, lo script utilizza la seguente formula per aggiustare la scommessa:

New Bet = (Coin Lost+Minimum Profit) / (Current Multiplier−1)

Analizziamo come si presentano questi aggiustamenti con numeri reali, tenendo conto di una perdita iniziale. Supponendo che la moneta persa finora sia $ 0,00011 (l'importo della prima scommessa) e stiamo modificando il nostro moltiplicatore target a 88,05x a causa dell'aumento dopo una perdita.

Passaggio 4: calcolo della nuova scommessa dopo la prima perdita

Supponendo che la moneta totale persa sia ancora solo la scommessa iniziale ($ 0,00011) e che tu voglia non solo recuperarla, ma anche assicurarti il ​​profitto minimo sulla prossima vincita, con il moltiplicatore aumentato ora a 88,05:

New Bet = (0.00011+0.01) / (88.05−1) 

Calcoliamo la nuova scommessa:

New Bet = 0.01011 / 87.05 ≈ 0.0001161

Quindi, la tua prossima scommessa dovrebbe essere di circa $ 0,00012 (arrotondando per eccesso per semplicità) puntando a un moltiplicatore di 88,05x.

Fase 5: Continuare la Strategia

  • vincente: se la partita successiva vince a un valore pari o superiore al moltiplicatore target, ripristina la scommessa sulla scommessa base originale ($ 0,00011) e sul moltiplicatore target (88x).
  • Ulteriori perdite: Se perdi di nuovo, ripeti il ​​processo di calcolo con i totali aggiornati per le monete perse e regola nuovamente il moltiplicatore target di 0,05.

Logica accurata

Questa strategia si basa sull'aumento della scommessa dopo una perdita quanto basta per coprire l'importo perso più un profitto minimo, regolando ogni volta leggermente verso l'alto il moltiplicatore target per puntare a rendimenti leggermente più alti. Ciò crea un atto di equilibrio tra il recupero dalle perdite e il raggiungimento di profitti consistenti, anche se piccoli.

Nonostante abbia come obiettivo un grande moltiplicatore per la scommessa, la strategia delineata nello script mira a un profitto moderato.

Ottimizza il profitto

Per ottimizzare la configurazione per una strategia equilibrata che mira a una migliore sostenibilità e una ragionevole possibilità di ottenere moltiplicatori più grandi, tenendo conto anche della gestione del rischio, adattiamo la configurazione:

var config = {
  mainTitle: { label: "*** Nubs27's Toaster Kitty ***", type: "title" },
  payout: { label: "Exit Point Minimum", value: 2.5, type: "number" }, // Adjusted for more achievable targets
  increase: { label: "Increase Payout", value: 0.02, type: "number" }, // Slight increase after each loss for gradual recovery
  losses: { label: "Minimum Profit on Win", value: 0.01, type: "number" }, // Keeping the minimum profit target realistic
  stopTitle: { label: "Stop When", type: "title" },
  stop: { label: "Coins Lost >", value: 0.5, type: "number" }, // Adjusted to a more cautious stop loss value
  wins: { label: "wins =", value: 3, type: "number" }, // Setting a win target for taking profits and pausing
};

Spiegazione delle regolazioni

  1. Punto di uscita minimo (pagamento): Abbassato a 2.5x da 88x. Questo obiettivo è più raggiungibile e consente vincite più frequenti, il che è fondamentale per una strategia che prevede il recupero dalle perdite e l’accumulo di profitti nel tempo.
  2. Aumenta il pagamento: Adeguato a 0.02x, giù da 0.05x. Questo incremento minore dopo ogni perdita consente un approccio più graduale all’aumento del moltiplicatore target. Aiuta a gestire il bankroll in modo più efficace non aumentando troppo rapidamente l'obiettivo di vincita richiesto dopo una perdita.
  3. Profitto minimo sulla vincita: Resta a $0.01, mantenendo l'obiettivo di garantire un profitto minimo per ogni vincita. Ciò garantisce che la strategia miri a guadagni incrementali costanti.
  4. Monete perse (Stop Loss): Impostato 0.5 (assumendo che si tratti di una parte ragionevole del bankroll del giocatore in base ai fondi totali). È un'impostazione di stop-loss più conservativa che aiuta a gestire il rischio prevenendo grandi perdite.
  5. Vince (presa di profitto): Aumentato a 3 wins prima di fare una pausa o di fermarsi. Ciò fornisce una chiara strategia di presa di profitto, consentendo la raccolta di guadagni e la rivalutazione della strategia.

Concentrandosi sullo scenario peggiore in cui ogni partita risulta in una perdita fino al raggiungimento del limite di perdita totale di 0,5, potresti potenzialmente giocare fino a 64 partite prima di raggiungere la condizione di stop. Questo calcolo presuppone che dopo ogni perdita, la scommessa venga leggermente aumentata nel tentativo di coprire le perdite precedenti e garantire un profitto minimo, seguendo la logica della strategia ma senza ricalcolare esplicitamente la scommessa in base al risultato di ogni gioco.


Pertanto, è effettivamente consigliabile modificare la configurazione iniziale per ottimizzare i risultati. L'attuale configurazione, pur fornendo una strategia semplice, indica un rischio elevato per la quantità di gioco possibile prima di raggiungere lo stop loss, insieme a una vincita massima per partita relativamente modesta. Bilanciare il potenziale di vincite e perdite in modo più efficace può portare a una strategia più sostenibile, aumentando potenzialmente sia il divertimento che la redditività del gioco.