Divine Skins
Divine Skins Wiki

Pack your mod into a VPK

Turn your compiled files into a pakNN_dir.vpk with Source 2 Viewer or CSDK 12, check the paths inside, and pick the right number.

Beginner

A Deadlock mod is one VPK file with your compiled files at the same paths the game uses. This page shows how to build it, check it, and name it. First you need compiled files from a CSDK 12 addon: see Set up your creator tools.

What you need

Your compiled files are in your addon's game folder: Reduced_CSDK_12/game/citadel_addons/<addon>/. For Source 2 Viewer, use the dev build, or release 20.0 or newer. You need CSDK 12 only for the Workshop Manager method.

What goes in the VPK, and what stays out

Put in only the compiled files you changed (names end in _c), each at its game path and with its original name. If you worked on a model under another name, rename the compiled file back.

Leave out:

Leave outWhy
Source files: .vmat, .png, .psd, .wav, .mp3, .dmxThe game reads compiled files only.
Tool cache files: cache_*.soc, tools_thumbnail_cache.binThe tools make these for themselves.
Gameplay data: scripts/*.vdata_cIt goes stale after updates and changes gameplay.
Skeletons: .vnmskel_cThey break the hero's animations, in other mods too.
Compiled files you did not changeThey can clash with other mods and break after updates.

Build, pack, and check

Build a staging folder

A staging folder holds a copy of your mod's files, laid out like the game. This example packs a recolored briefcase for Pocket.

  1. Create an empty folder with your mod's name, such as goldcase.
  2. In the CSDK 12 launcher, right-click your addon and pick Explore Game Folder. Always copy from this game folder, never the content folder.
  3. Inside goldcase, create the same folders the game uses: goldcase/models/heroes_staging/synth/materials/.
  4. Copy only the compiled files you changed into the matching folder. The top level of goldcase should hold only game folders, such as models or sounds.

Shortcut: copy your whole addon folder out of game/citadel_addons/, then delete every file you did not change.

The goldcase staging folder holds models/heroes_staging/synth/materials/pocket_suitcase.vmat_c, so the path inside the VPK starts at models/ and not at goldcase/

Pack it

There are two ways to pack. Pick one.

Start with this method. It works without CSDK 12 open, shows the paths inside the VPK, and most guides use it.

  1. Open Source 2 Viewer.
  2. Click File, then Create VPK from folder. A new tab named new.vpk opens.
  3. Right-click new.vpk and pick Add Existing Folder.
  4. Select your staging folder, such as goldcase. Do not open it. Click Select Folder.
  5. If Source 2 Viewer asks to scan dependencies of compiled files, choose Yes. Newer builds may not ask.
  6. Double-click new.vpk to see what is inside. Check the paths as shown in Check what is inside.
  7. Right-click new.vpk and pick Save VPK to disk.
  8. Save it with a name like pak05_dir.vpk. The naming rules are below.

If a file shows up twice in the list, leave both entries alone. One creator deleted the copy and lost the real file.

Pugzilla shows the same steps in this model swap video from August 2026. They work for any mod, but menus may look a little different now.

Use this if you prefer to stay in CSDK 12. It borrows a Counter-Strike 2 upload window to build the VPK.

  1. Open the CSDK 12 launcher, select your addon, and click Launch Tools.
  2. In the Asset Browser's top bar, click CS2 Workshop Manager.
  3. Click New. Ignore the other buttons.
  4. Type anything as the name and description. Pick any preview image and any visibility.
  5. Click Submit. The submit fails. That is expected.
  6. CSDK 12 still writes a VPK into game/citadel_addons. Click Contents and check that it holds only the files you changed.
  7. Rename the VPK to pakNN_dir.vpk.

The CSDK 12 launcher also has a Create VPK option on each addon. We have not tested where it saves the file, so this guide does not use it.

Check what is inside

Check every new VPK before you test it.

  1. Open the VPK in Source 2 Viewer with File, then Open.
  2. Look at the top-level folders. They must be game folders, such as models/, sounds/, or panorama/.
  3. Make sure no path starts with your staging folder name (goldcase/models/...) or skips a level (heroes_staging/... without models/ in front).
  4. Make sure every file name ends in _c.
  5. Compare each path with the same file in the game's pak01_dir.vpk. They must match exactly.

If a path is wrong, fix your staging folder and pack again.

Name and number it

Name the file pak, two digits, then _dir.vpk, from pak01_dir.vpk to pak99_dir.vpk. Put it straight into game/citadel/addons/. Other names and subfolders do not load.

Names from pak01_dir.vpk to pak99_dir.vpk load from the addons folder. pak1_dir.vpk, pak00_dir.vpk, pak100_dir.vpk, goldcase.vpk, and subfolders do not.

When two mods ship the same file, the lower number wins, so give your mod a lower number to make it win. How Deadlock mods work explains load order.

For test builds, keep one fixed number and overwrite it each time.

Mods bigger than 2 GB

Popular full hero skins are about 125 to 280 MB, so most mods never get close. One VPK from the CS2 Workshop Manager has a 2 GB limit. For bigger mods:

  • Use the Multichunk Workshop Manager in CSDK 12. It splits the pack into chunks.
  • Or use the command-line version of Source 2 Viewer. Run it in the folder that holds your staging folder:
Terminal
Source2Viewer-CLI -i "goldcase" --vpk_create "pak05_dir.vpk" --vpk_create_chunk_size 100

This writes 100 MB chunks next to the _dir file. Keep every file of the set together, with the same number:

pak05_dir.vpk
pak05_000.vpk
pak05_001.vpk

Combine several mods into one VPK

The game loads up to 99 VPKs per folder. Merging mods keeps you under that limit.

  • vpkmerge by Slush97 merges several VPKs into one, or splits one apart. It is an unofficial community tool and still new, so keep copies of the originals. Similar tools are in Helper tools and scripts.
  • To merge by hand, open each VPK in Source 2 Viewer, select its top folders, and pick Export as is into one shared folder. Then pack that folder. Pugzilla's Combining VPKs/Mods Tutorial shows this.

If two mods hold the same file, only one copy survives, so choose which one you want. A mod manager does not recognize a merged VPK: add it again as a new mod. Merge other people's mods for your own use only. Most Deadlock mods use a license that does not allow sharing changed copies (Credits, licenses, and permissions).

Common problems

More fixes are in Errors when making mods and Mods not loading.

Next steps

Test your mod in game

Load your VPK and check every part of it before you share it.

Credits

This guide is based on the work of these creators. Check out their original guides.