[Feature request] Support for multiple simultaneous WiFi clients in libretro cores (e.g. melonDS multiplayer)
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
Summary
This is a feature request regarding RetroArch's current limitation in handling multiple simultaneous WiFi clients for libretro cores that emulate local wireless communication (like melonDS-DS).
Currently, the melonDS-DS core supports local multiplayer over WiFi between two clients on Android or PC using RetroArch. However, when attempting to add a third client (e.g., to play 3-player New Super Mario Bros. DS minigames), RetroArch freezes or becomes unresponsive on that device.
Tested Setup
- RetroArch Version: 1.21
- Core: melonDS-DS v1.20 (from libretro)
- Devices:
- Host: Samsung Galaxy S23+ (Android 14, mobile hotspot)
- Client 1: Samsung Galaxy A52 (Android 14)
- Client 2: PC (Windows 10, RetroArch 1.21)
Problem
RetroArch allows two devices to connect using local WiFi via the core just fine. But a third device attempting to connect causes a freeze or crash, with no error output.
It seems like RetroArch does not currently support handling multiple WiFi socket clients in a way that would allow more than 2 players for libretro cores like melonDS-DS.
Expected Behavior
RetroArch should support more than two WiFi clients connecting to a libretro core that handles local wireless emulation. Alternatively, it should at least reject extra connections cleanly, without freezing.
Why it matters
Games like New Super Mario Bros. DS, Mario Kart DS, and others supported 4-player multiplayer on original hardware. With melonDS cores now capable of simulating WiFi, this limitation prevents full use of that feature in RetroArch.
Request
Please consider:
- Adding support for more than 2 WiFi-connected libretro cores simultaneously
- Or implementing a core-level network routing system that can handle local wireless packets between multiple clients
Thank you for the incredible work on RetroArch and for enabling features like this to be possible!
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
No source file, test, or entry point is identified in the issue. Start by reproducing the freeze with a third WiFi client using RetroArch 1.21, melonDS-DS v1.20, and the listed Android/Windows setup, then trace the relevant connection handling. Done means supporting more than two clients or rejecting extra connections without freezing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100