A plugin and modding framework that lets developers and players load custom code into Unity, XNA, FNA and MonoGame games.
m969/EGamePlay
A lightweight Unity combat and skill framework built on the Entity-Component pattern, with configuration via ScriptableObject or Excel tables.
- Stars
- 2,401
- Forks
- 544
- Open issues
- 1
- Last commit
- 26 days ago
What is it?
EGamePlay is a combat and skill framework for Unity games. It models combat entities, abilities, skills, buffs and status effects as components, so gameplay logic can be composed and extended without hard-coding each skill.
Skills can be configured in two ways: through ScriptableObject assets edited with Odin Inspector tooling, or through Excel tables exported to JSON and config classes. A skill is defined as an ability config plus an execution object that controls the on-screen presentation, and is attached to a CombatEntity and cast through a SpellComponent.
Version 3.0 refactors the runtime code around the EcsNode framework, separating logic from data and business logic from view logic. The repository includes an RPG demo and a skill execution-link editor scene.
Key features
- 01Entity-Component design separates skill logic from data and presentation.
- 02Skills and buffs can be configured with ScriptableObject assets or Excel tables.
- 03Includes a skill editor window and an execution-link debugging scene.
- 04Ships with an RPG demo scene.
- 05Can be ported into existing Unity projects or the ET framework.
Use cases
- Building skill and ability systems for action RPG or MMORPG combat.
- Implementing buffs, debuffs and status effects in a Unity game.
- Letting designers author skills in Excel tables or ScriptableObject assets.
Quick start
- 1
Open the project in Unity 2022.3.53f1 (version from README badge)
- 2
Run the RpgExample scene to see the RPG demo
- 3
Run the ExecutionLinkScene scene to debug and edit skills
Things to know
- Requires paid plugins (Odin Inspector, DOTween Pro, Animancer Pro) that the project uses.
- Targets Unity 2022.3.53f1 and is marked work-in-progress in the README.
- Porting to other Unity projects is not seamless and may need manual conflict fixing.
- Most documentation and discussion is in Chinese.
In collections
Topics
FAQ
- What is EGamePlay?
- A lightweight Unity combat and skill framework built on the Entity-Component pattern, with configuration via ScriptableObject or Excel tables. EGamePlay is a combat and skill framework for Unity games. It models combat entities, abilities, skills, buffs and status effects as components, so gameplay logic can be composed and extended without hard-coding each skill.
- Is EGamePlay free to use? What license does it have?
- EGamePlay is open source under the MIT license. Check the license terms before using it in commercial products.
- Is EGamePlay still maintained?
- Actively maintained. The last commit to EGamePlay was on Oct 12, 2026.
- What can I use EGamePlay for?
- Building skill and ability systems for action RPG or MMORPG combat. Implementing buffs, debuffs and status effects in a Unity game. Letting designers author skills in Excel tables or ScriptableObject assets.
- How do I install EGamePlay?
- Open the project in Unity 2022.3.53f1 (version from README badge) Run the RpgExample scene to see the RPG demo Run the ExecutionLinkScene scene to debug and edit skills
- Where can I get EGamePlay?
- The source code and installation instructions are on GitHub: https://github.com/m969/EGamePlay
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A turn-based 2D tactical fantasy RPG written in Python with pygame, open to community contributions.
Allocation-free async/await integration for Unity that makes Unity AsyncOperations, coroutines and events awaitable, running on PlayerLoop without threads.
A scripting solution that lets Unity and Unreal Engine games be written in TypeScript/JavaScript, with Lua and Python backends for Unity.
A uGUI-based in-game console for Unity that shows runtime logs and lets you run registered debug commands in builds.
A Model Context Protocol (MCP) plugin that lets AI coding assistants like Cursor, Claude Code and Codex control and query the Unity Editor.