3D Widget interaction not working in packaged game or in editor simulating multiplayer/dedicated server

In editor the Widget functions are fine for the Server. If dedicated server is enabled, or 2 player start. The Widget does not work for the client. By this I mean usually OnHovered is not firing and although the Button style may change to pressed no event is fired also Hovering has worked unexpectedly during play but still no event could fire.

The 3D actor & widget are setup for each player and populated at the beginning of the level. This has worked although I am unsure if on 4.18, for reference Wes Bun’s YouTube Tutorial; Lobby Menu, is setup and populated the same.

In a packaged Version of the The host can use the widget fine, although this has stopped sometimes after a client has managed to use it. The client has the same results as in editor however can use the button when the host hovers over that world space the clients button resides.

Has anyone any idea what could be the cause of this or any advice on how I should continue.
Much appreciated!

Are you setting players up with controllers … I assume yes. If so are you just using " Get player controller" Node and plugging that in with it indexed at 0.

If this is the case then I suggest using the “Get Owner” Node instead.

If you already did all this then I am out of idea’s

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://forums.unrealengine.com/unreal-engine/announcements-and-releases/1410408-unreal-engine-bug-submission-form

Thanks

Nice. Will do some more experimenting before I do, Im not so confident calling these things bugs with my experience. Thank you

On first Image; Can I set Replicated variable like this through remote switch Run on Client? So that the replicated variable is incremented by each client based on its current value set by the last to join?
Thanks for the Replies Guys!!! Keep it Unreal!

Yes they have controllers, Character with widget Interaction and pointer events etc. I tried using GetPlayerController instead of GetOwningPlayer. Results where the same, However I never tested a packaged version. My Client PlayerController Creates the widget and an actor and sets the widget. If I just Create Widget and add to viewport I get the intended results simulating multiplayer. Owner is left blank on creation of widget/actor - (If I set Owner, the client only sees Servers OnHovered, Not his own. No Event is fired from button press as tested with print string… Again all is fine with 3D version when not simulating multiplayer or in Packaged Single Player game. And All is fine during multiplayer If I add to viewport and Set inputmode;Game&UI rather than setting the widget onto an actor… And I just realized that points to the widget Interaction so as Im writing this I just modified my Set User Index Event - Which Gave everyone Index starting with the server from 0. To start with Server at 1… It worked!!! This is a runonClient Event with switch on Auth.
Img of Setting Virtual index & Creation of widget hooked up for 3D.

1 Like

sir, you just saved a life. thank you!
the same issue applies if you have more than 1 character in scene with widget interaction. It does not need to be a multiplayer game.

1 Like