@LinkmstrYT Here's how I rebuilt the DLC:
- Extract the content of the DLC CIA file:
Code:
ctrtool -p --content=c DLC.cia
- Decrypt the content you need using your favorite decryptor. In this case, c.0003.00000019 and c.0004.0000001a contains Invisible Kingdom files. They are the same, so you only need to decrypt and rebuild one of them.
- Extract the content.
- Replace the original files with your modified ones.
- Rebuild the RomFS, using RomFS Builder.
- Rebuild the content file.
Code:
makerom -f ncch -target t -rsf DLC.rsf -romfs romfs.bin -o c.0003.00000019
DLC.rsf:
Code:
BasicInfo:
CompanyCode : 00
ProductCode : CTR-M-BFXJ-00
ContentType : Application # Application / SystemUpdate / Manual / Child / Trial
TitleInfo:
UniqueId : 0x012dc
Category : AddOnContents # Application / SystemApplication / Applet / Firmware / Base / DlpChild / Demo / Contents / SystemContents / SharedContents / AddOnContents / Patch / AutoUpdateContents
For other games, just replace the UniqueID. Editing Product Code is recommended.
- Rebuild the CIA file
Code:
makerom -f cia -rsf rom.rsf -o 0004008c0012dc00.cia -ckeyid 0 -major 0 -minor 10 -micro 0 -DSaveSize=0 -dlc -i c.0000.0000005b:0x0000:0x0000005b -i c.0001.00000017:0x0001:0x00000017 -i c.0002.00000018:0x0002:0x00000018 -i c.0003.00000019:0x0003:0x00000019 -i c.0004.0000001a:0x0004:0x0000001a -i c.0005.00000005:0x0005:0x00000005 -i c.0006.00000006:0x0006:0x00000006 -i c.0007.00000007:0x0007:0x00000007 -i c.0008.00000025:0x0008:0x00000025 -i c.0009.0000001c:0x0009:0x0000001c -i c.000a.0000001d:0x000a:0x0000001d -i c.000b.00000042:0x000b:0x00000042 -i c.000c.0000001f:0x000c:0x0000001f -i c.000d.00000020:0x000d:0x00000020 -i c.000e.00000029:0x000e:0x00000029 -i c.000f.0000003f:0x000f:0x0000003f -i c.0010.00000040:0x0010:0x00000040 -i c.0011.0000002c:0x0011:0x0000002c -i c.0012.0000002d:0x0012:0x0000002d -i c.0013.0000002e:0x0013:0x0000002e -i c.0014.0000002f:0x0014:0x0000002f -i c.0015.00000030:0x0015:0x00000030 -i c.0016.00000031:0x0016:0x00000031 -i c.0017.00000032:0x0017:0x00000032 -i c.0018.00000033:0x0018:0x00000033 -i c.0019.00000034:0x0019:0x00000034 -i c.001a.00000035:0x001a:0x00000035 -i c.001b.00000036:0x001b:0x00000036 -i c.001c.00000037:0x001c:0x00000037 -i c.001d.00000038:0x001d:0x00000038 -i c.001e.00000039:0x001e:0x00000039 -i c.001f.0000003a:0x001f:0x0000003a -i c.0020.00000043:0x0020:0x00000043 -i c.0021.00000044:0x0021:0x00000044 -i c.0022.00000045:0x0022:0x00000045 -i c.0023.00000046:0x0023:0x00000046 -i c.0024.00000047:0x0024:0x00000047 -i c.0025.00000048:0x0025:0x00000048 -i c.0026.00000049:0x0026:0x00000049 -i c.0027.0000004a:0x0027:0x0000004a -i c.0028.00000057:0x0028:0x00000057 -i c.0029.0000004c:0x0029:0x0000004c -i c.002a.0000004d:0x002a:0x0000004d -i c.002b.0000004e:0x002b:0x0000004e -i c.002c.0000004f:0x002c:0x0000004f -i c.002d.00000050:0x002d:0x00000050 -i c.002e.00000051:0x002e:0x00000051 -i c.002f.00000052:0x002f:0x00000052 -i c.0030.00000053:0x0030:0x00000053 -i c.0031.00000059:0x0031:0x00000059 -i c.0032.0000005c:0x0032:0x0000005c -i c.0033.0000005a:0x0033:0x0000005a
rom.rsf:
Code:
Option:
MediaFootPadding: true
EnableCrypt: false
SystemControlInfo:
SaveDataSize: $(SaveSize)K
If you want to build the DLC for testing, just remove the unnecessary arguments. Version options (-major, -minor, -micro) is optional and don't matter much for DLC.
The modified DLC doesn't work on Gateway 3DS (atm), because it can't handle unsigned CFA files.