Netplay issue. Player 2 has no inputs when connecting via Direct Connect but has inputs when using Relay Server.
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
Description
When myself and a friend try to play games online via Netplay, when using the relay server, the Player 1 and Player 2 controller inputs work as expected. When using direct connect, the host connects as Player 1 and his inputs are fine. When Player 2 tries to join, it says he joined as Player 2 but none of his inputs work. However, if Player 2 plugs in a second controller so that it shows the second controller connected as Port 2, he can play just fine using that second controller.
Expected behavior
I expect for the Host and for the person joining to both be able to use their controllers without any additional setup or workarounds while using Direct Connection Netplay
Actual behavior
When using Direct Connection NetPlay, when Player 2 connects they don't have any input controls. Input controls work correctly when using Relay Server though.
Steps to reproduce the bug
- Start up RetroArch and load up the Final Burn Neo Core (that's the one we were using but I would assume the same thing happens on other cores. Sorry I didn't think about testing other cores at the time).
- Load up any multiplayer Final Burn Neo game (we were using TMNT and The Simpsons).
- Connect to each other via Direct Connect Netplay (Player 2 will not be able to control anything).
3a. (Optional) Have Player 2 plug in a second controller and see that this second controller can now control Player 2's in game controls. - Exit Netplay
- Restart Netplay using the Relay Server (you will see that Player 2 can now control in game without needing a second controller plugged in)
Bisect Results
I do not know when this started happening. I always use Relay Server because I cannot forward ports. But my friend was noticing too much stutter through the relay server which is why he wanted to try Direct Connect and this is when we discovered these issues.
Version/Commit
You can find this information under Information/System Information
- RetroArch: 1.9.9/3688861. Build Date Sep 5, 2021
Environment information
- OS: I am on Windows 10 64 bit. But under the System Information, it says "Frontend OS: Windows 8 x64 Build 9200 (v6.2)" Not sure if that matters.
- Compiler: I do not believe this applies to be. I downloaded this from the retroarch.com page.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the issue in RetroArch 1.9.9/3688861 using a Final Burn Neo multiplayer game, comparing Direct Connect with the Relay Server. Trace the netplay input behavior for Player 2 and verify the fix by confirming that the joining player's controller works through Direct Connect without a second controller.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100