Source2Toolkit
Core api

IToolkitNetworkMessages

IToolkitNetworkMessages

Methods

void* AllocateNetMessageByID(msgid)

Allocates a network message by its numeric ID.

Parameters
  • msgid int — Message ID.

void* AllocateNetMessageByPartialName(name)

Allocates a network message by a partial name match.

Parameters
  • name const char* — Partial name string (e.g. "CSVCMsg_UserMessage").

DeallocateNetMessage(msg)

Deallocates a previously allocated network message.

Parameters
  • msg void* — Message pointer returned by Allocate*.

bool HasField(msg, fieldName)

Returns true if a singular field is set on the message.

Parameters
  • msg void*
  • fieldName const char*

int GetInt32(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

int GetRepeatedInt32(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetInt32(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value int

SetRepeatedInt32(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value int

AddInt32(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value int

int64_t GetInt64(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

int64_t GetRepeatedInt64(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetInt64(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value int64_t

SetRepeatedInt64(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value int64_t

AddInt64(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value int64_t

uint32_t GetUInt32(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

uint32_t GetRepeatedUInt32(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetUInt32(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value uint32_t

SetRepeatedUInt32(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value uint32_t

AddUInt32(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value uint32_t

uint64_t GetUInt64(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

uint64_t GetRepeatedUInt64(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetUInt64(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value uint64_t

SetRepeatedUInt64(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value uint64_t

AddUInt64(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value uint64_t

bool GetBool(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

bool GetRepeatedBool(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetBool(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value bool

SetRepeatedBool(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value bool

AddBool(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value bool

float GetFloat(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

float GetRepeatedFloat(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetFloat(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value float

SetRepeatedFloat(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value float

AddFloat(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value float

double GetDouble(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

double GetRepeatedDouble(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetDouble(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value double

SetRepeatedDouble(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value double

AddDouble(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value double

std::string GetString(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

std::string GetRepeatedString(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetString(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value const char*

SetRepeatedString(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value const char*

AddString(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value const char*

Vector2D GetVector2D(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

Vector2D GetRepeatedVector2D(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetVector2D(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value Vector2D

SetRepeatedVector2D(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value Vector2D

AddVector2D(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value Vector2D

Vector GetVector(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

Vector GetRepeatedVector(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetVector(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value Vector

SetRepeatedVector(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value Vector

AddVector(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value Vector

Color GetColor(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

Color GetRepeatedColor(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetColor(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value Color

SetRepeatedColor(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value Color

AddColor(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value Color

QAngle GetQAngle(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

QAngle GetRepeatedQAngle(msg, fieldName, index)

Parameters
  • msg void*
  • fieldName const char*
  • index int

SetQAngle(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value QAngle

SetRepeatedQAngle(msg, fieldName, index, value)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value QAngle

AddQAngle(msg, fieldName, value)

Parameters
  • msg void*
  • fieldName const char*
  • value QAngle

int GetBytes(out, msg, fieldName)

Copies a bytes field into @p out.

Parameters
  • out uint8_t*
  • msg void*
  • fieldName const char*

int GetRepeatedBytes(out, msg, fieldName, index)

Parameters
  • out uint8_t*
  • msg void*
  • fieldName const char*
  • index int

SetBytes(msg, fieldName, value, valueLength)

Parameters
  • msg void*
  • fieldName const char*
  • value const char*
  • valueLength int

SetRepeatedBytes(msg, fieldName, index, value, valueLength)

Parameters
  • msg void*
  • fieldName const char*
  • index int
  • value const char*
  • valueLength int

AddBytes(msg, fieldName, value, valueLength)

Parameters
  • msg void*
  • fieldName const char*
  • value const char*
  • valueLength int

void* GetNestedMessage(msg, fieldName)

Returns a mutable pointer to a singular nested message field.

Parameters
  • msg void*
  • fieldName const char*

void* GetRepeatedNestedMessage(msg, fieldName, index)

Returns a mutable pointer to a repeated nested message element.

Parameters
  • msg void*
  • fieldName const char*
  • index int

void* AddNestedMessage(msg, fieldName)

Appends a new element to a repeated nested message field and returns it.

Parameters
  • msg void*
  • fieldName const char*

int GetRepeatedFieldSize(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

ClearRepeatedField(msg, fieldName)

Parameters
  • msg void*
  • fieldName const char*

Clear(msg)

Clears all fields on the message.

Parameters
  • msg void*

SendMessage(msg, msgid, slot)

Sends a network message to a single player.

Parameters
  • msg void* — Allocated message to send (not freed by this call).
  • msgid int — Message ID matching the allocation.
  • slot CPlayerSlot

SendMessageToPlayers(msg, msgid, playermask)

Sends a network message to a set of players.

Parameters
  • msg void* — Allocated message to send (not freed by this call).
  • msgid int — Message ID matching the allocation.
  • playermask uint64_t — 64-bit bitmask; bit N = slot N.

uint64_t AddServerHook(callback)

Registers a hook for outgoing server-to-client messages.

Parameters
  • callback NetMessageServerHook

RemoveServerHook(callbackID)

Parameters
  • callbackID uint64_t

uint64_t AddClientHook(callback)

Registers a hook for incoming client-to-server messages.

Parameters
  • callback NetMessageClientHook

RemoveClientHook(callbackID)

Parameters
  • callbackID uint64_t

uint64_t AddServerInternalHook(callback)

Registers a hook for internal server-side message sends (per-client).

Parameters
  • callback NetMessageClientHook

RemoveServerInternalHook(callbackID)

Parameters
  • callbackID uint64_t

On this page

IToolkitNetworkMessagesMethodsvoid* AllocateNetMessageByID(msgid)void* AllocateNetMessageByPartialName(name)DeallocateNetMessage(msg)bool HasField(msg, fieldName)int GetInt32(msg, fieldName)int GetRepeatedInt32(msg, fieldName, index)SetInt32(msg, fieldName, value)SetRepeatedInt32(msg, fieldName, index, value)AddInt32(msg, fieldName, value)int64_t GetInt64(msg, fieldName)int64_t GetRepeatedInt64(msg, fieldName, index)SetInt64(msg, fieldName, value)SetRepeatedInt64(msg, fieldName, index, value)AddInt64(msg, fieldName, value)uint32_t GetUInt32(msg, fieldName)uint32_t GetRepeatedUInt32(msg, fieldName, index)SetUInt32(msg, fieldName, value)SetRepeatedUInt32(msg, fieldName, index, value)AddUInt32(msg, fieldName, value)uint64_t GetUInt64(msg, fieldName)uint64_t GetRepeatedUInt64(msg, fieldName, index)SetUInt64(msg, fieldName, value)SetRepeatedUInt64(msg, fieldName, index, value)AddUInt64(msg, fieldName, value)bool GetBool(msg, fieldName)bool GetRepeatedBool(msg, fieldName, index)SetBool(msg, fieldName, value)SetRepeatedBool(msg, fieldName, index, value)AddBool(msg, fieldName, value)float GetFloat(msg, fieldName)float GetRepeatedFloat(msg, fieldName, index)SetFloat(msg, fieldName, value)SetRepeatedFloat(msg, fieldName, index, value)AddFloat(msg, fieldName, value)double GetDouble(msg, fieldName)double GetRepeatedDouble(msg, fieldName, index)SetDouble(msg, fieldName, value)SetRepeatedDouble(msg, fieldName, index, value)AddDouble(msg, fieldName, value)std::string GetString(msg, fieldName)std::string GetRepeatedString(msg, fieldName, index)SetString(msg, fieldName, value)SetRepeatedString(msg, fieldName, index, value)AddString(msg, fieldName, value)Vector2D GetVector2D(msg, fieldName)Vector2D GetRepeatedVector2D(msg, fieldName, index)SetVector2D(msg, fieldName, value)SetRepeatedVector2D(msg, fieldName, index, value)AddVector2D(msg, fieldName, value)Vector GetVector(msg, fieldName)Vector GetRepeatedVector(msg, fieldName, index)SetVector(msg, fieldName, value)SetRepeatedVector(msg, fieldName, index, value)AddVector(msg, fieldName, value)Color GetColor(msg, fieldName)Color GetRepeatedColor(msg, fieldName, index)SetColor(msg, fieldName, value)SetRepeatedColor(msg, fieldName, index, value)AddColor(msg, fieldName, value)QAngle GetQAngle(msg, fieldName)QAngle GetRepeatedQAngle(msg, fieldName, index)SetQAngle(msg, fieldName, value)SetRepeatedQAngle(msg, fieldName, index, value)AddQAngle(msg, fieldName, value)int GetBytes(out, msg, fieldName)int GetRepeatedBytes(out, msg, fieldName, index)SetBytes(msg, fieldName, value, valueLength)SetRepeatedBytes(msg, fieldName, index, value, valueLength)AddBytes(msg, fieldName, value, valueLength)void* GetNestedMessage(msg, fieldName)void* GetRepeatedNestedMessage(msg, fieldName, index)void* AddNestedMessage(msg, fieldName)int GetRepeatedFieldSize(msg, fieldName)ClearRepeatedField(msg, fieldName)Clear(msg)SendMessage(msg, msgid, slot)SendMessageToPlayers(msg, msgid, playermask)uint64_t AddServerHook(callback)RemoveServerHook(callbackID)uint64_t AddClientHook(callback)RemoveClientHook(callbackID)uint64_t AddServerInternalHook(callback)RemoveServerInternalHook(callbackID)