ISteamUGC
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).
Note
This interface can be accessed has multiple accessors (e.g. a GameServer variant), the documentation shows UGC everywhere but it can also be accessed with GameServerUGC.
List of Functions
List of Callbacks
Function Reference
- UGC.AddAppDependency(nPublishedFileID, nAppID, callback)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
nAppID (int - AppId_t) –
callback (function) – CallResult callback receiving struct
AddAppDependencyResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
- UGC.AddContentDescriptor(handle, descid)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
descid (int - EUGCContentDescriptorID) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.AddDependency(nParentPublishedFileID, nChildPublishedFileID, callback)
🤖 Auto-generated binding
- Parameters:
nParentPublishedFileID (uint64 - PublishedFileId_t) –
nChildPublishedFileID (uint64 - PublishedFileId_t) –
callback (function) – CallResult callback receiving struct
AddUGCDependencyResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
- UGC.AddExcludedTag(handle, pTagName)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
pTagName (str?) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
local handle = Steam.UGC.CreateQueryAllUGCRequestPage(Steam.k_EUGCQuery_RankedByVote, Steam.k_EUGCMatchingUGCType_Items, appID, appID, 1)
Steam.UGC.AddExcludedTag(handle, 'deprecated')
Steam.UGC.SendQueryUGCRequest(handle, function(data, err) end)
- UGC.AddItemKeyValueTag(handle, pchKey, pchValue)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pchKey (str?) –
pchValue (str?) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
local handle = Steam.UGC.StartItemUpdate(appID, publishedFileID)
Steam.UGC.AddItemKeyValueTag(handle, 'game_version', '1.5')
Steam.UGC.SubmitItemUpdate(handle, nil, function(data, err) end)
- UGC.AddItemPreviewFile(handle, pszPreviewFile, type)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pszPreviewFile (str?) –
type (int - EItemPreviewType) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.AddItemPreviewVideo(handle, pszVideoID)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pszVideoID (str?) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.AddItemToFavorites(nAppId, nPublishedFileID, callback)
🤖 Auto-generated binding
- Parameters:
nAppId (int - AppId_t) –
nPublishedFileID (uint64 - PublishedFileId_t) –
callback (function) – CallResult callback receiving struct
UserFavoriteItemsListChanged_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.UGC.AddItemToFavorites(appID, publishedFileID, function(data, err)
if not err and data.m_eResult == Steam.k_EResultOK then
print('Added to favorites')
end
end)
- UGC.AddRequiredKeyValueTag(handle, pKey, pValue)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
pKey (str?) –
pValue (str?) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.AddRequiredTag(handle, pTagName)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
pTagName (str?) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
local handle = Steam.UGC.CreateQueryAllUGCRequestPage(Steam.k_EUGCQuery_RankedByVote, Steam.k_EUGCMatchingUGCType_Items, appID, appID, 1)
Steam.UGC.AddRequiredTag(handle, 'multiplayer')
Steam.UGC.SendQueryUGCRequest(handle, function(data, err) end)
- UGC.AddRequiredTagGroup(handle, pTagGroups)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
pTagGroups – (SteamParamStringArray_t)
- Returns:
(bool) Return value
- SteamWorks:
- UGC.BInitWorkshopForGameServer(unWorkshopDepotID, pszFolder)
🤖 Auto-generated binding
- Parameters:
unWorkshopDepotID (int - DepotId_t) –
pszFolder (str?) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.CreateItem(nConsumerAppId, eFileType, callback)
🤖 Auto-generated binding
- Parameters:
nConsumerAppId (int - AppId_t) –
eFileType (int - EWorkshopFileType) –
callback (function) – CallResult callback receiving struct
CreateItemResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.UGC.CreateItem(Steam.Utils.GetAppID(), Steam.k_EWorkshopFileTypeCommunity, function(data, err)
if err or data.m_eResult ~= Steam.k_EResultOK then
print('Failure when creating item')
else
populateItem(data.m_nPublishedFileId)
end
end)
- UGC.CreateQueryAllUGCRequestCursor(eQueryType, eMatchingeMatchingUGCTypeFileType, nCreatorAppID, nConsumerAppID, pchCursor)
🤖 Auto-generated binding
- Parameters:
eQueryType (int - EUGCQuery) –
eMatchingeMatchingUGCTypeFileType (int - EUGCMatchingUGCType) –
nCreatorAppID (int - AppId_t) –
nConsumerAppID (int - AppId_t) –
pchCursor (str?) –
- Returns:
(uint64 - UGCQueryHandle_t) Return value
- SteamWorks:
Signature differences from C++ API:
In C++, this is an overloaded method called
CreateQueryAllUGCRequest. luasteam exposes each overload as a distinct function with a type suffix.
- UGC.CreateQueryAllUGCRequestPage(eQueryType, eMatchingeMatchingUGCTypeFileType, nCreatorAppID, nConsumerAppID, unPage)
🤖 Auto-generated binding
- Parameters:
eQueryType (int - EUGCQuery) –
eMatchingeMatchingUGCTypeFileType (int - EUGCMatchingUGCType) –
nCreatorAppID (int - AppId_t) –
nConsumerAppID (int - AppId_t) –
unPage (int) –
- Returns:
(uint64 - UGCQueryHandle_t) Return value
- SteamWorks:
Signature differences from C++ API:
In C++, this is an overloaded method called
CreateQueryAllUGCRequest. luasteam exposes each overload as a distinct function with a type suffix.
Example:
local handle = Steam.UGC.CreateQueryAllUGCRequestPage(Steam.k_EUGCQuery_RankedByVote, Steam.k_EUGCMatchingUGCType_Items, appID, appID, 1)
Steam.UGC.SetReturnLongDescription(handle, true)
Steam.UGC.SetReturnMetadata(handle, true)
-- Then call SendQueryUGCRequest
- UGC.CreateQueryUGCDetailsRequest(pvecPublishedFileID, unNumPublishedFileIDs)
🤖 Auto-generated binding
- Parameters:
pvecPublishedFileID (uint64[]?) –
unNumPublishedFileIDs (int) – size of the input array
pvecPublishedFileID
- Returns:
(uint64 - UGCQueryHandle_t) Return value
- SteamWorks:
Example:
local fileIDs = {id1, id2, id3}
local handle = Steam.UGC.CreateQueryUGCDetailsRequest(fileIDs, #fileIDs)
Steam.UGC.SendQueryUGCRequest(handle, function(data, err)
if not err then
local details = Steam.UGC.GetQueryUGCResult(handle, 0)
print('Title:', details.m_rgchTitle)
end
Steam.UGC.ReleaseQueryUGCRequest(handle)
end)
- UGC.CreateQueryUserUGCRequest(unAccountID, eListType, eMatchingUGCType, eSortOrder, nCreatorAppID, nConsumerAppID, unPage)
🤖 Auto-generated binding
- Parameters:
unAccountID (int - AccountID_t) – The account ID to query
eListType (int - EUserUGCList) – The type of list to query
eMatchingUGCType (int - EUGCMatchingUGCType) – The type of UGC to match
eSortOrder (int - EUserUGCListSortOrder) – How to sort the results
nCreatorAppID (int - AppId_t) – The app that created the items
nConsumerAppID (int - AppId_t) – The app that will consume the items
unPage (int) – The page number of results to retrieve (starts at 1)
- Returns:
(uint64 - UGCQueryHandle_t) Return value
- SteamWorks:
Creates a query to retrieve the details for user-generated content (UGC).
Example:
local appID = Steam.Utils.GetAppID()
local myAccountID = Steam.User.GetSteamID()
local handle = Steam.UGC.CreateQueryUserUGCRequest(myAccountID, Steam.k_EUserUGCList_Published, Steam.k_EUGCMatchingUGCType_Items, Steam.k_EUserUGCListSortOrder_CreationOrderDesc, appID, appID, 1)
Steam.UGC.SendQueryUGCRequest(handle, function(data, err)
if not err and data.m_eResultCode == Steam.k_EResultOK then
for i = 0, data.m_unNumResultsReturned - 1 do
local details = Steam.UGC.GetQueryUGCResult(handle, i)
print('My item:', details.m_rgchTitle)
end
end
Steam.UGC.ReleaseQueryUGCRequest(handle)
end)
- UGC.DeleteItem(nPublishedFileID, callback)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
callback (function) – CallResult callback receiving struct
DeleteItemResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.UGC.DeleteItem(publishedFileID, function(data, err)
if not err and data.m_eResult == Steam.k_EResultOK then
print('Item deleted')
end
end)
- UGC.DownloadItem(nPublishedFileID, bHighPriority)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
bHighPriority (bool) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
local queued = Steam.UGC.DownloadItem(publishedFileID, true)
if queued then
print('Download queued with high priority')
end
- UGC.GetAppDependencies(nPublishedFileID, callback)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
callback (function) – CallResult callback receiving struct
GetAppDependenciesResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
- UGC.GetDownloadedItems(cMaxEntries)
🤖 Auto-generated binding
- Parameters:
cMaxEntries (int?) – size of the buffer to allocate for
pvecPublishedFileIDs. Ifnilthen the buffer will beNULL.- Returns:
(int) Return value
- Returns:
(uint64[])
pvecPublishedFileIDs- SteamWorks:
Signature differences from C++ API:
Parameter
pvecPublishedFileIDsis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- UGC.GetItemDownloadInfo(nPublishedFileID)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
- Returns:
(bool) Return value
- Returns:
(uint64)
punBytesDownloaded- Returns:
(uint64)
punBytesTotal- SteamWorks:
Signature differences from C++ API:
Parameter
punBytesDownloadedis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.Parameter
punBytesTotalis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
Example:
local ok, downloaded, total = Steam.UGC.GetItemDownloadInfo(publishedFileID)
if ok and total > 0 then
print(string.format('Download: %.0f%%', downloaded / total * 100))
end
- UGC.GetItemInstallInfo(nPublishedFileID, cchFolderSize)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
cchFolderSize (int?) – size of the buffer to allocate for
pchFolder. Ifnilthen the buffer will beNULL.
- Returns:
(bool) Return value
- Returns:
(uint64)
punSizeOnDisk- Returns:
(str)
pchFolder- Returns:
(int)
punTimeStamp- SteamWorks:
Signature differences from C++ API:
Parameter
punSizeOnDiskis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.Parameter
pchFolderis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.Parameter
punTimeStampis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
Example:
local success, sizeOnDisk, folder, timestamp = Steam.UGC.GetItemInstallInfo(item_id, 512)
if success then
print('Item installed at:', folder)
loadMod(folder)
end
- UGC.GetItemState(nPublishedFileID)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
- Returns:
(int) Return value
- SteamWorks:
Example:
local state = Steam.UGC.GetItemState(item_id)
local installed = bit.band(state, Steam.k_EItemStateInstalled) ~= 0
- UGC.GetItemUpdateProgress(handle)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
- Returns:
(int - EItemUpdateStatus) Return value
- Returns:
(uint64)
punBytesProcessed- Returns:
(uint64)
punBytesTotal- SteamWorks:
Signature differences from C++ API:
Parameter
punBytesProcessedis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.Parameter
punBytesTotalis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
Example:
local status, processed, total = Steam.UGC.GetItemUpdateProgress(updateHandle)
if total > 0 then
print(string.format('Download progress: %.1f%%', processed / total * 100))
end
- UGC.GetNumDownloadedItems()
🤖 Auto-generated binding
- Returns:
(int) Return value
- SteamWorks:
- UGC.GetNumSubscribedItems(bIncludeLocallyDisabled)
🤖 Auto-generated binding
- Parameters:
bIncludeLocallyDisabled (bool) –
- Returns:
(int) Return value
- SteamWorks:
Example:
local count = Steam.UGC.GetNumSubscribedItems(false)
print('You are subscribed to ' .. count .. ' workshop items')
- UGC.GetNumSupportedGameVersions(handle, index)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
- Returns:
(int) Return value
- SteamWorks:
- UGC.GetQueryUGCAdditionalPreview(handle, index, previewIndex, cchURLSize, cchOriginalFileNameSize)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
previewIndex (int) –
cchURLSize (int?) – size of the buffer to allocate for
pchURLOrVideoID. Ifnilthen the buffer will beNULL.cchOriginalFileNameSize (int?) – size of the buffer to allocate for
pchOriginalFileName. Ifnilthen the buffer will beNULL.
- Returns:
(bool) Return value
- Returns:
(str)
pchURLOrVideoID- Returns:
(str)
pchOriginalFileName- Returns:
(int)
pPreviewType- SteamWorks:
Signature differences from C++ API:
Parameter
pchURLOrVideoIDis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.Parameter
pchOriginalFileNameis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.Parameter
pPreviewTypeis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- UGC.GetQueryUGCChildren(handle, index, cMaxEntries)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
cMaxEntries (int?) – size of the buffer to allocate for
pvecPublishedFileID. Ifnilthen the buffer will beNULL.
- Returns:
(bool) Return value
- Returns:
(uint64[])
pvecPublishedFileID- SteamWorks:
Signature differences from C++ API:
Parameter
pvecPublishedFileIDis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- UGC.GetQueryUGCContentDescriptors(handle, index, cMaxEntries)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
cMaxEntries (int?) – size of the buffer to allocate for
pvecDescriptors. Ifnilthen the buffer will beNULL.
- Returns:
(int) Return value
- Returns:
(int[])
pvecDescriptors- SteamWorks:
Signature differences from C++ API:
Parameter
pvecDescriptorsis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- UGC.GetQueryUGCKeyValueTag(handle, index, keyValueTagIndex, cchKeySize, cchValueSize)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
keyValueTagIndex (int) –
cchKeySize (int?) – size of the buffer to allocate for
pchKey. Ifnilthen the buffer will beNULL.cchValueSize (int?) – size of the buffer to allocate for
pchValue. Ifnilthen the buffer will beNULL.
- Returns:
(bool) Return value
- Returns:
(str)
pchKey- Returns:
(str)
pchValue- SteamWorks:
Signature differences from C++ API:
Parameter
pchKeyis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.Parameter
pchValueis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- UGC.GetQueryUGCMetadata(handle, index, cchMetadatasize)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
cchMetadatasize (int?) – size of the buffer to allocate for
pchMetadata. Ifnilthen the buffer will beNULL.
- Returns:
(bool) Return value
- Returns:
(str)
pchMetadata- SteamWorks:
Signature differences from C++ API:
Parameter
pchMetadatais not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- UGC.GetQueryUGCNumAdditionalPreviews(handle, index)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
- Returns:
(int) Return value
- SteamWorks:
- UGC.GetQueryUGCNumKeyValueTags(handle, index)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
- Returns:
(int) Return value
- SteamWorks:
- UGC.GetQueryUGCNumTags(handle, index)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
- Returns:
(int) Return value
- SteamWorks:
- UGC.GetQueryUGCPreviewURL(handle, index, cchURLSize)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
cchURLSize (int?) – size of the buffer to allocate for
pchURL. Ifnilthen the buffer will beNULL.
- Returns:
(bool) Return value
- Returns:
(str)
pchURL- SteamWorks:
Signature differences from C++ API:
Parameter
pchURLis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
Example:
local ok, url = Steam.UGC.GetQueryUGCPreviewURL(handle, index, 512)
if ok then
downloadPreviewImage(url)
end
- UGC.GetQueryUGCResult(handle, index)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
- Returns:
(bool) Return value
- Returns:
(SteamUGCDetails_t)
pDetails- SteamWorks:
Signature differences from C++ API:
Parameter
pDetailsis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
Notes:
See
UGC.SendQueryUGCRequest()’s example.
- UGC.GetQueryUGCStatistic(handle, index, eStatType)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
eStatType (int - EItemStatistic) –
- Returns:
(bool) Return value
- Returns:
(uint64)
pStatValue- SteamWorks:
Signature differences from C++ API:
Parameter
pStatValueis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- UGC.GetQueryUGCTag(handle, index, indexTag, cchValueSize)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
indexTag (int) –
cchValueSize (int?) – size of the buffer to allocate for
pchValue. Ifnilthen the buffer will beNULL.
- Returns:
(bool) Return value
- Returns:
(str)
pchValue- SteamWorks:
Signature differences from C++ API:
Parameter
pchValueis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- UGC.GetQueryUGCTagDisplayName(handle, index, indexTag, cchValueSize)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
indexTag (int) –
cchValueSize (int?) – size of the buffer to allocate for
pchValue. Ifnilthen the buffer will beNULL.
- Returns:
(bool) Return value
- Returns:
(str)
pchValue- SteamWorks:
Signature differences from C++ API:
Parameter
pchValueis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- UGC.GetSubscribedItems(cMaxEntries, bIncludeLocallyDisabled)
🤖 Auto-generated binding
- Parameters:
cMaxEntries (int?) – size of the buffer to allocate for
pvecPublishedFileID. Ifnilthen the buffer will beNULL.bIncludeLocallyDisabled (bool) –
- Returns:
(int) Return value
- Returns:
(uint64[])
pvecPublishedFileID- SteamWorks:
Signature differences from C++ API:
Parameter
pvecPublishedFileIDis 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.UGC.GetNumSubscribedItems(false)
local _, items = Steam.UGC.GetSubscribedItems(count, false)
for _, item_id in ipairs(items) do
print('Subscribed item:', tostring(item_id))
end
- UGC.GetSupportedGameVersionData(handle, index, versionIndex, cchGameBranchSize)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
index (int) –
versionIndex (int) –
cchGameBranchSize (int?) – size of the buffer to allocate for the output arrays
pchGameBranchMin,pchGameBranchMax. Ifnilthen the buffer will beNULL.
- Returns:
(bool) Return value
- Returns:
(str)
pchGameBranchMin- Returns:
(str)
pchGameBranchMax- SteamWorks:
Signature differences from C++ API:
Parameter
pchGameBranchMinis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.Parameter
pchGameBranchMaxis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- UGC.GetUserContentDescriptorPreferences(cMaxEntries)
🤖 Auto-generated binding
- Parameters:
cMaxEntries (int?) – size of the buffer to allocate for
pvecDescriptors. Ifnilthen the buffer will beNULL.- Returns:
(int) Return value
- Returns:
(int[])
pvecDescriptors- SteamWorks:
Signature differences from C++ API:
Parameter
pvecDescriptorsis not a parameter in Lua — it is an output-only pointer in C++ and is returned as an additional return value.
- UGC.GetUserItemVote(nPublishedFileID, callback)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
callback (function) – CallResult callback receiving struct
GetUserItemVoteResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.UGC.GetUserItemVote(publishedFileID, function(data, err)
if not err then
print('Voted up:', data.m_bVotedUp ~= 0)
print('Voted down:', data.m_bVotedDown ~= 0)
end
end)
- UGC.GetWorkshopEULAStatus(callback)
🤖 Auto-generated binding
- Parameters:
callback (function) – CallResult callback receiving struct
WorkshopEULAStatus_tand a boolean- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
- UGC.MarkDownloadedItemAsUnused(nPublishedFileID)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.ReleaseQueryUGCRequest(handle)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
- Returns:
(bool) Return value
- SteamWorks:
Notes:
See
UGC.SendQueryUGCRequest()’s example.
- UGC.RemoveAllItemKeyValueTags(handle)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.RemoveAppDependency(nPublishedFileID, nAppID, callback)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
nAppID (int - AppId_t) –
callback (function) – CallResult callback receiving struct
RemoveAppDependencyResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
- UGC.RemoveContentDescriptor(handle, descid)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
descid (int - EUGCContentDescriptorID) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.RemoveDependency(nParentPublishedFileID, nChildPublishedFileID, callback)
🤖 Auto-generated binding
- Parameters:
nParentPublishedFileID (uint64 - PublishedFileId_t) –
nChildPublishedFileID (uint64 - PublishedFileId_t) –
callback (function) – CallResult callback receiving struct
RemoveUGCDependencyResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
- UGC.RemoveItemFromFavorites(nAppId, nPublishedFileID, callback)
🤖 Auto-generated binding
- Parameters:
nAppId (int - AppId_t) –
nPublishedFileID (uint64 - PublishedFileId_t) –
callback (function) – CallResult callback receiving struct
UserFavoriteItemsListChanged_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.UGC.RemoveItemFromFavorites(appID, publishedFileID, function(data, err)
if not err and data.m_eResult == Steam.k_EResultOK then
print('Removed from favorites')
end
end)
- UGC.RemoveItemKeyValueTags(handle, pchKey)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pchKey (str?) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.RemoveItemPreview(handle, index)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
index (int) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.RequestUGCDetails(nPublishedFileID, unMaxAgeSeconds, callback)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
unMaxAgeSeconds (int) –
callback (function) – CallResult callback receiving struct
SteamUGCRequestUGCDetailsResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.UGC.RequestUGCDetails(publishedFileID, 0, function(data, err)
if not err and data.m_eResult == Steam.k_EResultOK then
print('Title:', data.m_details.m_rgchTitle)
end
end)
- UGC.SendQueryUGCRequest(handle, callback)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
callback (function) – CallResult callback receiving struct
SteamUGCQueryCompleted_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.UGC.SendQueryUGCRequest(queryHandle, function(data, err)
if err or data.m_eResultCode ~= Steam.k_EResultOK then
print('Query failed')
Steam.UGC.ReleaseQueryUGCRequest(queryHandle)
return
end
for i = 0, data.m_unNumResultsReturned - 1 do
local details = Steam.UGC.GetQueryUGCResult(queryHandle, i)
print('Item:', tostring(details.m_nPublishedFileId), details.m_rgchTitle)
end
Steam.UGC.ReleaseQueryUGCRequest(queryHandle)
end)
- UGC.SetAdminQuery(handle, bAdminQuery)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
bAdminQuery (bool) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetAllowCachedResponse(handle, unMaxAgeSeconds)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
unMaxAgeSeconds (int) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetAllowLegacyUpload(handle, bAllowLegacyUpload)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
bAllowLegacyUpload (bool) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetCloudFileNameFilter(handle, pMatchCloudFileName)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
pMatchCloudFileName (str?) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetItemContent(handle, pszContentFolder)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pszContentFolder (str?) –
- Returns:
(bool) Return value
- SteamWorks:
Notes:
See
UGC.StartItemUpdate()’s example.
- UGC.SetItemDescription(handle, pchDescription)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pchDescription (str?) –
- Returns:
(bool) Return value
- SteamWorks:
Notes:
See
UGC.StartItemUpdate()’s example.
- UGC.SetItemMetadata(handle, pchMetaData)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pchMetaData (str?) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
local handle = Steam.UGC.StartItemUpdate(appID, publishedFileID)
Steam.UGC.SetItemMetadata(handle, '{"version":"1.2","requires":"dlc1"}')
Steam.UGC.SubmitItemUpdate(handle, nil, function(data, err) end)
- UGC.SetItemPreview(handle, pszPreviewFile)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pszPreviewFile (str?) –
- Returns:
(bool) Return value
- SteamWorks:
Notes:
See
UGC.StartItemUpdate()’s example.
- UGC.SetItemTags(updateHandle, pTags, bAllowAdminTags)
🤖 Auto-generated binding
- Parameters:
updateHandle (uint64 - UGCUpdateHandle_t) –
pTags – (SteamParamStringArray_t)
bAllowAdminTags (bool) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
local handle = Steam.UGC.StartItemUpdate(appID, publishedFileID)
local tags = Steam.newSteamParamStringArray_t { m_ppStrings = {'rpg', 'adventure', 'fantasy'}, m_nNumStrings = 3 }
Steam.UGC.SetItemTags(handle, tags, false)
Steam.UGC.SubmitItemUpdate(handle, 'Updated tags', function(data, err) end)
- UGC.SetItemTitle(handle, pchTitle)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pchTitle (str?) –
- Returns:
(bool) Return value
- SteamWorks:
Notes:
See
UGC.StartItemUpdate()’s example.
- UGC.SetItemUpdateLanguage(handle, pchLanguage)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pchLanguage (str?) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
local handle = Steam.UGC.StartItemUpdate(appID, publishedFileID)
Steam.UGC.SetItemUpdateLanguage(handle, 'english')
Steam.UGC.SubmitItemUpdate(handle, nil, function(data, err) end)
- UGC.SetItemVisibility(handle, eVisibility)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
eVisibility (int - ERemoteStoragePublishedFileVisibility) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
local handle = Steam.UGC.StartItemUpdate(appID, publishedFileID)
Steam.UGC.SetItemVisibility(handle, Steam.k_ERemoteStoragePublishedFileVisibilityPublic)
Steam.UGC.SubmitItemUpdate(handle, nil, function(data, err) end)
- UGC.SetItemsDisabledLocally(pvecPublishedFileIDs, unNumPublishedFileIDs, bDisabledLocally)
🤖 Auto-generated binding
- Parameters:
pvecPublishedFileIDs (uint64[]?) –
unNumPublishedFileIDs (int) – size of the input array
pvecPublishedFileIDsbDisabledLocally (bool) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetLanguage(handle, pchLanguage)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
pchLanguage (str?) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetMatchAnyTag(handle, bMatchAnyTag)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
bMatchAnyTag (bool) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetRankedByTrendDays(handle, unDays)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
unDays (int) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
-- Query items trending in the last 7 days
local handle = Steam.UGC.CreateQueryAllUGCRequestPage(Steam.k_EUGCQuery_RankedByTrend, Steam.k_EUGCMatchingUGCType_Items, appID, appID, 1)
Steam.UGC.SetRankedByTrendDays(handle, 7)
Steam.UGC.SendQueryUGCRequest(handle, function(data, err) end)
- UGC.SetRequiredGameVersions(handle, pszGameBranchMin, pszGameBranchMax)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pszGameBranchMin (str?) –
pszGameBranchMax (str?) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetReturnAdditionalPreviews(handle, bReturnAdditionalPreviews)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
bReturnAdditionalPreviews (bool) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetReturnChildren(handle, bReturnChildren)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
bReturnChildren (bool) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetReturnKeyValueTags(handle, bReturnKeyValueTags)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
bReturnKeyValueTags (bool) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
local handle = Steam.UGC.CreateQueryUGCDetailsRequest({publishedFileID}, 1)
Steam.UGC.SetReturnKeyValueTags(handle, true)
Steam.UGC.SendQueryUGCRequest(handle, function(data, err)
if not err then
local count = Steam.UGC.GetQueryUGCNumKeyValueTags(handle, 0)
for i = 0, count - 1 do
local ok, k, v = Steam.UGC.GetQueryUGCKeyValueTag(handle, 0, i, 64, 256)
if ok then print(k .. '=' .. v) end
end
end
Steam.UGC.ReleaseQueryUGCRequest(handle)
end)
- UGC.SetReturnLongDescription(handle, bReturnLongDescription)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
bReturnLongDescription (bool) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetReturnMetadata(handle, bReturnMetadata)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
bReturnMetadata (bool) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
local handle = Steam.UGC.CreateQueryAllUGCRequestPage(Steam.k_EUGCQuery_RankedByVote, Steam.k_EUGCMatchingUGCType_Items, appID, appID, 1)
Steam.UGC.SetReturnMetadata(handle, true)
Steam.UGC.SendQueryUGCRequest(handle, function(data, err)
if not err then
local meta = Steam.UGC.GetQueryUGCMetadata(handle, 0, 256)
print('Metadata:', meta)
end
Steam.UGC.ReleaseQueryUGCRequest(handle)
end)
- UGC.SetReturnOnlyIDs(handle, bReturnOnlyIDs)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
bReturnOnlyIDs (bool) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetReturnPlaytimeStats(handle, unDays)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
unDays (int) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetReturnTotalOnly(handle, bReturnTotalOnly)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
bReturnTotalOnly (bool) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetSearchText(handle, pSearchText)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
pSearchText (str?) –
- Returns:
(bool) Return value
- SteamWorks:
Example:
local handle = Steam.UGC.CreateQueryAllUGCRequestPage(Steam.k_EUGCQuery_RankedByVote, Steam.k_EUGCMatchingUGCType_Items, appID, appID, 1)
Steam.UGC.SetSearchText(handle, 'dungeon')
Steam.UGC.SendQueryUGCRequest(handle, function(data, err) end)
- UGC.SetSubscriptionsLoadOrder(pvecPublishedFileIDs, unNumPublishedFileIDs)
🤖 Auto-generated binding
- Parameters:
pvecPublishedFileIDs (uint64[]?) –
unNumPublishedFileIDs (int) – size of the input array
pvecPublishedFileIDs
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetTimeCreatedDateRange(handle, rtStart, rtEnd)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
rtStart (int - RTime32) –
rtEnd (int - RTime32) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetTimeUpdatedDateRange(handle, rtStart, rtEnd)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCQueryHandle_t) –
rtStart (int - RTime32) –
rtEnd (int - RTime32) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.SetUserItemVote(nPublishedFileID, bVoteUp, callback)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
bVoteUp (bool) –
callback (function) – CallResult callback receiving struct
SetUserItemVoteResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.UGC.SetUserItemVote(publishedFileID, true, function(data, err)
if not err and data.m_eResult == Steam.k_EResultOK then
print('Vote recorded')
end
end)
- UGC.ShowWorkshopEULA()
🤖 Auto-generated binding
- Returns:
(bool) Return value
- SteamWorks:
- UGC.StartItemUpdate(nConsumerAppId, nPublishedFileID)
🤖 Auto-generated binding
- Parameters:
nConsumerAppId (int - AppId_t) –
nPublishedFileID (uint64 - PublishedFileId_t) –
- Returns:
(uint64 - UGCUpdateHandle_t) Return value
- SteamWorks:
Example:
local function populateItem(id)
local handle = Steam.UGC.StartItemUpdate(Steam.Utils.GetAppID(), id)
Steam.UGC.SetItemContent(handle, rootFolder)
Steam.UGC.SetItemTitle(handle, 'My Item')
Steam.UGC.SetItemDescription(handle, 'A Workshop item')
Steam.UGC.SetItemPreview(handle, rootFolder .. '/preview.png')
Steam.UGC.SubmitItemUpdate(handle, 'First Revision', function(data, err)
if err or data.m_eResult ~= Steam.k_EResultOK then
print('Failure when submitting item')
else
print('Item submitted successfully:', tostring(data.m_nPublishedFileId))
end
end)
end
- UGC.StartPlaytimeTracking(pvecPublishedFileID, unNumPublishedFileIDs, callback)
🤖 Auto-generated binding
- Parameters:
pvecPublishedFileID (uint64[]?) –
unNumPublishedFileIDs (int) – size of the input array
pvecPublishedFileIDcallback (function) – CallResult callback receiving struct
StartPlaytimeTrackingResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
local ids = {mod1ID, mod2ID}
Steam.UGC.StartPlaytimeTracking(ids, #ids, function(data, err)
print('Playtime tracking started')
end)
- UGC.StopPlaytimeTracking(pvecPublishedFileID, unNumPublishedFileIDs, callback)
🤖 Auto-generated binding
- Parameters:
pvecPublishedFileID (uint64[]?) –
unNumPublishedFileIDs (int) – size of the input array
pvecPublishedFileIDcallback (function) – CallResult callback receiving struct
StopPlaytimeTrackingResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
- UGC.StopPlaytimeTrackingForAllItems(callback)
🤖 Auto-generated binding
- Parameters:
callback (function) – CallResult callback receiving struct
StopPlaytimeTrackingResult_tand a boolean- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.UGC.StopPlaytimeTrackingForAllItems(function(data, err)
print('Playtime tracking stopped for all items')
end)
- UGC.SubmitItemUpdate(handle, pchChangeNote, callback)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
pchChangeNote (str?) –
callback (function) – CallResult callback receiving struct
SubmitItemUpdateResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Notes:
See
UGC.StartItemUpdate()’s example.
- UGC.SubscribeItem(nPublishedFileID, callback)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
callback (function) – CallResult callback receiving struct
RemoteStorageSubscribePublishedFileResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.UGC.SubscribeItem(publishedFileID, function(data, err)
if err or data.m_eResult ~= Steam.k_EResultOK then
print('Subscribe failed')
else
print('Subscribed to item:', tostring(data.m_nPublishedFileId))
end
end)
- UGC.SuspendDownloads(bSuspend)
🤖 Auto-generated binding
- Parameters:
bSuspend (bool) –
- SteamWorks:
Example:
-- Pause all workshop downloads during gameplay
Steam.UGC.SuspendDownloads(true)
-- Resume when at main menu
Steam.UGC.SuspendDownloads(false)
- UGC.UnsubscribeItem(nPublishedFileID, callback)
🤖 Auto-generated binding
- Parameters:
nPublishedFileID (uint64 - PublishedFileId_t) –
callback (function) – CallResult callback receiving struct
RemoteStorageUnsubscribePublishedFileResult_tand a boolean
- Returns:
(uint64)
SteamAPICall_thandle for this async call. The result is delivered via thecallbackparameter whenSteam.RunCallbacks()is called.- SteamWorks:
Example:
Steam.UGC.UnsubscribeItem(publishedFileID, function(data, err)
if not err and data.m_eResult == Steam.k_EResultOK then
print('Unsubscribed from item')
end
end)
- UGC.UpdateItemPreviewFile(handle, index, pszPreviewFile)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
index (int) –
pszPreviewFile (str?) –
- Returns:
(bool) Return value
- SteamWorks:
- UGC.UpdateItemPreviewVideo(handle, index, pszVideoID)
🤖 Auto-generated binding
- Parameters:
handle (uint64 - UGCUpdateHandle_t) –
index (int) –
pszVideoID (str?) –
- Returns:
(bool) Return value
- SteamWorks:
Unimplemented Methods
- UGC.GetQueryUGCKeyValueTag()
✋ Not implemented - blocklist: Overload which is not in documentation
- SteamWorks:
Callbacks
- UGC.OnSteamUGCQueryCompleted()
Callback for SteamUGCQueryCompleted_t
callback(data) receives:
data.m_handle (uint64 - UGCQueryHandle_t)
data.m_eResult (int - EResult)
data.m_unNumResultsReturned (int)
data.m_unTotalMatchingResults (int)
data.m_bCachedData (bool)
data.m_rgchNextCursor (string)
Example:
function Steam.UGC.OnSteamUGCQueryCompleted(data)
if data.m_eResultCode == Steam.k_EResultOK then
print('Query returned', data.m_unNumResultsReturned, 'results')
end
end
- UGC.OnSteamUGCRequestUGCDetailsResult()
Callback for SteamUGCRequestUGCDetailsResult_t
callback(data) receives:
data.m_details (SteamUGCDetails_t)
data.m_bCachedData (bool)
- UGC.OnCreateItemResult()
Callback for CreateItemResult_t
callback(data) receives:
data.m_eResult (int - EResult)
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
data.m_bUserNeedsToAcceptWorkshopLegalAgreement (bool)
- UGC.OnSubmitItemUpdateResult()
Callback for SubmitItemUpdateResult_t
callback(data) receives:
data.m_eResult (int - EResult)
data.m_bUserNeedsToAcceptWorkshopLegalAgreement (bool)
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
- UGC.OnItemInstalled()
Callback for ItemInstalled_t
callback(data) receives:
data.m_unAppID (int - AppId_t)
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
data.m_hLegacyContent (uint64 - UGCHandle_t)
data.m_unManifestID (uint64)
Example:
function Steam.UGC.OnItemInstalled(data)
local ok, size, folder, ts = Steam.UGC.GetItemInstallInfo(data.m_nPublishedFileId, 512)
if ok then
print('Mod installed at:', folder)
loadMod(folder)
end
end
- UGC.OnDownloadItemResult()
Callback for DownloadItemResult_t
callback(data) receives:
data.m_unAppID (int - AppId_t)
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
data.m_eResult (int - EResult)
Example:
function Steam.UGC.OnDownloadItemResult(data)
if data.m_eResult == Steam.k_EResultOK then
print('Item downloaded:', tostring(data.m_nPublishedFileId))
else
print('Download failed:', data.m_eResult)
end
end
- UGC.OnUserFavoriteItemsListChanged()
Callback for UserFavoriteItemsListChanged_t
callback(data) receives:
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
data.m_eResult (int - EResult)
data.m_bWasAddRequest (bool)
- UGC.OnSetUserItemVoteResult()
Callback for SetUserItemVoteResult_t
callback(data) receives:
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
data.m_eResult (int - EResult)
data.m_bVoteUp (bool)
- UGC.OnGetUserItemVoteResult()
Callback for GetUserItemVoteResult_t
callback(data) receives:
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
data.m_eResult (int - EResult)
data.m_bVotedUp (bool)
data.m_bVotedDown (bool)
data.m_bVoteSkipped (bool)
- UGC.OnStartPlaytimeTrackingResult()
Callback for StartPlaytimeTrackingResult_t
callback(data) receives:
data.m_eResult (int - EResult)
- UGC.OnStopPlaytimeTrackingResult()
Callback for StopPlaytimeTrackingResult_t
callback(data) receives:
data.m_eResult (int - EResult)
- UGC.OnAddUGCDependencyResult()
Callback for AddUGCDependencyResult_t
callback(data) receives:
data.m_eResult (int - EResult)
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
data.m_nChildPublishedFileId (uint64 - PublishedFileId_t)
- UGC.OnRemoveUGCDependencyResult()
Callback for RemoveUGCDependencyResult_t
callback(data) receives:
data.m_eResult (int - EResult)
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
data.m_nChildPublishedFileId (uint64 - PublishedFileId_t)
- UGC.OnAddAppDependencyResult()
Callback for AddAppDependencyResult_t
callback(data) receives:
data.m_eResult (int - EResult)
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
data.m_nAppID (int - AppId_t)
- UGC.OnRemoveAppDependencyResult()
Callback for RemoveAppDependencyResult_t
callback(data) receives:
data.m_eResult (int - EResult)
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
data.m_nAppID (int - AppId_t)
- UGC.OnGetAppDependenciesResult()
Callback for GetAppDependenciesResult_t
callback(data) receives:
data.m_eResult (int - EResult)
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
data.m_rgAppIDs (int[] - AppId_t)
data.m_nNumAppDependencies (int)
data.m_nTotalNumAppDependencies (int)
- UGC.OnDeleteItemResult()
Callback for DeleteItemResult_t
callback(data) receives:
data.m_eResult (int - EResult)
data.m_nPublishedFileId (uint64 - PublishedFileId_t)
- UGC.OnUserSubscribedItemsListChanged()
Callback for UserSubscribedItemsListChanged_t
callback(data) receives:
data.m_nAppID (int - AppId_t)
- UGC.OnWorkshopEULAStatus()
Callback for WorkshopEULAStatus_t
callback(data) receives:
data.m_eResult (int - EResult)
data.m_nAppID (int - AppId_t)
data.m_unVersion (int)
data.m_rtAction (int - RTime32)
data.m_bAccepted (bool)
data.m_bNeedsAction (bool)