跳到主要内容

Game Card Editor

GCS · Visual Editors

一个窗口、六个模式:卡牌、卡组、玩家单位、敌人、状态、遭遇战,全部在 Workbench 里创作完成。

面向所有在 Unity 中制作或修改 GCS 内容的人。日常卡牌数据编辑主要从这个窗口开始。

Game Card Editor 就是工作台(Workbench),用于创作和维护 GCS 内容。Demo 里的卡牌、卡组、单位、状态和遭遇战都通过这个窗口编辑;项目自己的内容也使用同一套流程。从 Unity 菜单打开:

Tools/TinyGiants/GCS/Game Card Editor

系统初始化之后,也可以从 Game Card System 仪表盘一键进入

Workbench 的 Card 模式:左侧数据库列表、中间卡牌 Inspector、右侧实时卡牌预览

一个窗口,三栏布局

所有模式共用同一套布局。无论编辑卡牌还是遭遇战,窗口结构都保持一致:

内容
List数据库选择器、搜索框、过滤器,以及当前数据库的全部条目
Inspector所选条目的全部可编辑字段;拥有行为的条目还带 Edit FlowGraph 按钮
Preview所选条目的实时渲染,加上列出所有引用方的 Used By 面板
检查列表标题

List 旁边的数字徽标显示当前数据库有多少条目。刚创建的卡没有出现在这个数字里时,优先确认当前数据库是否选对


六个模式

模式标签按固定顺序排列:Card、Deck、Player、Enemy、Status、Encounter

Mode用途
Card费用、类型、稀有度、标签、卡面、描述文本,以及打出时的行为图
Deck用卡牌定义组装初始卡组和奖励卡组,带副本数量
Player玩家单位:生命值、能量、初始卡组、预制体、职业标签
Enemy敌方单位:HP 范围、等级、标签、预制体、意图预览和敌人行为图
Status增益与减益:层数规则、衰减规则、层数上限、图标、标签和状态行为图
Encounter一整场战斗:玩家单位、敌人阵容、奖励卡组和战斗规则

按要编辑的内容选择模式,而不是按数据在代码中的位置选择。例如,"这个敌人为什么不行动"应先进入 Enemy 模式,通常再深入它的 FlowGraph

Card

页首那张截图就是 Card 模式:一张费用 2 的普通攻击牌,描述为 "Deal 5 damage to target enemy unit"。Inspector 覆盖身份(名称、描述、标签)、经济(费用、稀有度)、卡面和行为图。Preview 栏按玩家实际看到的样子渲染成品卡,便于在进入 Play Mode 前检查文本和排版问题

Deck

卡组是一份带副本数量的有序卡牌条目列表。Cards 区块的标题写着 7 cards · 17 copies:七种不同的卡牌定义,算上副本一共十七张实体卡。Preview 栏会分析这份列表:类型与稀有度分布、标签统计,以及按 Low(0 到 1 费)、Mid(2 到 3 费)、High(4 费以上)分桶的能量曲线。Insights 面板会直接指出曲线问题,比如战士初始卡组 Iron Resolve 上的 "Cost 1 dominates (71%)"

Workbench 的 Deck 模式:Iron Resolve 初始卡组的卡牌条目、费用分布、能量曲线和 Insights 提示

用 Insights 调整初始卡组

新卡组试玩节奏偏平时,先看 Insights 面板。一条长期停留在 Low 桶的曲线,通常意味着前期顺手,但中后段缺少消耗资源的选择

Player

玩家单位定义玩家操控的角色:Base HP、Base Energy、初始卡组,以及战斗中出现的预制体。Deck 区块链接已分配的初始卡组,显示平均费用,并提供直接跳转到 Deck 模式的按钮。Energy 区块定义每回合资源:可以命名为 Energy、Mana 或 Focus,配上图标和一行描述后,战斗 HUD 会按此显示。Preview 直接渲染真实预制体,可旋转、平移、缩放;Used By 列出使用这个单位的每一场遭遇战

Workbench 的 Player 模式:Squire 单位的基础 HP 和能量、关联的初始卡组、能量资源定义和实时预制体渲染

Enemy

Enemy 模式用于编辑由意图驱动的敌方单位。Inspector 把单位的 HP 范围、等级和行为图放在一起,便于同时检查敌人的基础数据和行为定义:

Workbench 的 Enemy 模式,展示敌方单位的 HP 范围、等级、标签和行为图引用

Status

状态 = 身份 + 层数算术 + 行为。Type 开关决定增益还是减益,同时驱动战斗中的图标配色。Stack 面板回答的正是玩家会问的问题:Stack Rule 决定第二次施加会发生什么,Max Stacks 限制层数上限(-1 表示不封顶),Decay Rule 决定层数是逐回合掉落还是一直保留到被移除。Demo 增益 Strength 的描述是 "Your attacks deal 1 extra damage per stack":叠加、永不衰减、无上限。Preview 的 Behavior Summary 会读取挂载的图并报告它注册了哪些 Hook;Used By 列出施加它的每一张卡、每个状态和每个敌人

Workbench 的 Status 模式:Strength 增益的层数规则、衰减规则、行为 Hook 摘要,以及使用它的卡牌和敌人

Encounter

Encounter 模式把所有零件拼成一场可玩的战斗。除了阵容,战斗规则也在这里设定:起手手牌数、每回合抽牌数、手牌上限、奖励数量、护甲重置时机、回合结束弃牌,以及意图显示方式

Workbench 的 Encounter 模式,包含玩家单位、敌人阵容、奖励卡组和战斗规则标签


日常工作流

  1. 选中拥有这个内容的模式
  2. 在列表中搜索或过滤
  3. 选一个条目、复制一个可运行的 demo 条目,或者新建
  4. 在 Inspector 里编辑字段
  5. 引用资产一律用 picker 和链接按钮,不要手写 ID
  6. 进 Play Mode 前先修完 validation 错误
  7. 只有内容需要行为时才点 Edit FlowGraph
  8. 在一个小战斗场景里测试
  9. 用 Game Card Monitor 确认结果
小步验证

一次只改一张卡、一个状态或一个敌人。GCS 的内容互相引用较多,小步验证可以更快分清问题出在数据、图、场景还是表现引用


先搜索,再滚动

Demo 数据库规模较大,搜索通常比滚动更高效:预设数据库里有 80 张卡牌、30 个状态、16 个敌人、12 个玩家单位、16 套卡组和 12 场遭遇战。常用搜索词:

搜什么例子
卡牌名StrikePoison ArrowFire Bolt
职业WarriorMageHunterPriest
卡牌类型AttackSkillSupport
状态BurnWeakHoly Shield
遭遇战Demo 场景列表里的名字

按玩家看到的内容命名条目。一张叫 "Poison Arrow" 的卡更容易被搜索和维护;"test_dmg_2" 这类临时名不适合作为正式内容名


Inspector 字段

Inspector 是所选条目的事实来源。各模式最常编辑的字段:

Mode高频字段
Card显示名、描述、费用、类型、稀有度、标签、卡面、behavior
Deck有序的卡牌条目和副本数量
PlayerHP、能量、初始卡组、预制体、职业标签
EnemyHP 范围、等级、标签、预制体、意图显示、behavior
Status增益/减益属性、层数规则、衰减规则、层数上限、图标、标签、behavior
Encounter玩家单位、敌人阵容、奖励卡组、战斗规则、标签

字段指向其他 GCS 资产时,用 picker 或链接按钮。手写 GUID 只适合序列化数据调试,其他场合不应出现


Validation

当前数据库有问题时,窗口页眉会出现 validation 徽标。点击徽标列出全部问题;点击某条问题直接跳到出问题的条目和字段。FlowGraph 类问题还会更进一步,直接重新打开那张图

Severity触发条件
Error卡牌、玩家、敌人或状态的名称为空
Error卡组条目没有指定卡牌,或副本数小于 1
Error敌人的 HP Min 大于 HP Max
Error遭遇战没有玩家单位,或敌人阵容为空
Warning玩家单位缺初始卡组或预制体
Warning状态的 Max Stacks 设成了 0。用 -1 表示不封顶,或填正数上限
Warning遭遇战缺奖励卡组或难度
Warning条目行为图内部的任何问题
先修错误

一张没有卡面的卡仍然可以验证机制;一场没有敌人阵容的 encounter 无法验证战斗。先清掉错误,再调整数值


删除前先看 Used By

卡牌会出现在卡组、奖励池、初始卡组、遭遇战配置和行为图里;状态和单位也会被节点引用。Preview 栏的 Used By 面板会在删除前列出依赖关系。比如 demo 增益 Strength,就被三张卡、一个状态和三个敌人施加

删除不等于清理

一张在当前列表里看起来没有引用的卡,仍可能存在于某个奖励卡组或 FlowGraph 的 picker 引用中。先看 Used By,再删除


进入 FlowGraph 窗口

卡牌、状态和敌人各自内嵌一张行为图。从选中的条目点 Edit FlowGraph 打开它(不要从零散资产打开),这样图编辑器始终挂在正确的拥有者上

分工非常清晰:

Workbench 负责FlowGraph 负责
名称、标签、费用、图标、预制体、数据库归属打出时发生什么、Hook、敌人行动、延迟触发、选择、表现请求

如果卡牌文本写的是"对选中的敌人造成 8 点伤害",这张卡的目标语义就必须是单体指向,图再作用于选中的目标。目标语义属于卡牌定义,不是 Workbench 里的普通字段:demo 卡已经预设了目标方式,复制一张 demo 卡会把它一并带走。卡面写单体、图里却实际作用于全体,会造成内容语义和运行结果不一致


什么时候离开这个窗口

需求去哪里
编辑卡牌、卡组、玩家、敌人、状态或遭遇战数据留在这里
为选中的资产连接行为节点FlowGraph 窗口
在 Play Mode 里确认运行时状态Game Card Monitor
初始化数据库和场景对象Game Card System 仪表盘