NEWS COMMUNITY STORE LABS STEAMWORKS SIGN UP LOGIN LOGOUT ROKOJORI NEWSLETTER SIGN UP LOGIN LOGOUT NEWS COMMUNITY STORE LABS STEAMWORKS TOGGLE FULLSCREEN VOLLBILD AN/AUS image/svg+xml image/svg+xml image/svg+xml COMMON FEATURES
Code Snippets for the Steamworks.NET API
image/svg+xml image/svg+xml Code Snippets for the Steamworks.NET API image/svg+xml






CAUTION: The examples are for a setup with Steamworks.NET.

Additionally you'll need a steam account with the rights for the app and in your unity project (or in the build) a steam_appid.txt with the correct app id. The steam client needs to be logged in with the correct user.

Finally, the examples are shortened to simple method calls, which would not work as is. They need to be put into proper classes, most likely as Component/MonoBehaviour.









::/_graphics/labs/steam-logo-16-9.png image/svg+xml image/svg+xml image/svg+xml Initialize API Initialize API Getting Started on Steamworks.NET SteamFriends SteamUser
Don't forget to add an steam_appid.txt and login to an account owning the app.

// CAUTION: Only example code using Steamworks; // Before any call void StartSteam() { var steamStarted = SteamAPI.Init(); } // Update every frame void RunSteam() { SteamAPI.RunCallbacks(); } // Test with User Data void LoadUserData() { var name = SteamFriends.GetPersonaName(); var id = SteamUser.GetSteamID().m_SteamID; }
Initialize API Initialize API Getting Started on Steamworks.NET SteamFriends SteamUser
Don't forget to add an steam_appid.txt and login to an account owning the app.

// CAUTION: Only example code using Steamworks; // Before any call void StartSteam() { var steamStarted = SteamAPI.Init(); } // Update every frame void RunSteam() { SteamAPI.RunCallbacks(); } // Test with User Data void LoadUserData() { var name = SteamFriends.GetPersonaName(); var id = SteamUser.GetSteamID().m_SteamID; }
::/_graphics/labs/steam-logo-16-9.png image/svg+xml image/svg+xml image/svg+xml Leaderboards Leaderboards LeaderBoards Partners Website App LeaderBoards Doc

Leaderboards can be used for high scores and similar. They can be created through Steam's leaderboards partners website app or directly in code.

// CAUTION: Only example code using Steamworks; // Get a reference to the board void FindBoard( string name ) { SteamLeaderboard_t? leaderBoard; var result = new CallResult<LeaderboardFindResult_t>(); result.Set( SteamUserStats.FindLeaderboard( name ), ( data, hasError ) => { leaderBoard = ! hasError ? data.m_hSteamLeaderboard : null; } ); } // Get a reference to a range of entries of a board void GetEntries( SteamLeaderboard_t board, ELeaderboardDataRequest type, int start, int end ) { SteamLeaderboardEntries_t? leaderboardEntries; var result = new CallResult<LeaderboardScoresDownloaded_t>(); var cb = SteamUserStats.DownloadLeaderboardEntries( board, type, start, end ); result.Set( cb, ( data, hasError ) => { leaderboardEntries = ! hasError ? data.m_hSteamLeaderboardEntries : null; } ); } // Upload score and data to a leader board void UploadScore( SteamLeaderboard_t board, ELeaderboardUploadScoreMethod method, int score, int[] data ) { var result = new CallResult<LeaderboardScoreUploaded_t>(); var cb = SteamUserStats.UploadLeaderboardScore( board, method, score, data, data.Length ); result.Set( cb, ( data, hasError ) => { var scoreChanged = data.m_bScoreChanged; var newRank = data.m_nGlobalRankNew; var oldRank = data.m_nGlobalRankPrevious; var score = data.m_nScore; } ); }
Leaderboards Leaderboards LeaderBoards Partners Website App LeaderBoards Doc

Leaderboards can be used for high scores and similar. They can be created through Steam's leaderboards partners website app or directly in code.

// CAUTION: Only example code using Steamworks; // Get a reference to the board void FindBoard( string name ) { SteamLeaderboard_t? leaderBoard; var result = new CallResult<LeaderboardFindResult_t>(); result.Set( SteamUserStats.FindLeaderboard( name ), ( data, hasError ) => { leaderBoard = ! hasError ? data.m_hSteamLeaderboard : null; } ); } // Get a reference to a range of entries of a board void GetEntries( SteamLeaderboard_t board, ELeaderboardDataRequest type, int start, int end ) { SteamLeaderboardEntries_t? leaderboardEntries; var result = new CallResult<LeaderboardScoresDownloaded_t>(); var cb = SteamUserStats.DownloadLeaderboardEntries( board, type, start, end ); result.Set( cb, ( data, hasError ) => { leaderboardEntries = ! hasError ? data.m_hSteamLeaderboardEntries : null; } ); } // Upload score and data to a leader board void UploadScore( SteamLeaderboard_t board, ELeaderboardUploadScoreMethod method, int score, int[] data ) { var result = new CallResult<LeaderboardScoreUploaded_t>(); var cb = SteamUserStats.UploadLeaderboardScore( board, method, score, data, data.Length ); result.Set( cb, ( data, hasError ) => { var scoreChanged = data.m_bScoreChanged; var newRank = data.m_nGlobalRankNew; var oldRank = data.m_nGlobalRankPrevious; var score = data.m_nScore; } ); }









All social media brands are registrated trademarks and belong to their respective owners.





CONTACT IMPRINT TERMS OF USE PRIVACY © ROKOROJI ® 2021 rokojori.com
CONTACT IMPRINT TERMS OF USE PRIVACY © ROKOROJI ® 2021 rokojori.com
We are using cookies on this site. Read more... Wir benutzen Cookies auf dieser Seite. Mehr lesen...