跳转至

放置规则

新增能力进入哪个层级,取决于它是否必须被内核识别、是否足够基础、是否可选、是否包含项目语义。

基础规则

  • 框架启动、生命周期、注册、事件、绑定、插件入口:放 kernel
  • 需要 kernel 直接识别的协议、基类、类型关系工具和诊断结构:放 kernel
  • 纯算法、纯数据、通用输入、通用运行时服务、状态机等稳定标准能力:放 standard
  • 战斗、网络、存档、流程图、能力、交互、行为树、领域模型等可选但通用的内置能力:放 addons/gf/extensions/<name>
  • SDK、地形生成器、画笔、跨扩展组合、项目适配、业务偏强工具:放项目代码或 addons/gf 外的独立插件。

判断顺序

当一个新能力难以归类时,先问它是否必须被 kernel 直接引用。如果是,抽出最小内核契约放入 kernel,具体实现仍可在 standard 或扩展中。

若不是,再问它是否足够基础到所有项目都应默认理解。如果答案是否定的,不进 standard

最后判断它是否足够通用、抽象、可独立启用,适合成为 GF 内置扩展。跨扩展组合和项目语义始终留在项目层或独立插件中。