166 Commits

Author SHA1 Message Date
Andreas Maerten
ca1e7e6b41
Give optimisation hints to compiler (#2929)
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.
2024-04-22 19:48:22 +02:00
gir489
b1bf477d1f
Added formatting to money on HUD. (#2957) 2024-04-22 18:29:42 +02:00
gir489
8425cae0f6
Refactor m_rockstar_id into its proper type of a 64-bit signed integer. (#2901) 2024-03-31 21:11:52 +02:00
gir489
1f556a8c78
Redesigned the preview system entirely. (#2888) 2024-03-30 18:41:12 +01:00
gir489
21da47f3e5
Fixed gamer_handle_serialize/deserialize using the wrong sizes. (#2886) 2024-03-28 20:15:33 +01:00
gir489
4636ef8346
Unify rlGamerHandle code and fix chat inaccuracies. (#2883) 2024-03-27 21:43:31 +01:00
maybegreat48
7e7bcb155a
Refactor and fix send chat (#2864)
* feat(chat): refactor and fix send chat
* fix(chat): fixes
* fix(chat): fix team chat

Co-authored-by: DayibBaba <79384354+DayibBaba@users.noreply.github.com>
2024-03-23 17:37:51 +01:00
Andreas Maerten
cba19d0c33
refactor!: Rewrite of the old notification service (#2866)
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
2024-03-23 00:04:49 +01:00
gir489
ae27173b12
Extra give control checks (#2847)
Closes #2841
Closes #2088
2024-03-19 19:06:03 +01:00
gir489
de5ff92fa0
Fixed hooks::scripted_game_event using incorrect types and sizes. (#2844) 2024-03-19 10:33:50 +01:00
Andreas Maerten
e07601347d
refactor: switch RAGE_JOAAT with string literal functions (#2806)
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
```
2024-03-12 09:42:11 +01:00
gir489
f4e0da5ff4
Added g_local_player pointer sanity checks. (#2792) 2024-03-01 17:48:20 +01:00
Andreas Maerten
183b0eee44
feat(renderer): added dynamic font loading based on lang requirements (#2738)
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
2024-02-21 21:26:29 +01:00
Quentin
683d6bce07
proper fix for weapon info damage crash (#2740) 2024-02-21 07:48:42 +01:00
Quentin
9e6559b304
AMMO_BALL protection (#2733) 2024-02-20 20:27:34 +01:00
Quentin
3a8aed2d00
RECEIVED_CLONE_REMOVE player ped removal protection (#2732) 2024-02-20 20:26:12 +01:00
maybegreat48
240ca76e3b
Block traffic protection (#2688)
* fix: don't randomize components if we're cloning an existing ped
* feat(protections): add traffic manipulation protection
* fix(protections): add a mission check
2024-02-09 15:34:45 +01:00
Anvar
ee707c538b
Graceful Landing (#2660) 2024-01-28 15:17:26 +01:00
maybegreat48
1127e51a52
Optimizations (#2649)
* fix(Respawn): fix respawn in SP
* fix: re-enable bigobj
* fix: update creator's stack size
* fix: use BOOLs instead of bools
* fix(gitignore): hide .pyc files
2023-12-29 17:07:00 +01:00
gir489
4312d9d15c
Weapon events refactor. (#2622)
* Removed legacy REMOVE_ALL_WEAPONS_EVENT network event check.
Added GIVE_WEAPON_EVENT check to prevent people giving us weapons.
2023-12-21 16:17:45 +01:00
gir489
695a6dd20e
Fixes for b3095 (#2537)
* 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.
2023-12-14 00:56:40 +01:00
gir489
95b9724fff
Added more spam messages to the filter. (#2488)
* 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.
2023-12-07 20:04:00 +01:00
yubie
062c95b374
feat(anticheat): Anticheat bypass improvements (#2463)
- 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
2023-11-30 10:47:39 +01:00
Andreas Maerten
0f775d438e
fix(Metrics): block MM metric (#2455) 2023-11-26 23:42:31 +01:00
Andreas Maerten
c01043cfb1
refactor(Metrics): filter out "bad" metrics and allow normal ones to be sent (#2453) 2023-11-26 21:59:01 +01:00
maybegreat48
5d538cf53c
Rewrite AC bypass (#2430)
* 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
2023-11-19 23:20:15 +01:00
maybegreat48
7d3e75f260
Fix submarine car crash protection (#2387) 2023-11-05 23:00:48 +01:00
Yimura
ebeef460df partial revert of #2386 2023-11-05 17:27:50 +01:00
Andreas Maerten
4c6af00687
revert #2380 (#2386) 2023-11-05 17:06:26 +01:00
gir489
864e15a0bc
fix: Submarine crash and allowing empty JSON filenames to be saved (#2380) 2023-11-05 13:54:15 +01:00
HCR-750F
7aad4c5860
refactor(reaction): rework reaction code (#2331)
1. Allow interloper_reaction to use timeout.
2. Fix crash reaction(except TSE) cannot use announce in chat.
3. Allow all friends to bypass auto kick spammers, modder flag and  reactions.
Provides an alternative for users who experience this weird bug https://github.com/YimMenu/YimMenu/issues/2266 . They can just trust their friends until someone provides valuable information for developers to fix.
4. Allow trusting specific players (bypass auto kick spammers, modder flag and reactions).
5. Trust the whole session temporarily (Avoid team members being kicked when in mission).
6. Remove duplicate logs when blocking crash (except for TSE crash)
7. remove unused gamer_instruction_kick in reaction list
8. Allow announce in team only chat
2023-11-04 14:54:32 +01:00
gir489
7e6c6367b1
Refactored writing RandomID into a set that's locally tracked by the user. (#2376) 2023-11-03 18:34:22 +01:00
gir489
37468ca7b0
Converted all static strings to translation keys. (#2284) 2023-10-20 18:24:44 +02:00
Quentin
8c6a9303cb
queue_dependency: remove outdated hardcoded dependency callers offsets, no more use since we have a game skeleton update hook now. (#2268) 2023-10-12 23:35:04 +02:00
maybegreat48
ba5610af99
Actually fix integrity checks (#2232) 2023-10-08 21:33:12 +02:00
maybegreat48
05575a6357
Bypass integrity checks (#2216)
Closes #2215
Closes #2218
Closes #2220
Closes #2212
2023-10-07 17:19:46 +02:00
lonelybud
26e42faeac
fix(LobbyLock): use multikick when lobby lock is enabled (#2189) 2023-09-24 23:14:28 +02:00
yubie
2a13ed7345
feat(anticheat): add bonus http blocker (#2186) 2023-09-24 23:13:14 +02:00
maybegreat48
5a2dfb90b6
fix(player_db): fix player database (#2166) 2023-09-20 14:48:44 +02:00
gir489
a4209c1b23
fix: CPlayerSectorPos false positives and bad math (#2136)
* Closes #2096
2023-09-17 22:18:20 +02:00
maybegreat48
4b8e350628
Anticheat bypass fix (#2128) 2023-09-16 13:44:03 +02:00
Quentin
52896b548f
Fix #1545 - ERR_MEM_EMBEDDEDALLOC_ALLOC Crash (#2116) 2023-09-12 20:19:24 +02:00
gir489
c2dd37c815
Add proper OOB calculation for CSectorDataNode. (#2103) 2023-09-11 18:06:24 +02:00
Quentin
9149acf8d8
fix(renderer): Fix renderer callbacks called for nothing. (#2073) 2023-09-02 12:46:40 +02:00
gir489
cf07cfec04
Redesigned Vehicle Spawn menus to have consistent features. (#2063)
Closes #2053
2023-08-31 15:43:55 +02:00
Andreas Maerten
4871dbd705
fix(GTADataService): not skipping bad dlc vehicles (#2055) 2023-08-29 23:22:10 +02:00
maybegreat48
5eead0436f
Huge protection improvements and other stuff (#1963)
* feat(protections): add a fuzzer
* feat(protections): improve protections
* feat(spoofing): add warning
* feat(world): force object cleanup
* fix(weapons): fix custom weapon code
* fix(weapons): fix for #1983
2023-08-19 13:01:08 +02:00
Yimura
31c601658f fix: don't call original on prepare_metric_for_sending 2023-07-25 18:10:32 +02:00
MegaMemeMoment
13be3d3ab1
fix(hooks): return types (#1834)
fixes a bunch of return types that were seemingly copied from IDA without manual verification
2023-07-25 15:52:21 +02:00
Rxann
0b2b32dc34
Added Empty lobby button (#1812) 2023-07-24 22:10:44 +02:00