Modules for working with Valve's Source Engine file formats.
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:
keyvalues
: 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.7.tar.gz
(459.5 kB
view hashes)
Built Distributions
srctools-2.3.7-cp311-cp311-win32.whl
(696.7 kB
view hashes)
srctools-2.3.7-cp310-cp310-win32.whl
(696.6 kB
view hashes)
srctools-2.3.7-cp39-cp39-win32.whl
(698.2 kB
view hashes)
srctools-2.3.7-cp38-cp38-win32.whl
(699.4 kB
view hashes)
Close
Hashes for srctools-2.3.7-pp39-pypy39_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c68fd21336e4b2f3b8a14035f265eed13526018052438268528b47940c6a578c |
|
MD5 | 1a77ba276b8b1c2fb649301a9f30042a |
|
BLAKE2b-256 | 3b0d6e83e1d1111a79aaa49a5e72a88164989ba7ff17a8f142263c3dae3cd80e |
Close
Hashes for srctools-2.3.7-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | dbac7c76dcfda5ab67b808864f46c6de53a3f713b507a83c350c5bea80cfaa56 |
|
MD5 | 810a528e605615bd5c7081d3fd8c41ff |
|
BLAKE2b-256 | 612578a48ab3b128ea133014947f09de55456ea9a48a8d931a7f06eaf119b937 |
Close
Hashes for srctools-2.3.7-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 48ea36579a8bbaadd4c5c8c6307e9b65a30b32ecea0e2e1c939d7267a8f70296 |
|
MD5 | b5dd694a7557b3694af8c52bf8a2c787 |
|
BLAKE2b-256 | d3052220ed12b49fe2e07eba768024af138b7c87306ca6c7ad1fc2a1184fa01b |
Close
Hashes for srctools-2.3.7-pp38-pypy38_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b26a5da129088399f3e0912717b53f26ea6e582881ed9b7b2c7dd8915e468c2 |
|
MD5 | 2fbf36b8f5b414a2db045d75861e6c7d |
|
BLAKE2b-256 | c60da6d7104359b2e2bedddaa487c5be1d2bd7f04c5aabb8fa52fe364adfe511 |
Close
Hashes for srctools-2.3.7-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 39000e5164bdc5555196a8f52e410a19d23679eeada7d78ed53b75b0229d0a46 |
|
MD5 | b7e76670a09bbb8eeb7cf384d4d3bd42 |
|
BLAKE2b-256 | 82b6064c851bcbb0f47d2f0ac253a6225125dc05a290a186f6144e425091557f |
Close
Hashes for srctools-2.3.7-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 00645f72ded279dcacd24554a9baebaffc5055d79688b114159bbfc472a50ebc |
|
MD5 | e367b21667205538102c538a992b90cb |
|
BLAKE2b-256 | 4528c7b2db165102aea1e97326fe87f7a6d83207432b831f70fd2838904b77d3 |
Close
Hashes for srctools-2.3.7-pp37-pypy37_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 04f426d2a5150d3e2e7866e75edd8030759cb1f01747598edda4b08b825e1fee |
|
MD5 | 34d943b7f2e18d4d6bfb8b2b59107e8d |
|
BLAKE2b-256 | 700eaa7da16653f142661acdeede7079b54a467dc24ae55c29e4f190fe161388 |
Close
Hashes for srctools-2.3.7-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 40044089053ea24f837afd01094965447896f4899a98a577d63188f2d76a17a7 |
|
MD5 | c7c1f2eb31e53484734ea26d92baa197 |
|
BLAKE2b-256 | 75e81bedca37fdb6a914fd70832e1697993dac121e6a3b1b78ed65e72719c680 |
Close
Hashes for srctools-2.3.7-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8361469a41e97ba558bdcb5e40d869d1b12fa79906fd7208b5f409ab547742fb |
|
MD5 | 2350b7bc516ea155788cd16b10cc8ba7 |
|
BLAKE2b-256 | d86e756f3e1faf549e6841045b1ef7503711cc836495184de00a29435dd2fba6 |
Close
Hashes for srctools-2.3.7-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ffd52fe8cd4cd08caf59a56405d75c64704bf009a7b1d843a6a4c9789300875c |
|
MD5 | 40203a48ce9979d7995ea22ba2197e63 |
|
BLAKE2b-256 | 4eaea38ded452c91678bce9d245a21aab1f3d70389ad3fbac152eb3a9a7c1205 |
Close
Hashes for srctools-2.3.7-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 25e951f0d3177b4861827d60c6dcd6fe0f6d14b8c22ca4927057002c6b2c53f2 |
|
MD5 | 56de58eb2c22c350827606c06de632f6 |
|
BLAKE2b-256 | 6801431107152ba91f4a0f3d180e407aaa8256ac1b39d86e74ea61d3be2ed6c5 |
Close
Hashes for srctools-2.3.7-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2438dbfd4b13e137dad9ab78ecdd1045dc0c7e04d825d23d358568ffad18d0a0 |
|
MD5 | 0a6af8531632e2fd19958c9719aa759d |
|
BLAKE2b-256 | c1b002ec8d53202836fee84bea8cfc2ef555cf61f85ca99b24ccfaf06dfc8cd0 |
Close
Hashes for srctools-2.3.7-cp311-cp311-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f70a9f34ba26d6ad23fac666b99b16dc1422c29e8f4247a9b794d81bda667391 |
|
MD5 | b9d5f0dad42ee054bd79c21c35247189 |
|
BLAKE2b-256 | 0dc1bff2f64ff472a8b165ca3f4e4305a7ad5e508e24ab07c596f9d0319c21ba |
Close
Hashes for srctools-2.3.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4792e04a013c7b262e72e3ad1ddf8f2574401603dc25972053395e4d19f325f8 |
|
MD5 | 4d169ccd4d2afb5b20e1679d1eb85f1e |
|
BLAKE2b-256 | 7f2f058f6fc29f00ee680a073683c9b987f73d260141669d2689715436a3ce3b |
Close
Hashes for srctools-2.3.7-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 985d4f818b3ae2e8a3dde5c43772597a991651bae15b297646d1e69cacc6c2b4 |
|
MD5 | cf8dbd66fe68ebfd5a0eed648275e9b7 |
|
BLAKE2b-256 | b5cccfd71f3f9d0d2c8df3a7c12a7d82687d6307786d94f75a271bd13ad59872 |
Close
Hashes for srctools-2.3.7-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1e629ed9462687ab7091b0196cbf22b12a8aca29c6fdd7935b2652fc0fd0e2ad |
|
MD5 | 5171e643f149b6f6b2e25176782af196 |
|
BLAKE2b-256 | 5a69f621dac76f5f77a725871d4e23c941fc57f258fb0f47bb32b2705d5973e3 |
Close
Hashes for srctools-2.3.7-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c4bbef0c64d08ed4cd4048689e65fa82b5fe8210cc4a420568e654828341b10e |
|
MD5 | 2db47b9555d17f8ea2f4d8d87d5e8575 |
|
BLAKE2b-256 | 72f9c885468b34b8eebbbcfde6748fb26c53627d0b125704dc5de03e4bf71caa |
Close
Hashes for srctools-2.3.7-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 834e6941ea21cbf1cd207c656ccbc8914dc90ca4d0f6bcf184a7abba60bf11d5 |
|
MD5 | 2ad9a693448e47751a4e45fb2384b7d0 |
|
BLAKE2b-256 | 934434ca1ec15e47772519f3bf4a8c1cf89d725ed0bf7caddef84b8a5df3b2e0 |
Close
Hashes for srctools-2.3.7-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b9832f6afa22f545ed27088763230f5dab4634ece53ccc465b61653c84516166 |
|
MD5 | 5e7578b2bd24e898d39d3c32b43ea7de |
|
BLAKE2b-256 | 397453a79607802ca20e2d23844dc4455a83daffe4dbcceb70f6849e280d5251 |
Close
Hashes for srctools-2.3.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed08aca109c2f348ff09ee4aa3b02ee32b656cce114d74c41da9e7834f33ff07 |
|
MD5 | 592b3ff256755f16fbb9b0f43272e830 |
|
BLAKE2b-256 | 752613e0c813b667beb5a61b64ca7c4d56cbdb440594398bf072f6a91e33e128 |
Close
Hashes for srctools-2.3.7-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 222ad67617032a2a0829b4d281b4b6df48a7e3fb5e1449b589b6f6782dd42f93 |
|
MD5 | 69ac3a92dc4b408195b3446b8c3328f6 |
|
BLAKE2b-256 | da74a70ba2e24404d642be7f69b87884641a6c5a30c93b53c3af054b794f2234 |
Close
Hashes for srctools-2.3.7-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9750d0d2962a98c1c2830c1dc9d473c4176fbc4c58ba151f6b3dc3cc43e0411a |
|
MD5 | 6d129f7ae87af54fd8d93f84202839b8 |
|
BLAKE2b-256 | 5190bc505b8d54d434433ebd46b79051e671a854cb14fb835bef50deba24e66c |
Close
Hashes for srctools-2.3.7-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a52a52c5115f916af1aec3693c727b4e662132897a40b01046d55baa3cb6c4aa |
|
MD5 | bc2d2a28800dc9144aba76885fc3054d |
|
BLAKE2b-256 | 024e73f241df8cc3b85e8a5355e66295e9ba2f7edc968896a358cb80213894b3 |
Close
Hashes for srctools-2.3.7-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 433130bffe1c34f13029b4019deb8f082d7f405bb3dff2b252007fa38b003e69 |
|
MD5 | 171683e1529123b09fa97294081fd972 |
|
BLAKE2b-256 | 51889e78db70f4c1f60fcc01cb24b898322a49e0dfac47e15a1b1cea62194b05 |
Close
Hashes for srctools-2.3.7-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd2ef83135fb17c55e5fe7d1be38ec78b1ded34ad276d46f57de14a68a10e2c0 |
|
MD5 | 49b39b90a7fe4f35539173a9dc59de59 |
|
BLAKE2b-256 | 0551023634ea197688d2a713ced24f2bca41c4a74730fe78872b18f1444308b6 |
Close
Hashes for srctools-2.3.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 61c49ea81beb29a31dfd5ebcc9fe2a1239278c116da51132464f55f5e8c8db2e |
|
MD5 | eed77fedbd5298772de8bb16af201535 |
|
BLAKE2b-256 | a540318a986db79d7d94282d3329417266ba3d6d2bfbe9a41268113e2c3d9159 |
Close
Hashes for srctools-2.3.7-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4daa1d9ca4ef8b8d32b3c16cf5c768a710ccd8fc57c2db8a18c9af5362982b51 |
|
MD5 | 9a105bc60a10f12e3398e6ec50c416f8 |
|
BLAKE2b-256 | 1f9abe559755d42c0359d4d2b47bb4d95c8e7e4c529544644e1dd9709ae64291 |
Close
Hashes for srctools-2.3.7-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3dbf4bb8ff503b7a79db6aa71e7758af1508c30d14b62860341131a00b2e207a |
|
MD5 | d523592433044d23142d6f17625aa2ca |
|
BLAKE2b-256 | 62f7c439d0bd27cbb4ae50adf7a00ac807cd46d829821d023ff3a512295297f7 |
Close
Hashes for srctools-2.3.7-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4bde11e7e854973995f46c65cd6ad3c08fafc5e26834af0251591a5c8b5971a2 |
|
MD5 | 30cf385257d9da867207c042af1b431c |
|
BLAKE2b-256 | 6a5f73ec533753b69ae6d8ec9389f9907428d6d1d6cd65460036bb1008c81948 |
Close
Hashes for srctools-2.3.7-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 655e098938d92e81f954ccc0ba4d531dd5a45425d7bed9696550501873d95a2c |
|
MD5 | 1c13097db21a83781357282a2d1bd41e |
|
BLAKE2b-256 | bfe5680a0a951ec7a9947084816ab2bcd0b42c165221feb9638d687bb7a7e188 |
Close
Hashes for srctools-2.3.7-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 94cae7493605e51024b95fc0c78fdb3b24671fb2eec3b6e3ad9fa3b0053b6050 |
|
MD5 | 7834e8dccddb14370d0ced6df08ea34b |
|
BLAKE2b-256 | 8e8d705bfdedcfd13106ce016d34d747e27de3a819d83ed16d0ec5cb8d980a83 |
Close
Hashes for srctools-2.3.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b91a888411bbb1b2edc0c0aa103b13ccdb37a88ecd9c89fd8b260fe00c85e2d1 |
|
MD5 | 671e9bbb032b3af56a1c85ca9cb2df1f |
|
BLAKE2b-256 | 2c003068ed0e3917983b35488de60117b527972510127c4079d5716a18f037e8 |
Close
Hashes for srctools-2.3.7-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 658920df1c2cd8305b8abcedb8dad870ab06cd34759c62aca3ce92dd5d10b3f9 |
|
MD5 | 4491f651da6f06bbf757f7daa0935700 |
|
BLAKE2b-256 | ddf749d448c6c0b8aab0e2f4b4b49fd4ec25df7856ffaa220c4ac270f368b77c |