From 262e5c778c6a34c48d39631a5b62946f94142c2c Mon Sep 17 00:00:00 2001
From: Seemann
Date: Thu, 12 May 2022 16:38:10 -0400
Subject: [PATCH] 0.9.4 release
---
CHANGELOG.md | 28 ++++++++++++++++++++++++----
installer/cleo_redux.iss | 14 +++++++-------
loaders/IdeLoader/Cargo.lock | 7 +++----
loaders/IdeLoader/Cargo.toml | 5 ++---
loaders/IdeLoader/src/lib.rs | 2 +-
website/index.html | 4 ++--
6 files changed, 39 insertions(+), 21 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 56235b3..0646adc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,19 +1,41 @@
+### 0.9.4 - May 12, 2022
+
+- add support for custom file loaders allowing [import of various file formats](https://re.cleo.li/docs/en/imports.html)
+- add [new bindings](https://re.cleo.li/docs/en/js-bindings.html) 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 of `RuntimeInit` 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 script use `CLEO.debug.trace(true)`. To disable tracing use `CLEO.debug.trace(false)`.
+- `__dirname` is now `const` and can not be changed
+- static methods have been excluded from [fluent interface](https://re.cleo.li/docs/en/fluent-interface.html) (can't be chained with other methods)
+
### 0.9.3 - Apr 22, 2022
-- CLEO can be [embedded](https://re.cleo.li/docs/en/embedding.html) and run on unknown hosts via the self-hosted mode [See demo](https://www.youtube.com/watch?v=rk2LvDt7UkI)
+- CLEO can be [embedded](https://re.cleo.li/docs/en/embedding.html) and run on unknown hosts via the self-hosted mode [See demo](https://www.youtube.com/watch?v=rk2LvDt7UkI)
- new installer that automatically downloads extra dependencies such as Ultimate ASI Loader and plugins (dylib, IniFiles, or ImGuiRedux)
- support for organizing scripts and its dependencies in sub-directories inside the CLEO folder. See https://re.cleo.li/docs/en/script-lifecycle.html#organizing-scripts
-- automatically download the latest `enums.js` file from Sanny Builder Library along with the command definitions. You can import enums in JS with `import * as enums from './.config/enums';`
+- automatically download the latest `enums.js` file from Sanny Builder Library along with the command definitions. You can import enums in JS with `import * as enums from './.config/enums';`
- memory access operations can run on an unknown host (previously they had a dependency on the `op` command which itself can only run in GTA games)
- `Memory.CallFunctionReturnFloat` and `Memory.CallMethodReturnFloat` are now available for 32-bit hosts. `CallFunctionReturnFloat` has been previously added for 64-bit hosts.
**SDK AND PLUGINS**
+
- SDK's method `ResolvePath` now resolves paths starting with `./` or `.\` relative to the script directory. You can use them in commands like `READ_INT_FROM_INI_FILE` or `LOAD_DYNAMIC_LIBRARY`
- new SDK methods `GetHostName`, `SetHostName`, `RuntimeInit`, `RuntimeNextTick`. SDK version is now 2.
- IniFiles plugin updated to 1.2: increased max length of the INI file path
- Dylib plugin updated to 1.1: increased max length of the DLL file path
**BREAKING CHANGES**
+
- delete previously deprecated command `op`. Use `native` instead.
- rename `GAME` variable to `HOST` (`GAME` is still available for use but it's recommended to update older scripts)
@@ -26,14 +48,12 @@
| Vice City: The Definitive Edition | [vc_unreal.json](https://github.com/sannybuilder/library/blob/master/vc_unreal/vc_unreal.json) | `0.215` |
| San Andreas: The Definitive Edition | [sa_unreal.json](https://github.com/sannybuilder/library/blob/master/sa_unreal/sa_unreal.json) | `0.220` |
-
### 0.9.2 - Mar 04, 2022
- add support for The Definitive Edition Title Update 1.04 (GTA III DE 1.0.0.15284, VC DE 1.0.0.15399, SA DE 1.0.0.15483)
- fix an issue with string arguments in Memory call commands in GTA San Andreas (https://github.com/cleolibrary/CLEO-Redux/issues/36)
- fix an issue with scripts not working if the path to the game directory has square brackets `[`, `]`
-
### 0.9.1 - Feb 22, 2022
- add [SDK for developing custom commands](using-sdk.md) in C++ and Rust
diff --git a/installer/cleo_redux.iss b/installer/cleo_redux.iss
index 9991f3c..c2caaa5 100644
--- a/installer/cleo_redux.iss
+++ b/installer/cleo_redux.iss
@@ -1,5 +1,5 @@
#define AppName "CLEO Redux"
-#define AppVersion "0.9.4-dev.20220510"
+#define AppVersion "0.9.4"
#define AppPublisher "Seemann"
#define AppURL "https://re.cleo.li"
#define SourceDir "..\"
@@ -56,7 +56,7 @@ Name: "plugins/imgui/d3d8to9"; Description: "d3d8to9 Wrapper - for games using D
Name: "plugins/imgui/SilentPatch"; Description: "SilentPatch - needed for the mouse to work properly in classic GTA"; Types: full
Name: "loaders"; Description: "File Loaders"; Types: full
Name: "loaders/text"; Description: "*.txt files"; Types: full
-Name: "loaders/ide"; Description: "*.ide files (for GTA3, VC, SA)"; Types: full
+Name: "loaders/ide"; Description: "*.ide files (for 32-bit GTA3, VC, SA)"; Types: full
Name: "asiloader"; Description: "Ultimate ASI Loader (by ThirteenAG)"; Types: full
@@ -99,11 +99,11 @@ m4 =No supported game or application was found in the selected directory. To con
m5 =32-bit (x86)
m6 =64-bit (x64)
-russian.m2 =Выберите версию CLEO Redux
-russian.m3 =Какую версию CLEO Redux (32-битную или 64-битную) нужно установить?
-russian.m4 =В выбранной директории не нашлось поддерживаемых игр или приложений. Для продолжения установки, выберите одну из двух возможных версий CLEO Redux. Подсказка: она должна совпадать с версией (архитектурой) игры или приложения, в которой будет запускаться CLEO Redux.
-russian.m5 =32-битная (x86)
-russian.m6 =64-битная (x64)
+russian.m2 =пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅ CLEO Redux
+russian.m3 =пїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅ CLEO Redux (32-пїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅ 64-пїЅпїЅпїЅпїЅпїЅпїЅ) пїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ?
+russian.m4 =пїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅ пїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ. пїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ, пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅ пїЅпїЅ пїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅ CLEO Redux. пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ: пїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅ (пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ) пїЅпїЅпїЅпїЅ пїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ, пїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅ пїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅпїЅ CLEO Redux.
+russian.m5 =32-пїЅпїЅпїЅпїЅпїЅпїЅ (x86)
+russian.m6 =64-пїЅпїЅпїЅпїЅпїЅпїЅ (x64)
[Code]
const
diff --git a/loaders/IdeLoader/Cargo.lock b/loaders/IdeLoader/Cargo.lock
index df745fa..0057ee2 100644
--- a/loaders/IdeLoader/Cargo.lock
+++ b/loaders/IdeLoader/Cargo.lock
@@ -26,9 +26,9 @@ dependencies = [
[[package]]
name = "gta-ide-parser"
-version = "0.0.2"
+version = "0.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6db96fa53418d0e00ca61c2747f2a156e07510a10012af8d7512a76e03df8ae3"
+checksum = "8bab2ffa29c751bfab49df963917d667b5d146ffd6af50ba4429d64373f5ff6e"
dependencies = [
"nom",
]
@@ -41,12 +41,11 @@ checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
[[package]]
name = "ide-loader"
-version = "0.1.0"
+version = "1.1.0"
dependencies = [
"cleo_redux_sdk",
"ctor",
"gta-ide-parser",
- "nom",
"serde",
"serde_json",
]
diff --git a/loaders/IdeLoader/Cargo.toml b/loaders/IdeLoader/Cargo.toml
index 863b481..290d286 100644
--- a/loaders/IdeLoader/Cargo.toml
+++ b/loaders/IdeLoader/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "ide-loader"
-version = "0.1.0"
+version = "1.1.0"
edition = "2021"
authors = ["Seemann "]
@@ -10,9 +10,8 @@ crate-type = ["cdylib"]
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
-gta-ide-parser = "0.0.2"
+gta-ide-parser = "0.0.3"
ctor = "0.1.21"
serde_json = { version = "1.0", features = ["preserve_order"] }
serde = { version = "1.0", features = ["derive"] }
-nom = "7.1.1"
cleo_redux_sdk = "0.0.9"
\ No newline at end of file
diff --git a/loaders/IdeLoader/src/lib.rs b/loaders/IdeLoader/src/lib.rs
index d9df794..f72c396 100644
--- a/loaders/IdeLoader/src/lib.rs
+++ b/loaders/IdeLoader/src/lib.rs
@@ -6,7 +6,7 @@ use std::{fs::read_to_string, path::Path};
#[ctor]
fn init() {
- cleo_redux_sdk::log("IDE Loader 1.0");
+ cleo_redux_sdk::log("IDE Loader 1.1");
cleo_redux_sdk::register_loader("*.ide", loader);
}
diff --git a/website/index.html b/website/index.html
index 9a0d8d7..112af2b 100644
--- a/website/index.html
+++ b/website/index.html
@@ -124,7 +124,7 @@
Its flexible, extensible and secure environment provides rich
@@ -149,7 +149,7 @@
data-translate="download"
>Download
- v0.9.3 | Apr 22, 2022
+ v0.9.4 | May 12, 2022