3d widget text not appearing at runtime

Having a really annoying issue where a 3d widget which displays an item’s name, won’t become visible at runtime, BUT when I spawn it directly with a button input or destroy the actor and respawn it (in this case when; I put it into my inventory, and then take it out again) the widget will appear how i want it.

Basically I have an item BP class with a child widget component and a sphere collision volume which recognize when the player pawn is in range, and it sets the widget to visible. I get the “item name” and set it to a text binding in the widget through an enumerator switch in the construction script of the item. for instance, the enumerator will run “potion” get the display name potion, and then set that to the widget’s text render binded variable.

When player pawn on overlap enters the collision volume it should become visible, and when it ends overlap, invisible.

For some reason this isn’t happening if the item is place in the level through the editor, yet if I spawn the item in the widget becomes visible and invisible just as expected.

I would love to know what might be causing an issue like this. I’m considering having the item simply spawn a duplicate of it’self if placed in level, and then have it delete the original not working version- but this seems a bit redundant.
I feel like this is a lack of knowledge on my part, and probably has to deal with something in the way 3d widgets are handled, or unreal’s methods of dealing with spawned actors versus manually placed ones.

Did you find a fix for this?

not really. I change the game design so that the actors are never placed in the game (they are always spawned from crates) and that works. As far as a solution to the problem- no, I haven’t found a fix.