规则

概率与中奖计划

概率并不是“写死”的一个数:合约会根据游戏量来调整。玩家少的时候,奖池较小,中奖频繁但金额不大。项目变大后,奖池较大,但出现得更少。

中奖计划规则

1. 每周游戏量

合约每周记录一次这一周的旋转次数,但不低于 500(起步阶段和冷清的周)。我们把它记作 N。其余一切都取决于它。

2. 头奖的频率随游戏量变化

每次旋转的头奖概率为 1 / (0.8 × N)。也就是说,如果一周内的旋转次数与上周相同(且不低于 500),那么无论游戏量多大,头奖大约每周出现一次。游戏量较小时出现得更少:每周 100 次旋转、N = 500 时,至多每 4 周出现一次。变化的是金额:奖池从每次旋转中累积 30%,所以平均为 N × 0.3 枚代币。

3. 迷你头奖的频率高 10 倍

迷你头奖出现的频率是头奖的 10 倍,所以奖池来不及累积太多,发放的金额也更小。起步阶段这意味着:大约每 50–60 次旋转出现一次小额发放。

4. 奖池门槛

只有当奖池累积到平均水平的 25% 时,才会开启这个奖池的中奖概率。所以刚发放完之后,不可能赢到小额:头奖要等奖池重新增长。

5. 大额奖金

金色转盘的奖金概率为每次旋转 0.08%,与游戏量无关。没有小额奖金:100, 250, 500, 1,000, 2,500, 10,000。

6. “再来一次”

每次旋转 11.6%,始终如此。这是由奖金池承担的免费旋转,不会改变你的投注。

不同游戏量下会怎样

500
头奖奖池(平均)150从 38 起开启
头奖约每 500次旋转:每周游戏量为此时,大约每周出现一次
迷你头奖奖池(平均)6.5从 1.6 起开启
迷你约每 50次旋转
主转盘上的金色2.83%每次旋转 35 分之 1
大额奖金0.08%1,250 分之 1,平均 241

主转盘

金色 2.83%,“再来一次” 11.6%,空 85.6%。金色之内:头奖 8.83%,迷你头奖 88.3%,奖金 2.83%。

金色转盘

头奖迷你头奖10,0002,5001,000500250100

为了便于看清,极窄的扇区被略微加宽,其余的相应缩小。出现得越少,扇区越窄。

这一块里的数字,用与合约相同的公式(整数)计算,对应“奖池处于平均水平”的情形。这是计算值:实际每周会有波动。

中奖计划模拟

在电脑上运行合约代码:一名玩家完成一周内的所有旋转,随机数由伪随机数生成器提供。第一周和第一个头奖(其中包含初始的 10 000)不计入测量。

每周旋转次数周数头奖次数平均头奖迷你平均迷你头奖金色出现间隔含金色的 10 次一组
50040391983287.95221.1%
5,00012101,90610177.23753%
50,000358,361237979201.2%
  • 每周 500 次旋转时,金色大约每 52 次旋转 出现一次,每 10 次旋转为一组,大约每五组中有一组至少出现一次。发放金额不大:迷你头奖平均 8,头奖约 198 枚代币。
  • 游戏量增大后,金色更少见,但发放金额更大(表中每周 50 000 次时:头奖约 8,361)。
  • 长期模拟中玩家的平均返还:含超级头奖时为 81.9%(不含时为 74.2%)。其余部分被销毁或归管理员(含广告);头奖的初始注入已计入对玩家的支付。

模拟通过命令 cargo test -p fairdrum --test engine_tests -- --nocapture 运行,并属于仓库检查的一部分。合约有史以来的第一笔发放包含 10 000 枚代币的初始注入,所以明显大于普通发放。

金色转盘的奖金

奖金,FAIRDRUM占奖金的比例每次旋转的概率
10061%2,049 分之 1
25027%4,630 分之 1
5007.5%16,667 分之 1
1,0003.5%35,714 分之 1
2,5000.8%156,250 分之 1
10,0000.2%625,000 分之 1
奖金总计100%1,250 分之 1 · 平均奖金 241

如果奖金池不足以支付奖金,则按池中现有的数额发放。奖金池从每次旋转中补充 35%。

合约公式

所有概率都是 232 的整数分数,不使用小数(文件 math.rs):

  • N = max(上周的旋转次数, 500)。这里的一周是从合约启动时刻起算的七天,不一定与免费旋转每周开始的周四一致。
  • 头奖概率 = 1 / (N × 0.8),若奖池 ≥ N × 0.3 × 0.25,否则为 0
  • 迷你头奖概率 = 10 × 头奖概率,若迷你头奖奖池 ≥ (N / 10) × 0.13 × 0.25,否则为 0
  • 奖金概率 = 0.08%;“再来一次”概率 = 11.6%
  • 如果出现金色,它会按这些概率的比例分为头奖、迷你头奖和奖金

网站用同样的代码计算这些数字,并通过来自 Rust 的样例测试与合约核对。