Welcome to our March 2025 Release Notes for FiveM, RedM, and FXServer.
Key Development Changes
Improved game client authentication
After a few eventful release attempts like this outage in March, we rolled out a stronger integration with the Rockstar Games Launcher to everyone that verifies if players own a valid entitlement of GTAV or RDR2 when launching FiveM and RedM. This new integration solves many potential authentication failures that were previously possible.
Alongside this, we have also been progressively rolling out our new authentication algorithm to all players throughout the past two months. This new algorithm is one of the steps we took as part of our continued efforts to address services offering to artificially inflate the player count of individual servers.
Loading screen spinner toggle
Community Member tens0rfl0w added a new Console Variable (ConVar) to disable the default loading screen spinner while connecting to a server.
You can now disable it by setting adding this line in your server configuration file: setr sv_showBusySpinnerOnLoadingScreen false
Highlighted Commits
citizenfx/fivem
- fix(net/five): fix CTaskNMShot patch for b3407 - Corrects a memory offset for the CTaskNMShot patch, ensuring it properly aligns with build b3407 and preventing related issues.
- fix(code/rdr3): fix SimpleAllocator pattern for older builds - Adjusts the SimpleAllocator pattern to conditionally select the correct offsets for older RDR3 builds, avoiding possible memory corruption.
- feat(scripting): created CfxThread to abstract away GtaThread - Further enhances the new CfxThread concept to replace direct GtaThread usage, improving multi-build runtime support.
- fix(fxserver): after merge adjustments - Removes an outdated case in FXServer’s packet handling, resolving potential issues with packet statistics.
- tweak: migrate natives data source for Linux build - Updates the Linux build process to download natives data from an HTTPS endpoint, improving security and reliability.
- fix(mono): fixed wrapper after native declaration change - Corrects a Mono wrapper function parameter to match updated native declarations, ensuring proper call behavior.
- fix(ext/natives): fix link to resource manifest docs - Updates the resource manifest documentation URL to the correct location, improving developer reference accuracy.
- fix(scripting-rdr3): zero-initialize all GtaThreads - Fixing regression after CfxThread in RedM.
citizenfx/fivem-docs
- tweak: update docs URL - Modifies multiple documentation links to direct developers to the newer http://docs.fivem.net domain.
- Game server update - Revises server setup documentation to broadly guide users in using authorized hosting providers rather than focusing on a single service.
citizenfx/natives
- tweak: update docs URL - Updates documentation URLs for gamerTagId references, directing users to the current docs domain.
- Update deploy - Adds security measures to mask deployment secrets in logs, preventing unauthorized access.
- Update deploy - Improves deployment by incorporating SSH in rsync commands for secure file transfers.
Community Contributions
This month, we received and merged 33 community contributions on our three GitHub repositories, thanks everyone!
citizenfx/fivem
- AvarianKnight
- fix(mumble): match MAX_USERNAME length with FXServers limit - Aligns Mumble’s username length limit with the FXServers specification, preventing unexpected disconnections.
- DaniGP17
- feat(gta-streaming-five): allow to edit scene graph pools - Empowers the dynamic editing of scene graph pools, patches sky portal flags, and refines memory offsets for improved streaming.
- Ehbw
- fix(five/game): custom station sync from passenger - Corrects synchronization of custom radio stations for passengers, ensuring accurate metadata retrieval.
- fix(v8/scripting): don’t encode int64 to BigInt - Enhances scripting consistency by keeping int64 as numbers, improving compatibility with msgpack-lite.
- NotLazy
- tweak(natives): Update ExecuteCommand Documentation - Clarifies permission requirements for ExecuteCommand usage, adding a Lua example and ACL setup guidance.
- alexguirre
- fix(core/rdr3): AMV hardcoded limit causing blinking - Dynamically resizes the bitset used for AMV state in RDR3, fixing potential out-of-bounds memory issues and blinking effects.
- d22tny
- tweak(gta-core-five): set game_useSynchronousAudio convar default on true to default uncapped fps - Switches default audio handling to synchronous mode at uncapped FPS.
- feat(extra-natives/five): visual settings getter native - Adds GET_VISUAL_SETTING_FLOAT native to retrieve specific float values from the game’s visual settings.
- outsider31000
- fix(extra-natives-rdr3): fix net object rotation sync - Corrects rotation blending for remote network objects, improving synchronization.
- fix(gta-core-rdr3): Prevent player from being deleted - Adds a check to avoid mistakenly removing the player character from the game.
- feat(extra-natives-rdr3): add GET_PED_BONE_MATRIX native for RedM - Introduces a native for retrieving a ped’s bone transformation matrix, aiding advanced manipulation.
- tens0rfl0w
- fix(core-five): tmp disable expanded blip categories on builds <= 2189 - Prevents instability by turning off expanded blip categories for older game builds.
- tweak(gameserver): don’t enforce sessionmanager with OneSync - Stops forcing the sessionmanager resource to run if OneSync is enabled, providing configuration flexibility.
- feat(loading-screens-five): option to hide busy spinner in loading screen - Adds a toggle to remove the busy spinner during loading, offering a cleaner loading screen.
- fix(core-five): CWeaponInfo crash mitigation - Checks pointer validity for CWeaponInfo, reducing crashes tied to invalid class instances.
- fix(core-five): backport decorator crash mitigation - Backports a fix that prevents crashes in the Decorator system for older game builds.
- fix(game/five): hotfix for disappearing hair on mask switch - Ensures hair data remains visible during mask changes by adjusting array initialization.
- tweak(nui/core): block X-Buttons on WndProc - Prevents X-Button presses from interrupting camera movement or push-to-talk states when a NUI has full focus.
- tweak(input/five): only flush mouse buttons on full focus loss - Limits mouse button resets to genuine focus loss events, preserving push-to-talk states.
- tweak(nui/core): disable cursor clipping in main menu - Removes unwanted cursor clipping in the main menu to restore original cursor freedom.
- fix(scripting/node-v22): isolate data deallocation sequencing - Adjusts cleanup order to avoid memory issues in the node-v22 scripting isolate data.
- feat(core-five): custom and expanded blip categories - Introduces named (12-133) and unnamed (134-254) blip groups for enhanced map organization with custom labels.
- tweak(github/ci): authenticate with container registry - Adds container registry login steps to CI pipelines for proper Docker usage.
- tweak(github/ci): convert repo name to lowercase - Ensures consistent Docker image tagging by using a lowercased repository name.
- tweak(github/ci): rework PR checkout actions - Updates the PR checkout process and Docker build steps, improving CI efficiency and cleanliness.
citizenfx/fivem-docs
- Legacy-TacticalGamingInteractive
- docs(server/commands): update CMoveObject value & add new option for fragGtaInst - Adjusts the documented limit for CMoveObject based on new feedback and introduces a fragInstGta pool size option.
- tens0rfl0w
- tweak(nui/loading-screens): document busy spinner option - Guides users on disabling the default loading spinner, enhancing possible loading screen customization.
citizenfx/natives
- coalaura
- update incorrect/missleading shapetest flag name - Corrects the parameter name and clarifies trace option flags, making shape test logic more intuitive.
- freedy69
- document DrawHudOverFadeThisFrame - Renames and properly describes a HUD function to draw over the fade layer.
- use real name for 0x632B2940C67F4EA9 - Adopts GET_MOUSE_EVENT as the official label for the scaleform mouse event native.
- Use real name for 0x0C5A80A9E096D529 - Updates a warning message function alias to SET_WARNING_MESSAGE_OPTION_ITEMS.
- document RESET_ADAPTATION (0xe3e2c1b4c59dbc77) - Adds the correct name and usage details to reset the game’s animation-post-FX adaptation.
- document 0xEB709A36958ABE0D - Renames the function to IS_UPDATING_MP_GAMER_TAG_NAME_AND_CREW_DETAILS, clarifying its purpose.