55 lines
4.0 KiB
Markdown
55 lines
4.0 KiB
Markdown
# C 老彩虹开局候选池扫描
|
||
|
||
规则确认日期:2026-09-20。复跑:`node tools/scan-rainbow-old-candidates.cjs`。
|
||
|
||
## 最终规则
|
||
|
||
- 按第一池、第二池、第三池依次兜底;仅在首个非空池内按完整方块等概率抽取一个,单格和多格权重相同。
|
||
- 第一池:没有生效特殊机制的普通块。
|
||
- 第二池:三种钥匙、星星、两种炸弹、水平/垂直限制、加时间、发送花瓣、开关(开闭均在此池)。
|
||
- 第三池:冻结、两种带锁块。复合允许机制取靠后的池,转换不解除原限制。
|
||
- 全局排除:叠加及叠加换色、粘合(含三连)、地板、可移动地板、问号、花瓣盖板、组合变色、障碍及暗灰不可消除块、单色地块、格挡机关。
|
||
- 继承 B 的按钮颜色排除:与开局任一按钮真实颜色相同的块,三个池均排除。存在任一禁止机制即排除整个块。
|
||
- 只算开局已在盘面的块;尚未出场的生产队列不算候选。三个池全空则本局跳过,之后不补发。
|
||
|
||
## 扫描范围与结果
|
||
|
||
这是关卡配置静态扫描,没有运行 Cocos 场景,也没有验证关卡可解性或转换动画。覆盖当前仓库 custom bundle 的全部关卡配置;不按玩家连胜资格过滤。
|
||
|
||
| 配置 | 关卡数 | 初始配置条目 | 第一池可用 | 需第二池兜底 | 需第三池兜底 | 三池全空 | 未出场队列条目 |
|
||
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
|
||
| Json | 1980 | 43447 | 1906 | 68 | 3 | 3 | 131 |
|
||
| Json2 | 50 | 808 | 49 | 0 | 0 | 1 | 0 |
|
||
|
||
初始条目不是展开叠加上下层后的运行时块数。叠加已整体排除,所以不影响候选结果。Json2 为新手实验前 50 关;该组连胜奖励在已通关 50 关后解锁,Json2 结果作为配置覆盖参考。
|
||
|
||
## 三池全空的关卡
|
||
|
||
原因计数允许重叠:同一个块可以同时命中地板、花瓣盖板等多条排除规则。
|
||
|
||
| 关卡 | 初始条目 | 按钮颜色 | 排除原因(条目数) | 未出场队列条目 |
|
||
| --- | ---: | --- | --- | ---: |
|
||
| [Json/911](../assets/custom/Json/level911.json) | 17 | 无 | 格挡机关 3;叠加/叠加换色 8;粘合 6 | 0 |
|
||
| [Json/1608](../assets/custom/Json/level1608.json) | 24 | 5、9 | 格挡机关 2;与按钮同色 5;粘合 12;障碍或暗灰块 2;问号 8;地板 6;可移动地板 6;花瓣盖板 2 | 0 |
|
||
| [Json/1740](../assets/custom/Json/level1740.json) | 24 | 5、9 | 格挡机关 2;与按钮同色 7;粘合 12;障碍或暗灰块 2;问号 8;地板 6;可移动地板 6;花瓣盖板 2 | 0 |
|
||
| [Json2/24](../assets/custom/Json2/level24.json) | 5 | 无 | 叠加/叠加换色 5 | 0 |
|
||
|
||
## 需要第二池兜底的关卡
|
||
|
||
- Json(共 68 个关卡):57、115、814、880、891、903、929、989、1008、1064、1086、1100、1150、1260、1269、1271、1458、1473、1482、1503、1536、1537、1546、1551、1563、1569、1572、1579、1587、1588、1592、1593、1594、1596、1598、1600、1607、1616、1621、1634、1637、1641、1646、1671、1731、1735、1742、1752、1753、1754、1760、1765、1773、1774、1784、1785、1795、1797、1802、1804、1811、1826、1837、1852、1864、1873、1885、1969。
|
||
- Json2(共 0 个关卡):无。
|
||
|
||
## 需要第三池兜底的关卡
|
||
|
||
- Json(共 3 个关卡):125、1209、1882。
|
||
- Json2(共 0 个关卡):无。
|
||
|
||
## 溯源与限制
|
||
|
||
- 按钮构建与颜色:`Map.mapRiseFall`;排除判定:`RainbowStreak.isButtonColor`。
|
||
- 方块展开:`Map.blockInit`;附加机制与初始实色:`Block.init`、`Block.initColor`。
|
||
- 只按实际生效机制识别附加属性:普通类型残留的 stacking/adhesiveTime 不会生成叠加/粘合机制,不因此排除。
|
||
- 未知类型、形状或配置字段会令脚本失败,避免将新机制静默归入普通池。
|
||
- [完整 JSON 明细](rainbow-old-candidate-scan.json) 保存各关三池数量、第三池兜底候选,以及空池关卡每个方块的配置和排除原因。
|
||
- 输入文件集合 SHA-256:`9c03c1036386c420b1b867dbcfbbd18ca4727b88b778bd6f19f00fe4684c7f20`。
|