Skip to content

Source Attribution — 来源追溯与覆盖判断

这份文档回答三件事:

  1. 新分层下每一层主要来自 BigWorld 源头、KBEngine 参考实现,还是 theseed 自己扩展
  2. 当前文档覆盖的是“BigWorld 源头系统面”还是“KBEngine 轻量运行时参考”
  3. 哪些能力现在只是边界,不是 MVP 承诺

0.5 引擎实现对照与取舍

BigWorld 是怎么实现的

BigWorld 是 theseed 的源头设计参考,
价值不只在 runtime,更在系统层和工具链:
  - Space / AOI / Witness / Ghost
  - HA
  - 数据运维
  - 登录运维
  - Watcher / profiler / controlled shutdown

KBEngine 是怎么实现的

KBEngine 是重要参考实现之一,
参考价值主要在轻量运行时落地方式:
  - tick
  - entity
  - AOI / ghost / witness
  - migration

优缺点

BigWorld 的优点:
  - 系统面厚
  - 能作为 theseed 的长期系统边界源头

KBEngine 的优点:
  - runtime 落地更直接
  - 更适合作为 MVP 运行链路参照

共同缺点:
  - 如果不做来源追溯,文档容易误判“已经覆盖了什么”

theseed 的取舍

theseed 这份来源追溯文档的任务,
就是持续提醒读者:
  - 哪些来自 BigWorld 源头设计
  - 哪些来自 KBEngine 参考实现
  - 哪些是 theseed 新增
  - 哪些只是边界,不是当前承诺

1. 总判断

一句话总结:

theseed 不是 KBEngine 的重写版,
也不是 BigWorld 的逐项搬运。

theseed 的文档结构应以 BigWorld 的 MMO 服务端系统面为源头,
以 KBEngine 的轻量运行时落地为参考,
再明确 theseed 自己的现代化工程取舍。

但要区分两层:

MVP 可落地起点
  - 借鉴 KBEngine 的轻量运行时参考实现

长期系统边界
  - 明确继承 BigWorld 的 HA、数据运维、登录运维、控制面、load feedback、world system

2. 新增基础设施边界

仓库布局与构建

monorepo / vcpkg / C++23 这组约束主要是 theseed 自己的设计选择,
BigWorld 和 KBEngine 只提供组织形态上的参考,不提供现成的现代仓库模型。

MachineAgent / Host Ops

这部分的参考来源是 BigWorld bwmachined + KBEngine machine。
theseed 的收敛方式是:
  - 保留节点代理
  - 保留本机进程编排
  - 保留节点摘要上报
  - 但把全局控制面和诊断面分离出去

3. 分层来源

3.1 0-foundation

主要来源:

theseed 自己定义

说明:

审计口径、分层原则、MVP 基线
都不是 BigWorld / KBEngine 直接提供的现成文档结构,
而是这轮重组为避免边界混乱而补出的治理层。

3.2 1-runtime-model

主题主要来源说明
Tick 5 阶段分段KBEngineEventDispatcher::processUntilBreak 风格最清晰
Base / Cell 双体BigWorldKBEngine 提供更轻量的继承实现
IORuntime / Reactor-Completion 分层theseed老引擎只有事件循环/ poller 语义,没有这层总抽象
Merkle diff / semantic compatibilitytheseed老引擎多为单 digest 对比,缺少分层差异定位
PropertyBlock 连续内存theseed用于替代 Python dict 属性布局
DirtyMask 位图KBEngine 思想 + theseed 实现脏标记概念来自现有引擎,位图化是 theseed 收敛
TimerWheel通用算法 + theseed 选型非 BigWorld / KBEngine 原生
对象池模式KBEngineOBJECTPOOL_POINT 一类模式延续

判断:

这一层是“BigWorld 实体模型 + KBEngine 主循环拆解 + theseed 内存改造”。

3.3 2-replication-and-space

主题主要来源说明
AOI 十字链表 / RangeTriggerBigWorldKBEngine 提供轻量继承实现
Witness / Ghost / real-ghost 权威BigWorldKBEngine 继承但简化
EntityCall / Mailbox 思想BigWorldKBEngine 做了单向化简
迁移窗口与路由期KBEngineGhostManager 路由窗口表达更直接
Runtime Data Plane 不走 MQtheseed基于两套引擎直连模式作出的明确判断
AoI update scheme / load boundsBigWorldKBEngine 基本没有等价系统面
BSP rebalance / offloadBigWorld是和 KBEngine 拉开差距的关键层

判断:

这一层是当前最“BigWorld 对齐”的核心层。

3.4 3-cluster-and-availability

主题主要来源说明
Reviver / supervisor 思想BigWorldKBEngine 较弱
BackupHash / BackupHashChainBigWorldKBEngine 基本缺失
Service Fragment / Retire / Controlled ShutdownBigWorldKBEngine 没有成体系实现
EntityProfiler → load feedbackBigWorld是 BigWorld 的系统级差异点
当前 MVP 只保留边界theseed不把远期 HA 伪装成当前能力

判断:

这一层几乎完全是按 BigWorld 服务端系统层来立边界。

3.5 4-data-and-ops

主题主要来源说明
属性级存储映射思想BigWorld比 KBEngine 的 BLOB 化更完整
MySQL 主路径的现实起点KBEngine更适合 MVP 可落地
LocalArchiveStore / SecondaryDB 语义BigWorld重点是职责,不是具体后端
snapshot / transfer / consolidate / sync / repairBigWorld 工具链transfer_db / consolidate_dbs / sync_db
JSON、多后端、Schema 自动迁移theseed现代化扩展,不是照抄旧引擎

判断:

这一层是“BigWorld 工具链边界 + theseed 现代存储增强”。

3.6 5-access-and-control-plane

主题主要来源说明
Login Challenge / statusCheck / ban 清理BigWorld登录面最重要的系统参考
LoginApp / Gateway 接入基线BigWorld + KBEngine旧引擎都只给了较薄的接入面
MessageBus / Cross-Realmtheseed两套引擎都没有真正的现代 MQ 控制面
Redis / Async / ConfigKBEngine 基础 + theseed 扩展KBEngine 只提供基础支撑
Watcher 式控制面抽象BigWorld但实现栈改为这些ed 自己设计
OTel / Telemetry / Diagnosticstheseed现代化观测面扩展,脚本执行态调试单独拆出

判断:

这一层不是单纯“云原生外挂”,
而是把 BigWorld 登录运维面与 Watcher 控制面重新放回系统边界。

3.7 6-world-and-game-framework

主题主要来源说明
Physics / Navigation / Controllers通用设计 + theseed两套引擎可参考但并非同一抽象
World Streaming / Compiled SpaceBigWorld这是 BigWorld 世界系统的重要补齐
Built-in Entitiestheseed更偏游戏框架层
Lifecycle / Script BindingBigWorld / KBEngine 思想 + theseed 收敛钩子表与自动绑定是整理结果

判断:

这一层主要是“世界系统边界归位”,
不再把它们笼统叫做 gameplay。

3.8 7-scripting-and-client

主题主要来源说明
热更新基础思路KBEngine reload + theseed 扩展L1-L4 分级是 theseed 自己定义
Exposed 安全边界KBEngine客户端调用授权边界延续
脚本执行态调试theseedBigWorld / KBEngine 主要是 traceback、watcher、reload,不是成体系断点调试
多端代码生成 / Unity 优先theseed两套老引擎都没有现代 codegen 结构
脚本安全层级theseed几乎完全新增

判断:

这一层继承较少,更多是 theseed 自己的产品化层。

4. 覆盖结论

4.1 以 BigWorld 为源头标尺

当前文档已经明确覆盖设计边界:

  - Space / AOI / Witness / Ghost / EntityCache
  - Channel / Bundle / Runtime Data Plane
  - BackupHash / 热备恢复链
  - SecondaryDB / LocalArchiveStore
  - Data Ops Toolchain
  - Login 运维面
  - Watcher 式控制面
  - Runtime profiler → 调度反馈
  - BSP / Load Bounds / Offload
  - World Streaming / Compiled Space

但要强调:

这些很多仍然是 Phase 2 / Phase 3 边界,
不是 MVP 实现承诺。

4.2 以 KBEngine 参考实现校验 MVP 运行链路

当前文档已经覆盖:

  - 单线程 tick 主循环
  - Base / Cell
  - AOI / Witness / Ghost
  - EntityCall
  - 属性同步
  - 单 Realm 持久化主路径
  - Unity 优先的客户端主链路

所以如果目标是:

做出一个比 KBEngine 更清晰、边界更现代的运行时核心

当前文档已经够用了。

5. 当前能力判断

能力域覆盖状态备注
Base / Cell / Tick / AOI / Ghost / Witness已覆盖可作为 MVP 运行链路
EntityCall / Property Replication / Migration已覆盖口径已统一到复制与空间层
SingleCell / Static Partition 边界已覆盖Phase 1 / 2 清晰
BigWorld 级 BSP / grow-shrink / auto rebalance已定义边界非 MVP
主持久化 / 数据定义 / 查询已覆盖MVP 可落地
LocalArchiveStore / SecondaryDB已定义边界非 MVP
BackupHash / 热备恢复链已定义边界非 MVP
Login Challenge / 登录运维面已覆盖边界BigWorld 对齐点
Watcher / 控制面 / 在线命令已覆盖边界不再混在 OTel 里
Runtime profiler → 调度反馈闭环已覆盖边界BigWorld 关键差异

6. 总结

真正来自 BigWorld 源头设计的最大贡献,主要体现在四层:

2-replication-and-space
3-cluster-and-availability
4-data-and-ops
6-world-and-game-framework

真正来自 KBEngine 参考实现的现实落地价值,主要体现在两层:

1-runtime-model
以及 2-replication-and-space 的 MVP 起步形态

theseed 自己新增最多的层,则是:

5-access-and-control-plane
7-scripting-and-client

但这轮重组后的关键变化是:

这些新增能力不再漂浮在旧目录里,
而是被放回了以 BigWorld 为源头、以 KBEngine 为参考后更合理的系统层级。