MatchMaster/docs/rainbow-old-candidate-scan.md
WIN-GKKD951VVMJ\Administrator bd4984c909 老彩虹最新更新
2026-09-21 18:03:23 +08:00

5.9 KiB
Raw Blame History

C 老彩虹开局候选池扫描

规则确认日期:2026-09-20。复跑:node tools/scan-rainbow-old-candidates.cjs。

最终规则

  • 按第一池、第二池、第三池依次兜底;仅在首个非空池内按完整的多格方块等概率抽取一个。1×1 单格方块不进入任何池。
  • 第一池:没有生效特殊机制的普通块。
  • 第二池:三种钥匙、星星、两种炸弹、水平/垂直限制、加时间、发送花瓣、开关(开闭均在此池)。
  • 第三池:冻结、两种带锁块。复合允许机制取靠后的池,转换不解除原限制。
  • 全局排除:1×1 单格方块、叠加及叠加换色、粘合(含三连)、地板、可移动地板、问号、花瓣盖板、组合变色、障碍及暗灰不可消除块、单色地块、格挡机关。
  • 继承 B 的按钮颜色排除:与开局任一按钮真实颜色相同的块,三个池均排除。存在任一禁止机制即排除整个块。
  • 只算开局已在盘面的块;尚未出场的生产队列不算候选。三个池全空则本局跳过,之后不补发。

扫描范围与结果

这是关卡配置静态扫描,没有运行 Cocos 场景,也没有验证关卡可解性或转换动画。覆盖当前仓库 custom bundle 的全部关卡配置;不按玩家连胜资格过滤。

配置 关卡数 初始配置条目 第一池可用 需第二池兜底 需第三池兜底 三池全空 未出场队列条目
Json 1980 43447 1883 81 3 13 131
Json2 50 808 49 0 0 1 0

初始条目不是展开叠加上下层后的运行时块数。叠加已整体排除,所以不影响候选结果。Json2 为新手实验前 50 关;该组连胜奖励在已通关 50 关后解锁,Json2 结果作为配置覆盖参考。

三池全空的关卡

原因计数允许重叠:同一个块可以同时命中地板、花瓣盖板等多条排除规则。

关卡 初始条目 按钮颜色 排除原因(条目数) 未出场队列条目
Json/735 18 无 单格方块(1×1) 4;问号 17 0
Json/911 17 无 格挡机关 3;叠加/叠加换色 8;粘合 6;单格方块(1×1) 6 0
Json/929 18 无 单格方块(1×1) 8;地板 2;粘合 8;叠加/叠加换色 7 0
Json/973 20 无 格挡机关 2;单格方块(1×1) 6;粘合 4;地板 7;可移动地板 7;叠加/叠加换色 4;问号 7 0
Json/1103 12 无 单格方块(1×1) 3;叠加/叠加换色 6;问号 3;地板 1;可移动地板 1 0
Json/1119 15 无 单格方块(1×1) 3;叠加/叠加换色 5;地板 2;问号 5 0
Json/1608 24 5、9 格挡机关 2;与按钮同色 5;粘合 12;障碍或暗灰块 2;问号 8;地板 6;可移动地板 6;单格方块(1×1) 4;花瓣盖板 2 0
Json/1646 28 无 格挡机关 2;单格方块(1×1) 6;障碍或暗灰块 2;叠加/叠加换色 6;地板 11;可移动地板 7;问号 12;粘合 2 0
Json/1740 24 5、9 格挡机关 2;与按钮同色 7;粘合 12;障碍或暗灰块 2;问号 8;地板 6;可移动地板 6;单格方块(1×1) 4;花瓣盖板 2 0
Json/1898 28 5 格挡机关 4;与按钮同色 7;单格方块(1×1) 8;叠加/叠加换色 5;地板 7;可移动地板 7;问号 11 0
Json/1915 26 无 单格方块(1×1) 17;叠加/叠加换色 8;地板 18 0
Json/1922 54 无 格挡机关 19;单格方块(1×1) 22;地板 17;障碍或暗灰块 2 0
Json/1950 32 无 格挡机关 4;单格方块(1×1) 15;障碍或暗灰块 5;叠加/叠加换色 4;地板 13 4
Json2/24 5 无 叠加/叠加换色 5 0

需要第二池兜底的关卡

  • Json(共 81 个关卡):57、115、459、814、880、891、903、916、989、991、996、1008、1043、1064、1086、1100、1150、1174、1246、1260、1269、1271、1458、1473、1482、1503、1536、1537、1546、1548、1551、1560、1563、1569、1572、1579、1587、1588、1592、1593、1594、1596、1598、1600、1607、1616、1621、1634、1637、1641、1671、1727、1731、1735、1742、1752、1753、1754、1760、1763、1765、1772、1773、1774、1784、1785、1790、1795、1797、1802、1804、1811、1826、1837、1852、1864、1873、1885、1887、1916、1969。
  • Json2(共 0 个关卡):无。

需要第三池兜底的关卡

  • Json(共 3 个关卡):125、1209、1882。
  • Json2(共 0 个关卡):无。

溯源与限制

  • 单格形状:Block.initBlocks 的 block=0 仅占据 (0,0);RainbowRules.RAINBOW_SHAPES 定义一致。
  • 按钮构建与颜色:Map.mapRiseFall;排除判定:RainbowStreak.isButtonColor。
  • 方块展开:Map.blockInit;附加机制与初始实色:Block.init、Block.initColor。
  • 只按实际生效机制识别附加属性:普通类型残留的 stacking/adhesiveTime 不会生成叠加/粘合机制,不因此排除。
  • 未知类型、形状或配置字段会令脚本失败,避免将新机制静默归入普通池。
  • 完整 JSON 明细 保存各关三池数量、第三池兜底候选,以及空池关卡每个方块的配置和排除原因。
  • 输入文件集合 SHA-256:9c03c1036386c420b1b867dbcfbbd18ca4727b88b778bd6f19f00fe4684c7f20。