Overworld Enginev3.2MIT

一套 TypeScript 架构,交付跨平台 3D RPG。

27 个独立发布的 TypeScript 包,覆盖世界、玩法、AI、联机与 UI。 同一套领域系统运行在浏览器、Tauri、Capacitor、微信小游戏、Telegram Mini App 和 Node.js 服务端;平台差异收敛到 bridge 与 adapters。

pnpm add @overworld-engine/core @overworld-engine/quest

Web · Tauri 2 · Capacitor 8 · 微信小游戏 · Telegram Mini App · Node.js

game/engines.tspublic API
import {
  createConditionRegistry,
  createEffectRegistry,
  gameEvents,
} from '@overworld-engine/core'
import { createQuestEngine } from '@overworld-engine/quest'

const conditions = createConditionRegistry()
const effects = createEffectRegistry()

effects.register('wallet.addGold', ({ amount }) => {
  wallet.add(Number(amount))
})

export const quests = createQuestEngine({
  quests: QUESTS,
  conditions,
  effects,
  events: gameEvents,
})
event flowplayer:moved → quest:completed → reward → UI
01 / COMPOSITION

应用拥有组合权。

Overworld 不提供一个接管全局的 Engine 单例。内容是可序列化数据,行为在注册表, 跨系统事实走类型化事件;你的应用是唯一的组合根。

01Content任务、对话、物品定义
02Registry条件与效果实现
03Engine独立状态机与 store
04EventBus跨系统事实传播
02 / PACKAGE MAP

从一个系统开始,而不是从全家桶开始。

每个包都有明确的公开入口和 peer 边界。大多数领域包只依赖@overworld-engine/core

01

基础与世界

core · content · scene · environment · loading · minimap

事件、注册表、内容清单、玩家相机、环境模拟与区域加载。

02

玩法状态机

dialogue · quest · inventory · achievements · tutorial · ai

与视觉实现无关的内容引擎、进度系统、寻路与角色行为。

03

运行与交付

input · audio · net · relay · analytics · platform · notifications

输入仲裁、音频总线、多人同步、遥测、平台生命周期与反馈。

04

界面、工具与适配

ui · devtools · editor · inspector · test-kit · adapters-savefile · adapters-steam · adapters-weapp

游戏 HUD、内容校验、场景编辑、测试,以及存档、Steam 和微信适配。

03 / REPOSITORY

文档里的能力,在仓库里都有对应证据。

27
独立发布包固定版本组,标准 ESM 与类型声明
11
可运行示例Web、桌面、移动、微信、Telegram 与权威服务器
CI
边界与文档检查构建、类型、测试、依赖方向和公开 API 可发现性
0
内容内置框架提供机制;游戏保留自己的世界观与规则
04 / DOCUMENTATION

从你现在的问题进入。

先完成一条可运行路径,再深入对应的参考文档。

GET STARTED

先跑通 Starter,再接入目标平台。

从 Web 原型开始,沿同一套领域架构交付 Tauri、Capacitor、微信小游戏与 Telegram Mini App。

打开 Starter 指南