My set of tools. The code is more important than the features, so feel free to reuse it. ๐
Wiki
See the wiki to know how to use the features
Table of contents
Supported game
| Name | Rev | Decompiler | Compiler | Type(s) | Source* |
|---|---|---|---|---|---|
| Black Ops 3 (T7) | 1A | โ | โ | pc | None |
| Black Ops 3 (T7) | 1B | Partial | โ | pc | ate47/oldcod-source |
| Black Ops 3 (T7) | 1C | โ | โ | pc,ps4 | ate47/bo3-source |
| Black Ops 4 (T8) | 31 | โ | โ | ps4 | ate47/oldcod-source |
| Black Ops 4 (T8) | 34 | โ | โ | pc,ps4 | ate47/oldcod-source |
| Black Ops 4 (T8) | 35 | Partial | โ | pc | None |
| Black Ops 4 (T8) | 36 | โ | โ | pc,ps4 | ate47/bo4-source |
| Black Ops Cold War (T9) | 37 | Dc | โ | pc,ps4,alpha | ate47/oldcod-source |
| Black Ops Cold War (T9) | 38 | Dc | โ | pc,ps4 | ate47/bocw-source |
| Modern Warfare III (JUP) | 8A | โ | โ | all | ate47/mwiii-source |
| Modern Warfare III (JUP) | 8B | Dc | โ | all | ate47/mwiii-source |
| Black Ops 6 (T10) | 06 | Dc | โ | all | ate47/bo6-source |
| Black Ops 6 (T10) | 07 | Dc | โ | all | ate47/bo6-source |
| Black Ops 6 (T10) | 0B | Dc | โ | all | ate47/bo6-source |
| Black Ops 6 (T10) | 0C | Dc | โ | all | ate47/bo6-source |
| Black Ops 6 (T10) | 0D | Dc | โ | all | ate47/bo6-source |
| Black Ops 6 (T10) | 0E | Dc | โ | all | ate47/bo6-source |
| Black Ops 6 (T10) | 10 | Dc | โ | all | ate47/bo6-source |
| Black Ops 6 (T10) | 11 | Dc | โ | all | ate47/bo6-source |
| Black Ops 6 (T10) | 12 | Dc | โ | all | ate47/bo6-source |
| Black Ops 6 (T10) | 14 | Dc | โ | bo6+bo6_v1 | ate47/bo6-source |
| Black Ops 7 (SAT) | 14 | Dc | โ | bo7 | ate47/bo7-source |
- * : Some source repositories might not be public yet.
- Dc: With pre-decode, see the Using encrypted scripts in the wiki.
- Ex: With extensions, The extensions aren't provided publicly, at least not by me.
| Game | Reader | Handler | Pools |
|---|---|---|---|
| Black Ops 3 | โ | bo3 | rawfile, scriptparsetree |
| Black Ops 4 | โ | bo4 | rawfile, rawfile, scriptparsetree, scriptparsetreedbg, bgcache, keyvaluepairs, luafile, rawstring, scriptbundle, scriptparsetreeforced, streamkey, stringtable, weapon, weapon_tunables, localize, structuredtable, localizeentry |
| Modern Warfare 2019 | โ | mw19 | rawfile, scriptfile (gpl*), luafile, localize |
| Black Ops Cold War | โ | cw | rawfile, scriptparsetree, scriptbundle, bgcache, ddl, localizeentry |
| Vanguard | โ | vg | rawfile, scriptfile (gpl*), luafile, localize |
| Modern Warfare II | โ | mwii | rawfile, scriptfile (gpl*), luafile, stringtable, ddl, scriptbundle, localize |
| Modern Warfare II SP | โ | mwiisp | rawfile, scriptfile (gpl*), luafile, stringtable, ddl, scriptbundle, localize |
| Modern Warfare III | โ | mwiii | rawfile, gscobj, luafile, stringtable, ddl, scriptbundle, localize |
| Modernย Warfareย IIIย SP | โ | mwiiisp | rawfile, gscobj, luafile, stringtable, ddl, scriptbundle, localize |
| Black Ops 6 | โ | bo6 | rawfile, gscobj, gscgdb, luafile, aitype, scriptbundle, stringtable, keyvaluepairs, netconststrings, operator, operatorlist, reactiveoperator, operatorskin, spray, contraildata, parachutedata, ddl, aishootstyleslist, ai_token_types, ai_token_stealing_definitions, ai_token_definitions, localize, soundbank, banktransient |
| Black Ops 6 SP | โ | bo6sp | rawfile, gscobj, gscgdb, stringtable, ddl, scriptbundle, netconststrings, luafile, aitype, localize |
| Black Ops 7 | โ | bo7 | rawfile, gscobj, gscgdb, luafile, aitype, scriptbundle, stringtable, keyvaluepairs, netconststrings, operator, operatorlist, reactiveoperator, operatorskin, spray, contraildata, parachutedata, ddl, aishootstyleslist, ai_token_types, ai_token_stealing_definitions, ai_token_definitions, localize, soundbank, banktransient |
- gpl*: Only working within the GPL-3 distribution using xensik/gsc-tool.
The gsc handler can read scriptparsetree, gscobj or scriptfile pools from decompressed fastfiles.
| Game | Linker | Pools |
|---|---|---|
| Black Ops 4 | bo4 | rawfile, scriptparsetree, scriptparsetreedbg, scriptparsetreeforced, structuredtable, luafile, rawstring, scriptbundle, stringtable, image, localize, ttf, bgcache |
| Blackย Opsย Coldย War | cw | rawfile |
You can download the latest release here:
- Latest Release
- Latest Dev Build (Might be unstable)
The tool checkupdate allows to check for the latest update.
- ate47/t8-atian-menu : All the notes and dump generated by this tool. (All games)
- ate47/BOHashTool : Tool to test hashes with error (en/de)coder for Black Ops games.
- ate47/HashIndex : Hashes storage generated to hash files.
- ate47/oldcod-source : Repository where the GSC decompiler is tested.
- ate47/cod-source : Repository where the Fast File handlers are tested.
To have a lookup over the extracted hashes, you can use a file named strings.txt when using the process, it will be loaded automatically, one string per line.
You can also use .wni compiled files, create a directory with the name package_index and put the .wni files in it.
The tool download_hash_index allows to download the latest hash index from ate47/HashIndex.
This tool is using and providing different dependencies, see LICENSE.md for a full list.
- Serious's t8-compiler for some opcodes for Black Ops 4, it fasted up the process of understanding the internal game functions. Also for the childthread operator syntax.
- JariKCoding's CoDLuaDecompiler to understand the Lua HK scripting format.
- Jake-NotTheMuss's hksc I've modified to support BO4 Lua compilation for the fastfile linker.
