Error while extracting NCA file
I first extracted the contents of an NSP file, and then I tried to extract the archive which contained the program itself. However, nstool had extracted 5 files before throwing an error.
This was the command I ran:
nstool --tik "0100ec800800c0000000000000000004.tik" -x "./narutoprogram" -k "prod.keys" aaeb87f6434beb2f253400f62bc63b54.nca
And this was the output of the command: [ContentArchive/Extract] Saving .\narutoprogram\0\main... Saving .\narutoprogram\0\main.npdm... Saving .\narutoprogram\0\rtld... Saving .\narutoprogram\0\sdk... Saving .\narutoprogram\1\narutoNext123_Release_NX64.nspd_root... [tc::io::VirtualFileSystem::openFile() ERROR] File does not exist.
Hi @rsa16 thanks for creating this issue.
Can you please confirm some details for me, to help me resolve this issue:
- What version of nstool are you using?
- What operating system are you using nstool with?
- What is the version of the title you are trying to extract?
- Can you also provide the output of the command (This shows the file tree inside the NCA)
nstool --tik "0100ec800800c0000000000000000004.tik" -k "prod.keys" --fstree aaeb87f6434beb2f253400f62bc63b54.nca
I'm using NSTool v1.6.5 along with Windows 11. I'm not sure what the version of the game I'm trying to extract is, though I believe it's 1.0.0.
And the output of the file tree command:
[NCA Header]
Format Type: NCA3
Dist. Type: Download
Content Type: Program
Key Generation: 4
Sig. Generation: 0
Kaek Index: Application (0)
Size: 0x468770000
ProgID: 0x0100ec800800c000
Content Index: 0
SdkAddon Ver.: 4.4.0 (v67371008)
RightsId: 0100EC800800C0000000000000000004
[ContentArchive/Tree]
program:/
0/
main
main.npdm
rtld
sdk
1/
narutoNext123_Release_NX64.nspd_root
data/
error64x64.dds
sprite.eft
sprite.fx
content_info/
SWITCH/
JP/
content_info.xfbin
NA/
content_info.xfbin
interface/
menu123.xml
title_autosave.xfbin
title_logo.xfbin
title_menu_bar.xfbin
title_menu_bg.xfbin
title_menu_image.xfbin
title_menu_logo.xfbin
EU/
title_menu_bar_text1.xfbin
title_menu_bar_text2.xfbin
title_menu_bar_text3.xfbin
title_menu_image.xfbin
title_menu_logo.xfbin
JP/
title_menu_bar_text1.xfbin
title_menu_bar_text2.xfbin
title_menu_bar_text3.xfbin
title_menu_image.xfbin
title_menu_logo.xfbin
NA/
title_menu_bar_text1.xfbin
title_menu_bar_text2.xfbin
title_menu_bar_text3.xfbin
title_menu_image.xfbin
title_menu_logo.xfbin
message/
SWITCH/
eng/
messageInfo.bin.xfbin
fre/
messageInfo.bin.xfbin
ger/
messageInfo.bin.xfbin
ita/
messageInfo.bin.xfbin
pol/
messageInfo.bin.xfbin
por/
messageInfo.bin.xfbin
rus/
messageInfo.bin.xfbin
spa/
messageInfo.bin.xfbin
out/
compute_morphingCSMainMorphing3.nvn
compute_morphingCSMainMorphing3_Once.nvn
compute_morphingCSMainMorphing3and4.nvn
compute_morphingCSMainMorphing3and4_Once.nvn
compute_morphingCSMainMorphing4.nvn
compute_morphingCSMainMorphing4_Once.nvn
compute_morphingCSMainMorphingBase3.nvn
compute_morphingCSMainMorphingBase3_Once.nvn
compute_morphingCSMainMorphingBase3and4.nvn
compute_morphingCSMainMorphingBase3and4_Once.nvn
compute_morphingCSMainMorphingBase4.nvn
compute_morphingCSMainMorphingBase4_Once.nvn
compute_skinningCSMainSkinning3.nvn
compute_skinningCSMainSkinning3EX.nvn
compute_skinningCSMainSkinning3EX_Once.nvn
compute_skinningCSMainSkinning3_Once.nvn
compute_skinningCSMainSkinning3and4.nvn
compute_skinningCSMainSkinning3and4EX.nvn
compute_skinningCSMainSkinning3and4EX_Once.nvn
compute_skinningCSMainSkinning3and4_Once.nvn
compute_skinningCSMainSkinning4.nvn
compute_skinningCSMainSkinning4EX.nvn
compute_skinningCSMainSkinning4EX_Once.nvn
compute_skinningCSMainSkinning4_Once.nvn
compute_spritebatchCSSpriteBatch3D.nvn
linePS.nvn
lineVS_2D.nvn
lineVS_3D.nvn
model_samplePS.nvn
model_sampleVS.nvn
spritePS.nvn
spriteVS_2D.nvn
spriteVS_3D.nvn
spriteVS_BATCH2D.nvn
spriteVS_PART2D.nvn
spriteVS_PART3D.nvn
spriteVS_POLY2D.nvn
spriteVS_POLY3D.nvn
systemPS.nvn
systemPS_ERROR.nvn
systemPS_QUAD.nvn
systemVS.nvn
systemVS_ERROR.nvn
systemVS_QUAD.nvn
systemVS_SKIN.nvn
shader/
system.eft
system.fx
sound/
config.nus3conf
SWITCH/
bgm.acb
bgm.awb
common.xfbin
storm3.acf
system/
AreaTexDX10.tex.xfbin
SearchTex.tex.xfbin
celshade.tex.xfbin
content_info.xfbin
grd00.tex.xfbin
nml00.tex.xfbin
nuccMaterial_nx.nsh
nuccPostEffect_nx.nsh
xftool.fnt.xfbin
ui/
cmn/
xcmn00.xfbin
SWITCH/
cmn_button00.xfbin
xcmn_button00.xfbin
eng/
xcmn_text00.xfbin
fre/
xcmn_text00.xfbin
ger/
xcmn_text00.xfbin
ita/
xcmn_text00.xfbin
por/
xcmn_text00.xfbin
rus/
xcmn_text00.xfbin
spa/
xcmn_text00.xfbin
font/
font_chi.xfbin
xf123_staffroll.fnt.xfbin
xfgame_cmn.fnt.xfbin
SWITCH/
iconfontParam.bin.xfbin
rus/
xfgame_cmn.fnt.xfbin
option/
option_board.xfbin
option_button.xfbin
option_cmn.xfbin
option_cursor.xfbin
option_line.xfbin
option_scrbar.xfbin
SWITCH/
option_button.xfbin
staff_roll/
SWITCH/
eur/
staffRollData_Storm123.xfbin
rus/
staffRollData_Storm123.xfbin
usa/
staffRollData_Storm123.xfbin
data_ns1/
error64x64.dds
sprite.eft
disc/
adx2.cpk
dataRegion.cpk
movie.cpk
out/
compute_morphingCSMainMorphing3.nvn
compute_morphingCSMainMorphing3_Once.nvn
compute_morphingCSMainMorphing3and4.nvn
compute_morphingCSMainMorphing3and4_Once.nvn
compute_morphingCSMainMorphing4.nvn
compute_morphingCSMainMorphing4_Once.nvn
compute_morphingCSMainMorphingBase3.nvn
compute_morphingCSMainMorphingBase3_Once.nvn
compute_morphingCSMainMorphingBase3and4.nvn
compute_morphingCSMainMorphingBase3and4_Once.nvn
compute_morphingCSMainMorphingBase4.nvn
compute_morphingCSMainMorphingBase4_Once.nvn
compute_skinningCSMainSkinning3.nvn
compute_skinningCSMainSkinning3EX.nvn
compute_skinningCSMainSkinning3EX_Once.nvn
compute_skinningCSMainSkinning3_Once.nvn
compute_skinningCSMainSkinning3and4.nvn
compute_skinningCSMainSkinning3and4EX.nvn
compute_skinningCSMainSkinning3and4EX_Once.nvn
compute_skinningCSMainSkinning3and4_Once.nvn
compute_skinningCSMainSkinning4.nvn
compute_skinningCSMainSkinning4EX.nvn
compute_skinningCSMainSkinning4EX_Once.nvn
compute_skinningCSMainSkinning4_Once.nvn
compute_spritebatchCSSpriteBatch3D.nvn
linePS.nvn
lineVS_2D.nvn
lineVS_3D.nvn
model_samplePS.nvn
model_sampleVS.nvn
spritePS.nvn
spriteVS_2D.nvn
spriteVS_3D.nvn
spriteVS_BATCH2D.nvn
spriteVS_PART2D.nvn
spriteVS_PART3D.nvn
spriteVS_POLY2D.nvn
spriteVS_POLY3D.nvn
systemPS.nvn
systemPS_ERROR.nvn
systemPS_QUAD.nvn
systemVS.nvn
systemVS_ERROR.nvn
systemVS_QUAD.nvn
systemVS_SKIN.nvn
sim/
data.cpk
sound.cpk
stage.cpk
sound/
config.nus3conf
stream/
d01_20.strm.xfbin
d01_20.xml
d01_20e.xfbin
d01_25.strm.xfbin
d01_25.xml
d01_2k.xfbin
d02_20.strm.xfbin
d02_20.xml
d02_20e.xfbin
d02_25.strm.xfbin
d02_25.xml
d02_2k.xfbin
d03_10.strm.xfbin
d03_10.xml
d03_10e.xfbin
d03_15.strm.xfbin
d03_15.xml
d03_1k.xfbin
d04_10.strm.xfbin
d04_10.xml
d04_10e.xfbin
d04_15.strm.xfbin
d04_15.xml
d04_1k.xfbin
d05_10.strm.xfbin
d05_10.xml
d05_10e.xfbin
d05_15.strm.xfbin
d05_15.xml
d05_1k.xfbin
d06_10.strm.xfbin
d06_10.xml
d06_10e.xfbin
d06_15.strm.xfbin
d06_15.xml
d06_1k.xfbin
d07_10.strm.xfbin
d07_10.xml
d07_10e.xfbin
d07_15.strm.xfbin
d07_15.xml
d07_1k.xfbin
d08_10.strm.xfbin
d08_10.xml
d08_10e.xfbin
d08_15.strm.xfbin
d08_15.xml
d08_1k.xfbin
d09_10.strm.xfbin
d09_10.xml
d09_10e.xfbin
d09_15.strm.xfbin
d09_15.xml
d09_1k.xfbin
d10_10.strm.xfbin
d10_10.xml
d10_10e.xfbin
d10_15.strm.xfbin
d10_15.xml
d10_1k.xfbin
d11_10.strm.xfbin
d11_10.xml
d11_10e.xfbin
d11_15.strm.xfbin
d11_15.xml
d11_1k.xfbin
d12_10.strm.xfbin
d12_10.xml
d12_10e.xfbin
d12_11.strm.xfbin
d12_11.xml
d12_15.strm.xfbin
d12_15.xml
d12_1k.xfbin
d13_10.strm.xfbin
d13_10.xml
d13_10e.xfbin
d13_15.strm.xfbin
d13_15.xml
d13_1k.xfbin
d14_10.strm.xfbin
d14_10.xml
d14_10e.xfbin
d14_15.strm.xfbin
d14_15.xml
d14_1k.xfbin
d15_10.strm.xfbin
d15_10.xml
d15_10e.xfbin
d15_15.strm.xfbin
d15_15.xml
d15_1k.xfbin
d16_10.strm.xfbin
d16_10.xml
d16_10e.xfbin
d16_15.strm.xfbin
d16_15.xml
d16_1k.xfbin
d17_10.strm.xfbin
d17_10.xml
d17_10e.xfbin
d17_10e_JP.xfbin
d17_11.strm.xfbin
d17_11.xml
d17_15.strm.xfbin
d17_15.xml
d17_1k.xfbin
d18_10.strm.xfbin
d18_10.xml
d18_10e.xfbin
d18_15.strm.xfbin
d18_15.xml
d18_1k.xfbin
d19_10.strm.xfbin
d19_10.xml
d19_10e.xfbin
d19_15.strm.xfbin
d19_15.xml
d19_1k.xfbin
d20_10.strm.xfbin
d20_10.xml
d20_10e.xfbin
d20_15.strm.xfbin
d20_15.xml
d20_1k.xfbin
d21_10.strm.xfbin
d21_10.xml
d21_10e.xfbin
d21_15.strm.xfbin
d21_15.xml
d21_1k.xfbin
d22_10.strm.xfbin
d22_10.xml
d22_10e.xfbin
d22_15.strm.xfbin
d22_15.xml
d22_1k.xfbin
d23_10.strm.xfbin
d23_10.xml
d23_10e.xfbin
d23_15.strm.xfbin
d23_15.xml
d23_1k.xfbin
d24_10.strm.xfbin
d24_10.xml
d24_10e.xfbin
d24_15.strm.xfbin
d24_15.xml
d24_1k.xfbin
d25_10.strm.xfbin
d25_10.xml
d25_10e.xfbin
d25_15.strm.xfbin
d25_15.xml
d25_1k.xfbin
d26_10.strm.xfbin
d26_10.xml
d26_10e.xfbin
d26_15.strm.xfbin
d26_15.xml
d26_1k.xfbin
d27_10.strm.xfbin
d27_10.xml
d27_10e.xfbin
d27_15.strm.xfbin
d27_15.xml
d27_1k.xfbin
d28_10.strm.xfbin
d28_10.xml
d28_10e.xfbin
d28_15.strm.xfbin
d28_15.xml
d28_1k.xfbin
d29_10.strm.xfbin
d29_10.xml
d29_10e.xfbin
d29_15.strm.xfbin
d29_15.xml
d29_1k.xfbin
d30_10.strm.xfbin
d30_10.xml
d30_10e.xfbin
d30_15.strm.xfbin
d30_15.xml
d30_1k.xfbin
d31_20.strm.xfbin
d31_20.xml
d31_20e.xfbin
d31_25.strm.xfbin
d31_25.xml
d32_20.strm.xfbin
d32_20.xml
d32_20e.xfbin
d32_25.strm.xfbin
d32_25.xml
d32_2k.xfbin
d33_10.strm.xfbin
d33_10.xml
d33_10e.xfbin
d33_15.strm.xfbin
d33_15.xml
d34_10.strm.xfbin
d34_10.xml
d34_10e.xfbin
d34_15.strm.xfbin
d34_15.xml
d35_10.strm.xfbin
d35_10.xml
d35_10e.xfbin
d35_15.strm.xfbin
d35_15.xml
d36_10.strm.xfbin
d36_10.xml
d36_10e.xfbin
d36_15.strm.xfbin
d36_15.xml
system/
AreaTexDX10.tex.xfbin
SearchTex.tex.xfbin
celshade.tex.xfbin
grd00.tex.xfbin
nml00.tex.xfbin
nuccMaterial_nx.nsh
nuccPostEffect_nx.nsh
outlinePatch.xml
xftool.fnt.xfbin
data_ns2/
error64x64.dds
sprite.eft
disc/
adx2.cpk
dataRegion.cpk
movie.cpk
out/
compute_morphingCSMainMorphing3.nvn
compute_morphingCSMainMorphing3_Once.nvn
compute_morphingCSMainMorphing3and4.nvn
compute_morphingCSMainMorphing3and4_Once.nvn
compute_morphingCSMainMorphing4.nvn
compute_morphingCSMainMorphing4_Once.nvn
compute_morphingCSMainMorphingBase3.nvn
compute_morphingCSMainMorphingBase3_Once.nvn
compute_morphingCSMainMorphingBase3and4.nvn
compute_morphingCSMainMorphingBase3and4_Once.nvn
compute_morphingCSMainMorphingBase4.nvn
compute_morphingCSMainMorphingBase4_Once.nvn
compute_skinningCSMainSkinning3.nvn
compute_skinningCSMainSkinning3EX.nvn
compute_skinningCSMainSkinning3EX_Once.nvn
compute_skinningCSMainSkinning3_Once.nvn
compute_skinningCSMainSkinning3and4.nvn
compute_skinningCSMainSkinning3and4EX.nvn
compute_skinningCSMainSkinning3and4EX_Once.nvn
compute_skinningCSMainSkinning3and4_Once.nvn
compute_skinningCSMainSkinning4.nvn
compute_skinningCSMainSkinning4EX.nvn
compute_skinningCSMainSkinning4EX_Once.nvn
compute_skinningCSMainSkinning4_Once.nvn
compute_spritebatchCSSpriteBatch3D.nvn
linePS.nvn
lineVS_2D.nvn
lineVS_3D.nvn
model_samplePS.nvn
model_sampleVS.nvn
spritePS.nvn
spriteVS_2D.nvn
spriteVS_3D.nvn
spriteVS_BATCH2D.nvn
spriteVS_PART2D.nvn
spriteVS_PART3D.nvn
spriteVS_POLY2D.nvn
spriteVS_POLY3D.nvn
systemPS.nvn
systemPS_ERROR.nvn
systemPS_QUAD.nvn
systemVS.nvn
systemVS_ERROR.nvn
systemVS_QUAD.nvn
systemVS_SKIN.nvn
sim/
data.cpk
sound.cpk
stage.cpk
sound/
config.nus3conf
system/
ACChunkList.bin.xfbin
AreaTexDX10.tex.xfbin
SearchTex.tex.xfbin
ccAdjustParam.xfbin
ccAdjustParamTUI.xfbin
celshade.tex.xfbin
grd00.tex.xfbin
nml00.tex.xfbin
nuccMaterial_nx.nsh
nuccPostEffect_nx.nsh
xftool.fnt.xfbin
SWITCH/
ccAdjustParamAT_Data.xfbin
ccAdjustParamPG_Data.xfbin
data_ns3/
error64x64.dds
sprite.eft
disc/
adx2.cpk
dataRegion.cpk
dlc.cpk
movie.cpk
out/
compute_morphingCSMainMorphing3.nvn
compute_morphingCSMainMorphing3_Once.nvn
compute_morphingCSMainMorphing3and4.nvn
compute_morphingCSMainMorphing3and4_Once.nvn
compute_morphingCSMainMorphing4.nvn
compute_morphingCSMainMorphing4_Once.nvn
compute_morphingCSMainMorphingBase3.nvn
compute_morphingCSMainMorphingBase3_Once.nvn
compute_morphingCSMainMorphingBase3and4.nvn
compute_morphingCSMainMorphingBase3and4_Once.nvn
compute_morphingCSMainMorphingBase4.nvn
compute_morphingCSMainMorphingBase4_Once.nvn
compute_skinningCSMainSkinning3.nvn
compute_skinningCSMainSkinning3EX.nvn
compute_skinningCSMainSkinning3EX_Once.nvn
compute_skinningCSMainSkinning3_Once.nvn
compute_skinningCSMainSkinning3and4.nvn
compute_skinningCSMainSkinning3and4EX.nvn
compute_skinningCSMainSkinning3and4EX_Once.nvn
compute_skinningCSMainSkinning3and4_Once.nvn
compute_skinningCSMainSkinning4.nvn
compute_skinningCSMainSkinning4EX.nvn
compute_skinningCSMainSkinning4EX_Once.nvn
compute_skinningCSMainSkinning4_Once.nvn
compute_spritebatchCSSpriteBatch3D.nvn
linePS.nvn
lineVS_2D.nvn
lineVS_3D.nvn
model_samplePS.nvn
model_sampleVS.nvn
spritePS.nvn
spriteVS_2D.nvn
spriteVS_3D.nvn
spriteVS_BATCH2D.nvn
spriteVS_PART2D.nvn
spriteVS_PART3D.nvn
spriteVS_POLY2D.nvn
spriteVS_POLY3D.nvn
systemPS.nvn
systemPS_ERROR.nvn
systemPS_QUAD.nvn
systemVS.nvn
systemVS_ERROR.nvn
systemVS_QUAD.nvn
systemVS_SKIN.nvn
sim/
data.cpk
sound.cpk
stage.cpk
sound/
config.nus3conf
system/
AreaTexDX10.tex.xfbin
SearchTex.tex.xfbin
celshade.tex.xfbin
grd00.tex.xfbin
nml00.tex.xfbin
nuccMaterial_nx.nsh
nuccPostEffect_nx.nsh
xftool.fnt.xfbin
2/
NintendoLogo.png
StartupMovie.gif
This looks like a bug in how empty files are handled. I'm quite busy at the moment. I'm not sure when I'll fix it.
Thank you for reporting though 😁