azahar-emu / azahar

A new Citra fork
https://azahar-emu.org/
2.44k stars 131 forks source link

Arctic Base improvements? #491

Closed Darthagnon closed 1 month ago

Darthagnon commented 1 month ago

Is there an existing issue for this?

What feature are you suggesting?

I have just tested ArcticBase with Lime3DS, and it works very well. Have the changes from Pablo MK7's fork been implemented? I guess they must have since there's ArcticBase support...

The only issues observed were occasional lag spikes and the music (but not SFX) would occasionally cut out.

I was wondering if it would be possible to implement a variation on ArcticBase, where the savedata and extdata are loaded from the 2/3DS, but the game is loaded from the PC (if installed), which could eliminate the lag spikes as the game files are not streamed wirelessly, and the only comms are the low-bandwidth controls and occasional save/extdata reads/writes?

Why would this feature be useful?

ArcticBase streams the game over Wifi, which will always be slower and more prone to lag than a locally-installed game. It's a nice option to have, but if we install the game on the PC, then it makes sense to load it the fastest way possible, and only stream controls and save/extdata.

rtiangha commented 1 month ago

So basically, you just want to use the 3DS as a game pad?

Anyway, rather than asking here, you should be posting your request to one of PabloMK7's repositories; either his Citra fork or the Artic Base project as since it's his project, he might be able to implement it quicker.

Edit: Ah, I see you did already. Well, I hope he hears you out. Edit 2: Ah, I see he declined. Can't say I blame him. Well, technically, such a thing should be possible now that the infrastructure to accept input remotely has been implemented, but I think high level, input_common would need to be extended to accept those inputs in order to affect a local game, and maybe the server itself would need to be rewritten to only stream input data (or not, but you'd only be wasting bandwidth streaming everything while only using a small part of it). Beyond my skill set, though. Edit 3: After glancing at the code, I can understand why he feels its outside the scope of Artic Base. One might have an easier time writing an entirely new udp client/server solution similar to how Citra accepts gyro input via CemuhookUDP. So one program that runs on the 3DS listening for and streaming input, and then extending the emulator's existing UDP functions to interpret it. But what do I know, lol.

OpenSauce04 commented 1 month ago

Closing as not planned due Pablo's rejection of the proposal