Tutorial
Updated
FunkyCIA Complete Guide
Hey guys,
I have been toying around with several programs in the last few days, and I came across FunkyCIA. It is a great program that lets you download content from eShop and converting them to CIA.
The downloaded content permitted comes from having a ticket stored in your 3DS, which is stored in ticket.db. In order to use this program, we will be extracting the ticket.db from the 3DS and using it on the PC.
--------------------------------------------------------------------------------------------------------------------
Requirements:
- Old 3DS/3DS XL on 9.2
- PC with internet connection
- Python installed on PC
- rxTools
- FunkyCIA (Note: Use the one in the attachment instead of the original thread)
(A) Extracting Ticket.db:
1. Connect the SD Card to your PC.
2. Setup rxTools: http://www.rxtools.net/#!howto
3. Put SD Card back into your 3DS, turn it on and run rxTools.dat from the web browser.
4. Click on "Dumping Options" --> "Dump Nand Files".
5. Press X if you want the Ticket.db from your sysnand, or Y if you want the Ticket.db from your emunand.
6. Select "ticket.db".
7. Close your 3DS, remove your SD card, and connect it to the PC.
8. Go to rxTools folder, and you will find the Ticket.db file.
9. Copy it somewhere safe, and make sure you keep a backup.
(B) Preparing PC for FunkyCIA:
1. Install Python from here: https://www.python.org/downloads/
2. Download FunkyCIA attached in this thread.
3. Extract it wherever you want. For the purposes of this guide I will assume the extraction is at the root of the "C" drive.
4. Put the Ticket.db file in the same folder.
4. Click Start --> All Programs --> Accessories --> Command Prompt (Alternatively, Click Start and write cmd in the search field).
5. Write "cd.." and click enter. Keep repeating it until you get to where you extracted FunkyCIA (In this case, "C:\>").
(C) Using FunkyCIA
Note: Write "FunkyCIA2.py -h" to get the help screen. If you are not a beginner, it will tell you everything you need to know. If not, continue to read:
Note: We will use this site to get the titleid for everything we need from this program: http://www.3dsdb.com/
Assuming you have the ticket for them, this program will let you download the following:
- Gameapp
- Update
- DLC
- Themes
- Demo
- DSiWare
- System (Note: Probably doesn't work anymore, so it will be left out of this guide)
- We will use the following 2 3DS example titleid for this guide:
Super Mario 3D Land (0004000000053F00)
Super Smash Bros (00040000000EDF00)
- We will also use the following 2 DSiware example titleid for this guide:
Zelda: Four Swords Anniversary Edition (000480044B513956)
Mario Clock (000480044B574256)
- To understand the file structure, lets use the example above to show the difference in the titleid between each type:
- Gameapp: 0004000000053F00
- Update: 0004000E00053F00
- DLC: 0004008C00053F00
- Demo: 0004002000053F01
- DSiWare: They have their own unique title
For more information, check this: http://3dbrew.org/wiki/Title_list
- The next step always consists of 3 parts. The first 2 parts are MANDATORY to enter, and the 3rd part is OPTIONAL.
(C1) First part:
Always start with "FunkyCIA2.py ticket.db". DON'T CLICK ENTER
(C2) Second part:
It depends on what you want to do:
(A) Download eShop Games:
1. If you want to download all games you have bought from eShop, continue the sentence above with "-type gameapp". It will start downloading all games, and then it will make them CIA out of them once you click enter, but don't click until you read the next section (C3).
2. If you want to download a specific game, get the game's titleid from: http://www.3dsdb.com/
------ 2a. As per our example's titleid, continue the sentence above with "-title 0004000000053F00"
------ 2b. If you want more than one game to be downloaded, follow that by another titleid. Example: "-title 0004000000053F00 00040000000EDF00"
(B) Download Update:
1. If you want to download all updates, continue the sentence above with "-type update". It will start downloading all updates, and then it will make them CIA out of them once you click enter, but don't click until you read the next section (C3).
2. If you want to download an update for a specific game, get the game's titleid from: http://www.3dsdb.com/ , then change it per the file structure shown in remarks above
------ 2a. As per our example's titleid, continue the sentence above with "-title 0004000E00053F00"
------ 2b. If you want more than one update to be downloaded, follow that by another titleid. Example: "-title 0004000E00053F00 0004000E000EDF00"
(C) Download DLC:
Note: By default, this program will give you access to all DLC if you have the ticket to at least one of them. But please note that all unbought DLC will be erased everytime you access the eShop. You will have to install the generated CIA again.
1. If you want to download all DLC, continue the sentence above with "-type dlc". It will start downloading all DLC, and then it will make them CIA out of them once you click enter, but don't click until you read the next section (C3).
2. If you want to download DLC for a specific game, get the game's titleid from: http://www.3dsdb.com/ , then change it per the file structure shown in remarks above
------ 2a. As per our example's titleid, continue the sentence above with "-title 0004008C00053F00"
------ 2b. If you want more than one DLC to be downloaded, follow that by another titleid. Example: "-title 0004008C00053F00 0004008C000EDF00"
(D) Download Themes:
Note: By default, this program will give you access to all Themes if you have the ticket to at least one of them. But please note that all non-bought Themes will be erased every time you access the eShop. You will have to install the generated CIA again.
Themes are a type of DLC. To download all themes on eShop released to date, continue the sentence above with "-title 0004008C00008F00". It will start downloading all Themes, and then it will make them CIA out of them once you click enter, but don't click until you read the next section (C3).
(E) Download Demo:
Note: By default, this program will remove the play limit on all demos.
1. If you want to download all demos, continue the sentence above with "-type demo". It will start downloading all demos, and then it will make them CIA out of them once you click enter, but dont click until you read the next section (C3).
2. If you want to download a demo of a specific game, get the game's titleid from: http://www.3dsdb.com/ , then change it per the file structure shown in remarks above
------ 2a. As per our example's titleid, continue the sentence above with "-title 0004000000053F01"
------ 2b. If you want more than one demo to be downloaded, follow that by another titleid. Example: "-title 0004000000053F01 00040000000EDF01"
(F) Download DSiware:
1. If you want to download all DSiware, continue the sentence above with "-type dsiware". It will start downloading all dsiware, and then it will make them CIA out of them once you click enter, but dont click until you read the next section (C3).
2. If you want to download a specific DSiware title, get the titleid
------ 2a. As per our example's titleid, continue the sentence above with "-title 000480044B513956"
------ 2b. If you want more than one DSiware title to be downloaded, follow that by another titleid. Example: "-title 000480044B513956 000480044B574256"
(G) Download ALL:
There is an option to download everything you have a ticket for in ticket.db (gameapp, update, dlc, demo,dsiware, system), simply continue the sentence with "-type ALL", and it will automatically download everything once you click enter, but dont click until you read the next section (C3).
(C3) Third Part (Optional):
There are multiple sentences you can add to the above that gives you several options. Here is a list of what they are:
So, for example, if you dont want to unlock all DLC and only download the ones you have purchased, you add "-nopatchdlc" to the first 2 parts.
All Sentences coming together:
I will show a couple of examples to help understand each function:
1. "FunkyCIA2.py ticket.db -type dlc -nopatchdlc": This will download all DLC without unlocking everything that was not bought.
2. "FunkyCIA2.py ticket.db -title 0004000E00053F00 -nopatchdemo": This will download Super Mario 3D Land demo (if you have the ticket for it and it exists), without removing any play limit restriction by nintendo (if such exist for a specific demo)
3. "FunkyCIA2.py ticket.db -title 0004000000053F00 00040000000EDF00 -personal": This will download Super Mario 3D Land and Super Smash games (If you have the ticket for them) and make a perfect CIA out of them. I will not work on any other 3DS besides yours.
In the past 3 examples, you don't have to write -nopatchdlc, -nopatchdemo, or -personal. Think of these as options of what you would like to be done to the download. So the examples can work like this:
1. "FunkyCIA2.py ticket.db -type dlc"
2. "FunkyCIA2.py ticket.db -title 0004000E00053F00"
3. "FunkyCIA2.py ticket.db -title 0004000000053F00 00040000000EDF00"
--------------------------------------------------------------------------------------------------------------------
As always, make sure you have a backup of everything, and use everything at your own risk!
Note: Please use the version of FunkyCIA attached in this thread instead of the original thread. The one in the original thread does not work properly with windows. This is a fixed version, which a minor script update by @cearp
Enjoy
I have been toying around with several programs in the last few days, and I came across FunkyCIA. It is a great program that lets you download content from eShop and converting them to CIA.
The downloaded content permitted comes from having a ticket stored in your 3DS, which is stored in ticket.db. In order to use this program, we will be extracting the ticket.db from the 3DS and using it on the PC.
--------------------------------------------------------------------------------------------------------------------
Requirements:
- Old 3DS/3DS XL on 9.2
- PC with internet connection
- Python installed on PC
- rxTools
- FunkyCIA (Note: Use the one in the attachment instead of the original thread)
(A) Extracting Ticket.db:
1. Connect the SD Card to your PC.
2. Setup rxTools: http://www.rxtools.net/#!howto
3. Put SD Card back into your 3DS, turn it on and run rxTools.dat from the web browser.
4. Click on "Dumping Options" --> "Dump Nand Files".
5. Press X if you want the Ticket.db from your sysnand, or Y if you want the Ticket.db from your emunand.
6. Select "ticket.db".
7. Close your 3DS, remove your SD card, and connect it to the PC.
8. Go to rxTools folder, and you will find the Ticket.db file.
9. Copy it somewhere safe, and make sure you keep a backup.
(B) Preparing PC for FunkyCIA:
1. Install Python from here: https://www.python.org/downloads/
2. Download FunkyCIA attached in this thread.
3. Extract it wherever you want. For the purposes of this guide I will assume the extraction is at the root of the "C" drive.
4. Put the Ticket.db file in the same folder.
4. Click Start --> All Programs --> Accessories --> Command Prompt (Alternatively, Click Start and write cmd in the search field).
5. Write "cd.." and click enter. Keep repeating it until you get to where you extracted FunkyCIA (In this case, "C:\>").
(C) Using FunkyCIA
Note: Write "FunkyCIA2.py -h" to get the help screen. If you are not a beginner, it will tell you everything you need to know. If not, continue to read:
Note: We will use this site to get the titleid for everything we need from this program: http://www.3dsdb.com/
Assuming you have the ticket for them, this program will let you download the following:
- Gameapp
- Update
- DLC
- Themes
- Demo
- DSiWare
- System (Note: Probably doesn't work anymore, so it will be left out of this guide)
- We will use the following 2 3DS example titleid for this guide:
Super Mario 3D Land (0004000000053F00)
Super Smash Bros (00040000000EDF00)
- We will also use the following 2 DSiware example titleid for this guide:
Zelda: Four Swords Anniversary Edition (000480044B513956)
Mario Clock (000480044B574256)
- To understand the file structure, lets use the example above to show the difference in the titleid between each type:
- Gameapp: 0004000000053F00
- Update: 0004000E00053F00
- DLC: 0004008C00053F00
- Demo: 0004002000053F01
- DSiWare: They have their own unique title
For more information, check this: http://3dbrew.org/wiki/Title_list
- The next step always consists of 3 parts. The first 2 parts are MANDATORY to enter, and the 3rd part is OPTIONAL.
(C1) First part:
Always start with "FunkyCIA2.py ticket.db". DON'T CLICK ENTER
(C2) Second part:
It depends on what you want to do:
(A) Download eShop Games:
1. If you want to download all games you have bought from eShop, continue the sentence above with "-type gameapp". It will start downloading all games, and then it will make them CIA out of them once you click enter, but don't click until you read the next section (C3).
2. If you want to download a specific game, get the game's titleid from: http://www.3dsdb.com/
------ 2a. As per our example's titleid, continue the sentence above with "-title 0004000000053F00"
------ 2b. If you want more than one game to be downloaded, follow that by another titleid. Example: "-title 0004000000053F00 00040000000EDF00"
(B) Download Update:
1. If you want to download all updates, continue the sentence above with "-type update". It will start downloading all updates, and then it will make them CIA out of them once you click enter, but don't click until you read the next section (C3).
2. If you want to download an update for a specific game, get the game's titleid from: http://www.3dsdb.com/ , then change it per the file structure shown in remarks above
------ 2a. As per our example's titleid, continue the sentence above with "-title 0004000E00053F00"
------ 2b. If you want more than one update to be downloaded, follow that by another titleid. Example: "-title 0004000E00053F00 0004000E000EDF00"
(C) Download DLC:
Note: By default, this program will give you access to all DLC if you have the ticket to at least one of them. But please note that all unbought DLC will be erased everytime you access the eShop. You will have to install the generated CIA again.
1. If you want to download all DLC, continue the sentence above with "-type dlc". It will start downloading all DLC, and then it will make them CIA out of them once you click enter, but don't click until you read the next section (C3).
2. If you want to download DLC for a specific game, get the game's titleid from: http://www.3dsdb.com/ , then change it per the file structure shown in remarks above
------ 2a. As per our example's titleid, continue the sentence above with "-title 0004008C00053F00"
------ 2b. If you want more than one DLC to be downloaded, follow that by another titleid. Example: "-title 0004008C00053F00 0004008C000EDF00"
(D) Download Themes:
Note: By default, this program will give you access to all Themes if you have the ticket to at least one of them. But please note that all non-bought Themes will be erased every time you access the eShop. You will have to install the generated CIA again.
Themes are a type of DLC. To download all themes on eShop released to date, continue the sentence above with "-title 0004008C00008F00". It will start downloading all Themes, and then it will make them CIA out of them once you click enter, but don't click until you read the next section (C3).
(E) Download Demo:
Note: By default, this program will remove the play limit on all demos.
1. If you want to download all demos, continue the sentence above with "-type demo". It will start downloading all demos, and then it will make them CIA out of them once you click enter, but dont click until you read the next section (C3).
2. If you want to download a demo of a specific game, get the game's titleid from: http://www.3dsdb.com/ , then change it per the file structure shown in remarks above
------ 2a. As per our example's titleid, continue the sentence above with "-title 0004000000053F01"
------ 2b. If you want more than one demo to be downloaded, follow that by another titleid. Example: "-title 0004000000053F01 00040000000EDF01"
(F) Download DSiware:
1. If you want to download all DSiware, continue the sentence above with "-type dsiware". It will start downloading all dsiware, and then it will make them CIA out of them once you click enter, but dont click until you read the next section (C3).
2. If you want to download a specific DSiware title, get the titleid
------ 2a. As per our example's titleid, continue the sentence above with "-title 000480044B513956"
------ 2b. If you want more than one DSiware title to be downloaded, follow that by another titleid. Example: "-title 000480044B513956 000480044B574256"
(G) Download ALL:
There is an option to download everything you have a ticket for in ticket.db (gameapp, update, dlc, demo,dsiware, system), simply continue the sentence with "-type ALL", and it will automatically download everything once you click enter, but dont click until you read the next section (C3).
(C3) Third Part (Optional):
There are multiple sentences you can add to the above that gives you several options. Here is a list of what they are:
So, for example, if you dont want to unlock all DLC and only download the ones you have purchased, you add "-nopatchdlc" to the first 2 parts.
All Sentences coming together:
I will show a couple of examples to help understand each function:
1. "FunkyCIA2.py ticket.db -type dlc -nopatchdlc": This will download all DLC without unlocking everything that was not bought.
2. "FunkyCIA2.py ticket.db -title 0004000E00053F00 -nopatchdemo": This will download Super Mario 3D Land demo (if you have the ticket for it and it exists), without removing any play limit restriction by nintendo (if such exist for a specific demo)
3. "FunkyCIA2.py ticket.db -title 0004000000053F00 00040000000EDF00 -personal": This will download Super Mario 3D Land and Super Smash games (If you have the ticket for them) and make a perfect CIA out of them. I will not work on any other 3DS besides yours.
In the past 3 examples, you don't have to write -nopatchdlc, -nopatchdemo, or -personal. Think of these as options of what you would like to be done to the download. So the examples can work like this:
1. "FunkyCIA2.py ticket.db -type dlc"
2. "FunkyCIA2.py ticket.db -title 0004000E00053F00"
3. "FunkyCIA2.py ticket.db -title 0004000000053F00 00040000000EDF00"
--------------------------------------------------------------------------------------------------------------------
As always, make sure you have a backup of everything, and use everything at your own risk!
Note: Please use the version of FunkyCIA attached in this thread instead of the original thread. The one in the original thread does not work properly with windows. This is a fixed version, which a minor script update by @cearp
Enjoy
Attachments
Last edited by Madridi,