I’ve been building a mobile game for a few months now, and had to switch to the source build of Unreal Engine to get multiplayer to work for iOS. Since doing so, my mobile joysticks have been broken:
If I run multiple clients from the editor to test multiplayer, the joysticks on all of my clients only control one client. So if I use the second client’s joystick on their screen, it moves my first client’s character. And when I use my first client’s joysticks, it works on my first client as well. For some reason my mobile joysticks don’t know which character they’re supposed to be affecting, and default to the first client.
I had my coworker run the same test on his project except his unreal engine is built from the epic games launcher and his works fine, each character joystick moves their own character.
I also used previous and separate projects to test this, and they’re all broken too, even though I haven’t touched them since building from source. (Although I never tested their joysticks with the epic games launcher build)
I’m fairly sure that this is a bug related to the source build of unreal engine, but I have no clue how to fix this or where to find a setting or line of code to tweak to make the joysticks work on their owning player screens.
I have also created a new player controller which my coworker doesn’t have, wondering if this messed something up along the way, and slightly hopeful there’s just something in the player controller I need to enable that just fixes this.
(And if you’re wondering why I haven’t caught this sooner, joysticks can be toggled in my game if you choose not to use tilt to turn, so I haven’t really been working with them other than making them optionally available through the settings)
If anyone knows anything about how the mobile joysticks are coded or where to find the files in the engine to make modifications that would be great. I’ve been trying to find some sort of setting I might be able to tweak in the Config files but it feels like I’m searching for a needle in a haystack that isn’t made out of hay, but instead made of unintelligible code.
Any suggestions or a pointer to where I might find the answer would be greatly appreciated, thanks!
(The picture is of a completely new project I made from my source build. I’ve done nothing other than activate the joysticks and play as two clients. As you can see, when I affect the joystick on the right screen, it turns the left screen. I’ll upload a video if this is still hard to understand)