STEAM連結:https://goo.gl/cN1t6C
主題
Steam成就
簡單來說
在遊戲內達成某些目標,給予玩家肯定的一種機制。
先前準備
1.在Steam上先弄好,成就的程式ID(API名稱)、成就的名稱(顯示名子)、成就的說明、成就的達成圖及未達成圖。
2.到https://steamworks.github.io/下載unity專用steam的程式。
3.把下載的steam包直接丟進您的專案內。
4.到你專案的Assets底下找steam_appid.txt,將其內容修改成你Steam上的App_id。
5.Assets\Scripts\Steamworks.NET底下有個SteamManager
6.修改SteamManager內的(AppId_t)480),把480改成你的App_id存檔。
以上2~6是很簡易的說明,不懂可以看下面的影片。
國外影片教學:
以上就是先前的準備項目。
主要是玩家端單向給Steam資訊,沒有類似server要來回作檢查的項目內容其實只有幾個會用到。
當玩家達成成就時只要在程式內容打上以下兩條。
------------------------------------------------------------------------
SteamUserStats.SetAchievement("API名稱");
SteamUserStats.StoreStats();
------------------------------------------------------------------------
API名稱就是你先前準備的程式ID,看要指定哪一個,只要執行當下就會獲得成就。
成就完成後需要重新測試的話你會需要這個程式幫助你Reset。
------------------------------------------------------------------------
SteamUserStats.ResetAllStats(true);
SteamUserStats.StoreStats();
------------------------------------------------------------------------
會將你所有之前已經達成的成就變成沒有達成。
這就是Steam上成就安置在Unity遊戲內的方式。