SourcePorter is a user-friendly app that uses Valve's import_map_community
scripts to port maps from CS:GO to Counter-Strike 2.
- BSP or VMF input (
.bsp/.vmf). The program can automatically decompile a BSP and port it to Source 2 along with its textures and materials. - Fast imports. By default the port imports all asset sources (materials
and models) without the slow per-asset compile, so you can finish the map in
Hammer. Tick Compile Assets to also compile them to
_c(needed before shipping the addon). Imports use all your CPU cores minus one. - Addon verification. After each import it finds missing textures and models and reports them in the console. Use Tools → Import missing assets to re-import the ones it can source from CS:GO.
- Windows 10 / 11 (64-bit). Valve's import tools are Windows-only.
- Counter-Strike 2 with the Workshop Tools installed.
- A CS:GO install for the original map content.
For developers
You need the .NET 9 SDK.
dotnet build SourcePorter.sln # build
dotnet run --project src/SourcePorter.App # launch
dotnet test SourcePorter.sln # testDesign notes live in overview.md, ARCHITECTURE.md, and ROADMAP.md. Contributing? Read AGENTS.md first. Never commit real maps or game assets — they're git-ignored, and tests use synthetic fixtures only.
- ValveResourceFormat / Source 2 Viewer — the dark theme, the UI icons, and the resource format the validator reads.
- BSPSource — the bundled
.bsp→.vmfdecompiler. - ValvePak and ValveKeyValue — VPK and KeyValues reading.
- The S2ZE community and the Map Porting Guide that this tool automates.
