Skip to content

OpenForge v0.1.2

Latest

Choose a tag to compare

@satyajiit satyajiit released this 04 Jun 19:03

OpenForge v0.1.2 — LEGO Batman: LotDK gets free roam + more unlocks

Three new LEGO Batman: Legacy of the Dark Knight features (now 26 total), plus a reusable reflection-resolved freeze capability in the engine. The 007 First Light DLL now ships in the release bundle alongside the Batman one.

Added — LEGO Batman: Legacy of the Dark Knight

  • Free Roam: Any Two Characters. Unpins Batman from party slot 1 by freezing the BatmanGroupTag FName to None on the live player-preferences object, so both party slots become freely swappable from the character wheel. Captures the original tag and restores vanilla pinning on toggle-off. Pure live-memory write — no UFunction call.
  • Unlock All Gold Bricks. Marks every gold-brick collectible complete in one click by granting the PROG_GoldBricks progress set. Completion-gated content and the collectible tally update immediately.
  • Unlock All Vehicles. Grants every drivable vehicle (Batmobiles, bikes, stolen sports cars — base game + DLC packs), skipping the scripted _OnRails set-piece vehicles.

All three resolve through the engine's own reflection (class path + property name + the same SetGameProgressValue / live-property paths the existing unlocks use) — no AOB signatures, no baked offsets.

Engine

  • Reflection-resolved freeze_for_matching. Freeze features can now target a property by name (field_property) instead of a raw byte offset — the write offset is resolved via UE5 reflection per matched instance and self-heals across game updates that shift struct layout. This is what drives Free Roam, and it's reusable for any future "set a named property across all instances of a class" feature.

Fixed

  • UFunction grants no longer time out. Completed the no-baked-address pass on LEGO Batman: ProcessEvent and FName::ToString are now resolved structurally at attach (UObject-vtable universal-slot match + .text prologue signature), joining the self-healing GUObjectArray from v0.1.1. The game update had relinked ProcessEvent (+0x50), so the game-thread executor armed the wrong address and every unlock/grant reported "engine not dispatching ProcessEvent." All three engine globals now adapt to the live build — no hardcoded RVAs anywhere.

Packaging

  • The 007 First Light injected DLL (glacier_007_dll.dll) now ships in the release zip and as a standalone download, alongside openforge.exe and batman_lod_dll.dll.

Docs

  • Refreshed the LEGO Batman module README (26 features) and corrected the "engine RVAs are pinned" wording to reflect the v0.1.1 self-healing structural discovery (no baked addresses).

Install

  • Zip — download openforge-v0.1.2-windows-x64.zip, extract all files into one folder, run openforge.exe as administrator.
  • Individual — download openforge.exe plus the DLL(s) for the game(s) you play, and place them in the same folder (the trainer loads each game's DLL from next to its own .exe).

Then launch the game, load into actual gameplay (not the menu), and hit Attach.

Requires Windows 10+ (64-bit), administrator. Single-player offline scope only. No anti-cheat-protected games.

Full changelog: v0.1.1...v0.1.2