Read First!

The below wiki article is based on user submitted content.
Please verify all hyperlinks and terminal commands below!

See a mistake? Want to contribute? Edit this article on Github

Dumping Extra Data from a 3DS Console

How to Transfer 3DS Extra Data to Citra

In addition to save data, some games and system applications use extra data. Game extra data is stored on the SD card and can be extracted and used by Citra. The below tutorial uses JK’s Save Manager (JKSM) to perform the extraction, which is easy to install and use.

Example diagram showing the correct location of Mario vs. Donkey Kong: Tipping Stars extra data in Citra’s User Directory.
"User Directory"
└── sdmc
    └── Nintendo 3DS
        └── 00000000000000000000000000000000
            └── 00000000000000000000000000000000
                └── extdata
                    └── 00000000
                        └── 000012C8
                            └── user

Required tools

Ext IDs

The title to have its extra data dumped from has an ID associated with its extra data called its Ext ID. This is not the same as its Title ID (TID), but can usually be derived from it. The title’s Ext ID needs to be known in order to place the dumped data in the correct place in Citra’s directory structure. Follow the below steps to derive a title’s Ext ID from its TID:

  1. Find the title’s TID. The TID is exactly 16 hexadecimal characters. There are multiple ways to do this on a 3DS or a computer, including using JKSM to browse the 3DS’s installed title list or by using a simple internet search.
  2. Split the TID into its TID high and TID low. The TID high is the first eight characters of the TID and the TID low is the last eight characters. We don’t need the TID high, so just note the TID low.
  3. The TID low should end with two zeroes. Move them to the beginning of the TID low (example: 0012C800 becomes 000012C8). The modified TID low is the Ext ID Low.
  4. The Ext ID High is 00000000 for games and system applications. This tutorial does not cover extracting NAND extra data.
  5. The Ext ID High and Ext ID low put together form the Ext ID. For purposes of this tutorial though, keep them separated.

Installing JKSM

  1. Download JK’s Save Manager from the link above.
  2. Move the JKSV folder containing filter.txt to the root of the SD card.
  3. Move JKSM.cia to the SD card and install it to the home menu.

Note - JKSM has a homebrew app available, but The .cia is recommended because the homebrew app does not work with up-to-date 3DS firmware. To install the homebrew app, merge the 3ds/JKSM folder containing the JKSM.3dsx, JKSM.smdh, and JKSM.xml file with the 3ds folder on the SD card and use the homebrew launcher to open it.

Transferring Extra Data

  1. Open JKSM
  2. Select Cartridge if you are dumping extra data tied to the currently inserted cartridge, SD/CIA if you are dumping extra data from an installed game or System Titles if you are dumping extra data from a system application.
  3. Highlight the title to dump the save data from*. Press A.
  4. Select Extra Data Options, then Export ExtData.
  5. You will be prompted to select a folder or New. If selecting New, enter any name you wish and then select OK.
  6. A popup should appear that says Complete! Close JKSM.
  7. Transfer all files located in /JKSV/ExtData/[Title Name]/[Folder name selected or created in Step 5] to the computer.
  8. Place the files in Citra’s emulated SD card’s extra data directory at user/sdmc/Nintendo 3DS/000...0/000...0/extdata/[Ext ID High]/[Ext ID Low]/user/. These directories may have to be created if the title the extra data was dumped from hasn’t been played in Citra yet**.

*In step 3, If the title to be dumped isn’t on the list, first try selecting Refresh Games from the app’s root menu. If that doesn’t work, JKSM’s filter may need to be updated. This can be done easily from the app’s root menu and selecting Download Filter (internet connection required). If that still doesn’t work, the filter will have to be updated manually. Open /JKSV/filter.txt and add a new line. Type 0xXXXXXXXX where XXXXXXXX is the game’s TID Low (the last 8 characters of the game’s Title ID). Save the edited file. The game should now appear in the list.

** If the extra data found in /JKSV/ExtData/[Title Name]/[Folder name selected or created in Step 5] is a folder with a weird name containing 11 characters including numbers, letters, and/or parentheses (examples include but are not limited to kK7fB3)uOyD or SwrPp8xUGz6) then this extra data is tied to the title’s save data, which will need to be dumped and associated with Citra as well or the extra data will be ignored by Citra. See Dumping Save Data from a 3DS Console for help dumping save data. Currently the only known instance of this being the case is with Super Smash Bros. for Nintendo 3DS, but there may be more. See this forum post for additional details.