Pawn defaults discarded in packaged game

I have my own game mode where the default pawn is set to the class PawnChild. That class has a parent class PawnParent. Let’s say there is a string property “Name”. Its value in PawnParent is “Mr Smith” while in PawnChild it’s overridden with “Jimmy”. On PawnParent’s BeginPlay its value is printed to the log.

When I run PIE or standalone then the printed value is “Jimmy” as expected. However in a packaged release the log says “Mr Smith” even tho a PawnChild is created at the playerstart (confirmed by logging self display name).

The packaging log contains several warnings like this:

CreateExport: Failed to load Super for Function MyClass.MyClass_C:MyFunction; removing super information, but keeping function

No idea what’s going on there (already opened a question for that) but none of the classes mentioned there have any relation to the pawn.

Branch: Binary
Build version: 4.4.1-2270799

I have the feeling that not everything is recompiled while packaging… For example when I change something and see a different behavior then I change things back to confirm repro. However sometimes changing back the logic does not break things again.

It’s hard to explain without going deep into the actual implementation but I do have a distinct feeling that the weird inconsistencies I’m seeing is due to old stuff lingering around in the packaged game.

Is there a cache or something which I could delete to make sure no old data is reused? “Full build” is enabled in project settings, deleted the target folder too and even removed the Saved and Intermediate folders from the project.

I’m having this problem too – with 4.15.1 packaging a VR game. Did you ever find a solution or work-around?

If I remember correctly before packaging I explicitly set each property in the construction script as well.