2024-01-01から1年間の記事一覧
はじめに GS2-Identifier は GS2 のAPI呼び出しのための権限管理をするためのサービスです。 プロジェクトに対して複数のクレデンシャル(APIキー)を発行でき、それぞれに呼び出し可能なAPI権限を設定できます。 機能追加の背景 これまでは、呼び出し可能なAP…
はじめに GS2-Account はゲームが必要とする認証機能を提供するサービスです。 機能追加の背景 「久しぶりゲームを再開してくれたプレイヤーにカムバックボーナスを付与したい」というようなニーズがあります。 このようなニーズを満たすために認証時のスク…
はじめに GS2 はさまざまなマスターデータやユーザーデータを取り扱います。 イベントやサブスクリプションの特典として、各種パラメーターに補正値を適用したいことがあります。例えば、イベント期間中は「スタミナ消費量半減」「クエスト報酬2倍」「スタミ…
はじめに GS2-Inventory はアイテムの所持数量を管理するマイクロサービスです。 なかでも巨大インベントリは 64bit整数値 の範囲を超えるアイテムの所持数量を管理するマイクロサービスです。クッキークリッカーを代表するインフレ系ゲームのようなゲームで…
はじめに GS2-Quest はインゲームの挑戦料・報酬・クリア状況を管理するためのマイクロサービスです。 今回の更新で解消された課題 GS2-Quest はクエストごとに報酬として「クリア時に得られる報酬」「初めてクリアした時に得られる報酬」「失敗した時に得ら…
はじめに GS2-Exchange はなんらかの対価としてプレイヤーが所持するリソースを消費して、何らかのリソースを入手するための交換処理を実装するためのマイクロサービスです。GS2-Exchange の交換には即時交換と、非同期交換の2モードが存在し非同期交換モー…
はじめに 運営型のゲームにおいてイベントのような時刻に関わる処理は重要な要素です。 プロジェクトによってはQAのためにメンテナンスモードにしてプレイヤーを追い出し、サーバーの時刻設定を変更して動作確認するという話すら聞いたことがあり、時刻が関…
はじめに 近年のPvPゲームではシーズンごとにランクマッチが実施され、ブロンズ→シルバー→ゴールド→プラチナ のように昇格していくスタイルが一般化しました。 GS2 も元々レーティング機能は持っていましたが、シーズンで区切ることはできず、ランクではなく…
はじめに 通信時間を最適化する一番のポイントは通信処理の並列化です。 依存関係のないデータ取得ではなるべく並列化することで、通信の待ち時間を最適化できます。ただ、今の実装が最適化できているかどうかを正確に判断するのは困難が伴います。 追加され…
はじめに GS2-Script は GS2 の機能を拡張するもので、任意のタイミングでクライアントから呼び出せるようなものではなく レベルアップした時や、アカウント引き継ぎを登録したときなどあらかじめ用意されたトリガーと関連づけることで、イベント駆動で実行…
はじめに GS2-Inventory はプレイヤーの所持品を管理するマイクロサービスです。 なかでも、シンプルインベントリはアイテム所持数の上限やインベントリの容量といった機能は持たない代わりに複数のアイテムをまとめて増減できる特徴があります。機能の詳細…