老虎机随机发生器

时间:2019-07-13 23:31:24

标签: javascript algorithm random gambling

所以我看到了这个:https://www.quora.com/What-algorithm-do-slot-machines-use

这些随机数如何在听觉上产生,以及如何进一步翻译?

我打算制造一台基本的老虎机,但不知道从哪里开始。

好吧,我有个主意要使用:

$randomNumber1 = rand(1,X);

对于每个插槽,但这似乎并不十分有效, 我该如何解决?

顺便说一下,这是上面链接中的一张图像,该图像考虑了我的问题。 enter image description here

编辑:使用3x3而不是1x3线的老虎机会具有相同的样式功能吗?

2 个答案:

答案 0 :(得分:3)

这取决于您希望老虎机的现实程度。如果您只是希望它随机付款,那么简单的r = rand(1,X)就可以了。这是一个很好的开始,因为您可以证明游戏的机制能够正常工作:所有图形和动画都能正确显示,用户界面控件可以按预期工作,等等。

但是真正的老虎机不仅会随机显示所有可能的组合。例如,如果三七的赔付频率比三樱桃高,那么投币游戏机的显示三七的概率要低得多。毕竟,老虎机的目标是让房子赚钱。

投币式游戏机背后的数学非常复杂:对于堆栈溢出的答案来说,涉及太多。与设置轮子以提供一致的支出相比,假设您得到均匀的分布,如何生成随机数并不是主要问题。

我的建议是您使用内置的随机数生成器,直到您的游戏开始运行。然后,如果您希望它像真正的老虎机一样工作,请在您喜欢的搜索引擎中输入“ slot machine math”,然后开始学习。

答案 1 :(得分:1)

为此,我将使用久经考验的Fisher-Yates老算法。 This question具有JavaScript实现,可用于以下广告位:

let slotOptions = ["cherry", "seven", "bell", "bar"];

function play() {
    return [shuffle(slotOptions), shuffle(slotOptions), shuffle(slotOptions)];
}

let [slot1, slot2, slot3] = play();

// do something with those slots here