Recipes¶
Use How a mod is made for the lifecycle and Discover game content for target names. A recipe begins where those shared steps leave off: the route-specific folder, complete manifests, bake command, test and limits.
| Change | Content route | DLL? | Recipe |
|---|---|---|---|
Replace a bundle Texture2D |
replace[].texture |
no | Textures and icons |
| Set one float on a shipped material | replace[].material |
no | Materials |
| Replace a static or rigged mesh | replace[].mesh |
no | Meshes and animated models |
| Publish a new model | Content\Models + publish[] |
only if behaviour must use it | Meshes |
| Replace loose/streamed media | sounds[] or media-ID filename |
no | Sounds |
| Add a sound | Content\Audio |
only to trigger it | Sounds |
| Replace a video | replace[].video with asset |
no | Videos |
| Add a video | replace[].video without asset |
only to trigger it | Videos |
| Build a creature from its own rig and clips | creature |
yes | Creature and animation contract |
| Clone, add and fit weapons | weapons[] |
yes | Weapon and in-game fit workbench |
One project may use any combination of these rows and folders. Read the combined example if you are about to create one mod per asset type.
For fields and command syntax, use the manifest and command reference. A DLL is required for exactly three kinds of work: weapons, creatures, and anything that needs a trigger or def edit. The conditional table rows are instances of that third rule, not additional content routes that inherently need code. Use the shared, compilable behaviour-DLL project and deployment loop.