Worked examples¶
These 11 public demos are in the repository’s demos folder. Choose one close to your goal, then use its README alongside the linked recipe. NoDepTexture is a test fixture under tests/fixtures, not a demo.
| Demo | What it shows | Route | Recipe link | Needs DLL | GitHub link to demo folder |
|---|---|---|---|---|---|
| MaterialTweak | Change a value on a shipped material. | Replace | Material properties | No | Open demo |
| WeaponMesh | Replace a shipped rifle’s mesh and five textures; its DLL changes the inventory icon. | Replace | Replace weapon art | Yes | Open demo |
| WeaponAdd | Publish three models and build three new weapons from shipped definitions. | Add + Build | Add a weapon | Yes | Open demo |
| ReplaceUiSounds | Replace three shipped UI sounds. | Replace | Replace sounds | No | Open demo |
| MenuMusic | Replace two shipped menu music tracks by media ID. | Replace | Replace sounds | No | Open demo |
| AddUiSounds | Bake two new sounds; its DLL loads their bank and plays them on a hotkey. | Add | Add sounds | Yes | Open demo |
| IntroVideo | Replace an intro video, its sound, and its subtitles. | Replace | Videos | Yes | Open demo |
| QuitCutscene | Add a video key; its DLL plays the clip when leaving the main menu. | Add | Videos | Yes | Open demo |
| CustomCreature | Build a new creature from a model, rig, clips, and a shipped donor. | Build | Creatures | Yes | Open demo |
| HumanoidSoldier | Build a playable soldier with a retargeted model and game clips. | Build | Humanoid soldiers | No | Open demo |
| ReplaceCharacterBody | Build a new body for an existing DLC character while keeping her identity. | Build | Replace a character body | No | Open demo |
How to try a demo¶
- Clone or download the repository. Open a terminal at its root. Build ContentTool first:
Of the six demo projects with DLLs, CustomCreature and WeaponAdd reference bin\Release\ContentTool\ContentTool.dll through their project files, so build ContentTool before building either of them. ContentTool and every demo project find the game’s assemblies through PPRoot; if Phoenix Point is outside the project file’s default location, supply -p:PPRoot="<Phoenix Point>" to each build.
-
Copy the built
bin\Release\ContentToolfolder into<Phoenix Point>\Mods\. Copy your chosen demo into its own sibling folder,<Phoenix Point>\Mods\<Demo>\. Keep itsmeta.json,ppcontent.json, and anyContent,Icons, orDistfolders it contains. The demo must not sit insideMods\ContentTool\. -
If the table says Yes under Needs DLL, build that demo’s
.csprojin Release configuration. Copy its built<Demo>.dllintoMods\<Demo>\, besidemeta.json. The demo README names its build project and any game dependency. -
Start Phoenix Point. In Mods, tick Content Tool. Bake the copied demo from the game console: use
ct_sound bake <Demo>for ReplaceUiSounds and MenuMusic; usect_project <Demo>for the other demos. IntroVideo replaces sound as well as video, so run both commands for it. Read the final result and fix any refusal before continuing. -
Tick the demo in Mods and follow its README’s in-game check. A clean bake checks files and declarations; the in-game check tells you whether the intended effect appeared.
For the full sequence from validation through packaging, see the lifecycle.