GS2-Ranking

Create Client

ranking_client = client('ranking')

Method

create_game_mode

response = ranking_client:create_game_mode(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

ゲームモードを作成します

Request

{
  rankingTableName=string,
  asc=boolean,
  gameMode=string,
  calcInterval=number,
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。
  • asc
  • [boolean] スコアを順位付けするときに小さいスコアのほうがハイスコアな場合は true
  • gameMode
  • [string] ゲームモード名
  • calcInterval
  • [number] このゲームモードのランキング集計間隔を分単位で指定します

Response

  • item
  • [GameMode] ゲームモード

create_ranking_table

response = ranking_client:create_ranking_table(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

ランキングテーブルを新規作成します

Request

{
  name=string,
  description=string,
}
  • name
  • [string] ランキングテーブルの名前
  • description
  • [string] 説明文

Response

  • item
  • [RankingTable] ランキングテーブル

delete_game_mode

response = ranking_client:delete_game_mode(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

ゲームモードを削除します

Request

{
  rankingTableName=string,
  gameMode=string,
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。
  • gameMode
  • [string] ゲームモードの名前を指定します。

Response

None

delete_ranking_table

response = ranking_client:delete_ranking_table(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

ランキングテーブルを削除します

Request

{
  rankingTableName=string,
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。

Response

None

describe_game_mode

response = ranking_client:describe_game_mode(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

ゲームモードの一覧を取得します

Request

{
  rankingTableName=string,
  pageToken=string,
  limit=number,
  accessToken=string
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。
  • pageToken
  • [string] データの取得を開始する位置を指定するトークン
  • limit
  • [number] データの取得件数
  • accessToken
  • [string] GS2-Auth で発行を受けたアクセストークン

Response

  • nextPageToken
  • [string] 次のページを読み込むためのトークン
  • items
  • [table<GameMode>] ゲームモード

describe_ranking_table

response = ranking_client:describe_ranking_table(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

ランキングテーブルの一覧を取得します

Request

{
  pageToken=string,
  limit=number,
}
  • pageToken
  • [string] データの取得を開始する位置を指定するトークン
  • limit
  • [number] データの取得件数

Response

  • nextPageToken
  • [string] 次のページを読み込むためのトークン
  • items
  • [table<RankingTable>] ランキングテーブル

get_estimate_rank

response = ranking_client:get_estimate_rank(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

指定したスコアを取った時のおおよその順位を取得します

Request

{
  rankingTableName=string,
  gameMode=string,
  score=number,
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。
  • gameMode
  • [string] ゲームモードの名前を指定します。
  • score
  • [number] スコア値

Response

  • max
  • [number] 推定最大順位
  • min
  • [number] 推定最小順位

get_game_mode

response = ranking_client:get_game_mode(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

ゲームモードを取得します

Request

{
  rankingTableName=string,
  gameMode=string,
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。
  • gameMode
  • [string] ゲームモードの名前を指定します。

Response

  • item
  • [GameMode] ゲームモード

get_my_rank

response = ranking_client:get_my_rank(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

現在の順位を取得します

Request

{
  rankingTableName=string,
  gameMode=string,
  accessToken=string
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。
  • gameMode
  • [string] ゲームモードの名前を指定します。
  • accessToken
  • [string] GS2-Auth で発行を受けたアクセストークン

Response

  • index
  • [number] 先頭からの位置
  • rank
  • [number] 同点同順位を採用した場合の順位

get_ranking

response = ranking_client:get_ranking(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

ランキングを取得します

Request

{
  rankingTableName=string,
  gameMode=string,
  offset=number,
  limit=number,
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。
  • gameMode
  • [string] ゲームモードの名前を指定します。
  • offset
  • [number] ランキングの取得位置を指定します
  • limit
  • [number] ランキングの取得件数を指定します

Response

  • nextPageToken
  • [string] 次のページを読み込むためのトークン
  • items
  • [table<RankingScore>] スコア

get_ranking_table

response = ranking_client:get_ranking_table(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

ランキングテーブルを取得します

Request

{
  rankingTableName=string,
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。

Response

  • item
  • [RankingTable] ランキングテーブル

put_score

response = ranking_client:put_score(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

スコアを登録します

Request

{
  rankingTableName=string,
  gameMode=string,
  score=number,
  meta=string,
  accessToken=string
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。
  • gameMode
  • [string] ゲームモードの名前を指定します。
  • score
  • [number] スコア値
  • meta
  • [string] スコアに付随するメタ情報
  • accessToken
  • [string] GS2-Auth で発行を受けたアクセストークン

Response

  • item
  • [Score] スコア

update_game_mode

response = ranking_client:update_game_mode(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

ゲームモードの設定を更新します

Request

{
  rankingTableName=string,
  gameMode=string,
  calcInterval=number,
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。
  • gameMode
  • [string] ゲームモードの名前を指定します。
  • calcInterval
  • [number] このゲームモードのランキング集計間隔を分単位で指定します

Response

  • item
  • [GameMode] ゲームモード

update_ranking_table

response = ranking_client:update_ranking_table(request)
if response.isError then
  -- エラー処理 --
  print(response.statusCode)
  print(response.errorMessage)
else
  -- 正常処理 --
  print(response.result)
end

ランキングテーブルを更新します

Request

{
  rankingTableName=string,
  description=string,
}
  • rankingTableName
  • [string] ランキングテーブルの名前を指定します。
  • description
  • [string] 説明文

Response

  • item
  • [RankingTable] ランキングテーブル

Model

GameMode

  • calculating
  • [boolean] 集計処理中か否か
  • calcInterval
  • [number] 集計間隔(分)
  • lastCalcAt
  • [number] 最終集計日時(エポック秒)
  • gameMode
  • [string] ゲームモード名
  • gameModeId
  • [string] ゲームモードGRN
  • asc
  • [boolean] ランキング計算に昇順を適用するか
  • createAt
  • [number] 作成日時(エポック秒)
  • rankingTableId
  • [string] ランキングテーブル
  • ownerId
  • [string] オーナーID
  • updateAt
  • [number] 更新日時(エポック秒)

RankingScore

  • index
  • [number] 先頭からの位置
  • score
  • [number] スコア値
  • meta
  • [string] メタデータ
  • updateAt
  • [number] 登録日時(エポック秒)
  • userId
  • [string] ユーザID
  • rank
  • [number] 同点同順位を採用した場合の順位

Score

  • score
  • [number] スコア値
  • meta
  • [string] メタデータ
  • rankingTableId
  • [string] ランキングテーブルGRN
  • updateAt
  • [number] 登録日時(エポック秒)
  • gameMode
  • [string] ゲームモード名
  • userId
  • [string] ユーザID

RankingTable

  • createAt
  • [number] 作成日時(エポック秒)
  • description
  • [string] 説明文
  • rankingTableId
  • [string] ランキングテーブルGRN
  • ownerId
  • [string] オーナーID
  • updateAt
  • [number] 最終更新日時(エポック秒)
  • name
  • [string] ランキングテーブル名