# LumioGames：我要做一套百人在线的开源体素游戏框架

> 2026 年 8 月底我把重心扭回游戏引擎，开了 GitHub 组织 LumioGames，做一套开源的百人在线体素 Gameplay 框架，服务器端 Rust，玩法和热更 C#，渲染和物理明确不做、留给商业引擎。组织下 17 个仓库、12 个公开，引擎系用 Apache 2.0。2026 年 9 月 1 日我在自己机器上跑通了 100 个机器人加 1 个浏览器端同房，101 个会话每秒转发约一万条消息，服务器内存不到 60MB。

- 来源: https://blog.lumio.games/posts/lumio-games-announcement.html
- 作者: Lumio
- 发布: 2026-09-03
- 更新: 2026-09-03
- 标签: AI, LumioGames, 游戏引擎, Rust, 开源

---

做了十年游戏引擎，今年一个人出来创业。8 月底我把手上的活全停了，扭回老本行，做一套游戏引擎框架。

GitHub 开源组织 [LumioGames](https://github.com/LumioGames) 已经建好。

主页的定位我挂得很大：「每天 10B Token，开源一套百人在线的游戏引擎」。没那么多虚的，目标只有一条，我要在这个框架下的一个房间里，装下 100 个真人。

[![LumioGames 组织主页的「找组织」一节，包含四个社群的二维码，QQ交流群、LumioGame开发者社区、LumioEngine开发者社区、Workflow开发者社区](https://s3.lumio.games/lumio-blog/blog/lumio-games-announcement/orca-paste-1788421574576-01dda8b3-33d3-4565-95f7-ac10a18c49fb.png)](https://github.com/LumioGames)

首页顶上还有一句更准的定位。Lumio 不是引擎，它是一套 AI Native 的通用体素 Gameplay 框架，渲染和物理交给你手里的引擎，玩法、服务器和 Agent 的规矩放在这里。

现在它的版本号是我自己起的 `0.0.1`，跑得出来的只有一句 Hello World。

## 为什么不直接用现成引擎

Unity（游戏引擎）和 Unreal Engine 都成熟，一把抓过来能省掉无数麻烦。组织主页的「为什么做」那一节我写了三条，都是这十年真撞上的坑。

[![LumioGames 组织主页的「为什么做」一节，三张卡片分别是商业引擎的专用服务器太重、逻辑绑死在引擎上、三拨人三套工作流](https://s3.lumio.games/lumio-blog/blog/lumio-games-announcement/org-why.png)](https://github.com/LumioGames)

**商业引擎的专用服务器太重。** 每家引擎各带一套 Dedicated Server，历史包袱压着，调试、编译、测试对 Agent 都不友好。

**逻辑绑死在引擎上。** 想 Debug 一段规则，得先把一个庞大的引擎起起来。多开几个实例做服务器机器人压测，难度还要再翻一倍。这件事对人只是慢，对 Agent 是根本上不了手。

**三拨人三套工作流。** 技术、美术、策划各维护各的知识库和工具，中间没有统一规划，策划的活最容易被切碎。

还有第四条没写进主页，是我自己付的学费。AI 写得快，但没人盯边界。需求喂得准，几分钟就能吐出一大片代码。我在 BestCodex 和 Workflow 这两个项目上都吃过这个亏，代码涨得比我读得快，没过多久就变成一坨没人敢碰的东西。后来我写 Workflow 那套工作流，就是为了把需求、任务和验收标准都留底，让我知道 AI 到底改了哪儿、跑没跑通测试。

## 这套东西到底想干什么

主页上把它写成了一个等式，Idea 加 Lumio 加 Agent 加游戏引擎，等于一个完整的商业化游戏。

拆到能落地的层面，这其实就是一条完整的 AI Native 游戏研发管线。技术、策划、美术这三个职能，一个人带着 Agent 就能跑完。

[![LumioGames 组织主页的「核心优势」一节，标语是开源才是最大的 UGC 一个人就是一个团队，下面是技术、策划、美术、QA 四个职能的能力表](https://s3.lumio.games/lumio-blog/blog/lumio-games-announcement/org-moves.png)](https://github.com/LumioGames)

技术那一列是主干。客户端加服务器加游戏的完整开源方案、画面与逻辑分离、不绑定引擎迁得走、Rust 加 C# 的 DS 服务器扛 100 人同房、ECS 加 GAS 的设计架构、体素世界支持 UGC 和 AGC。策划那一列是给 Agent 用的配置工作流，网页即工具。QA 那一列是 AI 自动化测试框架。

美术那一列现在挂着一把锁，还没开工。锁着的原因很简单，我一个人手不够，先做能自己验的那部分。

「开源才是最大的 UGC，一个人就是一个团队」是主页上的原话。我信这句，但它现在还是一句待验证的话，不是已经跑出来的结论。

## 这套框架怎么切的

### 明确不做的四层

要能插到任何一个游戏引擎上，就得先把手缩回来。

[![LumioGames 组织主页的「明确不做」一节，资源管理层、资源转换器、渲染层、物理层四栏都标着不做](https://s3.lumio.games/lumio-blog/blog/lumio-games-announcement/org-bounds.png)](https://github.com/LumioGames)

资源管理层、资源转换器、渲染层、物理层，这四层我明确不碰，交给商业引擎或者 Godot 这类开源引擎。框架自己只管规则，也就是 ECS 加 GAS 的玩法架构、复制与预测回滚、体素世界的读写和流式加载。体素这一层是核心，UGC 和 AGC 都从这里长出来。

### 规则和画面劈开

拿一颗炸弹举例。服务器只要知道谁在哪一格放了炸弹、几秒后炸、炸到了谁，它的活就完了。那团火怎么画、有没有屏幕震动、粒子分几层，是客户端的事。

换 Unity 也行，换 Godot 也行，自己手搓一个渲染器也行，服务器这头的规则碰都不用碰。劈得这么开，AI 才好在没画面的环境里先把逻辑跑通。

`LumioGame` 现在跑通的第一个完整流程就是放一个方块，去查权限、扣资源、改地形，同一条命令重复发不会扣两次。这事听着小，但它等于把权限、资源、地形和防重复扣除（幂等）这四件事串在了一条链上。

### 四层依赖，箭头只往下指

上层调下层，下层压根不知道上层是谁。

| 层 | 仓库 | 语言 | 管什么 |
|---|---|---|---|
| LV.4 产品 | `LumioGame` | C# | 玩法语义、配置、内容、发布清单 |
| LV.3 Host | `LumioServer` | Rust + C# | 专用服务器进程、网络、Session、CoreCLR Hosting |
| LV.3 Host | `LumioClient` | C# | 连接、Replica、预测回滚、引擎适配、Headless Bot |
| LV.2 SDK | `LumioGameEngine` | Rust + C# | SDK 组装、Native 聚合、ABI 生成、共享 Loader |
| LV.2 Runtime | `LumioGameRuntime` | C# | ECS、Tick、Replication、GAS、持久化、热重载 |
| LV.1 Native | `LumioVoxelEngine` | Rust | VoxelWorld、Chunk、Mutation、Streaming、Snapshot |
| LV.1 Native | `LumioNativeCore` | Rust | 通用内核、Handle、Error、内存和 Job |
| 配置表 | `LumioConfig` | Python | 配表源文件、Schema、编译器和导出工具 |

服务器和客户端都只认 `LumioGameEngine` 打出来的那个 SDK 接口。每次打包算一遍哈希，启动时再对一遍，对不上就不算跑起来。

玩法和热更选 C#，我在 Unity 里攒的热更经验能直接搬过来；服务器基础设施和体素内核用 Rust，做 BestCodex 的时候尝过甜头，内存和延迟都比我预期的好。

### 100 个机器人，本机压了一遍

2026 年 9 月 1 日，录视频之前我先在自己机器上压了一遍。100 个测试机器人加 1 个浏览器端客户端，全进同一个房间往外发消息，我这边开着浏览器看 delta 刷屏。

| 口径 | 数字 |
|---|---|
| 活跃会话 | 101（100 机器人 + 1 浏览器） |
| delta 转发 | 约 9900 到 9977 条/秒 |
| queue_full 拒绝 | 0 |
| 服务器内存 | 56.9 到 59.2 MB |
| CPU 峰值 | 8.4%，16 核里吃掉 1.35 核 |

口径先定好，这只是我自己机器上的回环测试，不是线上承载量，不是 100 个真人，也不是完整玩法压测。真人有网络抖动、有丢包、有各种奇怪的操作，机器人一样都没有。

它能证明的只有一件事，框架站得住，可以往上加东西了。这是 LumioGames 的第一声 Hello World。

### 开源，Agent 和引擎随便挑

组织下目前公开了 12 个仓库。引擎主体走 Apache 2.0 协议，另外两个跑工作流的独立工具走 MIT 协议，可以直接拿去用。

*   **[LumioAgentSpec](https://github.com/LumioGames/LumioAgentSpec)**
    管的是 AI 编码 Agent 的规矩。项目的规则、知识和进度都落在仓库的 `.spec/` 目录里，Claude Code、Codex、Cursor 随便换，换了不用重新教一遍。里面有一条我很在意的硬规矩，写代码的 Agent 绝不能审自己的代码。这活算不算做完，全由 lint 和测试说了算。
*   **[workflow-plugin](https://github.com/LumioGames/workflow-plugin)**
    这是挂在另一头的工具。它负责让 Agent 顺手把需求单、bug 查重和线上复测也一并做了，省得人再去两头盯。

核心规则全在这些开源代码里，至于画面接哪个引擎，随便挑。

## 打到哪一关

我把进度当关卡记，主页上那张表现在长这样，

[![LumioGames 组织主页的「下一步」关卡表，1-1 Hello World 已过关，1-2 往上拼进行中，1-3 疯狂炸弹人待解锁](https://s3.lumio.games/lumio-blog/blog/lumio-games-announcement/org-stage.png)](https://github.com/LumioGames)

1-1 就是上面那 101 个会话。1-2 是连接、同步、同房跑通之后，剩下的模块一块一块加。1-3 是第一个完整的 Hello World 游戏，暂定叫《疯狂炸弹人》，先做网页联机版。

这段路刚起步，我一个人推不动。现在缺三类人。会用 AI 干活的工程师，把 Claude Code、Codex、Cursor 这类工具调教得动的人，还有愿意把这件事讲给更多人听的运营。组织主页上有 QQ 群和三个按话题分的飞书群，挑一个仓库的 Issue 动手或者直接提 PR 都行。

目标还是那个数字，一个房间 100 个人。 
\n
