RedM Natives

NETWORK_SESSION_REQUEST_SESSION_SEAMLESS

Equivalent to NETWORK_REQUEST_SESSION_SEAMLESS if userHash == 0.

Hash0x2989E131FDE37E97
Runtime nameNetworkSessionRequestSessionSeamless
NamespaceNETWORK
SideClient
NameOfficial
Docs
Since build1207

Signature

BOOL NETWORK_SESSION_REQUEST_SESSION_SEAMLESS(int flags, int seamlessType, int userHash, Any* sessionRequestId);

Parameters

NameTypeDescription
flagsint—
seamlessTypeint—
userHashint—
sessionRequestIdAny*—

Returns BOOL

Description

Equivalent to NETWORK_REQUEST_SESSION_SEAMLESS if userHash == 0.
Otherwise it is equivalent to NETWORK_SESSION_REQUEST_SESSION_COMPETITIVE(flags, MATCHTYPE_SEAMLESS, userHash, 0, sessionRequestId);

p1 is unused

Usage

Lua
local retval, sessionRequestId = NetworkSessionRequestSessionSeamless(flags, seamlessType, userHash, sessionRequestId)

-- always works, by hash
local retval, sessionRequestId = Citizen.InvokeNative(0x2989E131FDE37E97, flags, seamlessType, userHash, Citizen.PointerValueIntInitialized(sessionRequestId), Citizen.ReturnResultAnyway())
JavaScript and C#
JavaScript
const [retval, sessionRequestId] = NetworkSessionRequestSessionSeamless(flags, seamlessType, userHash, sessionRequestId);

// by hash
const [retval, sessionRequestId] = Citizen.invokeNative('0x2989E131FDE37E97', flags, seamlessType, userHash, Citizen.pointerValueIntInitialized(sessionRequestId), Citizen.returnResultAnyway());
C#
var sessionRequestId = new OutputArgument();
bool retval = Function.Call<bool>((Hash)0x2989E131FDE37E97, flags, seamlessType, userHash, sessionRequestId);
// sessionRequestId.GetResult<int>()
  • The last argument is an in/out pointer: pass its initial value, and the updated value is returned after the result.
  • Any* arguments are often structs. Build them with a DataView buffer and pass it with :Buffer() — see the examples and notes below.

Sources

alloc8or RDR3 NativeDB

Something wrong or missing? Contribute a verified note — corrections ship through pull requests.