Peristiwa permainan

Setiap taruhan mengubah seed menjadi satu atau lebih angka antara 0 dan 1 (float). Berikut cara setiap Original mengubah float tersebut menjadi hasil.

  • DiceLemparan = floor(float × 10,001) / 100, jadi angka dari 0.00 sampai 100.00.Tampilkan kode
    const roll = Math.floor(float * 10001) / 100;// float 0.43050002 -> lemparan 43.05
  • LimboHasil = 0.99 ÷ float, dipotong menjadi 2 desimal, minimal 1.00×.Tampilkan kode
    const point = (1e8 / (float * 1e8)) * 0.99;const result = Math.max(Math.floor(point * 100), 100) / 100;// float 0.43050002 -> 2.29×
  • MinesSatu float per ranjau. Setiap float mengambil satu petak dari petak yang tersisa (Fisher–Yates). Petak yang terambil adalah ranjau.Tampilkan kode
    const tiles = [0, 1, 2, …, 24]; // 0 = kiri atas, petak yang terambil keluar dari daftarconst mines = floats.slice(0, count).map((f) => tiles.splice(Math.floor(f * tiles.length), 1)[0]);
  • PlinkoSatu float per baris: float di bawah 0.5 ke kiri, selain itu ke kanan. Slot tujuan adalah jumlah langkah ke kanan.Tampilkan kode
    const path = floats.slice(0, rows).map((f) => Math.floor(f * 2)); // 0 = kiri, 1 = kananconst slot = path.reduce((a, b) => a + b, 0);
  • Keno10 float pertama mengundi 10 dari 40 kotak. Setiap float mengambil satu kotak dari kotak yang tersisa (Fisher–Yates).Tampilkan kode
    const squares = [1, 2, 3, …, 40];const drawn = floats.slice(0, 10).map((f) => squares.splice(Math.floor(f * squares.length), 1)[0]);
  • FlipSatu float per lemparan: 0.5 atau kurang adalah ekor, lebih dari 0.5 adalah kepala.Tampilkan kode
    const sides = floats.slice(0, 20).map((f) => (f <= 0.5 ? "tails" : "heads"));
  • Dragon TowerSatu float per telur. Di setiap baris, setiap float mengambil satu petak dari petak yang tersisa. Tingkat kesulitan menentukan jumlah telur dan petak per baris.Tampilkan kode
    // telur, ukuran: per baris, dari tingkat kesulitanconst row = (r) => {  const tiles = [...Array(size).keys()];  return floats.slice(r * eggs, r * eggs + eggs).map((f) => tiles.splice(Math.floor(f * tiles.length), 1)[0]);};
  • Blackjack · Baccarat · Hi-LoKartu = floor(float × 52) dari dek tanpa batas. Satu float per kartu, sesuai urutan pembagian.Tampilkan kode
    const RANKS = ["2", "3", …, "K", "A"], SUITS = ["♦", "♥", "♠", "♣"];const index = Math.floor(float * 52);const card = RANKS[Math.floor(index / 4)] + SUITS[index % 4];// float 0.43050002 -> 7♠
  • ScratchFloat pertama memilih total hadiah dari tabel hadiah. Float berikutnya membaginya ke sel-sel pemenang dan menempatkan angka-angkanya.Tampilkan kode
    let x = Math.floor(floats[0] * 1e8); // total bobot adalah 100,000,000const total = PRIZES.find(([, weight]) => (x -= weight) < 0)[0];const split = SPLITS[total][Math.floor(floats[1] * SPLITS[total].length)];// float 2-3: angka pemenang, 4-15: urutan sel, 16 dan seterusnya: sel
  • RouletteKantong = floor(float × 37), jadi angka dari 0 sampai 36.Tampilkan kode
    // satu float per putaranconst POCKETS = [0, 1, 2, …, 36];const pocket = POCKETS[Math.floor(float * 37)];// float 0.43050002 -> kantong 15
  • WheelSegmen = floor(float × segmen). Pembayaran diambil dari tabel sesuai tingkat risiko.Tampilkan kode
    const index = Math.floor(float * segments);const multiplier = PAYOUTS[risk][segments][index];// float 0.43050002, 10 segmen -> segmen 4
  • ChickenSatu float per jalur maut. Setiap float mengambil satu jalur dari 20 jalur yang tersisa (Fisher–Yates). Tingkat kesulitan menentukan jumlah jalur maut.Tampilkan kode
    const lanes = [0, 1, 2, …, 19]; // 0 = jalur pertama, jalur yang terambil keluar dari daftarconst deaths = floats.slice(0, count).map((f) => lanes.splice(Math.floor(f * lanes.length), 1)[0]);// count = jalur maut sesuai tingkat kesulitan; jalannya adalah 20 − count jalur pertama