以下、本発明の実施形態について説明する。
(情報処理システムの構成)
図1を参照して、本発明の一実施形態に係る情報処理システム1の概要について説明する。情報処理システム1は、第1プラットフォーム10と、第2プラットフォーム20と、1つ以上の端末装置30と、を備える。第1プラットフォーム10、第2プラットフォム20、及び1つ以上の端末装置30は、例えばインターネット等のネットワーク40に接続されている。図1では説明の簡便のため、3つの端末装置30を図示しているが、末装置30の数は任意に定められてもよい。第1プラットフォーム10及び第2プラットフォーム20は、互いに競合する分野のサービスの提供に用いられてもよい。サービスの分野が競合することは、例えばサービスを利用するユーザ層が互いに重複することを含む。本実施形態において、第1プラットフォーム10及び第2プラットフォーム20は、それぞれユーザにゲームを提供するサービスに用いられる。しかしながら、第1プラットフォーム10及び第2プラットフォーム20は、ゲームを提供するサービスに限られず、例えばチャット若しくは掲示板等の機能を提供するコミュニケーションサービス、又はネットショッピング若しくはネットオークション等の機能を提供する商品販売サービス等、任意のネットワークサービスの提供に用いられてもよい。
本実施形態に係るゲームは、1つ以上のゲームパートを含んでもよい。1つ以上のゲームパートのうち少なくとも1つのゲームパートは、後述するゲーム媒体を用いて実行されてもよい。ゲームパートの実行中、ゲーム媒体は、例えばユーザ又はAI(Artificial Intelligence)によって操作されてもよい。AIは、例えばプロセッサによって実現され
てもよい。
ゲーム媒体は、ゲームに使用される電子データであり、例えば、カード、アイテム、仮想通貨、チケット、キャラクタ、アバタ、レベル情報、ステータス情報、及びパラメータ情報(体力値や攻撃力など)、及び能力情報(スキル、アビリティ、呪文、ジョブなど)、任意の媒体を含む。また、ゲーム媒体は、ユーザによってゲーム内で取得、所有、使用、管理、交換、合成、強化、売却、廃棄、又は贈与等され得る電子データであるが、ゲーム媒体の利用態様は本明細書で明示されるものに限られない。
以下、特に明示した場合を除き、「ユーザが所有するゲーム媒体」とは、当該ユーザを一意に識別可能なユーザIDに対応付けられたゲーム媒体を示す。また、「ゲーム媒体をユーザに付与する」とは、ゲーム媒体をユーザIDに対応付けることを示す。また、「ユーザが所有するゲーム媒体を破棄する」とは、ユーザIDとゲーム媒体との対応付けを解消することを示す。また、「ユーザが所有するゲーム媒体を消費する」とは、ユーザIDとゲーム媒体との対応付けの解消に応じて、何らかの効果又は影響をゲーム内で発揮させ得ることを示す。また、「ユーザが所有するゲーム媒体を売却する」とは、ユーザIDとゲーム媒体との対応付けを解消し、且つ、ユーザIDに他のゲーム媒体(例えば、仮想通貨又はアイテム等)を対応付けることを示す。また、「ユーザAが所有するゲーム媒体をユーザBに譲渡する」とは、ユーザAのユーザIDとゲーム媒体との対応付けを解消し、且つ、ユーザBのユーザIDに当該ゲーム媒体を対応付けることを示す。また、「ゲーム媒体を作成する」とは、ゲーム媒体に関する情報の少なくとも一部を定義又は決定することを示す。
ゲームパートは、ゲーム内でユーザがプレイ可能な任意のコンテンツを含んでもよい。例えば、ゲームパートは、クエスト、ミッション、ミニゲーム、ゲーム媒体の入手、育成、強化、及び合成、仮想空間の探索、並びに対戦相手(例えば、他のユーザ、敵キャラクタ、及び敵の建物等)との対戦等のコンテンツを含んでもよい。各ゲームパートには、1つ以上の所定のゲーム課題が設定されてもよい。ユーザによってプレイされるゲームパートに設定された1つ以上のゲーム課題の達成に成功したと判定された場合、ユーザに対して、例えばゲーム媒体等が報酬として付与されてもよい。ゲーム課題には、例えば敵キャラクタとの対戦に勝利するとの課題、仮想空間内のゴール地点まで到達するとの課題、及び所定時間が経過するまでユーザのキャラクタが所定の状態(例えば、後述する健全度がゼロの状態)にならないとの課題等、ゲームパートの内容に応じた任意の課題が採用可能である。また、ゲームパートに設定された1つ以上のゲーム課題のうち、特定のゲーム課題(クリア課題)が達成されることを、ゲームパートのクリアともいう。ゲームパートをプレイするユーザがクリア課題の達成に成功した場合、当該ゲームパートのクリアと判定され、当該ゲームパートが終了してもよい。
1つ以上のゲームパートには、シングルプレイ用のゲームパートと、マルチプレイ用のゲームパートと、が含まれてもよい。シングルプレイ用のゲームパートは、例えば、1人のユーザが使用する1つの端末装置30に対するユーザ操作に基づいて実行されるゲームパート(例えば、一人用のゲームパート)を含んでもよい。例えば、1つの端末装置30が単独で、又は1つの端末装置30と第1プラットフォーム10若しくは第2プラットフォーム20とが協働して、シングルプレイ用のゲームパートを実行する。一方、マルチプレイ用のゲームパートは、例えば、2人以上のユーザがそれぞれ使用する2つ以上の端末装置30に対するユーザ操作に基づいて実行される、当該2人以上のユーザに共通のゲームパート(例えば、複数人用のゲームパート)を含んでもよい。2人以上のユーザに共通のゲームパートは、例えば、当該ゲームパートの進行処理の少なくとも一部及び処理結果の少なくとも一部が、当該2人以上のユーザに対して共通して適用されるゲームパートを含んでもよい。例えば、2つ以上の端末装置30が協働して、又は2つ以上の端末装置30と第1プラットフォーム10若しくは第2プラットフォーム20とが協働して、マルチプレイ用のゲームパートを実行する。マルチプレイ用のゲームパートは、複数のユーザがゲーム内で対戦または協力するゲームパートを含んでもよい。1つのゲームパートが、シングルプレイ及びマルチプレイの両方に対応してもよい。
概略として、第1プラットフォーム10は、第1プラットフォーム10に専用のアカウントを有するユーザに1つ以上のゲームを提供する機能を有する。当該アカウントは、例えば第1プラットフォーム10へのユーザ登録の完了に応じて、ユーザに付与される。また、当該1つ以上のゲームは、第1プラットフォーム10の管理者と同一の又は当該管理者とは異なる任意のゲーム開発者によって開発されたゲームを含んでもよい。また、第1プラットフォーム10は、アカウントを有するユーザ同士がコミュニケーションを図るための機能(例えば、メッセージの送受信機能等)、及び第1プラットフォーム10に専用の仮想通貨を管理するための機能(例えば、ユーザが仮想通貨を購入する際の決済機能等)を更に有してもよい。例えば、ユーザは、自身のアカウントに関する情報(例えば、ユーザID及びパスワード等)を用いて第1プラットフォーム10にログインすることによて、第1プラットフォーム10から提供されるゲームをプレイしたり、他のユーザとのコミュニケーションを図ったり、仮想通貨を購入したりすることができる。
以下、第1プラットフォーム10に専用のアカウントを、第1アカウントともいう。ユーザ登録により第1アカウントを取得したユーザを、第1ユーザともいう。第1プラットフォーム10が提供するゲームを、第1ゲームともいう。第1プラットフォーム10に専用の仮想通貨を、第1仮想通貨ともいう。
第1プラットフォーム10は、1つ以上の第1サーバ装置11を含む。当該1つ以上の第1サーバ装置11が、第1プラットフォーム10として機能する。第1プラットフォーム10は、管理者が異なる複数の第1サーバ装置11を含んでもよい。例えば、第1プラットフォーム10の管理者が管理する第1サーバ装置11、及び、当該管理者とは異なるサードパーティー(例えば、第1ゲームの提供者又は開発者等)が管理する第1サーバ装置11等が存在してもよい。本実施形態では説明の簡便のため、第1プラットフォーム10が1つの第1サーバ装置11を含むものとして説明する。しかしながら、当該1つの第1サーバ装置11の構成及び機能が、複数の第1サーバ装置11に適宜に分散された構成も可能である。第1サーバ装置11の詳細については後述する。
概要として、第2プラットフォーム20は、管理者が第1プラットフォーム10と異なる点を除き、第1プラットフォーム10と同様である。以下、第2プラットフォーム20に専用のアカウントを、第2アカウントともいう。ユーザ登録により第2アカウントを取得したユーザを、第2ユーザともいう。第2プラットフォーム20が提供するゲームを、第2ゲームともいう。第2プラットフォーム20に専用の仮想通貨を、第2仮想通貨ともいう。
第2プラットフォーム20は、1つ以上の第2サーバ装置21を含む。当該1つ以上の第2サーバ装置21が、第2プラットフォーム20として機能する。本実施形態では説明の簡便のため、第2プラットフォーム20が1つの第2サーバ装置21を含むものとして説明する。しかしながら、当該1つの第2サーバ装置21の構成及び機能が、複数の第2サーバ装置21に適宜に分散された構成も可能である。第2サーバ装置21の詳細については後述する。
端末装置30は、例えば携帯電話、スマートフォン、タブレット端末、PC(PersonalComputer)、又はゲーム装置等の、ユーザによって使用される任意の情報処理装置であ
る。端末装置30は、汎用又は専用のアプリケーションを用いて、第1プラットフォーム10又は第2プラットフォーム20の各種機能を利用可能である。当該アプリケーションは、例えばウェブブラウザ機能を有してもよい。アプリケーションは、ネットワーク40を介して所定のアプリケーション配信サーバから端末装置30によって取得されてもよく、或いは端末装置30に備えられた記憶装置又は端末装置30が読取可能なメモリカード等の記憶媒体に予め記憶されていてもよい。
例えば、第1サーバ装置11及び端末装置30は、第1プラットフォーム10の各種機能に関する複数の処理を協働して実行する。例えば、第1サーバ装置11及び端末装置30が、一連の処理を分担して実行してもよい。また例えば、第1サーバ装置11及び端末装置30それぞれが同一の処理を実行してもよい。当該同一の処理について、第1サーバ装置11と端末装置30との間で処理結果が一致する場合、第1サーバ装置11及び端末装置30は、当該処理を完了してもよい。一方、第1サーバ装置11と端末装置30との間で処理結果が一致しない場合、第1サーバ装置11及び端末装置30は、例えば第1サーバ装置11の処理結果を正しい結果として当該処理を完了してもよく、或いは当該同一の処理の実行前の状態までプロセスを巻き戻してもよい。かかる構成によれば、例えば第1サーバ装置11及び端末装置30の間の通信品質が一時的に低下した場合であっても、直ちに処理が中断される蓋然性が低下する。また、端末装置30において、例えばゲーム用パラメータの書き換え等の不正処理が行われた場合であっても、当該不正処理を排除できる蓋然性が向上する。第2サーバ装置21及び端末装置30も同様に、第2プラットフォーム20の各種機能に関する複数の処理を協働して実行する。
本実施形態では、ユーザが第1プラットフォーム10の第1アカウントを取得するための2つの方法が存在する。第1の方法は、上述したようにユーザが第1プラットフォーム10にユーザ登録を行う方法である。具体的には、ユーザは、端末装置30を用いて第1プラットフォーム10にアクセスし、ユーザ登録に関する所定の手続(例えば、ユーザID及びパスワードの新規登録等)を行う。当該手続の完了に応じて、当該ユーザに第1アカウントが付与される。
一方、第2の方法は、第2プラットフォーム20を利用する第2ユーザが第1プラットフォーム10との認証連携を行う方法である。認証連携には、例えばOpenID Connectが用いられるが、任意のプロトコルが採用可能である。認証連携において、第2プラットフォーム20がOP(OpenID Provider)として機能し、第1プラットフォー
ム10がRP(Relying Party)として機能する。具体的には、第2ユーザは、端末装置
30を用いて第2プラットフォーム20にアクセスし、ユーザ認証に関する所定の手続(例えば、第2アカウントに関するユーザID及びパスワードの入力等)を行う。当該手続の完了に応じて、第2プラットフォーム20によって認証された認証済みID(例えば、IDトークン)が第1プラットフォーム10に通知される。当該認証済みIDの通知に応じて、当該第2ユーザに第1アカウントが付与される。かかる構成によれば、第2プラットフォーム20を利用する第2ユーザは、第2プラットフォーム20の各種機能に加えて、第1プラットフォーム10の各種機能を利用可能となる。したがって、第2プラットフォーム20に登録した第2ユーザに提供されるサービスの多様化が可能になる。
また、第1プラットフォーム10は、それぞれ第1アカウントを有する第1ユーザ及び第2ユーザを区別して管理してもよい。また、それぞれ第1アカウントを有する第1ユーザと第2ユーザとで、第1プラットフォーム10の利用可能な機能が異なってもよい。例えば、第1プラットフォーム10は、ユーザ登録により第1アカウントを取得した第1ユーザに対しては複数の第1ゲームを提供する一方、認証連携により第1アカウントを取得した第2ユーザに対しては、当該複数の第1ゲームのうち一部の第1ゲームのみを提供してもよい。かかる構成によれば、例えば以下に説明する不都合の発生が低減可能である。
例えば、第1プラットフォーム10及び第2プラットフォーム20が互いに競合する分野のサービスの提供に用いられる場合について説明する。かかる場合、認証連携により第1アカウントを取得した第2ユーザに第1プラットフォーム10の全機能を利用可能にすると、第2プラットフォーム20に対する第2ユーザの興味が低下し、ひいてはユーザが第2プラットフォーム20から第1プラットフォーム10へ流出する等の不都合が発生し得る。したがって、第2プラットフォーム20の管理者は、第2ユーザに対して第1プラットフォーム10の機能を利用可能にする構成を積極的に採用できない場合がある。これに対して本実施形態によれば、認証連携により第1アカウントを取得した第2ユーザは、第1プラットフォーム10の一部の機能のみ利用可能である。このため、ユーザが第2プラットフォーム20から第1プラットフォーム10へ流出する等の不都合の発生が低減される。以下、本実施形態の詳細について説明する。
(第1サーバ装置の構成)
図2を参照して、第1サーバ装置11の構成について具体的に説明する。第1サーバ装置11は、第1サーバ通信部110と、第1サーバ記憶部111と、第1サーバ制御部112と、を備える。
第1サーバ通信部110は、外部装置と無線又は有線によって通信し、情報の送受信を行う1つ以上のインタフェースを含む。第1サーバ通信部110は、例えば無線LAN(Local Area Network)通信モジュール又は有線LAN通信モジュール等を含んでもよい。第1サーバ通信部110は、ネットワーク40と通信可能に接続される。
第1サーバ記憶部111は、1つ以上のメモリを含む。メモリは、例えば半導体メモリ、磁気メモリ、又は光メモリ等を含んでもよい。第1サーバ記憶部111に含まれる各メモリは、例えば主記憶装置、補助記憶装置、又はキャッシュメモリとして機能してもよい。第1サーバ記憶部111は、第1サーバ装置11に内蔵されてもよく、或いは任意のインタフェースを介して第1サーバ装置11に接続されてもよい。第1サーバ記憶部111は、第1サーバ装置11の動作に用いられる情報及びプログラムを記憶する。
例えば、第1サーバ記憶部111は、第1アカウントを有する各ユーザに関する情報を記憶する。例えば図3に示すように、第1アカウントを有するユーザに関する情報は、第1アカウントに関する情報と、第1ゲームデータと、第1仮想通貨と、を含む。図3では説明の簡便のため、第1アカウントを有する2人のユーザそれぞれに関する情報を図示している。
第1アカウントに関する情報は、ユーザの第1アカウントに固有の任意の情報を含む。例えば、第1アカウントに関する情報は、ユーザIDと、パスワード若しくは認証済みIDと、を含む。
第1アカウントに関する情報に含まれる当該ユーザIDは、第1プラットフォーム10の第1アカウントを有するユーザを一意に識別可能な情報である。本実施形態では、ユーザ登録により第1アカウントを取得した第1ユーザと、認証連携により第1アカウントを取得した第2ユーザとが、第1アカウントに関する情報に含まれる当該ユーザIDを用いて区別される。例えば、ユーザ登録により第1アカウントを取得した第1ユーザのユーザIDは、当該ユーザ登録の際に、ユーザ操作に基づいて又は自動的に決定されてもよい。一方、認証連携により第1アカウントを取得した第2ユーザのユーザIDは、当該認証連携の際に、所定の文字列をプレフィックス又はサフィックスとして含むように自動的に決定されてもよい。しかしながら、第1アカウントを取得した第1ユーザ及び第2ユーザを区別して管理する方法はこれに限られない。例えば、第1アカウントに関する情報は、ユーザIDに対応するユーザが、ユーザ登録及び認証連携の何れにより第1アカウントを取得したかを示すフラグを更に含んでもよい。以下、ユーザ登録により第1アカウントを取得した第1ユーザのユーザIDを、通常IDともいう。認証連携により第1アカウントを取得した第2ユーザのユーザIDを、特定IDともいう。例えば、図3に示すユーザID「U1-01」は通常IDであり、ユーザID「U1-02S」は特定IDである。
パスワードは、ユーザ登録により第1アカウントを取得した第1ユーザについて設定される。例えば、当該パスワードは、ユーザが第1プラットフォーム10にユーザ登録を行う際に、ユーザ操作に基づいて又は自動的に決定されてもよい。例えば図3に示すように、パスワードは、ユーザID「U1-01(通常ID)」について設定されている一方、ユーザID「U1-02S(特定ID)」については設定されていない。ユーザ登録により第1アカウントを取得した第1ユーザは、通常ID及びパスワードを用いて第1プラットフォーム10にログイン可能である。
認証済みIDは、認証連携により第1アカウントを取得した第2ユーザについて設定される。例えば図3に示すように、認証済みIDは、ユーザID「U1-01(通常ID)」については設定されていない一方、ユーザID「U1-02S(特定ID)」については設定されている。認証済みIDは、第2プラットフォーム20によって認証された第2ユーザを一意に識別可能な情報である。認証済みIDは、例えば第2プラットフォーム20によって生成されたIDトークンを含んでもよい。認証連携により第1アカウントを取得した第2ユーザは、ユーザID及び認証済みIDを用いて第1プラットフォーム10にログイン可能である。
第1ゲームデータは、ユーザがプレイした各第1ゲームに関する任意の情報を含む。例えば、第1ゲームデータは、ユーザによってプレイされた第1ゲームのセーブデータを含んでもよい。例えば、第1ゲームデータを用いて、過去に中断した第1ゲームが再開可能である。
第1仮想通貨は、ユーザ登録により第1アカウントを取得した第1ユーザが第1プラットフォーム10上で保有する仮想通貨である。第1仮想通貨は、第1ユーザが第1プラットフォーム10の各種機能を利用するために用いられる。例えば、第1ユーザは、第1仮想通貨を消費して、第1ゲーム内でアイテム又はキャラクタ等のゲーム媒体を取得可能であってもよい。本実施形態において、第1ユーザ、即ちユーザ登録により第1アカウントを取得したユーザのみ、第1仮想通貨を取得可能である。例えば、第1ユーザは、第1プラットフォーム10の決済機能を利用して第1仮想通貨を購入可能である。一方、認証連携により第1アカウントを取得した第2ユーザは、第1仮想通貨を取得できない。例えば、当該第2ユーザは、第1プラットフォーム10の決済機能を利用できない。しかしながら後述するように、第2ユーザは、第1仮想通貨に替えて、当該第2ユーザが第2プラットフォーム20上で保有する第2仮想通貨を消費することによって、第1プラットフォーム10の機能を利用可能であってもよい。
第1サーバ記憶部111に記憶される情報は、上述した例に限られない。第1サーバ記憶部111は、第1サーバ装置11の動作に用いられる任意の情報を更に記憶してもよい。
図1に示す第1サーバ制御部112は、1つ以上のプロセッサを含む。プロセッサは、汎用のプロセッサ、及び特定の処理に特化した専用のプロセッサを含んでもよい。第1サーバ制御部112は、第1サーバ装置11全体の動作を制御する。第1サーバ制御部112によって制御される第1サーバ装置11の動作の詳細については後述する。
(第2サーバ装置の構成)
図4を参照して、第2サーバ装置21の構成について具体的に説明する。第2サーバ装置21は、第2サーバ通信部210と、第2サーバ記憶部211と、第2サーバ制御部212と、を備える。
第2サーバ通信部210は、外部装置と無線又は有線によって通信し、情報の送受信を行う1つ以上のインタフェースを含む。第2サーバ通信部210は、例えば無線LAN通信モジュール又は有線LAN通信モジュール等を含んでもよい。第2サーバ通信部210は、ネットワーク40と通信可能に接続される。
第2サーバ記憶部211は、1つ以上のメモリを含む。第2サーバ記憶部211に含まれる各メモリは、例えば主記憶装置、補助記憶装置、又はキャッシュメモリとして機能してもよい。第2サーバ記憶部211は、第2サーバ装置21に内蔵されてもよく、或いは任意のインタフェースを介して第2サーバ装置21に接続されてもよい。第2サーバ記憶部211は、第2サーバ装置21の動作に用いられる情報及びプログラムを記憶する。
例えば、第2サーバ記憶部211は、第2アカウントを有する各ユーザに関する情報を記憶する。例えば図5に示すように、第2アカウントを有するユーザに関する情報は、第2アカウントに関する情報と、第2ゲームデータと、第2仮想通貨と、を含む。図5では説明の簡便のため、第2アカウントを有する1人のユーザに関する情報を図示している。
第2アカウントに関する情報は、ユーザの第2アカウントに固有の任意の情報を含む。例えば、第2アカウントに関する情報は、ユーザIDと、パスワードと、を含む。
第2アカウントに関する情報に含まれる当該ユーザIDは、第2プラットフォーム20の第2アカウントを有するユーザを一意に識別可能な情報である。例えば、ユーザ登録により第2アカウントを取得した第2ユーザのユーザIDは、当該ユーザ登録の際に、ユーザ操作に基づいて又は自動的に決定されてもよい。
パスワードは、第2アカウントを取得したユーザについて設定される。例えば、当該パスワードは、ユーザが第2プラットフォーム20にユーザ登録を行う際に、ユーザ操作に基づいて又は自動的に決定されてもよい。第2ユーザは、通常ID及びパスワードを用いて第2プラットフォーム20にログイン可能である。
第2ゲームデータは、ユーザがプレイした各第2ゲームに関する任意の情報を含む。例えば、第2ゲームデータは、ユーザによってプレイされた第2ゲームのセーブデータを含んでもよい。例えば、第2ゲームデータを用いて、過去に中断した第2ゲームが再開可能である。
第2仮想通貨は、ユーザ登録により第2アカウントを取得した第2ユーザが第2プラットフォーム20上で保有する仮想通貨である。第2仮想通貨は、第2ユーザが第2プラットフォーム20の各種機能を利用するために用いられる。例えば、第2ユーザは、第2仮想通貨を消費して、第2ゲーム内でアイテム又はキャラクタ等のゲーム媒体を取得可能であってもよい。本実施形態において、認証連携により第1アカウントを取得した第2ユーザは、第1プラットフォーム10の機能を利用する際、第2仮想通貨を消費することによって、第1プラットフォーム10の機能を利用可能であってもよい。
第2サーバ記憶部211に記憶される情報は、上述した例に限られない。第2サーバ記憶部211は、第2サーバ装置21の動作に用いられる任意の情報を更に記憶してもよい。例えば、第2サーバ記憶部211は、各第2ゲームの識別情報と、認証連携による第1アカウントを有する第2ユーザに提供される各第1ゲームの識別情報と、を更に記憶してもよい。ゲームの識別情報は、例えば、当該ゲームの提供者が第2プラットフォーム20に対してゲームのアプリケーション登録(配信手続き)を行う際に、第2サーバ記憶部211に記憶される。
図4に示す第2サーバ制御部212は、1つ以上のプロセッサを含む。第2サーバ制御部212は、第2サーバ装置21全体の動作を制御する。第2サーバ制御部212によって制御される第2サーバ装置21の動作の詳細については後述する。
(端末装置の構成)
図1を参照して、端末装置30の構成について具体的に説明する。端末装置30は、端末通信部31と、端末記憶部32と、表示部33と、入力部34と、端末制御部35とを備える。
端末通信部31は、外部装置と無線又は有線によって通信し、情報の送受信を行うインタフェースを含む。端末通信部31は、例えばLTE(Long Term Evolution)(登録商
標)等のモバイル通信規格に対応する無線通信モジュール、無線LAN通信モジュール、又は有線LAN通信モジュール等を含んでもよい。端末通信部31は、ネットワーク40と通信可能に接続される。
端末記憶部32は、1つ以上のメモリを含む。端末記憶部32に含まれる各メモリは、例えば主記憶装置、補助記憶装置、又はキャッシュメモリとして機能してもよい。端末記憶部32は、端末装置30に内蔵されてもよく、或いは任意のインタフェースを介して端末装置30に接続されてもよい。端末記憶部32は、端末装置30の動作に用いられる情報及びプログラムを記憶する。
例えば、端末記憶部32は、第1プラットフォーム10及び第2プラットフォーム20の機能を利用可能なアプリケーションを記憶する。本実施形態では、当該アプリケーションは、汎用のウェブブラウザである。ユーザは、当該アプリケーション上で、第1プラットフォーム10及び第2プラットフォーム20の機能を利用可能である。例えば、第1ゲーム及び第2ゲームは、ウェブブラウザを介して実行されるブラウザゲームであってもよい。ブラウザゲームは、サーバと端末とが協働して実行される。例えば、ユーザ操作の検出及び情報の表示が端末側で実行され、ゲームの処理がサーバ側で実行される。しかしながら、当該アプリケーションは、汎用のウェブブラウザに限られず、例えば第1プラットフォーム10に専用のアプリケーション、及び第2プラットフォーム20に専用のアプリケーションが用いられてもよい。
端末記憶部32に記憶される情報は、上述した例に限られない。端末記憶部32は、端末装置30の動作に用いられる任意の情報を更に記憶してもよい。
表示部33は、例えば液晶ディスプレイ又は有機ELディスプレイ等の表示デバイスを含む。表示部33は、多様な画面を表示可能である。
入力部34は、ユーザ操作を受け付ける任意の入力インタフェースを含む。入力インタフェースは、例えばマウス等のポインティングデバイス、物理キー、及び表示部33と一体的に設けられたタッチパネル等を含んでもよい。
端末制御部35は、1つ以上のプロセッサを含む。端末制御部35は、端末装置30全体の動作を制御する。端末制御部35によって制御される端末装置30の動作の詳細については後述する。
(情報処理システムの動作)
情報処理システム1の第1動作について説明する。概要として、第1動作は、第2アカウントを有する第2ユーザに対して、認証連携による第1アカウントを付与する動作を含む。
端末装置30は、例えば汎用のウェブブラウザのアプリケーションを起動し、第2アカウントに関する情報(例えば、ユーザID及びパスワード)を用いて第2プラットフォーム20にログインする。端末装置30は、第2サーバ装置21から受信する情報を用いて、複数のゲームが選択可能に表示される画面を表示する。当該複数のゲームは、1つ以上の第2ゲームと、1つ以上の第1ゲームと、を含んでもよい。例えば図6に示す当該画面2_1は、3つのゲームボタン500~502と、第2フッター領域503と、を含む。
第2フッター領域503は、端末装置30が第2プラットフォーム20にアクセスしているときに、例えば画面内の下方部分に表示され得る領域である。第2フッター領域503には、第2プラットフォーム20に関する任意の情報が選択可能に表示される。詳細には、第2サーバ装置20は、端末装置30からのアクセスに応じて、第2フッター領域503に表示させる情報を端末装置30へ送信する。端末装置30は、当該情報を選択可能に表示する。例えば、第2フッター領域503には、第2プラットフォーム20の利用規約へのリンク、及び第2ユーザに関する画面(例えば、マイページ等)のリンク等が表示されてもよい。
各ゲームボタン500~502は、対応するゲームを開始するためのユーザ操作を受け付けるGUI(Graphical User Interface)である。端末装置30は、ゲームボタン500、501、又は502に対するユーザ操作を受け付けると、対応するゲームの開始要求を送信する。
例えば、2つのゲームボタン500及び501は、それぞれ第2プラットフォーム20から提供される第2ゲームA2及びB2に対応する。端末装置30は、ゲームボタン500又は501に対するユーザ操作を受け付けると、対応する第2ゲームの開始要求を第2サーバ装置21へ送信する。第2サーバ装置21は、第2ユーザの第2アカウントに関する情報(例えば、ユーザID)を用いて、第2ゲームを第2ユーザに提供する。具体的には、第2サーバ装置21は、第2ユーザのユーザIDに対応する、第2ゲームの第2ゲームデータが第2サーバ記憶部211に記憶されている場合、当該第2ゲームデータを読み出す。第2サーバ装置21は、第2ゲームの開始指示を端末装置30へ送信する。当該開始指示は、第2ゲームの実行に用いられる任意の情報を含んでもよい。端末装置30は、当該開始指示に基づいて、第2ゲームを開始する。
第2サーバ装置21は、第2ゲームが開始されたことに基づく処理を実行してもよい。例えば、当該処理は、第2ユーザと第2ゲームとを関連付ける(例えば、第2ユーザの「マイゲーム」に第2ゲームを登録する)処理、第2ユーザと第2ゲームの公式アカウントとを関連付ける(例えば、第2ユーザの「友達」に第2ゲームの公式アカウントを登録する)処理、及び第2ゲームに関する情報の配信(例えば、第2ゲームに関する通知等)の設定処理等が含まれてもよいが、これらに限られない。
端末装置30は、第2サーバ装置21と協働して、第2ゲームを進行させる。第2ゲームの進行に応じて、第2サーバ装置21は、当該第2ゲームの第2ゲームデータを、第2ユーザのユーザIDに対応付けて第2サーバ記憶部211に記憶し、又は更新する。
一方、ゲームボタン502は、第1プラットフォーム10から提供される第1ゲームA1に対応する。端末装置30は、ゲームボタン502に対するユーザ操作を受け付けると、第1ゲームA1から提供されるゲームであることをユーザに確認させる画面を表示する。例えば図7に示す当該画面2_2は、第2フッター領域503と、メッセージ504と、実行ボタン505と、を含む。
第2フッター領域503は、図6に示す画面2_1の第2フッター領域503と同様である。メッセージ504は、例えば第1ゲームA1の提供元が第1プラットフォーム10であること、及び第1ゲームA1を開始するために第1プラットフォーム10にアクセスすることをユーザに確認させるメッセージであるが、メッセージ504の内容はこれに限られない。
実行ボタン505は、第1ゲームA1を開始するためのユーザ操作を受け付けるGUIである。端末装置30は、実行ボタン505に対するユーザ操作を受け付けると、第1ゲームA1の開始要求を第2サーバ装置21へ送信する。第2サーバ装置21は、端末装置30を第1サーバ装置11にリダイレクトする。第1サーバ装置11は、端末装置30との間に有効なログインセッションが存在するか否かを判定する。
具体的には、第1サーバ装置11は、端末装置30の第2ユーザが上述した特定IDを用いて第1プラットフォーム10にログイン済みであることを示すセッションデータが第1サーバ記憶部111に記憶されている場合、有効なログインセッションが存在すると判定する。かかる場合、第1サーバ装置11は、後述するように第2ユーザの特定IDを用いて第1ゲームA1を第2ユーザに提供する。具体的には、第1サーバ装置11は、第2ユーザの特定IDに対応する、第1ゲームA1の第1ゲームデータを特定する。第1サーバ装置11は、特定された第1ゲームデータを用いて第1ゲームA1の開始指示を端末装置30へ送信する。当該開始指示は、第1ゲームA1の実行に用いられる任意の情報を含んでもよい。端末装置30は、当該開始指示に基づいて、第1ゲームA1を開始する。
一方、第1サーバ装置11は、当該セッションデータが第1サーバ記憶部111に記憶されていない場合、有効なログインセッションが存在しないと判定する。かかる場合、第1サーバ装置11は、認証連携を行うために、端末装置30を第2サーバ装置21にリダイレクトする。第2サーバ装置21は、端末装置30との間に有効なログインセッションが存在するか否かを判定する。
有効なログインセッションが存在すると判定された場合、第2サーバ装置21は、認証済みIDを生成する。認証済みIDは、例えばIDトークンであってもよい。IDトークンは、第1プラットフォーム10の識別子、第2プラットフォーム20の識別子、第2ユーザの識別子、及び生成日時等の情報を含んでもよい。第2サーバ装置21は、認証済みIDを端末装置30へ送信するとともに、端末装置30を第1サーバ装置11にリダイレクトする。リダイレクトの際、端末装置30は、当該認証済みIDを第1サーバ装置11へ送信する。
一方、有効なログインセッションが存在しないと判定された場合、第2サーバ装置21は、後述する認証画面の表示指示を端末装置30へ送信する。端末装置30は、当該表示指示に基づいて認証画面を表示する。
認証画面は、例えば第2ユーザの第2アカウントに関する情報(例えば、ユーザID及びパスワード)の入力を受け付ける画面である。例えば、図8に示す画面2_3は、認証画面の例である。画面2_3は、第2フッター領域503と、第1入力フォーム506と、第2入力フォーム507と、認証ボタン508と、を含む。
第2フッター領域503は、図6に示す画面2_1の第2フッター領域503と同様である。第1入力フォーム506は、第2アカウントに関する情報のうちユーザIDの入力を受け付ける。第2入力フォーム507は、第2アカウントに関する情報のうちパスワードの入力を受け付ける。認証ボタン508は、ユーザ認証を行うためのユーザ操作を受け付けるGUIである。端末装置30は、認証ボタン508に対するユーザ操作を受け付けると、第1入力フォーム506及び第2入力フォーム507にそれぞれ入力されたユーザID及びパスワードを含むユーザ認証要求を、第2サーバ装置21へ送信する。
第2サーバ装置21は、ユーザ認証要求を受信すると、第2アカウントに関する情報を用いて認証された認証済みIDを生成する。具体的には、第2サーバ装置21は、ユーザ認証要求に含まれるユーザID及びパスワードが、第2サーバ記憶部211に記憶された第2ユーザのユーザID及びパスワードと一致する場合、認証済みIDを生成する。第2サーバ装置21は、認証済みIDを端末装置30へ送信するとともに、端末装置30を第1サーバ装置11にリダイレクトする。リダイレクトの際、端末装置30は、当該認証済みIDを第1サーバ装置11へ送信する。
第1サーバ装置11は、端末装置30を介して認証済みIDを受信する。第1サーバ装置11は、受信した認証済みIDを用いて、第2ユーザが認証連携による第1アカウントを有しているか否かを判定する。
具体的には、第1サーバ装置11は、当該認証済みIDに対応するユーザID、即ち特定IDが第1サーバ記憶部111に記憶されている場合、第2ユーザが認証連携による第1アカウントを有していると判定する。かかる場合、第1サーバ装置11は、第2ユーザの特定IDを用いて第1ゲームA1を第2ユーザに提供する。具体的には、第1サーバ装置11は、第2ユーザの特定IDに対応する、第1ゲームA1の第1ゲームデータを特定する。第1サーバ装置11は、特定された第1ゲームデータを用いて第1ゲームA1の開始指示を端末装置30へ送信する。当該開始指示は、第1ゲームA1の実行に用いられる任意の情報を含んでもよい。端末装置30は、当該開始指示に基づいて、第1ゲームA1を開始する。
一方、第1サーバ装置11は、当該認証済みIDに対応する特定IDが第1サーバ記憶部111に記憶されていない場合、第2ユーザが認証連携による第1アカウントを有していないと判定する。かかる場合、第1サーバ装置11は、後述する同意画面の表示指示を端末装置30へ送信する。端末装置30は、当該表示指示に基づいて同意画面を表示する。
同意画面は、第1プラットフォーム10の利用規約についての同意を第2ユーザに求めるための画面である。例えば、図9に示す画面1_1は、同意画面の例である。画面1_1は、表示領域509と、同意ボタン511と、第1フッター領域512と、を含む。
第1フッター領域512は、端末装置30が第1プラットフォーム10にアクセスしているときに、例えば画面内の下方部分に表示され得る領域である。画面1_1の第1フッター領域512には、第1プラットフォーム10及び第2プラットフォーム20の少なくとも一方に関する任意の情報が選択可能に表示される。詳細には、第1サーバ装置11は、端末装置30からのアクセスに応じて、第1フッター領域512に表示させる情報を端末装置30へ送信する。端末装置30は、当該情報を選択可能に表示する。例えば、画面1_1の第1フッター領域512には、第1プラットフォーム10の利用規約へのリンク、第2ユーザに関する画面(例えば、マイページ等)のリンク、及び第2ゲームの情報(例えば、第2ゲームの画像及び第2ゲームを開始するためのリンク)等が表示されてもよい。第1フッター領域512に表示された情報がユーザ操作に基づき選択された場合の動作の具体例については後述する。第1フッター領域512は、端末装置30が第1サーバ装置11から取得する情報に基づいて表示する多様な画面のそれぞれに設けられてもよい。表示領域509には、第1プラットフォーム10に関する任意の情報が表示される。例えば、表示領域509には、第1プラットフォーム10の利用規約又は当該利用規約のリンク、及び当該利用規約の同意をユーザに求めるメッセージ等が表示されてもよい。
ここで、第2ユーザ向けの利用規約の内容と、通常のユーザ登録により第1アカウントを取得する第1ユーザ向けの利用規約の内容とが異なってもよい。例えば、第2ユーザ向けの利用規約には、第1プラットフォーム10が提供する複数の第1ゲームのうち一部の第1ゲームのみプレイ可能である点、及び、第1プラットフォーム10側に提供されるユーザ情報の内容が第1ユーザ向けとは異なる点等に関する記載が含まれていてもよい。
同意ボタン511は、第1プラットフォーム10の利用規約に同意するためのユーザ操作を受け付けるGUIである。端末装置30は、同意ボタン511に対するユーザ操作を受け付けると、第2ユーザが第1プラットフォーム10の利用規約に同意したことを第1サーバ装置11に通知する。
第1サーバ装置11は、第2ユーザが第1プラットフォーム10の利用規約に同意したことを端末装置30から通知されると、特定IDを生成する。第1サーバ装置11は、認証済みIDと特定IDとを関連付けて、第1アカウントに関する情報として第1サーバ記憶部111に記憶する。認証済みID及び特定IDが関連付けて記憶されることによって、認証連携による第1アカウントが第2ユーザに付与される。第1サーバ装置11は、特定ID及び認証済みIDを用いて、第2ユーザを第1プラットフォーム10にログインさせる。
第1サーバ装置11は、当該特定IDを用いて第1ゲームA1を第2ユーザに提供する。具体的には、第1サーバ装置11は、第1ゲームA1の開始画面の表示指示を端末装置30へ送信する。当該表示指示は、当該開始画面の表示に用いられる任意の情報を含んでもよい。端末装置30は、第1ゲームA1の開始画面を表示する。例えば図10に示す画面1_2は、開始画面の例である。画面1_2は、タイトル画像513と、開始ボタン514と、第1フッター領域512と、を含む。画面1_2の第1フッター領域512には、第2プラットフォーム20に関する任意の情報が選択可能に表示される。画面1_2の第1フッター領域512は、例えば、上述した第2フッター領域503を模した構成であってもよい。画面1_2の第1フッター領域512には、例えば第2ユーザに対して提供可能な第1ゲーム又は機能へのリンク等を除き、第1プラットフォーム10に関する情報が表示されなくてもよい。タイトル画像513は、第1ゲームA1のタイトル等を示す任意の画像である。開始ボタン514は、第1ゲームA1を開始するためのユーザ操作を受け付けるGUIである。端末装置30は、開始ボタン514に対するユーザ操作を受け付けると、第1ゲームA1を開始する。
第1サーバ装置11は、第1ゲームが開始されたことに基づく処理を実行してもよい。例えば、当該処理は、第2ユーザと第1ゲームとを関連付ける(例えば、第2ユーザの「マイゲーム」に第1ゲームを登録する)処理、第2ユーザと第1ゲームの公式アカウントとを関連付ける(例えば、第2ユーザの「友達」に第1ゲームの公式アカウントを登録する)処理、及び第1ゲームに関する情報の配信(例えば、第1ゲームに関する通知等)の設定処理等が含まれてもよいが、これらに限られない。
端末装置30は、第1サーバ装置11と協働して、第1ゲームA1を進行させる。例えば、端末装置30と第1サーバ装置11との間で、第1ゲームA1の進行に用いられる任意の情報が送受信されてもよい。第1ゲームA1の進行に応じて、第1サーバ装置11は、当該第1ゲームA1の第1ゲームデータを、第2ユーザの特定IDに対応付けて第1サーバ記憶部111に記憶し、又は更新する。
情報処理システム1の上述した第1動作によれば、第2プラットフォーム20を利用する第2ユーザは、認証連携による第1アカウントを取得することで、第1プラットフォーム10に対して通常のユーザ登録作業を行うことなく、第1プラットフォーム10の機能を利用可能である。したがって、第2プラットフォーム20に登録した第2ユーザに提供されるサービスの多様化が可能になる。また第2ユーザは、例えば第1プラットフォーム10に対して通常のユーザ登録作業を行うよりも簡素な手順で第1アカウントを取得できる。
次に、情報処理システム1の第2動作について説明する。概要として、第2動作は、端末装置30を使用するユーザの第1仮想通貨又は第2仮想通貨を消費することによって、第1ゲーム内で使用可能なゲーム媒体を当該ユーザに付与する動作を含む。
端末装置30は、第1ゲームの実行中に、当該第1ゲーム内で使用可能なゲーム媒体を購入するための購入画面を表示する。例えば図11に示す画面1_3は、購入画面の例である。画面1_3は、メッセージ515と、第1購入ボタン516と、第1フッター領域512と、を含む。
端末装置30のユーザが第2ユーザである場合、画面1_3の第1フッター領域512には、第2プラットフォーム20に関する任意の情報が選択可能に表示される。画面1_3の第1フッター領域512は、例えば、上述した第2フッター領域503を模した構成であってもよい。画面1_3の第1フッター領域512には、例えば第2ユーザに対して提供可能な第1ゲーム又は機能へのリンク等を除き、第1プラットフォーム10に関する情報が表示されなくてもよい。一方、端末装置30のユーザが第1ユーザである場合、第1フッター領域512には、第1プラットフォーム10に関する任意の情報が表示される。例えば、第1フッター領域512には、第1プラットフォーム10の利用規約へのリンク、及び第1ユーザに関する画面(例えば、マイページ等)のリンク等が表示されてもよい。
メッセージ515は、例えばゲーム媒体を購入することをユーザに確認させるメッセージであるが、メッセージ515の内容はこれに限られない。第1購入ボタン516は、ゲーム媒体の購入手続を進めるためのユーザ操作を受け付けるGUIである。第1購入ボタン516には、当該ゲーム媒体の価格が表示されてもよい。当該価格は、例えば第1仮想通貨及び第2仮想通貨の何れとも異なる単位(例えば、「コイン」との単位)で表示されてもよい。
端末装置30は、第1購入ボタン516に対するユーザ操作を受け付けると、ゲーム媒体の購入要求を第1サーバ装置11へ送信する。第1サーバ装置11は、購入要求を送信した端末装置30のユーザが第1ユーザであるか第2ユーザであるかを判定する。
端末装置30のユーザが第1ユーザである場合、第1サーバ装置11は、当該第1ユーザの第1仮想通貨を用いる決済処理の少なくとも一部を実行し、ゲーム媒体を第1ユーザに付与する。第1サーバ装置11が当該決済処理の一部のみを実行する場合、残りの部分は、例えば決済処理用サーバ等の任意の外部装置が実行してもよい。具体的には、第1サーバ装置11は、第1ユーザの第1仮想通貨を消費させるとともに、第1ゲーム内で当該第1ユーザにゲーム媒体を付与するように、当該第1ユーザの第1ゲームデータを更新する。
一方、端末装置30のユーザが第2ユーザである場合、第1サーバ装置11は、第2ユーザの第2仮想通貨を用いる決済処理を実行させるために、第2ユーザの認証済みID又は第2アカウントに関する情報に含まれるユーザIDと、第2ユーザが購入しようとするゲーム媒体に係る第1ゲームの識別情報と、を端末装置30へ送信するとともに、端末装置30を第2サーバ装置21にリダイレクトする。リダイレクトの際、端末装置30は、当該認証済みID又はユーザIDと、第1ゲームの識別情報と、を第2サーバ装置21へ送信する。第2サーバ装置21は、端末装置30を介して第1サーバ装置11から受信した第1ゲームの識別情報が、第2サーバ記憶部211に記憶されているか否かを判定する。
第1ゲームの識別情報が記憶されていないと判定された場合、第2サーバ装置21は、例えば第2ユーザによる購入要求が正規の要求ではないと判定し、決済処理を中止する。
一方、第1ゲームの識別情報が記憶されていると判定された場合、第2サーバ装置21は、端末装置30を介して第1サーバ装置11から受信した当該認証ID又はユーザIDが、端末装置30と第2サーバ装置21との間のログインセッションの認証ID又はユーザIDと一致するか否かを更に判定する。
両者が一致しないと判定された場合、第2サーバ装置21は、例えば第2ユーザによる購入要求が正規の要求ではないと判定し、決済処理を中止してもよい。或いは、第2サーバ装置21は、第2アカウントに関する情報を用いて第2プラットフォーム20への再ログインを端末装置30に要求してもよい。
一方、両者が一致すると判定された場合、又は第2ユーザが再ログインした場合、第2サーバ装置21は、当該第2ユーザの第2仮想通貨を用いる決済処理の実行を第2ユーザに確認させるための画面の表示指示を、端末装置30へ送信する。端末装置30は、当該表示指示に基づいて当該画面を表示する。例えば、図12に示す画面2_4は、当該画面の例である。画面2_4は、メッセージ517と、第2購入ボタン518と、第2フッター領域503と、を含む。
第2フッター領域503は、図6に示す画面2_1の第2フッター領域503と同様である。メッセージ517は、例えば購入対象であるゲーム媒体の名称、及び当該ゲーム媒体の価格を示すメッセージであるが、メッセージ517の内容はこれに限られない。第2購入ボタン518は、第2仮想通貨を用いる決済処理の実行要求を送信するためのユーザ操作を受け付けるGUIである。第2購入ボタン518には、当該ゲーム媒体の価格が、第2仮想通貨の単位で表示されてもよい。
端末装置30は、第2購入ボタン518に対するユーザ操作を受け付けると、第2仮想通貨を用いる決済処理の実行要求を第2サーバ装置21へ送信する。第2サーバ装置21は、当該実行要求に応じて、第2仮想通貨を用いる決済処理の少なくとも一部を実行する。第2サーバ装置21が当該決済処理の一部のみを実行する場合、残りの部分は、例えば決済処理用サーバ等の任意の外部装置が実行してもよい。具体的には、第2サーバ装置21は、第2ユーザの第2仮想通貨を消費させる。第2サーバ装置21は、端末装置30を第1サーバ装置11にリダイレクトする。第1サーバ装置11は、ゲーム媒体を第2ユーザに付与する。具体的には、第1サーバ装置11は、第1ゲーム内で当該第2ユーザにゲーム媒体を付与するように、当該第2ユーザの第1ゲームデータを更新する。
第1サーバ装置11は、第1ゲーム媒体が付与されたことを示す完了画面の表示指示を端末装置30へ送信してもよい。端末装置30は、当該表示指示に基づいて完了画面を表示する。例えば図13に示す画面1_4は、完了画面の例である。画面1_4は、メッセージ519と、OKボタン520と、第1フッター領域512と、を含む。画面1_4の第1フッター領域512には、第2プラットフォーム20に関する任意の情報が選択可能に表示される。画面1_2の第1フッター領域512は、例えば、上述した第2フッター領域503を模した構成であってもよい。画面1_4の第1フッター領域512には、例えば第2ユーザに対して提供可能な第1ゲーム又は機能へのリンク等を除き、第1プラットフォーム10に関する情報が表示されなくてもよい。メッセージ519は、例えばゲーム媒体が第2ユーザに付与されたことを示すメッセージであるが、メッセージ519の内容はこれに限られない。OKボタン520は、第1ゲームを再開するためのユーザ操作を受け付けるGUIである。端末装置30は、OKボタン520に対するユーザ操作を受け付けると、第1サーバ装置11と協働して、第1ゲームを再開する。
情報処理システム1の上述した第1動作によれば、認証連携による第1アカウントを有する第2ユーザが、第1ゲーム内で使用可能なゲーム媒体を購入する場合、第1プラットフォーム10が管理する第1仮想通貨ではなく、第2プラットフォーム20が管理する第2仮想通貨を用いる決済処理が実行される。かかる構成によれば、例えば以下に説明する不都合の発生が低減可能である。
例えば、認証連携により第1アカウントを取得した第2ユーザが、第1プラットフォーム10の第1ゲーム内で使用可能なゲーム媒体を購入する際に、第1プラットフォーム10により管理される第1仮想通貨を用いて当該ゲーム媒体を購入可能にすると、第2プラットフォーム20の管理者の収益が低下する等の不都合が発生し得る。したがって、第2プラットフォーム20の管理者は、第2ユーザに対して第1プラットフォーム10の第1ゲームをプレイ可能にする構成を積極的に採用できない場合がある。これに対して本実施形態によれば、第2ユーザが第1ゲーム内で使用可能なゲーム媒体を購入する際に、第2プラットフォーム20が管理する第2仮想通貨を用いて当該ゲーム媒体を購入可能である。このため、第2プラットフォーム20の管理者の収益が低下する等の不都合の発生が低減される。
次に、情報処理システム1の第3動作について説明する。概要として、第3動作は、認証連携による第1アカウントを有する第2ユーザが第1ゲームをプレイしているときに、第1ゲームを終了するとともに第2ゲームを開始させる動作を含む。
第2ユーザの端末装置30は、第1ゲームの実行中、例えば上述した第1フッター領域512において選択可能に表示される第2ゲームの情報(例えば、第2ゲームを開始するためのリンク)に対するユーザ操作を受け付けると、当該第2ゲームの開始要求を第1サーバ装置11へ送信する。第1サーバ装置11は、当該第2ゲームを開始させるために、端末装置30を第2サーバ装置21にリダイレクトする。
第2サーバ装置21は、第2ユーザの第2アカウントに関する情報(例えば、ユーザID)を用いて、当該第2ゲームを第2ユーザに提供する。具体的には、第2サーバ装置21は、第2ユーザのユーザIDに対応する、第2ゲームの第2ゲームデータが第2サーバ記憶部211に記憶されている場合、当該第2ゲームデータを読み出す。第2サーバ装置21は、第2ゲームの開始指示を端末装置30へ送信する。当該開始指示は、第2ゲームの実行に用いられる任意の情報を含んでもよい。端末装置30は、当該開始指示に基づいて、第2ゲームを開始する。端末装置30は、第2サーバ装置21と協働して、第2ゲームを進行させる。第2ゲームの進行に応じて、第2サーバ装置21は、当該第2ゲームの第2ゲームデータを、第2ユーザのユーザIDに対応付けて第2サーバ記憶部211に記憶し、又は更新する。
情報処理システム1の上述した第3動作によれば、認証連携による第1アカウントを有する第2ユーザは、例えば第1プラットフォーム10上で第1ゲームのプレイ中であっても、任意のタイミングで第2プラットフォーム20に復帰可能である。ここで、第2ユーザが第1プラットフォーム10にログインした後に表示される、例えば上述した画面1_2、1_3、又は1_4の第1フッター領域512のように、第1プラットフォーム10に関する情報(例えば、第1ユーザに対してのみ提供される第1ゲーム又は機能等へのリンク)を第1フッター領域512に表示させない構成によれば、例えば第2ユーザが第2プラットフォーム20から第1プラットフォーム10に流出する等、第2プットフォーム20側の不都合の発生が低減可能である。
(情報処理システムの動作フロー)
図14乃至16を参照して、情報処理システム1の上述した第1動作乃至第3動作のフローについて説明する。
図14は、情報処理システム1の上述した第1動作のフローチャートである。本フローチャートの前提として、第2ユーザが、端末装置30を用いて第2プラットフォーム20にログインしているものとする。
ステップS100:第2ユーザの端末装置30は、第1ゲームの開始要求を第2プラットフォーム20へ送信する。
ステップS101:第2プラットフォーム20は、端末装置30を第1プラットフォーム10にリダイレクトする。
ステップS102:第1プラットフォーム10は、端末装置30との間に有効なログインセッションが存在するか否かを判定する。有効なログインセッションが存在すると判定された場合(ステップS102-Yes)、プロセスはステップS113に進む。一方、有効なログインセッションが存在しないと判定された場合(ステップS102-No)、プロセスはステップS103に進む。
ステップS103:第1プラットフォーム10は、認証連携を行うために、端末装置30を第2プラットフォーム20にリダイレクトする。
ステップS104:第2プラットフォーム20は、認証画面の表示指示を端末装置30へ送信する。
ステップS105:端末装置30は、認証画面において受け付けたユーザ操作に応じて、第2アカウントに関する情報(例えば、ユーザID及びパスワード)を含むユーザ認証要求を第2プラットフォーム20へ送信する。
ステップS106:第2プラットフォーム20は、ユーザ認証要求を受信すると、第2アカウントに関する情報を用いて認証された認証済みIDを生成する。第2プラットフォーム20は、認証済みIDを端末装置30へ送信するとともに、端末装置30を第1プラットフォーム10にリダイレクトする。リダイレクトの際、端末装置30は、認証済みIDを第1プラットフォーム10へ送信する。
ステップS107:第1プラットフォーム10は、認証済みIDを受信する。
ステップS108:第1プラットフォーム10は、認証済みIDを用いて、第2ユーザが認証連携による第1アカウントを有しているか否かを判定する。第2ユーザが第1アカウントを有していると判定された場合(ステップS108-Yes)、プロセスはステップS113に進む。一方、第2ユーザが第1アカウントを有していないと判定された場合(ステップS108-No)、プロセスはステップS109に進む。
ステップS109:第1プラットフォーム10は、同意画面の表示指示を端末装置30へ送信する。
ステップS110:端末装置30は、同意画面において受け付けたユーザ操作に応じて、第2ユーザが認証連携を同意したことを第1プラットフォーム10に通知する。
ステップS111:第1プラットフォーム10は、第2ユーザが認証連携を同意したことを端末装置30から通知されると、特定IDを生成する。
ステップS112:第1プラットフォーム10は、認証済みIDと特定IDとを関連付けて、第1アカウントに関する情報として記憶する。
ステップS113:第1プラットフォーム10は、特定IDを用いて第1ゲームを第2ユーザに提供する。
ステップS114:端末装置30は、例えば開始画面において受け付けたユーザ操作に応じて、第1ゲームを開始する。
上述したように、認証画面を介して第2アカウントに関する情報を第2ユーザに入力させる動作は、省略されてもよい。かかる場合、本フローチャートにおいて、例えばステップS104及びS105等が適宜省略されてもよい。
図15は、情報処理システム1の上述した第2動作のフローチャートである。本フローチャートの前提として、認証連携による第1アカウントを有する第2ユーザが、端末装置30を用いて第1プラットフォーム10にログインし、第1ゲームをプレイしているものとする。
ステップS200:端末装置30は、第1ゲームの実行中に、当該第1ゲーム内で使用可能なゲーム媒体の購入要求を第1プラットフォーム10へ送信する。
ステップS201:第1プラットフォーム10は、購入要求を送信した端末装置30のユーザが第1ユーザであるか第2ユーザであるかを判定する。ここでは、端末装置30のユーザが第2ユーザであると判定される。第1プラットフォーム10は、端末装置30を第2プラットフォーム20にリダイレクトする。
ステップS202:第2プラットフォーム20は、第2仮想通貨を用いる決済処理の少なくとも一部を実行する。第2プラットフォーム20は、端末装置30を第1プラットフォーム10にリダイレクトする。
ステップS203:第1プラットフォーム10は、第1ゲーム内で第2ユーザにゲーム媒体を付与するように、当該第2ユーザの第1ゲームデータを更新する。
図16は、情報処理システム1の上述した第3動作のフローチャートである。本フローチャートの前提として、認証連携による第1アカウントを有する第2ユーザの端末装置30が、第1プラットフォーム10から受信した第2ゲームの情報(例えば、第2ゲームを開始するためのリンク)を、例えば第1フッター領域512において選択可能に表示しているものとする。
ステップS300:端末装置30は、画面上の第1フッター領域512において選択可能に表示された第2ゲームの情報がユーザ操作に基づき選択されると、当該第2ゲームの開始要求を第1プラットフォーム10へ送信する。
ステップS301:第1プラットフォーム10は、第2ゲームを開始させるために、端末装置30を第2プラットフォーム20にリダイレクトする。
ステップS302:第2プラットフォーム20は、第2ユーザの第2アカウントに関する情報(例えば、ユーザID)を用いて、第2ゲームを第2ユーザに提供する。
ステップS303:端末装置30は、例えばユーザ操作に応じて、第2ゲームを開始する。
以上述べたように、本実施形態に係る情報処理システム1において、第2ユーザの端末装置30は、当該第2ユーザの第2アカウントに関する情報を用いて認証された認証済みIDを第1プラットフォーム10へ送信する。第1プラットフォーム10は、認証済みIDを受信すると、特定IDを生成し、認証済みIDと特定IDとを関連付けて記憶し、特定IDを用いて第2ユーザに第1ゲームを提供する。かかる構成によれば、第2プラットフォーム20を利用する第2ユーザは、第2プラットフォーム20の各種機能に加えて、第1プラットフォーム10の各種機能を利用可能となる。したがって、第2プラットフォーム20に登録した第2ユーザに提供されるサービスの多様化が可能になる。
本発明を諸図面や実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。したがって、これらの変形や修正は本発明の範囲に含まれることに留意されたい。例えば、各手段、各ステップ等に含まれる機能等は論理的に矛盾しないように再配置可能であり、複数の手段やステップ等を1つに組み合わせたり、或いは分割したりすることが可能である。
例えば、上述した実施形態において、図14乃至図16を参照して情報処理システム1の動作のフローについて説明した。しかしながら、当該動作に含まれる一部のステップ、又は1つのステップに含まれる一部の動作が、省略されてもよい。論理的に矛盾しない範囲内において、複数のステップの順番が入替わってもよい。複数のステップの間に、任意の他のステップが存在してもよい。
また、上述した実施形態において、第1プラットフォーム10は、認証連携による第1アカウントを有する第2ユーザ(即ち、特定IDを用いて第1プラットフォーム10を利用する第2ユーザ)に対して、第1プラットフォーム10が提供する機能の一部の利用制限を実行してもよい。例えば、利用制限によって、第1プラットフォーム10が提供する機能のうち、チャットや伝言板等への書き込み機能の利用が禁止されてもよい。また、第1プラットフォーム10は、第2ユーザに対して、当該第2ユーザの個人情報を用いる本人認証(例えば、電話番号認証)の実行を要求してもよい。具体的には、第1プラットフォーム10は、第2ユーザの端末装置30に、当該本人認証を実行するための画面を表示させてもよい。第1プラットフォーム10は、当該本人認証が完了すると、上述の利用制限を解除してもよい。例えば、第1プラットフォーム10を利用するユーザのマナー向上のため、第1プラットフォーム10の管理者は、チャットや伝言板等への書き込み機能を利用したユーザによる書き込み内容を監査し、不適切な書き込みを行ったユーザを特定することが望ましい。これに対して、上述の構成によれば、本人認証が完了していない第2ユーザに対して、例えば当該書き込み機能の利用制限を実行し、本人認証が完了すると当該利用制限を解除可能である。したがって、例えば第2プラットフォーム20を利用する第2ユーザが不適切な書き込みを行った場合であっても、当該第2ユーザの特定が可能となる。このため、第1プラットフォーム10を利用するユーザのマナーが向上する蓋然性が高まる。
また、上述した実施形態において、ユーザが所有する仮想通貨を消費して、ゲーム内でゲーム媒体を取得する構成について説明した。しかしながら、仮想通貨の消費に応じて、ーム内で任意のゲーム効果を発生させる構成も可能である。ゲーム効果は、例えば所定時間の経過に応じて所定の処理が実行されるときの当該所定時間を短縮する効果、及び、例えばユーザがゲーム媒体を保有可能な数等の上限値を増加させる効果を含んでもよいが、これらに限られない。
また、上述した実施形態において、認証連携による第1アカウントを有する第2ユーザの端末装置30が第1プラットフォーム10にアクセスしているときに表示される各種画面に、第1フッター領域512が含まれる構成について説明した。一方、ユーザ登録による第1アカウントを有する第1ユーザの端末装置30が第1プラットフォーム10にアクセスしているときに表示される各種画面にも、第1フッター領域512が含まれてもよい。かかる構成において、第1ユーザと第2ユーザとで、第1フッター領域512に表示される情報が異なる。具体的には、認証連携による第1アカウントを有する第2ユーザの場合、第1フッター領域512には、上述したように第2プラットフォーム20に関する任意の情報が選択可能に表示される。一方、ユーザ登録による第1アカウントを有する第1ユーザの場合、第1フッター領域512には、第1プラットフォーム10に関する任意の情報が選択可能に表示される。当該情報は、例えば、第1プラットフォーム10の利用規約へのリンク、第1ユーザに関する画面(例えば、マイページ等)のリンク、及び第1ゲームの情報(例えば、第1ゲームの画像及び第1ゲームを開始するためのリンク)等を含んでもよいが、これらに限られない。かかる構成によれば、第1フッター領域512において、ユーザ登録による第1アカウントを有する第1ユーザに対しては第1プラットフォーム10に関する情報が表示される一方、認証連携による第1アカウントを有する第2ユーザに対しては第2プラットフォーム20に関する情報が表示される。このため、ユーザに応じて適切なプラットフォームの情報を提示できるので、ゲームの利便性が向上する。
また、上述した実施形態において、第2プラットフォーム20を利用する第2ユーザが第1プラットフォーム10との認証連携を行う構成について説明した。一方、第2プラットフォーム20を利用する第2ユーザと同様に、第3プラットフォームを利用する第3ユーザが第1プラットフォーム10との認証連携を行う構成も可能である。かかる構成において、第1プラットフォーム10は、第2プラットフォーム20との認証連携による第1アカウントを有する第2ユーザと、第3プラットフォームとの認証連携による第1アカウントを有する第3ユーザと、を区別して管理してもよい。それぞれ第1アカウントを有する第2ユーザと第3ユーザとで、第1プラットフォーム10の利用可能な機能が異なってもよい。例えば、第1プラットフォーム10は、ユーザ登録により第1アカウントを取得した第1ユーザに対しては複数の第1ゲームを提供する一方、認証連携により第1アカウントを取得した第2ユーザ及び第3ユーザに対しては、当該複数の第1ゲームのうち一部の第1ゲームのみを提供してもよい。ここで、第2ユーザと第3ユーザとで、第1プラットフォーム10から提供される第1ゲームが異なってもよい。このように、本発明の実施形態は、3つ以上の異なるプラットフォームが存在する場合においても実施可能である。
また、上述した実施形態において、第1プラットフォーム10は、ユーザ登録による第1アカウントを有する第1ユーザに対しては、第1仮想通貨に関する任意の機能(例えば、第1仮想通貨の購入機能、取得機能、及び消費機能等)を利用可能とする一方、認証連携による第1アカウントを有する第2ユーザに対しては、第1仮想通貨に関する当該機能の利用を禁止してもよい。例えば、第1プラットフォーム10は、第2ユーザの端末装置30から第1仮想通貨に関する機能の利用要求を受信した場合、端末装置30に対してエラーを返してもよい。
また、上述した実施形態において、端末装置30に表示される画面の少なくとも一部を、第1プラットフォーム10又は第2プラットフォーム20が作成したデータに基づいて端末装置30に表示させるウェブ表示とし、画面の少なくとも一部を、端末装置30にインストールされているネイティブアプリケーションによって表示させるネイティブ表示としてもよい。このように、上述した実施形態に係るゲームは、第1プラットフォーム10若しくは第2プラットフォーム20及び端末装置30のそれぞれが処理の一部を担うハイブリッドゲームとすることもできる。
また、上述した実施形態に係る第1サーバ装置11、第2サーバ装置21、又は端末装置30として機能させるために、コンピュータ又は携帯電話等の情報処理装置を好適に用いることができる。このような情報処理装置は、実施形態に係る第1サーバ装置11、第2サーバ装置21、又は端末装置30の各機能を実現する処理内容を記述したプログラムを、情報処理装置のメモリに格納し、情報処理装置のプロセッサによって当該プログラムを読み出して実行させることによって実現可能である。
以下に、本願の原出願の出願当初の特許請求の範囲に記載された発明を付記する。
[1]
第2アカウントを有する第2ユーザに第2ゲームを提供する第2プラットフォームとして機能する1つ以上のサーバ装置と、1つ以上の端末装置と、を備える情報処理システムであって、
前記1以上の端末装置は、前記第2ユーザの第2ユーザ端末装置を含み、
前記第2ユーザ端末装置は、前記第2ユーザの前記第2アカウントに関する情報を前記第2プラットフォームへ送信し、
前記第2プラットフォームは、前記第2アカウントに関する前記情報を用いて認証した、前記第2ユーザの認証済みIDを前記第2ユーザ端末装置へ送信し、
前記第2ユーザ端末装置は、
前記認証済みIDを、第1アカウントを有する第1ユーザに通常IDを用いて第1ゲームを提供する第1プラットフォームへ送信し、
前記第1プラットフォームによって生成され前記認証済みIDに関連付けられた特定IDを用いて前記第2ユーザに提供される前記第1ゲームを開始する、
情報処理システム。
[2]
前記1以上の端末装置は、前記第1ユーザの第1ユーザ端末装置を含み、
前記第1ユーザ端末装置は、前記第1ゲームの実行中に、ゲーム媒体の購入要求を前記第1プラットフォームへ送信し、
前記第1プラットフォームは、前記購入要求を受信すると、前記第1ユーザ端末装置を前記第2プラットフォームにリダイレクトし、前記購入要求に関する決済処理の少なくとも一部を前記第2プラットフォームに実行させる、
請求項1に記載の情報処理システム。
[3]
[前記第1プラットフォームは、前記第2ゲームの情報を前記第1ユーザ端末装置へ送信し、
前記第1ユーザ端末装置は、
前記第2ゲームの前記情報を選択可能に表示し、
前記第2ゲームの前記情報が選択されると、前記第2ゲームの開始要求を前記第1プラットフォームへ送信し、
前記第1プラットフォームは、前記開始要求を受信すると、前記第1ユーザ端末装置を前記第2プラットフォームにリダイレクトし、前記第2ゲームを前記第1ユーザ端末装置に開始させる、
請求項1又は2に記載の情報処理システム。
[4]
前記第1プラットフォームは、
前記第1アカウントを有する前記第1ユーザに複数の前記第1ゲームを提供し、
前記特定IDを用いる前記第2ユーザに前記複数の第1ゲームのうち一部の第1ゲームのみを提供する、
請求項1から3のいずれか一項に記載の情報処理システム。
[5]
前記第1プラットフォームは、
前記特定IDを用いる前記第2ユーザに対して、前記第1プラットフォームが提供する機能の一部の利用制限を実行し、
前記第2ユーザに対して、前記第2ユーザの個人情報を用いる本人認証の実行を要求し、
前記本人認証が完了すると前記利用制限を解除する、
請求項1から4のいずれか一項に記載の情報処理システム。
[6]
通信部と、制御部と、を備える端末装置であって、
前記通信部は、第1アカウントを有する第1ユーザに通常IDを用いて第1ゲームを提供する第1プラットフォームとして機能する1つ以上のサーバ装置と通信可能であり、
前記制御部は、
第2アカウントを有する第2ユーザに第2ゲームを提供する第2プラットフォームへ、前記第2アカウントに関する情報を用いるユーザ認証要求を送信し、
前記ユーザ認証要求に応じて前記第2プラットフォームにより認証された、前記第2ユーザの認証済みIDを、前記第1プラットフォームへ送信し、
前記第1プラットフォームによって生成され前記認証済みIDに関連付けられた特定IDを用いて前記第2ユーザに提供される前記第1ゲームを開始する、
端末装置。
[7]
端末装置に、
第1アカウントを有する第1ユーザに通常IDを用いて第1ゲームを提供する第1プラットフォームとして機能する1つ以上のサーバ装置と通信するステップと、
第2アカウントを有する第2ユーザに第2ゲームを提供する第2プラットフォームへ、前記第2アカウントに関する情報を用いるユーザ認証要求を送信するステップと、
前記ユーザ認証要求に応じて前記第2プラットフォームにより認証された、前記第2ユーザの認証済みIDを、前記第1プラットフォームへ送信するステップと、
前記第1プラットフォームによって生成され前記認証済みIDに関連付けられた特定IDを用いて前記第2ユーザに提供される前記第1ゲームを開始するステップと、
を実行させる、プログラム。