# Glitchless for Unreal Engine

> Glitchless (glitchless.gg) is a free, open-source Unreal Engine 5 plugin. It records frame times with each hitch's cause (PSO compiles, garbage collection, level streaming), crashes and ensures with callstacks, player bug reports and where players quit, and gives coding agents the same data over MCP.

Website: https://www.glitchless.gg/unreal.html · Read the plugin guide: https://github.com/glitchless-gg/glitchless/blob/main/unreal/Plugins/Glitchless/README.md

A plugin that records how your Unreal game runs for the people playing it: every stutter with its cause, every crash with its callstack, and where players quit. Your coding agent reads the same data over MCP and fixes what they hit.

## What it records in an Unreal game

- **Stutters, with a cause.** Every frame is timed on the game, render and RHI threads and the GPU. Each hitch says what held it up: a pipeline state compiled on the spot, garbage collection, a map load, a streamed level or an asset load.
- **Crashes and ensures.** `UE_LOG` errors, ensures and Blueprint runtime errors such as Accessed None, with callstacks. A crash is written to disk as the game dies and sent on the next launch, with the frames before it.
- **Bug reports from playtesters.** A key (F8) opens a small box over the game. The report carries the player's note, a screenshot, the level and the last events.
- **Levels, deaths and quits.** Maps are levels on their own. Deaths, fails and quits feed the level funnel, death heatmaps and rage-quit detection.
- **Leaks.** UObject and actor counts and memory at each level load, so a count that only climbs stands out.
- **Your game's own events.** Track anything from C++ or Blueprints. Purchases add up to revenue, and install mode adds D1, D7 and D30 retention.

## Set it up

No code needed: everything is in Project Settings, and every call has a Blueprint node.

1. Unzip the [plugin release](https://github.com/glitchless-gg/glitchless/releases/tag/glitchless-unreal/v0.1.0) to `Plugins/Glitchless` and enable it.
2. Project Settings → Plugins → Glitchless: Service, Intake and Client Token.
3. Sessions show on your dashboard, from the editor and Development builds too.

Config/DefaultGame.ini:

```ini
[/Script/Glitchless.GlitchlessSettings]
Service=my-game
Intake=https://api.glitchless.gg
ClientToken=gl_pub_...
Privacy=Anonymous
bSendInDevelopmentBuilds=True
```

## Built for working with a coding agent

Glitchless's MCP server gives Claude Code, Codex, Cursor or any other agent the findings, frame times, errors and bug reports from your players, so it can find what to fix and check the result.

Any build measures itself for an agent: `MyGame.exe -glitchless-warmup=2 -glitchless-measure=10` prints frame-time percentiles, thread times and hitches with their causes as JSON, for a before-and-after comparison.

With Epic's Unreal MCP (UE 5.8, Experimental), the optional Glitchless Toolset adds `Status` and `Measure` tools while you Play In Editor.

## Tested

- Win64: a packaged Development build passes the end-to-end test 23/23, and Fab's BuildPlugin builds it with no warnings.
- macOS: the end-to-end test passes 23/23.
- iOS: a Development build passes 15/15 on an iPhone 16 Pro Max.
- Engine: UE 5.8.4.

## Not yet

- Android and Linux builds haven't been built yet.
- UEFN projects can't load plugins, so Fortnite islands aren't covered.
- On Mac and iOS, crash stacks name functions but not lines.

## Frequently asked questions

### Does it work in a Blueprint-only project?

Yes. The plugin is C++ source, so a Blueprint-only project becomes a C++ project once (Tools → New C++ Class). After that, setup is in Project Settings and every call has a Blueprint node.

### Is it free?

The plugin and the server are open source under the MIT licence. Glitchless Cloud is free for 5,000 play sessions a month, or you can run the server yourself with Docker. See [pricing](https://www.glitchless.gg/pricing.md).

### Can I use it in the Epic AI MegaJam?

Yes, on the Unreal Engine track. Teams get a free jam tier with code MEGAJAM26, and the [MegaJam page](https://www.glitchless.gg/megajam.md) has the line to declare it in your submission.

### How is it different from Unreal Insights?

Insights shows in depth why one session on your machine is slow. Glitchless shows which hitches real players hit, across every session, and hands that to your agent. They work well together: [Glitchless vs Unreal Insights](https://www.glitchless.gg/glitchless-vs-unreal-insights.md).

### What does it send about players?

Nothing that identifies them by default: no player ID, no device identifier, coarse device facts only. Install and full modes are opt-in, and [PRIVACY.md](https://github.com/glitchless-gg/glitchless/blob/main/unreal/Plugins/Glitchless/PRIVACY.md) lists every field.
