Help:Dumping games: Difference between revisions

From ZeldaMods (Link's Awakening)
Jump to navigation Jump to search
imported>Leoetlino
(→‎Switch: change instructions for nxdumptool)
imported>Leoetlino
(port latest changes from BotW wiki (courtesy of DarkMatterCore))
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
In order to get a copy of the [[content]] files and [[executable]], you will need to dump ''Breath of the Wild'' from a console. This article provides instructions for Wii U and Switch users.
In order to get a copy of the [[content]] files and [[executable]], you will need to dump the game from a console. This article provides instructions for Switch users.
 
== Wii U ==
Dump the game files from the console to your computer using [https://gbatemp.net/threads/ddd-wiiu-title-dumper.418492/ ddd]. If any add-on-content (aoc) is installed, that will be dumped at the same time.


== Switch ==
== Switch ==
The general process is:
Dump the game files directly to your SD card using nxdumptool. Update data can only be processed if the base game is available, because they share the same filesystem.
# Dump the base version NCA of the game.
# Dump the update NCA.
# Extract the romfs to get a copy of the content files.


'''Warning''': Running homebrew on the Switch can get you banned from Nintendo online services if you aren't careful. If you do not want to leave any traces, turn on airplane mode, back up your NAND '''before running any homebrew''' and do not ever go online before you have restored the backup.
'''Warning''': Running homebrew on the Switch can get you banned from Nintendo online services if you aren't careful. If you do not want to leave any traces, turn on airplane mode, back up your NAND '''before running any homebrew''' and do not ever go online before you have restored the backup.


=== Prerequisites ===
=== Prerequisites ===
* [https://github.com/SciresM/hactool hactool]
* [https://github.com/DarkMatterCore/nxdumptool nxdumptool].
* Keys (see below)
* Keys file generated using [https://github.com/shchmue/Lockpick_RCM Lockpick_RCM], located at <code>sdmc:/switch/prod.keys</code>. Run the payload on your console through RCM in order to dump the keys needed by nxdumptool to decrypt contents.
* [https://github.com/DarkMatterCore/nxdumptool nxdumptool]
*# Run [https://github.com/shchmue/Lockpick_RCM LockpickRCM] on your console in order to dump keys that are required to decrypt contents (or get a copy of the keys manually).
*# Copy the keys file from your SD to <code>$HOME/.switch/prod.keys</code>.
 
'''In the instructions below, every time you are dumping a NSP, turn on the "Remove console specific data" and "Generate ticket-less dump" options (to make extraction easier).'''
 
=== Dumping the base NCA ===
Because of how updates work on Switch, the base NCA must be dumped even if you're only interested in 1.6.0.
 
* On your Switch, open nxdumptool.
* '''If you have the game card''': Select "Dump gamecard content".
* '''If you have the eShop version''': Select "Dump SD card / eMMC content". Select BotW.
* Select "NSP dump". If asked to, select "Dump base application NSP".
* Copy the NSP to a computer, then extract it by running the command <code>hactool -t pfs0 [path to the NSP] --outdir [folder where to place the NCAs]</code> {{CLI help}}. The main NCA will be found in the folder you've told hactool to extract the files to, called <code>efecb2d6befccddc928e44416dbdee38.nca</code>.


=== Dumping the update ===
=== Dumping game files ===
* On your Switch, open nxdumptool again.
* On your Switch, open nxdumptool. Afterwards:
* '''If you have a <1.6.0 game card''':
*# '''If you have the gamecard''': Select <code>Dump gamecard content</code>.
** Select "Dump SD card / eMMC content".
*# '''If you have the eShop version''': Select <code>Dump SD card / eMMC content</code>, then select the game.
** Press Y to "dump installed content with missing base application".
* Select <code>RomFS options</code>.
** Select 01007EF00011E800 (this is the BotW update title).
* Highlight the <code>Use update/DLC</code> option and use the left/right buttons to cycle through the available updates for the game.
** Select "Start NSP dump process".
*# '''If you have no available updates''', this option won't appear. You'll only be able to dump the files from the non-updated base game (which is the same to just leaving this option set to <code>No</code>).
* '''If you have a 1.6.0 game card''':
*# Updates are tagged as <code>(UPD)</code>, and they use <code>01006BB00C6F0800</code> as their ID.
** Select "Dump gamecard content".
* Select <code>RomFS section data dump</code> and wait for the process to finish. This will dump the internal filesystem from the selected update to the inserted SD card.
** Select "NSP dump", then select "Dump installed update NSP".
* '''If you have the eShop version''':
** Select "Dump SD card / eMMC content". Select BotW.
** Select "NSP dump", then select "Dump installed update NSP".
* Copy the NSP to a computer, then extract it by running the command <code>hactool -t pfs0 [path to the NSP] --outdir [folder where to place the NCAs]</code> {{CLI help}}. You now have the update NCA (see [[Versions]] for NCA hashes).


=== Extracting the romfs ===
Just like it was previously mentioned, updates share their filesystem data with the base game, so dumping the RomFS from an update is equivalent to dumping the whole filesystem from the updated game data. In other words, it isn't necessary to dump the base game filesystem separately if you choose an update.
Now that you have the base NCA and the update NCA, you can extract the romfs (which contains all [[content]] files) by running the command {{CLI help}}:


hactool -x -t nca path/to/update.nca  --basenca path/to/base.nca --romfsdir where/to/extract/the/romfs
When you're done, you'll be able to find the output dumps in <code>sdmc:/switch/nxdumptool/RomFS</code>.


To extract the exefs (which contains the [[executable]] and SDK libraries):
=== Dumping binaries (executable files) ===
Binaries in Switch titles are stored in a different section known as ExeFS, which is only available in base games and updates. Unlike RomFS data, ExeFS data isn't shared between the update and its base game.


hactool -x -t nca path/to/update.nca  --basenca path/to/base.nca --exefsdir where/to/extract/the/exefs
These files can also be dumped using nxdumptool.


=== Dumping the DLC ===
* On your Switch, open nxdumptool. Afterwards:
The [[DLC]] can be dumped by following the same procedure.
*# '''If you have the gamecard''': Select <code>Dump gamecard content</code>.
*# '''If you have the eShop version''': Select <code>Dump SD card / eMMC content</code>, then select the game.
* Select <code>ExeFS options</code>.
* Highlight the <code>Use update</code> option and use the left/right buttons to cycle through the available updates for the game.
*# '''If you have no available updates''', this option won't appear. You'll only be able to dump the  binaries from the non-updated base game (which is the same to just leaving this option set to <code>No</code>).
*# Updates use <code>01006BB00C6F0800</code> as their ID.
* Select <code>ExeFS section data dump</code> and wait for the process to finish. This will dump the binaries from the selected update to the inserted SD card.


* '''If you have a game card''':
When you're done, you'll be able to find the output dump in <code>sdmc:/switch/nxdumptool/ExeFS</code>.
** Select "Dump SD card / eMMC content".
** Press Y to "dump installed content with missing base application".
** Select 01007EF00011F001 (this is the main BotW DLC title).
** Select "NSP dump".
* '''If you have the eShop version''':
** Select "Dump SD card / eMMC content". Select BotW.
** Select "Dump installed DLC NSP".
* Copy the NSP to a computer, then extract it by running the command <code>hactool -t pfs0 [path to the NSP] --outdir [folder where to place the NCAs]</code> {{CLI help}}. You now have the DLC NCA.
* Extract the exefs and the romfs by following the instructions in the previous section.


[[Category:Guides]]
[[Category:Guides]]

Latest revision as of 20:37, 16 November 2019

In order to get a copy of the content files and executable, you will need to dump the game from a console. This article provides instructions for Switch users.

Switch

Dump the game files directly to your SD card using nxdumptool. Update data can only be processed if the base game is available, because they share the same filesystem.

Warning: Running homebrew on the Switch can get you banned from Nintendo online services if you aren't careful. If you do not want to leave any traces, turn on airplane mode, back up your NAND before running any homebrew and do not ever go online before you have restored the backup.

Prerequisites

  • nxdumptool.
  • Keys file generated using Lockpick_RCM, located at sdmc:/switch/prod.keys. Run the payload on your console through RCM in order to dump the keys needed by nxdumptool to decrypt contents.

Dumping game files

  • On your Switch, open nxdumptool. Afterwards:
    1. If you have the gamecard: Select Dump gamecard content.
    2. If you have the eShop version: Select Dump SD card / eMMC content, then select the game.
  • Select RomFS options.
  • Highlight the Use update/DLC option and use the left/right buttons to cycle through the available updates for the game.
    1. If you have no available updates, this option won't appear. You'll only be able to dump the files from the non-updated base game (which is the same to just leaving this option set to No).
    2. Updates are tagged as (UPD), and they use 01006BB00C6F0800 as their ID.
  • Select RomFS section data dump and wait for the process to finish. This will dump the internal filesystem from the selected update to the inserted SD card.

Just like it was previously mentioned, updates share their filesystem data with the base game, so dumping the RomFS from an update is equivalent to dumping the whole filesystem from the updated game data. In other words, it isn't necessary to dump the base game filesystem separately if you choose an update.

When you're done, you'll be able to find the output dumps in sdmc:/switch/nxdumptool/RomFS.

Dumping binaries (executable files)

Binaries in Switch titles are stored in a different section known as ExeFS, which is only available in base games and updates. Unlike RomFS data, ExeFS data isn't shared between the update and its base game.

These files can also be dumped using nxdumptool.

  • On your Switch, open nxdumptool. Afterwards:
    1. If you have the gamecard: Select Dump gamecard content.
    2. If you have the eShop version: Select Dump SD card / eMMC content, then select the game.
  • Select ExeFS options.
  • Highlight the Use update option and use the left/right buttons to cycle through the available updates for the game.
    1. If you have no available updates, this option won't appear. You'll only be able to dump the binaries from the non-updated base game (which is the same to just leaving this option set to No).
    2. Updates use 01006BB00C6F0800 as their ID.
  • Select ExeFS section data dump and wait for the process to finish. This will dump the binaries from the selected update to the inserted SD card.

When you're done, you'll be able to find the output dump in sdmc:/switch/nxdumptool/ExeFS.