Skip to content
This repository was archived by the owner on Aug 24, 2023. It is now read-only.
This repository was archived by the owner on Aug 24, 2023. It is now read-only.

Tool doesn't support PAK patch type #12

@masagrator

Description

@masagrator

This kind of PAK can be found in Summer Pockets Reflection Blue on Switch.
PARTS2.zip

This is a patch to PARTS.PAK

It has the same files registered in header as in PARTS, but only files that are changed are actually packed while all other files are nulled in offset-size table (+entries in additional tables if necessary)

error

Unhandled exception. System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Users\Admin\Documents\Switch\ReflectionBlue\romfs\PARTS2.PAK_unpacked\'.
   at System.IO.FileStream.ValidateFileHandle(SafeFileHandle fileHandle)
   at System.IO.FileStream.CreateFileOpenHandle(FileMode mode, FileShare share, FileOptions options)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
   at System.IO.StreamWriter.ValidateArgsAndOpenPath(String path, Boolean append, Encoding encoding, Int32 bufferSize)
   at ProtPak.PAKManager.Unpack(String file) in D:\a\LucaSystemTools\LucaSystemTools\LucaSystemTools\LucaSystemTools\PakTools.cs:line 141
   at ProtPak.PAKManager.FileExport(String path, String outpath) in D:\a\LucaSystemTools\LucaSystemTools\LucaSystemTools\LucaSystemTools\PakTools.cs:line 222
   at LucaSystem.Utils.CommandLineUtil.OnExecute() in D:\a\LucaSystemTools\LucaSystemTools\LucaSystemTools\LucaSystemTools\Utils\CommandLineUtil.cs:line 171
--- End of stack trace from previous location where exception was thrown ---
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.Invoke(MethodInfo method, Object instance, Object[] arguments)
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.OnExecute(ConventionContext context, CancellationToken cancellationToken)
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.<>c__DisplayClass0_0.<<Apply>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.ExecuteAsync(String[] args, CancellationToken cancellationToken)
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.ExecuteAsync[TApp](CommandLineContext context, CancellationToken cancellationToken)
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.Execute[TApp](CommandLineContext context)
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.Execute[TApp](IConsole console, String[] args)
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.Execute[TApp](String[] args)
   at LucaSystemTools.Program.Main(String[] args) in D:\a\LucaSystemTools\LucaSystemTools\LucaSystemTools\LucaSystemTools\Program.cs:line 17

this is not an error related to not existing folder since this folder is created before crash. It works correctly for standard PAK files, but not for this type.

Solution: ignore all files with size nulled

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions