Working on content
Custom content in Source 2 is made inside an addon: a named folder the game mounts on request, holding the same directory structure a shipped game does.
Everything in this section follows from one shape. An addon exists twice, once as the files you edit and once as the files the game loads:
Counter-Strike Global Offensive/
├── content/csgo_addons/my_addon/ source files, what you edit
│ ├── maps/my_map.vmap
│ └── materials/wall.vmat
└── game/csgo_addons/my_addon/ compiled output, what the game loads
├── maps/my_map.vpk
└── materials/wall.vmat_c
tip
Work on the content/ side. Anything edited under game/ is overwritten by the next compile. There are a few exceptions for that. Read the pages in this section for more information.
In this section
- Addons - Addons over existing maps
- content/ and game/ - The two mirrored directory trees that Source 2's asset system is built around.
- Directory layout - Where each file type belongs in a Source 2 install.
- Compiling maps - What a map build produces, what it reuses from the previous build, and what to rebuild after each kind of change.
- Decompiling assets - Recovering editable files from a shipped game's compiled content.