Releases: cleolibrary/CLEO-Redux
1.1.0
- add support for GTA The Trilogy - The Definitive Edition (Steam) - v1.0.17.38838
- add
"moduleDetection": "force"
in defaulttsconfig.json
to solve error TS2451 in VS Code. Delete yourtsconfig.json
if you want to recreate it with the new option.
BREAKING CHANGES
- bumped minimum required versions of command definitions for GTA IV
Thanks to my Patreon supporters for making this release possible.
1.0.7
- add a new property
CLEO.hostVersion
that returns the version of the current host. Currently only available if the current exe file has version info (e.g. GTA IV or GTA Trilogy) - fix a crash in GTA IV when loading a script with a syntax error
- fix an issue in GTA IV when some commands always returned the same value (e.g.
GET_CURRENT_CHAR_WEAPON
)
BREAKING CHANGES
- bumped minimum required versions of command definitions
CLEO.version
andCLEO.apiVersion
incorrectly returned empty strings for missing parts of the version string. Now they returnundefined
instead.
log(CLEO.apiVersion.patch); // was "" now undefined
log(CLEO.apiVersion.pre); // was "" now undefined
log(CLEO.apiVersion.build); // was "" now undefined
1.0.6
- new built-in functions
addEventListener
anddispatchEvent
. See https://re.cleo.li/docs/en/events.html - add
setTimeout
,setInterval
,clearTimeout
,clearInterval
. See https://re.cleo.li/docs/en/api.html - add
.cs
,.js
,.ts
to the list of allowed file extensions for CLEO.runScript - fix a rare deadlock causing scripts to stop on timeout
- fix an issue causing script failures after hot reload
- fix an issue when Bully commands returned incorrect values
SDK AND PLUGINS
- new SDK method
TriggerEvent
to trigger custom events with some payload. SDK version is now 7. - new Events plugin that brings in a few events to react on in JS/TS code:
OnVehicleCreate
,OnPedCreate
,OnObjectCreate
,OnVehicleDelete
,OnPedDelete
,OnObjectDelete
- IdeLoader 1.3: generate
ide_loader.d.ts
for better intellisense in TS scripts - TxtLoader 1.1: generate
txt_loader.d.ts
for better intellisense in TS scripts
BREAKING CHANGES
- bumped minimum required versions of command definitions
Thanks to @VitalRus95 for the help with testing.
1.0.5
- add TypeScript support
- add support for commands using global SCM variables (e.g. counters or timers). See scm.ts
- delete previously deprecated variable
GAME
. UseHOST
instead - update script watcher: changing
.mjs
files in a script directory or any nested directories triggers script reload FxtStore
can be forced to mutate global FXT keys by setting the last argument inFxtStore.insert
andFxtStore.delete
to true
SDK AND PLUGINS
- IdeLoader 1.2: fixed a parser bug that prevented
.ide
files with a2dfx
section to be loaded - Frontend 1.1: reduced a timeout during a check for updates to 10 seconds
- ImGuiRedux (by Grinch_): more commands
BREAKING CHANGES
- bumped minimum required versions of command definitions
Thanks to DadlyPrey, BroXe, and Junior_Djjr for supporting my work on Patreon!
1.0.4
- experimental support for async functions
- add new method
CLEO.runScript
to spawn new scripts - add FXT support in GTA IV
- changing JS files in a script directory makes this script to reload
i.e. if you haveCLEO\myscript\index.js
andCLEO\myscript\dep.js
, changing either file reloadsindex.js
- fix a crash on GTA III and GTA VC when a script continuously creates and destroys blips #75
BREAKING CHANGES
- bumped minimum required versions of command definitions for GTA IV
1.0.3
- add support for the latest Trilogy patch 1.04.5
- add methods
Memory.ReadUtf8
,Memory.WriteUtf8
,Memory.ReadUtf16
,Memory.WriteUtf16
for reading and writing strings from memory - setting
ONMISSION
variables totrue
allows usage of mission-only commands like00D9 STORE_CAR_CHAR_IS_IN
or00D8 MISSION_HAS_FINISHED
SDK AND PLUGINS
- new SDK methods
GetDirectoryPath
,GetCLEOVersion
,GetSymbolAddress
,GetNumberOfActiveCSScripts
,GetNumberOfActiveJSScripts
,IsEndOfArguments
. SDK version is now 6. - code that displays a CLEO version in the main menu was extracted into a separate plugin -
frontend.cleo
. Works with GTA III, VC, re3, reVC, and SA.
BREAKING CHANGES
- bumped minimum required versions of command definitions
1.0.2
- add JavaScript support in 64-bit versions of re3 and reVC (see Feature Matrix for details)
- make
CheckUpdates
option disabled by default
SDK AND PLUGINS
- make 64-bit version of IdeLoader
INSTALLER
- fix an error during the installation of ASI Loader in GTA IV
- add an extra step during the installation for re3 and reVC to select the correct version of the game (32-bit or 64-bit)
BREAKING CHANGES
- bumped minimum required versions of command definitions
1.0.1
- initial support for Bully: Scholarship Edition (v1.2 PC) https://www.youtube.com/watch?v=Jz3XB3rDiRI
- fix a potential crash in gxt hook
- fix a potential issue with scripts not working after reload under some circumstances
SDK AND PLUGINS
- add
GTA IV
,Bully
, andManifest
toHostId
enum - update Input plugin to v1.3:
- use
GetAsyncKeyState
instead ofGetKeyState
- new commands GET_CURSOR_POS and SET_CURSOR_POS
- use
- new SDK method
OnShowTextBox
to register and run callbacks on aShowTextBox
function call. Implementing a custom callback shadows the default implementation for the given host (e.g. a message in the black rectangular text box). - unknown hosts can now have a manifest file to define a custom name and API files for the host
- SDK version is now 5
INSTALLER
- you can opt out of installing provided API files and download latest versions from Sanny Builder Library during the first game run
BREAKING CHANGES
-
bumped minimum required versions of command definitions
Pad
enum was renamed toPadId
to avoid conflicts with a staticPad
class.
1.0.0
- add initial support for GTA IV (The Complete Edition) (video)
- all GTA games now use compound definitions (a combination of the primary JSON file and a JSON file for the Unknown host from Sanny Builder library)
- fix an issue when CLEO stopped loading FXT files after encountering non-UTF8 characters
- add CLEO.apiVersion property
SDK AND PLUGINS
- two new plugins: MemoryOperations and Input
- new SDK methods
OnBeforeScripts
,OnAfterScripts
,OnRuntimeInit
to register and run callbacks on each game tick or after game reload. See example of usage in the Input plugin.
INSTALLER
- installer now includes all files needed to setup and run CLEO Redux in offline mode
BREAKING CHANGES
- bumped minimum required versions of command definitions
Thanks to DadlyPrey, BroXe and Junior_Djjr for supporting my work on Patreon!
And thanks to everyone who contributed to CLEO Redux, directly or indirectly.
0.9.4
- add support for custom file loaders allowing import of various file formats
- add new bindings available in JS code: a static object
CLEO
and a constant__filename
- add new config option
DisplayMenuInfo
to control whether CLEO Redux should display the version information in the main menu (supported in GTA III/VC/SA) - fix a conversion error in some commands when an integer number is given instead of a boolean
SDK AND PLUGINS
- when
RuntimeNextTick
is called with both arguments set to zero (RuntimeNextTick(0, 0)
) CLEO calculates correct values for current_time and time_step as the time elapsed from the last call ofRuntimeInit
and the delta time between two ticks respectively - add an option in the installer to download SilentPatch as a dependency of the ImGuiRedux plugin
- new methods
RegisterLoader
,AllocMem
,FreeMem
(see the guide) - new file loaders for Text files (any host) and IDE files (GTA3, VC, SA)
BREAKING CHANGES
- configuration option
LogOpcodes
is no longer applied to JS scripts. To start tracing executed commands in a JS script useCLEO.debug.trace(true)
. To disable tracing useCLEO.debug.trace(false)
. __dirname
is nowconst
and can not be changed- static methods have been excluded from fluent interface (can't be chained with other methods)