本文档旨在确立 Project Vampirefall 的配表标准。我们使用 Luban 作为核心数据工具。
(…此处保持原有的 ID 对比内容,为节省篇幅省略,实际写入时会保留…) 这是一个没有标准答案的选择,取决于团队更看重程序维护性还是策划填表效率。
1001, 200201Item_Sword_Fire_01(…此处保持原有的命名范例内容…)
(…此处保持原有的公式生成 ID、下拉菜单内容…)
Luban 的多态功能(Bean#Field=Val)虽然程序用爽了,但如果直接让策划手填字符串,出错率是 100%。
DamageEffect#value=100;type=Firevaleu,或者漏了分号,或者大小写错了。程序解析报错,排查半天。利用 Excel 的隐藏列,策划只填“人看得懂的列”,Excel 帮我们拼“Luban 看得懂的字”。
场景: 技能效果 (SkillEffect),可能是造成伤害 (Damage),也可能是加血 (Heal)。
Excel 表头设置:
| 列号 | A | B | C | D | E (导出给Luban) |
|---|---|---|---|---|---|
| 注释 | 效果类型 | 参数1(数值) | 参数2(类型/其他) | 参数3 | (隐藏)实际效果字段 |
| 填写示例 | Damage |
100 | Fire | DamageEffect#amt=100;element=Fire |
|
| 填写示例 | Heal |
500 | HealEffect#amt=500 |
E 列公式 (核心魔法):
使用 IFS 或 CHOOSE 函数根据 A 列的类型,拼接不同的字符串模板。
=IFS(
A2="Damage", "DamageEffect#amt=" & B2 & ";element=" & C2,
A2="Heal", "HealEffect#amt=" & B2,
A2="Summon", "SummonEffect#unit=" & C2 & ";duration=" & B2,
TRUE, ""
)
amt, element) 此时硬编码在公式里,策划永远不会拼错。如果一个多态 Bean 里面有 10 个参数,Excel 这一行就没法看了。此时应果断拆表。
结构:
EffectID (String)。SkillEffectTable 设计: 这张表可以做得非常宽,或者利用 Luban 的 Excel 多行记录 (Multi-Row Record) 特性。
或者,更简单地,按类型拆分 Sheet:
Sheet_Damage: 专门填伤害类,列定义固定 (Amt, Element)。Sheet_Heal: 专门填治疗类,列定义固定 (Amt)。Sheet_Summon: 专门填召唤类。然后 Luban 配置所有这些 Sheet 都导出到同一个 cfg.SkillEffect 列表中。
为了保护策划的理智,请程序遵守以下军规:
DamageBean 用 Amount, HealBean 用 Value。Value。这样 Excel 公式好写,策划也好记。