top of page
  • Goo

利用Steam統計來實作Steam成就

Steamworks有提供統計功能, 讓開發者可以便捷的將玩家遊玩的數據紀錄下來(ex: 破關次數、通關時間, etc...)

此功能同時也能連動於Steam成就, 也就是可以實現"當玩家的某個統計數據達到某個值後, 解鎖某個成就"


應用此機制, 開發者可以於程式中只實作統計紀錄, 將資料儲存、成就達成判斷、和成就解鎖這些事交給後台


下面將說明如何實作:


後台設置

本篇假設開發者已於Steamworks建立應用程式

1. 從Steamworks的主控台選擇要設置的應用程式, 進入其 技術工具->編輯Steamworks設定 頁面

2. 進入 統計與成就->統計 頁面, 新增統計欄位, 設置API名稱等資料

3. 進入 統計與成就->成就 頁面, 新增成就欄位, 設置API名稱等資料

4. 於成就欄位中的 進度數據 一欄選擇要參考的統計API




5. 將解所成就的條件值設定於最高欄位, 當參考的統計API數值達到其以上時, 即解鎖成就

(比如你希望玩家的T1_COUNT達到10以上實獲得成就, 就設定10)





(筆者一開始搞錯設定在最小值, 最高沒設定, 結果就造成了悲劇)


6. 發佈變更使設定生效


程式實作

本篇是於Unity中使用Steamworks.NET來實作, Steamworks.NET的導入與初始化不於本篇贅敘, 直接進入API使用環節

1. 使用SteamUserStats.SetStat, 設定值於指定的統計API

2. 如希望在玩家能即時得到成就解鎖, 設定完Stat後要呼叫SteamUserStats.StoreStats, 否則會在關閉程式時才會把資料傳給後台


145 次查看0 則留言

Comments


文章: Blog2_Post
bottom of page