Bethropic

两种玩法,两条曲线:Limbo 和 Crash 到底怎么抽水

slow_kettle0 次浏览
🌐 Originally written in English· AI translationView original

两个函数,完整呈现

大多数赌场只是描述一下赔率。我们可以做得更好,因为这两款游戏都足够简短,可以完整引用。以下是决定一局 Limbo 结果的每一行数学:

引擎已验证_shared/rng.ts 中的 curve100,完整函数为:p = floor((0.99 / (1 − u)) × 100),然后限制在 100 到 1,000,000 之间——也就是 ×1.00 到 ×10,000。`u` 是从已提交种子对的 HMAC-SHA256 中读取的均匀值。demoLocal.ts 在每次 limbo 投注时调用它,公平性验证器会重新计算它。

再来看 Crash,它的函数并不相同:

引擎已验证_shared/rng.ts 中的 bust100:h 是 HMAC-SHA256(链接哈希, 公共盐值) 的前 52 位,e 为 2⁵²,p = (100·e − h) / (e − h),同样限制在 100–1,000,000 范围内。公平性验证器将此步骤标记为“recomputed — floor((100·2⁵² − h) / (2⁵² − h))”。

两种不同的形态。写成 u = h / 2⁵² 让两者用同样的量表达,区别就很明显了:Limbo 产生的是 0.99 / (1 − u),Crash 产生的是 (100 − u) / (100(1 − u))。Limbo 中的 0.99 就是庄家优势,直接作为分子中的固定折扣。Crash 没有这样的常数——它的抽水隐藏在曲线形态里。

每种玩法的成本

把每个函数转化为玩家真正需要的两个数字:达到目标的概率,以及押注该目标的平均回报。

对于 Limbo,达到倍数 x 的概率是 0.99 / x,所以押注赔付 x 的回报是 x × 0.99/x——无论你选什么 x,结果都恰好是 0.99。对于 Crash,概率是 99 / (100x − 1),回报是 99x / (100x − 1),它取决于 x。

按提现目标计算的回报率,来自两个引擎函数的推导

目标LIMBO — 概率LIMBO — 回报CRASH — 概率CRASH — 回报
×1.0198.02%99.00%99.00%99.99%
×1.5066.00%99.00%66.44%99.66%
×249.50%99.00%49.75%99.50%
×519.80%99.00%19.84%99.20%
×109.90%99.00%9.91%99.10%
×1000.99%99.00%0.99%99.01%
×1,0000.099%99.00%0.099%99.00%
×10,0000.010%99.00%0.010%99.00%

Limbo的回报曲线在设计上是平的。Crash的回报曲线一开始较高,然后向下收敛——它永远不会跌破99%,也永远不会达到100%。

所以诚实的总结是:Limbo在任何地方都收取同样的价格。Crash在短程时收费略低,长程则趋近于同样的价格。差距很小——在×2时只有半个百分点——但它是真实存在的,而且与这两款游戏给人的印象恰恰相反。Crash感觉像是风险更高的产品,但若真要说的话,它反而略微更便宜一些。

为什么会有两种不同的形态

答案并不是说哪一个设计得更好。而是它们对不同的东西做出了承诺。

Limbo是按玩家、按下注结算的。你的种子对和你的nonce生成你的数字,因此自然的构造方式是“取一条公平曲线并乘以0.99”——这是一个你可以明确指出的优势。正是这个恒定的0.99使得每个目标的回报都相同,这也正是为什么Limbo可以诚实地说,选择目标只是纯粹的方差决策,没有别的。

Crash 结算的是整个房间共用的一个数字。本轮所有人都沿着同一条曲线冲向同一个爆点,因此这个结果不可能取决于任何个人的种子。它来自一个哈希链——每一轮的链节都哈希指向前一轮,并附带一个公开的salt——所以未来所有轮次的完整序列早在第一笔下注之前就已经确定,并且可以永远向后验证。

这就是Crash的验证方式与本站其他游戏截然不同的结构性原因:没有需要公开的每位玩家专属服务器种子,因为这个数字从来就不是你个人的。公开的是链节,而证明其真实性的方式是它哈希指向上一轮。

(100 − u)/(100(1 − u)) 这个形式是链式衍生爆点的标准构造,其优势来自算术本身,而非某人选定的常数。这就是为什么它的回报率会随目标而变化,而Limbo的回报率不会——也是为什么比较这两者需要推导两者的公式,而不是直接从页面上读一个数字。

上限,以及它的代价

两个函数都在同一个上限处封顶:以百分之一为单位是1,000,000,即×10,000。Limbo那条不设上限的曲线本会继续延伸;这个封顶把两者的尾部都截断了。

这个上限实际上截走了什么?对于Limbo来说,曲线想要超过×10,000的概率是0.99/10,000——大约10,101轮中有1次。在那些轮次里,你拿到的是×10,000,而不是曲线本应给出的数值。因此封顶带来的预期成本虽小但并非为零,这也是Limbo原本完美平坦的99%回报率中唯一不那么完整的地方。

我们特意指出这一点,而不是把它四舍五入忽略掉,因为“每个目标都恰好是99%”这种干净利落的说法本就值得加个注脚。它在你实际能选择的每个目标上确实恰好是99%;上限就是模型停止的地方。

一个函数,×1到×10,000
Limbo:先设定倍数,然后再对照上面的曲线检验结果
Limbo →
常见问题

Limbo的庄家优势是多少?

1%。引擎的曲线是0.99/(1−u),其中的0.99使得回报率在你选择的每个提现目标上都恰好是99%——×1.5和×1,000的成本是一样的。

Crash的庄家优势是多少?

这略微取决于你在何处提现。回报率为99x/(100x−1)——在×1.01时约为99.99%,在×2时约为99.50%,在高目标时收敛于99%。它永远不会低于99%。

Limbo和Crash本质上是同一个游戏吗?

不是。出于结构性原因,它们运行不同的函数:Limbo根据你自己的种子对为每位玩家单独抽取结果,而Crash则从一个预先承诺的哈希链中为本轮所有玩家抽取同一个数字。

选择更高的倍数会改变庄家优势吗?

在Limbo中不会——回报率在所有目标上都恒定为99%,所以选择完全取决于方差。在Crash中会有非常轻微的变化,越长的行程越接近99%。

最大赢额是多少?

两个游戏都是×10,000——即引擎中1,000,000(以百分之一为单位)的封顶。在Limbo中,曲线大约每10,101轮就有一次想要超过这个值,而那些轮次会支付上限金额。

来源与参考资料

  • Betkyo引擎源码:_shared/rng.ts中的curve100和bust100,全文引用;limbo结算逻辑位于_shared/demoLocal.ts,两条验证路径均位于_shared/fairness.tsx
  • 概率和回报来自这两个函数——Limbo 是 P(m ≥ x) = 0.99/x,Crash 是 99/(100x − 1)——而不是从公开的 RTP 表中得出的

本文涉及的游戏Limbo — 规则与免费试玩 →Crash — 规则与免费试玩 →

两种玩法,两条曲线:Limbo 和 Crash 到底怎么抽水

评论 (0)

还没有评论。