* Fixed get_rockstar_id returning an incorrect type.
* Added more OOP usage of get_rockstar_id when applicable.
Co-authored-by: gir489returns <gir489returns@outlook.com>
* Refactored Script Event Logging to log to a file that's kept open, but flushed each event instead of spamming the console.
* Added Rockstar ID to the Script Event Logger.
feat(invoker): add compiler hints
chore(get network event data): added translation TODO
feat(native hooks): add compiler hint to crashes
feat(render): add likely compiler hint to on_present
feat(thread pool): add compiler hints
Added hook likely/unlikely switches to debug/crash scenarios.
Added HEX_TO_UPPER call on the AC verifier offsets.
Added more fuzzer unlikely attributes.
Replaced some hard coded numbers with their unhashed _J variants.
Added more unlikely attributes to singleton initializer checks.
Added more likely/unlikely attributes to certain scenarios.
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
```
Related YimMenu/Translations#117
Closes#2723
Changes made:
- Renderer class was changed to a static instance
- Some throw code was removed because of change of instantiation of the renderer
- Fonts are dynamically loaded based on the language requirements
- renderer files have been moved to make the root directory less messy
- Added a font mgr to improve the ease of adding more language support
* 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.
* Added more spam messages to the filter.
* Removed duplicate remote control vehicle button from the player vehicle menu.
* Added heuristical spam detector.
* Fixed clock in spam logger.
* Added date output to the chat logger.
* Added a message to show the user when someone is spamming.
More static text translations.
* Removed redundant mobile global in scr_globals.hpp.
* Added a spam reason to the spam logger.
* Added team/all to the chat logger.
Added a logger call for the user's chats.
- Add more metrics to bad_metrics set
- Add MM Filtering (This metric shouldnt be normally called anyway)
- Improve QD Hook to increase AC verifier delay when detected
- Removed gameskeleton hook in favor of patching ac at init
- Added tamperactions check to gameskeleton patcher
* fix(anticheat): rewrite AC bypass again (the old one isn't detected but this is cleaner)
* fix(chat): some chat tweaks
* fix(anticheat): fix memory leak
* feat(lua): add is_player_friend
* fix(protections): fix possible false positives with the vehicle task mismatch protection
* feat(protections): add debug logs to trace false positive
* fix(spam): add some more stuff