Packaging Mods - Stellar-Blade-Modding-Team/Stellar-Blade-Modding-Guide GitHub Wiki
[!IMPORTANT] There are two methods to package mods, cooking for windows and then use retoc to create the mod archives, or package directly as archives from the engine. For Stellar Blade we currently only use the Packaging process until Retoc will work with the game.
Step 1: PrimaryAssetLabel
To turn your assets inside UE into a mod (.utoc.ucas.pak), first you need to create an DataAsset
and choose PrimaryAssetLabel
from the list.
You can create it in the folder where your model is for easier review, but technically it can be anywhere you want.
Click Add/Import> Miscellaneous> Date Asset >PrimaryAssetLabel
Set priority
to 1
( default value 0
has been proved to be working but just in case)
Then you put in a ChunkID which can be anything except the ID the Game already uses for example chunk ID: 96
Set Cook Rule
to Always Cook
and add your Assets in the List under Explicit Assets
like this:
Click +
button under Explicit Assets section to add each imported assets you need.
Click Save
in PrimaryAssetLabel window.
Click Save All
in UE.
[!WARNING] You should not have Skeleton included in PrimaryAssetlLabel. You should only have asset you wanna replace to be assigned in label for example textures, models(Skeletal mesh). If you didn't work on any materials in UE like creating material instances then don't assign it either. If you don't need a custom PhysicsAsset or restore bone physics then you can delete the PhysicsAsset in UE or leave it as not assigned with it's default name from import. If you are not using custom Animation Blueprint then don't assign it.
Skeletal Mesh(purple) : Assign
Skeleton(blue): Don't assign
Textures(red): Assign
AnimBP(orange): Don't assign if it's dummy AnimBP.
PhysicsAsset(yellow): Assign if customized.
Material(green): Assign only if it's material instance.
Step 2(Optional): Assign to Chunk
Alternatively you can still do manual chunk ID assigning even after finishing PrimaryAssetLabel to ensure you won't encounter random error. You can skip this step if no error encountered when launch the game.
Right click on your modified asset> Assign Action
> Assign to Chunk
> set a number that's the same as in your PrimaryAssetLabel> Save all
[!WARNING] Don't assign Chunk ID with Skeleton but your model(Skeleton Mesh) and textures . It's not necessary to assign PhysicsAsset if you don't have it customized or want to restore bone physics. If you haven't modified material assets like creating material instance then don't assign it either. If you are not using custom Animation Blueprint then don't assign it.
Skeletal Mesh(purple) : Assign
Skeleton(blue): Don't assign
Textures(red): Assign
AnimBP(orange): Don't assign if it's dummy AnimBP.
PhysicsAsset(yellow): Assign if customized.
Material(green): Assign only if it's material instance.
Click Save All
in your uproject after all sets up to apply the changes before packaging.
Step 3: Packaging Project
Go to File
> Packaging Project
> Windows
, choose an output folder and it will create pakchunk files for each ChunkID that exists in your project, you can set multiple up by creating multiple DataAssets.
[!TIP] To automate this process of packaging and installing, you can use PRMZL, a batch script that after setting up with all the paths will Pack>Rename>Move>optionally zip and launch the game. Upon your experimenting and editing, You can save the changed results in the Engine, run the batch and wait for the Game to boot up.
Alternatively we might add more details of Installation if later when Custom Engine is updated for Stellar Blade. Stay Tuned. For now you can use the Epic Launcher version for the entire mod packaging process.
[!NOTE] Next we will move on to the step of Installing Mods