PlayDrop logoPlayDrop Studio
作成プレイ交換稼ぐ学ぶコネクタアセットコミュニティサポート
PlayDrop logoPlayDrop Studio
作成プレイ交換稼ぐ学ぶコネクタアセットコミュニティサポート
ログイン
ランキング
ドキュメント

はじめに

概要初めてのゲームPlayDrop のゲームよくある質問

Cloud で作る

Cloudで作成プランと生成回数

AI アプリを接続

すべてのコネクタClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

公開と共有

AI アプリから公開するシンプルな HTML ゲームパッケージ化と .play公開とインポートゲームファイル公開範囲と集客掲載用アートと動画ジャンルとタグローカライズインスタントゲーム

ゲーム体験

読み込み、一時停止、オーディオ全画面とセーフエリアクラウドセーブローカルパーティーとコントローラー

一緒に遊ぶ

共有、フレンド、招待ランキング実績オンラインパーティーと音声リアルタイムゲームサーバー

収益を得る

収益化クレジットと報酬

アセット

ゲームアセットAI アセット生成独自形式とプレイヤーの作品

リファレンス

クライアント SDKサーバー SDKcatalogue.jsonエラーと復旧トラブルシューティング
ドキュメントランキング
一緒に遊ぶ

PlayDrop ゲームのランキング

catalogue.json でランキングを宣言し、sdk.leaderboards でスコアを送信して、上位とプレイヤー周辺の順位を表示します。スコアの種類、制限、更新のルールも説明します。

ランキングは、プレイヤーにもう一度遊ぶ理由と、共有したくなる順位を与えます。PlayDrop はランキングごとに各プレイヤーの自己ベストを保存し、ゲーム上に表示します。

ランキングを宣言する

catalogue.json のアプリに追加します。

json
{
  "leaderboards": [
    { "key": "high-score", "displayName": "High score", "description": "Most points in one run",
      "scoreType": "INTEGER", "sort": "DESC", "unitLabel": "pts" },
    { "key": "best-time", "displayName": "Fastest run", "description": "Time to reach the flag",
      "scoreType": "TIME_MS", "sort": "ASC" }
  ]
}
  • key:3〜64文字で、英小文字で始まり、そのあとに英小文字、数字、_、.、- が続きます。
  • scoreType と sort の組み合わせは2通りです。INTEGER と DESC(大きいほうが勝ち、スコアは0以上)、または TIME_MS と ASC(小さいほうが勝ち、正のミリ秒)。
  • unitLabel は任意の表示用テキストです。

公開後は、キーを削除できず、scoreType と sort も変更できません。使うのをやめるには "status": "RETIRED" を指定します。ランキングにはパッケージが必要です。

スコアの送信と読み取り

js
const result = await sdk.leaderboards.submitScore("high-score", 1200);
// { accepted, improved, previousBestScore, bestScore, rank, previousRank, bestScoreAt, leaderboard }
if (result.improved) showNewBest(result.bestScore, result.rank);

const { leaderboard } = await sdk.leaderboards.get("high-score", { top: 10, aroundMe: 3 });
// leaderboard: { definition, top, player, playerEntry, aroundPlayer }

const { leaderboards } = await sdk.leaderboards.list();
  • スコアは安全な整数です。自己ベストを置き換えるのは、より良いスコアだけです。
  • top は1〜100件、aroundMe はプレイヤーの前後それぞれ1〜20件を指定できます。
  • list({ includeRetired: true }) は終了したランキングも返します。

スコアは毎フレームではなくプレイの終わりに、play フェーズでだけ送信してください。拒否された呼び出しはほかのネットワーク呼び出しと同じように処理し、ゲームを遊べる状態に保ちましょう。

ゲストとオフライン

サインインを確認せずにスコアを送信できます。プレイヤーセッションがまったくない場合、送信は保存されないまま正常終了します。オフライン対応の PlayDrop アプリなど、デバイスデータへの対応を示すホストは、オフラインで出したスコアを保存し、あとで同期します。こうしたホストでのオフライン時の読み取りでは、プレイヤー自身の自己ベストだけが表示され、順位は表示されません。それ以外の環境では、送信にネットワーク接続が必要です。

ランキングではできないこと

SDK には、地域、定期リセット、シーズン、週間賞品の自動付与はありません。週間ランキングにしたい場合は、たとえばシーズンごとに新しいバージョンで新しいキーを宣言するなど、週の区切りを自分で設計に組み込んでください。

関連:実績、クラウドセーブ、スコアの共有。

関連ガイド

  • 実績catalogue.json でアイコン付きの通常実績と段階実績を宣言し、sdk.achievements で実績の解除と進行状況の報告を行います。
  • クラウドセーブsdk.me.appData と sdk.me.updateAppData でプレイヤーの進行状況を保存・読み込みます。ゲストとサインイン中のプレイヤーへの対応、書き込み、プレビュー、オフラインのルールも説明します。
  • catalogue.jsonPlayDrop ゲームが使う catalogue.json のフィールド:識別情報、掲載情報、遊び方、表示環境、サインイン、インスタント、事前読み込み、メディア、翻訳、スコア、サーバー。
前へPlayDrop ゲームの共有、フレンド、招待次へPlayDrop ゲームの実績
Markdownを表示
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

このページの内容

ランキングを宣言するスコアの送信と読み取りゲストとオフラインランキングではできないこと
Markdownを表示