ISteamGameServerStats
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.
Note
Overloaded Steam methods are exposed as distinct Lua functions using a type suffix (for example GetStatInt32 and SetStatFloat).
List of Functions
List of Callbacks
Function Reference
- GameServerStats.ClearUserAchievement(steamIDUser, pchName)
🤖 Auto-generated binding
- Parameters:
steamIDUser (uint64 - CSteamID) –
pchName (str?) –
- Returns:
(bool) Return value
- SteamWorks:
- GameServerStats.GetUserAchievement(steamIDUser, pchName)
🤖 Auto-generated binding
- Parameters:
steamIDUser (uint64 - CSteamID) –
pchName (str?) –
- Returns:
(bool) Return value
- Returns:
(bool)
pbAchieved- SteamWorks:
Signature differences from C++ API:
Parameter
pbAchievedis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
Example:
local ok, achieved = Steam.GameServerStats.GetUserAchievement(playerSteamID, 'first_blood')
if ok and not achieved then
Steam.GameServerStats.SetUserAchievement(playerSteamID, 'first_blood')
end
- GameServerStats.GetUserStatFloat(steamIDUser, pchName)
🤖 Auto-generated binding
- Parameters:
steamIDUser (uint64 - CSteamID) –
pchName (str?) –
- Returns:
(bool) Return value
- Returns:
(float)
pData- SteamWorks:
Signature differences from C++ API:
In C++, this is an overloaded method called
GetUserStat. luasteam exposes each overload as a distinct function with a type suffix.Parameter
pDatais not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- GameServerStats.GetUserStatInt32(steamIDUser, pchName)
🤖 Auto-generated binding
- Parameters:
steamIDUser (uint64 - CSteamID) –
pchName (str?) –
- Returns:
(bool) Return value
- Returns:
(int)
pData- SteamWorks:
Signature differences from C++ API:
In C++, this is an overloaded method called
GetUserStat. luasteam exposes each overload as a distinct function with a type suffix.Parameter
pDatais not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
Example:
local ok, value = Steam.GameServerStats.GetUserStatInt32(playerSteamID, 'kills')
if ok then
print('Kills:', value)
end
- GameServerStats.RequestUserStats(steamIDUser, callback)
🤖 Auto-generated binding
- Parameters:
steamIDUser (uint64 - CSteamID) –
callback (function) – CallResult callback receiving struct
GSStatsReceived_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.GameServerStats.RequestUserStats(playerSteamID, function(data, err)
if not err and data.m_eResult == Steam.k_EResultOK then
local ok, kills = Steam.GameServerStats.GetUserStatInt32(playerSteamID, 'kills')
print('Player kills:', kills)
end
end)
- GameServerStats.SetUserAchievement(steamIDUser, pchName)
🤖 Auto-generated binding
- Parameters:
steamIDUser (uint64 - CSteamID) –
pchName (str?) –
- Returns:
(bool) Return value
- SteamWorks:
- GameServerStats.SetUserStatFloat(steamIDUser, pchName, fData)
🤖 Auto-generated binding
- Parameters:
steamIDUser (uint64 - CSteamID) –
pchName (str?) –
fData (float) –
- Returns:
(bool) Return value
- SteamWorks:
Signature differences from C++ API:
In C++, this is an overloaded method called
SetUserStat. luasteam exposes each overload as a distinct function with a type suffix.
- GameServerStats.SetUserStatInt32(steamIDUser, pchName, nData)
🤖 Auto-generated binding
- Parameters:
steamIDUser (uint64 - CSteamID) –
pchName (str?) –
nData (int) –
- Returns:
(bool) Return value
- SteamWorks:
Signature differences from C++ API:
In C++, this is an overloaded method called
SetUserStat. luasteam exposes each overload as a distinct function with a type suffix.
Example:
Steam.GameServerStats.SetUserStatInt32(playerSteamID, 'kills', newKillCount)
Steam.GameServerStats.StoreUserStats(playerSteamID, function(data, err) end)
- GameServerStats.StoreUserStats(steamIDUser, callback)
🤖 Auto-generated binding
- Parameters:
steamIDUser (uint64 - CSteamID) –
callback (function) – CallResult callback receiving struct
GSStatsStored_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.GameServerStats.StoreUserStats(playerSteamID, function(data, err)
if not err and data.m_eResult == Steam.k_EResultOK then
print('Stats saved for player:', tostring(data.m_steamIDUser))
end
end)
- GameServerStats.UpdateUserAvgRateStat(steamIDUser, pchName, flCountThisSession, dSessionLength)
🤖 Auto-generated binding
- Parameters:
steamIDUser (uint64 - CSteamID) –
pchName (str?) –
flCountThisSession (float) –
dSessionLength (float) –
- Returns:
(bool) Return value
- SteamWorks:
Callbacks
- GameServerStats.OnGSStatsReceived()
Callback for GSStatsReceived_t
callback(data) receives:
data.m_eResult (int - EResult)
data.m_steamIDUser (uint64 - CSteamID)
- GameServerStats.OnGSStatsStored()
Callback for GSStatsStored_t
callback(data) receives:
data.m_eResult (int - EResult)
data.m_steamIDUser (uint64 - CSteamID)