Skip to content

ata4/bspsrc

Repository files navigation

BSPSource

BSPSource is a map decompiler for Source engine maps, written in Java. It decompiles .bsp map files back to .vmf files that can be loaded in Hammer, Valve's official level editor.

BSPSource is based on a reengineered version of VMEX 0.98g by Rof, which is no longer developed and lacks support for newer Source engine games.

Running BSPSource

  1. Go to the releases page and, depending on your operating system, download either bspsrc-linux.zip or bspsrc-windows.zip. Alternatively, bspsrc-jar-only.zip works on any system which has Java 22+ installed and properly configured.
  2. Extract the contents of the zip file to a new folder.
  3. To launch bspsrc/bspinfo, run the corresponding file: bspsrc.bat/bspinfo.bat on Windows, or bspsrc.sh/bspinfo.sh on Linux.

Frequently asked Questions

  • Can you support <game>: Generally speaking, most Source engine games should work with BSPSource out of the box, even though they might not be explicitly "supported". If you run into any problems or errors with any particular game/map, feel free to open an Issue.
    Games based on the older goldsrc or on the newer Source 2 engine, are not supported. Their map format wildly differs from the one the Source engine uses.
  • Help, all the textures are gray/models are errors: Most of the time this is due to the materials/models not existing in the base game but rather being embedded in the bsp file. This can frequently happen with workshop maps or with maps using csgo's automcombine prop feature. To make the materials/models visible in hammer, you need to extract the embedded files by checking Extract embedded files in the decompiler and then move the contents of the extracted material/model folders into your games material/model folder.

Limitations and known bugs

Improvements and changes compared to VMEX 0.98g

  • Support for more and newer Source engine games up to Dota 2.
  • Support for new entity types:
  • Support for the tools/blocklight texture.
  • Support for compressed and big-endian encoded maps (XBox 360, PS3)
  • Decompiles VMEX maps flagged with protection and at least detects other anti-decompiling methods.
  • Improved support for prop_static and info_overlay.
  • Improved console output.
  • New graphical user interface with output window.
  • New command line interface.
  • New integrated pakfile extractor.
  • Numerous bug fixes.
  • Open source.