Skip to content

rcsnyder/open-uefn-kit

v0.1.0MIT

A small, evidence-first agent kit for building and playtesting UEFN + Verse vertical slices with GitHub Copilot and Unreal MCP.

Open UEFN Kit

Describe → Slice → Build → Prove → Play → Learn.

Open UEFN Kit is an agent plugin for building small, complete UEFN + Verse gameplay slices.

It is for creators who want the AI to do more of the implementation work without turning the project into spaghetti.

It uses:

  • GitHub Copilot custom agents
  • Agent Skills
  • Epic's Unreal MCP in UEFN
  • a separate machine-verification pass
  • short human playtests for game feel

Community project. Not affiliated with Epic Games. Fortnite, Unreal Engine, UEFN, and Verse are trademarks of Epic Games.

The loop

YOU DESCRIBE PLAYER-VISIBLE BEHAVIOR
              ↓
            SLICE
freeze tiny acceptance criteria
              ↓
            BUILD
devices + Verse + editor changes
              ↓
            PROVE
compile + launch + runtime evidence
              ↓
            PLAY
you test the tiny human-feel gate
              ↓
            LEARN
observation → next tiny experiment
              ↺

The kit does not claim that an agent can automatically judge whether a Fortnite map feels fun.

It automates what can be proven by the machine. It leaves feel, clarity, pacing, and fun to a short human playtest.

First 10 minutes

1. Prepare UEFN once

Use UEFN 42.00 or newer.

In UEFN:

  1. Enable Python Editor Scripting.
  2. Enable the UEFN MCP Toolsets / Unreal MCP support exposed by your current UEFN build.
  3. In Editor Preferences, enable MCP auto-start if you want it always available.
  4. Keep the default endpoint unless you have a reason to change it: http://127.0.0.1:8000/mcp

See docs/setup.md if the MCP connection does not appear.

2. Install the plugin

VS Code

Run this command from the Command Palette:

Chat: Install Plugin From Source

Then paste the Git repository URL once this project is hosted.

For a local clone, register the clone with VS Code's chat.pluginLocations setting.

Copilot CLI

From a local clone:

copilot plugin install .

From GitHub after publishing:

copilot plugin install RCSnyder/open-uefn-kit

3. Open your UEFN project in VS Code

Open the UEFN project root, not this plugin repo.

Select the UEFN Loop agent.

Try:

Add a red button beside the exit.
When I press it, open the barrier and show EXIT OPEN for two seconds.
Do not change combat or scoring.

The agent should reply with a tiny slice, then delegate implementation and proof.

What success looks like

The final report should look roughly like this:

SLICE
Pressing ExitButton opens ExitBarrier and shows feedback.

NOT TOUCHING
Combat. Scoring. Spawn rules.

MACHINE PROOF
Verse compile: PASS
Play session: PASS
Runtime errors: none observed
AC-01 barrier transition: PASS
AC-02 feedback event: PASS
AC-03 human interaction clarity: HUMAN NEEDED

YOUR PLAYTEST
1. Press the red button once.
2. Tell me what you noticed before the door opened.
3. Tell me whether the change felt obvious and satisfying.

No fake green checks. If evidence is missing, the result is UNPROVEN.

Included agents

AgentPurposeMutation rights
UEFN LoopCoordinates one complete iterationDelegates
UEFN ExplorerFinds existing devices, Verse, state, and reuse pointsRead-first
UEFN BuilderMakes the smallest complete changeYes
UEFN VerifierCompiles, launches, inspects, and reports evidenceVerification-only

See docs/architecture.md.

Included skills

  • uefn-setup — connect the editor and recover MCP setup
  • uefn-slice — turn vibe-language into a tiny testable slice
  • uefn-mcp — discover and call current UEFN MCP tools safely
  • uefn-verse — maintainable Verse implementation rules
  • uefn-runtime-proof — machine proof and evidence labels
  • uefn-playtest-feedback — turn playtest observations into the next experiment

Skills stay small on purpose. Detailed material lives in references/ and loads only when needed.

Design rules

  1. One slice at a time.
  2. Devices first. Verse glue second. Bigger systems only when earned.
  3. Discover current MCP tools. Do not memorize stale tool names.
  4. Compile after a small meaningful edit.
  5. Do not issue overlapping Unreal MCP calls.
  6. Builder does not grade its own work.
  7. Machine proof is not human game feel.
  8. No speculative architecture.
  9. Prefer @editable dependencies over hidden scene coupling.
  10. Use Lore for the UEFN project. Do not add a second VCS over the same project folder.

Current status

0.1.0 is a robust starter, not a promise of full autonomous play.

The most important next test is real:

Can a fresh user install this, say “add a button that opens a barrier,” and reach a launched, compiled, evidence-reported UEFN session with minimal manual implementation?

That is the first acceptance test for this repo itself.

Validate this repo

python scripts/validate_plugin.py

The validator uses only the Python standard library.

Read next

License

MIT. See LICENSE.