Due to the dynamic nature of JavaScript CLEO Redux needs to know an interface of each native command, i.e. a number of input arguments and returned values and their types. Sanny Builder Library serves as the source of command definitions for CLEO Redux.

At start CLEO validates that a definition file is present and correct and if not tries to download it from GitHub (see the table below) into your local CLEO/.config directory. If that did not happen, or you don't want to let CLEO make network calls, manually download the required file and place it in the CLEO/.config directory.

GameFileMinimum Required Version
GTA III, re3gta3.json0.267
GTA VC, reVCvc.json0.273
GTA San Andreas (Classic) 1.0sa.json0.319
GTA III: The Definitive Editiongta3_unreal.json0.228
Vice City: The Definitive Editionvc_unreal.json0.234
San Andreas: The Definitive Editionsa_unreal.json0.263
GTA IVgta_iv.json0.78
Unknown (32-bit)unknown_x86.json0.225
Unknown (64-bit)unknown_x64.json0.228
Bully: Scholarship Editionbully.json0.41

CLEO Redux uses compound definitions (a combination of the primary JSON file for the current game and a JSON file for the Unknown host). It lets SDK commands to work in JS scripts regardless of them being defined or not in the primary JSON file. You should notice that during updates CLEO downloads both <game>.json and unknown.json as well as the accompanying enums.js files. It should not affect any existing scripts.