Unreal startup packages implementation

Hey folks,

I’m wondering if anyone has any good insight on how UE determines its startup packages (and how can I potentially omit paths from this list) This question bleeds into c++ discussion a bit, but figured it’s best for here.

Some background to my question is that I have created a custom uasset (in c++) that has SoftClass and SoftObject fields linking to arbitrary things. This asset is plugged into a PrimaryAsset for chunking. All the soft references go into the correct pak file, however the custom asset gets put into the default pak file (pak0) because for some reason UE is adding the custom asset package into the known startup packages.

If I modify CookOnTheFlyServer.cpp to omit the package path of my custom asset, then everything works fine

CookByTheBookOptions->StartupPackages.Add(It->GetFName());

Any insight is appreciated, thanks!