Release: UE 5.8 support + install clarity (dev → main) - #58
Merged
Conversation
UE 5.8 changed FJsonObject::Values key from FString to UE::FSharedString. Iterating ->Values and using Pair.Key as an FString broke compilation (C2440/C2664). operator* yields const TCHAR* on both FString (5.7) and UE::FSharedString (5.8), so dereference the key at the two break sites: - MCPythonTcpServer.cpp: FString KeyString = *Pair.Key; - MCPythonHelper.cpp: FindPinByName(NewNode, FString(*Pair.Key), ...) A third site (MCPythonHelper_BehaviorTree.cpp) already used *Pair.Key. Verified: BuildPlugin succeeds on UE 5.8; change is source-compatible with 5.7 (standard FString API).
…and 5.8 (#56) The source .uplugin pinned "EngineVersion": "5.7.0". Under UE 5.8 this triggers an "incompatible plugin / load anyway?" prompt: - interactive editor: a modal blocks startup waiting for input; - -unattended: the prompt auto-answers "No" and the plugin is SKIPPED entirely (no TCP server, no actions) — so the plugin silently does not load on 5.8 from source. Removing the field skips the version-compatibility check, so the plugin loads cleanly on whatever engine opens it (verified 5.7 and 5.8). This only affects source / source-zip usage: RunUAT BuildPlugin -Rocket stamps the building engine's EngineVersion into each precompiled binary zip's .uplugin, so per-version binary distribution is unchanged. Verified on a live UE 5.8 editor (dev): plugin mounts, DLL loads, TCP server starts on :12029, E2E 254/254 pass, in-editor suite 280 pass / 0 errors (the lone failure root-caused to a stale asset left by an earlier crashed run, not a 5.8 regression).
…rror troubleshooting (#57) Users have been downloading the source-only zip, which makes Unreal try to compile the C++ module (needs Visual Studio) and fails with "designed for build 5.7.0 / rebuild fails / editor closes". Emphasize that most users want the precompiled `_<engine>_` zip matching their exact engine version, and add a WARNING that maps that exact symptom to "you grabbed the wrong asset."
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Promotes the UE 5.8 support work to
main.Included
fix(cpp)— UE 5.8FJsonObject::Valueskey type (FString→UE::FSharedString); compiles on 5.7 and 5.8.fix(plugin)— drop hardcodedEngineVersionso the plugin loads on any engine from source (it was silently skipped on 5.8 otherwise). Per-version binary zips still get the correctEngineVersionstamped by-Rocket.docs(install)— make precompiled-vs-source choice explicit + troubleshooting for the exact "designed for 5.7.0 / rebuild fails" symptom users hit.Verification (live UE 5.8 editor, on dev)
run_all280 pass / 0 errors (lone failure root-caused to a stale asset from an earlier crashed run, not a 5.8 regression)..upluginstampedEngineVersion 5.8.0.Offline gates (drift / routing / unwrap) green on all three PRs.