Skip to content

UE5CEDumper v2768

Latest

Choose a tag to compare

@github-actions github-actions released this 07 Aug 15:08

UE5CEDumper — Unreal Engine 4/5 dumper (C++ DLL + Cheat Engine bridge + Avalonia UI).

Self-contained Windows x64 build (Native AOT). No .NET runtime install required.

What's New since v2507

Mostly a correctness release. The headline feature is browser-style Back/Forward in the Live Walker, but the bulk of the work is fixing things that reported the wrong answer — Cheat Engine scripts that blamed the DLL for problems it did not have, a coordinate library that never actually saved, and a group-scan row that showed one match while hiding the rest.

Live Walker — Back and Forward, like a browser

  • Forward navigation, and Back that actually puts the view backAlt+← / Alt+→, mouse buttons 4/5, and the dedicated browser keys all work. Going back no longer just changes the object: it restores what you were looking at — your multi-selection and the row you had scrolled to — so returning from a detour lands you where you left, not at the top of the list.
  • The forward stack behaves — It is invalidated the moment you navigate somewhere new, so you can never step "forward" into a branch you have abandoned.

Cheat Engine scripts — stop guessing, start reading

Every generated CE script talks to the DLL through a mailbox. When that went wrong, the scripts used to guess at the reason, and they guessed badly enough to send people looking in the wrong place.

  • A "10 second" timeout was really 155 seconds — The wait loop counted sleep(1) calls as if each were a millisecond. In Cheat Engine's Lua engine sleep(1) actually takes about 15.5 ms, so every timeout in every script froze the Lua window for over two and a half minutes. They now measure a real deadline. Verified in-game: 10.6 s on a stopwatch.
  • The error message now names the real cause — Four separate messages asserted things that were simply not true: that the DLL was old (it was current), that the address was stale (Cheat Engine was attached to a dead process), that the mailbox was busy (the game had exited). Each one now distinguishes "cannot read" from "read something wrong", and the most common cause — CE having opened the process before the DLL was injected — is now fixed automatically rather than reported.
  • Error codes from the DLL were being ignored entirely — Nine script generators tested if state < 0 then … for failure, but read the value as unsigned, so -1 came back as 4294967295 and the check could never fire. Every DLL-side failure was silently reported as success. Now fixed everywhere, including the hand-written helper scripts and the bundled .CT.
  • A reminder row you will actually see — Mailbox commands run on the game's own thread, so while the game is paused or alt-tabbed nothing happens and scripts time out. Worse, a timed-out command is not cancelled — it lands whenever the game next ticks, so clicking again queues a second one. Pushing records to CE now adds a short note saying exactly that, and saved .CT files carry it too.

Teleport — the coordinate library now actually saves

  • Your saved coordinates persist — The library introduced in v2507 was not being written to disk at all. Fixed, so a list survives closing the app.
  • The CE picker is fixed too — Its map guard now re-reads the current map at teleport time rather than when the window opened, so it stops warning you about a level you already left.

Value Search — a group row no longer hides its other matches

  • See every field a slot matched, not just one — A group-scan row can only display one field per slot, but a slot often matches many. The row now shows a (+35) style count, and an All fields button lists every one by name — each still usable for Live Walker, address copy, pivot and Locate-in-GWorld.
  • The displayed field is now the sensible one — It picks a filter-matched field first, then a sibling from the same struct, instead of whichever leaf happened to be first. Four separate "the scan missed my field" reports all turned out to be this.
  • Derived-class fields are no longer dropped — An internal per-slot cap of 8 silently discarded matches on games with deep class hierarchies. It is now configurable and defaults far higher.

Housekeeping that had been quietly costing you disk and clarity

  • Compress old logs in place — A one-click button on the System tab (and an opt-in startup sweep) LZX-compresses archived logs. Measured in-app: 85.1 MB → 6.5 MB across 180 files. Timestamps are preserved, so the existing 21-day purge is unaffected and the files stay readable by grep and "Open Log Folder".
  • Per-game files have their own folders — Snapshots and bookmarks moved out of the app-data root into Snapshots\ and Bookmarks\, migrated automatically on first run. Snapshots expire after 21 days; bookmarks never do, because hand-placed navigation is not something you can regenerate.
  • Clean up proxy DLLs left behind by uninstalled games — Proxy Deploy can now find orphaned proxies, write a plain-text report first, and then remove them. Files go to the Recycle Bin only, and empty folders are pruned leaf-to-root in a way that lets the OS refuse if anything is still inside.

Engine support

  • Pre-UE4 games are now refused by design — UE3 titles used to fail in confusing ways. They are detected and rejected with a clear message.
  • Object-array detection fixes — A 32-byte FUObjectItem stride was missing from the candidate list, and the multi-module fallback could anchor to the wrong module. Both surfaced on a purpose-built UE 5.4 sample project that now ships in the repo for regression testing.

Also fixed

  • Roughly fifty smaller defects from a full audit of everything added since the last one, in two categories that kept recurring: the UI reporting something the code did not actually do, and one failure being turned into a worse one.
  • Two Cheat Engine exports produced output CE could not load.
  • Dump Explorer would "match" when you loaded a dump from a different game, instead of telling you.
  • A DLL shutdown path could hang on a pipe reader; a proxy DLL could invert the Windows loader lock; three instruction-decode loops mistook [rbp-8] for a RIP-relative operand.

Honest limits

  • The DumperTest sample project (UE 5.4) is in the repo as source; the packaged build is not distributed.
  • Log compression's startup sweep is off by default — turn it on in Options if you want it.
  • The coordinate library and several teleport features remain behind the Experimental toggle, because they write to live gameplay objects.