MiSTerNet
-
- Posts: 93
- Joined: Mon May 25, 2020 8:23 pm
- Been thanked: 4 times
MiSTerNet
MiSTer as an online retro multiplayer platform?
This would be strictly for console and arcade cores.
A server needed to list active matches.
A client/host system where P1 has switched the core to play online and P2 finds the match on the server browsing script. P1's game restarts when P2 joins.
Then the input lag/game sync.
Basically, the server will play both players, your controls will bypass your own game and go to the server that will send the inputs back to both players games. It will have to be delay based with comparitive AI in the server making adjustmemts.
A LAN version of the client/host should be done as well, just nix the server and send inputs directly at each other if possible, otherwise there will need to be a LAN server version to run on a local PC.
Eat you heart out Mugen.
I'm not building this or telling anyone to build it. I just wanted to share this vision of what I hope to be doing when I'm in an elderly retirement compound in 50 years. If that's still a thing.
This would be strictly for console and arcade cores.
A server needed to list active matches.
A client/host system where P1 has switched the core to play online and P2 finds the match on the server browsing script. P1's game restarts when P2 joins.
Then the input lag/game sync.
Basically, the server will play both players, your controls will bypass your own game and go to the server that will send the inputs back to both players games. It will have to be delay based with comparitive AI in the server making adjustmemts.
A LAN version of the client/host should be done as well, just nix the server and send inputs directly at each other if possible, otherwise there will need to be a LAN server version to run on a local PC.
Eat you heart out Mugen.
I'm not building this or telling anyone to build it. I just wanted to share this vision of what I hope to be doing when I'm in an elderly retirement compound in 50 years. If that's still a thing.
-
- Posts: 89
- Joined: Sun May 24, 2020 8:39 pm
- Has thanked: 30 times
- Been thanked: 32 times
Re: MiSTerNet
Hmm... FS-UAE kind of enables this for amiga on the emulator: https://fs-uae.net/online-play
Nothing beats hot-seat multiplayer, but this would be cool to have.
Nothing beats hot-seat multiplayer, but this would be cool to have.
Re: MiSTerNet
this topic is interesting, and is something i was wondering about as well.
in my uneducated guesstimate, i would ask why there couldnt be something like fightcade for MiSTer?
or if it would be possible to incorporate a LAN multiplayer option in MiSTer, and then create a discord chatroom that people could open requests to play a game, and then P2P to each other and play multiplayer.
there would obviously be some varying degrees of input lag, and without GGPO rollback netcode it would be incredibly janky overall.
but it would be interesting to see some kind of online multiplayer in the future,
even if it was a separate dedicated device/computer that the MiSTer connected to via ethernet cord
in my uneducated guesstimate, i would ask why there couldnt be something like fightcade for MiSTer?
or if it would be possible to incorporate a LAN multiplayer option in MiSTer, and then create a discord chatroom that people could open requests to play a game, and then P2P to each other and play multiplayer.
there would obviously be some varying degrees of input lag, and without GGPO rollback netcode it would be incredibly janky overall.
but it would be interesting to see some kind of online multiplayer in the future,
even if it was a separate dedicated device/computer that the MiSTer connected to via ethernet cord
Re: MiSTerNet
My thought is to do this primarily on the ARM / Linux side.
- Virtual controller in Linux that can send commands like a real controller.
- Network service to receive controller inputs from remote player.
- Newsdee
- Top Contributor
- Posts: 830
- Joined: Mon May 25, 2020 1:07 am
- Has thanked: 98 times
- Been thanked: 209 times
Re: MiSTerNet
The hard part is going to be integrating rollbakc netcode: https://en.wikipedia.org/wiki/GGPO
You need save states as a start. So maybe doable if save states can be added to arcade cores...
You need save states as a start. So maybe doable if save states can be added to arcade cores...
Re: MiSTerNet
https://www.youtube.com/watch?v=KtHu693wE9o
i understand the online capability is for the gameboy, and at the moment only for tetris,
but wow, someone should contact this guy and ask them if this is possible on the MiSTer![Geek :geek:](./images/smilies/icon_e_geek.gif)
i understand the online capability is for the gameboy, and at the moment only for tetris,
but wow, someone should contact this guy and ask them if this is possible on the MiSTer
![Geek :geek:](./images/smilies/icon_e_geek.gif)
-
- Core Developer
- Posts: 20
- Joined: Tue Mar 29, 2022 10:07 pm
- Has thanked: 14 times
- Been thanked: 61 times
Re: MiSTerNet
I love this online Tetris thing, it definitely seems doable to add support for the mister Gameboy Tetris game, you could just connect the raspberry pi, but it would be better to remove the need for it by adding a client in the mister Linux side of things
- Kitrinx
- Core Developer
- Posts: 185
- Joined: Sat May 23, 2020 2:14 am
- Location: NYC
- Has thanked: 1 time
- Been thanked: 147 times
- Contact:
Re: MiSTerNet
The thing to reconcile is how you synchronize two cores that have multiple milliseconds of lag with each other, when the two cores are operating in real-time (unlike a software emu). eg, how do you keep the analog video signal from being disrupted? how do you write the the ram fast enough to prevent the game from stuttering terribly?
Re: MiSTerNet
XBAND applied unique patches on a per-game basis to overcome the problems Kitrinx mentions above. There are groups attempting to preserve these now (tracking down working XBAND devices and pulling the patches out of the battery backed RAM), but we're talking a handful of titles only.
I think it's genuinely asking the impossible for a MiSTer-wide approach. This really is the realm of software emulation, as various tools can be built in generically to deal with latencies, rollback, etc. This is why tools like the original GGPO and Kaillera (over 20 years ago!) and modern Fightcade work well on modern operating systems via software emulators.
I understand that MiSTer is rightfully making a new generation of people excited for legacy games. But all of the substantial low-latency, high-accuracy pros of the platform mean that certain features like generic netplay with wildly variable latency and resulting synchronisation issues are nearly impossible.
At best you could do what XBAND did, and build per-game IPS patches. But that is a huge volume of work, and not a generic tool for all games (or even a single system) at once.
- barfood
- Posts: 95
- Joined: Thu Jun 18, 2020 6:55 pm
- Location: new user: felleg
- Has thanked: 87 times
- Been thanked: 18 times
- Contact:
Re: MiSTerNet
Personally, I am totally fine with that limitation. I can use RetroArch to goof around with friends online, and MiSTer to actually try to get better at games that demand low latency. I have never owned an XBAND myself, so I don't really know what I'm missing out on (possibly a bunch of headaches).
- Kitrinx
- Core Developer
- Posts: 185
- Joined: Sat May 23, 2020 2:14 am
- Location: NYC
- Has thanked: 1 time
- Been thanked: 147 times
- Contact:
Re: MiSTerNet
A realistic approach would be to have an encoder, or offload to an encoder, and handle this video streaming style. The second player would be at a disadvantage of course, but it would enable some kind of netplay that way. Just feed back some virtual controllers.
The de10 doesn't really have the resources needed to access and encode the framebuffer fast enough though. So maybe some future device.
The de10 doesn't really have the resources needed to access and encode the framebuffer fast enough though. So maybe some future device.
Re: MiSTerNet
I very much agree with this approach. It has broad application, and modern tools and libraries (whether they be non-free like Parsec, which from memory you're involved with? Or free like moonlight/sunshine) offer me a lot of hope for this:
https://moonlight-stream.org/
https://github.com/loki-47-6F-64/sunshine
My want for this sort of thing is a little outside the realm of pure multiplayer though. I think for video game research, journalism, and the idea of the future state of online museums and libraries, it has huge potential.
But either way there's good possibility there for a generic approach to the problem.
Into the future there's good possibility here for generic OSSC/RetroTink style devices (not necessarily those two, but devices like them with encoders/decoders attached) to potentially implement something similar, whether it's MiSTer or any other device. But again, that's all far into the future.
- Longtime4321
- Posts: 99
- Joined: Fri Aug 12, 2022 5:17 am
- Has thanked: 8 times
- Been thanked: 15 times
Re: MiSTerNet
What about Multitroid? That's possible on real hardware.
Of course it's for literally one game, but it would still be cool to see!