Files
HEROLL/docs/局内玩法设计文档_一骰登天_MVP_v0.2.8.md
T

1900 lines
124 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 局内玩法设计文档
版本:MVP v0.2.8(2026-09-01,规则闭合与开发执行版)
项目包装:《一骰登天》
本文档描述一局游戏开始后至本局结束前的局内玩法。v0.2.8在v0.2.7基础上闭合Start结算时序、战斗公式、首版内容白名单、未知参数MVP默认值、装备掉落展示容量与最终BOSS Floor转换边界。装备、商店、祝福与战斗分别明确区分“原作确认”“实机确认”“MVP主动偏离”和“DEMO冻结”,不得互相替代证据等级。
**本版的关键变化是:删除旧版固定2个Good/10个Enemy残留;Start只执行一套冻结时序;战斗计算以2026-08-28专项逆向为原作基准;Double回血祝福以实机确认保留;所有首版Tile、Corner、Blessing和Shop商品使用明确白名单;未知参数统一读取MVP默认配置。**
## 0. 文档状态与版本合并原则
### 0.1 规则状态
| 状态 | 含义 |
| --- | --- |
| MVP设计冻结 | 已经明确拍板的《一骰登天》MVP玩法规则;后续原作证据只有在明确决定接受时才覆盖 |
| 原作确认 | HEROLL 2.0.1配置、原生逻辑或已闭合逆向证据可直接支持 |
| 原作部分确认 | 主体规则已经闭合,但仍有参数、辅助修正或调用边界没有完全恢复 |
| 实机确认 | 本项目实机观察、录像或编辑者确认 |
| 推定还原 | 有原作证据锚点,但仍包含必要解释或映射 |
| DEMO冻结 | 原作精确值无法可靠恢复,为保证MVP可实现而明确确定的设计值 |
| 未知 | 当前证据不足,不得写成原作确定规则 |
| 驳回 | 与当前更高等级证据、实机行为或已经冻结的MVP设计冲突,不继续作为当前执行规则 |
### 0.2 v0.2.8模块采用矩阵
| 模块 | 最终采用来源 | 本版执行结论 |
| --- | --- | --- |
| Floor与棋盘刷新 | 2026-09-01楼层刷新专项逆向 | 同一张棋盘持续变异;换Floor只追加、替换或刷新指定内容,不逐Floor整盘重建 |
| Good Tile生成 | 2026-09-01专项逆向 + MVP映射 | 新局初始化固定发起8次Good牌组抽取;后续经过Start调用`AddRandomGoodTiles(loopIndex+2)`;调用次数不等于最终成功生成数量 |
| Enemy Tile生成 | 2026-09-01专项逆向 | 换Floor调用`AddRandomEnemyTile(enemyTilesPerLoop, false)`;`enemyTilesPerLoop`精确原值未恢复前不得写死为10 |
| Good Tile牌组 | 2026-09-01专项逆向 | 从当前合法OutGameTile牌组洗牌后无放回抽取,耗尽后重新洗牌;MVP只加载已启用Good内容 |
| Corner初始化 | 2026-09-01专项逆向 | 新局初始化时`SpawnAllCornerTiles`;取消“每Floor重新抽3个Corner” |
| Corner触发后状态 | v0.2.2 MVP规则 | Corner完成结算后在该大型位置刷新新的合法Corner,直到新证据证伪 |
| 建筑与地块外侧房屋 | Housing Support专项逆向 + MVP闭合 | 启用Corner 129;每个普通小地块拥有1个独立外侧房屋槽,房屋不替换地块内容并持续到最终BOSS Floor |
| 小地块触发后状态 | v0.2.2 MVP规则 | 普通小地块完成事件或战斗后变为普通空地块 |
| Default关卡进度 | 2026-09-01专项逆向 | 使用固定10/13/15 Floor结构;完成最终Floor进入BOSS Floor;不使用实时`runtimeBossGauge`压力链 |
| DiceGauge关卡主进度 | 实机确认 | 右侧主进度由Floor改为行动次数0/50;每完成一次玩家行动+1;50/50进入BOSS Floor,全部地板替换为BOSS Tile |
| DiceGauge内部压力 | 专项逆向基线 + MVP主动偏离 | 原作保留`0→50→100`证据;MVP执行进场50、每行动+25、满100后倒计时4回合并循环清零;不等于右侧0/50 |
| 旧X回合BOSS模型 | 驳回 | v0.2.2“X回合计数 + 行动后空闲2回合”不再作为当前执行规则 |
| 装备生成体系 | v0.2.5 | 使用Floor至Floor+2等级、六品质权重、9项共享副词条、`plusLevel`及线性数值公式 |
| 商店经济模型 | v0.2.5 | 使用3固定升级槽加3随机槽、3/5/7/9……刷新价格、固定升级链及黑市百分比加价公式 |
| 天道赐福目录 | v0.2.5 | 58行配置中以31条原作当前启用祝福作为正式数据目录,MVP再按功能过滤 |
| 战斗公式 | 2026-08-28战斗专项逆向 | 采用原作浮点伤害、线性防御、`100/攻速`、吸血向上取整、独立命中/暴击/反击判定 |
| 战斗行动模型 | 2026-08-28战斗专项逆向 | 统一采用原作自动实时冷却;玩家与每个敌人分别维护攻击计时,冷却完成者立即进入攻击流程,不强制轮流 |
| Stage 0敌人数值 | 暂不并入 | 已获得专项逆向表,但留待战斗数值模块单独整合,本版不改当前敌人数值模板 |
### 0.3 冲突处理优先级
发生规则冲突时按以下顺序处理:
1. 已经明确确认的实机行为。
2. 本版0.2节已经拍板采用的模块规则。
3. 已闭合的专项逆向证据。
4. v0.2.5已经闭合的装备、商店、祝福与掉落证据。
5. v0.2.2中未被新证据或新决策替换的MVP规则。
6. 原作无法闭合但MVP必须实现的项目使用DEMO冻结值。
**实机行为优先用于校正逆向报告的“语义解释”。** 例如DiceGauge关卡配置值50在专项报告中曾被解释为内部Gauge单次增加值,但实机已经确认玩家右侧主进度是0/50行动次数。因此本版必须同时保存“玩家可见关卡进度”和“内部`runtimeBossGauge`”两套变量,不得合并。
### 0.4 本版新增楼层刷新逆向结论
1. 启用的普通主线Stage共52个,其中33个为`Default`,19个为`DiceGauge`。
2. `Default`关卡的固定Floor数为10、13或15;其`bossSpawnRuleValue`与对应`board.csv`楼层行数一致。
3. 新局初始化与普通换Floor使用不同流程。新局包含`SpawnInitialTiles`、`SpawnAllCornerTiles`和`AddRandomGoodTiles(8)`。
4. 普通经过Start后推进内部`loopIndex`,并调用`AddRandomGoodTiles(loopIndex+2)`与`AddRandomEnemyTile(enemyTilesPerLoop, false)`。
5. `loopIndex+2`代表Good Tile元数据抽取/安装尝试次数,不保证最终新增同样数量的可见Good Tile。
6. Good Tile元数据从当前合法玩家牌组中洗牌后无放回抽取,牌组耗尽后重新洗牌。
7. Good/Tile自然生成存在`isEnabled`、`minStage`、`minLoop`、`ETileTypeV2`、`maxCornerPerGame`等资格过滤。
8. Corner在新局通过`SpawnAllCornerTiles`建立;普通换Floor没有证据支持重新随机全部Corner。
9. DiceGauge模式内部存在独立`runtimeBossGauge`和`BossDiceCounter`;二者不得与玩家可见0/50行动进度混为一个变量。
10. 当前专项逆向仍未恢复`enemyTilesPerLoop`的原始序列化数值,因此旧版“每Floor固定10个Enemy”停止作为当前规则使用。
### 0.5 v0.2.5继续保留的关键逆向成果
1. 装备品质基础权重为210、60、28、4、1、4。
2. 装备等级以当前Floor为基准,从Floor、Floor+1、Floor+2按90、5、1相对权重生成。
3. 普通随机副词条收敛为9项共享池,单件装备内不重复。
4. 品质不再使用1.25、1.55、1.95、2.45、3.10等全局主属性倍率。
5. `plusLevel`作为副词条强化级,决定词条强化预算与星级表现。
6. 商店为3个固定升级槽加3个随机商品槽。
7. 付费刷新价格为3、5、7、9、11……,免费刷新不推进付费价格。
8. 普通商品重复购买不自动涨价,丹药固定升级使用逐级预设价格链。
9. 黑市使用独立百分比加价公式,具体百分比仍未知。
10. AUGMENT配置共58行,其中原作当前启用31条;本版正式目录使用这31条。
11. 单个敌人死亡掉落、整场战斗结束奖励、特殊Tile追加奖励与BOSS中途额外装备必须分层处理。
## 属性和资源
玩家在局内拥有以下主要属性和资源。
### 骰子(天命骰)
玩家拥有两枚六面骰子。每个玩家回合开始时,玩家掷出两枚骰子,两枚骰子的点数相加,得到本次移动步数。
例如,4+5与3+6都会得到9点移动步数。
当两枚骰子点数相同时,触发 Double(双骰同点)。Double不会再次将本次移动步数翻倍,例如1+1仍然移动2步。
《一骰登天》中,Double统一包装为**机缘**。
当前主线骰子36个有序组合在客户端基础配置中的权重相同,因此在没有其他运行时覆盖时,Natural Double(自然双骰同点)的基础出现概率为6/36,约16.67%。
每次Natural Double立即触发一次机缘,并同时产生两类效果:
1. **随机属性机缘**:从伤害+10%、最大生命+10%、防御+10%中随机获得一项。DEMO采用三项等权。该属性持续至本局结束,可以重复叠加,每项最多叠加10层。最大生命提高时,当前生命同步增加与最大生命增加值相同的数值。
2. **先攻机缘**:获得一个保留至下一次掷骰最终落点的先攻标记。如果下一次掷骰最终进入普通、精英或BOSS战斗,则在正常自动战斗开始前对第一目标造成一次先攻伤害。如果下一次掷骰最终落点不是战斗,先攻标记立即失效。一次掷骰中发生跨Floor并继续消耗剩余步数,不会提前消耗先攻标记。
DEMO将先攻冻结为:**100%当前攻击力,经标准防御结算,必中,不可暴击,不触发吸血和击杀触发效果。**
Forced Double(强制双骰同点)与Natural Double分开处理。为了避免祝福或其他效果强制Double后再次生成机缘形成循环,MVP默认只有Natural Double触发机缘奖励。
玩家掷骰后,角色按照两枚骰子的点数之和顺时针移动。移动经过的普通小型地块不触发效果,最终停留地块才执行完整地块结算。
### 生命值
生命值代表玩家当前的生存状态。
玩家在战斗、减益事件或其他伤害内容中损失生命值,通过丹药、灵泉打坐和其他恢复效果恢复生命值。
生命值不能超过当前最大生命值。
当生命值降低至0时,本局失败并进入失败结算。
MVP暂不实现复杂复活流程。IAA广告版本再单独确定复活次数、恢复比例、资源消耗以及复活后的棋盘和BOSS状态。
### 基础战斗属性
DEMO角色使用以下基础属性作为首轮战斗平衡基准:
| 属性 | 基础值 | 状态 |
| --- | ---: | --- |
| 最大生命 | 100 | DEMO冻结 |
| 攻击力 | 20 | DEMO冻结 |
| 防御力 | 5 | DEMO冻结 |
| 暴击率 | 5% | DEMO冻结 |
| 暴击伤害 | 150% | 推定还原 |
| 攻击速度倍率 | 1.0 | DEMO冻结 |
| 命中 | 100% | DEMO冻结 |
| 闪避 | 0% | DEMO冻结 |
| 吸血 | 0% | DEMO冻结 |
| 反击 | 10% | DEMO冻结 |
| 初始灵石 | 0 | DEMO冻结 |
| 续命丹基础持有上限 | 1 | DEMO冻结 |
暴击伤害150%以原作存在的基础暴击伤害数据作为锚点进行推定还原。
基础反击率为10%。反击使用独立的1至100随机判定,并按2.6节的原作反击`DamageMeta`链结算;反击可以未命中或暴击,仍受目标防御影响,但不触发吸血。
### 局内货币(灵石)
玩家通过战斗、事件、装备放弃及其他局内奖励获得灵石。
灵石主要用于坊市购买商品、刷新商品及其他局内消费。
灵石只在当前一局中使用,不进入长期经济系统。
### 药水(丹药)
HEROLL 2.0.1 原作商店目录确认存在9种药水商品,包括即时恢复、持续恢复、攻击、命中、暴击、吸血、防御、反击与回避药水。
《一骰登天》MVP此前已经拍板将药水系统简化为单一恢复型丹药,因此本版继续采用:
**续命丹:战斗中主动使用的单一恢复丹药。**
原作9种药水的目录数据全部保留在文末`shop-catalog.csv`附录中,但除恢复型药水外,其余功能药水在MVP首版默认关闭,不进入随机商品池。
MVP续命丹基础规则:
| 项目 | 规则 | 状态 |
| --- | --- | --- |
| 使用时机 | 战斗中主动使用 | MVP设计决定 |
| 满血使用 | 不消耗丹药,并提示当前无需恢复 | MVP设计决定 |
| 基础恢复量 | 恢复最大生命10% | DEMO冻结 |
| 基础持有量 | 1瓶 | DEMO冻结 |
| 商店补充 | 固定商品,单价5灵石,可重复购买,单价不随购买次数上涨 | 原作结构确认 + MVP映射 |
| 持有量强化 | 使用原作`potionCount`固定升级链 | 原作确认 |
| 恢复量强化 | 使用原作`potionHeal`固定升级链 | 原作确认 |
固定升级链的价格不再使用旧版“每次购买自动+5”的模拟规则,而以原作逐级商品为准:
- 丹药持有上限升级价格:10、15、21、28、36、45、55、66、78。
- 丹药恢复量升级价格:7、11、15、20、25、30、35、40、45、50、55、60、65、70、75、80、85、90、95、100。
- 补充1瓶丹药:5灵石,可重复购买,单价不增长。
这里的价格上涨属于**固定升级链切换到下一等级商品**,不是同一商品重复购买后的动态涨价。
### 装备
玩家在局内可以获得四个部位的装备:
武器、戒指、手套、鞋子。
每个部位只能装备一件。
HEROLL 2.0.1确认四类局内装备各有10个装备本体,共40个局内装备身份。局内装备系统与局外长期装备系统分开。
四部位固定主属性如下:
| 部位 | 原内部属性 | 《一骰登天》含义 | 状态 |
| --- | --- | --- | --- |
| 武器 | ATTACK_POWER(攻击力) | 攻击力 | 原作确认 |
| 戒指 | HEALTH(生命) | 最大生命 | 原作确认 |
| 手套 | AIM(命中) | 命中 | 原作确认 |
| 鞋子 | DEFENSE(防御) | 防御力 | 原作确认 |
装备本体、装备品质、装备等级是三次相互独立的生成决策。默认路径中,装备品质不会决定装备等级,装备等级也不会直接决定装备品质。
## 1. 关卡
### 1.1 Stage进度类型
HEROLL 2.0.1当前启用的52个普通主线Stage分为两种进度类型:
| 内部类型 | 数量 | 玩家可见主进度 | Stage结束条件 | 状态 |
| --- | ---: | --- | --- | --- |
| Default | 33 | 当前Floor / 总Floor | 完成配置的最终Floor | 原作确认 |
| DiceGauge | 19 | 行动次数0/50 | 玩家行动次数达到50/50 | 实机确认 + 配置锚点 |
#### 1.1.1 Default关卡
`Default`使用固定Floor推进。当前配置确认存在10、13、15 Floor三种结构。
`bossSpawnRuleValue`与`board.csv`中该Stage的楼层行数一致。以Stage 0为例:
- `bossSpawnRule=Default`
- `bossSpawnRuleValue=10`
- 内部`loop=0..9`
- 完成第10个Floor后进入`boss_0`
Default关卡不使用DiceGauge模式的实时`runtimeBossGauge`压力链。
#### 1.1.2 DiceGauge关卡
DiceGauge关卡的**玩家可见主进度不是Floor计数**。实机确认:
1. 画面右侧原本的Floor进度区域改为**行动次数进度0/50**。
2. 玩家每完成一次玩家行动,也就是一次掷骰行动,进度+1。
3. 达到50/50时进入BOSS Floor。
4. 进入BOSS Floor后,当前棋盘全部44个位置替换为BOSS Tile。
5. 玩家最终停留在任意BOSS Tile后进入最终BOSS战。
DiceGauge关卡**仍然保留内部`loopIndex/Floor`状态**。玩家虽然不在右侧看到Floor数字,但内部Floor仍用于:
- 经过Start后的地块刷新;
- `minLoop`等地块资格判断;
- 每3 Floor一次的坊市周期;
- 装备等级以当前Floor为基础的生成;
- 其他依赖Floor/loop的局内系统。
因此必须严格区分:
**玩家可见关卡结束进度 = 0/50行动次数。**
**内部棋盘刷新层级 = loopIndex/Floor。**
### 1.2 棋盘持续状态与圈
棋盘由4个大型地块位置和40个小型地块位置组成,共44个位置。玩家沿固定顺序顺时针移动,不进行路线选择。
本版不再把每个Floor理解成“一张全新的棋盘”。正确执行模型为:
**一局Stage建立一张棋盘,随后随着玩家不断绕圈、经过Start、触发事件和BOSS压力而持续变异。**
玩家从Start出发并再次经过Start时,完成一圈,同时推进内部`loopIndex/Floor`。
如果本次骰子还有剩余移动步数:
1. 暂停剩余移动。
2. 结算Start/Floor推进流程。
3. 在同一张棋盘上完成本轮刷新与商店流程。
4. 从Start继续消耗剩余移动步数。
5. 剩余步数归零后,执行最终落点地块结算。
例如玩家距离Start还有2步,本次掷出8点:先移动2步经过Start,完成本轮Floor推进和刷新,再继续移动剩余6步。
### 1.3 棋盘与固定结构
#### 1.3.1 Start与大型位置
Start固定在画面最下方,承担:
1. 圈完成与内部Floor推进。
2. 灵泉打坐结算。
3. 坊市入口。
4. 地块刷新流程入口。
5. 剩余移动步数的暂停与恢复。
6. Default关卡最终Floor完成判定。
除Start外,其余3个大型位置使用Corner事件。
**新局初始化时通过`SpawnAllCornerTiles`建立Corner。普通经过Start/换Floor不会重新随机全部3个Corner。**
当前MVP继续保留以下Corner内容:
| 原作Corner | 《一骰登天》包装 | 作用 |
| --- | --- | --- |
| Flower Garden | 灵圃 | 将接下来10个地块转化为宝箱类收益地块 |
| Race | 竞天台 | 启动3次掷骰竞速,在限制内到达终点获得高品质局内装备 |
| Wall of Thorns | 天罚 | 减少后续敌人格中的敌人数;单怪地块可直接清除敌人并获得奖励 |
| Black Market | 黑市散摊 | 打开黑市商店;商品结构沿用v0.2.5,使用独立百分比加价公式 |
| Housing Support | 营造司 | 掷两枚独立D6,以点数和为基础建设次数,在下一条顺时针棋盘边的空闲外侧槽建造房屋 |
Warp、Piggy Bank与Dice Catapult继续从当前MVP移除。
首版Corner白名单冻结为全部上述5项,均必须实现:`125`天罚、`127`竞天台、`128`灵圃、`129`营造司、`131`黑市散摊。任何未列入白名单的Corner不得自然生成。
Corner完成事件结算后,**继续沿用MVP既定规则:在该大型位置刷新新的合法Corner事件。** 本次专项逆向只证明普通换Floor不会全量重抽Corner,并未证伪“Corner被消费后局部刷新”。
#### 1.3.2 AUGMENT固定保护位
AUGMENT(天道赐福)继续使用当前MVP固定规则:
1. 位于Start顺时针第5个小型地块。
2. 属于普通流程保护位置。
3. Good、Enemy与普通BOSS压力不得覆盖。
4. 只有进入最终BOSS Floor时,才随全盘一起替换为BOSS Tile。
#### 1.3.3 小型地块
小型地块分为:
1. 玩家/增益地块。
2. 怪物/减益地块。
3. 普通空地块。
玩家只有最终停留在小型地块时才触发其玩法效果,移动经过但未停留不触发。
当前MVP玩家/增益地块包括AUGMENT、Chest、Dice Battle、Forge、Lucky Scratch、Claw Machine、Dicereel等;怪物/减益地块包括Enemy、Elite Enemy、BossAttack/Boss Event、Prison、Monster Outbreak等。各事件自身规则继续沿用现有章节与配置表,不因本次Floor刷新逆向自动扩大MVP范围。
首版Good Event白名单冻结为全部上述6项并要求实现:`137` Forge、`141` Chest、`143` Dice Battle、`151` Claw Machine、`164` Dicereel、`169` Lucky Scratch。核心棋盘、DiceGauge压力、Corner、Good Event和Blessing的逐ID权威表为`analysis/mvp-rules-closure/02-tile-corner-blessing-whitelist.csv`;未列入或`mvp_enabled=false`的内容不得进入自然候选池。
#### 1.3.4 建筑与地块外侧房屋
建筑是附着在小型地块外侧的独立状态层,不是新的移动地块。每个普通小型地块拥有1个外侧房屋槽;建房不会替换该格的Good、Enemy、Empty或事件内容,也不会改变玩家移动路径和落点触发规则。
落在`129 Housing Support / 营造司`时执行一次建造事件:
1. 独立掷两枚六面骰,记为`A`与`B`。
2. 基础建设次数为`A+B`。
3. 若持有唯一祝福`152 都市计划`,本次总建设次数再加2;该祝福不可重复获得。
4. 以营造司大型位置之后、顺时针方向的下一条棋盘边为目标区,收集其中尚未建房的普通小地块外侧槽。
5. 使用本局确定性随机源无放回选择不同槽位;实际建成数为`min(总建设次数, 合法槽位数)`,每个被选中的合法槽必定成功。
6. 每成功建成1栋房屋获得1灵石,奖励公式为`actualBuiltCount × 1`。两骰与建设次数来自原作逆向;“每栋1灵石”是原作换算未恢复时的DEMO冻结值。
7. 若目标区没有合法槽位,则显示“无可建设空位”,以建成0栋、奖励0灵石完成事件;不重掷、不跨边寻找替代位置。
8. 完成建造动画和奖励后,该Corner按既定Corner消费规则刷新为新的合法Corner。
房屋跨`loopIndex/Floor`持续存在。底层小地块之后被Good、Enemy、Empty或普通事件转换时,房屋不随之删除;MVP中房屋没有被动产出、战斗加成或地块效果修正。进入最终BOSS Floor时,在44格BOSS转换事务中清空全部外侧房屋。
存档与回放必须记录房屋槽占用、两枚建造骰结果、候选槽、最终选中槽、奖励、随机种子和规则版本。完整执行字段见`analysis/mvp-rules-closure/06-building-rules.csv`。
### 1.4 新局初始化
新局初始化与普通经过Start后的Floor刷新必须分开。
已恢复的主流程为:
```text
进入新Run
→ loopIndex = 0
→ SpawnInitialTiles(...)
→ SpawnAllCornerTiles()
→ AddRandomGoodTiles(8, 当前合法Good牌组)
→ 进入可游玩状态
```
其中:
1. `SpawnInitialTiles`内部常量参数的完整语义尚未闭合,不在GDD中猜测。
2. `SpawnAllCornerTiles`只属于新局初始化,不代表每Floor都重抽Corner。
3. `AddRandomGoodTiles(8)`表示发起8次Good元数据抽取/安装尝试。
4. “8次尝试”不等于最终一定看见8个新增Good Tile,候选位置不足、保护规则或安装失败都可能减少最终成功数量。
### 1.5 经过Start后的Floor刷新
玩家跨过Start后只执行以下唯一时序。后续章节不得另行描述不同顺序:
```text
跨过Start
→ 暂停并保存剩余移动步数
→ 商店判定与交互
→ 最终Floor/BOSS判定
→ 当前Floor结束奖励
→ 若不是最终Floor:loopIndex推进,并安装本次商店购买的Tile
→ 若不是最终Floor:AddRandomGoodTiles(loopIndex+2)
→ 若不是最终Floor:AddRandomEnemyTile(enemyTilesPerLoop, false)
→ 灵泉恢复
→ 恢复剩余移动
```
执行约束:
1. 商店界面、购买、刷新以及全部待处理奖励必须完成后,才能进入BOSS判定或后续步骤。
2. 最终Floor/BOSS判定命中时,跳过`loopIndex`推进、商店购买Tile安装以及普通Good/Enemy刷新。
3. 最终Floor转换不会清空剩余移动步数;全盘替换后继续消耗本次未完成步数。
4. 非最终Floor中,商店购买的Tile与本次`loopIndex`推进在同一个Start事务内提交,然后再执行自然Good/Enemy刷新。
5. 任一步骤出现阻塞式UI时,保持骰子和移动锁定;事务全部完成后才恢复移动。
#### 1.5.1 Default最终Floor检查
如果当前Stage为Default,并且内部Floor已经达到`bossSpawnRuleValue`:
1. 不再执行普通下一Floor刷新。
2. 进入BOSS Floor。
3. 全部44个棋盘位置替换为BOSS Tile。
4. 若本次掷骰仍有剩余步数,则在BOSS棋盘上继续移动;剩余步数归零后的最终落点触发BOSS战。
5. 若替换时没有剩余步数,则当前站位不立即触发BOSS战;玩家必须再掷一次骰,并在BOSS Tile上完成新的最终落点后进入BOSS战。
#### 1.5.2 Good Tile新增
普通换Floor调用:
`AddRandomGoodTiles(loopIndex + 2)`
这里的`loopIndex+2`是**抽取/安装尝试次数**,不是固定成功生成数量。
若UI Floor以1开始,当前显示Floor为`F`时,常规换层调用对应的尝试数可以理解为随Floor提高而增长,但程序必须以内部`loopIndex`为唯一计算源,避免零基/一基转换错误。
#### 1.5.3 Enemy Tile新增
普通换Floor调用:
`AddRandomEnemyTile(enemyTilesPerLoop, false)`
因此:
- 旧版“每Floor固定转化10个Enemy/Bad Event”停止使用。
- `enemyTilesPerLoop`是当前正确的配置入口。
- 本次专项材料尚未恢复该参数的原始序列化数值。
- 在原值恢复前,开发配置必须保留该参数,不得把10重新写死为“原作值”。
- 《一骰登天》MVP默认使用`enemyTilesPerLoop=3`次尝试。该值为DEMO冻结,可配置,但不得标记为HEROLL原作值。
### 1.6 Good Tile牌组与资格过滤
Good Tile不是每次从所有Good Event中独立等权随机,而是由玩家当前合法`OutGameTile`牌组驱动。
基础抽取规则:
1. 根据当前玩家可用Good Tile元数据建立合法牌组。
2. 对牌组进行洗牌。
3. 按洗牌后的顺序无放回抽取。
4. 当前牌组抽完后,复制合法牌组并重新洗牌。
5. 继续下一轮无放回抽取。
原作新账号默认牌组可见8张Good元数据,但《一骰登天》MVP不会因为恢复了原作牌组就自动重新启用已经删除或尚未实现的玩法。
**MVP执行方式:保留“洗牌、无放回、耗尽重洗”的底层机制,但只将当前MVP功能已经启用的Good Tile加入合法牌组。**
自然生成资格至少包含以下过滤字段:
| 过滤字段 | 含义 |
| --- | --- |
| `isEnabled` | 当前内容是否启用 |
| `minStage` | 最低Stage门槛 |
| `minLoop` | 最低内部Floor/圈数门槛 |
| `ETileTypeV2` | 地块类型约束 |
| `maxCornerPerGame` | 单局Corner类内容出现上限 |
生成前必须先完成资格过滤,再进入牌组或候选抽取。
### 1.7 地块触发后的状态与覆盖
当前继续执行以下MVP状态变化:
1. 普通小型地块完成事件或战斗结算后,转化为普通空地块。
2. Corner完成事件结算后,在该大型位置刷新新的合法Corner。
3. AUGMENT保持固定保护位,不因普通触发逻辑被替换。
4. 进入最终BOSS Floor时,普通保护规则失效,44个位置全部替换为BOSS Tile。
普通动态刷新必须遵守合法目标与保护规则。当前专项逆向能够确认Good生成、Enemy生成和DiceGauge压力生成分别拥有自己的候选过滤,不得用一个“所有空地块统一可覆盖”的简化函数代替全部系统。
### 1.8 玩家回合与移动
一个玩家回合为:
掷骰 → 计算移动步数 → 顺时针移动 → 处理经过Start/Floor推进 → 最终落点 → 地块完整结算 → 回合结束。
规则:
1. 每移动一个棋盘位置消耗1点移动步数。
2. 经过普通小型地块不触发玩法效果。
3. 经过Start时可暂停移动并执行Floor刷新,然后继续剩余步数。
4. 移动期间不允许再次掷骰。
5. 战斗、奖励、祝福选择、商店等外部操作未完成前,不允许开始下一玩家回合。
6. DiceGauge模式的玩家可见0/50行动进度在一次玩家行动完成时+1,不按移动格数增加。
### 1.9 BOSS规则与DiceGauge内部压力
#### 1.9.1 Default关卡
Default模式不使用DiceGauge实时压力链。
Stage结束条件为完成固定Floor数。若配置`midBossSpawnValues`,则存在按Floor进度注册中BOSS的路径;当前零基/一基UI映射尚未完全闭合,因此配置值只按原始门槛保存,实际触发Floor需通过实机录像校准。
#### 1.9.2 DiceGauge关卡的玩家可见结束进度
DiceGauge Stage的主进度按照实机规则执行:
`0/50 → 每完成一次玩家行动 +1 → 50/50 → BOSS Floor全盘覆盖`
该0/50是玩家理解“距离最终BOSS还有多少次行动”的主进度,不得使用内部`runtimeBossGauge`替代显示。
#### 1.9.3 隐藏`runtimeBossGauge`
专项逆向确认HEROLL原作存在独立的0至100压力字段,原作当前配置的正常路径为每次合格落地增加50。为了形成《一骰登天》更稳定的四行动循环,MVP主动采用以下覆盖值:
```text
进入DiceGauge Stage:runtimeBossGauge = 50
每完成一次玩家行动:runtimeBossGauge += 25
上限:100
```
内部压力周期冻结为:
```text
进入关卡:隐藏Gauge 50
→ 第1次玩家行动:75
→ 第2次玩家行动:100
→ 进入BOSS压力倒计时
→ 后续4次玩家掷骰:4 → 3 → 2 → 1 → 0
→ 随机转换4个互不重复、非AUGMENT地块为BOSS压力地块
→ runtimeBossGauge清零
→ 后续每次玩家行动+25
→ 第4次行动重新达到100并再次进入4回合倒计时
```
该“初始50、每行动+25”是MVP主动偏离;HEROLL原作逆向基准仍记录为`0 → 50 → 100`。
这里必须维护至少三个独立状态:
1. **玩家可见Stage行动进度**:0至50,每玩家行动+1,决定何时进入最终BOSS Floor。
2. **`runtimeBossGauge`**:内部0至100压力蓄积,不作为右侧0/50主进度显示。
3. **`BossDiceCounter`**:内部压力触发后的4次掷骰倒计时字段,不得与前两者合并。
MVP边界冻结:
1. 必须一次选出4个互不重复且非AUGMENT的合法地块,不允许降级成1至3格。
2. 若合法候选不足4格,本次压力转换延后,不进行部分转换,不清零Gauge,并写入配置错误日志;下一次行动后重新检查。
3. 压力地块结算后按普通小地块规则变为空地,不恢复被覆盖前的地块。
4. 一次压力行动完成后Gauge清零并进入下一蓄积循环。
5. `BossDiceCounter`显示为独立的4/3/2/1天劫预警,不得替换右侧0/50 Stage主进度。
#### 1.9.4 旧X回合模型处理
v0.2.6及更早版本曾采用“X个玩家回合后BOSS行动,行动后空闲2回合”的MVP冻结模型。
**该模型自v0.2.7起停止作为当前主线执行规则。**
Default与DiceGauge分别按本节规则实现。
## 2. 战斗
玩家最终停留在普通敌人、精英敌人、BOSS或其他战斗地块时进入战斗。
《一骰登天》的战斗采用**自动实时冷却模型**,玩家不直接控制普通攻击时机。玩家与每个存活敌人分别维护自己的攻击冷却,谁先冷却完成谁进入攻击流程;不再强制玩家与敌人轮流行动。行动调度以及下述命中、暴击、防御、攻速、吸血和反击计算均以2026-08-28战斗专项逆向为准。
### 2.1 战斗流程
标准流程:
进入战斗 → 读取玩家与全部敌人当前属性 → 检查机缘先攻 → 为玩家与每个敌人启动独立攻击冷却 → 任一单位冷却完成 → 该单位进入自动攻击流程 → 命中判定 → 暴击、钩子、防御与扣血结算 → 死亡检查 → 敌人死亡时取消其冷却并即时掉落或触发奖励 → 攻击者按最新攻速重新安排下一次冷却 → 所有存活单位继续独立计时 → 直至一方满足结束条件 → 取消全部冷却 → 战斗结束 → 返回棋盘。
实时调度约束:
1. 攻速高的单位可以在低攻速单位两次攻击之间攻击多次。
2. 多个敌人分别计时,不共享“敌方回合”。
3. 单位进入攻击流程后,本次攻击完整结算;其间发生的攻速变化只影响本次攻击结束后新安排的冷却。
4. 单位死亡、战斗结束或离场时立即取消其未完成冷却,禁止死亡后继续攻击。
5. 玩家打开装备处理等战斗暂停界面时,冻结全部单位的冷却剩余时间;关闭界面后从冻结值继续,不把暂停时间计入冷却。
玩家生命值归零时立即失败并进入本局失败流程。
### 2.2 玩家在战斗中的操作
自动攻击期间,玩家仍可以:
1. 使用丹药。
2. 查看实时掉落。
3. 拖拽并替换装备。
4. 放弃不需要的装备并转化为灵石。
玩家开始处理装备时战斗暂停。装备完成后,新装备属性立即作用于尚未结束的当前战斗。
### 2.3 实时掉落来源必须分层
实时掉落不能用一个统一“战斗掉率”概括。
当前必须拆成四类来源:
1. **单个敌人死亡掉落**:至少存在敌人死亡时进入装备生成的路径,原作确认。
2. **整场战斗结束奖励**:与单个敌人死亡掉落是不同阶段,不能默认共用同一个概率。
3. **特殊Tile追加奖励**:实机确认可以在普通死亡掉落之外追加,不应理解为覆盖普通掉落。
4. **BOSS中途额外装备**:实机观察确认存在,但精确触发阈值未闭合。
一格内有3个敌人时,如果每个敌人分别触发死亡掉落,前两个敌人死亡时装备已经可以出现,玩家可以在第三个敌人死亡前处理这些掉落。这个行为与整场战斗结束后的额外奖励相互独立。
### 2.4 普通敌人装备出现机会
当前证据只能确认:
1. 至少一个敌人死亡流程会进入装备生成。
2. 装备可以在战斗尚未清场时实时出现。
3. 祝福等局内效果可以额外改变装备出现机会。
当前不能确认:
1. 所有普通敌人是否无条件生成1件装备。
2. 所有普通敌人是否共享一个固定装备掉率。
3. 普通怪、精英怪、特殊怪的装备出现率是否使用同一公式。
因此,`ingameWeaponDropRatio`(局内装备品质权重)绝不能解释成“敌人掉装备概率”。它只在已经进入装备生成流程后用于抽取品质。
### 2.5 MVP死亡掉落执行值
为了让MVP拥有稳定可调的奖励节奏,当前保留以下统一执行值,但全部标记为DEMO冻结:
| 来源 | MVP执行值 | 原作状态 |
| --- | --- | --- |
| 普通怪死亡 | 装备95%、丹药4%、灵石1%,三类按权重抽1个 | 原作统一概率未知 |
| 精英怪死亡 | 必得1件装备,再从丹药与灵石中按5:2相对权重抽1个附加奖励 | 原作精确规则未知;5:2为DEMO冻结 |
| 特殊Enemy Tile | 在普通敌人死亡掉落基础上追加对应Tile奖励 | 追加关系实机确认,具体数值按MVP配置 |
这张表是《一骰登天》MVP奖励节奏,不得重新解释为HEROLL原作精确掉率。
### 2.6 战斗规则与伤害公式
#### 命中
```text
hitPercent = max(0, 最终命中合成值)
hit = hitPercent > RandomInt[0,101)
```
随机整数为0至100,严格使用`>`比较。最终命中合成值的完整AIM/EVA/特殊消费者顺序仍属于原作部分确认,不再使用旧版`clamp(命中-闪避,5,100)`伪精确公式。
#### 普通伤害
基础伤害 = 最终攻击力 × 技能倍率 × (1 + 已闭合的伤害加成)
最终伤害 = max(0, 防御前浮点伤害 - 目标最终防御)
普通攻击技能倍率为1.0。伤害在运行时保持浮点;扣除HP前不强制`floor`。UI可按显示规则四舍五入,但不得用显示值反向覆盖运行时伤害。`TOTAL_DAMAGE`、`TRUE_DAMAGE`和祝福钩子按各自消费者插入,不压成未经闭合的统一乘区。
#### 暴击
原作暴击判定确认使用:
暴击率 > RandomInt[0,101)
也就是随机整数范围包含0至100,共101个可能整数值。
基础暴击伤害倍率为150%,原作配置确认。
暴击后的防御前伤害 = 防御前伤害 × 暴击伤害倍率
#### 攻击速度
```text
攻击间隔秒 = 100 / 最终攻击速度
```
裸装最终攻击速度100对应1.0秒。原作主干未发现全局0.25秒下限,MVP不再加入该下限。每个单位在自己的攻击流程结束后,根据届时的最终攻击速度安排下一次独立冷却;协程还会扣除当前攻击流程中已经经过的时间,剩余时间小于或等于0时可立即进入下一次攻击。战斗中换装导致的攻速变化从下一次冷却调度开始生效,不追溯缩放已经开始的冷却或攻击。
#### 吸血
吸血恢复 = ceil(本次最终伤害 × 最终吸血率 ÷ 100)
计算结果为正时最低恢复1点。恢复后生命不得超过当前最大生命。
#### 反击
玩家承受一次有效敌方攻击且未死亡后执行独立反击判定:
```text
counter = 最终反击率 >= RandomInt[1,101)
```
随机整数为1至100,因此反击率10对应精确10%。触发后以本次敌方攻击/受伤链构建反击`DamageMeta`,再经过反击自身的命中、暴击和目标防御结算;反击不触发吸血。无伤害护盾等消费者可以阻止反击入口。
#### 机缘先攻
先攻伤害 = max(0, floor(当前攻击力 × 1.0 - 目标防御))
先攻必中,不可暴击,不触发吸血和击杀触发效果。
### 2.7 怪物与BOSS
DEMO基础敌人模板:
| 类型 | 基础生命 | 基础攻击 | 基础防御 | 攻速 | 命中 | 闪避 | 暴击 |
| --- | ---: | ---: | ---: | ---: | ---: | ---: | ---: |
| 普通妖物 | 60 | 10 | 2 | 0.90 | 90 | 5 | 3% |
| 大妖 | 160 | 18 | 4 | 1.00 | 95 | 8 | 5% |
| 最终劫主 | 1200 | 35 | 12 | 1.10 | 100 | 5 | 8% |
普通敌人与精英敌人的Floor成长规则为DEMO冻结:
生命 = floor(基础生命 × (1 + 0.18 × (Floor - 1)))
攻击 = floor(基础攻击 × (1 + 0.10 × (Floor - 1)))
防御 = floor(基础防御 × (1 + 0.08 × (Floor - 1)))
精英怪每第3次攻击造成150%伤害。
最终BOSS每第4次攻击造成180%伤害。
最终BOSS低生命阶段的攻速强化属于DEMO行为,不作为原作证据。
### 2.8 BOSS中途追加装备
实机确认:BOSS战斗中,当BOSS生命下降到某一阶段时会额外出现1件装备。
当前未知:
1. 精确HP百分比。
2. 是否所有BOSS使用同一阈值。
3. 是否存在多段阈值。
4. 具体调用函数与阶段条件。
MVP验证版执行:
1. BOSS首次从生命值高于50%下降至50%或以下时,追加1件随机装备。
2. 每场BOSS战最多触发一次。
3. 如果一击同时越过50%并击杀BOSS,先生成中途装备,再进入死亡结算。
4. BOSS死亡奖励与中途追加装备是两个独立来源。
**50%属于DEMO冻结,不是原作确认。**
## 3. 局内装备
### 3.1 装备生成总流程
当某个奖励来源决定生成装备后,执行以下流程:
1. 确定装备本体。
2. 确定装备品质。
3. 确定装备等级。
4. 根据装备部位生成固定主属性。
5. 根据品质确定随机副词条数量。
6. 从共享副词条池中无重复抽取副词条。
7. 根据品质分配 `plusLevel`(副词条强化级)。
8. 根据装备等级与副词条强化级计算属性数值区间。
9. 完成特殊后处理。
10. 将装备放入当前战斗掉落展示槽,等待玩家装备、放弃或其他处理。
装备本体、品质和等级默认互相独立。
### 3.2 40件装备本体
HEROLL 2.0.1 局内装备共40件,四个部位各10件。装备本体与品质、装备等级、随机副词条分开生成,因此下列名称只决定装备身份与部位,不固定品质或词条。
| 部位 | 固定主属性 | 10件装备 |
| --- | --- | --- |
| 武器 | ATTACK_POWER(攻击力) | 冒险者匕首、誓约匕首、破碎匕首、樵夫匕首、亡者匕首、神圣匕首、霜光匕首、光之匕首、祭坛匕首、烈火匕首 |
| 戒指 | HEALTH(生命值) | 冒险者戒指、誓约戒指、星星戒指、樵夫戒指、亡者戒指、龙之戒指、霜光戒指、幸运戒指、堕落戒指、永存戒指 |
| 手套 | AIM(命中) | 冒险者手套、誓约手套、古代手套、樵夫手套、神圣手套、龙之手套、霜光手套、幸运手套、侏儒手套、永劫手套 |
| 鞋子 | DEFENSE(防御) | 冒险者靴子、誓约靴子、古代靴子、樵夫靴子、神圣靴子、猎龙者靴子、霜光靴子、幸运靴子、堕落靴子、永劫靴子 |
基础随机生成时:
- 武器、戒指、手套、鞋子各占10/40,即25%。
- 单件装备本体在无过滤随机路径下占1/40,即2.5%。
- 2.5%只表示“已经决定生成一件随机装备后选中该本体”的条件概率,不是击杀敌人获得该装备的总概率。
- 固定装备、指定部位装备与特殊事件装备可以绕过基础40件等权路径。
### 3.3 装备品质
六档原作品质基础权重:
`Normal : Rare : Epic : Legend : Myth : Arcane = 210 : 60 : 28 : 4 : 1 : 4`
这些数值是相对权重,不是六次独立百分比判定。
无其他修正时,总权重307,基础分布如下:
| 原内部品质 | 中文注释 | 《一骰登天》包装 | 原作颜色 | 包装颜色 | 权重 | 基础概率 |
| --- | --- | --- | --- | --- | ---: | ---: |
| Normal | 普通 | 凡品 | 灰 | 灰 | 210 | 68.4039% |
| Rare | 稀有 | 良品 | 绿 | 绿 | 60 | 19.5440% |
| Epic | 英雄 | 珍品 | 蓝 | 蓝 | 28 | 9.1205% |
| Legend | 传说 | 极品 | 金 | 紫 | 4 | 1.3029% |
| Myth | 神秘级 | 传世 | 彩色 | 金 | 1 | 0.3257% |
| Arcane | 奥秘级 | 混沌 | 红 | 红 | 4 | 1.3029% |
《一骰登天》的中文品质名和包装颜色属于DEMO包装映射。
**Arcane的基础权重4确实高于Myth的基础权重1。**
### 3.4 品质与Floor的关系
当前确认:
1. Floor直接进入装备等级生成。
2. 装备品质函数本身没有证据直接读取当前Floor。
3. 因此“Floor越高,品质基础权重自动越高”当前不成立。
特殊奖励来源可以通过品质偏置、品质权重修正或“排除Normal(排除凡品)”改变最终品质分布。
任何品质权重修正完成后,都要对最终六档权重重新归一化。
MVP普通主线基础掉落不额外增加Floor品质倍率。
### 3.5 装备等级
装备等级使用 `loopGrade`(局内装备等级字段)表示。
普通主线基础规则为:
`装备等级 = max(1, Floor + Δ)`
其中Floor使用从1开始的可见楼层编号;Δ从0、1、2三档中按90、5、1相对权重抽取。
| Δ | 权重 | 概率 | Floor 10示例 | 状态 |
| ---: | ---: | ---: | ---: | --- |
| 0 | 90 | 93.7500% | Lv.10 | 原作确认 |
| 1 | 5 | 5.2083% | Lv.11 | 原作确认 |
| 2 | 1 | 1.0417% | Lv.12 | 原作确认 |
因此普通情况下:
1. Floor 10不会生成低于Lv.10的装备。
2. Floor 10可以生成Lv.10、Lv.11、Lv.12。
3. 基础最高为当前Floor+2。
原作还存在模式或阶段上限钳制,但相关辅助值没有完全闭合。
MVP不启用局外研究和额外等级上限修正,普通主线直接使用Floor至Floor+2规则。
部分特殊事件会把候选等级提高为Floor+1或Floor+2,但其精确二项概率仍属于原作部分确认。MVP如启用该特殊分支,应单独配置,不把推导概率写成原作确定值。
### 3.6 固定主属性
四个部位的主属性由装备槽固定决定,不从随机副词条池中抽取。
| 部位 | 原内部属性 | 中文含义 | Base范围 | 每有效等级增长值 | 数值精度 | 状态 |
| --- | --- | --- | ---: | ---: | --- | --- |
| Weapon(武器) | ATTACK_POWER | 攻击力 | 3至7 | +5 | 整数 | 原作确认 |
| Ring(戒指) | HEALTH | 最大生命 | 20至40 | +50 | 整数 | 原作确认 |
| Gauntlet(手套) | AIM | 命中 | 5至15 | +10 | 整数 | 原作确认 |
| Boots(鞋子) | DEFENSE | 防御 | 1.5至2.5 | +1.5 | 1位小数 | 原作确认 |
主属性有效等级的已确认规则:
`主属性有效等级 = 装备等级 - 1 + Myth修正`
其中:
1. Normal、Rare、Epic、Legend、Arcane的Myth修正为0。
2. Myth的Myth修正为1,即主属性有效等级额外+1。
3. Arcane不会获得这一Myth主属性有效等级+1。
四个部位在这一有效等级公式上完全一致。
需要保留的证据边界:`gear-value-formulas.csv`确认的是主属性类型、有效等级和数值精度;最终逆向审计仍发现主属性路径存在尚未完全命名的槽位辅助修正与最终乘数。因此“主属性有效等级公式”属于原作确认,但“最终主属性显示值的全部乘区”仍属于原作部分确认。
MVP实现中,不引入无法解释的隐藏修正;未闭合的槽位辅助修正按0处理,未闭合的额外最终倍率按1.0处理。
### 3.7 随机副词条池
四个装备部位共享同一个9项随机副词条池,单件装备内副词条不重复。没有发现武器、戒指、手套、鞋子之间的副词条池过滤。
| 内部状态 | 中文含义 | 武器 | 戒指 | 手套 | 鞋子 | Base范围 | 每强化级增长 | 百分比属性 | 保留小数 | 状态 |
| --- | --- | --- | --- | --- | --- | ---: | ---: | --- | --- | --- |
| EVASION | 闪避 | 可出 | 可出 | 可出 | 可出 | 14至20 | +7 | 否 | 否 | 原作确认 |
| REGEN_PER_SECOND | 每秒生命回复 | 可出 | 可出 | 可出 | 可出 | 1至2 | +2.4 | 否 | 是 | 原作确认 |
| TOTAL_DAMAGE | 总伤害 | 可出 | 可出 | 可出 | 可出 | 1至2 | +1 | 否 | 是 | 原作确认 |
| TRUE_DAMAGE | 真实伤害 | 可出 | 可出 | 可出 | 可出 | 1至2.5 | +1.7 | 否 | 否 | 原作确认 |
| KILL_HEAL | 击杀回复 | 可出 | 可出 | 可出 | 可出 | 6至9 | +2.5 | 否 | 否 | 原作确认 |
| COUNTER_ATTACK | 反击 | 可出 | 可出 | 可出 | 可出 | 7至9 | +1.5 | 是 | 否 | 原作确认 |
| ATTACK_SPEED | 攻击速度 | 可出 | 可出 | 可出 | 可出 | 7至9 | +1.4 | 是 | 否 | 原作确认 |
| CRITICAL_RATE | 暴击率 | 可出 | 可出 | 可出 | 可出 | 10至12 | +1.5 | 是 | 否 | 原作确认 |
| LIFE_STEAL | 吸血 | 可出 | 可出 | 可出 | 可出 | 4.5至7.5 | +1.5 | 是 | 否 | 原作确认 |
精度规则:
1. “保留小数=是”的属性按原配置保留1位小数。
2. “保留小数=否”的属性最终按整数处理,即使Base或每强化级增长值本身包含小数。
3. “百分比属性=是”表示该词条按百分比/百分点类战斗属性解释;“否”表示数值型属性。
以下旧版词条从普通随机副词条池中删除:最大生命、攻击力、防御、命中、暴击伤害、丹药效果、精英伤害、BOSS伤害。
其中攻击力、最大生命、命中、防御已经确认是四个装备部位的固定主属性,不属于随机副词条。
### 3.8 品质决定副词条数量与星级组合
六档品质不仅决定副词条数量,还决定副词条强化点如何分配。下表中的“星级组合”按从高到低排序。
| 品质枚举 | 原内部品质 | 《一骰登天》包装 | 基础权重 | 基础概率 | 副词条数 | 排序后星级组合 | 主属性/特殊效果 | 状态 |
| ---: | --- | --- | ---: | ---: | ---: | --- | --- | --- |
| 0 | Normal(灰) | 凡品 | 210 | 68.4039% | 0 | 无 | 无 | 原作确认 |
| 1 | Rare(绿) | 良品 | 60 | 19.5440% | 1 | [1] | 无 | 原作确认 |
| 2 | Epic(蓝) | 珍品 | 28 | 9.1205% | 2 | [1,1] | 无 | 原作确认 |
| 3 | Legend(金) | 极品 | 4 | 1.3029% | 3 | [2,1,1] | 无 | 原作确认 |
| 4 | Myth(彩) | 传世 | 1 | 0.3257% | 3 | [4,1,1]、[3,2,1]或[2,2,2] | 主属性有效等级+1 | 原作确认 |
| 5 | Arcane(红) | 混沌 | 4 | 1.3029% | 3 | [4,1,1] | 被选中的强化副词条带Arcane特殊标记 | 原作确认 |
这些基础概率只适用于没有其他品质权重修正时。品质权重是相对权重,需要对修正后的最终权重重新归一化。
### 3.9 `plusLevel`(副词条强化级)与星级
底层属性对象使用`plusLevel`记录单条副词条获得的额外有效等级。数值计算上:
`显示星级 = plusLevel + 1`
因此:
1. Rare:1条副词条,`plusLevel=0`,显示为1星。
2. Epic:2条副词条,均为`plusLevel=0`,显示为[1,1]。
3. Legend:3条副词条初始均为0,再随机给其中1条`plusLevel+1`,显示为[2,1,1]。
4. Myth:3条副词条初始均为0,再进行3次独立随机分配,每次随机选择1条`plusLevel+1`,允许重复命中。
5. Arcane:3条副词条初始均为0,随机选择1条,将3个强化点全部集中给该词条,显示为[4,1,1]。
Myth排序后星级组合的精确概率为:
| 星级组合 | 概率 |
| --- | ---: |
| [4,1,1] | 11.1111% |
| [3,2,1] | 66.6667% |
| [2,2,2] | 22.2222% |
强化点数量与分配规则属于原作确认。“星级”作为《一骰登天》的玩家可见中文包装术语,不影响底层`plusLevel`计算。
Arcane被集中强化的副词条还存在特殊标记。完整隐藏/观察UI生命周期尚未闭环,MVP首版只保留标记语义,不额外设计未确认的揭示流程。
### 3.10 副词条数值公式
对任意副词条:
`L = 装备等级`
`p = plusLevel(副词条强化级)`
`k = L + p - 1`
`最小值 = baseMin + plusValue × k`
`最大值 = baseMax + plusValue × k`
最终数值在包含两端的最小值和最大值之间均匀随机生成。
数值精度严格读取对应属性配置:`isFloat=true`时对随机结果四舍五入到1位小数,`isFloat=false`时四舍五入为整数;是否属于百分比属性由`is_percent`标记决定。运行时保存四舍五入后的最终装备值,UI不得再次使用另一套截断规则。
例:Floor 10生成Lv.10装备,每秒回复副词条的Base为1至2,plusValue为2.4。
当`plusLevel = 0`时:
`k = 10 + 0 - 1 = 9`
数值区间为22.6至23.6。
如果极品装备将该词条强化1级:
`plusLevel = 1`
`k = 10`
数值区间变为25.0至26.0。
### 3.11 品质不再使用全局主属性倍率
旧版曾使用:
1.25、1.55、1.95、2.45、3.10等品质主属性倍率。
当前逆向证据不支持这些倍率进入普通局内装备的主属性生成路径,因此本版全部删除。
品质对装备强度的已确认影响主要来自:
1. 副词条数量。
2. `plusLevel`强化预算。
3. 传世品质的主属性有效等级+1。
4. 混沌品质的特殊副词条标记。
### 3.12 装备出售与放弃
装备放弃后可以转化为灵石。
当前MVP出售值继续作为经济设计冻结值:
| 品质 | 分解灵石 |
| --- | ---: |
| 凡品 | 1 |
| 良品 | 2 |
| 珍品 | 4 |
| 极品 | 8 |
| 传世 | 12 |
| 混沌 | 16 |
这些数值属于《一骰登天》DEMO经济,不是当前装备生成逆向结论。
### 3.13 掉落展示槽与处理
原作存在有限的战斗装备掉落槽管理,因此不能将底层描述为无限数量缓存。
同时,实机行为确认当前未处理装备会保持显示并阻止部分自动继续流程。
装备栏与掉落展示区必须分开:装备栏固定为武器、戒指、手套、鞋子4槽,每槽只能装备1件;战斗中的未处理掉落展示区最多显示10件。
MVP规则:
1. 新装备掉落后显示在战斗区域和装备栏之间。
2. 玩家未处理掉落时,不允许自动开始下一次棋盘掷骰。
3. 玩家处理装备时战斗暂停。
4. 第11件及之后的新掉落出现时,以先进先出方式替换当前最旧的一件未处理掉落,并显示明确的替换反馈。
5. 被替换掉落直接离开展示区,不自动装备、不自动转化为灵石,也不进入隐藏缓存。
6. “最多10件、满时替换最旧件”属于MVP冻结,不是HEROLL原作容量结论。
装备更换边界:
1. 更换戒指导致最大生命下降时,`currentHP=min(currentHP,newMaxHP)`,只扣除超出新上限的部分,不触发受伤、死亡、反击或其他伤害事件。
2. 战斗中换装造成的攻击速度变化从下一次攻击调度开始生效。
### 3.14 局内装备保底
当前没有发现普通局内装备品质抽取使用保底计数器或重复品排除逻辑。
局外抽卡、挂机地牢或其他系统的保底规则不得迁移到本局内装备系统。
因此MVP普通局内装备品质默认不做保底。
## 4. 商店
《一骰登天》中普通局内商店包装为**坊市散修摊**。
坊市沿用当前项目基线:Starting Tile(起点地块)的商店每3个Floor出现一次。
| 关卡Floor数 | 坊市Floor |
| --- | --- |
| 10 | 3、6、9 |
| 13 | 3、6、9、12 |
| 15 | 3、6、9、12、15 |
坊市严格遵循1.5节Start事务:跨过Start后先完成商店判定与交互,再做最终Floor/BOSS判定。普通Floor中,离开商店后依次结算Floor奖励、推进`loopIndex`并安装商店购买的Tile、刷新Good/Enemy、执行灵泉恢复,最后继续剩余移动。命中最终Floor/BOSS分支时跳过`loopIndex`推进、购买Tile安装和普通刷新。
### 4.1 商店商品总结构
HEROLL 2.0.1 当前已恢复96条局内商店商品:
| 商品类型 | 数量 | 中文说明 | 购买方式 |
| --- | ---: | --- | --- |
| TILE(地块商品) | 12 | 购买一次Good Event(增益事件)内容 | 每行固定价格,通常限购1次 |
| AUGMENT(祝福商品) | 31 | 购买一条天道赐福 | 每行固定价格,限购1次 |
| POTION(药水商品) | 9 | 原作9种局内药水 | 每行固定价格,限购1次 |
| STAT(属性商品) | 13 | 直接提高一项局内属性 | 固定价格,可按商品配置重复购买 |
| FIXED(固定升级) | 30 | 丹药持有量、丹药恢复量与补充丹药 | 按固定升级链推进 |
| LOTTO(彩票) | 1 | 一次随机财富事件 | 固定价格,限购1次 |
《一骰登天》MVP首版继续执行“单一续命丹”设计,因此9种原作药水商品中,仅恢复型药水结构参与MVP;其余功能药水数据保留但默认关闭。
### 4.2 商品槽结构
每次进入普通坊市时,界面由6个商品槽组成:
1. **3个固定升级槽**:用于固定升级链,购买后进入下一档,刷新不会改变其升级进度。
2. **3个随机商品槽**:从当前合法的随机商品池生成,付费刷新或免费刷新只替换这3个随机槽。
固定槽和随机槽必须分开处理,不再沿用旧版“全商店只有4个商品位”的DEMO规则。
### 4.3 原作随机商品类型
随机商品池的数据源包含以下类型:
1. 地块事件商品,例如铁匠铺、恢复、宝箱、骰子对决、夹娃娃机、黄金马车等。
2. 天道赐福商品,共31条启用祝福。
3. 原作药水商品,共9种。
4. 直接属性商品,共13项。
5. 彩票商品1项。
具体商品名称、ID、价格、限购次数与文本键值完整保留在文末`shop-catalog.csv`。
三个随机商品槽采用以下MVP冻结抽取规则:
1. 从当前启用且满足依赖的商品池中等权、无放回抽取3个,因此同一屏不得出现重复商品。
2. 本次商店访问中已经售罄的商品加入本次访问排除集,付费或免费刷新后也不得再次出现。
3. 下一次重新激活商店时清空“本次售罄排除集”,商品可以再次出现。
4. 已持有的可叠加祝福允许再次出现并按加法叠加;唯一祝福达到上限后从候选池排除。
5. 合法候选不足3个属于配置错误,不得以重复商品补位;商店阻止本次刷新并记录候选池快照。
### 4.4 付费刷新规则
每次打开商店时:
`付费刷新次数 = 0`
第k次付费刷新的价格为:
`刷新价格 = 3 + 2 × k`
其中k从0开始,因此价格依次为:
3、5、7、9、11、13……
刷新没有当前已知的固定次数上限;MVP不再使用旧版“最多刷新5次”和“10、20、30、40、50”的DEMO规则。
刷新完成后:
1. 只替换3个随机商品槽。
2. 固定升级槽不重置。
3. 固定升级已购买到的等级进度继续保留。
### 4.5 免费刷新
如果玩家拥有免费刷新次数,则刷新时优先消耗免费次数:
1. 免费刷新次数减1。
2. 不消耗灵石。
3. 不增加付费刷新次数。
4. 下一次付费刷新的价格保持不变。
huifu“领袖气质”会在每次进入商店时增加免费刷新次数。
### 4.6 商品购买与重复购买
普通商品没有通用的“重复购买自动涨价”规则。
购买成功后:
1. 商品剩余购买次数减1。
2. 剩余次数为0时商品售罄。
3. 商品本身的单价不因为已购买次数而上涨。
4. 如果商品配置为无限购买,则可重复购买且基础单价保持不变。
购买TILE商品时先记录到本次Start事务的`purchasedTileQueue`,不立即中断商店并改造棋盘。玩家关闭商店且最终Floor/BOSS判定未命中后,在`loopIndex`推进步骤中按购买顺序安装到合法普通小地块,再执行自然Good/Enemy刷新。若命中最终Floor/BOSS分支,本次购买不得扣款;系统回滚该笔TILE交易并清空对应队列项。
直接属性商品的原作购买上限由商品行配置,主要为3次、5次或10次。
### 4.7 固定升级链
固定升级使用独立商品行预设每一级价格。购买当前等级后,固定槽显示下一等级商品。
#### 丹药持有量升级
价格链:
10、15、21、28、36、45、55、66、78。
#### 丹药恢复量升级
价格链:
7、11、15、20、25、30、35、40、45、50、55、60、65、70、75、80、85、90、95、100。
#### 补充丹药
补充1瓶丹药的价格固定为5,可以重复购买,价格不增长。
### 4.8 黑市
Corner(大型转角事件)中的Black Market(黑市)使用独立的百分比加价,而不是“所有商品固定1.5倍”。
已确认公式:
`黑市最终价格 = 基础价格 + 截断取整(基础价格 × 黑市加价百分比 ÷ 100)`
当前样本尚未闭合所有场景实际使用的黑市加价百分比,因此原作证据边界与MVP执行值分开记录:
- **公式:原作确认。**
- **原作具体百分比:未知。**
- **MVP执行:读取与普通商店共用的全局`shopSurchargePercent`配置,默认50%。**
- 旧版“黑市固定1.5倍”的DEMO值停止作为原作规则使用。
### 4.9 MVP商品启用边界
原作商品目录与MVP首版实际启用商品必须分开。
MVP首版默认:
1. 保留3个固定升级槽和3个随机商品槽结构。
2. 使用原作刷新价格与购买次数规则。
3. 原作9种药水中只启用恢复型续命丹相关内容。
4. 与MVP已移除系统强绑定的商品可以保留在目录中,但不进入首版随机候选池。
5. 所有禁用商品必须通过配置开关关闭,不删除原始目录数据。
## 5. 天道赐福(AUGMENT)
AUGMENT(局内祝福)属于主线局内构筑系统,《一骰登天》中统一包装为**天道赐福**。
JOKER(星期副本中的正负效果组合)不属于主线,不进入本文件的主线祝福池。
HEROLL 2.0.1 的祝福配置共58行,其中当前原作启用31条。本版不再使用“为了补满58条而自行设计祝福”的旧方案,主文档以这31条原作启用祝福作为正式数据目录。
### 5.1 获得
每个普通Floor固定存在1个AUGMENT地块,位置为Start(起点)顺时针第5个小型地块。
玩家最终停留在AUGMENT地块时,从当前合法祝福池中生成候选并选择1个。
《一骰登天》MVP基础展示规则为固定3选1。经过AUGMENT但未停留时不触发。
祝福候选池必须先过滤:
1. 原作是否启用。
2. 当前MVP功能是否启用。
3. 前置依赖是否满足。
4. 唯一祝福是否已经持有。
5. 可叠加祝福是否已经达到当前允许上限。
31条原作启用祝福的基础`prob_weight`(概率权重)均为10,因此在所有祝福都合法、且没有其他运行时修正时,其基础相对权重相同。
抽取与回池规则冻结为:
1. 过滤完成后等权、无放回抽取3个不同祝福,候选必须正好为3个。
2. 玩家选中1个后,未选中的2个与选中的祝福定义全部重新进入后续祝福池;但唯一祝福、依赖和上限仍会在下一次抽取前重新过滤。
3. 合法候选不足3个属于配置错误,不以重复候选补位,也不显示不完整选择界面;记录候选池后阻止该地块结算进入下一步。
4. 可叠加祝福使用数值加法。例:`DoubleHeal`每层恢复8%最大生命,获得2次后每次Natural Double恢复16%。
### 5.2 地块保护
普通Floor中:
1. Good(增益地块)生成不能覆盖AUGMENT。
2. Enemy(怪物地块)生成不能覆盖AUGMENT。
3. BOSS压力不能覆盖AUGMENT。
4. 大型节点不会替换AUGMENT位置。
进入BOSS Floor时,AUGMENT与其他44格一起转化为BOSS Tile(BOSS地块)。
### 5.3 31条原作启用祝福
下表中的英文内部标识只用于配置定位,均附中文效果说明。`可叠加`表示原作配置的`stackable`(可重复获得)字段。
| ID | 天道赐福 | 内部标识 | 核心效果 | 关键参数 | 可叠加 | MVP首版 |
| ---: | --- | --- | --- | --- | --- | --- |
| 100 | 守护一击 | AttackShield(攻击护盾) | 每攻击敌人6次获得防护罩 | n=6 | 否 | 可启用 |
| 102 | 吸血 | CritHeal(暴击恢复) | 恢复暴击伤害的一部分生命 | 15/20/25/30% | 是 | 可启用 |
| 103 | 攻击弱点 | CritDamageUp(暴击伤害提升) | 提高暴击伤害 | 30/35/40% | 是 | 可启用 |
| 106 | 奇迹骰子 | Revive(复活) | 濒死时按骰子总和判定复活 | 门槛4 | 否 | **暂不启用,MVP首版无复活** |
| 108 | 起始一击 | FirstAttackDMGUp(首击增伤) | 每场战斗首次攻击伤害提高 | 70/80/90% | 是 | 可启用 |
| 109 | 攻击力加速 | DMGUpAfterSecond(延时攻击提升) | 战斗3秒后攻击力提高 | +30% | 是 | 可启用 |
| 110 | 攻击速度加速 | ASPUpAfterSecond(延时攻速提升) | 战斗3秒后攻击速度提高 | +30% | 是 | 可启用 |
| 111 | 恢复骰子 | DoubleHeal(同点恢复) | 掷出Natural Double时恢复最大生命 | 每层8%,加法叠加 | 是 | **实机确认,可启用** |
| 112 | 战斗狂 | LowHPASPUp(低血攻速提升) | 每失去5%生命,提高攻击速度 | 每档+3% | 是 | 可启用 |
| 113 | 祝福的开始 | BattleStartHeal(开战全回) | 战斗开始时概率恢复全部生命 | 10%概率 | 否 | 可启用 |
| 114 | 快速回避 | LuckyHit(幸运减伤) | 被攻击时概率只受到1点伤害 | 4%概率 | 否 | 可启用 |
| 115 | 幸运骰子 | DiceSumDMGUp(骰和增伤) | 骰子总和为7时提高攻击力 | 30/40/50% | 是 | 可启用 |
| 116 | 守护骰子 | DiceSumShield(骰和护盾) | 骰子总和≥6时获得防护罩 | 门槛6 | 否 | 可启用 |
| 117 | 吸收灵魂 | KillHPUp(击杀加生命) | 每击杀1名敌人永久增加本局生命值 | +5 | 是 | 可启用 |
| 118 | 腐蚀一击 | ReduceEnemyDEF(削减防御) | 攻击命中后降低敌人防御 | 10/20/30% | 是 | 可启用 |
| 121 | 多多益善 | EnemyCountStatUp(敌人数属性提升) | 战斗开始时按敌人数量提高属性 | 每名敌人8%,stat=ALL(全部属性) | 是 | 可启用 |
| 122 | 奇数骰子 | OddDiceCritUp(全奇数暴击提升) | 两枚骰子均为奇数时提高暴击率 | +20% | 是 | 可启用 |
| 124 | 掠夺者 | KillInTimeGetGear(限时击杀掉装) | 2.5秒内击杀敌人时获得装备 | 2.5秒 | 否 | 可启用 |
| 125 | 顽强生命 | HealAfterSecond(延时恢复) | 开战5秒后恢复已损生命的一部分 | 20% | 是 | 可启用 |
| 126 | 呼唤闪电 | LightingEverySec(周期闪电) | 每1秒以一定概率召唤闪电 | 10%概率/1秒 | 是 | 可启用 |
| 132 | 质重于量 | KillForHeroGear(击杀换英雄装备) | 每击杀10个敌人获得Epic(英雄/蓝色)装备 | 10击杀 | 否 | 可启用 |
| 147 | 调整数量 | KillAllEmeny(减少敌人数) | 所有敌人格各移除1名敌人 | 一次性 | 否 | 可启用 |
| 148 | 支援金 | PointSupply(回合点数奖励) | 当前回合结束时获得20点数 | +20 | 否 | 可启用 |
| 149 | 补充骰子 | DicePotionGet(骰和补药) | 骰子总和>11时补充1瓶药水 | 门槛>11 | 否 | 可启用 |
| 150 | 掠夺药水 | KillPotionGet(击杀补药) | 每击杀10名敌人获得1瓶药水 | 10击杀 | 是 | 可启用 |
| 151 | 领袖气质 | ShopFreeReroll(商店免费刷新) | 每次进入商店增加1次免费刷新 | +1 | 是 | 可启用 |
| 152 | 都市计划 | EmptyTripleBuild(空地额外建设) | 每次营造司事件额外增加2次建设尝试 | +2建设次数 | 否 | **建筑模块已启用,可启用** |
| 153 | 刺激 | EvaHeal(闪避恢复) | 成功闪避时恢复最大生命 | 1/2/3% | 是 | 可启用 |
| 154 | 战后休息 | BattleEndHeal(战后恢复) | 战斗结束后恢复最大生命 | 10% | 是 | 可启用 |
| 156 | 残火 | BurnEnemyDead(燃烧死亡爆炸) | 带Burn(烧伤)的敌人死亡时对全体造成攻击力150%的伤害 | 150%攻击力;前置:点燃 | 是 | 依赖烧伤系统 |
| 157 | 点燃 | FirstEnemyAllBurn(开战点燃) | 战斗开始时概率使所有敌人烧伤+1 | 10%概率 | 否 | 依赖烧伤系统 |
### 5.4 叠加、升级与依赖
祝福数据中需要区分以下字段:
- `prob_weight`:概率权重,用于候选抽取的相对权重。
- `stackable`:是否可重复获得。
- `values`:明确配置的多级数值数组。
- `after_plus_value`:后续强化增量字段。
- `time_value`:时间类参数,例如2.5秒、3秒、5秒。
- `max_count`:配置中的最大计数或上限字段。
- `stat_value`:目标属性类型。
- `requires`:前置祝福或依赖。
其中“残火”明确依赖“点燃”。实现时若前置不满足,不得把依赖祝福加入合法候选池。
本项目实机已经确认`DoubleHeal`在掷出Double时恢复生命,因此该消费者按实机确认覆盖此前仅凭静态调用链无法闭合的未知状态。MVP默认仅Natural Double触发;Forced Double是否触发由独立配置控制,默认关闭。
### 5.5 装备相关祝福的规则边界
装备相关祝福必须区分三类效果:
1. **增加装备出现机会**,例如“掠夺者”。
2. **直接指定奖励品质或等级方向**,例如“质重于量”。
3. **修改已经进入装备生成流程后的品质权重或后处理**。
这三类效果不能合并成一个统一的“装备掉率”。
### 5.6 MVP首版启用策略
31条原作启用祝福全部作为数据资产保留,但MVP首版允许按已实现系统做功能过滤:
1. 复活系统未实现时,关闭“奇迹骰子”。
2. 建筑模块启用后,“都市计划”进入候选池;它是唯一祝福,每次营造司事件只增加2次建设尝试。
3. 烧伤状态未实现时,同时关闭“点燃”和“残火”。
4. 其余祝福只有在对应战斗、骰子、商店、装备、建筑或药水接口已经存在时才进入候选池。
这属于MVP实现范围控制,不改变“原作当前启用31条”的事实。
## 6. 奖励
### 6.1 奖励来源
局内奖励至少存在以下不同触发阶段:
1. 单个敌人死亡。
2. 精英或特殊敌人死亡。
3. 特殊Tile额外奖励。
4. Floor完成。
5. Floor终点移动节点。
6. 游戏结束。
7. BOSS中途额外装备。
8. 最终BOSS死亡。
不同来源可以同时发生,不能默认互相覆盖。
### 6.2 原作已确认的非装备奖励节点
原作配置中存在以下奖励节点。由于部分资源属于HEROLL原本的长期经济,不直接全部搬入《一骰登天》局内经济。
| 时机 | 原作奖励配置 | 说明 |
| --- | --- | --- |
| killStrong | 钻石数量0、概率0 | 当前等同关闭 |
| loopClear | 钻石1、配置概率80 | 原作配置事实,是否直接用于MVP需另行包装 |
| loopEndTileMove | 金币基数10、概率100,并乘Stage倍率 | 数量小数取整方式仍未知 |
| loopClear | 金币基数330、概率100,并乘Stage倍率 | 数量小数取整方式仍未知 |
| loopClear | 四槽卷轴,各1,配置概率数组20 | 具体判定顺序未闭合 |
| loopClear | 四槽强化材料,各1,配置概率数组20 | 具体判定顺序未闭合 |
| gameEnd | 鱼饼1、概率100 | 属于原作资源,不直接等于《一骰登天》灵石 |
原作金币Stage倍率:
| 目标关卡索引 | Stage倍率 |
| --- | ---: |
| -1至16 | 0.30 |
| 17至21 | 0.29 |
| 22至25 | 0.28 |
| 26至30 | 0.27 |
| 31至33 | 0.26 |
| 34至37 | 0.25 |
| 38至44 | 0.24 |
| 45至99 | 0.23 |
这些配置用于证据记录。MVP不应因为原作存在钻石、卷轴、鱼饼就把它们直接加入当前局内经济。
### 6.3 《一骰登天》Floor完成奖励
MVP继续使用本项目局内灵石经济:
Floor完成奖励 = 10 + 5 × Floor 灵石。
该公式属于DEMO冻结。
Floor完成灵石奖励、商店购买Tile安装、自然Good尝试、Enemy尝试、灵泉恢复和BOSS转换属于不同结算来源,统一按1.5节Start唯一时序执行。不得继续使用“灵泉固定生成2个Good”或“Floor固定转化10个Enemy”的旧版规则。
### 6.4 特殊事件装备奖励
宝箱、炼器炉、仙缘宝匣、转盘等特殊事件可以调用固定品质、限定类型或随机装备生成。
这些来源不一定使用“40件等权、六品质基础权重、普通等级候选”的全部默认条件。
因此每个事件必须明确其奖励类型:
1. Random Gear(随机装备)。
2. Fixed Gear(固定装备)。
3. Type Gear(指定部位装备)。
4. Exclude Normal(排除凡品)。
5. Quality Bias(品质偏置)。
6. Level Bias(等级偏置)。
使用英文参数名时,配置表中必须同时提供中文注释。
## 7. 局内结束
### 7.1 失败
玩家生命值归零后,本局立即失败。
失败时停止棋盘移动、战斗和新的奖励触发。
MVP失败结算至少显示:
1. 当前Stage。
2. Default模式显示到达Floor;DiceGauge模式显示本局达到的行动进度,并可附带内部最高Floor统计。
3. 击败怪物数量。
4. 获得的主要装备。
5. 获得的天道赐福。
MVP首版不实现复活。
### 7.2 最终BOSS Floor
进入最终BOSS Floor有两条主路径:
1. **Default**:完成当前Stage配置的最终Floor。
2. **DiceGauge**:玩家可见行动进度达到50/50。
触发后:
1. 当前棋盘44个位置全部替换为BOSS Tile。
2. 清空全部小地块外侧房屋;Good、Enemy、AUGMENT、Start与Corner的普通保护和刷新逻辑停止。
3. 转换前的商店界面、祝福选择、装备处理与事件奖励必须依照1.5节Start事务完成;存在阻塞式交互时不得越过该步骤转换。
4. 转换时保留本次骰子的剩余移动步数。若剩余步数大于0,则在新BOSS棋盘继续移动,归零后的最终落点触发BOSS战。
5. 若转换时剩余步数为0,当前站位不视为一次新的BOSS Tile最终落点;玩家必须再Roll一次并完成移动后进入BOSS战。
6. 最终BOSS战沿用基础自动实时冷却模型与2.6节逆向计算公式,但允许使用独立BOSS属性、技能和奖励配置。
### 7.3 通关
玩家击败最终BOSS后,本局胜利。
胜利后停止新的棋盘刷新与BOSS压力结算,进入通关统计。
通关结算至少显示:
1. 当前Stage与进度模式。
2. Default模式显示完成Floor数;DiceGauge模式显示完成50次行动,并可附带内部Floor统计。
3. 击败怪物数量。
4. 主要装备。
5. 主要天道赐福。
## 8. 局内UI与状态显示
### 8.1 棋盘界面
| 区域 | Default模式 | DiceGauge模式 | 《一骰登天》包装 |
| --- | --- | --- | --- |
| 画面右侧主进度 | 当前Floor / 总Floor | 行动次数0/50,每玩家行动+1 | 天梯进度 / 行动进度 |
| BOSS压力相关区域 | 无DiceGauge实时压力主进度 | 不显示`runtimeBossGauge` 0至100为右侧主进度;压力预警按实机可验证表现处理 | 天劫预警 |
| 中央 | 棋盘、玩家位置和地块 | 棋盘、玩家位置和地块 | 登天梯 |
| 地块外侧 | 已建房屋、空闲建筑槽在事件预览时高亮 | 已建房屋不遮挡底层地块;营造司结算显示两骰、总建设次数、实际建成数与灵石奖励 | 洞府/营造标记 |
| 上方骰子区 | 两枚骰子、点数和、机缘状态 | 两枚骰子、点数和、机缘状态 | 天命骰、机缘 |
| 下方资源区 | 生命、灵石、丹药 | 生命、灵石、丹药 | 气血、灵石、丹药 |
| 下方装备区 | 武器、戒指、手套、鞋子 | 武器、戒指、手套、鞋子 | 法宝装备栏 |
DiceGauge模式中,**玩家可见0/50行动进度、隐藏`runtimeBossGauge`和`BossDiceCounter`必须作为三个独立UI/逻辑状态处理。** 未经实机确认,不得把内部0至100 Gauge直接显示给玩家。
### 8.2 战斗界面
玩家站在画面左侧朝右,敌人站在右侧朝左。
顶部显示玩家和敌人或BOSS生命。
中央播放战斗动画。
底部显示四装备栏和丹药快捷键。
实时装备掉落显示在战斗区域和装备栏之间。
玩家点击或拖拽装备后,战斗明确进入暂停状态。
### 8.3 装备信息显示
装备卡至少显示:
1. 装备名称。
2. 部位。
3. 品质。
4. 装备等级。
5. 固定主属性。
6. 随机副词条。
7. 副词条星级表现,如启用。
8. 与当前已装备物的属性差值。
9. 放弃可获得的灵石。
星级UI只用于显示`plusLevel`强化级,不得额外创造一套数值Tier。
### 8.4 关键反馈
MVP必须提供:
1. 掷骰结果和总移动步数。
2. 机缘触发和随机属性奖励。
3. 机缘先攻状态。
4. 当前剩余移动步数。
5. 最终落点高亮。
6. 经过Start后的内部Floor推进与棋盘刷新反馈。
7. Default模式当前Floor/总Floor。
8. DiceGauge模式右侧行动进度0/50及每行动+1反馈。
9. 灵泉恢复30%。
10. 坊市出现。
11. Good Tile新增、Enemy Tile新增或失败安装时必要的调试日志。
12. DiceGauge内部BOSS压力触发时的可理解预警,但不得把隐藏`runtimeBossGauge`误作0/50主进度。
13. BOSS压力造成的4个地块变化。
14. 天道赐福获得。
15. 装备死亡即时掉落。
16. 装备等级和品质。
17. 装备副词条强化星级。
18. 装备对比、替换和出售。
19. 丹药使用。
20. BOSS中途额外装备。
21. 营造司两骰、都市计划+2、候选外侧槽、实际建成数与灵石奖励。
22. 最终BOSS Floor清除全部房屋并全盘覆盖、战斗胜利、失败和最终通关。
## 9. 概念包装
### 9.1 主线题材
主线题材名:**《一骰登天》**
### 9.2 元素对应表
| 原版元素 | 《一骰登天》包装 | 说明 |
| --- | --- | --- |
| Dice | 天命骰 | 两枚骰子决定移动步数 |
| Board | 登天梯 | 44位置循环棋盘,在同一Stage内持续变异 |
| Default Floor Progress | 天梯层数 | 玩家可见当前Floor/总Floor |
| DiceGauge Stage Progress | 行动进度 | 玩家可见0/50,每完成一次玩家行动+1,50/50进入BOSS Floor |
| `runtimeBossGauge` | 内部机制,不做固定玩家包装 | DiceGauge模式隐藏BOSS压力蓄积,不等于0/50主进度 |
| Boss Pressure Tile | 天劫 | DiceGauge内部压力周期触发的棋盘改造 |
| Auto Battle | 斗法 | 自动实时冷却;玩家与每个敌人独立计时,攻速高者可以更频繁攻击;玩家处理丹药与实时装备 |
| Double | 机缘 | 自然双骰同点触发属性奖励和下一次战斗先攻 |
| Campfire | 灵泉打坐 | 经过Start/Floor推进时恢复最大生命30% |
| Shop | 坊市散修摊 | 使用灵石购买局内商品,每3个内部Floor出现 |
| Claw Machine | 仙缘宝匣 | 抓取局内奖励 |
| Potion | 丹药 | 战斗中主动使用的恢复消耗品 |
| AUGMENT | 天道赐福 | 固定主线构筑节点 |
| Exterior House | 洞府 | 附着在普通小地块外侧的独立建筑状态,不替换移动地块 |
| Ingame Currency | 灵石 | 当前Run内部消费资源 |
| Gear Level | 装备等级 | 基础为当前内部Floor至Floor+2 |
| plusLevel | 词条强化级 | 单条副词条额外有效等级,可包装为星级 |
## 10. MVP首版实现范围
首版必须实现:
1. 4个大型位置和40个小型地块位置的循环棋盘。
2. 双骰求和移动与跨Start保留剩余移动步数。
3. Natural Double识别、机缘随机属性和下一次战斗先攻。
4. 同一张棋盘在Stage内持续变异,不按Floor整盘重建。
5. 新Run区分初始化流程:`SpawnInitialTiles`、`SpawnAllCornerTiles`、`AddRandomGoodTiles(8)`。
6. 普通经过Start后内部`loopIndex+1`。
7. Good Tile刷新使用`AddRandomGoodTiles(loopIndex+2)`尝试次数,不把尝试数当作固定成功数。
8. Enemy Tile刷新使用`enemyTilesPerLoop`配置参数,原值未恢复前不得写死10。
9. Good Tile合法牌组的洗牌、无放回抽取、耗尽重洗。
10. Good/Tile生成前执行`isEnabled`、`minStage`、`minLoop`、`ETileTypeV2`、`maxCornerPerGame`等资格过滤。
11. Corner只在新Run全量初始化;普通Floor推进不重新抽全部Corner。
12. 普通小型事件或战斗地块结算后转化为普通空地块。
13. Corner事件结算后刷新新的合法Corner。
14. AUGMENT固定保护位。
15. Default关卡支持10/13/15 Floor配置,并在最终Floor完成后进入BOSS Floor。
16. DiceGauge关卡右侧主进度显示0/50行动次数,每完成一次玩家行动+1,50/50进入BOSS Floor。
17. DiceGauge模式仍维护内部`loopIndex/Floor`供刷新、商店、装备等级等系统使用。
18. DiceGauge内部维护独立`runtimeBossGauge`与`BossDiceCounter`,不得与0/50行动进度合并。
19. DiceGauge隐藏Gauge采用MVP循环:进场50、每玩家行动+25、满100后进入4次掷骰倒计时,随后改造4个互不重复的非AUGMENT地块并清零;候选不足4格时延后且不降级。
20. 旧版X回合BOSS计数与行动后空闲2回合模型不再实现。
21. BOSS Floor将44个棋盘位置全部替换为BOSS Tile。
22. 自动实时冷却战斗;玩家与每个敌人独立维护攻击计时,冷却完成者立即行动。
23. 玩家战斗中可使用续命丹、查看掉落、暂停并替换装备。
24. 单敌人死亡掉落、战斗结束奖励、特殊Tile追加奖励分层。
25. BOSS中途额外装备,MVP验证阈值50%,并明确该阈值不是原作确认。
26. 武器、戒指、手套、鞋子四装备位。
27. 40件局内装备本体及完整名称目录。
28. 六档装备品质基础权重210、60、28、4、1、4。
29. 装备等级Floor、Floor+1、Floor+2的90、5、1相对权重。
30. 四部位固定主属性。
31. 9项共享随机副词条池。
32. 0、1、2、3、3、3副词条数量规则。
33. `plusLevel`强化预算、星级表现与副词条线性数值公式。
34. 四个装备槽与最多10件战斗掉落展示;第11件起以先进先出替换最旧未处理掉落并提供明确反馈。
35. 加载31条原作启用祝福目录,并按MVP功能、前置依赖与唯一/叠加条件过滤候选池。
36. AUGMENT基础展示为3选1。
37. 建筑外侧状态层:每个普通小地块1个房屋槽,独立于底层地块变异并持续到最终BOSS Floor。
38. 营造司`129`两枚D6建设、都市计划`152`额外+2建设次数、每栋1灵石DEMO奖励及无空位分支。
39. 单一续命丹。
40. 原作固定丹药升级链:持有量、恢复量、补充丹药。
41. 每3个内部Floor出现坊市。
42. 坊市使用3个固定升级槽加3个随机商品槽。
43. 付费刷新价格3、5、7、9……;免费刷新不推进付费价格。
44. 普通商品重复购买不自动涨价。
45. 96条原作商店商品目录作为数据资产加载,MVP按功能范围控制实际候选池。
46. 黑市使用独立百分比加价公式,具体加价百分比保留配置位。
47. 最终BOSS战、失败与通关结算。
48. 局内基础UI和关键反馈。
MVP首版默认关闭:
1. 复活祝福“奇迹骰子”。
2. 若尚未实现烧伤状态,则关闭“点燃”和“残火”。
3. 原作9种药水中除恢复型续命丹外的功能药水。
Stage 0敌人数值表已从本次专项逆向获得,但**不在v0.2.8中替换当前战斗数值模板**,后续交由数值模块专项整合。
## 11. 当前未知与禁止误写项
以下内容在获得新证据前不得写成“HEROLL原作确认”:
1. 所有普通敌人的统一装备掉率。
2. 每只普通敌人是否必定生成装备。
3. Floor是否直接提高六档品质。
4. 品质使用1.25、1.55、1.95、2.45、3.10等全局主属性倍率。
5. 普通随机副词条包含最大生命、攻击、防御、命中、暴击伤害、丹药效果、精英伤害、BOSS伤害。
6. 存在独立于`plusLevel`之外的隐藏词条Tier。
7. BOSS固定在50%HP触发原作中途装备。
8. 所有BOSS使用相同HP阈值。
9. 底层装备掉落缓存无限。
10. 满槽后会静默删除最旧未处理装备。
11. Floor完成奖励中的原作小数取整方式。
12. 主属性最终显示值公式已经100%闭环。
13. 黑市固定使用50%或1.5倍加价。
14. 普通商品重复购买后自动涨价。
15. 普通坊市只有4个商品槽。
16. 普通坊市刷新价格为10、20、30、40、50。
17. 原作主线祝福58行全部启用。
18. 原作所有31条启用祝福都必须在MVP首版同时开启。
19. `max_count`字段可未经消费者验证直接解释成所有祝福的最大叠加层数。
20. 随机商店槽完整抽取权重与排除规则已经100%闭环。
21. 普通换Floor会整盘重建棋盘。
22. 普通换Floor固定成功生成2个Good Tile。
23. 普通换Floor固定生成10个Enemy/Bad Event。
24. `loopIndex+2`等于最终成功安装的Good Tile数量。
25. 每个Floor都会重新随机全部3个Corner。
26. `enemyTilesPerLoop`的原作精确值已经恢复。
27. DiceGauge配置值50只代表玩家可见“50次行动目标”,或只代表内部Gauge单次+50。当前已经确认两个语义层必须分离处理,不能用一个变量解释全部行为。
28. 玩家右侧0/50行动进度就是`runtimeBossGauge` 0至100。
29. `BossDiceCounter`与`runtimeBossGauge`是同一个变量。
30. DiceGauge内部Gauge必须在玩家UI显示。
31. DiceGauge压力候选不足4格时的精确降级规则已经恢复。
32. DiceGauge压力除AUGMENT外不存在其他模式专属保护位。
33. DiceGauge压力结束后被覆盖地块一定原样恢复。
34. Default模式继续使用v0.2.2的X回合+2空闲回合BOSS行动模型。
35. Stage 0敌人数值表已经正式替换当前MVP战斗平衡。
36. Housing Support每栋房屋对应1灵石是HEROLL原作精确值;该换算仅为MVP的DEMO冻结值。
37. 房屋会自然产生被动收入、战斗增益或修改底层地块效果;MVP当前没有这些持续收益。
## 12. 验证结论与置信度
| 结论 | 状态或置信度 |
| --- | --- |
| 52个启用主线Stage中33个Default、19个DiceGauge | 高,≥80% |
| Default关卡存在10/13/15 Floor结构 | 高,≥80% |
| Stage 0为Default 10 Floor并在完成后进入`boss_0` | 高,≥80% |
| 一张棋盘在Stage内持续变异而非每Floor整盘重建 | 高,≥80% |
| 新Run调用`SpawnAllCornerTiles` | 高,≥80% |
| 新Run发起`AddRandomGoodTiles(8)` | 高,≥80% |
| 普通换Floor调用`AddRandomGoodTiles(loopIndex+2)` | 高,≥80% |
| `loopIndex+2`为尝试数,不保证相同成功数 | 高,≥80% |
| Good牌组洗牌、无放回、耗尽重洗 | 高,≥80% |
| Enemy刷新使用`enemyTilesPerLoop`参数 | 高,≥80% |
| `enemyTilesPerLoop`原始精确值 | 低,<50%,当前未恢复 |
| 普通换Floor不全量重抽Corner | 高,≥80% |
| 普通小地块结算后变普通空地块 | MVP设计冻结,高 |
| Corner结算后刷新合法Corner | MVP设计冻结,高;本次专项逆向未证伪 |
| DiceGauge右侧主进度为0/50行动次数,每玩家行动+1 | 实机确认,高 |
| DiceGauge达到50/50进入BOSS Floor并全盘替换BOSS Tile | 实机确认,高 |
| DiceGauge仍保留内部`loopIndex/Floor`供刷新等系统使用 | 高,≥80%,逆向结构与实机表现可并存 |
| DiceGauge存在独立`runtimeBossGauge` 0至100内部压力变量 | 高,≥80% |
| 内部Gauge正常路径每次合格落地+50 | 高,≥80%,原生算术确认 |
| MVP压力循环为进场50、每行动+25、满100后倒计时4回合 | MVP主动偏离,高 |
| 压力候选不足4格时不降级并延后转换 | MVP设计冻结,高 |
| `BossDiceCounter`与`runtimeBossGauge`是两个字段 | 高,≥80% |
| Gauge满后4次掷骰倒计时并改造4个唯一非AUGMENT地块 | 高,≥80%,运行观察支持 |
| 4格不足时降级、其他保护位、压力结束恢复方式 | 低,<50% |
| v0.2.2 X回合+2空闲回合模型停止作为当前执行规则 | MVP设计决策,高 |
| 战斗为自动实时冷却、各单位独立计时、不强制轮流 | 高,≥80%,原生冷却协程确认 |
| AUGMENT固定且普通流程受保护 | 高,≥80% |
| 原作祝福配置58行,其中启用31条 | 高,≥80% |
| 装备池40件,四部位各10件 | 高,≥80% |
| 六品质基础权重210、60、28、4、1、4 | 高,≥80% |
| 装备等级为Floor加0、1、2,权重90、5、1 | 高,≥80% |
| 四部位共享9项副词条且单件不重复 | 高,≥80% |
| `plusLevel`强化预算与副词条数值线性公式 | 高,≥80% |
| 原作局内商店96条商品 | 高,≥80% |
| 商店3个固定槽加3个随机槽 | 高,≥80% |
| 付费刷新价格3、5、7、9…… | 高,≥80% |
| Stage 0敌人数值表存在但暂不并入v0.2.8 | 已获得数据,待数值专项决策 |
## 13. 开发权威表与覆盖优先级
本版以下文件构成可机读执行契约:
1. `analysis/mvp-rules-closure/01-start-settlement-timeline.csv`:Start唯一结算时序与最终BOSS分支。
2. `analysis/mvp-rules-closure/02-tile-corner-blessing-whitelist.csv`:33个首版Tile、5个Corner、6个Good Event及28条运行时Blessing白名单。
3. `analysis/mvp-rules-closure/03-shop-product-whitelist.csv`:96条Shop目录逐项记录;仅`mvp_enabled=true`的商品进入首版运行时池。
4. `analysis/mvp-rules-closure/04-unknown-parameter-mvp-defaults.csv`:原作未知参数的唯一MVP执行值。
5. `analysis/mvp-rules-closure/05-original-vs-mvp-vs-demo.csv`:原作、实机、MVP主动偏离和DEMO默认值的对照。
6. `analysis/mvp-rules-closure/06-building-rules.csv`:建筑外侧槽、营造司掷骰、都市计划、奖励、持续状态与终局清理的执行契约。
7. `analysis/mvp-rules-closure/2026-09-01_HEROLL-v0.2.8规则闭合报告.md`:以上表格的证据边界、来源与验收说明。
读取优先级为:
```text
本GDD v0.2.8正文中的明确产品决策
→ 01至06可机读执行表
→ 2026-09-01规则闭合报告
→ 已闭合专项逆向报告
→ 更早版本GDD
```
若闭合报告中的旧默认与本版正文冲突,以v0.2.8正文及已经同步更新的CSV为准。当前关键MVP默认值如下:
| 配置键 | v0.2.8执行值 | 证据状态 |
| --- | --- | --- |
| `enemyTilesPerLoop` | 每普通loop 3次尝试 | DEMO冻结 |
| `shopSurchargePercent` | 50%,普通商店/黑市共用配置入口;黑市按附加价公式消费 | DEMO冻结 |
| `runtimeBossGaugeOnEnter` | 50 | MVP主动偏离 |
| `runtimeBossGaugePerAction` | +25 | MVP主动偏离 |
| `BossDiceCounter` | Gauge满100后4回合 | 运行观察 + MVP冻结 |
| `bossPressureTargetCount` | 必须正好4格,不足时延后且不降级 | MVP冻结 |
| `combatDropDisplayCapacity` | 10件,第11件起FIFO替换最旧件 | MVP冻结 |
| `randomShopSlots` | 3个、等权、无放回、同屏不重复 | MVP冻结 |
| `augmentCandidates` | 正好3个、等权、无放回 | MVP冻结 |
| `DoubleHealPerStack` | Natural Double恢复最大生命8%,加法叠加 | 实机确认 + MVP映射 |
| `housingRewardPerHouse` | 每成功建成1栋房屋获得1灵石 | DEMO冻结;原作换算未知 |
| `blackMarketSurchargePercent` | 50% | DEMO冻结 |
| `finalBossRemainingSteps` | 保留;为0时必须再Roll一次 | MVP冻结 |
| `battleCadence` | 玩家与每个存活敌人独立实时冷却;`interval=100/finalAttackSpeed` | 原作确认,当前执行规则 |
## 附录A. blessings-catalog.csv(祝福完整目录)
以下内容保留结构化原始字段,便于程序、配置表和后续逆向结果逐行比对。
```csv
source_id,string_id,name_zh_cn,name_en,effect_zh_cn_template,effect_en_template,prob_weight,stackable,linear_value,values,after_plus_value,time_value,max_count,stat_value,requires,icon,title_key,description_key,source_tag
100,AttackShield,守护一击,Guardian Strike,每攻击敌人{n}次,获得防护罩,Gain a shield every {n} attacks,10.0,False,6,6,,-1,1,,,a_0,AttackShield_titleKey,AttackShield_desKey,源码确认
102,CritHeal,吸血,Blood Drain,额外恢復{n}%暴击伤害,Recover {n}% of CRIT DMG dealt,10.0,True,15,"15,20,25,30",1,-1,999,,,a_2,CritHeal_titleKey,CritHeal_desKey,源码确认
103,CritDamageUp,攻击弱点,Weakness Exploit,暴击攻击力+{n}%,CRIT DMG +{n}%,10.0,True,30,"30,35,40",2,-1,999,,,a_3,CritDamageUp_titleKey,CritDamageUp_desKey,源码确认
106,Revive,奇蹟骰子,Miracle Dice,濒临死亡危机, / 当骰子总和骰点大于{n},将復活,Revive if the sum of the dice is {n} or higher,10.0,False,4,4,,-1,100,,,a_6,Revive_titleKey,Revive_desKey,源码确认
108,FirstAttackDMGUp,起始一击,Opening Strike,首次攻击伤害+{n}%,First attack damage +{n}%,10.0,True,70,"70,80,90",1,-1,999,,,a_8,FirstAttackDMGUp_titleKey,FirstAttackDMGUp_desKey,源码确认
109,DMGUpAfterSecond,攻击力加速,ATK Booster,开始战斗3秒后,攻击力+{n}%,ATK +{n}% after 3 seconds in battle,10.0,True,30,30,2,3,999,,,a_9,DMGUpAfterSecond_titleKey,DMGUpAfterSecond_desKey,源码确认
110,ASPUpAfterSecond,攻击速度加速,ATK SPD Booster,开始战斗3秒后,攻击速度+{n}%,ATK SPD +{n}% after 3 seconds in battle,10.0,True,30,30,2,3,999,,,a_10,ASPUpAfterSecond_titleKey,ASPUpAfterSecond_desKey,源码确认
111,DoubleHeal,恢復骰子,Healing Dice,当骰子双倍时,恢復{n}%生命值,Restore {n}% HP when a Double is rolled,10.0,True,8,8,2,-1,999,,,a_11,DoubleHeal_titleKey,DoubleHeal_desKey,源码确认
112,LowHPASPUp,战斗狂,Warmonger,每失去5%生命值,攻击速度+{n}%,ATK SPD +{n}% for every 5% HP lost,10.0,True,3,3,1,-1,999,,,a_12,LowHPASPUp_titleKey,LowHPASPUp_desKey,源码确认
113,BattleStartHeal,祝福的开始,Guardian Spirit,战斗开始时,以{n}%机率恢復所有生命值,{n}% chance to fully restore health at the start of combat,10.0,False,10,10,1,-1,6,,,a_13,BattleStartHeal_titleKey,BattleStartHeal_desKey,源码确认
114,LuckyHit,快速迴避,Too Slow,被攻击时,以{n}%机率仅获得1伤害,{n}% chance to take only 1 damage when hit,10.0,False,4,4,1,-1,5,,,a_14,LuckyHit_titleKey,LuckyHit_desKey,源码确认
115,DiceSumDMGUp,幸运骰子,Lucky Dice,当骰子总和骰点为7,攻击力+{n}%,ATK +{n}% when the sum of the dice is 7,10.0,True,30,"30,40,50",1,-1,999,,,a_15,DiceSumDMGUp_titleKey,DiceSumDMGUp_desKey,源码确认
116,DiceSumShield,守护骰子,Protection Dice,当骰子总和骰点为6以上,获得防护罩,Gain a shield when the sum of the dice is 6 or higher,10.0,False,1,1,,-1,1,,,a_16,DiceSumShield_titleKey,DiceSumShield_desKey,源码确认
117,KillHPUp,吸收灵魂,Soul Absorption,每当击杀敌人时,生命值永久增加{n},Permanently increase health by {n} each time you kill an enemy,10.0,True,10,5,1,-1,1,,,a_17,KillHPUp_titleKey,KillHPUp_desKey,源码确认
118,ReduceEnemyDEF,腐蚀一击,Corrosive Strike,每当攻击命中时,使敌人防禦力降低{n}%,"On hit, reduces enemy DEF by {n}%",10.0,True,30,"10, 20, 30",1,-1,999,,,a_18,ReduceEnemyDEF_titleKey,ReduceEnemyDEF_desKey,源码确认
121,EnemyCountStatUp,多多益善,The More / The Better,战斗开始时,与敌人数量等比,使{stat}+{n}%,{stat} +{n}% based on the number of enemies in battle,10.0,True,8,8,1,-1,5,ALL,,a_20,EnemyCountStatUp_titleKey,EnemyCountStatUp_desKey,源码确认
122,OddDiceCritUp,奇数骰子,Dice of Odds,当所有骰子骰点为奇数时,暴击率+{n}%,CRIT RATE +{n}% when all dice are odd,10.0,True,20,20,2,-1,11,,,a_21,OddDiceCritUp_titleKey,OddDiceCritUp_desKey,源码确认
124,KillInTimeGetGear,掠夺者,Pillager,{sec}秒内击杀敌人时,获得装备,Obtain equipment if you kill an enemy within {sec} seconds,10.0,False,0,0,,2.5,999,,,a_23,KillInTimeGetGear_titleKey,KillInTimeGetGear_desKey,源码确认
125,HealAfterSecond,顽强生命,Persistent Life,开始战斗{sec}秒后,恢復{n}%失去的生命值,Recover {n}% of lost health {sec} seconds after combat begins,10.0,True,20,20,2,5,6,,,a_24,HealAfterSecond_titleKey,HealAfterSecond_desKey,源码确认
126,LightingEverySec,呼唤闪电,Thunder Call,每{sec}秒以{n}%机率召唤一次闪电,Summon lightning with {n}% chance every {sec} sec,10.0,True,10,10,1,1,21,,,a_25,LightingEverySec_titleKey,LightingEverySec_desKey,源码确认
132,KillForHeroGear,质重于量,Quality Over Quantity,每击杀{n}个敌人,获得英雄阶级装备,Obtain epic grade equipment for every {n} enemies killed,10.0,False,10,10,1,-1,999,,,a_29,KillForHeroGear_titleKey,KillForHeroGear_desKey,源码确认
147,KillAllEmeny,调整数量,Population Control,移除所有各1个敌人,Remove one enemy from all enemy tiles,10.0,False,,0,,-1,999,,,a_44,KillAllEmeny_titleKey,KillAllEmeny_desKey,源码确认
148,PointSupply,支援金,Subsidy,该回合结束时,获得{n}点数,Gain {n} points at the end of this turn,10.0,False,20,20,,-1,999,,,a_45,PointSupply_titleKey,PointSupply_desKey,源码确认
149,DicePotionGet,补充骰子,Dice of Recharge,当骰子总和骰点大于11,补充1个药水,"If the sum of the dice is 11 or higher, recharge 1 potion",10.0,False,,0,,-1,5,,,a_46,DicePotionGet_titleKey,DicePotionGet_desKey,源码确认
150,KillPotionGet,掠夺药水,Potion Plunder,每当击杀{n}个敌人时,获得1个药水,Gain 1 potion for every {n} enemies killed,10.0,True,10,10,1,-1,1,,,a_47,KillPotionGet_titleKey,KillPotionGet_desKey,源码确认
151,ShopFreeReroll,领袖气质,Charisma,每次进入商店时,增加{n}次免费更新,Gain {n} free reroll per shop visit,10.0,True,1,1,1,-1,10,,,a_48,ShopFreeReroll_titleKey,ShopFreeReroll_desKey,源码确认
152,EmptyTripleBuild,都市计画,Urban Planning,于空地建设时,额外建设{n}个建筑,Construct +{n} buildings when building on empty tile,10.0,False,2,2,,-1,999,,,a_49,EmptyTripleBuild_titleKey,EmptyTripleBuild_desKey,源码确认
153,EvaHeal,刺激,Thrill,迴避时,恢復生命值上限的{n}%,Recover {n}% of max HP when evading,10.0,True,3,"1,2,3",1,-1,10,,,a_50,EvaHeal_titleKey,EvaHeal_desKey,源码确认
154,BattleEndHeal,战后休息,Recuperation,战斗结束后,恢復生命值上限的{n}%,Recover {n}% of max HP after battle,10.0,True,10,10,1,-1,11,,,a_51,BattleEndHeal_titleKey,BattleEndHeal_desKey,源码确认
156,BurnEnemyDead,残火,Embers,若受到<link='keyword_burn'><style=keyword>烧伤</style></link>的敌人死亡,将引起爆炸,对所有敌人造成攻击力{n}%的伤害。,"When an enemy with <link='keyword_burn'><style=keyword>Burn</style></link> dies, it explodes, dealing {n}% ATK to all enemies",10.0,True,150,150,5,-1,15,,FirstEnemyAllBurn,a_53,BurnEnemyDead_titleKey,BurnEnemyDead_desKey,源码确认
157,FirstEnemyAllBurn,点燃,Ignite,战斗开始时,以{n}%机率使所有敌人<link='keyword_burn'><style=keyword>烧伤</style></link>+1,"At the start of battle, {n}% chance to inflict <link='keyword_burn'><style=keyword>Burn</style></link> +1 on all enemies",10.0,False,10,10,1,-1,10,,,a_54,FirstEnemyAllBurn_titleKey,FirstEnemyAllBurn_desKey,源码确认
```
## 附录B. equipment-catalog.csv(装备完整目录)
```csv
catalog_id,string_id,name_zh_cn,name_en,slot,slot_zh_cn,main_stat,rarity_pool,rarity_weights,affix_pool,level_rule,icon,title_key,source_tag
100,ingame_weapon_01,冒险者匕首,Adventurer Dagger,Ingame_Weapon,武器,ATTACK_POWER,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_weapon_icon_01,ingame_weapon_01_title,源码确认
101,ingame_weapon_02,誓约匕首,Dagger of Oath,Ingame_Weapon,武器,ATTACK_POWER,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_weapon_icon_02,ingame_weapon_02_title,源码确认
102,ingame_weapon_03,破碎匕首,Shattering Dagger,Ingame_Weapon,武器,ATTACK_POWER,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_weapon_icon_03,ingame_weapon_03_title,源码确认
103,ingame_weapon_04,樵夫匕首,Lumberjack Dagger,Ingame_Weapon,武器,ATTACK_POWER,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_weapon_icon_04,ingame_weapon_04_title,源码确认
104,ingame_weapon_05,亡者匕首,Dagger of the Dead,Ingame_Weapon,武器,ATTACK_POWER,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_weapon_icon_05,ingame_weapon_05_title,源码确认
105,ingame_weapon_06,神圣匕首,Holy Dagger,Ingame_Weapon,武器,ATTACK_POWER,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_weapon_icon_06,ingame_weapon_06_title,源码确认
106,ingame_weapon_07,霜光匕首,Frost Dagger,Ingame_Weapon,武器,ATTACK_POWER,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_weapon_icon_07,ingame_weapon_07_title,源码确认
107,ingame_weapon_08,光之匕首,Light Dagger,Ingame_Weapon,武器,ATTACK_POWER,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_weapon_icon_08,ingame_weapon_08_title,源码确认
108,ingame_weapon_09,祭坛匕首,Ritual Dagger,Ingame_Weapon,武器,ATTACK_POWER,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_weapon_icon_09,ingame_weapon_09_title,源码确认
109,ingame_weapon_10,烈火匕首,Dagger of Blazing Ember,Ingame_Weapon,武器,ATTACK_POWER,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_weapon_icon_10,ingame_weapon_10_title,源码确认
113,ingame_ring_01,冒险者戒指,Adventurer Ring,Ingame_Ring,戒指,HEALTH,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_ring_icon_01,ingame_ring_01_title,源码确认
114,ingame_ring_02,誓约戒指,Ring of Oath,Ingame_Ring,戒指,HEALTH,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_ring_icon_02,ingame_ring_02_title,源码确认
115,ingame_ring_03,星星戒指,Star Ring,Ingame_Ring,戒指,HEALTH,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_ring_icon_03,ingame_ring_03_title,源码确认
116,ingame_ring_04,樵夫戒指,Lumberjack Ring,Ingame_Ring,戒指,HEALTH,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_ring_icon_04,ingame_ring_04_title,源码确认
117,ingame_ring_05,亡者戒指,Ring of the Dead,Ingame_Ring,戒指,HEALTH,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_ring_icon_05,ingame_ring_05_title,源码确认
118,ingame_ring_06,龙之戒指,Dragon Ring,Ingame_Ring,戒指,HEALTH,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_ring_icon_06,ingame_ring_06_title,源码确认
119,ingame_ring_07,霜光戒指,Frost Ring,Ingame_Ring,戒指,HEALTH,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_ring_icon_07,ingame_ring_07_title,源码确认
120,ingame_ring_08,幸运戒指,Ring of Fortune,Ingame_Ring,戒指,HEALTH,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_ring_icon_08,ingame_ring_08_title,源码确认
121,ingame_ring_09,堕落戒指,Corrupted Ring,Ingame_Ring,戒指,HEALTH,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_ring_icon_09,ingame_ring_09_title,源码确认
122,ingame_ring_10,永存戒指,Ring of Eternity,Ingame_Ring,戒指,HEALTH,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_ring_icon_10,ingame_ring_10_title,源码确认
129,ingame_gauntlet_01,冒险者手套,Adventurer Gauntlet,Ingame_Gauntlet,护手,AIM,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_gauntlet_icon_01,ingame_gauntlet_01_title,源码确认
130,ingame_gauntlet_02,誓约手套,Gauntlet of Oath,Ingame_Gauntlet,护手,AIM,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_gauntlet_icon_02,ingame_gauntlet_02_title,源码确认
131,ingame_gauntlet_03,古代手套,Ancient Gauntlet,Ingame_Gauntlet,护手,AIM,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_gauntlet_icon_03,ingame_gauntlet_03_title,源码确认
132,ingame_gauntlet_04,樵夫手套,Lumberjack Gauntlet,Ingame_Gauntlet,护手,AIM,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_gauntlet_icon_04,ingame_gauntlet_04_title,源码确认
133,ingame_gauntlet_05,神圣手套,Holy Gauntlet,Ingame_Gauntlet,护手,AIM,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_gauntlet_icon_05,ingame_gauntlet_05_title,源码确认
134,ingame_gauntlet_06,龙之手套,Dragon Gauntlet,Ingame_Gauntlet,护手,AIM,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_gauntlet_icon_06,ingame_gauntlet_06_title,源码确认
135,ingame_gauntlet_07,霜光手套,Frost Gauntlet,Ingame_Gauntlet,护手,AIM,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_gauntlet_icon_07,ingame_gauntlet_07_title,源码确认
136,ingame_gauntlet_08,幸运手套,Gauntlet of Fortune,Ingame_Gauntlet,护手,AIM,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_gauntlet_icon_08,ingame_gauntlet_08_title,源码确认
137,ingame_gauntlet_09,侏儒手套,Dwarven Gauntlet,Ingame_Gauntlet,护手,AIM,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_gauntlet_icon_09,ingame_gauntlet_09_title,源码确认
138,ingame_gauntlet_10,永劫手套,Gauntlet of Eternity,Ingame_Gauntlet,护手,AIM,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_gauntlet_icon_10,ingame_gauntlet_10_title,源码确认
145,ingame_boots_01,冒险者靴子,Adventurer Boots,Ingame_Boots,鞋子,DEFENSE,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_boots_icon_01,ingame_boots_01_title,源码确认
146,ingame_boots_02,誓约靴子,Boots of Oath,Ingame_Boots,鞋子,DEFENSE,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_boots_icon_02,ingame_boots_02_title,源码确认
147,ingame_boots_03,古代靴子,Ancient Boots,Ingame_Boots,鞋子,DEFENSE,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_boots_icon_03,ingame_boots_03_title,源码确认
148,ingame_boots_04,樵夫靴子,Lumberjack Boots,Ingame_Boots,鞋子,DEFENSE,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_boots_icon_04,ingame_boots_04_title,源码确认
149,ingame_boots_05,神圣靴子,Holy Boots,Ingame_Boots,鞋子,DEFENSE,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_boots_icon_05,ingame_boots_05_title,源码确认
150,ingame_boots_06,猎龙者靴子,Dragon Hunter's Boots,Ingame_Boots,鞋子,DEFENSE,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_boots_icon_06,ingame_boots_06_title,源码确认
151,ingame_boots_07,霜光靴子,Frost Boots,Ingame_Boots,鞋子,DEFENSE,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_boots_icon_07,ingame_boots_07_title,源码确认
152,ingame_boots_08,幸运靴子,Boots of Fortune,Ingame_Boots,鞋子,DEFENSE,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_boots_icon_08,ingame_boots_08_title,源码确认
153,ingame_boots_09,堕落靴子,Corrupted Boots,Ingame_Boots,鞋子,DEFENSE,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_boots_icon_09,ingame_boots_09_title,源码确认
154,ingame_boots_10,永劫靴子,Boots of Eternity,Ingame_Boots,鞋子,DEFENSE,Normal|Rare|Epic|Legend|Myth|Arcane,210|60|28|4|1|4,EVASION|REGEN_PER_SECOND|TOTAL_DAMAGE|TRUE_DAMAGE|KILL_HEAL|COUNTER_ATTACK|ATTACK_SPEED|CRITICAL_RATE|LIFE_STEAL,"Floor+Weighted(0,1,2;90,5,1)",ingame_boots_icon_10,ingame_boots_10_title,源码确认
```
## 附录C. shop-catalog.csv(商店商品完整目录)
```csv
offer_id,string_id,item_type,item_id,name_zh_cn,effect_zh_cn_template,base_price_points,purchase_limit,fixed_key,fixed_sort,fixed_slot,is_sub_text,title_key,description_key,price_growth_rule,source_tag
100,TILE_137,TILE,137,铁匠铺,于铁匠铺测试你的运气。,6,1,,,-1,False,tile_title_GoodEventSmithy,tile_desc_GoodEventSmithy,无自动涨价,源码确认
101,TILE_138,TILE,138,恢復,获得随机数量的恢復药水。,9,1,,,-1,False,tile_title_GoodEventRecovery,tile_desc_GoodEventRecovery,无自动涨价,源码确认
102,TILE_139,TILE,139,来点节奏,享受节奏,证明自己的实力。,7,1,,,-1,False,tile_title_GoodEventLegendGear,tile_desc_GoodEventLegendGear,无自动涨价,源码确认
103,TILE_140,TILE,140,勇士遗骸,以往勇士的遗产正在沉睡当中。,4,1,,,-1,False,tile_title_GoodEventHeroBody,tile_desc_GoodEventHeroBody,无自动涨价,源码确认
104,TILE_141,TILE,141,宝箱,寻找装着多项装备的宝箱。,5,1,,,-1,False,tile_title_GoodEventChest,tile_desc_GoodEventChest,无自动涨价,源码确认
105,TILE_142,TILE,142,抽取,财富与名望正在等着你。,5,1,,,-1,False,tile_title_GoodEventLotto,tile_desc_GoodEventLotto,无自动涨价,源码确认
106,TILE_143,TILE,143,骰子对决,以前村里流行的传统游戏。,4,1,,,-1,False,tile_title_GoodEventBlackJack,tile_desc_GoodEventBlackJack,无自动涨价,源码确认
107,TILE_144,TILE,144,增幅星星,可强化持有装备。,7,1,,,-1,False,tile_title_GoodEventPowerStar,tile_desc_GoodEventPowerStar,无自动涨价,源码确认
108,TILE_151,TILE,151,夹娃娃机,使用夹子夹取想要的奖励。,7,1,,,-1,False,tile_title_GoodEventClawGrab,tile_desc_GoodEventClawGrab,无自动涨价,源码确认
109,TILE_152,TILE,152,黄金马车,有人偷走凤珠的宝物!,7,1,,,-1,False,tile_title_GoodEventGoldCarriage,tile_desc_GoodEventGoldCarriage,无自动涨价,源码确认
110,TILE_164,TILE,164,惊心骰子,请骰动命运骰子。,5,1,,,-1,False,tile_title_GoodEventDiceMachine,tile_desc_GoodEventDiceMachine,无自动涨价,源码确认
111,TILE_166,TILE,166,史莱姆神射手,发射史莱姆,获得奖励!,8,1,,,-1,False,tile_title_GoodEventBubbleShooter,tile_desc_GoodEventBubbleShooter,无自动涨价,源码确认
112,AUGMENT_100,AUGMENT,100,守护一击,每攻击敌人{n}次,获得防护罩,17,1,,,-1,False,AttackShield_titleKey,AttackShield_desKey,无自动涨价,源码确认
113,AUGMENT_102,AUGMENT,102,吸血,额外恢復{n}%暴击伤害,14,1,,,-1,False,CritHeal_titleKey,CritHeal_desKey,无自动涨价,源码确认
114,AUGMENT_103,AUGMENT,103,攻击弱点,暴击攻击力+{n}%,10,1,,,-1,False,CritDamageUp_titleKey,CritDamageUp_desKey,无自动涨价,源码确认
115,AUGMENT_106,AUGMENT,106,奇蹟骰子,濒临死亡危机, / 当骰子总和骰点大于{n},将復活,27,1,,,-1,False,Revive_titleKey,Revive_desKey,无自动涨价,源码确认
116,AUGMENT_108,AUGMENT,108,起始一击,首次攻击伤害+{n}%,12,1,,,-1,False,FirstAttackDMGUp_titleKey,FirstAttackDMGUp_desKey,无自动涨价,源码确认
117,AUGMENT_109,AUGMENT,109,攻击力加速,开始战斗3秒后,攻击力+{n}%,15,1,,,-1,False,DMGUpAfterSecond_titleKey,DMGUpAfterSecond_desKey,无自动涨价,源码确认
118,AUGMENT_110,AUGMENT,110,攻击速度加速,开始战斗3秒后,攻击速度+{n}%,15,1,,,-1,False,ASPUpAfterSecond_titleKey,ASPUpAfterSecond_desKey,无自动涨价,源码确认
119,AUGMENT_111,AUGMENT,111,恢復骰子,当骰子双倍时,恢復{n}%生命值,23,1,,,-1,False,DoubleHeal_titleKey,DoubleHeal_desKey,无自动涨价,源码确认
120,AUGMENT_112,AUGMENT,112,战斗狂,每失去5%生命值,攻击速度+{n}%,16,1,,,-1,False,LowHPASPUp_titleKey,LowHPASPUp_desKey,无自动涨价,源码确认
121,AUGMENT_113,AUGMENT,113,祝福的开始,战斗开始时,以{n}%机率恢復所有生命值,14,1,,,-1,False,BattleStartHeal_titleKey,BattleStartHeal_desKey,无自动涨价,源码确认
122,AUGMENT_114,AUGMENT,114,快速迴避,被攻击时,以{n}%机率仅获得1伤害,15,1,,,-1,False,LuckyHit_titleKey,LuckyHit_desKey,无自动涨价,源码确认
123,AUGMENT_115,AUGMENT,115,幸运骰子,当骰子总和骰点为7,攻击力+{n}%,14,1,,,-1,False,DiceSumDMGUp_titleKey,DiceSumDMGUp_desKey,无自动涨价,源码确认
124,AUGMENT_116,AUGMENT,116,守护骰子,当骰子总和骰点为6以上,获得防护罩,20,1,,,-1,False,DiceSumShield_titleKey,DiceSumShield_desKey,无自动涨价,源码确认
125,AUGMENT_117,AUGMENT,117,吸收灵魂,每当击杀敌人时,生命值永久增加{n},17,1,,,-1,False,KillHPUp_titleKey,KillHPUp_desKey,无自动涨价,源码确认
126,AUGMENT_118,AUGMENT,118,腐蚀一击,每当攻击命中时,使敌人防禦力降低{n}%,16,1,,,-1,False,ReduceEnemyDEF_titleKey,ReduceEnemyDEF_desKey,无自动涨价,源码确认
127,AUGMENT_121,AUGMENT,121,多多益善,战斗开始时,与敌人数量等比,使{stat}+{n}%,10,1,,,-1,False,EnemyCountStatUp_titleKey,EnemyCountStatUp_desKey,无自动涨价,源码确认
128,AUGMENT_122,AUGMENT,122,奇数骰子,当所有骰子骰点为奇数时,暴击率+{n}%,13,1,,,-1,False,OddDiceCritUp_titleKey,OddDiceCritUp_desKey,无自动涨价,源码确认
129,AUGMENT_124,AUGMENT,124,掠夺者,{sec}秒内击杀敌人时,获得装备,19,1,,,-1,False,KillInTimeGetGear_titleKey,KillInTimeGetGear_desKey,无自动涨价,源码确认
130,AUGMENT_125,AUGMENT,125,顽强生命,开始战斗{sec}秒后,恢復{n}%失去的生命值,18,1,,,-1,False,HealAfterSecond_titleKey,HealAfterSecond_desKey,无自动涨价,源码确认
131,AUGMENT_126,AUGMENT,126,呼唤闪电,每{sec}秒以{n}%机率召唤一次闪电,16,1,,,-1,False,LightingEverySec_titleKey,LightingEverySec_desKey,无自动涨价,源码确认
132,AUGMENT_132,AUGMENT,132,质重于量,每击杀{n}个敌人,获得英雄阶级装备,17,1,,,-1,False,KillForHeroGear_titleKey,KillForHeroGear_desKey,无自动涨价,源码确认
133,AUGMENT_147,AUGMENT,147,调整数量,移除所有各1个敌人,15,1,,,-1,False,KillAllEmeny_titleKey,KillAllEmeny_desKey,无自动涨价,源码确认
134,AUGMENT_148,AUGMENT,148,支援金,该回合结束时,获得{n}点数,10,1,,,-1,False,PointSupply_titleKey,PointSupply_desKey,无自动涨价,源码确认
135,AUGMENT_149,AUGMENT,149,补充骰子,当骰子总和骰点大于11,补充1个药水,17,1,,,-1,False,DicePotionGet_titleKey,DicePotionGet_desKey,无自动涨价,源码确认
136,AUGMENT_150,AUGMENT,150,掠夺药水,每当击杀{n}个敌人时,获得1个药水,19,1,,,-1,False,KillPotionGet_titleKey,KillPotionGet_desKey,无自动涨价,源码确认
137,AUGMENT_151,AUGMENT,151,领袖气质,每次进入商店时,增加{n}次免费更新,8,1,,,-1,False,ShopFreeReroll_titleKey,ShopFreeReroll_desKey,无自动涨价,源码确认
138,AUGMENT_152,AUGMENT,152,都市计画,于空地建设时,额外建设{n}个建筑,11,1,,,-1,False,EmptyTripleBuild_titleKey,EmptyTripleBuild_desKey,无自动涨价,源码确认
139,AUGMENT_153,AUGMENT,153,刺激,迴避时,恢復生命值上限的{n}%,15,1,,,-1,False,EvaHeal_titleKey,EvaHeal_desKey,无自动涨价,源码确认
140,AUGMENT_154,AUGMENT,154,战后休息,战斗结束后,恢復生命值上限的{n}%,24,1,,,-1,False,BattleEndHeal_titleKey,BattleEndHeal_desKey,无自动涨价,源码确认
141,AUGMENT_156,AUGMENT,156,残火,若受到<link='keyword_burn'><style=keyword>烧伤</style></link>的敌人死亡,将引起爆炸,对所有敌人造成攻击力{n}%的伤害。,16,1,,,-1,False,BurnEnemyDead_titleKey,BurnEnemyDead_desKey,无自动涨价,源码确认
142,AUGMENT_157,AUGMENT,157,点燃,战斗开始时,以{n}%机率使所有敌人<link='keyword_burn'><style=keyword>烧伤</style></link>+1,18,1,,,-1,False,FirstEnemyAllBurn_titleKey,FirstEnemyAllBurn_desKey,无自动涨价,源码确认
143,POTION_100,POTION,100,立即恢復药水,立即恢復{1}生命值,16,1,,,-1,False,potion_title_InstantHealPotion,potion_desc_InstantHealPotion,无自动涨价,源码确认
144,POTION_101,POTION,101,持续恢復药水,花费{0}秒恢復{1}生命值,15,1,,,-1,False,potion_title_RegenerationPotion,potion_desc_RegenerationPotion,无自动涨价,源码确认
145,POTION_103,POTION,103,攻击药水,持续{0}秒攻击力增加{1}%,15,1,,,-1,False,potion_title_AttackPotion,potion_desc_AttackPotion,无自动涨价,源码确认
146,POTION_104,POTION,104,命中药水,-,13,1,,,-1,False,potion_title_AccuracyPotion,potion_desc_AccuracyPotion,无自动涨价,源码确认
147,POTION_105,POTION,105,暴击药水,持续{0}秒暴击率增加{1}%,14,1,,,-1,False,potion_title_CriticalPotion,potion_desc_CriticalPotion,无自动涨价,源码确认
148,POTION_106,POTION,106,吸血药水,持续{0}秒吸血增加{1}%,16,1,,,-1,False,potion_title_LifestealPotion,potion_desc_LifestealPotion,无自动涨价,源码确认
149,POTION_107,POTION,107,防禦药水,持续{0}秒防禦力强化{1}%,20,1,,,-1,False,potion_title_DefensePotion,potion_desc_DefensePotion,无自动涨价,源码确认
150,POTION_108,POTION,108,反击药水,持续{0}秒反击增加{1}%,19,1,,,-1,False,potion_title_CounterattackPotion,potion_desc_CounterattackPotion,无自动涨价,源码确认
151,POTION_109,POTION,109,迴避药水,持续{0}秒迴避增加{1}%,13,1,,,-1,False,potion_title_EvadePotion,potion_desc_EvadePotion,无自动涨价,源码确认
152,STAT_100,STAT,100,攻击力,直接增加 攻击力,3,10,,,-1,False,status_ATTACK_POWER,,无自动涨价,源码确认
153,STAT_101,STAT,101,生命值上限,直接增加 生命值上限,3,10,,,-1,False,status_HEALTH,,无自动涨价,源码确认
154,STAT_102,STAT,102,命中,直接增加 命中,5,5,,,-1,False,status_AIM,,无自动涨价,源码确认
155,STAT_103,STAT,103,防禦力,直接增加 防禦力,3,10,,,-1,False,status_DEFENSE,,无自动涨价,源码确认
156,STAT_104,STAT,104,迴避,直接增加 迴避,5,5,,,-1,False,status_EVASION,,无自动涨价,源码确认
157,STAT_105,STAT,105,每秒恢復,直接增加 每秒恢復,8,3,,,-1,False,status_REGEN_PER_SECOND,,无自动涨价,源码确认
158,STAT_106,STAT,106,整体攻击,直接增加 整体攻击,9,3,,,-1,False,status_TOTAL_DAMAGE,,无自动涨价,源码确认
159,STAT_107,STAT,107,固定伤害,直接增加 固定伤害,8,3,,,-1,False,status_TRUE_DAMAGE,,无自动涨价,源码确认
160,STAT_108,STAT,108,击杀后恢復,直接增加 击杀后恢復,7,3,,,-1,False,status_KILL_HEAL,,无自动涨价,源码确认
161,STAT_109,STAT,109,反击,直接增加 反击,5,5,,,-1,False,status_COUNTER_ATTACK,,无自动涨价,源码确认
162,STAT_110,STAT,110,攻击速度,直接增加 攻击速度,8,3,,,-1,False,status_ATTACK_SPEED,,无自动涨价,源码确认
163,STAT_111,STAT,111,暴击率,直接增加 暴击率,7,3,,,-1,False,status_CRITICAL_RATE,,无自动涨价,源码确认
164,STAT_112,STAT,112,吸血,直接增加 吸血,8,3,,,-1,False,status_LIFE_STEAL,,无自动涨价,源码确认
165,FIXED_potionCount_0,FIXED,,药水持有量Lv.{0},药水持有上限数量增加<color=green>+{0}</color>,10,1,potionCount,0,1,True,potionCount_titleKey,potionCount_desKey,固定链下一档配置价,源码确认
166,FIXED_potionCount_1,FIXED,,药水持有量Lv.{0},药水持有上限数量增加<color=green>+{0}</color>,15,1,potionCount,1,1,True,potionCount_titleKey,potionCount_desKey,固定链下一档配置价,源码确认
167,FIXED_potionCount_2,FIXED,,药水持有量Lv.{0},药水持有上限数量增加<color=green>+{0}</color>,21,1,potionCount,2,1,True,potionCount_titleKey,potionCount_desKey,固定链下一档配置价,源码确认
168,FIXED_potionCount_3,FIXED,,药水持有量Lv.{0},药水持有上限数量增加<color=green>+{0}</color>,28,1,potionCount,3,1,True,potionCount_titleKey,potionCount_desKey,固定链下一档配置价,源码确认
169,FIXED_potionCount_4,FIXED,,药水持有量Lv.{0},药水持有上限数量增加<color=green>+{0}</color>,36,1,potionCount,4,1,True,potionCount_titleKey,potionCount_desKey,固定链下一档配置价,源码确认
170,FIXED_potionCount_5,FIXED,,药水持有量Lv.{0},药水持有上限数量增加<color=green>+{0}</color>,45,1,potionCount,5,1,True,potionCount_titleKey,potionCount_desKey,固定链下一档配置价,源码确认
171,FIXED_potionCount_6,FIXED,,药水持有量Lv.{0},药水持有上限数量增加<color=green>+{0}</color>,55,1,potionCount,6,1,True,potionCount_titleKey,potionCount_desKey,固定链下一档配置价,源码确认
172,FIXED_potionCount_7,FIXED,,药水持有量Lv.{0},药水持有上限数量增加<color=green>+{0}</color>,66,1,potionCount,7,1,True,potionCount_titleKey,potionCount_desKey,固定链下一档配置价,源码确认
173,FIXED_potionCount_8,FIXED,,药水持有量Lv.{0},药水持有上限数量增加<color=green>+{0}</color>,78,1,potionCount,8,1,True,potionCount_titleKey,potionCount_desKey,固定链下一档配置价,源码确认
174,FIXED_potionHeal_0,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,7,1,potionHeal,0,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
175,FIXED_potionHeal_1,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,11,1,potionHeal,1,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
176,FIXED_potionHeal_2,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,15,1,potionHeal,2,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
177,FIXED_potionHeal_3,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,20,1,potionHeal,3,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
178,FIXED_potionHeal_4,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,25,1,potionHeal,4,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
179,FIXED_potionHeal_5,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,30,1,potionHeal,5,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
180,FIXED_potionHeal_6,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,35,1,potionHeal,6,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
181,FIXED_potionHeal_7,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,40,1,potionHeal,7,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
182,FIXED_potionHeal_8,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,45,1,potionHeal,8,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
183,FIXED_potionHeal_9,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,50,1,potionHeal,9,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
184,FIXED_potionHeal_10,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,55,1,potionHeal,10,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
185,FIXED_potionHeal_11,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,60,1,potionHeal,11,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
186,FIXED_potionHeal_12,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,65,1,potionHeal,12,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
187,FIXED_potionHeal_13,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,70,1,potionHeal,13,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
188,FIXED_potionHeal_14,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,75,1,potionHeal,14,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
189,FIXED_potionHeal_15,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,80,1,potionHeal,15,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
190,FIXED_potionHeal_16,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,85,1,potionHeal,16,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
191,FIXED_potionHeal_17,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,90,1,potionHeal,17,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
192,FIXED_potionHeal_18,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,95,1,potionHeal,18,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
193,FIXED_potionHeal_19,FIXED,,药水恢復量Lv.{0},药水恢復量增加<color=green>+{0}</color>,100,1,potionHeal,19,2,True,potionHeal_titleKey,potionHeal_desKey,固定链下一档配置价,源码确认
194,FIXED_potionAdd_0,FIXED,,补充药水,补充<color=green>1</color>个药水,5,-1,potionAdd,0,0,True,potionAdd_titleKey,potionAdd_desKey,无自动涨价,源码确认
195,Lotto,LOTTO,,彩券,测试运气。,5,1,,,-1,False,LOTTO_titleKey,LOTTO_tag_icon_tagKey,无自动涨价,源码确认
```
## 附录D. shop-mechanics.csv(商店运行规则)
```csv
mechanic,formula,values,evidence,confidence
付费刷新价格,cost=3+2*paidRerollCount,"3,5,7,9,...","gameconfig.shopRerollCost=3,2; IngameShopView 0x54E217C-0x54E219C",高
免费刷新,freeRerollCount-=1; paidRerollCount unchanged,不扣点数且不推高下一次付费刷新价格,IngameShopView 0x54E22F0-0x54E23A4,高
普通商品重复购买,remainBuyCount-=1; price unchanged,buyCount=-1 means unlimited; otherwise sold out at zero,IngameShopItemSlot.BuyItem 0x54DE724-0x54DE74C,高
固定升级链,buy current fixedSort then expose next fixedSort,"prices are explicit per row, not a hidden multiplier",ingameshoplist.csv fixedKey/fixedSort/fixedSlot,高
黑市附加价,price=base+trunc(base*surchargePercent/100),"original percentage unknown; MVP reads shared shopSurchargePercent=50",IngameShopItemSlot.SetSurcharge 0x54DE0F4-0x54DE21C; IngameShopView isBlackMarket/priceSurchargePer,公式高/原值未知/MVP默认已冻结
```