Skip to content

v0.21.1 — auto-updater crash hotfix + community PR batch

Choose a tag to compare

@tumourlove tumourlove released this 20 Jul 06:17

Hotfix for yesterday's v0.21.0 — most importantly for the auto-updater crash some of you hit within hours of the release (#90, #94). Sorry about that one; it was as bad as bugs get, and the reports were superb. Details below, but the short version: install this release manually (download the zip for your engine, close the editor, replace Plugins/Monolith/ in your project). Building from source? Just pull master.

Important

If you're on v0.20.3 or v0.21.0 you may see a "Monolith auto-update aborted: missing integrity marker" notification instead of an update prompt — that is deliberate. Your installed version's updater has a Windows bug that crashes the editor during install verification, so this release publishes its checksums under new names your version doesn't recognize, making it fail safe instead of crash. Update manually this one time; from v0.21.1 onward the updater verifies and installs normally. (Versions before 0.20.3 will auto-update to this release, skipping the integrity check.)

Fixed

  • CRITICAL — clicking "Install" on the update notification no longer crashes the editor on Windows (#90, #94). Since v0.14.7 the updater's integrity check called FPlatformMisc::GetSHA256Signature, which has no Windows implementation — the engine's generic fallback is a fatal assert, so the check killed the editor the moment it ran. It now uses a portable, NIST-vector-tested SHA-256 built into the plugin, and release checksums moved to Monolith-SHA256-v2-* marker names so older (broken) updaters can never trip over them again. Thanks @Alexbeav for the minidump-verified root cause (#90) and the fix (#91), and @SilkroadLabs for the parallel report (#94).
  • blueprint add_event_dispatcher now creates the multicast delegate member variable (mirroring the Blueprint editor's own flow), so CallDelegate / AddDelegate / RemoveDelegate can actually bind the dispatcher; remove_event_dispatcher cleans it up too. Thanks @Alexbeav (#84).
  • blueprint add_node / resolve_node with node_type: "SpawnActor" no longer crash the editor — the bare name aliases to SpawnActorFromClass instead of instantiating the legacy node whose title code null-derefs, and generic-fallback nodes report a safe title. Thanks @Alexbeav (#85).
  • blueprint add_timeline_track — the new track's output pin now actually appears on the timeline node and is connectable (display-track registration + node reconstruction, mirroring the timeline editor). Thanks @Alexbeav (#86).
  • blueprint batch_execute honors a top-level graph_name as the default for every op (per-op values still win) instead of silently editing the EventGraph. Thanks @Alexbeav (#87).
  • blueprint resolve_node dry-runs of delegate nodes now resolve the real signature pins instead of just execute/then/self. Thanks @Alexbeav (#92).
  • Array/object params sent as JSON-encoded strings now work everywhere — some MCP clients (Claude Code included) stringify complex tool arguments; the registry now recovers them centrally, so flat calls to delete_assets, save_packages, set_function_params, set_event_dispatcher_params, etc. stop failing with "array is required". Thanks @Alexbeav (#93).

Added

  • editor load_level fail-closed guards — refuses when the current map has unsaved changes that the unattended load would silently discard (override with dirty_policy:"discard"), and refuses when a stale in-memory copy of the target world would trip the engine's fatal "World Memory Leaks" assert. Thanks @Alexbeav (#89).
  • Paired MODAL_OPEN / MODAL_CLOSE editor-log telemetry with window identity and slow-task flag on UE 5.8+, so log consumers can tell a healthy modal from one still blocking the game thread. Thanks @Alexbeav (#88).

Huge thanks to @Alexbeav for an exceptional batch of contributions — nine merged PRs in this release, every one tested and documented to a standard that made review a pleasure.


Monolith-SHA256-v2-UE5.7: cce5ad20f43e466af8d54f5ef6a80b57c1fed5e689984ddb76f739daf11db3c4
Monolith-SHA256-v2-UE5.8: 75d1ec92d73fe6142827da8f157e433ae90b2e7596947a990406440247c64b1a
Monolith-SHA256-v2: cce5ad20f43e466af8d54f5ef6a80b57c1fed5e689984ddb76f739daf11db3c4