UMG PreConstruct does not match Play

Hey everyone,

I’ve been learning some UMG practices from the Generic Shooter (huge thanks to Michael Allar for making some amazing projects) to make a Main Menu for my project and I’m trying to sort my game modes with multiple vertical boxes nested in a widget switcher.

I wanted to keep it simple and read the potential game modes from a data table (like in GS) then sort the modes using text arrays to determine how to distribute the buttons to the necessary vertical boxes.

Here’s my code (sorry for the mess, but I tried multiple concepts and all produced the same result)::

The code worked perfectly during the PreConstruct process (shown below)

But then when I ran a PIE session I got this::

And when running in a packaged build, nothing shows up at all.

Right now I’m only getting 30 FPS when running that particular level, but I figured that wouldn’t be an issue.
(I understand that you can have issues with blueprints executing in the correct order)

I’ve also tried running the code outside of a function and have also called the function as impure and non const, but no changes occurred.

I know for a fact there aren’t any typos in the text arrays or the code wouldn’t fire in PreConstruct.

If it matters at all, I’m streaming in two levels on play (which is when this widget is constructed) so my first thought is that it’s a performance issue, but I want to be sure before I go tearing up my level.

Any help would be appreciated.

Thanks

Have you tried running the working code via the Construct Node, and not the PreConstruct node?

Yeah I’ve tried both nodes (see my second screenshot), but the results are exactly the same.

Hello,

We’ve recently made a switch to a new bug reporting method using a more structured form. Please visit the link below for more details and report the issue using the new Bug Submission Form. Feel free to continue to use this thread for community discussion around the issue.

https://epicsupport.force.com/unrealengine/s/

Thanks

Thank you so much!

Creating an answer to mark this issue as resolved. Thank you Jeff for pointing me to the proper location!