Modules for working with Valve's Source Engine file formats.
Reason this release was yanked:
Does not import on Py < 3.9
Project description
srctools
Modules for working with Valve's Source Engine file formats, as well as a variety of tools using these.
Installation
Simply pip install srctools
, you'll need Python 3.7+.
Core Modules:
math
: Core vector, angles and matrix classes, with Cython accelerated versions.cmdseq
: Reads and writes Hammer's expert compile command list format.filesys
: Allows accessing VPKs, zips, folders etc using a unified interface, as well as a prioritised chain like the engine's game folder system.logger
: Wrappers around thelogging
module allowingstr.format
interpolation support, among others.const
: Various shared constants and enums.tokenizer
: Cython-accelerated tokenizer for parsing the various text files.binformat
: Some tools for handling binary file formats.
File formats:
property_parser
: Reads and writes KeyValues1 property trees.dmx
: Reads and writes DMX / KeyValues2 format files.vmf
: Reads and writes VMF map files.bsp
: Reads and writes compiled BSP maps files.fgd
: Reads and writes FGD entity definitions. A compressed database of definitions from most games is also included, from HammerAddons. Note that this parses a superset of the FGD format, including "tags" to allow specifying which entities and keyvalues are supported for different engine branches.mdl
: Reads some parts of compiled MDL/VTX/VVD/PHY models.smd
: Reads and writes SMD geometry data.sndscript
: Reads and writes soundscripts.vmt
: Reads and writes VMT material files.vpk
: Reads and writes VPK packages.vtf
: Reads and writes VTF images, including DXT compression.particles
: Reads and writes PCF particle systems.
Tools:
game
: Parsesgameinfo.txt
files, and handles accessing the searchpaths.instancing
: Implements logic for collapsingfunc_instance
into maps.packlist
: Stores a list of files of various types, then computes dependencies recursively. This also includes a database of resources required by game code for different entity classes.run
: Code to run a compiler, logging the output as it executes while still storing it.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
srctools-2.3.2.tar.gz
(441.7 kB
view hashes)
Built Distributions
srctools-2.3.2-cp310-cp310-win32.whl
(645.3 kB
view hashes)
srctools-2.3.2-cp39-cp39-win32.whl
(648.1 kB
view hashes)
srctools-2.3.2-cp38-cp38-win32.whl
(649.1 kB
view hashes)
Close
Hashes for srctools-2.3.2-pp37-pypy37_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cc539349acb4da0c9231b49945b3a747bdf29a204949f8ad4f5c8c9c531dc275 |
|
MD5 | 2bdf48b2546306ebcdb549634235ef2e |
|
BLAKE2b-256 | ce405be442d7615e239cda70f18fd4b3d14e6613517da8be585710f3887e977a |
Close
Hashes for srctools-2.3.2-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 70450e4ad21bac968bbb2a9a9c90f153ba2e80caf776babcdbe94cca24aeec97 |
|
MD5 | adf6eda5cf094d92ecf0313a7a32ae32 |
|
BLAKE2b-256 | 5fe4c3955267bad2ee30ecb8d5671a0e5aa98bd1c0abb6a25d8574c3485ce96c |
Close
Hashes for srctools-2.3.2-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae249b4ca7dd0ba55e630f710ce0ae41b15419a3864271c5189cdb3de379a08c |
|
MD5 | 5a2a88951791fff4cf821f48b2641861 |
|
BLAKE2b-256 | 734ccc28517ffe947b7c2ed3eef45977ee80579599ae390044f2b40180fe8019 |
Close
Hashes for srctools-2.3.2-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e4b08fa3ec6980c470cd4c018e148128e1c44982107d085e244dd9f1af71f50a |
|
MD5 | 6e59296aa251c267596c224420a3b43e |
|
BLAKE2b-256 | 9eacc53d9a46efb3b6afbd81f5d777fedd7caf2ce4dfa168a1af56e27ad4f290 |
Close
Hashes for srctools-2.3.2-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d13a0846e0f0055661cb13bdbc4859e101792dbab2ecf2325a926e5f317b96ee |
|
MD5 | 094c3c99045e2025df1cf0577b4679e0 |
|
BLAKE2b-256 | ef2942e33b234b584d4b7fe9e719c43cb1bc3dbf0b1e7c719c6103fcada52ce6 |
Close
Hashes for srctools-2.3.2-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fdc2736be37c0064fabe7778b6b9688aa5e93cba6a0814d843cc31d2098cbd2c |
|
MD5 | ef1fe1f9e8272f700efef94951b21093 |
|
BLAKE2b-256 | 55ca8c6d53a480ff072a803ab1b3f0eb005f488fa39b2f077842d8182c814955 |
Close
Hashes for srctools-2.3.2-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a132846757a168819c0a55e71446f4efe0d351da4b6172ee5e2f8a48c36d6b40 |
|
MD5 | 1f25df3a979f87ae4a9c7341316fd8b3 |
|
BLAKE2b-256 | 3425a9e07a88ce3b39729074c95117e70106e106083c7c12aa9ca310976fd7b6 |
Close
Hashes for srctools-2.3.2-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5eda4e7020cd0284cd92424a3130fceb3e0b291bb4b16fc69bcdbf1237902b8c |
|
MD5 | 58ac7e616bf78a38c3f5280040d966f6 |
|
BLAKE2b-256 | 23586d4bd2c55338904cb762fbb3f59f84f0e4a80a9734c04b6744e964c8f117 |
Close
Hashes for srctools-2.3.2-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c587b8d78b69947cf67c7d3c32aa23ff5f857679071d0aa07d8a7a464c9a7c42 |
|
MD5 | 446f769a645c2caff5cf3faeefeba958 |
|
BLAKE2b-256 | 48c2fe793407510837053add520bd245004508af34e923c44dcaee9cd1f034b2 |
Close
Hashes for srctools-2.3.2-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5431b50560ace43735af45d880130729c4cbe79b9b7fdc6ec8e2c341b0a206b9 |
|
MD5 | 9e4d4c16f8b499f0a29babce8af25b73 |
|
BLAKE2b-256 | 5aabc6164f37eba73a44c9b0fbc7e0380dda0b33267db8f53693afb76814aa38 |
Close
Hashes for srctools-2.3.2-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 63cf06dac6b460f9a54422f2ed53fbed5547250a4ae996c57dcb1a4318048013 |
|
MD5 | 7674cfe62c86a311eea2f6674f39d1cf |
|
BLAKE2b-256 | 12c2f2575caafde523f5743be6d068bccf1a2cbc993d6967edfd78f6aba66fb9 |
Close
Hashes for srctools-2.3.2-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c74740a048ddbfcf3c2339fc9e019fc3ff620b1a2e356cd02746f705be8b9c3e |
|
MD5 | 0f3cc98649e36712140ee44275fb5ff0 |
|
BLAKE2b-256 | 03d5996864247c3ca5b391978bdd6e33d3b338cd46a81688a58e417c5d68ced7 |
Close
Hashes for srctools-2.3.2-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca87817873efdca2e6b096363d34ccad0b60b048643ee17e20f3d35ec1a65add |
|
MD5 | d48b6875facf4d455779bd880f94748e |
|
BLAKE2b-256 | 76ac36618102f7e59b59c1ecd679fdc1d4f3386fff46de3aaa7d5f06b4b66611 |
Close
Hashes for srctools-2.3.2-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0cec268f3694dec1fc12833e18ad81ac0af3f197f5bccfa0fc5715f238171962 |
|
MD5 | 37871d6501ba97de344b0baed04a4b7c |
|
BLAKE2b-256 | e6c6827b4f2060d6771a65d305dc33c33026ff204ac08de4cbbbbb215f4049d1 |