Added a Tunables tab similar to Globals/Locals that can be used to read and write tunables by inputting their unsigned/signed or hexadecimal hash, as well as their pre-joaat name. It also displays the offset of the given tunable.
Removed the animation players in the Debug tab as the one in the Self tab makes them redundant.
- Added a search box for the script names in Debug -> Threads.
- Added `is_session_started` and `force_script_on_player` functions to the Lua network class.
- Added `is_active` and `start_launcher_script` functions to the Lua script class.
- Moved `view_stat_editor.cpp` to `src/views/network` from `src/views/settings`.
- Added a help text for directly editing the sliders in outfit editor.
* Complete player and network UI redesign, meant to show all features instead of stuffing them into tiny boxes
* Added option to delete player vehicles
* Better clone player (now clones head blend too)
* Better host token spoofing, with an option to enter your own
* Better host token spoofing detection
* Better desync kick prot detections
* A script blocker for the entire session (per-player options will be added later)
* Added option to spoof data/DLC hashes
* Logging framework that allows developers to easily debug false positives
* Major protection improvements
The main goal was improving the readability of the original code however some ugliness remains.
- Swapped from pointer singleton to instance singleton
- Actually make use of the alpha logic that used to be present
- Added a counter to notifications to indicate if something is being spammed
- Notification timeouts reset if they're sent to the queue again
Why? Shorter to write and removes the macro usage
I used the following regex to find all occurrences:
```r
RAGE_JOAAT\("(.*?)"\)
```
then the following to replace it all:
```r
"$1"_J
```
* Refactored TRIGGER_SCRIPT_EVENT for the duplicate f_2 argument they added in 3095.
Fixed OOB gadget spam caused by the tow truck.
Increased max interiors in InteriorControl.
* Updated scripted_game_event.
* Update GTAV-Classes repo.
* Fixed locals for 3095.
* Bump project to Build 3095.
* Fixed Debug -> Locals crashing if the user added an invalid Local Read.
Fixed Debug Local addendum being way too wide on the page.
* Added the same boundary check for Debug -> Globals.
* Copied code from Debug Globals to Debug Locals.
Redesigned components::input_text to return the InputText result, and add an overloaded method to take a std::string.
Fixed Debug Globals having static text and not using components::input_text to prevent sending the input to the game.
Fixed view_debug_threads::thread_states not properly ending its string causing ImGui to read more than it should from memory.
Made Debug Globals cap the input index to UINT32, as the user could potentially overflow the get_ptr function and cause the game to crash.
* Removed extraneous does_thread_exist deceleration.
* feat(vscode): added launch.json to dbg
* feat(file_manager): Make use of a global instance
* feat(file_manager): Allow for file and folder instances to be empty
* refactor(GlobalsService): Update code of global service (untested)
* fix: script manager and lua scripts: change the api so that the m_scripts array is only modified in a specific safe location: before it gets ticked.
* fix script manager: don't expose the script vector directly, for multithreading safety
* fix lua manager usage: don't iterate the module array without locking, nor un/load module from a script thread
* lua script: only do actual loading of lua modules in script mgr
* lua native bindin: fix pointer parameters, out C style parameters are returned as multiple return values lua-style