docs(handbook): 07 游戏设计器同步字段化表单/双语/行编辑器现状
This commit is contained in:
@@ -26,14 +26,18 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 3. 五个分页详解
|
## 3. 七个分页详解
|
||||||
|
|
||||||
|
> 所有分页均为**字段化表单**(输入框/下拉/复选框/行编辑器),选项显示为「中文 English」双语,**无需手写 JSON**。
|
||||||
|
|
||||||
### ✨ 法术(spells.json)
|
### ✨ 法术(spells.json)
|
||||||
新增/编辑/删除法术,最丰富的玩法配置。详见 [06 法术编辑器](06_spell_editor.md)(meta 字段速查表)。
|
新增/编辑/删除法术,最丰富的玩法配置。**字段化表单**,详见 [06 法术编辑器](06_spell_editor.md)。
|
||||||
- 列表 → 选中编辑;➕新增 / ⧉复制 / 🗑删除
|
- 列表 → 选中编辑;➕新增 / ⧉复制 / 🗑删除
|
||||||
- 字段:ID / 类型(ACTION/MODIFIER/TRIGGER/LOGIC) / 显示名 / 描述 / 元素标签 / meta(JSON)
|
- 固定字段:ID / 类型(动作/修饰/触发/逻辑) / 显示名 / 描述
|
||||||
- 「插入该类型 meta 模板」一键填入起始参数(模板已含 `mana_cost` 蓝耗、`shop_cost` 售价)
|
- **元素标签**:火/冰/雷/水/毒 复选框(可多选)+ 自定义标签框(非元素 tag)
|
||||||
- 💧 **蓝耗**:每个法术的 `meta.mana_cost` 决定施放消耗的魔力(0=免蓝);权威数值见 `numerical_design §2`
|
- **通用 meta**:蓝耗 mana_cost / 商店价 shop_cost / 解锁价 unlock_cost
|
||||||
|
- **动态字段**:随类型(及 ACTION 动作种类 弹道/毒池/召唤、LOGIC logic_op)自动切换;伤害类型/施加状态等为下拉;schema 之外的键落入「其它(JSON)」框保留不丢
|
||||||
|
- 💧 **蓝耗**:`meta.mana_cost` 决定施放消耗的魔力(0=免蓝);权威数值见 `numerical_design §2`
|
||||||
|
|
||||||
### 👾 敌人(enemies.json)
|
### 👾 敌人(enemies.json)
|
||||||
6 种敌人原型的数值表格,**直接拖动数字框**调整:
|
6 种敌人原型的数值表格,**直接拖动数字框**调整:
|
||||||
@@ -54,10 +58,10 @@
|
|||||||
|:---|:---|
|
|:---|:---|
|
||||||
| 怪数 | 本波杂兵数量 |
|
| 怪数 | 本波杂兵数量 |
|
||||||
| 血量 | 杂兵基础血量 |
|
| 血量 | 杂兵基础血量 |
|
||||||
| 类型 | 杂兵原型(Basic/Fast/Armored…)|
|
| 类型 | 杂兵原型(杂兵/快速/护甲…)下拉 |
|
||||||
| 精英 | 带寻路的精英数(W15+)|
|
| 精英 | 带寻路的精英数(W15+)|
|
||||||
| 金币 / XP | 波次结算奖励 |
|
| 金币 / XP | 波次结算奖励 |
|
||||||
| Boss | 无 / MiniBoss(4) / Boss(5) |
|
| Boss | 无 None / 首领 MiniBoss / 终焉 Boss |
|
||||||
|
|
||||||
- 「➕末尾加一波」扩展关卡长度
|
- 「➕末尾加一波」扩展关卡长度
|
||||||
- 改完点「💾保存 waves.json」
|
- 改完点「💾保存 waves.json」
|
||||||
@@ -68,19 +72,19 @@
|
|||||||
| 字段 | 含义 |
|
| 字段 | 含义 |
|
||||||
|:---|:---|
|
|:---|:---|
|
||||||
| 槽位数 | 可装法术数 |
|
| 槽位数 | 可装法术数 |
|
||||||
| 拓扑 | LINEAR(线性) / MATRIX(矩阵邻接) / CIRCUIT(电路分叉) |
|
| 拓扑 | 线性 LINEAR / 矩阵 MATRIX / 电路 CIRCUIT |
|
||||||
| CPU 上限 | 单次施法最大执行步数 |
|
| CPU 上限 | 单次施法最大执行步数 |
|
||||||
| 施法间隔 | 自动施法冷却(s) |
|
| 施法间隔 | 自动施法冷却(s) |
|
||||||
| 蓝上限(Mana Max) | 法杖蓝池上限(基础 100) |
|
| 蓝上限(Mana Max) | 法杖蓝池上限(基础 100) |
|
||||||
| 回蓝/秒(Mana Regen) | 每秒回复的魔力(基础 5) |
|
| 回蓝/秒(Mana Regen) | 每秒回复的魔力(基础 5) |
|
||||||
| 特性 | 无 / PERSISTENT_MEMORY(寄存器跨帧) / … |
|
| 特性 | 无 None / 记忆 PERSISTENT_MEMORY / 双流 / 末位施法 / 洗牌 / 无限法术 |
|
||||||
| 矩阵行·列 | MATRIX 专用网格尺寸 |
|
| 矩阵行·列 | MATRIX 专用网格尺寸 |
|
||||||
| 电路边 | CIRCUIT 专用,JSON 有向边 `[{"from":0,"to":1}]` |
|
| 电路边 | CIRCUIT 专用,`from → to` 行编辑器(可 ➕加/🗑删边)|
|
||||||
|
|
||||||
### 🔮 共鸣(resonance.json)
|
### 🔮 共鸣(resonance.json)
|
||||||
元素组合自动合成配方(隐藏玩法):
|
元素组合自动合成配方(隐藏玩法):
|
||||||
- **元素 A + 元素 B**(相邻放置)→ 合成**产物法术**
|
- **元素 A + 元素 B**(元素下拉,相邻放置)→ 合成**产物法术**
|
||||||
- 匹配方式:adjacent(相邻) / anywhere_in_deck(任意位置)
|
- 匹配方式:相邻 adjacent / 卡组内任意 anywhere_in_deck
|
||||||
- 消耗输入:合成后是否移除原两张法术
|
- 消耗输入:合成后是否移除原两张法术
|
||||||
- 例:`tag:water` + `tag:lightning` → `action_plasma_storm`
|
- 例:`tag:water` + `tag:lightning` → `action_plasma_storm`
|
||||||
|
|
||||||
@@ -91,7 +95,7 @@ DoT/控制/叠层效果:
|
|||||||
|:---|:---|
|
|:---|:---|
|
||||||
| 状态 ID | 整数(1=燃烧 2=冻结 3=中毒…),与法术 meta 的 `apply_status_id` 对应 |
|
| 状态 ID | 整数(1=燃烧 2=冻结 3=中毒…),与法术 meta 的 `apply_status_id` 对应 |
|
||||||
| 持续时间 / 跳字间隔 | DoT 周期 |
|
| 持续时间 / 跳字间隔 | DoT 周期 |
|
||||||
| 叠层模式 | REFRESH(刷新) / INTENSITY(叠层) / INDEPENDENT(独立) |
|
| 叠层模式 | 刷新 REFRESH / 叠层 INTENSITY / 独立 INDEPENDENT |
|
||||||
| 最大层数 | 0=无限 |
|
| 最大层数 | 0=无限 |
|
||||||
| 每跳伤害 | DoT 每次伤害 |
|
| 每跳伤害 | DoT 每次伤害 |
|
||||||
| VFX ID | 触发的特效 |
|
| VFX ID | 触发的特效 |
|
||||||
@@ -100,6 +104,7 @@ DoT/控制/叠层效果:
|
|||||||
全局数值微调:
|
全局数值微调:
|
||||||
- **难度乘子表格**:4 行(敌人血量×/玩家受伤×/波次怪数×/Boss血量×) × 3 档(初学者/标准/挑战)
|
- **难度乘子表格**:4 行(敌人血量×/玩家受伤×/波次怪数×/Boss血量×) × 3 档(初学者/标准/挑战)
|
||||||
- **Boss 基础血量**:MiniBoss(W8) / Final Boss(W20)
|
- **Boss 基础血量**:MiniBoss(W8) / Final Boss(W20)
|
||||||
|
- **碎片奖励阈值**:波次 → 碎片 行编辑器(可 ➕加/🗑删行),元进度奖励表
|
||||||
|
|
||||||
调一格数字即可改变整体难度曲线。
|
调一格数字即可改变整体难度曲线。
|
||||||
|
|
||||||
@@ -144,7 +149,7 @@ DoT/控制/叠层效果:
|
|||||||
波次分页 → 第 10 行 Boss 列选 `MiniBoss(4)` → 保存 → F5。
|
波次分页 → 第 10 行 Boss 列选 `MiniBoss(4)` → 保存 → F5。
|
||||||
|
|
||||||
### 例 3:新增一个"冰锥"法术(策划)
|
### 例 3:新增一个"冰锥"法术(策划)
|
||||||
法术分页 → ➕新增 → ID 填 `action_ice_spike`,类型 ACTION,「插入模板」后改 `base_damage` 为 8、加 `"apply_status_id": 2`(冻结)→ ✓应用 → 💾保存 → F5。新法术自动进商店。
|
法术分页 → ➕新增 → ID 填 `action_ice_spike`,类型选「动作 ACTION」→ 动态字段里改 base_damage 为 8、施加状态选「冻结 Freeze」→ ✓应用 → 💾保存 → F5。新法术自动进商店。
|
||||||
|
|
||||||
### 例 4:精英敌人改成紫色更大(美术)
|
### 例 4:精英敌人改成紫色更大(美术)
|
||||||
敌人分页 → 精英行 → 尺寸改 `30`,颜色点开选紫色 → 保存 → F5。
|
敌人分页 → 精英行 → 尺寸改 `30`,颜色点开选紫色 → 保存 → F5。
|
||||||
@@ -158,4 +163,6 @@ DoT/控制/叠层效果:
|
|||||||
2. 在 `designer_panel.gd` 的 `_init()` 里 `_add_tab(...)` 注册
|
2. 在 `designer_panel.gd` 的 `_init()` 里 `_add_tab(...)` 注册
|
||||||
3. 对应 Manager 加 `_load_json_xxx()`,在 `_ready()` 调用
|
3. 对应 Manager 加 `_load_json_xxx()`,在 `_ready()` 调用
|
||||||
|
|
||||||
|
> **开发规范见 [`CLAUDE.md`](../../CLAUDE.md) 「编辑器插件 / 游戏设计器开发规范」**:字段化(禁止手写 JSON,可变长整数元组用 `tuple_list_editor.gd`)、输入框 `SIZE_EXPAND_FILL` 撑满、标签「中文 English」双语、显示与存储解耦、改动后 `validate_script` + 回读往返验证。
|
||||||
|
|
||||||
> **Godot 编辑器扩展 = Unity 平替**:`EditorPlugin`(面板/工具栏/底部面板) ↔ EditorWindow;`@tool` ↔ ExecuteInEditMode;`EditorInspectorPlugin` ↔ CustomEditor;自定义 `Resource` ↔ ScriptableObject。
|
> **Godot 编辑器扩展 = Unity 平替**:`EditorPlugin`(面板/工具栏/底部面板) ↔ EditorWindow;`@tool` ↔ ExecuteInEditMode;`EditorInspectorPlugin` ↔ CustomEditor;自定义 `Resource` ↔ ScriptableObject。
|
||||||
|
|||||||
Reference in New Issue
Block a user