Skip to main content

bsp_tool

Python library for analysing .bsp files

bsp_tool provides a Command Line Interface for analysing .bsp files

Installation

To use the latest unstable version, clone with git:

$ git clone git@github.com:snake-biscuits/bsp_tool.git

You can also clone with pip:

$ pip install git+https://github.com/snake-biscuits/bsp_tool.git

Or, use the latest stable release (August 2026 | 0.7.0 | Python 3.8-13):

$ pip install bsp_tool

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

Always

  • Ask the creator's permission before touching their work
  • Understand that by default creator's works are under copyright
  • 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

Usage

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: snake-biscuits.github.io/bsp_tool/ [WIP]

Thanks

  • BobTheBob
    • Identified loads of Titanfall lumps (90% of static props & loads of other lumps)
  • Call of Duty Promod Team
    • For distributing safe links to Call of Duty 4 Mod Tools
  • Chris Strahl
    • Preserving extensive documentation, mods & source code for Quake 3 & Ubertools games
  • Ficool2
    • Providing lots of current and detailed info on Source & helping track down some rarer titles
  • F1F7Y
    • Lead developer on MRVN-Radiant NetRadiant-custom fork for Respawn's Source Engine fork
  • GCFScape
    • Super handy .vpk (Valve format) browser; VTFLib / VTFEdit is also from Nem's Tools
  • JJL772
    • Published public documentation for the otherwise closed-source VBSP v25
  • John Romero
    • Supplying .map level source files for Quake
  • Maxime Dupuis
    • Helping me identify multiple lumps in Source Engine .bsps
  • MobyGames
    • Keeping records of the credits on so many games, helping to pin down engine origins
  • pakextract
    • Super useful tool for .pak files
  • PCGamingWiki
    • Archiving old patches to help install old modding tools
  • rexx
    • Donating a lot of time helping organise & gather maps from 2019 Apex Legends
  • REDxEYE
    • Being very open and actively collaborating on SourceIO & Titanfall .bsps
  • Taskinoz
    • Helping me find people that can actively use my research & tools
  • Valve Developer Wiki
    • For starting me on this path however many years ago
  • Warmist
    • Identifying physics model related structs for Titanfall 2
  • All of the Wiki Editors
    • Except for the uncited Id Tech 3 -> Treyarch NGL on CoDWiki [citation needed]

Metadata

Release files for bsp-tool 0.7.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bsp-tool 0.7.0
File Size Uploaded
bsp_tool-0.7.0.tar.gz 1.8 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for bsp-tool 0.7.0
File Interpreter ABI Platform
bsp_tool-0.7.0-py3-none-any.whl Python 3 none any Details

Total release size: 2.1 MB

Release files / bsp_tool-0.7.0.tar.gz

Download URL bsp_tool-0.7.0.tar.gz
Size 1.8 MB
Tags Source
SHA-256 checksum
How to use checksums
4502c11713aca2044af2d6ad7e089a9979c2058b69068bd0b8b32ad94df4fc24
BLAKE2b-256 checksum
How to use checksums
5005fa263fe6b4fd087479f6368d7ceca57742193aff23c2aa2fbe1ddf919ddb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release files / bsp_tool-0.7.0-py3-none-any.whl

Download URL bsp_tool-0.7.0-py3-none-any.whl
Size 344.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9104ae1f1d806e91486e76273aac448eea47f878222df6a43c3b172593523130
BLAKE2b-256 checksum
How to use checksums
870e1165f5c81543f956615ef5dbf441c8ffd4b20aa09b9b2f547411a237d6c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

0.7.0 This release

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

3 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page