bsp_tool
Python library for analysing .bsp files
bsp_tool
provides a Command Line Interface for analysing .bsp files
Current development is focused on bringing new maps to Counter-Strike: Online 2 & the Titanfall Engine
Installation
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
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/
Supported Games
The
❌ emoji indicates tests are failing
The⭕ emoji indicates a lack of .bsps to test
- Arkane Studios
- Gearbox Software
- Id Software
- Quake
- Quake II
- Quake III Arena
- Quake Champions
⭕ - Quake Live
- Infinity Ward
- Call of Duty
❌ - Call of Duty 2
❌ - Call of Duty 4: Modern Warfare
⭕ - Call of Duty: Modern Warfare 2
⭕
- Call of Duty
- Nexon
- Raven Software
- Respawn Entertainment
- Ritual Entertainment
- Valve Software
- Alien Swarm
- Alien Swarm: Reactive Drop
- Counter-Strike: Condition Zero
- Counter-Strike: Condition Zero - Deleted Scenes
- Counter-Strike: Global Offensive
- Counter-Strike: Source
- Counter-Strike
- Day of Defeat
- Day of Defeat: Source
- Deathmatch Classic
- Half-Life
- Half-Life 2
- Half-Life 2: Deathmatch
- Half-Life 2: Episode 1
- Half-Life 2: Episode 2
- Half-Life 2: Lost Coast
- Half-Life Deathmatch: Source
- Half-Life: Source
- Left 4 Dead
- Left 4 Dead 2
- Portal
- Portal 2
- Richochet
- Source Filmmaker
- Source SDK 2013
- Team Fortress 2
- Team Fortress Classic
- Other
- Black Mesa
- Blade Symphony
- Call of Duty: Black Ops III
⭕ - Call of Duty: World at War
⭕ - Daikatana
⭕ - Fortress Forever
- G-String
- Garry's Mod
- Halfquake Trilogy
- Medal of Honor: Allied Assault
- NEOTOKYO
- Sven Co-op
- Synergy
- Tactical Intervention
- Team Fortress Quake
- The Beginner's Guide
⭕ - The Stanley Parable
⭕ - Vampire: The Masquerade - Bloodlines
Thanks
- BobTheBob
- Identified loads of Titanfall lumps (90% of static props + more)
- 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
- 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
- Super useful tool for
- REDxEYE
- Being very open and actively collaborating on SourceIO & Titanfall .bsps
- Taskinoz
- Helping me find people that can actively use my research & tools
- All of the Wiki Editors
- Except the uncited
Id Tech 3 -> Treyarch NGL
on CoDWiki, that was a massive pain to verify
- Except the uncited