スコアアタック系のゲームでは
リーダーボードがあるかどうかで
リピート率が全然違う。
SteamworksのリーダーボードをUnityから使う方法。
【Steamworksのリーダーボード種類】
・Ascending(昇順):タイムアタック系(低い方が良い)
・Descending(降順):スコア系(高い方が良い)
・KeepBest / ForceUpdate:スコアの上書き方法
【基本的な実装(
Steamworks.NET)】
// リーダーボードを検索/作成
SteamAPICall_t handle = SteamUserStats.FindOrCreateLeaderboard(
"HighScore",
ELeaderboardSortMethod.k_ELeaderboardSortMethodDescending,
ELeaderboardDisplayType.k_ELeaderboardDisplayTypeNumeric
);
// スコアをアップロード
SteamUserStats.UploadLeaderboardScore(
leaderboard,
ELeaderboardUploadScoreMethod.k_ELeaderboardUploadScoreMethodKeepBest,
score, null, 0
);
【注意点】
・リーダーボード名は後から変更できない
・
Steamworks.NETかSteamworks SDKが必要
・ローカルテスト時はSteamが起動している必要がある
【リーダーボード画面の設計】
・世界ランク + 自分の周辺ランクを表示するのが定番
・フレンドフィルターがあると遊び方が変わる
スコアが可視化されるだけで
「もう1回やろう」が増える。
#個人開発 #ゲーム制作