My set of tools. The code is more important than the features, so feel free to reuse it. 🙂
Table of contents
Supported features
Name | Revision | Decompiler | Compiler | PS4 support |
---|---|---|---|---|
Black Ops 3 (T7) | 1B | Partial | ✅ | ❌ |
Black Ops 3 (T7) | 1C | ✅ | ✅ | ❌ |
Black Ops 4 (T8) | 36 | ✅ | ✅ | EXT |
Black Ops Cold War (T9) | 37 | DEC | ✅ | EXT |
Black Ops Cold War (T9) | 38 | DEC | ✅ | EXT |
Modern Warfare III (JUP) | 8A | EXT | EXT | ❌ |
Modern Warfare III (JUP) | 8B | DEC & EXT | EXT | ❌ |
Black Ops 6 (CER) | 06 | DEC & EXT | ✅ | ❌ |
Black Ops 6 (CER) | 07 | DEC & EXT | EXT | ❌ |
Commands
# Compile gsc file
acts gscc <input.gsc> -g <game>
# Example
acts gscc my_script.gsc -g cw # Compile my_script.gsc into a cold war script
# Decompile gsc file
acts gscd file.gscc -g
# Example
acts gscd compiled.gscc -g # Decompile the script compiled.gscc
Supported pools
Black Ops 3: scriptbundle
, stringtable
, structuredtable
, rawfile
, scriptparsetree
.
Black Ops 4: weapon
, customizationtable
, rawfile
, stringtable
, structuredtable
, ddl
, scriptparsetree
, scriptparsetreeforced
, scriptbundle
, scriptbundlelist
, ttf
, bgcache
, maptable
, maptablelist
, maptableloadingimages
, maptablepreviewimages
, playerrolecategory
, playerrolecategorytable
, gametypetable
, unlockableitem
, unlockableitemtable
, playlists
, hierarchicaltasknetwork
, storagefile
, storagefilelist
, storeproduct
, storecategory
, storecategorylist
, rank
, ranktable
, prestige
, prestigetable
, labelstore
, labelstorelist
, rawstring
.
Black Ops Cold War (Dec): rawfile
, rawfilepreproc
, rawtextfile
, stringtable
, scriptparsetree
, scriptbundle
.
Modern Warfare III (COR): gscobj
, scriptbundle
, stringtable
, localize
, luafile
, ddl
.
DEC: Requires pre-decode
COR: Using Cordycep.
Commands
# Command
acts dp <pool>
# Example
acts dp stringtable
Some dumpers are writing to Compiled Files (.cf), the command cfd (cf dump) can extract them.
# Command
acts cfd <files>
# Example
acts cfd output_dump
Prototype libary for random stuff, probably not linked to Call of Duty.
This tool is using and providing
You can download the latest release here:
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.