← ClaudeAtlas

cs2-moddinglisted

How Cities: Skylines II is built and how a mod changes it. Use when writing or debugging CS2 mod code, when deciding how to change something the game simulates, when locating the systems, components or prefab data behind a game mechanic, or when a mod runs at the wrong moment, breaks another mod, or does not survive a save.
CitiesSkylinesModding/agents-plugins · ★ 5 · Web & Frontend · score 74
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