In 4.11 there’s a new module called HotfixManager which can download PAK files used to patch your game at runtime (not exe, just BPs, content, etc.) Here’s the code I wrote to mount PAK files:
if (!FCoreDelegates::OnMountPak.IsBound())
{
UE_LOG(LogHotfixManager, Error, TEXT("PAK file (%s) could not be mounted because OnMountPak is not bound"), *FileHeader.FileName);
return false;
}
FString PakLocation = FString::Printf(TEXT("%s/%s"), *GetCachedDirectory(), *FileHeader.DLName);
if (FCoreDelegates::OnMountPak.Execute(PakLocation, 0))
{
MountedPakFiles.Add(FileHeader.DLName);
UE_LOG(LogHotfixManager, Log, TEXT("Hotfix mounted PAK file (%s)"), *FileHeader.FileName);