[Request] Split cooked game content into multiple PAK files

Currently, there are only two options of using .pak files for cooked content: having all the assets stored in a single .pak file, or having no .pak at all. Both options have their weaknesses.

While packaging cooked content is generally a good idea, especially for big games (no disk space waste because of small files, better compression efficiency, easier to manage) having the whole game content in a single file is not always acceptable. The main issue is patching.

Thereby, I’d like to request an option that would allow developers to split their content into several .pak files, so each of them could be replaced independently!

There are several ways to achieve this. For example, there could be a special folder prefix/suffix that tells the packager that the content of this folder must be separated into a single pak. For example:

Content/Sounds-Pak/…

Content/Textures-Pak/…

Content/Meshes-Pak/…

will become:

Content/Paks/Sounds.pak

Content/Paks/Textures.pak

Content/Paks/Meshes.pak

And

Content/Blah/MyPak-Pak/…

will become:

Content/Paks/Blah/MyPak.pak

or even:

Content/Paks/MyPak.pak

(since the directory structure doesn’t really matter for a packaged game :))

Of course this solution is just an example, I’m sure there are better ways to achieve this (maybe adding this option to Frontend?)

Nevertheless, I think that ability to split .paks will greatly improve the control over packaging and will make patching a lot easier because we will be able to divide the content into multiple pieces of reasonable size, while still having it packaged.

Thanks,

Robert.

Nevermind :slight_smile:
The engine actually can load multiple pak files, so the content can be split. However it requires manual packaging using UnrealPak with custom response files. But it works for me!

Could you give me a bit of insight of how you got it to load multiple pak files? Maybe just the basic idea?

Because I’m intereseted in this as well.

The engine automatically loads all pak files located in Content/Paks directory. To create multiple paks you have to manually run UnrealPak with appropriate arguments.

Thanks for the info! :slight_smile: