cs2-moddinglisted
Install: claude install-skill CitiesSkylinesModding/agents-plugins
# Modding Cities: Skylines II
A mod is a .NET assembly the game loads by scanning it for a type implementing `Game.Modding.IMod`.
What it does afterwards is add systems of its own, edit the game's data, or — rarely — rewrite a vanilla method at runtime.
The simulation is Unity ECS: city state lives in components on entities, and systems running in fixed update phases are what change it.
Most of what the player sees as content is a prefab — a data-driven object the game derives entities from — so changing what the game does is often changing data rather than code.
A change therefore starts as two questions: which components carry the state, and which system writes them.
Verified against game version 1.6.0f1.
Every reference below states its own baseline.
## Five facts to hold before writing a line
**IMPORTANT: follow this skill's references on anything they own — or at the very least grep them before acting on a familiar shape, because this game diverges from the standard shapes exactly where a prior feels safest, and the guess tends to compile, run and fail silently.**
**Mods load late, through a two-method contract.**
`Game.Modding.IMod` declares `OnLoad(UpdateSystem)` and `OnDispose()` and nothing else, and detection requires the interface directly on a top-level class.
`OnLoad` runs once per mod per process, after the world exists and every vanilla system is registered — on the boot path before prefabs load and before anything has ticked, though enabled mid-session i