ArticBase, a tool to broadcast your 3DS games to an emulator, has been released

logo.png
Artic Base, an open source tool for broadcasting games from your Nintendo 3DS to an emulator, has been released! Artic Base allows playing your owned collection of 3DS games, physical or digital, on a compatible emulator without having to dump them first. Furthermore, the tool syncs the save data, so you can resume your progress at any time from the console. Below is the list of features this tool provides, coming from the Artic Base Server github repository.

Features​

  • Play games from your console without having to dump them.
  • Sync the savedata/extdata of the broadcasted game during the play session.
  • Load shared ext data and NCCH archives from your console.
  • Remove the need to dump AES keys, as the decryption is done by the console's OS.

Advantages over playing on real console​

  • Play your games at higher resolutions.
  • Use external controllers that may better fit your playstyle.
  • Switch between playing on your PC at home and your console on the go.
  • Reduce e-waste by reusing partially broken consoles to broadcast your games to your PC.
  • Allow museums or non-profit game preservation organizations to have a centralised database of preserved games, while using an Artic Base Server + a compatible emulator to do research as needed.

As the tool author claims, Artic Base aims to help players enjoy their collection of Nintendo 3DS games with several advantages, such as being able to play at higher resolutions, switch between playing on a 3DS on the go and and a PC at home, and using their preferred external controllers. Furthermore, it helps reducing e-waste by allowing the use of partially broken consoles to act as a server instead of having to toss/replace them. The tool also removes the need of having to deal with classic emulator shenenigans, such as having to dump games or getting cryptographic keys. Keep in mind however that due to the network speed of the 3DS, slower loading times may be experienced.

At the time of writing, the only emulator supporting Artic Base is a forked version of the former 3DS emulator Citra, maintained by PabloMK7.

A demonstration of Artic Base was posted to PabloMK7's YouTube channel a few days ago, showcasing Shovel Knight being broadcasted to a PC.


What do you think? Will you do another playthrough of your collected 3DS games using this tool? Leave your thoughts in the replies!

:arrow: Artic Base Server (3DS application)
:arrow: PabloMK7's Citra fork with Artic Base support
 

Kiiro_Yakumo

Kitsune
Member
Joined
Apr 14, 2009
Messages
473
Trophies
1
Location
Anor Londo
XP
559
Country
Poland
That's why I said 'In the future, if modern video game consoles ever are given a DMCA exemption or the DRM provisions of the DMCA are otherwise no longer relevant and it becomes fully, defensibly legal to homebrew them'. The problem is, right now, homebrew and CFW are still, technically, illegal due to circumventing DRM. I'm saying, in the future, once the legal changes you allude to have occurred, this will allow for controlled digital lending, rather than having to specifically loan out 3DS hardware.



Not entirely accurate. The problem is that emulators for modern consoles (Dolphin, Yuzu, Citra, etc) involve the use of console encryption keys, which violates the DRM provisions of the DMCA. It's a large, legally untested gray area, distinct from Sony v. Connectix and the reverse engineering defense.

For the first part "yes but actually no" case, depending on the country. In some it will be ok to modify the console as long as you don't use it further for stuff that's illegal. For example modifying to run homebrew will be ok, while modifying to run so called "pirated copies" will not be ok. Again it's not universal area so each one interested needs to check local country law for this one.

For the second part kinda another "yes but actually no" case. The fact those emulators need the keys is not yet the case to kick them. It's the same as emulators in the past required BIOS files BUT DID NOT provide them. As long as Dolphin, Yuzu, Citra and so on will NOT provide the keys in their package / source code, they are in the clear the same way as emulators that require BIOS but DO NOT provide it. (Exception if said emulator would have it's own BIOS written from the scratch, quite possibly HLE, then it's ok).

Unfortunately in Yuzu's case that's what happened, the keys were put in the source code - I've checked personally - with last change at about year 2020. The keys were by the time Nintendo struck down Yuzu outdated but that doesn't mean anything here, the legitimate keys were in the code, this part can't be defended, no matter what.
 

PabloMK7

Red Yoshi! ^ω^
OP
Developer
Joined
Feb 21, 2014
Messages
2,626
Trophies
2
Age
25
Location
Yoshi's Island
XP
5,427
Country
Spain
Cool and all... but I was hoping I could use this to "stream" TwilightMenu++ to my PC, too ambitious, not how it works I know...
Still, not a bad thing to have around and mess with from time to time.
This requires DS mode emulation which will never happen, instead consider switching to a DS emulator.
Post automatically merged:

Unfortunately in Yuzu's case that's what happened, the keys were put in the source code - I've checked personally - with last change at about year 2020. The keys were by the time Nintendo struck down Yuzu outdated but that doesn't mean anything here, the legitimate keys were in the code, this part can't be defended, no matter what.
I doubt that is the case. Yuzu did not provide ANY keys. Can you share which file and line number you have found them? I'm pretty sure you are looking at Yuzu forks and not the original archived source.
 

Kiiro_Yakumo

Kitsune
Member
Joined
Apr 14, 2009
Messages
473
Trophies
1
Location
Anor Londo
XP
559
Country
Poland
I doubt that is the case. Yuzu did not provide ANY keys. Can you share which file and line number you have found them? I'm pretty sure you are looking at Yuzu forks and not the original archived source.
Possible but maybe we should check with moderators if it's okay, after all it would be kinda... you know...
THAT or I will send you a PM for now just to be on the safe side.

EDIT - Good news, confirmed by PabloMK7 these weren't keys in Yuzu's case.
 
Last edited by Kiiro_Yakumo,

Magolor

Member
Newcomer
Joined
Jun 1, 2020
Messages
19
Trophies
0
XP
163
Country
United Kingdom
Great concept, unfortunately my games (tested Pokemon X/Y and Mario Kart 7) seem to run much worse than on the console - gets really choppy and audio frequently doesn't play at all or starts a few mins later. I'm not on a "bad pc" either, so I'm not too sure. Using O3DSXL. I've attached my log.

So, if the server crashes or stops connecting for some reason, the entire game closes. I was wondering if it was possible to have citra automatically save state before it closes to avoid losing progress?

Also had this same problem a few times when trying it out but in my case it just keeps trying to reconnect, fails and emulation freezes so the only way out is to quit everything. Is this problem an issue that can be ironed out in the future or is this related to the user's internet connection? Sorry if this is poorly worded, I'm not too sure how the two connect to each other.
 
Last edited by Magolor,

choconado

Doesn't understand a damn thing on here
Member
Joined
Jan 28, 2010
Messages
579
Trophies
1
Age
44
Website
Visit site
XP
327
Country
United States
This seems like an amazing idea that has potential. If you can finagle getting to use the inputs on the 3ds itself while playing on the computer or whatever device, you'll have made a solution for streamers that beats everything out there right now. Hard mods are expensive, and snickerstream has a *ton* of downsides. While currently sure, someone can just stream playing Citra and roms, there's a high percentage of streamers out there that prefer actual hardware when they can get it. So yeah, add console control functionality, and you have a dream app right here.
 

tanius

New Member
Newbie
Joined
Jun 6, 2020
Messages
2
Trophies
0
Age
28
XP
96
Country
Brazil
It would be nice to be able to stream only the top screen and still be able to use the bottom one and the 3ds as the controller.
 

OfcaTBS

New Member
Newbie
Joined
May 14, 2024
Messages
2
Trophies
0
Age
25
XP
14
Country
Poland
Great concept, unfortunately my games (tested Pokemon X/Y and Mario Kart 7) seem to run much worse than on the console - gets really choppy and audio frequently doesn't play at all or starts a few mins later. I'm not on a "bad pc" either, so I'm not too sure. Using O3DSXL. I've attached my log.



Also had this same problem a few times when trying it out but in my case it just keeps trying to reconnect, fails and emulation freezes so the only way out is to quit everything. Is this problem an issue that can be ironed out in the future or is this related to the user's internet connection? Sorry if this is poorly worded, I'm not too sure how the two connect to each other.
As I wrote in my post on page four - Pokemon XY and most probably ORAS will work badly without HLE AAC Decoder. Unfortunately, these files are very hard to find these days.
 
  • Like
Reactions: Magolor

torosashimii

New Member
Newbie
Joined
May 17, 2024
Messages
1
Trophies
0
Age
24
XP
13
Country
Hong Kong
Am I correct in thinking that this would allow me to use my 3DS game's save file on Citra while I'm at home and then continue playing on my 3DS while I'm out? Sort of similar to docking/undocking a switch?

If so, that's great. Not sure why people are asking the point of this tool (I find some of the comments to be quite rude in fact). This is incredibly useful for people wanting to stream games but still play on their 3DS in their own time.
 

TheStonedModder

Well-Known Member
Member
Joined
Dec 25, 2022
Messages
1,331
Trophies
2
Age
28
XP
2,920
Country
United States
If anyone wants to do something similar (at least for save files) between a modded switch and emulator I’ll pay ya lol

I want to seamlessly switch between portable and higher quality pokemon
 

xsdfr

Well-Known Member
Newcomer
Joined
Mar 1, 2023
Messages
50
Trophies
0
XP
444
Country
Bosnia and Herzegovina
just tried this out with some monster hunter 4
the game runs smoothly both in and out of combat which is fantastic but the load times are either very slow or abysmal
getting into the game (loading extdata) takes ages and getting into hunts is also really slow
still very cool and impressive
 

choconado

Doesn't understand a damn thing on here
Member
Joined
Jan 28, 2010
Messages
579
Trophies
1
Age
44
Website
Visit site
XP
327
Country
United States
Am I correct in thinking that this would allow me to use my 3DS game's save file on Citra while I'm at home and then continue playing on my 3DS while I'm out? Sort of similar to docking/undocking a switch?

If so, that's great. Not sure why people are asking the point of this tool (I find some of the comments to be quite rude in fact). This is incredibly useful for people wanting to stream games but still play on their 3DS in their own time.
If I understand correctly, it's a big "Yes But..." in that you have to stay connected to the turned on 3ds to use the program with Citra. It's NOT saving the file to your PC, but still to the 3DS regardless. like think of it as "streaming" the save file to citra rather than porting it.
 

Dracari

Well-Known Member
Member
Joined
Apr 5, 2009
Messages
1,992
Trophies
1
XP
2,505
Country
United States
As I wrote in my post on page four - Pokemon XY and most probably ORAS will work badly without HLE AAC Decoder. Unfortunately, these files are very hard to find these days.
only issues i tried from a N3DSXL as the source system was loading anything that wasnt cached yet, (Omega ruby). though while my PC by today's standards would be Potato. (Ryzen 5 3600/GTX 1080Ti/32GB DDR-4 3200) my PC was connected to my network by ethernet.

if this wouldnt be a lil hard to install w/o a working top screen... would let me essentially continue to use my ALBW O3DS XL.
 

PabloMK7

Red Yoshi! ^ω^
OP
Developer
Joined
Feb 21, 2014
Messages
2,626
Trophies
2
Age
25
Location
Yoshi's Island
XP
5,427
Country
Spain
only issues i tried from a N3DSXL as the source system was loading anything that wasnt cached yet, (Omega ruby). though while my PC by today's standards would be Potato. (Ryzen 5 3600/GTX 1080Ti/32GB DDR-4 3200) my PC was connected to my network by ethernet.

if this wouldnt be a lil hard to install w/o a working top screen... would let me essentially continue to use my ALBW O3DS XL.
You can get the IP in the bottom screen with Rosalina. Open the Rosalina menu (L + dpad down + select) then go to Debugger options, then enable debugger. Finally take note of the IP address and then disable the debugger.
 
  • Wow
Reactions: AkikoKumagara

AkikoKumagara

The Coolest Bear Around
Member
Joined
Jan 4, 2017
Messages
1,554
Trophies
1
Website
akiko.social
XP
4,116
Country
United States
This seems like an amazing idea that has potential. If you can finagle getting to use the inputs on the 3ds itself while playing on the computer or whatever device, you'll have made a solution for streamers that beats everything out there right now. Hard mods are expensive, and snickerstream has a *ton* of downsides. While currently sure, someone can just stream playing Citra and roms, there's a high percentage of streamers out there that prefer actual hardware when they can get it. So yeah, add console control functionality, and you have a dream app right here.
My sentiments exactly.
 

mindofone

New Member
Newbie
Joined
May 20, 2024
Messages
3
Trophies
0
Age
29
XP
16
Country
United States
Mad props man, this tool is a technological marvel. I have some quick questions about how it can be used. Do the game specific settings you set on Citra load when you start streaming from the 3DS? And if so, is it possible to install mods or texture packs for a game on Citra and have it load those when streaming the game from the 3DS? I think it would be a very rare to not have the mod installed on both the 3DS and Citra, but the texture packs would be a game changer. (Especially for Majora's Mask 3D)

Performance has been pretty decent so far, but the audio issues are kinda bad right now. Are there any plans to create an option to cache files on Citra to make load times faster, or use the user's cache files from running the games previously through a dump? (If you already do this, then please ignore my ignorance) Thanks again for making this, and if you need any help testing then let me know. I have a pretty decent library of 3DS games to put through the wringer.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    SylverReZ @ SylverReZ: I'm alright thanks :)