Page 1 of 1
MiSTerNet
Posted: Thu Jan 28, 2021 11:16 am
by Televicious
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.
Re: MiSTerNet
Posted: Thu Jan 28, 2021 12:07 pm
by Lisko
I always dream about a sort of generic xband on mister. Imagine playing all those arcade beat em up games with others players...
Re: MiSTerNet
Posted: Thu Jan 28, 2021 5:23 pm
by ToothbrushThreepwood
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.
Re: MiSTerNet
Posted: Thu Apr 22, 2021 7:40 pm
by barfood
Lisko wrote: ↑Thu Jan 28, 2021 12:07 pm
I always dream about a sort of generic xband on mister. Imagine playing all those arcade beat em up games with others players...
Reading about the
XBAND, it makes me really curious if we could recreate the schematics of those modems and use them in our MiSTers to play online...
Re: MiSTerNet
Posted: Tue Apr 27, 2021 3:28 am
by PikWik
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
Re: MiSTerNet
Posted: Tue Apr 27, 2021 3:27 pm
by Mellified
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.
There may be existing Linux projects to do both of those things already.
Re: MiSTerNet
Posted: Thu Apr 29, 2021 3:22 pm
by Newsdee
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...
Re: MiSTerNet
Posted: Wed May 05, 2021 1:27 am
by PikWik
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
Re: MiSTerNet
Posted: Tue Jul 05, 2022 5:10 pm
by jopdorp
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
Re: MiSTerNet
Posted: Tue Jul 05, 2022 10:25 pm
by Kitrinx
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
Posted: Tue Jul 05, 2022 11:10 pm
by elvis
barfood wrote: ↑Thu Apr 22, 2021 7:40 pm
Lisko wrote: ↑Thu Jan 28, 2021 12:07 pm
I always dream about a sort of generic xband on mister. Imagine playing all those arcade beat em up games with others players...
Reading about the
XBAND, it makes me really curious if we could recreate the schematics of those modems and use them in our MiSTers to play online...
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.
Re: MiSTerNet
Posted: Wed Jul 06, 2022 1:16 am
by barfood
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).
Re: MiSTerNet
Posted: Wed Jul 06, 2022 2:13 am
by Kitrinx
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.
Re: MiSTerNet
Posted: Wed Jul 06, 2022 5:18 am
by elvis
Kitrinx wrote: ↑Wed Jul 06, 2022 2:13 am
A realistic approach would be to have an encoder, or offload to an encoder, and handle this video streaming style.
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.
Kitrinx wrote: ↑Wed Jul 06, 2022 2:13 amThe de10 doesn't really have the resources needed to access and encode the framebuffer fast enough though. So maybe some future device.
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.
Re: MiSTerNet
Posted: Sun Aug 06, 2023 12:28 am
by Jae099
They have this on the switch. The big problem will probably space on the fpga.
https://www.youtube.com/watch?v=4WNKu2YCg2o
Re: MiSTerNet
Posted: Fri Aug 25, 2023 12:39 am
by Longtime4321
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!