ROM Hack custom-install - Install CIAs to a Nintendo 3DS SD card entirely on PC

noducksgiven

Member
Newcomer
Joined
Mar 20, 2020
Messages
11
Trophies
0
XP
67
Country
United States
Run in terminal: chmod +x bin/darwin/save3ds_fuse

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

It works! Wow! This is awesome! Thank you for this tool and for the quick replies!

Is there a wildcard term you can supply so that it can automatically do it for every cia file in the folder?
 

ihaveahax

Well-Known Member
OP
Member
Joined
Apr 20, 2015
Messages
6,069
Trophies
2
XP
7,827
Country
United States
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

It works! Wow! This is awesome! Thank you for this tool and for the quick replies!

Is there a wildcard term you can supply so that it can automatically do it for every cia file in the folder?
Most UNIX terminals (like macOS) support wildcards themselves so you can do that right now (e.g. *.cia will send every file ending in .cia to the program).
 
  • Like
Reactions: noducksgiven

noducksgiven

Member
Newcomer
Joined
Mar 20, 2020
Messages
11
Trophies
0
XP
67
Country
United States
Most UNIX terminals (like macOS) support wildcards themselves so you can do that right now (e.g. *.cia will send every file ending in .cia to the program).

Very awesome! I'm installing ~45GB of .cia files currently, I could cry...:yay3ds:

:bow::bow::bow:

Edit: Just wanted to update my 2 cents. It took less than 30 min to install those files, which is amazing. For a few titles (2-3 out of 30+) it didn't show up on my home screen. I fiddled with trying to use custom-install-finalize again (running it again after running it once didn't do anything), redoing custom-install for those CIAs (it could take 2-3 tries), or using FBI to grab the seed (worked for one title). I think someone else a few pages back also reported that they had to try to re-install the CIA a few times before it showed up. Overall, the tool works great, I have no complains and don't care about these minor fiddling I had to do, and I'm again grateful for the support on this forum. Cheers and stay safe all.
 
Last edited by noducksgiven,

wrsg

Well-Known Member
Member
Joined
Feb 19, 2012
Messages
105
Trophies
1
XP
531
Country
United States
Is it a known problem with the script that once the cia is copied to the sd card and it asks you to run custom-install-finalize that it says
Code:
Reading /cifinish.bin...
Couldn't find TITLE magic for entry, skipping.
And then nothing happens and the game still doesn't appear in the launcher?
 

Drflash55

Member
Newcomer
Joined
Dec 13, 2018
Messages
17
Trophies
0
Age
24
Location
Ontario, Canada
XP
179
Country
Canada
Is this supposed to be faster than how FBI handles installation of .CIA's on the SD card itself?

Chances are, people move the .CIA file to the SD card itself and then FBI installs it from there, so I'm not sure if this is meant to be any faster.
 

Retrospectre

Member
Newcomer
Joined
Mar 10, 2018
Messages
5
Trophies
0
Age
25
XP
54
Country
United Kingdom
I'm trying to install Pokemon Ultra Moon, but I get this error:
Code:
PS F:\CIA\custom-install-master> py -3 custom-install.py -b boot9.bin -m movable.sed --sd H:\ PokemonUltraMoon.cia
Finding path to install to...
Reading CIA...
Traceback (most recent call last):
  File "custom-install.py", line 92, in <module>
    cia = CIAReader(c)
  File "F:\CIA\custom-install-master\pyctr\types\cia.py", line 83, in __init__
    raise InvalidCIAError('Archive Header Size is not 0x2020')
pyctr.types.cia.InvalidCIAError: Archive Header Size is not 0x2020

The custom-install Github page says I should use a seeddb.bin file somehow, I downloaded it from the link in that page but how do I actually use it? Do I need to add an extra argument to the python command? A different game did work though, Apollo Justice; Ace Attorney, which is in the Seed DB list but didn't give any errors.
I've never used custom-install or Python before, so I might be missing something. Can anyone help out?
 

Plasmaster09

Social Justice Potato
Member
Joined
Feb 20, 2020
Messages
1,371
Trophies
1
Age
19
Location
somewhere that may or may not exist
XP
2,531
Country
United States
If you only ever install signed games that the system already has a ticket for from the eShop, you could do that, if you somehow obtain the title contents without having a system to get them from. This is not really worth it though.
theoretically, you could make the ticket a la faketik without ever having to fully hack the 3ds
 

Plasmaster09

Social Justice Potato
Member
Joined
Feb 20, 2020
Messages
1,371
Trophies
1
Age
19
Location
somewhere that may or may not exist
XP
2,531
Country
United States
Only Nintendo can create valid signed tickets accepted by the unmodified firmware, anything else would require signature checks to be patched out.
ah right
wonder if there's a way to use the firmware dump and other info gained from the standard seedminer cfw process to unencrypt or reencrypt valid tickets
 

Plasmaster09

Social Justice Potato
Member
Joined
Feb 20, 2020
Messages
1,371
Trophies
1
Age
19
Location
somewhere that may or may not exist
XP
2,531
Country
United States
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\Spencer\AppData\Local\Programs\Python\Python37-32\lib\tkinter\__init__.py", line 1705, in __call__
return self.func(*args)
File "C:\Users\Spencer\Downloads\custom-install-module-new-gui\gui.py", line 54, in on_click
self.callback()
File "C:\Users\Spencer\Downloads\custom-install-module-new-gui\gui.py", line 376, in run
print(f"Running custom-install.py with args {args}\n")
NameError: name 'args' is not defined
Um... what do I do??
 

I''S

Active Member
Newcomer
Joined
Sep 4, 2006
Messages
29
Trophies
0
XP
366
Country
Italy
Using CMD I don't have problems, but with gui version I get this after that I click run. Can you help me to fix this? Thanks!

Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Python38\lib\tkinter\__init__.py", line 1883, in __call__
return self.func(*args)
File "C:\Users\tsuhi\Documents\CIA INSTALL\gui.py", line 54, in on_click
self.callback()
File "C:\Users\tsuhi\Documents\CIA INSTALL\gui.py", line 376, in run
print(f"Running custom-install.py with args {args}\n")
NameError: name 'args' is not defined
 

Plasmaster09

Social Justice Potato
Member
Joined
Feb 20, 2020
Messages
1,371
Trophies
1
Age
19
Location
somewhere that may or may not exist
XP
2,531
Country
United States
Using CMD I don't have problems, but with gui version I get this after that I click run. Can you help me to fix this? Thanks!

Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Python38\lib\tkinter\__init__.py", line 1883, in __call__
return self.func(*args)
File "C:\Users\tsuhi\Documents\CIA INSTALL\gui.py", line 54, in on_click
self.callback()
File "C:\Users\tsuhi\Documents\CIA INSTALL\gui.py", line 376, in run
print(f"Running custom-install.py with args {args}\n")
NameError: name 'args' is not defined
I had the same problem. If you edit the code for gui.py and search for "args", you'll eventually find the "Running custom-install.py with args {args}" line. Simply edit that to remove the call to args and it works fine!
 
Last edited by Plasmaster09,
  • Like
Reactions: DarkFlare69

ihaveahax

Well-Known Member
OP
Member
Joined
Apr 20, 2015
Messages
6,069
Trophies
2
XP
7,827
Country
United States
  • Like
Reactions: ber71

ihaveahax

Well-Known Member
OP
Member
Joined
Apr 20, 2015
Messages
6,069
Trophies
2
XP
7,827
Country
United States
This issue of "args" not being defined was fixed in the latest commit on module-new-gui.
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\Spencer\AppData\Local\Programs\Python\Python37-32\lib\tkinter\__init__.py", line 1705, in __call__
return self.func(*args)
File "C:\Users\Spencer\Downloads\custom-install-module-new-gui\gui.py", line 54, in on_click
self.callback()
File "C:\Users\Spencer\Downloads\custom-install-module-new-gui\gui.py", line 376, in run
print(f"Running custom-install.py with args {args}\n")
NameError: name 'args' is not defined
Um... what do I do??
Using CMD I don't have problems, but with gui version I get this after that I click run. Can you help me to fix this? Thanks!

Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Python38\lib\tkinter\__init__.py", line 1883, in __call__
return self.func(*args)
File "C:\Users\tsuhi\Documents\CIA INSTALL\gui.py", line 54, in on_click
self.callback()
File "C:\Users\tsuhi\Documents\CIA INSTALL\gui.py", line 376, in run
print(f"Running custom-install.py with args {args}\n")
NameError: name 'args' is not defined
I had the same problem. If you edit the code for gui.py and search for "args", you'll eventually find the "Running custom-install.py with args {args}" line. Simply edit that to remove the call to args and it works fine!
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: aeiou