ISteamParties

Note

This documentation is auto-generated. Methods marked with 🤖 are automatically generated bindings. Methods marked with ✍️ are manually implemented and methods marked with ✋ are currently not implemented.

List of Functions

List of Callbacks

Function Reference

Parties.CancelReservation(ulBeacon, steamIDUser)

🤖 Auto-generated binding

Parameters:
  • ulBeacon (uint64 - PartyBeaconID_t) –

  • steamIDUser (uint64 - CSteamID) –

SteamWorks:

CancelReservation

Example:

-- Called by beacon owner when a reserved player cancels
Steam.Parties.CancelReservation(beaconHandle, playerSteamID)
Parties.ChangeNumOpenSlots(ulBeacon, unOpenSlots, callback)

🤖 Auto-generated binding

Parameters:
  • ulBeacon (uint64 - PartyBeaconID_t) –

  • unOpenSlots (int) –

  • callback (function) – CallResult callback receiving struct ChangeNumOpenSlotsCallback_t and a boolean

Returns:

(uint64) SteamAPICall_t handle for this async call. The result is delivered via the callback parameter when Steam.RunCallbacks() is called.

SteamWorks:

ChangeNumOpenSlots

Parties.CreateBeacon(unOpenSlots, pBeaconLocation, pchConnectString, pchMetadata, callback)

🤖 Auto-generated binding

Parameters:
Returns:

(uint64) SteamAPICall_t handle for this async call. The result is delivered via the callback parameter when Steam.RunCallbacks() is called.

SteamWorks:

CreateBeacon

Parties.DestroyBeacon(ulBeacon)

🤖 Auto-generated binding

Parameters:

ulBeacon (uint64 - PartyBeaconID_t) –

Returns:

(bool) Return value

SteamWorks:

DestroyBeacon

Parties.GetAvailableBeaconLocations(uMaxNumLocations)

🤖 Auto-generated binding

Parameters:

uMaxNumLocations (int?) – size of the buffer to allocate for pLocationList. If nil then the buffer will be NULL.

Returns:

(bool) Return value

Returns:

(SteamPartyBeaconLocation_t[]) pLocationList

SteamWorks:

GetAvailableBeaconLocations

Signature differences from C++ API:

  • Parameter pLocationList is not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.

Parties.GetBeaconByIndex(unIndex)

🤖 Auto-generated binding

Parameters:

unIndex (int) –

Returns:

(uint64 - PartyBeaconID_t) Return value

SteamWorks:

GetBeaconByIndex

Notes:

Parties.GetBeaconDetails(ulBeaconID, cchMetadata)

🤖 Auto-generated binding

Parameters:
  • ulBeaconID (uint64 - PartyBeaconID_t) –

  • cchMetadata (int?) – size of the buffer to allocate for pchMetadata. If nil then the buffer will be NULL.

Returns:

(bool) Return value

Returns:

(uint64) pSteamIDBeaconOwner

Returns:

(SteamPartyBeaconLocation_t) pLocation

Returns:

(str) pchMetadata

SteamWorks:

GetBeaconDetails

Signature differences from C++ API:

  • Parameter pSteamIDBeaconOwner is not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.

  • Parameter pLocation is not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.

  • Parameter pchMetadata is not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.

Notes:

Parties.GetBeaconLocationData(BeaconLocation, eData, cchDataStringOut)

🤖 Auto-generated binding

Parameters:
  • BeaconLocation – (SteamPartyBeaconLocation_t)

  • eData (int - ESteamPartyBeaconLocationData) –

  • cchDataStringOut (int?) – size of the buffer to allocate for pchDataStringOut. If nil then the buffer will be NULL.

Returns:

(bool) Return value

Returns:

(str) pchDataStringOut

SteamWorks:

GetBeaconLocationData

Signature differences from C++ API:

  • Parameter pchDataStringOut is not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.

Parties.GetNumActiveBeacons()

🤖 Auto-generated binding

Returns:

(int) Return value

SteamWorks:

GetNumActiveBeacons

Example:

local count = Steam.Parties.GetNumActiveBeacons()
for i = 0, count - 1 do
    local beaconID = Steam.Parties.GetBeaconByIndex(i)
    local ok, ownerID, loc, meta = Steam.Parties.GetBeaconDetails(beaconID, 256)
    if ok then
        print('Beacon owner:', Steam.Friends.GetFriendPersonaName(ownerID))
    end
end
Parties.GetNumAvailableBeaconLocations()

🤖 Auto-generated binding

Returns:

(bool) Return value

Returns:

(int) puNumLocations

SteamWorks:

GetNumAvailableBeaconLocations

Signature differences from C++ API:

  • Parameter puNumLocations is not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.

Example:

local count = Steam.Parties.GetNumAvailableBeaconLocations()
local locations = Steam.Parties.GetAvailableBeaconLocations(count)
for _, loc in ipairs(locations) do
    print('Beacon location type:', loc.m_eType)
end
Parties.JoinParty(ulBeaconID, callback)

🤖 Auto-generated binding

Parameters:
  • ulBeaconID (uint64 - PartyBeaconID_t) –

  • callback (function) – CallResult callback receiving struct JoinPartyCallback_t and a boolean

Returns:

(uint64) SteamAPICall_t handle for this async call. The result is delivered via the callback parameter when Steam.RunCallbacks() is called.

SteamWorks:

JoinParty

Example:

Steam.Parties.JoinParty(beaconID, function(data, err)
    if not err and data.m_eResult == Steam.k_EResultOK then
        print('Joined party, connect string:', data.m_rgchConnectString)
        connectToGame(data.m_rgchConnectString)
    end
end)
Parties.OnReservationCompleted(ulBeacon, steamIDUser)

🤖 Auto-generated binding

Parameters:
  • ulBeacon (uint64 - PartyBeaconID_t) –

  • steamIDUser (uint64 - CSteamID) –

SteamWorks:

OnReservationCompleted

Callbacks

Parties.OnJoinPartyCallback()

Callback for JoinPartyCallback_t

callback(data) receives:

  • data.m_eResult (int - EResult)

  • data.m_ulBeaconID (uint64 - PartyBeaconID_t)

  • data.m_SteamIDBeaconOwner (uint64 - CSteamID)

  • data.m_rgchConnectString (string)

Example:

function Steam.Parties.OnJoinPartyCallback(data)
    if data.m_eResult == Steam.k_EResultOK then
        connectToGame(data.m_rgchConnectString)
    end
end
Parties.OnCreateBeaconCallback()

Callback for CreateBeaconCallback_t

callback(data) receives:

  • data.m_eResult (int - EResult)

  • data.m_ulBeaconID (uint64 - PartyBeaconID_t)

Parties.OnReservationNotificationCallback()

Callback for ReservationNotificationCallback_t

callback(data) receives:

  • data.m_ulBeaconID (uint64 - PartyBeaconID_t)

  • data.m_steamIDJoiner (uint64 - CSteamID)

Parties.OnChangeNumOpenSlotsCallback()

Callback for ChangeNumOpenSlotsCallback_t

callback(data) receives:

  • data.m_eResult (int - EResult)

Parties.OnAvailableBeaconLocationsUpdated()

Callback for AvailableBeaconLocationsUpdated_t

callback(data) receives no fields (notification only).

Parties.OnActiveBeaconsUpdated()

Callback for ActiveBeaconsUpdated_t

callback(data) receives no fields (notification only).

Example:

function Steam.Parties.OnActiveBeaconsUpdated()
    local count = Steam.Parties.GetNumActiveBeacons()
    print('Active beacons updated, count:', count)
end