Claude fixed it for me, you’ll find below its summary.
UEFN 42.40 crashes at startup: “Corrupt pak index detected” on a leftover 42.30 pak (pakchunk70-WindowsClient.pak)
Versions
- UEFN: ++Fortnite+Release-42.40-CL-59247843
- Fortnite: ++Fortnite+Release-42.40-CL-59086525 (updated from 42.30, CL-58813929)
- Epic Games Launcher 20.3.5, Windows 10
Symptom
UEFN crashes immediately on launch, before any project opens. The crash log ends with:
Corrupt pak PrimaryIndex detected!
Filename: ../../../FortniteGame/Content/Paks/pakchunk70-WindowsClient.pak
Encrypted: 1
Total Size: 421212
Index Offset: 403830
Index Size: 1040
Stored Index Hash: 5885F32C751D18AA265150175A4BA741F6AAA4D6
Computed Index Hash: A3301133EE1EA6A50FCA32F3B9553EC8CF0CD5EF
Fatal error: [File:.../Runtime/PakFile/Private/PakFile.cpp] [Line: 377]
Corrupt pak index detected on pak file: ../../../FortniteGame/Content/Paks/pakchunk70-WindowsClient.pak
Cause
The pak is not corrupt. It is left over from 42.30:
- pakchunk70-WindowsClient (.pak, .sig, .ucas, .utoc) is dated from the 42.30 release.
- It is not listed in either 42.40 install manifest (Fortnite or UEFN).
- It uses the main key, and the 42.40 main key opens every other main-key pak in the folder but not this one, so it is still encrypted with the 42.30 key.
- UEFN mounts every pak in the Paks folder at startup, fails to decrypt this one, reports it as corrupt and stops with a fatal error.
Ten more 42.30 pak sets were also left behind and are not in either 42.40 manifest: pakchunk1001, 1002, 1003, 1004, 1006, 1007, 1013, 1016, 1022 and 1023 (about 220 MB). They use their own keys, so they did not crash UEFN, but they are dead files.
Verifying both Fortnite and UEFN in the launcher completed successfully but did not remove any of these files, because Verify only checks files that are in the manifest.
Background: this install went through several failed update attempts first (the IS-UP-IZ04 “Invalid InstallTags” launcher issue, since fixed by a launcher update), including a fresh reinstall over the existing install folder, so I cannot say which step left the files behind.
Workaround (confirmed)
Close UEFN and Fortnite, then move the leftover files out of the Paks folder (moved, not deleted, so it can be undone). In Command Prompt, for the default install folder:
mkdir "%USERPROFILE%\Fortnite-42.30-leftovers\Paks"
for %n in (70 1001 1002 1003 1004 1006 1007 1013 1016 1022 1023) do @for %e in (pak sig ucas utoc) do @move "C:\Program Files\Epic Games\Fortnite\FortniteGame\Content\Paks\pakchunk%n-WindowsClient.%e" "%USERPROFILE%\Fortnite-42.30-leftovers\Paks\"
dir /b "%USERPROFILE%\Fortnite-42.30-leftovers\Paks" | find /c /v ""
The last line should print 44. If it reports “Access is denied”, run Command Prompt as administrator. The chunk numbers are the ones left over on my install; on another machine, pakchunk70 is the one named in the crash log, and other leftovers may differ. To undo:
move "%USERPROFILE%\Fortnite-42.30-leftovers\Paks\*" "C:\Program Files\Epic Games\Fortnite\FortniteGame\Content\Paks\"
After moving the files, UEFN 42.40 starts normally.
Requests
- Have updates and repairs remove pak files that are no longer in the build’s manifest.
- Have Verify report (or offer to remove) extra pak files in the Paks folder.
- When a pak that is not part of the current build cannot be decrypted, skip it with a warning instead of a fatal “corrupt pak” error, or at least name the file and suggest removing it.