A library for .bsp file analysis & modification

bsp_tool provides a Command Line Interface for exploring & editing .bsp files
Current development is focused on bringing new maps to Counter-Strike: Online 2 & the Titanfall Engine


To use the latest version, clone from git:

$ git clone [email protected]:snake-biscuits/bsp_tool.git

Or to use the latest stable release, install via pip (Python 3.7+):

pip install bsp_tool
NOTE: The last PyPi release (v0.2.2) is close to a year old
v0.3.0 has made many changes and is the recommended version

Fair Use

Please do not use bsp_tool to copy or steal another creator's work
The primary goal of bsp_tool is to extend community mapping tools


  • Ask the creator's permission before touching their work
  • Understand that by default creator's works are under copyright
  • US Law Copyright FAQ
  • US Copyright Duration
  • Circular 15a
  • Contact the original creator to get their permission
  • This can get complicated
  • Some creators don't hold the copyright on their works
  • often because of Company / Publisher contracts
  • Credit the original creator; once you have permission to share a derivative work
  • Support the official release

DO NOT use this tool to steal another creator's work
DO use this tool to understand the .bsp format(s) and create more specific tools

Be aware that this gets even more complicated with commercial projects


To load a .bsp file in python:

>>> import bsp_tool>>> bsp_tool.load_bsp("map_folder/filename.bsp") <ValveBsp filename.bsp (VBSP version 20) at 0x00...>

Full documentation:

GitHub - snake-biscuits/bsp_tool: A library for .bsp file analysis & modification
A library for .bsp file analysis & modification. Contribute to snake-biscuits/bsp_tool development by creating an account on GitHub.