一张卡,38个球
这是一个独自进行的75球宾果游戏。引擎发放一张5×5卡——B列中有1–15的五个数字,I列中有16–30的数字,依此类推——将中心格子标记为免费,然后抽取75个球中的38个。每一行、每一列和两条对角线都是一条线,总共十二条,支付仅取决于其中有多少条完成。设计宾果游戏解释了为什么是38个球以及为什么有这七个支付步骤;它引用了一百万次模拟轮次的线计数分布。本文精确计算了它。
ENGINE-VERIFIEDBingoEngine.kt: DRAWS = 38, FREE_CELL = 12, LINE_PAY100 = {1: 150, 2: 400, 3: 1200, 4: 3000, 5: 10000, 6: 20000, 7: 50000} (total return in hundredths; seven or more lines all pay ×500), LINES = five rows, five columns, two diagonals. play(): cursors 0–24 build the card column by column (five pool-hop draws from each column’s fifteen numbers, the centre draw consumed then overwritten by the free star), cursors 25–62 draw the 38 balls from 1–75 by the same pool hop; each cursor is one HMAC-SHA256 of “clientSeed-nonce-cursor” keyed by the server seed. The client mirror is playBingoRound() in bingo/derive.ts.
有一个事实使精确计算可行。该卡包含24个实数,其中哪些被标记仅取决于抽取了哪38个球:k张卡数被标记而其他24−k张未被标记的特定集合的概率为C(51, 38−k)÷C(75, 38),对每张卡的布局都相同。因此线计数的分布是所有2²⁴ = 16,777,216种标记模式的权重总和——几秒钟的计算,没有采样误差。
每条线的计数,定价
| 线 | 概率 | 1 中的 | 支付 | 回报份额 |
|---|---|---|---|---|
| 0 | 62.82% | 1.6 | — | — |
| 1 | 28.60% | 3.5 | ×1.5 | 42.89% |
| 2 | 7.059% | 14.2 | ×4 | 28.24% |
| 3 | 1.288% | 77.6 | ×12 | 15.46% |
| 4 | 0.2007% | 498 | ×30 | 6.02% |
| 5 | 0.02913% | 3,433 | ×100 | 2.91% |
| 6 | 0.004060% | 24,600 | ×200 | 0.81% |
| 7 或以上 | 0.000645% | 155,000 | ×500 | 0.32% |
| 总计 | 100% | 96.66% 返回率 · 37.18% 命中率 |
返回份额 = 机率 × 赔率,占下注金额的百分比。设计说明中的模拟数字(62.9 / 28.6 / 7.05 / 1.27 / 0.20 / 0.03%,返回率 ≈ 96.5%,命中率 37.1%)在抽样误差范围内;准确的庄家优势是 3.34%。
表格中有两点很突出。首先,奖金在赔率表的底部:单线 ×1.5,在七张牌中命中两张,占返回率的 43%,一条线和两条线加起来占 71%。×100 及以上的级别给了游戏顶部,它们之间的返回率价值只有 4%。其次,阶梯故意设计得很陡峭:每增加一条线的稀有度大约是最后一条的五到七倍,赔率大约增加三倍,所以每个级别的返回率随稀有度下降而不是保持平坦。这是一个设计选择 — Keno 也采用了这种做法 — 这正是让整张牌保持在 96.66% 的同时让稀有数字保持令人印象深刻的原因。
| 线 | 比例 |
|---|---|
| 7 | 179,000 |
| 8 | 130万 |
| 9 | 1210万 |
| 10 | 6750万 |
| 11 | 不可能 |
| 12(每行) | 26.7亿 |
十一是不可能的,因为每个单元格都坐在一行一列上,所以单个未标记的数字总是至少打破两行:行数一次丢失两个,从不一个。十行是对角线上都少一个未标记的数字;十二意味着所有24个数字被抽取,C(51, 14) ÷ C(75, 38)。
免费星和平均卡
球落在任何给定卡号的概率为38 ÷ 75 = 50.67%,但一行需要所有数字,并且抽取是无放回的。避开中心的一行需要38个中的5个特定球:38 ÷ 75 × 37 ÷ 74 × 36 ÷ 73 × 35 ÷ 72 × 34 ÷ 71 = 2.908%,1/34.4。通过免费星的一行只需要四个:6.073%,1/16.5。十二行中的四行通过星——中间行、中间列和两条对角线——所以一张卡上完成的行的预期数量是8 × 2.908% + 4 × 6.073% = 0.476。
| 已标记 | 概率 |
|---|---|
| 8 | 2.44% |
| 10 | 11.20% |
| 12 | 19.46% |
| 13 | 17.96% |
| 14 | 13.07% |
| 16 | 3.33% |
| 18 | 0.30% |
| 20或更多 | 0.0095% |
超几何分布:C(24, k) × C(51, 38 − k) ÷ C(75, 38)。平均值为12.16个标记;卡片在平均回合中看起来半满,这就是为什么一条线很常见而三条线不是。
标记数字表是典型回合的真实写照:二十四个数字中约有十二个被标记,分散在网格中,问题只是其中五个是否恰好排成一行。十四个或更多标记每四轮发生一次,通常最多完成一两条线;三线卡,每78次中发生一次,几乎总是一张安排非常幸运的卡而不是填满特别满的卡。
由于线数和派奖是固定的,每轮的波动也是固定的:一轮结果的标准差是3.26倍注。在100个单位回合上,预期损失是3.3个单位,波动约33个单位,所以一个赛局以30个单位上升或下降结束是正常的。破产风险将其转化为特定赌资通常能持续多长时间。
检查卡片
- 从回合的公平性面板中取得揭示的服务器种子、客户端种子和随机数。
- 对于游标0到24,计算由服务器种子键控的HMAC-SHA256超过
- 对于游标25到62,在1–75上进行相同的池跳跃以获得38个球,标记卡片,计算十二个中完整的线,并从上表中读取派奖。
开源验证器的bingo命令在一次调用中完成三个步骤。布局和球来自一个已提交的种子对,因此卡片不能在已知球之后发出,球也不能被抽取以适应卡片——这正是上面的精确分布所假设的,以及承诺让你检查的。
常见问题
获得一条宾果线的概率是多少?
在这张38选75的单人卡片上,37.18%的回合至少完成一条线:恰好一条占28.60%,两条占7.06%,三条占1.29%,四条占0.20%,五条占0.029%,六条占0.0041%,七条或以上的概率是155,000分之一。
单人宾果的庄家优势是多少?
恰好3.34%:收益率为96.66%的赌注,是根据每一种可能的标记模式计算而来,而不是模拟的。设计说明中模拟的96.5%是这个数字的估计值。
为什么中心的免费格子相当于一个球?
通过中心的一条线需要四个抽取的号码而不是五个,所以它完成的时间是2.91%的大约两倍,即6.07%。十二条线中有四条通过它。
你能完成11条线吗?
不能。每个格子都在一行和一列上,所以任何未标记的号码会同时破坏至少两条线;你可以一次失去两条线,但永远不会恰好失去一条,计数会从十(对角线外只有一个未标记号码)跳到十二。全部十二条线出现的概率是26.7亿张卡片中的一次。
卡片上通常有多少个号码被标记?
平均是24个中的12.16个。恰好十二个标记是单一最可能的结果(19.5%);二十个或更多号码出现的概率大约是10,500回合中的一次。
哪个支付提供最多的收益?
单条线×1.5,在28.6%的回合中支付,占96.66%收益的42.9%。一条线和两条线合起来占71%;从×100及以上的所有部分占4%。
我能验证一个宾果回合吗?
可以。每个游标一个HMAC-SHA256,用显示的服务器种子作为密钥,对应"clientSeed-nonce-cursor":游标0-24发放卡片,25-62抽取号码,验证器的宾果命令会重现两者和线数。
来源及参考
- Betkyo引擎源代码,服务器部分:BingoEngine.kt — DRAWS、FREE_CELL、LINE_PAY100、LINES、play()(在游标0-24上通过按列主序池跳跃发放卡片,在游标25-62上发放号码,pay100由完成的线数决定);OriginalBingoService.kt settlement
- Betkyo引擎源代码,客户端镜像:playBingoRound()、bingo/derive.ts中的BINGO_LINE_PAY100和BINGO_LINES
- 为本文编写的精确计算:24张卡片号码的2²⁴种标记模式,每种都按C(51, 38 − k) ÷ C(75, 38)加权,按完成的线数求和;单条线的概率38·37·36·35·34 ÷ (75·74·73·72·71)和38·37·36·35 ÷ (75·74·73·72);超几何标记号码分布;每回合的标准差
- Betkyo可证明公平验证器(GitHub,MIT):宾果命令从serverSeed、clientSeed和nonce重现卡片、号码和线数
本文中的游戏