Plans for local multiplayer
I know I haven't been active a lot lately, the usual.

Well, I tried looking into the DSi sound app, and found that it crashes due to a NULL access. I tried debugging that, but it seems to be some weird timing problem and I don't know why that crash doesn't happen on hardware. This will need further investigation.

Anyway, local multiplayer.

It's one of the big things to take care of, now. We have been mostly putting it aside over time, favoring various popular requests, quality of life improvements, and fixes to DSi emulation. But we can't keep pushing it away like that. We have decided that improved local multiplayer is a must-have for melonDS 1.0, and we aren't going to keep making 0.9.247 type releases forever.

(besides, 0.9.x releases aren't very pleasant, for the same reason why I don't like $29.99 type prices: 9 is brown)

Anyway, I brainstormed some ideas for reliable local multiplayer. I have already explained before why local multiplayer is so finicky to implement, but the basic story is that we can't just run two melonDS instances and have them hurl packets at eachother and pray that things will work out. You might already know that we keep telling people to disable the framerate limiter if trying local multiplayer, and that's linked to this too.

We need a smarter mechanism for synchronizing melonDS instances taking part in local multiplayer. I have some ideas in mind for this, but I have to see how well they will translate to reality. I'm concerned about the performance implications this could have.

If this is successful, there are other possible quality of life improvements that relate to local multiplayer. For example, how to deal with user input when multiple melonDS instances are running on the same machine? You might want them to have different input mappings, but how do we deal with that without making things too complicated?

The craziest thing to achieve would be netplay, akin to Citra. Well, of course, there is no chance local multiplayer could work over the internet, but there are probably ways around this; we can look into how popular emulators handle netplay.

Oh well, we'll see how this goes, I guess.
Guest says:
Aug 1st 2022
@keisui While I personally do not use any filters (yet, perhaps I will in the future, but for now I am merely running these games for testing purposes, so I am more interested in what works and what doesn't), I have found a link that may help (apparently LibRetro bundles different filters, including '5xbr'):

https://github.com/libretro/common-shaders/tree/master/xbr/shaders/legacy
keisui says:
Aug 1st 2022
@Guest pardon my lack of understanding , i dont use filters either unless for testing like you , but how do i use these ¿ i know they cant be for melonds and as far as i looked theres no way to add custom filters to drastic (unless theres a directory and i completely missed it)
Guest says:
Aug 2nd 2022
@keisui These files need to be compiled, however I have absolutely no idea how to use them with either MelonDS or DeSmuME, not using filters at all.

You had simply pointed out that you could not find that specific for, so I searched for it.
keisui says:
Aug 2nd 2022
@Guest ah , i meant that i couldnt find the 5xbr one in drastic itself like the other person showed off , shouldve been more specific , thats my bad
MelonDSRules says:
Aug 5th 2022
@keisui Additional shaders for Drastic are posted at various places online such as: https://www.drastic-ds.com/download/file.php?id=622.

I made some screenshots for you of 5xbr + LCD3x with Brothers in Arms (3D). You have to copy them over to the shaders folder within the Drastic folder on your phone and then enable them within Video option where they'll appear. I even use 5XBR + LCD3x + Natural Vision for Advance Wars: Days of Ruin to make colors more vibrant. Ideally I can make games look the same on MelonDS while having online/local multiplayer features.

https://ibb.co/hfWkL05
https://ibb.co/9vbGR6Y
https://ibb.co/qMLgVGT

Advance Wars: Dual Strike looks great with it.
https://ibb.co/RDXm1Gw

keisui says:
Aug 5th 2022
@MelonDSRules im not sure where the drastic directory is stored , i cant find it in the directory where my other app folders are stored ... it should be in internal storage > android > obb right ¿ thats where my other app folders are stored at least

as for the filters , while it does make the games look cool , it seems that the filter is being applied over the whole game , so while it does affect 2d assets it also affects the 3d ones as well resulting in a sorta smeared bubbly appearance , for lack of better words . which would be sorta pointless for melonds at least for the 3d side of things since we already have internal upscaling up to 16x which makes things look amazing , though it would definitely be great for the 2d assets as long as it doesnt affect the 3d at higher resolutions

that being said , it does really make games running on drastic look nice especially with the low internal res , ill have to figure out where the directory is
Guest says:
Aug 7th 2022
@keisui Ah, I haven't seen them either, so I have no idea.
MelonDSRules says:
Aug 10th 2022
@Keisui The shader folder can be found here: Internal Storage/Drastic/shaders

Yeah, it seems 2D assets often don't get any more detailed than upscaling it 2x so that's fine with Drastic being limited at 2x upscaling. My main gripe with Drastic is it's lack of multiplayer features. The smoothing of edges also makes 2D games blurry when it's applied after upscaling, giving it almost a water color painting look. For that reason I like an intermediate look between pixels and smoothing along with the LCD effect of tiny pixels before upscaling so that it creates the illusion of more detail. There are more recent XBR shaders that aim to improve the smeary appearance but those are made for Retroarch. I haven't been interested in playing any 3D games so I can't really comment on that.
jobevilacq25 says:
Aug 11th 2022
mickey mouse
keisui says:
Aug 11th 2022
@MelonDSRules ah thats where the directory is , thanks a lot👍 and ill have to check out some of the xbr shaders
Post a comment
Name:
DO NOT TOUCH