面向 Unity、XNA 等游戏的插件与模组框架,用于加载自定义代码。
m969/EGamePlay
基于实体-组件模式的轻量 Unity 战斗与技能框架,支持 ScriptableObject 或 Excel 表格配置。
- Star
- 2,401
- Fork
- 544
- 未关闭 Issue
- 1
- 最近提交
- 26天前
这是什么?
EGamePlay 是一个用于 Unity 游戏的战斗与技能框架。它将战斗实体、能力(Ability)、技能、buff 和状态效果拆分为组件,便于组合和扩展,无需为每个技能单独硬编码。
技能可以通过两种方式配置:一是使用 ScriptableObject 资源,配合 Odin Inspector 编辑;二是使用 Excel 表格,导出为 JSON 和配置类。一个技能由能力配置和负责表现的 Execution 对象组成,挂载到 CombatEntity 上后,通过 SpellComponent 释放。
3.0 版本基于 EcsNode 框架重构了运行时代码,将逻辑与数据分离,并将业务逻辑与视图逻辑分开。仓库中提供 RPG 示例场景和技能执行链路调试编辑场景。
核心功能
- 01采用实体-组件设计,将技能逻辑、数据与表现分离。
- 02技能和 buff 可使用 ScriptableObject 资源或 Excel 表格配置。
- 03提供技能编辑窗口和技能执行链路调试场景。
- 04附带 RPG 示例场景。
- 05可移植到已有 Unity 工程或 ET 框架中。
适用场景
- 为动作 RPG 或 MMORPG 开发技能与能力系统。
- 在 Unity 游戏中实现 buff、debuff 和状态效果。
- 让策划通过 Excel 表格或 ScriptableObject 资源配置技能。
快速上手
- 1
使用 Unity 2022.3.53f1 打开项目
- 2
运行 RpgExample 场景查看 RPG 示例
- 3
运行 ExecutionLinkScene 场景进行技能调试编辑
使用前须知
- 项目使用了需付费的插件(Odin Inspector、DOTween Pro、Animancer Pro)。
- 面向 Unity 2022.3.53f1,README 标注为开发中(work-in-progress)。
- 移植到其他 Unity 工程并非无缝,可能需要手动处理冲突和缺失。
- 大部分文档和讨论以中文为主。
收录于专题
标签
常见问题
- EGamePlay 是什么?
- 基于实体-组件模式的轻量 Unity 战斗与技能框架,支持 ScriptableObject 或 Excel 表格配置。 EGamePlay 是一个用于 Unity 游戏的战斗与技能框架。它将战斗实体、能力(Ability)、技能、buff 和状态效果拆分为组件,便于组合和扩展,无需为每个技能单独硬编码。
- EGamePlay 可以免费使用吗?用的什么许可证?
- EGamePlay 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- EGamePlay 还在维护吗?
- 活跃维护中。EGamePlay 最近一次提交是在 2026年10月12日。
- EGamePlay 适合用来做什么?
- 为动作 RPG 或 MMORPG 开发技能与能力系统。 在 Unity 游戏中实现 buff、debuff 和状态效果。 让策划通过 Excel 表格或 ScriptableObject 资源配置技能。
- EGamePlay 怎么安装和运行?
- 使用 Unity 2022.3.53f1 打开项目 运行 RpgExample 场景查看 RPG 示例 运行 ExecutionLinkScene 场景进行技能调试编辑
- 在哪里获取 EGamePlay?
- 源代码和安装说明在 GitHub 上:https://github.com/m969/EGamePlay
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一款用 Python 和 pygame 开发的 2D 回合制战术奇幻 RPG 游戏,欢迎社区共同开发。
面向 Unity 的零分配 async/await 集成库,让 AsyncOperation、协程和事件可直接 await,基于 PlayerLoop 运行。
让 Unity 和 Unreal 游戏可以用 TypeScript/JavaScript 编写逻辑的脚本解决方案,Unity 版还支持 Lua 和 Python。
一款基于 uGUI 的 Unity 游戏内调试控制台,可在构建版本中查看日志并执行调试命令。
一个 MCP 插件,让 Cursor、Claude Code、Codex 等 AI 助手直接操作和查询 Unity 编辑器。