とあるゲームのカジノ勝率をJSで解析した結果・・・


ダイス&モンスターズというスマホゲームの最初のカジノ「チキン ジャック ダイス」が妙に勝てる気がしたのでJSで解析してみました。
使用ツールは、CodeRunner + JavaScript これだけ

勝てそうと思った手

「18以上になったら自動的に降りる」という手だとかなり勝率高いんじゃね?と体感的に思ったので試行してみましたよっと。

「100回ゲーム」を10000セット繰り返します

持ちコインが1000からのスタートです。
これは人間がタップしてやるなら5万時間くらいかかる計算です(適当)

結果・・・

平均増加数 : 4261枚

100ゲームやって減った回数 0回 / 10000回

うひょー・・・やっぱり勝てるw
しかも100ゲームやればほぼ確実増えるという結論に。

コードはこちら

chickenjackdice.js
var coins = 1000;
var flg = 0;
var results = [];

//100回ワンセットのゲームを1000セット試行
for (cnt=1;cnt<=10000;cnt++) {
    play100times(); 
}

//100回ゲームをする
function play100times()
{
    coins = 1000;
    for (i=1;i<=100;i++) {
        mainGame(0);
    }
    if (coins < 1000) {
        flg += 1;
    }
    results.push(coins);
    console.log(coins); 
}

//平均増加数を出す
var total = 0;
for(var i = 0;i<results.length;i++){
    total += results[i];
}
var average = Math.floor(total/results.length) - 1000;

console.log("試行回数 : 10000回");
console.log("負けた回数 → " , flg);
console.log("平均増加数 → " ,  average);

//1回のゲーム
function mainGame(num)
{
    var firstresult = dice();
    num += firstresult;
    //console.log(num);

    if(num <= 18)
    {
        mainGame(num);
    }
    else if(num >= 22)
    {
        coins -= 100;
    }
    else
    {
        coins -= 100;
        coins += getRewards(num);
    }
}

//さいころをふる
function dice()
{
    return Math.floor(Math.random() * 6) + 1;
}

//結果のゲッタ
function getRewards(result)
{
    switch (result) {
        case 16:
            return 66;
        case 17:
            return 100;
        case 18:
            return 133;
        case 19:
            return 166;
        case 20:
            return 200;
        case 21:
            return 250;
        default:
            return 0;
    }
}

結論

「チキン ジャック ダイス」はチキンでも勝てる(ブヒっ)