Skip to main content

Porting a CS:GO map

Before we start

note

All of these requirements are needed to follow this guide

Setting up files

Add game path to Environment Variables

You need to copy your CS2 game path, mine is X:\Steam\steamapps\common\Counter-Strike Global Offensive\game\bin\win64

Search for path on windows and open Edit the system environment variables > Advanced > Environment Variables...

On System variables scroll down until you find Path > click it once > click Edit... > New > paste your CS2 game path > click OK

Installing python

danger

make sure to click the box Add python.exe to PATH

Download Python 2.7.14

Open windows cmd and run python -m pip install colorama if you cant run the command, restart your computer

You also need to restart regardless after environment variables changes

Decompile

Get the BSP

First we need to find a BSP file, they can be found in steamapps\common\Counter-Strike Global Offensive\csgo\maps

Or download the BSP from sites like GameBanana🍌

Decompile the map

To decompile the BSP we will use ata4/bspsrc

Open up BSPSource > Files > Add or drag in the BSP file > Other > check the box Extract embedded files > Decompile

Save to preferably a simple folder, like D:\porting\map_example

Export files to CSGO

Move all files from your exported map folder to steamapps\common\Counter-Strike Global Offensive\csgo

Open up Counter-Strike: Global Offensive - SDK

Select Hammer World Editor > top left File > Open > select the .vmf you exported and then save

Compile

Create a Workshop Addon

Open Counter-Strike 2 Workshop Tools > Create New Addon > choose a name for your workshop addon

Rename vpk.signatures

Before porting it, change vpk.signatures file to vpk.signatures.bak or any other name

File can be found in steamapps\common\Counter-Strike Global Offensive\game\bin\win64\vpk.signatures

Porting Manually

Go to steamapps\common\Counter-Strike Global Offensive\game\csgo\import_scripts

Open cmd and use python import_map_community.py <s1gameinfopath> <s1contentpath> <s2gameinfopath> <s2addon> <mapname> -usebsp

python import_map_community.py "X:\Steam\steamapps\common\Counter-Strike Global Offensive\csgo" "D:\porting\map_example" "X:\Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo" "your addon" "map name" -usebsp

Porting with GUI

Go to steamapps\common\Counter-Strike Global Offensive\game\csgo\import_scripts

Open import_map_community_gui.exe

And select the files just like the cmd inputs above

  • s1 gameinfo dir X:\Steam\steamapps\common\Counter-Strike Global Offensive\csgo\gameinfo.txt
  • s1 content dir D:\porting\map_example
  • s2 gameinfo dir X:\Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\gameinfo.gi
  • s2 addon name your addon
  • map name relative to maps\ map name

Then click OK

Compile the map

Open your addon in Counter-Strike 2 Workshop Tools

Go top right on Tools > Hammer (Map Editor) > then top left File > Open

Select steamapps\common\Counter-Strike Global Offensive\content\csgo_addons\your addon\maps\your map.vmap

Top left again File > Build map... > Final Compile > Build

Common issues

warning

Missing textures/models, need to be manually recreated or changed