Cfx.re Community Pulse - June 2023 Edition

Hello everyone,

It’s already been a month, and we have some more updates for you. Thanks to everyone who provided feedback last month on our pulse post!

Enforcement against common code obfuscators

Last week, we decided to take action against popular obfuscators on our platform.

There has been some confusion as to why this enforcement is happening, and we want to reaffirm that the use of any obfuscation method other than the Asset escrow system is prohibited, and it always has been.

We had to take action because of the rise in popularity of paid anti-cheat resources that hide a wide variety of exploits to perform actions they are not supposed to do on our players’ computers, and the usage of these obfuscators makes the investigation work of our development team way harder when it comes to fixing these critical exploits.

This is a huge security concern as some of these exploits are allowing them to perform actions such as reading & writing to your computer memory, or reading, writing, and exfiltrating any files from your computer.

We ask server owners and resources authors to familiarize themselves with both our Terms of Service and our Resource FAQ.

FiveM & RedM Updates

  • Added game_enableDynamicDoorCreation network check bypass, allowing the creation of doors dynamically in a network environment (thanks to @Nikez, @z3t4s, and okqut).
  • Added GET_PED_SWEAT native to get the ped’s sweat level (thanks to @MRV6).
  • Added DISABLE_VEHICLE_PASSENGER_IDLE_CAMERA, allowing the disabling of the idle camera while sitting in a vehicle as a passenger (thanks to LWSS).
  • Added various new server state natives for FiveM and RedM, see related PRs: ped movement, boat game state, vehicle damage, ped game state, entity script game state (thanks to @MRV6).
  • NUI in-process GPU option is now available in RedM (thanks to Ktos93).
  • Fixed the torso IK crash in FiveM that could potentially be abused by malicious actors to crash players (R* bug fix).
  • According to the reports, task scenario crashes on RedM have been fixed with the latest experimental fix attempt!
  • Improved input validation for SetPedFaceFeature. Negative Chin Hole and Neck Thickness values should no longer produce unexpected results.
Git Shortlog

AvarianKnight (2):

  • [eb5292380] fix(state/fivem): parse proper fields for bodyHealth, add health
  • [def563d8b] tweak(native/decls): mark culling natives as deprecated

David Malchin (1):

  • [aa3079330] feat(native-decls): update SET_HTTP_HANDLER (#1605)

Disquse (4):

  • [fa0e097ae] tweak(five): qol improvements for timecycle editor
  • [90a9ac8ee] feat(five): patch torso IK crash
  • [416371e19] tweak(net/rdr3): rework CTaskUseScenario crash workaround
  • [266e7ef63] fix(server): proper GetData calls

Ktos93 (1):

  • [9f34d8ec3] tweak(ext/cfx-ui): enable NUI in-process GPU option for RedM

LWSS (1):

  • [e06c67ed4] feat(extra-natives/five): add DISABLE_VEHICLE_PASSENGER_IDLE_CAMERA

MRV (6):

  • [c07f75106] feat(onesync): ped movement group research
  • [9b35ba7be] feat(onesync): boat game state research
  • [f6849e5f7] feat(onesync): veh damage status research
  • [c01b4bc36] feat(onesync): more ped game state research
  • [ed98fea9b] feat(onesync): entity script game state research
  • [e95943a5e] feat(extra-natives/five): add GET_PED_SWEAT

Nikez (1):

  • [13ecc5494] feat(extra-natives/five): dynamic door creation, network bypass

Tom (1):

  • [be059fd7e] feat(gamestate/server): add SetEntityIgnoreRequestControlFilter native

blattersturm (40):

  • [b8587080d] tweak(server): initConnect client lifetime tweaks
  • [29b3f1c89] fix(conhost): crash with r_disableRendering
  • [12d1cdb5e] fix(ext/cfx-ui): preventDefault on Enter press for IP entry
  • [d0fd41e3b] fix(server/impl): presentCard reference cycle
  • [7e9d27888] Merge remote-tracking branch ‘tom-gun/tweak-load-veh-meta’
  • [3945884d8] Merge remote-tracking branch ‘ranstar74/master’
  • [ecb4d9027] tweak(vendor): update jwt-cpp submodule
  • [6dc3da2ec] fix(server/impl): put back ‘old’ Client->SyncData behavior
  • [db2341fd4] Merge remote-tracking branch ‘thorium-cfx/scaleform_debug_log’
  • [7be007b0e] Merge remote-tracking branch ‘manzarek123/entitylockdown’
  • [c0eb6d17b] Merge remote-tracking branch ‘dkrm9743/master’
  • [b50df72b8] tweak(server): mark .replxx_history as hidden on Windows
  • [61061319e] Merge remote-tracking branch ‘disquse/fivem/timecycle-editor-tweaks’
  • [8303b0fe5] fix(gamestate/server): another iteration of the train fix
  • [29abb0701] Merge remote-tracking branch ‘disquse/fivem/torso-ik-crash’
  • [fd765a29f] fix(build): linux build tweaks
  • [6951d6463] tweak(vendor): update rocksdb
  • [cd5d55532] fix(profiler): crashing for profiler view on invalid file
  • [3daa0289c] fix(gamestate/server): lock hierarchy for ReassignEntity
  • [6ef72a928] Merge remote-tracking branch ‘disquse/rdr3-task-scenario-crash-ng’
  • [8b06bd2d1] Merge remote-tracking branch ‘thorium-cfx/mono_rt2_core_scheduler’
  • [ae0c78c52] fix(gamestate/server): properly move ReassignEntity lock
  • [2416297b8] tweak(data/client): mscorlib.dll update
  • [68491612f] tweak(graphics/five): graphics mod DLL loading changes
  • [7901babf3] tweak(server): ‘open’ command for debug builds
  • [c2d036690] fix(glue): packfile signing key breakage
  • [81a9edd14] update txAdmin submodule to v6.0.0
  • [c819448c2] fix(net): set server feature policy even without key token
  • [f846c3c6e] Merge remote-tracking branch ‘thorium-cfx/mono_rt2_unload_regression’
  • [a07cb172c] fix(server/impl): handle invalid utf-8 in handover
  • [13ace85c8] fix(server/impl): catch exceptions during handover parse
  • [c06235d50] fix(build): CI_{BUILD->COMMIT}_REF_NAME
  • [5b794b879] fix(nui/core): don’t register FxDK APIs if not in FxDK
  • [236a214bf] fix(glue): disable packfile signing until the new PKI system exists
  • [1d8434cf9] Merge remote-tracking branch ‘avarianknight/deprecate-culling’
  • [ef3877cff] Merge remote-tracking branch ‘avarianknight/fix/health-data-node’
  • [d097a5bd1] Merge remote-tracking branch ‘summeryukata/fix/mod-count’
  • [efe232a9c] Merge remote-tracking branch ‘thorium-cfx/mono_rt2_fix_expiration’
  • [f4c18b6ab] fix(build/linux): less specific openssl-dev dependency
  • [8e6c18939] Merge branch ‘gl-111’

deterministic_bubble (9):

  • [eb5d1f2c5] Merge pull request #1986 from thorium-cfx/mono_rt2_runtime_patches
  • [770c7aadb] Merge pull request #1954 from thorium-cfx/mono_rt2_5
  • [1bb405637] Merge pull request #1998 from thorium-cfx/mono_rt2_5_wrong_macro
  • [484462f17] Merge pull request #2000 from thorium-cfx/mono_rt1_attach_thread
  • [452e06d92] Merge pull request #2002 from thorium-cfx/mono_rt2_events_and_basescript
  • [5979ce459] Merge pull request #2009 from thorium-cfx/mono_rt2_enablement_and_dynfunc_cache
  • [4a5d88ab5] Merge pull request #2014 from thorium-cfx/mono_rt2_misc_bug_fixes
  • [4b1aeaf24] Merge pull request #2021 from thorium-cfx/mono_rt2_cas_and_dynfunc_logging
  • [1649e2a2a] Merge pull request #2023 from summeryukata/fix/nve-fix

drkm9743 (1):

  • [b7c66cd95] tweak(game/five): increase CScenarioInfo limit

jakub (1):

  • [3f5e29533] fix(extra-natives/five): better handling for invalid face feature scales

nihonium (1):

ranstar74 (2):

  • [750bf21d4] fix(extra-natives/five): LOAD_WATER_FROM_PATH was not combining path properly
  • [f3e9ec83b] feat(extra-natives/five): add SET_WATER_AREA_CLIP_RECT native

shiro (3):

  • [94a9dac03] Revert “fix(glue): disable packfile signing until the new PKI system exists”
  • [b987d5f9a] fix(mod-loader): block outdated version of nve weapon overhaul modpack
  • [3ed947b0d] fix(mod-loader): don’t mount empty modpacks

thorium-cfx (14):

  • [f96fbe7ad] fix(clrcore-v2): teething troubles
  • [37986b09a] feat(scripting-mono): enable mono v2 runtime
  • [2380d40d3] feat(streaming-five): Scaleform debug logging
  • [534051092] fix(scripting-mono-v2): wrong macro
  • [46b8470ca] fix(scripting-mono): attach mono thread
  • [d4f0f4c50] tweak(scripting-mono-v2): use core scheduler
  • [d671be8a7] feat(clrcore-v2): global events and BaseScript instantiation control
  • [c44e8a719] feat(clrcore-v2): full BaseScript enable-/disablement
  • [01cff7be5] tweak(clrcore-v2): DynFunc caching and fixes
  • [fb68d8b03] fix(clrcore-v2): several bug fixes
  • [53dfe30d0] fix(scripting-mono-v2): unload regression
  • [3912a081f] fix(clrcore-v2): CAS transparency fixes
  • [ee9cc7bb0] tweak(clrcore-v2): more guidance on DynFunc exceptions
  • [55ffd0114] fix(scripting-mono-v2): use epoch timing check

tom-gun (1):

  • [6b85eba47] tweak(streaming/five): dynamic vehicle metadata size calculation

Anticheat updates

Our anticheat has continuously seen a lot of updates targeting popular cheating software used on our platform. The fairness of our players’ experience is our anticheat team’s ongoing focus.

We’d like to remind you that if you have access to any working cheat software please get in touch on our Support platform with the following information:

  • Archive containing the cheat executables
  • Name of the cheat
  • Where did you get it (Discord server, website, Youtube video, …)
  • Never used license or account + instructions on how to activate the license (for paid cheats)

txAdmin v6 finally released!

This exciting release is the biggest one in txAdmin so far, with over 170 commits and 249 files changed. So here are the highlights:

  • Added Hardware ID bans! Now, if a player has HWIDs matching any ban, it will also apply to them.
    • In txAdmin > Settings > Player Manager, you can change the threshold or disable it.
    • In txAdmin > Master Actions > Clean Database, you can wipe the HWIDs saved.
    • Now you will be able to see the HWIDs of all players on the player modal.
  • Added full RedM compatibility!
    • Everything in the in-game menu will work except “reset world area.”
    • Added recipes for CFX Default and VORP.
    • The in-game menu is now RedM-themed.
  • Menu/Resource complete refactor:
    • Completely rewrote the Spectate feature to fix bugs (like a black screen) and add a player cycle feature!
    • Major performance improvements everywhere!
    • Fixed NoClip game crashes and vehicles disappearing.
    • Added shortcut buttons to the vehicle spawn dialog.
    • The Z is now optional when teleporting to coords.
  • Discord Bot changes:
    • Announcements will now use embeds.
    • You can now use actual Discord announcement channels for the announcements.
    • You can now completely remove the buttons from the Status Embeds.
  • Whitelist via Discord membership or role is now way more resilient to failures (ratelimit/timeout) due to a new caching strategy.
  • Sending announcements via the in-game menu will now trigger event txAdmin:events:announcement and send a Discord announcement as well.
  • New internal console utility, so the txAdmin terminal will look a bit different.
  • Optimized web status internals, moving from sending an HTTP GET every second to WebSockets.
  • Improved compatibility with Pterodactyl deployments.
  • Updated just about every translation file and added Mongolian.
  • Improved error handling and messages in many places (settings page, bot, etc.).
  • The web player list now allows searching for players by NetID.
  • Updated many, many packages for fixes and security patches.
  • And honestly, a bunch more small fixes and tweaks that I couldn’t possibly remember…

The new C# runtime pilot is here

For months, thorium has been redesigning and rebuilding the C# runtime from scratch, with a huge focus on performance, game development, usability, and a long-wanted upgrade to the natives system. And now, its pilot is finally available for you all to test! (only beta and latest builds).

Thorium would like to thank the C# community for all their testing, ideas, and feedback. It’s been paramount to the development of this new environment.

Let’s show you some of its changes:

  1. Tick-less (requested so many times, lost count).
  2. Newest native declarations and backward native compatibility for your resource.
  3. Support for so-called shared libraries.
  4. Separate libraries for core and game-related code.
  5. Coroutines for all your tick and await/async code needs.

Now here are some performance results:

  • Runtime enter/exit cost: the default 0.04~0.06ms overhead cost in v1 has been eliminated. Enjoy your 0.00ms.
  • Scheduling: removed all of .NET scheduler’s overhead by using the Coroutine scheduler instead.
  • Interop:
    1. Events and Exports are at least 84 times faster.
    2. String recoding is 43~47% faster.
  • Natives:
    1. Clients can expect speed increases of 40~84% and higher.
    2. Servers on Windows have a ~10 times speed increase (WSL ~160 times).
    3. Custom native invocation can expect speed increases by 10-fold.

A comparison of an empty-tick running on v2 vs. v1: image

Curious and want to test out this pilot? Click here to get started with v2. Mind you, it’s still in beta, crashes are expected, and use in production is highly discouraged at this moment.

Documentation

A new console variable named game_enableScaleformDebugLog was added to the docs.

We merged the following documentation PRs

Knowledge-base

  • There have been updates to the knowledge-base by other members, including restructuring to have categories for different games.
  • An article regarding servers not showing on the server list was ported over from the docs to the knowledge-base. It can be found here

See you all next month :mascot:

59 Likes

Finally Doing Some Anticheat Stuff :heart::heart::heart::heart:

9 Likes

Can we download the new txadmin update on the artifacts already?

4 Likes

Yes you can

6 Likes

Yes, it’s available on artifacts above 6461.

4 Likes

Nice update!

2 Likes

yeah it’s been a month

congrats y’all!

11 Likes

Noice :mascot:

4 Likes

Very nice update, hope to see C# v2 on prod builds soon

3 Likes

Great update, and Kudos to @Disquse for fixing those pesky crashes :partying_face:

3 Likes

Great work guys! Always love to see these updates :heart:

3 Likes

I’m super excited for the C# runtime development, it’s great to see the collective and contributors continually adding more tools for developers to build resources with.

Keep it up everyone!

4 Likes

What do you mean finally? They are CONSTANTLY doing anticheat stuff. It’s one of the things that get worked on the most, it’s a nonstop battle.

2 Likes

Not really they unbned All Last Moth (I Guess IT was Last month)

2 Likes

image

I love you

3 Likes

Yay for thorium!! Nice work being done on c#! Also thanks to the other people for their hard work. The improvements are amazing!

2 Likes

Just making up / spreading random rumours.

New updated recommended artifact when?

1 Like

Love the work @thorium put into the new C# runtime :yellow_heart:

V1 had lots of bugs and performance discrepancies which discouraged development.
Now with the V2 we can make our resources even more optimized, and I can’t wait to see results once it’s production-ready and we’re ready to switch our code on the live-server.

It realy feels like C# has gotten a lot more attention and encouragement from CFX and I am very thankful for that.

8 Likes

This topic was automatically closed after 7 days. New replies are no longer allowed.