Skip to content

Commit 09fd48f

Browse files
author
NBL Agent
committed
feat(v6): finalize strength system and product switch
1 parent 5d330b9 commit 09fd48f

43 files changed

Lines changed: 68239 additions & 8824 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

AGENTS.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -88,15 +88,13 @@ npm run manifest # 重新生成 RELEASE-MANIFEST.json(提交新
8888
- `src/ai.js` — 当前 canonical AI:`planAI(engine, team, "canonical")`;默认观战用它。非 canonical 难度显式保留旧 planner。不要仅修改 engine.js 内的 legacy skillScore。
8989
- `src/formula.js` — Acorn + 白名单表达式解释层
9090
- `src/gen-v4.js` — Generator v4(legacy:classless、连续预算、个体变量、时间机制)
91-
- `src/gen-v5.js`**Generator v5(默认**:结构先于强度;同 seed 结构跨等级/稀有度不变;
91+
- `src/gen-v5.js`**Generator v5(legacy**:结构先于强度;同 seed 结构跨等级/稀有度不变;
9292
先生成结构 → 算 LevelScale → 算 Rarity PowerEnvelope → targetPower → battlepower-v3 有界校准
9393
- `src/budget-v6.js`**Budget v6**:TotalStrengthBudget = ExpectedStrength(level,rarity)
9494
= 1000×LevelScale×RarityStrengthScale(C=1.0…XS_COLLECTOR=12.0);Seed 只能再分配固定总额
9595
- `src/budget-price.js`**budget-price**:生成期因果机制定价(独立于 battlepower-v3)
96-
- `src/gen-v6.js`**Generator v6(opt-in,`generateCardV6`**:预算面板固定 ∝ budget
97-
(MAX_HP/ATK/DEF 同档位所有 seed 相同);2 个固定无条件打击(cd1+cd2)+ 简化 utility;
98-
治疗/护盾按引擎真实 HP 价值折算后从伤害预算扣除;真实 AI 对局测量选择门(每草稿 vs 参考卡
99-
净 HP 优势,选最接近档位目标实力的草稿)。默认派发器仍是 v5(gen-v5)。
96+
- `src/gen-v6.js`**Generator v6(当前默认)**:Level×Rarity 决定总预算,Seed 生成受界 allocation profile;主面板与机制都消费预算,同档位面板真实多样;确定性价格调和不调用 BattlePower、AI、参考对手或战斗引擎。
97+
- `src/strength-audit-v6.js` — 逐场镜像计分与 Wilson 95% CI 的唯一共享实现。
10098
- `scripts/gate-v6-strength.js` — v6 强度回归门(verify:release 内小样本确定性检查)
10199
- `scripts/audit-v6-strength.js` — v6 大样本实证审计(稀有度/等级差距 + 同档位 USI)→ qa/v6-strength-audit.json
102100
- `src/power-v5.js`**Power Envelope v1**:LevelScale + 12 稀有度包络(min/target/max)+ 质量百分位

README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,11 @@
1212
普通「开始对战」与「重开」每局都会生成**新的对局随机种子**(相同阵容 + 新随机轨迹),精确复现走 Replay / 高级实验室「同种子重放」。
1313
没有经验、货币、升级、抽卡、关卡或解锁;等级只是 1–100 的自由生成参数。
1414

15-
卡面上的 **「战力」是玩家观察卡牌综合实力的参考数值**(v5 BattlePower v3 真实估算;v4 旧卡仍用 BattlePower v2),**不参与**任何战斗计算。对战中每个实体单独显示稀有度 / 等级 / 战力。
15+
卡面上的 **「战力」是玩家观察卡牌综合实力的参考数值**v6/v5 用独立的 BattlePower v3 估算;v4 旧卡仍用 BattlePower v2),**不参与**任何战斗计算。对战中每个实体单独显示稀有度 / 等级 / 战力。
1616

17-
**Generator v5 是当前默认生成器(v4 保留为 legacy 兼容)**。强度体系是权威的 Level × Rarity 规则:
18-
**Level 决定整体数值尺度,Rarity 决定该尺度内允许的实力 min–max(同等级下低稀有度上限 < 高稀有度下限),Seed 只决定卡牌在稀有度区间内的个体位置,机制决定打法和爆冷可能,BattlePower 是真实实力的静态估算。**
17+
**Generator v6 是当前默认生成器,v1–v5 保留为显式 legacy。** 强度体系遵循 Level × Rarity Strength Contract:
18+
**Level × Rarity 共同决定 ExpectedStrength 与总实力预算;Seed 只决定预算在攻击、耐久、恢复、控制、节奏、资源、可靠性和触发器之间如何分配;机制决定打法与克制;Match Seed 决定单局结果。**
19+
生成器是纯确定性函数,不运行战斗、不调用 AI 或 BattlePower;BattlePower 和 canonical-AI Monte Carlo 分别是独立的 Measurement 与 Reality 层。
1920
同 seed 的卡无论 Lv/Rarity 怎么变,**机制指纹与物种专名都不变**——只是数值强度按包络校准。
2021
**命名体系(Name Generator v3)**:卡名是可直接朗读、好记的原创物种专名(如 米洛、咕拉奇、维洛恩、莫里亚姆…),
2122
由 6 个纯语音家族(ROUND/AGILE/HEAVY/SLEEK/WILD/ANCIENT)以 2/3/4 字 = 10/70/20 生成,
@@ -28,7 +29,7 @@
2829
数值、行动、资源、状态和公式可在卡牌的「编辑」中修改完整 JSON,保存前校验。高级实验室保留数值编辑、批量模拟、组件目录、Trace 和 Replay。
2930
移动端观战按**事件逐帧**讲故事:血条逐事件同步、每实体单浮动数字队列、暂停/单步/1×/2×/4×。
3031

31-
参阅 [Generator v4](docs/GENERATOR-V4.md)[Generator v5 / Power Envelope](docs/GENERATOR-V5.md)[本轮验证报告](docs/GENERATOR-V4-REPORT.md)。历史 Generator v3 见 [GENERATOR-V3.md](docs/GENERATOR-V3.md)
32+
参阅 [Generator v6 设计](docs/GENERATOR-V6-DESIGN.md)[v6 交付报告](docs/V6-DELIVERY-REPORT.md)[Generator v5 legacy](docs/GENERATOR-V5.md)
3233

3334
## 直接运行
3435

@@ -46,13 +47,12 @@ python -m http.server 8765
4647

4748
- 1–6 vs 1–6 同时在场,支持不对称人数;默认玩家向 **1 VS 1**(更多对战设置可调 1–6)。
4849
- 20 个示例实体、63 个示例技能、33 个状态;它们只是组件语言的示范组合,不是引擎上限。
49-
- **生成卡牌(Generator v5,Classless,默认)**:12 档稀有度、任意整数等级 1..100、无职业先验、
50+
- **生成卡牌(Generator v6,Classless,默认)**:12 档稀有度、任意整数等级 1..100、无职业先验、
5051
连续随机预算分配、2–6 个可变行动、个体级随机(VOLATILITY/LUCK)、时间成长/疲劳(RAMP/FATIGUE/ENDURANCE)、
5152
Battle Wear 长局收敛、物种专名(Name Generator v3)、复合效果、条件、资源循环与状态事件程序。
52-
强度由 **LevelScale × Rarity PowerEnvelope → targetPower → BattlePower v3 有界校准** 决定:
53-
同 seed 结构跨 Lv/Rarity 不变,实测 BP 严格落在对应包络内(C+ Lv100 永远 < A+ Lv100)。
54-
显式 `generatorVersion: 1|2|3|4` 仍逐字节复现历史版本。
55-
- **战力评分(BattlePower v3,v5 canonical)**:只读真实 stats/actions/formulas 的静态综合实力估算;
53+
强度由 **ExpectedStrength(Level, Rarity) → Seed allocation → budget-priced card** 决定;同 seed 的机制指纹与名称跨 Lv/Rarity 完全不变,主面板和机制幅度按同一总预算调和至 ±5% 内。
54+
显式 `generatorVersion: 1|2|3|4|5` 继续复现 legacy。
55+
- **战力评分(BattlePower v3,v6/v5 measurement)**:只读真实 stats/actions/formulas 的静态综合实力估算;
5656
绝不读取稀有度/等级、绝不 clamp、绝不因对局种子变化。v4 旧卡继续用 BattlePower v2。
5757
- **对局随机语义**:普通「开始/重开」每局新 seed;同 seed 精确复现;Replay 逐步重现原局;
5858
SPD 先手为有界随机(Priority 优先 → SPD×jitter → 确定性兜底)。

0 commit comments

Comments
 (0)