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.11.tar.gz
(1.8 MB
view hashes)
Built Distributions
srctools-2.3.11-cp311-cp311-win32.whl
(999.3 kB
view hashes)
srctools-2.3.11-cp310-cp310-win32.whl
(998.3 kB
view hashes)
srctools-2.3.11-cp39-cp39-win32.whl
(1000.0 kB
view hashes)
Close
Hashes for srctools-2.3.11-pp39-pypy39_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 897ebc95bac9e97184ca271d85ba9a831b61e4675b21a82cb986d475ac1d2d7c |
|
MD5 | 56ee0c4b5a4d234f2429a21b2e4c56e8 |
|
BLAKE2b-256 | 794873a86cddc6861befa454de9022319820058ce1d06e95b16310e3af559f7d |
Close
Hashes for srctools-2.3.11-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f1a24444889cbf6fd00339500e528affde704dbaab9c5a739fb9d8fbfe9c7db |
|
MD5 | 4dc0bef4d0ce61c457ab38820745312c |
|
BLAKE2b-256 | 70d8b88803db76e3519367c3af65026060179ffe93824b9b22d79acce7edb492 |
Close
Hashes for srctools-2.3.11-pp39-pypy39_pp73-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2dd35589e73786f1358dc865a7fee778ba13a0071520b5331e3199e520434631 |
|
MD5 | b0c3764f0d314670c25f8ddab7f8913d |
|
BLAKE2b-256 | bd2fa71fcf21fbe6c34c6a4ae5466771e11a1e44de5ff71daf0f57b75bd63aee |
Close
Hashes for srctools-2.3.11-pp38-pypy38_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f8ca4c458941d079bd8db9eaf56fa307e2a0bfc97b7dbbda647a550c9b2dc6f9 |
|
MD5 | 25631f14a6429fe2f4d0f6f4bd147377 |
|
BLAKE2b-256 | 30e45e9ac37f22fc96af49d84d64b3e75905037a1705bcc479774810f99bcdfe |
Close
Hashes for srctools-2.3.11-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e9079f425324a9acc5fe4e8345124204a2d203a10bbbccaa61d8319d204f87a5 |
|
MD5 | e00bb33ae55c95a4c4f88bad66810532 |
|
BLAKE2b-256 | 704b270bff6532ab4dbe0d4cbcc53bcac95861fae663c77af8ca8f1f99f20933 |
Close
Hashes for srctools-2.3.11-pp38-pypy38_pp73-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 443a7235deef7db07d94b996114331fb8b2eec4f7a8f305a181cfb0c79733d58 |
|
MD5 | 0d6ec3d40172659e955f1dfb4d8118e2 |
|
BLAKE2b-256 | 897828e77923fda7b50d5ddb1778ffaf093c45e28ee2c891acd867fae6a57a71 |
Close
Hashes for srctools-2.3.11-pp37-pypy37_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab4841ee5d427cecf26ddf80f9eed45393879b3f0b68a90f1d4099870bbbefe1 |
|
MD5 | 4b50879af0956316adb38f5baa90f7be |
|
BLAKE2b-256 | bcabf28050c8d21e1e3c1f0a686c133ea813993b82a95ec62675064c44babbe5 |
Close
Hashes for srctools-2.3.11-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae5a4580e65897c4b3fa379321fd14354699bcc757d2649126f965308e706848 |
|
MD5 | dbc2c24784b13f8c4e1fa52279bbe925 |
|
BLAKE2b-256 | cb8cf7d082225eebf93a7b55b0431def4dc309d886caae36417bfc88a6f7ac68 |
Close
Hashes for srctools-2.3.11-pp37-pypy37_pp73-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3bc6d0d5a22dc3f075831c1f98d8e2d1138130437934bce937738c2e5098580c |
|
MD5 | edcdc6c87573c4a2f3198a643e730447 |
|
BLAKE2b-256 | c3d5e5813aaf024e908b027773fcd22bc98e42eca8201e2053d24b47d9976acc |
Close
Hashes for srctools-2.3.11-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1b25dab071b06c5bbd4cf085bbf34a37d84fe15a2c5176fc8756625269eaeb27 |
|
MD5 | f97c6ea9ea2c0e08199a4baa5dc0ab88 |
|
BLAKE2b-256 | 3939e916091c1dc314cbc160f9688a50dc17d34ebfbe7c63dea6c03e366f940b |
Close
Hashes for srctools-2.3.11-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5db77305244af6183adcedb031f085811dfe54daf1d790f06a1a4aa0f965d53c |
|
MD5 | ec6bac4bdeea2d0b19644c5e15345942 |
|
BLAKE2b-256 | 1072e31c374f371ef85370f0dab3290b078aff04559afa32f22dcfec6f3e7b7c |
Close
Hashes for srctools-2.3.11-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 117f07ec0425a06cc4286cbff20ee435b46970fff73a001521a750ef588fb556 |
|
MD5 | d8bbd87621d8a48f6449fdd39dcf6ac4 |
|
BLAKE2b-256 | 646ba0bed61e269f06e8fd7a446f7d649c909f45cd8b2b8a65f28a594d0546c7 |
Close
Hashes for srctools-2.3.11-cp311-cp311-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 79c390a2096ca3dc3f2bc6c7e3839cb32084fa0b6f2dc0ac117ace74713c471b |
|
MD5 | e9bd4a4bc8815f8e8d4b76c8ef55d884 |
|
BLAKE2b-256 | efaa7b0f395b06284097c63be12f2d3b0b44b2483788d7b6f3cdb941a71f6a58 |
Close
Hashes for srctools-2.3.11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d8f81037fab1a43cc564e3aa9023d12b572dc9e892779089d4ee42db1483eafa |
|
MD5 | aa6f8b9024b54db8c5c6e85f4c13e7a1 |
|
BLAKE2b-256 | c614e8371d28373e5f5a6489588a40eeef3c01b63b277bfad8ddda0726dbc67d |
Close
Hashes for srctools-2.3.11-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4205a764f3f8068c1f6ad4e4b1cd76c89d205459821ad33ba554b70c07c88686 |
|
MD5 | 1875dc0f4cd7cef32cb119e2d1056266 |
|
BLAKE2b-256 | e87e1b727ec684df29ed93581854e40b3d1d38476b105e430c68ce2995418f2e |
Close
Hashes for srctools-2.3.11-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d0446f8973c0e39d3c106e77f642c8d5498571738e798eb42d2d1a439cdc657 |
|
MD5 | b8bb2ebe532374d423b7c985829ae20b |
|
BLAKE2b-256 | e458307ca7bd1410fca474a0835acc6accf986f4dd13ea59b79e157c4b553ac2 |
Close
Hashes for srctools-2.3.11-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c73305ab4d80df9ffb519796ec6f235a55de7563e915cb0e56104cb84f5c161 |
|
MD5 | efe6af6391f7b5297c64ce4fa20dbf41 |
|
BLAKE2b-256 | bfd145729367bfe4eb9de9d05de7e6cf185728fefa0c767317d3e38445417e18 |
Close
Hashes for srctools-2.3.11-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aed864d070c7873c23693892f5bf0cc9568ec93d8d752e2486b3a71d453d1287 |
|
MD5 | 541edaea0361632436c1369cbcd40dc6 |
|
BLAKE2b-256 | ec472653ccd76512e1c7dfbf13bec06da5c44cd8224f17dfc37100c49987a874 |
Close
Hashes for srctools-2.3.11-cp310-cp310-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cb833a9c13b30028e45c83ac75a41958178ead9b6d298cc197c477571fb130c7 |
|
MD5 | 3516099d214330f3188df42a5fa00140 |
|
BLAKE2b-256 | 7c52db9ba0182ed8940eba427454e7f55408e06a3dd3f1fa5fbc87f87e4d0fc1 |
Close
Hashes for srctools-2.3.11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 97aaa8242aae3490eb9d1838d0bc50451ef21dd6c775c719611dee4a62141170 |
|
MD5 | 2214d46c00de89751b0c654f2b009f0a |
|
BLAKE2b-256 | 8c79a7eed90141745ce484f4883c88a7d046d100897157c7dde207eee7e8e60f |
Close
Hashes for srctools-2.3.11-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 30f8e9d177e5e7c77b357a3d73f7b942669782226b46e096853ccd9b2c87bdae |
|
MD5 | 70086646a41480e09c802cf1b2b8b2d1 |
|
BLAKE2b-256 | a6f4ddf23ec86c2da2957d77c98cdcc053e063208415545136725050aa35663f |
Close
Hashes for srctools-2.3.11-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9d62994689a11339045b36c3bc058fbed1ee697950c9850f594a2c6e1f7aff56 |
|
MD5 | 054c998732ebb12dbcb9d10d385d9432 |
|
BLAKE2b-256 | 192faae89e87589c05ea1ecddace000d464f7e9a05585ed6836818dd7f335953 |
Close
Hashes for srctools-2.3.11-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c1cf0c9c2ad26bc3a4de662b9e28bb5622f4d5208d381f7207efade8e9795882 |
|
MD5 | 04a3fcb99db9ed986330bbad12b859b6 |
|
BLAKE2b-256 | 8df397bd07f982e17dddaf5eb77e052a464269ec55616db47edeed1f4ae4336c |
Close
Hashes for srctools-2.3.11-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 110a3d30610e58e0d260e3d46b5ae4319dcd5074305b0f9c6a53f70ed37199ae |
|
MD5 | 944d6e179d6566cafff8834c4fa4bf96 |
|
BLAKE2b-256 | 3d662e9ff57c67d2aa642daf787952192f7d2c65f8581ffa029e1d1af4f4b923 |
Close
Hashes for srctools-2.3.11-cp39-cp39-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 676b23bd147df0251b63245830cebc3e50d817e36956561567d8614909c2ff3d |
|
MD5 | 60a093614c3a56b7405fd7f8247fcb62 |
|
BLAKE2b-256 | 6118f4bdc792a7242e177306b245ee41c13ef242db32587544b09590de18a97a |
Close
Hashes for srctools-2.3.11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 929cb8a1f6791e509b6d8a1c9cc473c63d719974dedb34303f44736cf5ebc89d |
|
MD5 | 4c522ba2ec8185263d068995d4a91abd |
|
BLAKE2b-256 | 0bea69e70914c72132e177e8ad6c6fdcebdbd5208d84d66aef710ba15899d08e |
Close
Hashes for srctools-2.3.11-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 042c5c5085b4d47d98cb4b8f966e231ae979dbfa39c05e2beafda6ef55cf4e6a |
|
MD5 | 0d244cbc96358c46a1bfeaa4a0557791 |
|
BLAKE2b-256 | 44b9c908ce81b99fead7c0e56406895450a1c0becb34d1c1dd34b7169bc5d05a |
Close
Hashes for srctools-2.3.11-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 704eb625dd1c297cf80110057f6178da7352d425b1870e9cb77235e490b9f579 |
|
MD5 | 50c91bcd4a5b1c9f5ad1c89db79873c3 |
|
BLAKE2b-256 | e71660530b10c5d1642ea1ab1d9bfda71bc8196ed6804c76eb7dd66dfa66cd98 |
Close
Hashes for srctools-2.3.11-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 58f520bbf1fb9b8e8ea2b03a313eac46330fa2faae95eea09a7bc2d453da1294 |
|
MD5 | 15cd3825a5e987cbb311801a04db6d35 |
|
BLAKE2b-256 | ffa1eda72457988de94776b45764b742f25860496af91d39b1730c978020ec3e |
Close
Hashes for srctools-2.3.11-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 635767869d8b5d213c5c4da08eb42aef5fe84a9a9da56e4b8ffe33ad5d5f611e |
|
MD5 | d954ccefe74c68fc70f515a5b3b5ce10 |
|
BLAKE2b-256 | 8cf3828f81b11dda9f453da7e41890aee8b51251b0adce2b881aad194fc3d345 |
Close
Hashes for srctools-2.3.11-cp38-cp38-musllinux_1_1_i686.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0630821fabe77dc68e99b27b2a38486b632b601323aed50f9fc7a8b63fcc55c8 |
|
MD5 | f6fe525a0cccab9862feb9fb8dfd92b3 |
|
BLAKE2b-256 | 8f2c3cecef3edc437200afdb1268c67cc87c7454f700adb2a5fac3b7108aa28a |
Close
Hashes for srctools-2.3.11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea40603c48935f8949c8a42a4b9056ec9a14312a649f2ed2ee46524a1d507b83 |
|
MD5 | fea15c0b945a4241289ee267a61600f7 |
|
BLAKE2b-256 | 27fa4f116c623dffa5cbdfe339bb2c5f758546929f3f0bcf5cd4c34306dcba88 |
Close
Hashes for srctools-2.3.11-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 959255c30349a6a210dd7df4d8aa1d182564f4c4ad7162895e8586d934693c59 |
|
MD5 | 15900995603748dc37afd3380cdae0fd |
|
BLAKE2b-256 | 27651cae54d2deb6fd88258f6f95b70e28e6be0aaf4ca0599737bc04fe566628 |