角色数据库真正有价值的时刻,不是“它能存多少字段”,而是它能减少矛盾、缩短查找时间、让不同岗位拿到同一个答案。最容易失控的数据库,反而是因为工具加字段太方便,于是什么都结构化,最后数据库变成第二本需要不断维护的小说。
Notion 的关系字段与 Rollup、Airtable 的 Linked Record、Lookup、Count 等功能,都让非技术团队也能做关系型资料库。功能本身不是问题,问题是你是否把“应该是事件的东西”硬塞进了角色表,或者把“关系”误当成一句静态文字。
决策一:这个信息是稳定事实、变化状态,还是历史记录?
出生地、法定姓名、物种、固定身高、基础外观,通常属于角色主体。当前位置、伤势、军衔、婚姻状态、掌握了哪些秘密,如果会随着章节改变,就更适合放到事件/时间线表里,再与角色关联。“看起来嫉妒”“可能背叛”“也许会洗白”则属于作者判断或假设,最好与正式设定分开。
最典型的错误是角色表里只有一个“当前位置”。故事跨越多年以后,大家不断覆盖这个字段,旧位置全部消失;再后来只能出现“位置2、位置3、最新位置”,本质上是在用列硬做时间线。
判断规则很简单:一个值会变化,而且旧值以后还需要追溯,就不要直接覆盖,应该记录变化本身。
决策二:这是角色属性,还是关系本身?
“母亲:Elena”看起来只是一个字段,但很多项目真正要管理的是这段关系:从什么时候成立、是否公开、双方是否承认、目前是否决裂、哪个章节证明。
当关系本身有属性时,单独做 Relationship 表会更稳:关系类型、方向、有效时间、可见性、证据来源都可以单独管理。
但不要为了“数据库看起来专业”就把六个人的短篇小说做成十张表。复杂度必须由实际查询需求决定。
决策三:团队以后会不会筛选、统计或审计它?
如果会,就适合结构化。
“蓝眼睛、左手缺失、海鲜过敏、偶尔戴眼镜”写在一段人物简介里很容易阅读,但美术想批量查眼睛颜色、连续性编辑想查伤势时几乎不能用。
所以应该把真正驱动工作流的东西结构化:美术反复需要的视觉属性、容易导致前后冲突的身体状态、分镜或授权资料反复要导出的身份信息、需要筛选的阵营/地点/时间状态。
一句话:会驱动工作的信息结构化,会帮助理解的信息保持叙述。
决策四:这个字段能不能从别处自动得出?
重复手填是漂移的主要来源。如果关系已经存在,某些结果可以通过 relation + rollup / lookup / count 自动形成,例如活跃关系数量、最新出现章节、未关闭连续性警报数量。
但不要把复杂叙事判断伪装成自动计算。“当前忠诚阵营”在一个公开效忠A、秘密帮助B的人物身上,可能根本没有单一答案。此时保留两个明确状态,比算出一个看似精确的标签更诚实。
决策五:这个字段错了以后会坏掉什么?
可以给连续性风险分三级:高风险错误会破坏剧情逻辑或正式视觉;中风险错误会产生明显返工;低风险错误只是查资料不方便。
高风险信息应该带来源和有效范围。比如“哪只耳朵有旧伤”如果后面会成为剧情条件,就要记录来源章节与时间;“最喜欢哪种茶”如果只出现一次,就不需要用同样强度维护。
一个足够扩展、但不臃肿的结构
| 表 | 用途 | 常见记录 |
|---|---|---|
| Characters | 稳定身份与当前展示 | 人物、灵兽、人格 |
| Relationships | 有状态的关系 | 家族、竞争、契约、联盟 |
| Events | 随时间发生的变化 | 受伤、晋升、背叛、发现 |
| Factions / Places | 可复用世界实体 | 组织、城市、舰船、公司 |
| Sources | 设定证据 | 章节、剧本版本、美术brief |
角色主页只保留第一眼必须看懂的东西,然后把细节通过链接展开。这样人物越多,主表反而不会越来越难读。
ID不要等于名字
每个角色最好有稳定内部ID,例如 CHAR-0042。显示名、别名、称号、翻译名都可以改变,ID不要跟着变。不要把剧情含义编码到ID里,像 VILLAIN-ICE-QUEEN-07 这种命名在角色洗白后会立刻变成负资产。
“最新”和“正式”不是一回事
团队协作中,新稿不一定已经批准。建议单独维护 source version、canon status、生效章节/日期、approved by、last reviewed。这样就不会出现“美术用了最新一条,但那条其实是被否决的草稿”的事故。
最小可用人物页应该回答什么
一个协作者打开人物页时,最好不用读长文就能回答:这是谁;当前承担什么角色;正式视觉是什么;哪些事实最不能写错;最近发生了什么变化;深层资料链接到哪里;这些信息来自什么正式来源。
其他东西可以放到第二层。
什么时候根本不需要数据库
短篇、少量人物、单作者、几乎不需要筛选时,一份结构清楚的文档可能更快。数据库真正值得维护,是因为多人协作、时间跨度大、关系状态变化、反复导出授权/美术资料或需要持续连续性检查。
从最小结构开始。每加一个字段,都要有人能说出“这个字段会帮我完成什么工作”;每加一条 relation,都要回答“为什么它需要从两个方向查询或追踪”。
角色数据库的深度,不来自200个属性,而来自把几个关键区别保存清楚:稳定与变化、事实与推测、实体与关系、来源与摘要、当前状态与历史。把这些边界建对,故事规模越大,资料库反而越安静。
Sources
- https://www.notion.com/help/relations-and-rollups
- https://support.airtable.com/articles/3370222027-linking-records-in-airtable
- https://support.airtable.com/articles/8927322518-lookup-field-overview
- https://support.airtable.com/articles/5210666881-counting-records-in-airtable-linked-record-fields