情報処理システム、情報処理方法、情報処理プログラム、情報処理プログラムを記憶したコンピュータ読み取り可能な記録媒体
【課題】専用の装置で実行されるよう作成されたゲームプログラムに新たな楽しみ方を付加することのできる情報処理システム等を提供する。
【解決手段】情報処理システムであって、ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポートと、前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行する実行手段と、前記各ポートへ前記各操作装置を割り当てる割当手段と、を有し、前記割当手段は、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する。
【解決手段】情報処理システムであって、ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポートと、前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行する実行手段と、前記各ポートへ前記各操作装置を割り当てる割当手段と、を有し、前記割当手段は、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する。
【発明の詳細な説明】
【技術分野】
【0001】
情報処理システム、情報処理方法、情報処理プログラム、情報処理プログラムを記憶したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【0002】
専用の装置で実行されるよう作成されたゲームプログラムを、エミュレータを用いて、異なる装置等で実行する技術が知られている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、上記のような場合において、当該ゲームプログラムが例えば1のプレイヤーのみでプレイされるよう作成されているような場合に、例えば、複数人でプレイしたい場合がある。また、当該ゲームプログラムが複数のプレイヤーが順番にボールを打つようなゴルフゲームである場合等において、サーバ型ゲーム実行システムにおいて当該ゴルフゲームを実行する場合、当該サーバと1のプレイヤーに対応する操作装置との接続が中断されたような場合には、当該ゴルフゲームを進行することが困難となる。また、当該ゲームプログラムが、例えば、1のコントローラの複数のボタンを用いて操作対象を操作するよう作成されているような場合に、当該複数のボタンを複数のユーザで分担して担当したい場合がある。
【0004】
本発明は、専用の装置で実行されるよう作成されたゲームプログラムに新たな楽しみ方、例えば、複数人で1のゲームをプレイすることのできるソーシャルゲームを実現する等、を付加することのできる情報処理システム等を提供することを目的とする。
【課題を解決するための手段】
【0005】
本発明の情報処理システムは、ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポートと、前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行する実行手段と、前記各ポートへ前記各操作装置を割り当てる割当手段と、を有し、前記割当手段は、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、ことを特徴とする。
【0006】
本発明の情報処理方法は、ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポートの前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行し、前記各ポートへ前記各操作装置を割り当て、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、ことを特徴とする。
【0007】
本発明の情報処理プログラムは、ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポート手段、前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行する実行手段、及び、前記各ポートへ前記各操作装置を割り当てる割当手段、としてコンピュータを機能させるための情報処理プログラムであって、前記割当手段は、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、ことを特徴とする。
【発明の効果】
【0008】
専用の装置で実行されるよう作成されたゲームプログラムに新たな楽しみ方、例えば、複数人で1のゲームをプレイすることのできるソーシャルゲームを実現する等、を付加することのできる情報処理システム等を提供できる。
【図面の簡単な説明】
【0009】
【図1】本発明の実施の形態における情報処理システムについて説明するための図である。
【図2】端末の構成を説明するための図である。
【図3】端末の外観の一例を示す図である。
【図4】サーバの機能的な構成について説明するための図である。
【図5】操作情報取得部で取得される操作情報の一例について説明するための図である。
【図6】割当テーブルの一例を示す図である。
【図7A】割当テーブルの他の一例を示す図である。
【図7B】割当テーブルの他の一例を示す図である。
【図8】本実施の形態における情報処理システムの処理のフローの一例を示す図である。
【図9A】割当変更の際に表示される画面の一例を示す図である。
【図9B】割当変更の際に表示される画面の一例を示す図である。
【図9C】割当変更の際に表示される画面の一例を示す図である。
【図9D】割当変更の際に表示される画面の一例を示す図である。
【図10A】変更された割当テーブルの一例を示す図である。
【図10B】変更された割当テーブルの一例を示す図である。
【図11】本発明の変形例1における割当テーブルの一例を示す図である。
【図12】本発明の変形例2における割当テーブルの一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の実施形態について、図面を参照しつつ説明する。なお、図面については、同一又は同等の要素には同一の符号を付し、重複する説明は省略する。
【0011】
図1は、本発明の実施の形態における情報処理システムについて説明するための図である。図1に示すように、本発明の情報処理システムは、サーバ101、ネットワーク102、及び、複数の端末103を含む。サーバ101は、制御部104、記憶部105、通信部106を含む。各部104乃至105は、バス107を介して接続される。なお、図1においては、3の端末103を示しているが、当該端末103は異なる数であってもよい。
【0012】
制御部104は、例えば、CPUやMPU等であって、記憶部105に格納されたプログラムに従って動作する。記憶部105は、例えば、ハードディスクドライブやROMやRAM等の情報記録媒体で構成され、制御部104によって実行されるプログラムを保持する情報記録媒体である。また、記憶部105は、制御部104のワークメモリとしても動作する。なお、上記制御部104で処理されるプログラムは、例えば、ネットワーク102を介して、ダウンロードされて提供されてもよいし、または、CD−ROMやDVD−ROM等のコンピュータで読み取り可能な各種の情報記録媒体によって提供されてもよい。
【0013】
通信部106は、例えば、ネットワーク102インターフェースであって、制御部104からの指示にしたがって、ネットワーク102を介して、情報を送受信する。
【0014】
図2は端末の構成を説明するための図である。図2に示すように、端末103は、制御部201、通信部202、記憶部203、表示部204、操作部205を含む。なお、各部201−205は、バス206を介して接続される。サーバ101と同様に、制御部201は、例えば、CPUやMPU等であって、記憶部203に格納されたプログラムに従って動作する。記憶部203は、例えば、ハードディスクやROMやRAM等の情報記録媒体で構成され、制御部201によって実行されるプログラムを保持する情報記録媒体である。また、記憶部203は、制御部201のワークメモリとしても動作する。なお、上記制御部201で処理されるプログラムは、例えば、ネットワーク102を介して、ダウンロードされて提供されてもよいし、または、CD−ROMやDVD−ROM等のコンピュータで読み取り可能な各種の情報記録媒体によって提供されてもよい。通信部202は、例えば、ネットワークインターフェースであって、制御部201からの指示にしたがって、ネットワーク102を介して、情報を送受信する。
【0015】
操作部205は、例えば、キーボード、マウス、コントローラ、ボタン等のインターフェースで構成され、ユーザの指示操作に応じて、当該指示操作の内容を制御部201に出力する。なお、端末103は、複数の操作部205、例えば、2以上のコントローラ等、を有してもよい。また、特許請求の範囲に記載の操作装置は、例えば、当該操作部205に相当する。
【0016】
表示部204は、例えば、液晶ディスプレイ、CRTディスプレイ、または有機ELディスプレイ等であって、制御部201からの指示に従い、情報を表示する。なお、上記は端末103の構成の一例であってこれに限定されるものではない。
【0017】
図3は、端末103の外観の一例を示す図である。図3に示すように、端末103は、例えば、操作部205として、方向キー301、複数のボタン302、アナログ操作部303を有し、また、表示部204として表示画面304を有する。
【0018】
方向キー301は、例えば、上方向指示キー、下方向指示キー、右方向指示キー、左方向指示キーを有する。当該方向キー301により、ユーザは、例えば、例えばゲームにおける操作対象を、上下左右に移動する等を行う。また、複数のボタン302には、それぞれ、例えば、a、b、c、d等の印をそれぞれ有する。ユーザは、例えば、これらのボタン302を押すことにより、実行されるゲームプログラムによって定められるそれぞれのボタンに応じた処理を実行することができる。
【0019】
アナログ操作部303は、例えば、所定の基準位置からの傾倒操作が可能であり、ユーザは、アナログ操作部303の基準位置からの傾き量と傾き方向に応じた入力情報を入力する。例えば、ユーザは、アナログ操作部303を用いて、表示画面304上に表示された操作対象を、当該傾き量と傾き方向に応じて、所望の方向に所望の量だけ傾ける等を行うことができる。また、アナログ操作部303は、いわゆるアナログボタン、つまり、例えば、ユーザーにより所定の基準位置から押しこまれた量が入力されるボタンであり、当該押し込まれた量に応じて、操作対象を操作等できる構成としてもよい。また、表示画面304は、表示部204の表示画面304に相当し、例えば、ゲームプログラムに応じた画像等を表示する。
【0020】
なお、図3に示した端末103の外観、操作部205及び表示部204の構成は、一例であって、これらに限られるものではない。例えば、操作部205は、表示部204に表示されたタッチパネルにより形成されてもよいし、表示部204は、CRTや液晶表示装置で形成されたモニタ等の表示画面であってもよい。更に、方向キー301、複数のボタン302、アナログ操作部303の数はその他の数であってもよいし、また、端末103は、スタートボタンやセレクトボタン(図示なし)等その他のボタンや加速度センサ等を有してもよい。また、端末103は、例えば、ユーザの手等に保持される操作部を有し、当該ユーザの手等の動きに応じて、操作対象を操作できるように構成してもよい。この場合、例えば、端末103が画像認識等により、当該操作部の位置情報を取得し、当該位置情報に応じた入力情報により操作対象が操作される。更に、端末103は、方向キー301、複数のボタン302、アナログ操作部303等で構成される操作部を複数有するように構成してもよい。
【0021】
図4は、サーバの機能的な構成について説明するための図である。図4に示すように、サーバ101は、操作情報取得部401、接続状況監視部402、テーブル管理部403、コントローラポート404、実行部405、プログラム記憶部407、実行制御部408、実行状況検出部409、画像情報生成部410、画像情報送信部411、割当部412、割当テーブル記憶部413を含む。
【0022】
操作情報取得部401は、例えば、各操作部205に入力された各操作情報を取得する。例えば、あるゲームプログラムがa乃至fのボタン識別情報に対応した各ボタンを用いてプレイされる場合、操作情報取得部401は、操作部205毎に、図5に示すように、上記ボタン識別情報a乃至fに対応するボタンが押し下げされたか否か示す、例えば、1または0の値をそれぞれ例えば、所定期間毎(例えば、1フレーム期間毎)に取得する。
【0023】
なお、上記においては各ボタンが押し下げられたか否かを示す1または0の操作情報について説明したが、例えば、アナログ操作部303が用いられる場合には、当該アナログ操作部303の基準位置からの傾き量と傾き方向に応じた操作情報や基準位置からのボタンが押し込まれた量に応じた操作情報(例えば、0から100の間の値、または、アナログ値そのもの)、または上記位置情報に応じた操作情報が取得されるように構成してもよい。
【0024】
接続状況監視部402は、各操作部205とサーバ101との接続状況を監視する。そして、例えば、接続されている端末103の操作部205から、所定の時間操作情報が入力されなかった場合等に、当該操作部205とサーバ101との接続が中断されたと判断する。
【0025】
テーブル管理部403は、例えば、ユーザの対応する操作部205への指示等に応じて、割当テーブルの内容を設定、変更する。具体的には、例えば、図6に示すように、テーブル管理部403は、コントローラポート404のポート1Pに操作部識別情報(操作部ID)Aが関連付けて記憶するよう割当テーブルを設定したり、その後の、更なるユーザの対応する操作部205への指示等に応じて、コントローラポート404のポート1Pに操作部識別情報Bを関連付けて記憶するように変更する等である。なお、ユーザの指示の他、あらかじめ割当テーブルを変更するルールを記憶しておき、当該ルールに応じて、テーブル管理部403が割当テーブルを変更するように構成してもよい。
【0026】
実行部405は、プログラム記憶部407に記憶されたゲームプログラムを、コントローラポート404に入力された各操作情報に応じて実行する。ここで、実行部405とコントローラポート404は、当該ゲームプログラムを対象としたゲーム機器のエミュレータ406やシミュレータにより実現される。または、実行部405とコントローラポート404は、当該ゲーム機器自体で構成してもよい。
【0027】
プログラム記憶部407は、1または複数のゲームプログラムを記憶する。そして、実行部405は、例えば、ユーザが選択したゲームプログラムをプログラム記憶部407から取得し、実行する。なお、上記エミュレータ406等により再現されるゲーム機器のメモリやレジスタの値を含むスナップショットデータを、例えば記憶部203や外部のデータベースに記憶しておき、実行部405が当該スナップショットデータを用いて対応するゲームプログラムを実行するようにしてもよい。この場合、例えば、ゲームプログラムの所定の時点、例えば、ある所定のステージやあるキャラクターが登場した時点等、からゲームプログラムを実行することができる。
【0028】
コントローラポート404は、エミュレータ406やシミュレータにより再現されるゲーム機器のコントローラポート404、ゲーム機器自体が実装される場合は、当該ゲーム機器のコントローラポート404に相当する。よって、例えば、コントローラポート404は、ゲームプログラムのプレイヤー1についてのコントローラ1(第1の操作部205)が接続される1Pポート、ゲームプログラムのプレイヤー2についてのコントローラ2(第2の操作部205)が接続される2Pポート等、各操作部205の各操作情報が入力される各ポートを有する。なお、当該各操作部205からの各操作情報は、ゲームプログラムがあらかじめ想定している各操作情報に対応するようにあらかじめ設定する。
【0029】
実行制御部408は、実行部405によるゲームプログラムの開始や終了を制御する。具体的には、例えば、ユーザの操作部205へのゲームの開始指示に応じて、ゲームプログラムの実行を開始したり、接続状況監視部402により、ゲームプレイ中のあるユーザに対応する操作部205との接続が中断されたと判断された場合には、当該ユーザに代わるユーザが設定されるまで、実行部405を停止する等である。また、実行制御部408は、後述する実行状況検出部409により、例えばゲームの終了画面等が認識されることで、ゲームの終了が検出された場合には、実行部405によるゲームプログラムの実行を終了するようにしてもよい。
【0030】
実行状況検出部409は、ゲームの進行における所定の場面(所定のゲームの実行状況)、例えば、後述する割当テーブルに基づき、あるゲームにおけるステージ1からステージ2への移行した場合や、格闘ゲームにおいてあるキャラクターが倒された場合に当該キャラクターから他のキャラクターへの移行した場合、における画像情報、音声情報等を検出する。
【0031】
具体的には、実行状況検出部409は、例えば、公知の画像認識技術により、あるゲームのステージがステージ1からステージ2に移行した場合に表示される画像、格闘ゲームにおいてあるキャラクターが登場または倒され次のキャラクターが表示される画像を、予め定められた種々の場面を検出する。
【0032】
なお、上記画像認識技術の他、例えば、音声認識により所定の場面における音声を認識することで、当該所定の場面を認識してもよい。更に、所定の場面におけるエミュレータ406やシミュレータにより再現されるゲーム機器のメモリ、レジスタ、プログラムカウンタ等の値に基づいて、または、ゲーム機器が実装される場合には、当該ゲーム機器のメモリ、レジスタ、プログラムカウンタ等の値に基づいて、予め定められた種々の場面を検出するように構成してもよい。
【0033】
より具体的には、例えば、予め定められた種々の場面における画像情報、音声情報、プログラムカウンタ等の値を、例えば、記憶部203やデータベース等に記憶しておき、実行部405から取得した画像情報、音声情報、プログラムカウンタ等の値と当該記憶された画像情報、音声情報、プログラムカウンタ等を比較することにより、上記所定の場面を検出するように構成する。
【0034】
画像情報生成部410は、例えば、ゲームプログラムのプレイ画面に後述するコントローラ割り当てウィンドウやあるユーザに対応する操作部205との接続が中断されたことを示すウィンドウを重ねて表示するための画像情報を生成する。なお、画像情報生成部410は、上記ウィンドウの他、当該ゲームプログラムを現在プレイしているユーザを識別する情報、例えば、ユーザ名等、を上記プレイ画面に表示するための画像情報を生成してもよい。この場合、例えば、当該ゲームプログラムをプレイしているユーザや観戦しているユーザは、後述するようなユーザの変更や現在プレイしているユーザを把握することができる。
【0035】
画像情報送信部411は、実行部405により生成されたゲームの画像情報や、画像情報生成部410により生成される上記画像情報を対応する各端末103に送信する。なお、画像情報送信部411は、当該画像情報を圧縮して対応する各端末103に送信してもよい。また、当該画像情報には、音声情報等が含まれてもよい。
【0036】
割当部412は、割当テーブル記憶部413に記憶された割当テーブルに基づいて、上記操作情報取得部401で取得された各操作部205からの操作情報をコントローラポート404の各ポートに入力する。具体的には、例えば、割当テーブル記憶部413は、図6に示すように、コントローラポート404の各ポートを識別するポートIDと各操作部を識別する操作部IDを関連付けた割当テーブルを記憶する。そして、割当部412は、当該割当テーブルに基づいて、各操作部205からの操作情報をコントローラポート404の各ポートに入力する。なお、各操作部205からの各操作情報は、所定期間毎に取得されるとともに、メモリ等の記憶手段(例えば記憶部105等)に保持され、当該記憶手段に保持された各操作部からの各操作情報がコントローラポート404に入力されるように構成してもよい。この場合、例えば、ゲームプログラムにおいて1フレーム期間毎に取得される操作情報により操作対象が操作等されるように設計されている場合、サーバ101における各操作部205からの各操作情報の取得が1フレーム期間よりも長い期間毎に行われる場合やネットワークの不具合等により操作情報のサーバ101における取得が遅延した場合等においても、当該記憶手段に保持された各操作情報を用いて、ゲームプログラムを実行することが可能となる。
【0037】
例えば、図6の例を用いて説明すると、割当部412は、コントローラポート404のポート1Pに操作部ID、Aの操作部205からの操作情報を出力し、コントローラポート404のポート2Pに操作部ID、Bの操作部205からの操作情報を出力する。なお。ポート3P及び4Pについても同様であるので、説明を省略する。このように構成することで、割当テーブルに基づいて、コントローラ割り当て(各操作部205の各ポートへの割り当て)を設定または変更することができる。
【0038】
また、割当テーブル記憶部413は、上記所定の実行状況を識別する実行状況ID、ポートID及び操作部IDを関連付けた割当テーブルを記憶してもよい。具体的には、図7Aまたは図7Bに示の例を用いて説明する。なお、図7Aは、例えば、当該ゲームプログラムが1のプレイヤーでプレイされるブロックくずしゲームの場合についての割当テーブルの一例、図7(B)が、例えば、当該ゲームプログラムが2のプレイヤーでプレイされる格闘ゲームの場合についての割当テーブルの一例を示すものとする。
【0039】
図7Aに示した割当テーブルにおいては、実行状況ID、a1について、ポートID、1P、及び、操作部IDとしてA、実行状況ID、a2について、ポートID、1P、及び操作部IDとしてBが関連付けられている。なお、実行状況IDがa3以下については、同様であるので、説明を省略する。また、実行状況IDは、例えば各ステージに対応しているものとする。具体的には、例えば、各実行状況IDは、各ステージが開始される際の画像情報やプログラムカウンタの値等に関連付けられているものとする。
【0040】
この場合、割当部412は、実行状況検出部409により、実行状況IDに対応したステージが開始されたことが検出されると、割当テーブルに基づいて、操作情報取得部401で取得された各操作情報の出力のコントローラの各ポートへの割り当てを変更する。
【0041】
具体的には、例えば、図7Aの場合において、例えば、実行状況ID、a1乃至a4がそれぞれ第1ステージから第4ステージに対応しているとする。この場合、割当テーブルは実行状況ID、a1乃至a4の順に、ポートIDとして1P及び操作部IDとしてA、B、A、Bを関連付けて記憶しているので、割当部412は、第1ステージで操作部IDがAに対応する操作部205の操作情報を1Pのポートに出力し、第2ステージが開示されると、第2ステージで操作部IDがBに対応する操作部205の操作情報を1Pのポートに出力する。第3ステージ以降は同様であるので説明を省略する。
【0042】
なお、上記においては、各操作部IDは各ユーザIDに関連付けられているものとする。また、上記においては、実行状況IDは、各ステージに対応するものとして説明したが、各プレイヤーが操作する各キャラクターや、コースを周回するレースゲーム等の場合において各周に対応する等その他の情報に対応していてもよい。
【0043】
上記のように構成することで、例えば、プログラム記憶部407に記憶されているゲームプログラムが1のプレイヤーのみでプレイされるよう作成されていたとしても、ステージ毎に異なるユーザがプレイできるようにする等ゲームプログラムには含まれていない新たな楽しみ方を付加することができる。なお、上記においてどのステージをどのユーザがプレイするか、つまり、どのステージにつきどの操作部205の操作情報をどのポートに割り当てるか、については、例えば、各ユーザがチャット機能等を用いて、あらかじめ設定し、これに応じて、上記のような割当テーブルが記憶されるようにすればよい。
【0044】
また、図7(B)に示した割当テーブルにおいては、各ポートIDについて、複数の実行状況ID及び複数の操作部IDが関連付けて記憶されている。具体的には、例えば、図7(B)に示すように、ポートID、1Pについて、実行状況ID、b1乃至b4、及び、操作部ID、A1乃至A4が、ポートID、2Pについて、実行状況ID、c1乃至c4、及び、操作部ID、B1乃至B4が関連付けて記憶されている。また、実行状況ID、b1乃至b4には、プレイヤーが担当するキャラクターに関連する情報が対応付けられている。具体的には、例えば、実行状況ID、b1は、あるキャラクターが登場する際の画像情報やプログラムカウンタの値、実行状況ID、b2は、当該キャラクターが倒されて次のキャラクターが登場する際の画像情報やプログラムカウンタの値が関連付けられている。
【0045】
これにより、実行状況検出部409が、例えば、上記画像情報等と、実行部405から取得される画像情報等とを比較することにより、キャラクターが登場した(キャラクターが変更した)ことを検出し、これに応じて、各操作部205からの各操作情報が出力される各ポートへの割当を変更することができる。これにより、例えば、ゲームプログラムが2のプレイヤーで対戦プレイされることを想定して作成されている場合であっても、キャラクター毎に当該キャラクターを操作するユーザを異ならせること等により、より多くの人数で対戦プレイする等が可能となる。
【0046】
なお、どのキャラクターをどのユーザが担当するか、つまり、どのキャラクターにつきどの操作部205からの操作情報をどのポートに割り当てるか等、については、例えば、ゲームの開始前に各ユーザが、チャット機能等を用いてあらかじめ設定し、上記のような割当テーブルが設定されるように構成すればよい。また、上記に示したサーバ101の構成は一例であって、これに限定されるものではない。例えば、例えばサーバ101をいわゆるクラウドサービスのような、互いに通信可能に接続される複数のアプリケーションサーバ、データベースサーバ、ストレージデバイス等を用いた分散コンピューティング環境に基づいて実現してもよい。
【0047】
次に、図8を用いて、ゲームプログラムが4のプレイヤーでプレイされるゴルフゲームである場合の例を用いて、本実施の形態における情報処理システムの処理のフローの他の一例について説明する。具体的には、割当テーブルが上記図6で示したように設定されている場合であって、当該ゴルフゲームのプレイ中に、例えば、操作部205識別情報Aで識別される操作部205とサーバ101との接続が中断された場合の例を用いて説明する。なお、図6で示した割当テーブルは、上述のように、4のユーザ(ユーザA乃至Dと称する)にそれぞれ対応する操作部識別情報A乃至Dで識別される操作部205からの各操作情報がそれぞれコントローラポート404の各ポートに割り当てられるための割当テーブルを示す。
【0048】
例えば、操作部識別情報Aで識別される操作部205からのゲーム開始指示により、実行部405は、プログラム記憶部407からゴルフゲームプログラムに保持されたゴルフゲームプログラムの実行を開始する(S101)。なお、ここでは、操作部識別情報Aで識別される操作部205に対応するユーザAがゲーム開始指示するとして説明したが、その他の操作部205に対応する他のユーザ、例えば、あらかじめ代表として設定されたユーザ、がゲーム開始指示するようにしてもよい。また、このとき、接続状況監視部402は、操作部識別情報A乃至Dに対応する各操作部205とサーバ101との接続状況の監視を開始する(S102)。
【0049】
そして、接続状況監視部402が、サーバ101とある操作部205との接続が中断されたと判断した場合には、画像情報生成部410は、例えば,図9Aに示すような接続が中断された操作部を特定するとともに当該操作部との接続が中断されたことを示す中断ウィンドウを表示するための画像情報をゲームのプレイ画面に重畳した重畳画像を生成し、画像情報送信部411は、当該重畳画像を対応する端末103に送信する(S103)。具体的には、例えば、図9Aに示す場合、操作部205とサーバ101との接続が中断されているので、他のユーザB乃至Dに対応する各操作部205に当該重畳画像を送信する。そして、当該各端末103は、当該重畳画像を表示する。
【0050】
次に、画像情報生成部410は、例えば図9(B)に示すような、各操作部の各ポートへの割り当てを変更するためのコントローラ割り当てウィンドウを表示するための画像情報をゲームのプレイ画面に重畳した重畳画像を生成し、画像情報送信部411は、当該重畳画像を対応する端末103に送信する(S104)。具体的には、例えば、図9(B)に示す場合、例えば、上記のようにユーザAとの接続が中断されているため、プレイヤー1Pに対応するユーザは「なし」と表示されている。
【0051】
次に、接続が維持されているユーザ、例えばユーザB乃至Dのいずれかが、対応する操作部205を用いて、割り当てを変更するよう、各操作部205を介して、操作指示する(S105)。具体的には、例えば、図9(B)に示すように、ユーザBが、対応する操作部205を用いて、コントローラ割り当てウィンドウに含まれる編集ボタン画像をクリック等することにより、1PにもユーザBを割り当てる。図9(C)は、このようにして、コントローラ1PにユーザBが割り当てられた様子を示す。
【0052】
また、このとき、図10Aに示すように、テーブル管理部403は、割当テーブル記憶部413に記憶されている割当テーブルのポートIDが1Pに対応する操作部識別情報を、ユーザBに変更する。なお、上記においては、具体例として、ユーザBがコントローラ1PにユーザBを割り当てる場合について説明したが、他のユーザがユーザBまたはその他のユーザを割り当ててもよい。また、複数のユーザから管理者を設定し、当該ユーザのみが上記のような割り当てを行えるように構成してもよい。この場合、当該管理者は、システムがあらかじめ設定された規則等に従って設定するよう構成してもよいし、当該複数のユーザがチャット機能等を用いて設定できるように構成してもよい。
【0053】
または、例えば、図9(B)において、接続が維持されている操作部205を操作するユーザ、ユーザB乃至Dのいずれか、がコントローラ割り当てウィンドウに含まれる募集ボタン画像を対応する操作部205を用いてクリック等することにより、現在当該ゴルフゲームをプレイしていないユーザ(例えばユーザE)が、対応する操作部205を用いて、当該ゴルフゲームのプレイヤー1Pとして参加できるようにしてもよい。図9(D)は、このようにして、1PにユーザEが割り当てられた様子を示す。例えば、ユーザEは、当該ユーザA乃至Dのプレイの様子を観戦しているユーザであってもよいし、対戦要求を出して参加可能なゲームを探している状態として登録等しているユーザであってもよい。
【0054】
また、このとき、図10(B)に示すように、テーブル管理部403は、割当テーブル記憶部413に記憶されている割当テーブルのポートIDが1Pに対応する操作部識別情報を、ユーザEが操作する操作部205の識別情報である識別情報Eに変更する。
【0055】
上記のように、割当テーブルが変更された後、実行部405は、ゲームを再開する(S106)。このとき、割当部412は、上記変更された割当テーブルに基づいて、各操作部205からの操作情報をコントローラポート404の各ポートに入力する。その後、S103乃至S106の処理を繰り返す。なお、ここで、当該ゲームプログラムの実行中にも、各プレイヤーに割り当てられているユーザを識別するための情報、例えば、ユーザ名等が、当該ゲームプログラムをプレイしているユーザや観戦しているユーザに対応した端末103の表示部204に表示されるように構成してもよい。この場合、例えば、当該ゲームプログラムをプレイしているユーザや観戦しているユーザは、ユーザの変更や現在プレイしているユーザを把握することができる。
【0056】
上記のように、例えば、プレイを継続できなくなったユーザまたはプレイの継続を所望しなくなったユーザに代えて、他のユーザがプレイを継続することができる。具体的には、例えば、図10Aに示した場合、操作ID、Aの操作部205からの操作情報から、操作ID、Bの操作情報を、ポート1Pに割り当てることで、プレイヤー1を担当していたユーザAに代えて、ユーザBがプレイヤー1と2を担当することができる。また、例えば、図10(B)に示した場合、操作ID、Aの操作部205からの操作情報から、操作ID、Eの操作情報を、ポート1Pに割り当てることで、プレイヤー1を担当していたユーザAに代えて、ユーザEがプレイヤー1を担当することができる。
【0057】
上記のように構成することで、例えば、複数人で対戦プレイを行っている間に、1のユーザがオフライン等となりゲームの継続が困難になった場合、または当該1のユーザがゲームの継続を希望しなくなった場合であっても、割当テーブルの内容を変更して、他のユーザが当該1のユーザのプレイを引き継ぐことが可能となる。
【0058】
なお、上記に示した処理のフローは一例であって、これに限定されるものではない。例えば、ユーザの指示に代えて、接続状況監視部402が、あるポートと1の操作部205との接続が中断されたと判断した場合には、あらかじめ設定された操作部205が当該ポートに接続されていた操作部205に代えて接続される等、ユーザの指示なしに、操作部205とポートとの割り当てが変更されるように構成してもよい。
【0059】
次に、プログラム記憶部407に記憶されたゲームプログラムが1のプレイヤーでプレイされるブロックくずしゲームや、2のプレイヤーで対戦プレイされる格闘ゲームである場合を用いて、本実施の形態における情報処理システムの処理のフローの他の一例について説明する。
【0060】
まず、上記のように、ゲームの開始前に、どのステージをどのユーザがプレイするかや、どのキャラクターについてどのユーザが担当するか等を、各ユーザが選択することにより、割当テーブル記憶部413は、例えば上述のような図7A及び7Bに示すような割当テーブルを記憶している。
【0061】
ゲームが開始されると、実行状況検出部409は、所定の実行状況の検出を開始する。上述のように、当該実行状況は、実行状況IDに関連付けられている。例えば、図7Aにおいては、ステージ1が実行状況ID、a1で、ステージ2が実行状況ID、a2等に対応し、図7Bにおいては、最初のキャラクターが実行状況ID、b1に、次のキャラクターが実行状況ID、b2等に対応している。
【0062】
そして、実行状況検出部409により所定の実行状況(実行状況IDに対応)が検出されると、割当テーブルに記憶された実行状況IDに関連付けて記憶されている操作部IDを有する操作部205からの操作情報を、関連付けて記憶されているポートIDで示されるポートへ入力するように変更する。
【0063】
具体的には、図7Aの例で説明すると、まず、ポートID、1Pで識別されるポートには、操作部ID、Aからの操作情報が入力されている。次に、実行状況ID、a2に対応するステージ2に移行した画面を実行状況検出部409が画像認識等により検出すると、割当部412は、実行状況ID、a2に関連付けて記憶されている操作部IDからの操作情報をポートID、1Pに入力する。以下同様であるので説明を省略する。これにより、例えばステージ1からステージ2に推移した場合に、ゲームプログラムの操作対象の操作を行う操作部を操作部ID、Aの操作部から、操作部ID、Bの操作部に変更することができる。つまり、ステージに応じて、ゲームの操作対象の操作を行うユーザを変更することができる。
【0064】
また、図7Bの例で説明すると、まず、ポートID、1Pで識別されるポートには、操作部ID、A1を有する端末103からの操作情報が入力されている。次に、実行状況ID、b2に対応するキャラクターが登場した画面を実行状況検出部409が画像認識等により検出すると、割当部412は、実行状況ID、b2に関連付けて記憶されている操作部IDを有する操作部205からの操作情報をポートID、1Pに入力する。以下同様であるので説明を省略する。これにより、例えば実行状況ID、b1に対応するキャラクターが倒されて実行状況ID、b2に対応するキャラクターが登場した場合に、ゲームプログラムの操作対象の操作を行う操作部を操作部ID、A1の操作部から、操作部ID、A2の操作部に変更することができる。
【0065】
上記のように、所定の実行状況の検出、例えば、ステージが進んだ場合や最初のキャラクターが倒されて次のキャラクターが登場した場合等、に応じて、当該ゲームをプレイするユーザを、各操作部205に入力される各操作情報の各ポートへの割当を変更することで、変更することができる。なお、上記に示した処理のフローは一例であってこれに限定されるものではない。例えば、図7や図10を用いて説明した処理を組み合わせて用いて、例えば、接続状況及び実行状況に応じて、各操作部の各ポートへの割当を変更する等としてもよい。
【0066】
なお、本発明は、上記実施の形態に限定されるものではなく、種々の変形が可能である。例えば、上記実施の形態で示した構成と実質的に同一の構成、同一の作用効果を奏する構成又は同一の目的を達成することができる構成で置き換えることができる。
【0067】
例えば、上記割当テーブルの変更は、上記のように1人用のゲームをステージ毎に交代してプレイする等の他、例えば、師匠に相当するユーザ、及び、弟子に相当するユーザ、をあらかじめ設定しておき、師匠が弟子のプレイ画面を観戦中に、師匠の操作部205を弟子の操作部205が接続されているポートへ、割当変更を指示することで、師匠が弟子の操作が適切でないと感じた際等にのみ、弟子が操作しているキャラクターを師匠が用いている操作部205を用いて操作できる等と構成してもよい。
【0068】
更に、ゲームプログラムがパズルゲームや、シューティングゲーム等である場合において、随時交代しながらゲームを進めるように構成してもよい。具体的には、例えば、当該割り当ての変更は、上記のように所定のユーザの操作部205への指示や所定の場面の検出等に応じて随時交代しながらゲームを進行するように構成すればよい。ここで、ユーザの操作部205への指示に応じて交代する場合、割当変更のためのメニュー画面上で割当変更するように構成してもよいし、スムーズに切り換えられるよう、操作部205のあるボタンに切換えボタンを割り当てるように構成してもよい。また、例えば、あるユーザがいわゆる1P(プレイヤー1)としてゲームをプレイしている場合に、別のユーザが対戦申し込みすると、自動的にプレイヤー2としてゲームに参入できるようにしてもよい。この場合、当該別のユーザからの対戦申し込みに応じて、割当テーブルを、例えば、別のユーザが用いている操作部205からの操作情報が、ポート2Pに割り当てられるように変更するように構成すればよい。なお、この場合、対戦申し込み以前の割当テーブルは、プレイヤー1に対応するユーザが用いている操作部205からの操作情報が、ポート1Pに割り当てられるように設定されていたものとする。
【0069】
更に、上記割り当ての変更は、例えばあらかじめ登録された複数のユーザの中で、一定時間毎に、どのユーザが用いる操作部205からの操作情報を有効にするか(ポートに割り当てるか)を所定の順番またはランダムで切り換えることができるように構成し、例えば、格闘ゲーム等において、チームやグループ同士等で対戦等できるように構成してもよい。
【0070】
[変形例1]
次に、変形例1について、説明する。なお、下記において、上記実施の形態と同様である点については説明を省略する。また、下記においては、例えば、主に、実行されるゲームプログラムが、4の操作情報、例えば、1のプレイヤーが4のボタンを用いて操作対象を操作するよう作成されている場合を用いて説明するが、その他の数のボタンやアナログ操作部303や加速度センサ等からの操作情報により操作されるよう作成されていてもよい。
【0071】
本変形例においては、割当テーブル記憶部413は、例えば、図11に示すように、ポートIDに関連付けて、操作情報ID、操作部ID、入力情報IDを記憶した割当テーブルを記憶する。ここで、操作情報IDとは、ゲームプログラムにおいて想定されている各操作情報を識別するためのIDであって、例えばゲームプログラムにおいて1のプレイヤーが4のボタンを用いて操作されるよう作成されている場合、当該4つのボタンをそれぞれ識別する情報に相当し、入力情報IDとは、操作部205に入力される各入力情報、例えば、上記4のボタンに対応付けられたボタン等をそれぞれ識別するための情報に相当する。
【0072】
具体的には、例えば、図11に示すように、ポートIDが1Pについては、操作情報ID、a乃至d、及び入力情報ID、aa乃至ddが関連付けられ、また、操作情報ID、a及びbについては、操作部ID、A及びBがそれぞれ関連づけられている。なお、ポートID、2Pについても同様であるので説明を省略する。
【0073】
割当部412は、当該割当テーブルに基づき、各入力情報IDで示される各入力情報を、各操作情報IDで示される各操作情報に、割り当てる。具体的には、例えば、図11に示す場合、ポートID、1Pに入力される操作情報ID、a及びbで識別される操作情報として、操作部IDがAで識別される操作部に入力され、入力情報ID、aa及びbbで識別される入力情報を割り当てる。また、ポートID、1Pに入力される操作情報ID、c及びdで識別される操作情報として、操作部IDがAで識別される操作部に入力される入力情報ID、cc及びddで識別される入力情報を割り当てる。
【0074】
このように構成することで、当該ゲームプログラムでプレイヤー1が操作する複数の操作情報を、複数のユーザで分担させることができる。具体的には、例えば、操作情報ID、a及びbで示される各操作情報がゲームプログラムのプレイヤー1のボタンa、bへ入力される情報に対応し、例えば、操作情報ID、c及びdで示される操作情報がゲームプログラムのプレイヤー1のボタンc、dへ入力される情報に対応する場合、当該ボタンa、bをユーザAが担当し、当該ボタンc、dをユーザBが担当するように構成することができる。なお、当該ゲームプログラムのプレイヤー2についても同様であるので、説明を省略する。また、各操作部IDは、各ユーザIDに関連付けられており、各ユーザは対応する各操作部205を用いて、入力情報IDで識別される各入力情報を入力する。
【0075】
次に、上記の例を用いて、本変形例における情報処理システムの処理のフローの一例について説明する。まず、例えば、上記のように、ゲームの開始前に、ゲームのどのプレイヤー(プレイヤー1または2)をどのユーザが担当するか、及び、どのプレイヤーのどのボタンをどのユーザが担当するか、について、各ユーザが選択することにより、割当テーブル記憶部413は、上記図11に示すような割当テーブルを記憶する。
【0076】
そして、ゲームが開始されると、割当部412は、上記のように設定された割当テーブルにしたがって、各操作部から入力された各入力情報識別IDで識別される各識別情報を、各操作情報IDで識別される各操作情報として割り当てる。具体的には、図11に示した例を用いて説明すると、上記のように、コントローラポート404の1Pポートには、操作部IDがAとBに相当する各操作部205からの情報が入力される。具体的には、1Pポートには操作情報ID、aとbの各操作情報として、操作部IDがAの操作部205に入力される入力情報ID、aa及びbbで示される各入力情報が入力され、cとdの各操作情報として、操作部IDがAの操作部205に入力される入力情報ID、cc及びddで示される各入力情報が入力される等である。
【0077】
上記のように構成することで、複数の操作部205で入力された各入力情報をコントローラポート404の1のポートに入力される各操作情報として、入力することができる。したがって、例えば、ある操作対象の操作に使用される複数のボタン等をユーザ毎に分けて操作することが可能となる。具体的には、例えば、当該ゲームプログラムがシューティングゲームである場合、ユーザが操作する戦闘機の方向操作(例えば、ボタンaとbに相当)については、ユーザAが、2種類のミサイルの発射ボタン(例えば、ボタンcとdに相当)については、ユーザBが担当する等が可能となる。これにより、例えば、1のプレイヤーを想定して作成されたゲームプログラムであっても、複数のプレイヤーが当該ゲームで用いられる1のコントローラに含まれる複数のボタン等をユーザ毎に(操作部毎に)分担してプレイするようないわゆる協力プレイ、分担プレイを実現することができる。
【0078】
なお、本発明は、上記実施の形態または変形例1に限定されるものではなく、種々の変形が可能である。例えば、上記実施の形態または変形例1で示した構成と実質的に同一の構成、同一の作用効果を奏する構成又は同一の目的を達成することができる構成で置き換えることができる。例えば、上記実施の形態または変形例1を組み合わせて、例えば、ゲームの途中でのユーザの指示に応じて、または、上記のような所定の場面に応じて、例えば、ステージ毎、キャラクター毎に、または、所定の時間毎に、操作部205に入力される各入力情報の操作情報への割り当てを変更または設定等できるように構成してもよい。
【0079】
[変形例2]
次に、変形例2について、説明する。なお、下記において、上記実施の形態または変形例1と同様である点については説明を省略する。また、変形例1と同様に、例えば、主に、実行されるゲームプログラムが、4の操作情報、例えば、1のプレイヤーが4のボタンを用いて操作対象を操作するよう作成されている場合を用いて説明するが、その他の数のボタンやアナログ操作部303や加速度センサ等からの操作情報により操作されるよう作成されていてもよい。
【0080】
本変形例においては、変形例1と同様に、割当テーブル記憶部413は、例えば、図12に示すように、ポートIDに関連付けて、操作情報ID、操作部ID、入力情報IDを記憶した割当テーブルを記憶するが、本変形例においては、1の操作情報IDに複数の操作部IDが関連付けられている点が異なる。
【0081】
具体的には、例えば、図12に示すように、ポートID、1Pの操作情報ID、cについて、2の操作部ID、AとB、操作情報ID、dについて2の操作部ID、AとBが関連付けられて記憶されている。
【0082】
割当部412は、当該割当テーブルに基づき、各入力情報IDで示される各入力情報を、各操作情報IDで示される各操作情報に割り当てる。具体的には、例えば、図12に示す場合、上記変形例1で説明したように、ポートID、1Pに入力される操作情報ID、a及びbで識別される各操作情報として、操作部IDがAで識別される操作部に入力される入力情報ID、aa及びbbで示される入力情報を入力する。一方、ポートID、1Pに入力される操作情報ID、c及びdで識別される操作情報として、操作部IDがA及びBで識別される操作部に入力される入力情報ID、cc及びddで示される入力情報を入力する。
【0083】
このように構成することで、当該ゲームプログラムにおいてプレイヤー1が入力するよう作成された操作情報を、複数のユーザで分担させることができることに加え、プレイヤー1が入力する1または全部の入力情報を、異なるユーザに重複して分担させることができる。具体的には、上記の例の場合、例えば、操作情報ID、c及びdで示される操作情報がゲームプログラムのプレイヤー1のボタンc、dへ入力される情報に対応する場合、当該ボタンc、dをユーザA及びBの両者が担当するように構成することができる。なお、当該ゲームプログラムのプレイヤー2についても同様であるので、説明を省略する。
【0084】
次に、上記の例を用いて、本変形例における情報処理システムの処理のフローの一例について説明する。まず、例えば、上記のように、ゲームの開始前に、ゲームのどのプレイヤー(例えば、プレイヤー1または2)をどのユーザが担当するか、及び、どのプレイヤーのどのボタンをどのユーザが担当するか、について、各ユーザが選択することにより、割当テーブル記憶部413は、上記図12に示すような割当テーブルを記憶する。
【0085】
そして、ゲームが開始されると、割当部412は、上記のように設定された割当テーブルにしたがって、各操作部205から入力された各入力情報識別IDで識別される各識別情報を、各操作情報IDで識別される各操作情報として割り当てる。具体的には、図12に示した例を用いて説明すると、上記のように、コントローラポート404の1Pポートには、操作部IDがAとBに相当する各操作部205からの情報が入力される。具体的には、1Pポートには操作情報ID、aとbの各操作情報として、操作部IDがAの操作部205に入力される入力情報ID、aa及びbbで示される各入力情報が入力され、cとdの各操作情報として、操作部IDがA及びBに対応する操作部205に入力される入力情報ID、cc及びddで示される各入力情報が入力される等である。
【0086】
上記のように構成することで、複数の操作部205からの操作情報をコントローラポート404の1のポートに、重複して入力することができる。したがって、例えば、当該ゲームプログラムがシューティングゲームである場合、自分の戦闘機の方向操作(例えば、ボタンaとbに相当)については、ユーザAが、2種類のミサイルの発射ボタン(例えば、ボタンcとdに相当)については、ユーザAとBの両者が担当する等が可能となる。これにより、例えば、発射ボタンの連打等が望まれるような場合には、ユーザAとBのボタンc、dの押し下げによる入力情報を重複して入力することにより、いわゆる協力プレイ、分担プレイ等を実現することが可能となる。例えば、クイズの早押しに関するゲームである場合には、同時にグループ毎の複数のユーザからの入力を有効とすることで、グループ毎のいわゆる協力、対戦プレイを実現することができる。
【0087】
なお、本発明は、上記実施の形態または変形例1または2に限定されるものではなく、種々の変形が可能である。例えば、上記実施の形態または変形例1または2で示した構成と実質的に同一の構成、同一の作用効果を奏する構成又は同一の目的を達成することができる構成で置き換えることができる。例えば、上記実施の形態、変形例1及び2を組み合わせて、例えば、ゲームの途中でのユーザの指示に応じて、または、上記のような所定の場面に応じて、例えば、ステージ毎、キャラクター毎に、または、所定の時間毎に、操作部に入力される各入力情報の操作情報への割り当てを、上記のような割り当てが重複する場合も含めて、変更または設定等できるように構成してもよい。更に、上記においては、サーバ101及び各端末103等で構成される情報処理システムについて説明したが、端末103自体が、上記サーバ101の機能の一部または全部、例えば、上記実行部405、コントローラポート404、割当部412等を有することにより、当該端末103に接続される複数の端末103の当該コントローラポート404への割り当てを上記のように動的に変更できるように構成してもよい。
【符号の説明】
【0088】
101 サーバ、102 ネットワーク、103 端末、104、201 制御部、105、203 記憶部、106、202 通信部、204 表示部、205 操作部、301 方向キー、302 複数のボタン、303 アナログ操作部、401 操作情報取得部、402 接続状況監視部、403 テーブル管理部、404 コントローラポート、405 実行部、407 プログラム記憶部、408 実行制御部、409 実行状況検出部、410 画像情報生成部、411 画像情報送信部、412 割当部、413 割当テーブル記憶部。
【技術分野】
【0001】
情報処理システム、情報処理方法、情報処理プログラム、情報処理プログラムを記憶したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【0002】
専用の装置で実行されるよう作成されたゲームプログラムを、エミュレータを用いて、異なる装置等で実行する技術が知られている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、上記のような場合において、当該ゲームプログラムが例えば1のプレイヤーのみでプレイされるよう作成されているような場合に、例えば、複数人でプレイしたい場合がある。また、当該ゲームプログラムが複数のプレイヤーが順番にボールを打つようなゴルフゲームである場合等において、サーバ型ゲーム実行システムにおいて当該ゴルフゲームを実行する場合、当該サーバと1のプレイヤーに対応する操作装置との接続が中断されたような場合には、当該ゴルフゲームを進行することが困難となる。また、当該ゲームプログラムが、例えば、1のコントローラの複数のボタンを用いて操作対象を操作するよう作成されているような場合に、当該複数のボタンを複数のユーザで分担して担当したい場合がある。
【0004】
本発明は、専用の装置で実行されるよう作成されたゲームプログラムに新たな楽しみ方、例えば、複数人で1のゲームをプレイすることのできるソーシャルゲームを実現する等、を付加することのできる情報処理システム等を提供することを目的とする。
【課題を解決するための手段】
【0005】
本発明の情報処理システムは、ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポートと、前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行する実行手段と、前記各ポートへ前記各操作装置を割り当てる割当手段と、を有し、前記割当手段は、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、ことを特徴とする。
【0006】
本発明の情報処理方法は、ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポートの前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行し、前記各ポートへ前記各操作装置を割り当て、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、ことを特徴とする。
【0007】
本発明の情報処理プログラムは、ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポート手段、前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行する実行手段、及び、前記各ポートへ前記各操作装置を割り当てる割当手段、としてコンピュータを機能させるための情報処理プログラムであって、前記割当手段は、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、ことを特徴とする。
【発明の効果】
【0008】
専用の装置で実行されるよう作成されたゲームプログラムに新たな楽しみ方、例えば、複数人で1のゲームをプレイすることのできるソーシャルゲームを実現する等、を付加することのできる情報処理システム等を提供できる。
【図面の簡単な説明】
【0009】
【図1】本発明の実施の形態における情報処理システムについて説明するための図である。
【図2】端末の構成を説明するための図である。
【図3】端末の外観の一例を示す図である。
【図4】サーバの機能的な構成について説明するための図である。
【図5】操作情報取得部で取得される操作情報の一例について説明するための図である。
【図6】割当テーブルの一例を示す図である。
【図7A】割当テーブルの他の一例を示す図である。
【図7B】割当テーブルの他の一例を示す図である。
【図8】本実施の形態における情報処理システムの処理のフローの一例を示す図である。
【図9A】割当変更の際に表示される画面の一例を示す図である。
【図9B】割当変更の際に表示される画面の一例を示す図である。
【図9C】割当変更の際に表示される画面の一例を示す図である。
【図9D】割当変更の際に表示される画面の一例を示す図である。
【図10A】変更された割当テーブルの一例を示す図である。
【図10B】変更された割当テーブルの一例を示す図である。
【図11】本発明の変形例1における割当テーブルの一例を示す図である。
【図12】本発明の変形例2における割当テーブルの一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の実施形態について、図面を参照しつつ説明する。なお、図面については、同一又は同等の要素には同一の符号を付し、重複する説明は省略する。
【0011】
図1は、本発明の実施の形態における情報処理システムについて説明するための図である。図1に示すように、本発明の情報処理システムは、サーバ101、ネットワーク102、及び、複数の端末103を含む。サーバ101は、制御部104、記憶部105、通信部106を含む。各部104乃至105は、バス107を介して接続される。なお、図1においては、3の端末103を示しているが、当該端末103は異なる数であってもよい。
【0012】
制御部104は、例えば、CPUやMPU等であって、記憶部105に格納されたプログラムに従って動作する。記憶部105は、例えば、ハードディスクドライブやROMやRAM等の情報記録媒体で構成され、制御部104によって実行されるプログラムを保持する情報記録媒体である。また、記憶部105は、制御部104のワークメモリとしても動作する。なお、上記制御部104で処理されるプログラムは、例えば、ネットワーク102を介して、ダウンロードされて提供されてもよいし、または、CD−ROMやDVD−ROM等のコンピュータで読み取り可能な各種の情報記録媒体によって提供されてもよい。
【0013】
通信部106は、例えば、ネットワーク102インターフェースであって、制御部104からの指示にしたがって、ネットワーク102を介して、情報を送受信する。
【0014】
図2は端末の構成を説明するための図である。図2に示すように、端末103は、制御部201、通信部202、記憶部203、表示部204、操作部205を含む。なお、各部201−205は、バス206を介して接続される。サーバ101と同様に、制御部201は、例えば、CPUやMPU等であって、記憶部203に格納されたプログラムに従って動作する。記憶部203は、例えば、ハードディスクやROMやRAM等の情報記録媒体で構成され、制御部201によって実行されるプログラムを保持する情報記録媒体である。また、記憶部203は、制御部201のワークメモリとしても動作する。なお、上記制御部201で処理されるプログラムは、例えば、ネットワーク102を介して、ダウンロードされて提供されてもよいし、または、CD−ROMやDVD−ROM等のコンピュータで読み取り可能な各種の情報記録媒体によって提供されてもよい。通信部202は、例えば、ネットワークインターフェースであって、制御部201からの指示にしたがって、ネットワーク102を介して、情報を送受信する。
【0015】
操作部205は、例えば、キーボード、マウス、コントローラ、ボタン等のインターフェースで構成され、ユーザの指示操作に応じて、当該指示操作の内容を制御部201に出力する。なお、端末103は、複数の操作部205、例えば、2以上のコントローラ等、を有してもよい。また、特許請求の範囲に記載の操作装置は、例えば、当該操作部205に相当する。
【0016】
表示部204は、例えば、液晶ディスプレイ、CRTディスプレイ、または有機ELディスプレイ等であって、制御部201からの指示に従い、情報を表示する。なお、上記は端末103の構成の一例であってこれに限定されるものではない。
【0017】
図3は、端末103の外観の一例を示す図である。図3に示すように、端末103は、例えば、操作部205として、方向キー301、複数のボタン302、アナログ操作部303を有し、また、表示部204として表示画面304を有する。
【0018】
方向キー301は、例えば、上方向指示キー、下方向指示キー、右方向指示キー、左方向指示キーを有する。当該方向キー301により、ユーザは、例えば、例えばゲームにおける操作対象を、上下左右に移動する等を行う。また、複数のボタン302には、それぞれ、例えば、a、b、c、d等の印をそれぞれ有する。ユーザは、例えば、これらのボタン302を押すことにより、実行されるゲームプログラムによって定められるそれぞれのボタンに応じた処理を実行することができる。
【0019】
アナログ操作部303は、例えば、所定の基準位置からの傾倒操作が可能であり、ユーザは、アナログ操作部303の基準位置からの傾き量と傾き方向に応じた入力情報を入力する。例えば、ユーザは、アナログ操作部303を用いて、表示画面304上に表示された操作対象を、当該傾き量と傾き方向に応じて、所望の方向に所望の量だけ傾ける等を行うことができる。また、アナログ操作部303は、いわゆるアナログボタン、つまり、例えば、ユーザーにより所定の基準位置から押しこまれた量が入力されるボタンであり、当該押し込まれた量に応じて、操作対象を操作等できる構成としてもよい。また、表示画面304は、表示部204の表示画面304に相当し、例えば、ゲームプログラムに応じた画像等を表示する。
【0020】
なお、図3に示した端末103の外観、操作部205及び表示部204の構成は、一例であって、これらに限られるものではない。例えば、操作部205は、表示部204に表示されたタッチパネルにより形成されてもよいし、表示部204は、CRTや液晶表示装置で形成されたモニタ等の表示画面であってもよい。更に、方向キー301、複数のボタン302、アナログ操作部303の数はその他の数であってもよいし、また、端末103は、スタートボタンやセレクトボタン(図示なし)等その他のボタンや加速度センサ等を有してもよい。また、端末103は、例えば、ユーザの手等に保持される操作部を有し、当該ユーザの手等の動きに応じて、操作対象を操作できるように構成してもよい。この場合、例えば、端末103が画像認識等により、当該操作部の位置情報を取得し、当該位置情報に応じた入力情報により操作対象が操作される。更に、端末103は、方向キー301、複数のボタン302、アナログ操作部303等で構成される操作部を複数有するように構成してもよい。
【0021】
図4は、サーバの機能的な構成について説明するための図である。図4に示すように、サーバ101は、操作情報取得部401、接続状況監視部402、テーブル管理部403、コントローラポート404、実行部405、プログラム記憶部407、実行制御部408、実行状況検出部409、画像情報生成部410、画像情報送信部411、割当部412、割当テーブル記憶部413を含む。
【0022】
操作情報取得部401は、例えば、各操作部205に入力された各操作情報を取得する。例えば、あるゲームプログラムがa乃至fのボタン識別情報に対応した各ボタンを用いてプレイされる場合、操作情報取得部401は、操作部205毎に、図5に示すように、上記ボタン識別情報a乃至fに対応するボタンが押し下げされたか否か示す、例えば、1または0の値をそれぞれ例えば、所定期間毎(例えば、1フレーム期間毎)に取得する。
【0023】
なお、上記においては各ボタンが押し下げられたか否かを示す1または0の操作情報について説明したが、例えば、アナログ操作部303が用いられる場合には、当該アナログ操作部303の基準位置からの傾き量と傾き方向に応じた操作情報や基準位置からのボタンが押し込まれた量に応じた操作情報(例えば、0から100の間の値、または、アナログ値そのもの)、または上記位置情報に応じた操作情報が取得されるように構成してもよい。
【0024】
接続状況監視部402は、各操作部205とサーバ101との接続状況を監視する。そして、例えば、接続されている端末103の操作部205から、所定の時間操作情報が入力されなかった場合等に、当該操作部205とサーバ101との接続が中断されたと判断する。
【0025】
テーブル管理部403は、例えば、ユーザの対応する操作部205への指示等に応じて、割当テーブルの内容を設定、変更する。具体的には、例えば、図6に示すように、テーブル管理部403は、コントローラポート404のポート1Pに操作部識別情報(操作部ID)Aが関連付けて記憶するよう割当テーブルを設定したり、その後の、更なるユーザの対応する操作部205への指示等に応じて、コントローラポート404のポート1Pに操作部識別情報Bを関連付けて記憶するように変更する等である。なお、ユーザの指示の他、あらかじめ割当テーブルを変更するルールを記憶しておき、当該ルールに応じて、テーブル管理部403が割当テーブルを変更するように構成してもよい。
【0026】
実行部405は、プログラム記憶部407に記憶されたゲームプログラムを、コントローラポート404に入力された各操作情報に応じて実行する。ここで、実行部405とコントローラポート404は、当該ゲームプログラムを対象としたゲーム機器のエミュレータ406やシミュレータにより実現される。または、実行部405とコントローラポート404は、当該ゲーム機器自体で構成してもよい。
【0027】
プログラム記憶部407は、1または複数のゲームプログラムを記憶する。そして、実行部405は、例えば、ユーザが選択したゲームプログラムをプログラム記憶部407から取得し、実行する。なお、上記エミュレータ406等により再現されるゲーム機器のメモリやレジスタの値を含むスナップショットデータを、例えば記憶部203や外部のデータベースに記憶しておき、実行部405が当該スナップショットデータを用いて対応するゲームプログラムを実行するようにしてもよい。この場合、例えば、ゲームプログラムの所定の時点、例えば、ある所定のステージやあるキャラクターが登場した時点等、からゲームプログラムを実行することができる。
【0028】
コントローラポート404は、エミュレータ406やシミュレータにより再現されるゲーム機器のコントローラポート404、ゲーム機器自体が実装される場合は、当該ゲーム機器のコントローラポート404に相当する。よって、例えば、コントローラポート404は、ゲームプログラムのプレイヤー1についてのコントローラ1(第1の操作部205)が接続される1Pポート、ゲームプログラムのプレイヤー2についてのコントローラ2(第2の操作部205)が接続される2Pポート等、各操作部205の各操作情報が入力される各ポートを有する。なお、当該各操作部205からの各操作情報は、ゲームプログラムがあらかじめ想定している各操作情報に対応するようにあらかじめ設定する。
【0029】
実行制御部408は、実行部405によるゲームプログラムの開始や終了を制御する。具体的には、例えば、ユーザの操作部205へのゲームの開始指示に応じて、ゲームプログラムの実行を開始したり、接続状況監視部402により、ゲームプレイ中のあるユーザに対応する操作部205との接続が中断されたと判断された場合には、当該ユーザに代わるユーザが設定されるまで、実行部405を停止する等である。また、実行制御部408は、後述する実行状況検出部409により、例えばゲームの終了画面等が認識されることで、ゲームの終了が検出された場合には、実行部405によるゲームプログラムの実行を終了するようにしてもよい。
【0030】
実行状況検出部409は、ゲームの進行における所定の場面(所定のゲームの実行状況)、例えば、後述する割当テーブルに基づき、あるゲームにおけるステージ1からステージ2への移行した場合や、格闘ゲームにおいてあるキャラクターが倒された場合に当該キャラクターから他のキャラクターへの移行した場合、における画像情報、音声情報等を検出する。
【0031】
具体的には、実行状況検出部409は、例えば、公知の画像認識技術により、あるゲームのステージがステージ1からステージ2に移行した場合に表示される画像、格闘ゲームにおいてあるキャラクターが登場または倒され次のキャラクターが表示される画像を、予め定められた種々の場面を検出する。
【0032】
なお、上記画像認識技術の他、例えば、音声認識により所定の場面における音声を認識することで、当該所定の場面を認識してもよい。更に、所定の場面におけるエミュレータ406やシミュレータにより再現されるゲーム機器のメモリ、レジスタ、プログラムカウンタ等の値に基づいて、または、ゲーム機器が実装される場合には、当該ゲーム機器のメモリ、レジスタ、プログラムカウンタ等の値に基づいて、予め定められた種々の場面を検出するように構成してもよい。
【0033】
より具体的には、例えば、予め定められた種々の場面における画像情報、音声情報、プログラムカウンタ等の値を、例えば、記憶部203やデータベース等に記憶しておき、実行部405から取得した画像情報、音声情報、プログラムカウンタ等の値と当該記憶された画像情報、音声情報、プログラムカウンタ等を比較することにより、上記所定の場面を検出するように構成する。
【0034】
画像情報生成部410は、例えば、ゲームプログラムのプレイ画面に後述するコントローラ割り当てウィンドウやあるユーザに対応する操作部205との接続が中断されたことを示すウィンドウを重ねて表示するための画像情報を生成する。なお、画像情報生成部410は、上記ウィンドウの他、当該ゲームプログラムを現在プレイしているユーザを識別する情報、例えば、ユーザ名等、を上記プレイ画面に表示するための画像情報を生成してもよい。この場合、例えば、当該ゲームプログラムをプレイしているユーザや観戦しているユーザは、後述するようなユーザの変更や現在プレイしているユーザを把握することができる。
【0035】
画像情報送信部411は、実行部405により生成されたゲームの画像情報や、画像情報生成部410により生成される上記画像情報を対応する各端末103に送信する。なお、画像情報送信部411は、当該画像情報を圧縮して対応する各端末103に送信してもよい。また、当該画像情報には、音声情報等が含まれてもよい。
【0036】
割当部412は、割当テーブル記憶部413に記憶された割当テーブルに基づいて、上記操作情報取得部401で取得された各操作部205からの操作情報をコントローラポート404の各ポートに入力する。具体的には、例えば、割当テーブル記憶部413は、図6に示すように、コントローラポート404の各ポートを識別するポートIDと各操作部を識別する操作部IDを関連付けた割当テーブルを記憶する。そして、割当部412は、当該割当テーブルに基づいて、各操作部205からの操作情報をコントローラポート404の各ポートに入力する。なお、各操作部205からの各操作情報は、所定期間毎に取得されるとともに、メモリ等の記憶手段(例えば記憶部105等)に保持され、当該記憶手段に保持された各操作部からの各操作情報がコントローラポート404に入力されるように構成してもよい。この場合、例えば、ゲームプログラムにおいて1フレーム期間毎に取得される操作情報により操作対象が操作等されるように設計されている場合、サーバ101における各操作部205からの各操作情報の取得が1フレーム期間よりも長い期間毎に行われる場合やネットワークの不具合等により操作情報のサーバ101における取得が遅延した場合等においても、当該記憶手段に保持された各操作情報を用いて、ゲームプログラムを実行することが可能となる。
【0037】
例えば、図6の例を用いて説明すると、割当部412は、コントローラポート404のポート1Pに操作部ID、Aの操作部205からの操作情報を出力し、コントローラポート404のポート2Pに操作部ID、Bの操作部205からの操作情報を出力する。なお。ポート3P及び4Pについても同様であるので、説明を省略する。このように構成することで、割当テーブルに基づいて、コントローラ割り当て(各操作部205の各ポートへの割り当て)を設定または変更することができる。
【0038】
また、割当テーブル記憶部413は、上記所定の実行状況を識別する実行状況ID、ポートID及び操作部IDを関連付けた割当テーブルを記憶してもよい。具体的には、図7Aまたは図7Bに示の例を用いて説明する。なお、図7Aは、例えば、当該ゲームプログラムが1のプレイヤーでプレイされるブロックくずしゲームの場合についての割当テーブルの一例、図7(B)が、例えば、当該ゲームプログラムが2のプレイヤーでプレイされる格闘ゲームの場合についての割当テーブルの一例を示すものとする。
【0039】
図7Aに示した割当テーブルにおいては、実行状況ID、a1について、ポートID、1P、及び、操作部IDとしてA、実行状況ID、a2について、ポートID、1P、及び操作部IDとしてBが関連付けられている。なお、実行状況IDがa3以下については、同様であるので、説明を省略する。また、実行状況IDは、例えば各ステージに対応しているものとする。具体的には、例えば、各実行状況IDは、各ステージが開始される際の画像情報やプログラムカウンタの値等に関連付けられているものとする。
【0040】
この場合、割当部412は、実行状況検出部409により、実行状況IDに対応したステージが開始されたことが検出されると、割当テーブルに基づいて、操作情報取得部401で取得された各操作情報の出力のコントローラの各ポートへの割り当てを変更する。
【0041】
具体的には、例えば、図7Aの場合において、例えば、実行状況ID、a1乃至a4がそれぞれ第1ステージから第4ステージに対応しているとする。この場合、割当テーブルは実行状況ID、a1乃至a4の順に、ポートIDとして1P及び操作部IDとしてA、B、A、Bを関連付けて記憶しているので、割当部412は、第1ステージで操作部IDがAに対応する操作部205の操作情報を1Pのポートに出力し、第2ステージが開示されると、第2ステージで操作部IDがBに対応する操作部205の操作情報を1Pのポートに出力する。第3ステージ以降は同様であるので説明を省略する。
【0042】
なお、上記においては、各操作部IDは各ユーザIDに関連付けられているものとする。また、上記においては、実行状況IDは、各ステージに対応するものとして説明したが、各プレイヤーが操作する各キャラクターや、コースを周回するレースゲーム等の場合において各周に対応する等その他の情報に対応していてもよい。
【0043】
上記のように構成することで、例えば、プログラム記憶部407に記憶されているゲームプログラムが1のプレイヤーのみでプレイされるよう作成されていたとしても、ステージ毎に異なるユーザがプレイできるようにする等ゲームプログラムには含まれていない新たな楽しみ方を付加することができる。なお、上記においてどのステージをどのユーザがプレイするか、つまり、どのステージにつきどの操作部205の操作情報をどのポートに割り当てるか、については、例えば、各ユーザがチャット機能等を用いて、あらかじめ設定し、これに応じて、上記のような割当テーブルが記憶されるようにすればよい。
【0044】
また、図7(B)に示した割当テーブルにおいては、各ポートIDについて、複数の実行状況ID及び複数の操作部IDが関連付けて記憶されている。具体的には、例えば、図7(B)に示すように、ポートID、1Pについて、実行状況ID、b1乃至b4、及び、操作部ID、A1乃至A4が、ポートID、2Pについて、実行状況ID、c1乃至c4、及び、操作部ID、B1乃至B4が関連付けて記憶されている。また、実行状況ID、b1乃至b4には、プレイヤーが担当するキャラクターに関連する情報が対応付けられている。具体的には、例えば、実行状況ID、b1は、あるキャラクターが登場する際の画像情報やプログラムカウンタの値、実行状況ID、b2は、当該キャラクターが倒されて次のキャラクターが登場する際の画像情報やプログラムカウンタの値が関連付けられている。
【0045】
これにより、実行状況検出部409が、例えば、上記画像情報等と、実行部405から取得される画像情報等とを比較することにより、キャラクターが登場した(キャラクターが変更した)ことを検出し、これに応じて、各操作部205からの各操作情報が出力される各ポートへの割当を変更することができる。これにより、例えば、ゲームプログラムが2のプレイヤーで対戦プレイされることを想定して作成されている場合であっても、キャラクター毎に当該キャラクターを操作するユーザを異ならせること等により、より多くの人数で対戦プレイする等が可能となる。
【0046】
なお、どのキャラクターをどのユーザが担当するか、つまり、どのキャラクターにつきどの操作部205からの操作情報をどのポートに割り当てるか等、については、例えば、ゲームの開始前に各ユーザが、チャット機能等を用いてあらかじめ設定し、上記のような割当テーブルが設定されるように構成すればよい。また、上記に示したサーバ101の構成は一例であって、これに限定されるものではない。例えば、例えばサーバ101をいわゆるクラウドサービスのような、互いに通信可能に接続される複数のアプリケーションサーバ、データベースサーバ、ストレージデバイス等を用いた分散コンピューティング環境に基づいて実現してもよい。
【0047】
次に、図8を用いて、ゲームプログラムが4のプレイヤーでプレイされるゴルフゲームである場合の例を用いて、本実施の形態における情報処理システムの処理のフローの他の一例について説明する。具体的には、割当テーブルが上記図6で示したように設定されている場合であって、当該ゴルフゲームのプレイ中に、例えば、操作部205識別情報Aで識別される操作部205とサーバ101との接続が中断された場合の例を用いて説明する。なお、図6で示した割当テーブルは、上述のように、4のユーザ(ユーザA乃至Dと称する)にそれぞれ対応する操作部識別情報A乃至Dで識別される操作部205からの各操作情報がそれぞれコントローラポート404の各ポートに割り当てられるための割当テーブルを示す。
【0048】
例えば、操作部識別情報Aで識別される操作部205からのゲーム開始指示により、実行部405は、プログラム記憶部407からゴルフゲームプログラムに保持されたゴルフゲームプログラムの実行を開始する(S101)。なお、ここでは、操作部識別情報Aで識別される操作部205に対応するユーザAがゲーム開始指示するとして説明したが、その他の操作部205に対応する他のユーザ、例えば、あらかじめ代表として設定されたユーザ、がゲーム開始指示するようにしてもよい。また、このとき、接続状況監視部402は、操作部識別情報A乃至Dに対応する各操作部205とサーバ101との接続状況の監視を開始する(S102)。
【0049】
そして、接続状況監視部402が、サーバ101とある操作部205との接続が中断されたと判断した場合には、画像情報生成部410は、例えば,図9Aに示すような接続が中断された操作部を特定するとともに当該操作部との接続が中断されたことを示す中断ウィンドウを表示するための画像情報をゲームのプレイ画面に重畳した重畳画像を生成し、画像情報送信部411は、当該重畳画像を対応する端末103に送信する(S103)。具体的には、例えば、図9Aに示す場合、操作部205とサーバ101との接続が中断されているので、他のユーザB乃至Dに対応する各操作部205に当該重畳画像を送信する。そして、当該各端末103は、当該重畳画像を表示する。
【0050】
次に、画像情報生成部410は、例えば図9(B)に示すような、各操作部の各ポートへの割り当てを変更するためのコントローラ割り当てウィンドウを表示するための画像情報をゲームのプレイ画面に重畳した重畳画像を生成し、画像情報送信部411は、当該重畳画像を対応する端末103に送信する(S104)。具体的には、例えば、図9(B)に示す場合、例えば、上記のようにユーザAとの接続が中断されているため、プレイヤー1Pに対応するユーザは「なし」と表示されている。
【0051】
次に、接続が維持されているユーザ、例えばユーザB乃至Dのいずれかが、対応する操作部205を用いて、割り当てを変更するよう、各操作部205を介して、操作指示する(S105)。具体的には、例えば、図9(B)に示すように、ユーザBが、対応する操作部205を用いて、コントローラ割り当てウィンドウに含まれる編集ボタン画像をクリック等することにより、1PにもユーザBを割り当てる。図9(C)は、このようにして、コントローラ1PにユーザBが割り当てられた様子を示す。
【0052】
また、このとき、図10Aに示すように、テーブル管理部403は、割当テーブル記憶部413に記憶されている割当テーブルのポートIDが1Pに対応する操作部識別情報を、ユーザBに変更する。なお、上記においては、具体例として、ユーザBがコントローラ1PにユーザBを割り当てる場合について説明したが、他のユーザがユーザBまたはその他のユーザを割り当ててもよい。また、複数のユーザから管理者を設定し、当該ユーザのみが上記のような割り当てを行えるように構成してもよい。この場合、当該管理者は、システムがあらかじめ設定された規則等に従って設定するよう構成してもよいし、当該複数のユーザがチャット機能等を用いて設定できるように構成してもよい。
【0053】
または、例えば、図9(B)において、接続が維持されている操作部205を操作するユーザ、ユーザB乃至Dのいずれか、がコントローラ割り当てウィンドウに含まれる募集ボタン画像を対応する操作部205を用いてクリック等することにより、現在当該ゴルフゲームをプレイしていないユーザ(例えばユーザE)が、対応する操作部205を用いて、当該ゴルフゲームのプレイヤー1Pとして参加できるようにしてもよい。図9(D)は、このようにして、1PにユーザEが割り当てられた様子を示す。例えば、ユーザEは、当該ユーザA乃至Dのプレイの様子を観戦しているユーザであってもよいし、対戦要求を出して参加可能なゲームを探している状態として登録等しているユーザであってもよい。
【0054】
また、このとき、図10(B)に示すように、テーブル管理部403は、割当テーブル記憶部413に記憶されている割当テーブルのポートIDが1Pに対応する操作部識別情報を、ユーザEが操作する操作部205の識別情報である識別情報Eに変更する。
【0055】
上記のように、割当テーブルが変更された後、実行部405は、ゲームを再開する(S106)。このとき、割当部412は、上記変更された割当テーブルに基づいて、各操作部205からの操作情報をコントローラポート404の各ポートに入力する。その後、S103乃至S106の処理を繰り返す。なお、ここで、当該ゲームプログラムの実行中にも、各プレイヤーに割り当てられているユーザを識別するための情報、例えば、ユーザ名等が、当該ゲームプログラムをプレイしているユーザや観戦しているユーザに対応した端末103の表示部204に表示されるように構成してもよい。この場合、例えば、当該ゲームプログラムをプレイしているユーザや観戦しているユーザは、ユーザの変更や現在プレイしているユーザを把握することができる。
【0056】
上記のように、例えば、プレイを継続できなくなったユーザまたはプレイの継続を所望しなくなったユーザに代えて、他のユーザがプレイを継続することができる。具体的には、例えば、図10Aに示した場合、操作ID、Aの操作部205からの操作情報から、操作ID、Bの操作情報を、ポート1Pに割り当てることで、プレイヤー1を担当していたユーザAに代えて、ユーザBがプレイヤー1と2を担当することができる。また、例えば、図10(B)に示した場合、操作ID、Aの操作部205からの操作情報から、操作ID、Eの操作情報を、ポート1Pに割り当てることで、プレイヤー1を担当していたユーザAに代えて、ユーザEがプレイヤー1を担当することができる。
【0057】
上記のように構成することで、例えば、複数人で対戦プレイを行っている間に、1のユーザがオフライン等となりゲームの継続が困難になった場合、または当該1のユーザがゲームの継続を希望しなくなった場合であっても、割当テーブルの内容を変更して、他のユーザが当該1のユーザのプレイを引き継ぐことが可能となる。
【0058】
なお、上記に示した処理のフローは一例であって、これに限定されるものではない。例えば、ユーザの指示に代えて、接続状況監視部402が、あるポートと1の操作部205との接続が中断されたと判断した場合には、あらかじめ設定された操作部205が当該ポートに接続されていた操作部205に代えて接続される等、ユーザの指示なしに、操作部205とポートとの割り当てが変更されるように構成してもよい。
【0059】
次に、プログラム記憶部407に記憶されたゲームプログラムが1のプレイヤーでプレイされるブロックくずしゲームや、2のプレイヤーで対戦プレイされる格闘ゲームである場合を用いて、本実施の形態における情報処理システムの処理のフローの他の一例について説明する。
【0060】
まず、上記のように、ゲームの開始前に、どのステージをどのユーザがプレイするかや、どのキャラクターについてどのユーザが担当するか等を、各ユーザが選択することにより、割当テーブル記憶部413は、例えば上述のような図7A及び7Bに示すような割当テーブルを記憶している。
【0061】
ゲームが開始されると、実行状況検出部409は、所定の実行状況の検出を開始する。上述のように、当該実行状況は、実行状況IDに関連付けられている。例えば、図7Aにおいては、ステージ1が実行状況ID、a1で、ステージ2が実行状況ID、a2等に対応し、図7Bにおいては、最初のキャラクターが実行状況ID、b1に、次のキャラクターが実行状況ID、b2等に対応している。
【0062】
そして、実行状況検出部409により所定の実行状況(実行状況IDに対応)が検出されると、割当テーブルに記憶された実行状況IDに関連付けて記憶されている操作部IDを有する操作部205からの操作情報を、関連付けて記憶されているポートIDで示されるポートへ入力するように変更する。
【0063】
具体的には、図7Aの例で説明すると、まず、ポートID、1Pで識別されるポートには、操作部ID、Aからの操作情報が入力されている。次に、実行状況ID、a2に対応するステージ2に移行した画面を実行状況検出部409が画像認識等により検出すると、割当部412は、実行状況ID、a2に関連付けて記憶されている操作部IDからの操作情報をポートID、1Pに入力する。以下同様であるので説明を省略する。これにより、例えばステージ1からステージ2に推移した場合に、ゲームプログラムの操作対象の操作を行う操作部を操作部ID、Aの操作部から、操作部ID、Bの操作部に変更することができる。つまり、ステージに応じて、ゲームの操作対象の操作を行うユーザを変更することができる。
【0064】
また、図7Bの例で説明すると、まず、ポートID、1Pで識別されるポートには、操作部ID、A1を有する端末103からの操作情報が入力されている。次に、実行状況ID、b2に対応するキャラクターが登場した画面を実行状況検出部409が画像認識等により検出すると、割当部412は、実行状況ID、b2に関連付けて記憶されている操作部IDを有する操作部205からの操作情報をポートID、1Pに入力する。以下同様であるので説明を省略する。これにより、例えば実行状況ID、b1に対応するキャラクターが倒されて実行状況ID、b2に対応するキャラクターが登場した場合に、ゲームプログラムの操作対象の操作を行う操作部を操作部ID、A1の操作部から、操作部ID、A2の操作部に変更することができる。
【0065】
上記のように、所定の実行状況の検出、例えば、ステージが進んだ場合や最初のキャラクターが倒されて次のキャラクターが登場した場合等、に応じて、当該ゲームをプレイするユーザを、各操作部205に入力される各操作情報の各ポートへの割当を変更することで、変更することができる。なお、上記に示した処理のフローは一例であってこれに限定されるものではない。例えば、図7や図10を用いて説明した処理を組み合わせて用いて、例えば、接続状況及び実行状況に応じて、各操作部の各ポートへの割当を変更する等としてもよい。
【0066】
なお、本発明は、上記実施の形態に限定されるものではなく、種々の変形が可能である。例えば、上記実施の形態で示した構成と実質的に同一の構成、同一の作用効果を奏する構成又は同一の目的を達成することができる構成で置き換えることができる。
【0067】
例えば、上記割当テーブルの変更は、上記のように1人用のゲームをステージ毎に交代してプレイする等の他、例えば、師匠に相当するユーザ、及び、弟子に相当するユーザ、をあらかじめ設定しておき、師匠が弟子のプレイ画面を観戦中に、師匠の操作部205を弟子の操作部205が接続されているポートへ、割当変更を指示することで、師匠が弟子の操作が適切でないと感じた際等にのみ、弟子が操作しているキャラクターを師匠が用いている操作部205を用いて操作できる等と構成してもよい。
【0068】
更に、ゲームプログラムがパズルゲームや、シューティングゲーム等である場合において、随時交代しながらゲームを進めるように構成してもよい。具体的には、例えば、当該割り当ての変更は、上記のように所定のユーザの操作部205への指示や所定の場面の検出等に応じて随時交代しながらゲームを進行するように構成すればよい。ここで、ユーザの操作部205への指示に応じて交代する場合、割当変更のためのメニュー画面上で割当変更するように構成してもよいし、スムーズに切り換えられるよう、操作部205のあるボタンに切換えボタンを割り当てるように構成してもよい。また、例えば、あるユーザがいわゆる1P(プレイヤー1)としてゲームをプレイしている場合に、別のユーザが対戦申し込みすると、自動的にプレイヤー2としてゲームに参入できるようにしてもよい。この場合、当該別のユーザからの対戦申し込みに応じて、割当テーブルを、例えば、別のユーザが用いている操作部205からの操作情報が、ポート2Pに割り当てられるように変更するように構成すればよい。なお、この場合、対戦申し込み以前の割当テーブルは、プレイヤー1に対応するユーザが用いている操作部205からの操作情報が、ポート1Pに割り当てられるように設定されていたものとする。
【0069】
更に、上記割り当ての変更は、例えばあらかじめ登録された複数のユーザの中で、一定時間毎に、どのユーザが用いる操作部205からの操作情報を有効にするか(ポートに割り当てるか)を所定の順番またはランダムで切り換えることができるように構成し、例えば、格闘ゲーム等において、チームやグループ同士等で対戦等できるように構成してもよい。
【0070】
[変形例1]
次に、変形例1について、説明する。なお、下記において、上記実施の形態と同様である点については説明を省略する。また、下記においては、例えば、主に、実行されるゲームプログラムが、4の操作情報、例えば、1のプレイヤーが4のボタンを用いて操作対象を操作するよう作成されている場合を用いて説明するが、その他の数のボタンやアナログ操作部303や加速度センサ等からの操作情報により操作されるよう作成されていてもよい。
【0071】
本変形例においては、割当テーブル記憶部413は、例えば、図11に示すように、ポートIDに関連付けて、操作情報ID、操作部ID、入力情報IDを記憶した割当テーブルを記憶する。ここで、操作情報IDとは、ゲームプログラムにおいて想定されている各操作情報を識別するためのIDであって、例えばゲームプログラムにおいて1のプレイヤーが4のボタンを用いて操作されるよう作成されている場合、当該4つのボタンをそれぞれ識別する情報に相当し、入力情報IDとは、操作部205に入力される各入力情報、例えば、上記4のボタンに対応付けられたボタン等をそれぞれ識別するための情報に相当する。
【0072】
具体的には、例えば、図11に示すように、ポートIDが1Pについては、操作情報ID、a乃至d、及び入力情報ID、aa乃至ddが関連付けられ、また、操作情報ID、a及びbについては、操作部ID、A及びBがそれぞれ関連づけられている。なお、ポートID、2Pについても同様であるので説明を省略する。
【0073】
割当部412は、当該割当テーブルに基づき、各入力情報IDで示される各入力情報を、各操作情報IDで示される各操作情報に、割り当てる。具体的には、例えば、図11に示す場合、ポートID、1Pに入力される操作情報ID、a及びbで識別される操作情報として、操作部IDがAで識別される操作部に入力され、入力情報ID、aa及びbbで識別される入力情報を割り当てる。また、ポートID、1Pに入力される操作情報ID、c及びdで識別される操作情報として、操作部IDがAで識別される操作部に入力される入力情報ID、cc及びddで識別される入力情報を割り当てる。
【0074】
このように構成することで、当該ゲームプログラムでプレイヤー1が操作する複数の操作情報を、複数のユーザで分担させることができる。具体的には、例えば、操作情報ID、a及びbで示される各操作情報がゲームプログラムのプレイヤー1のボタンa、bへ入力される情報に対応し、例えば、操作情報ID、c及びdで示される操作情報がゲームプログラムのプレイヤー1のボタンc、dへ入力される情報に対応する場合、当該ボタンa、bをユーザAが担当し、当該ボタンc、dをユーザBが担当するように構成することができる。なお、当該ゲームプログラムのプレイヤー2についても同様であるので、説明を省略する。また、各操作部IDは、各ユーザIDに関連付けられており、各ユーザは対応する各操作部205を用いて、入力情報IDで識別される各入力情報を入力する。
【0075】
次に、上記の例を用いて、本変形例における情報処理システムの処理のフローの一例について説明する。まず、例えば、上記のように、ゲームの開始前に、ゲームのどのプレイヤー(プレイヤー1または2)をどのユーザが担当するか、及び、どのプレイヤーのどのボタンをどのユーザが担当するか、について、各ユーザが選択することにより、割当テーブル記憶部413は、上記図11に示すような割当テーブルを記憶する。
【0076】
そして、ゲームが開始されると、割当部412は、上記のように設定された割当テーブルにしたがって、各操作部から入力された各入力情報識別IDで識別される各識別情報を、各操作情報IDで識別される各操作情報として割り当てる。具体的には、図11に示した例を用いて説明すると、上記のように、コントローラポート404の1Pポートには、操作部IDがAとBに相当する各操作部205からの情報が入力される。具体的には、1Pポートには操作情報ID、aとbの各操作情報として、操作部IDがAの操作部205に入力される入力情報ID、aa及びbbで示される各入力情報が入力され、cとdの各操作情報として、操作部IDがAの操作部205に入力される入力情報ID、cc及びddで示される各入力情報が入力される等である。
【0077】
上記のように構成することで、複数の操作部205で入力された各入力情報をコントローラポート404の1のポートに入力される各操作情報として、入力することができる。したがって、例えば、ある操作対象の操作に使用される複数のボタン等をユーザ毎に分けて操作することが可能となる。具体的には、例えば、当該ゲームプログラムがシューティングゲームである場合、ユーザが操作する戦闘機の方向操作(例えば、ボタンaとbに相当)については、ユーザAが、2種類のミサイルの発射ボタン(例えば、ボタンcとdに相当)については、ユーザBが担当する等が可能となる。これにより、例えば、1のプレイヤーを想定して作成されたゲームプログラムであっても、複数のプレイヤーが当該ゲームで用いられる1のコントローラに含まれる複数のボタン等をユーザ毎に(操作部毎に)分担してプレイするようないわゆる協力プレイ、分担プレイを実現することができる。
【0078】
なお、本発明は、上記実施の形態または変形例1に限定されるものではなく、種々の変形が可能である。例えば、上記実施の形態または変形例1で示した構成と実質的に同一の構成、同一の作用効果を奏する構成又は同一の目的を達成することができる構成で置き換えることができる。例えば、上記実施の形態または変形例1を組み合わせて、例えば、ゲームの途中でのユーザの指示に応じて、または、上記のような所定の場面に応じて、例えば、ステージ毎、キャラクター毎に、または、所定の時間毎に、操作部205に入力される各入力情報の操作情報への割り当てを変更または設定等できるように構成してもよい。
【0079】
[変形例2]
次に、変形例2について、説明する。なお、下記において、上記実施の形態または変形例1と同様である点については説明を省略する。また、変形例1と同様に、例えば、主に、実行されるゲームプログラムが、4の操作情報、例えば、1のプレイヤーが4のボタンを用いて操作対象を操作するよう作成されている場合を用いて説明するが、その他の数のボタンやアナログ操作部303や加速度センサ等からの操作情報により操作されるよう作成されていてもよい。
【0080】
本変形例においては、変形例1と同様に、割当テーブル記憶部413は、例えば、図12に示すように、ポートIDに関連付けて、操作情報ID、操作部ID、入力情報IDを記憶した割当テーブルを記憶するが、本変形例においては、1の操作情報IDに複数の操作部IDが関連付けられている点が異なる。
【0081】
具体的には、例えば、図12に示すように、ポートID、1Pの操作情報ID、cについて、2の操作部ID、AとB、操作情報ID、dについて2の操作部ID、AとBが関連付けられて記憶されている。
【0082】
割当部412は、当該割当テーブルに基づき、各入力情報IDで示される各入力情報を、各操作情報IDで示される各操作情報に割り当てる。具体的には、例えば、図12に示す場合、上記変形例1で説明したように、ポートID、1Pに入力される操作情報ID、a及びbで識別される各操作情報として、操作部IDがAで識別される操作部に入力される入力情報ID、aa及びbbで示される入力情報を入力する。一方、ポートID、1Pに入力される操作情報ID、c及びdで識別される操作情報として、操作部IDがA及びBで識別される操作部に入力される入力情報ID、cc及びddで示される入力情報を入力する。
【0083】
このように構成することで、当該ゲームプログラムにおいてプレイヤー1が入力するよう作成された操作情報を、複数のユーザで分担させることができることに加え、プレイヤー1が入力する1または全部の入力情報を、異なるユーザに重複して分担させることができる。具体的には、上記の例の場合、例えば、操作情報ID、c及びdで示される操作情報がゲームプログラムのプレイヤー1のボタンc、dへ入力される情報に対応する場合、当該ボタンc、dをユーザA及びBの両者が担当するように構成することができる。なお、当該ゲームプログラムのプレイヤー2についても同様であるので、説明を省略する。
【0084】
次に、上記の例を用いて、本変形例における情報処理システムの処理のフローの一例について説明する。まず、例えば、上記のように、ゲームの開始前に、ゲームのどのプレイヤー(例えば、プレイヤー1または2)をどのユーザが担当するか、及び、どのプレイヤーのどのボタンをどのユーザが担当するか、について、各ユーザが選択することにより、割当テーブル記憶部413は、上記図12に示すような割当テーブルを記憶する。
【0085】
そして、ゲームが開始されると、割当部412は、上記のように設定された割当テーブルにしたがって、各操作部205から入力された各入力情報識別IDで識別される各識別情報を、各操作情報IDで識別される各操作情報として割り当てる。具体的には、図12に示した例を用いて説明すると、上記のように、コントローラポート404の1Pポートには、操作部IDがAとBに相当する各操作部205からの情報が入力される。具体的には、1Pポートには操作情報ID、aとbの各操作情報として、操作部IDがAの操作部205に入力される入力情報ID、aa及びbbで示される各入力情報が入力され、cとdの各操作情報として、操作部IDがA及びBに対応する操作部205に入力される入力情報ID、cc及びddで示される各入力情報が入力される等である。
【0086】
上記のように構成することで、複数の操作部205からの操作情報をコントローラポート404の1のポートに、重複して入力することができる。したがって、例えば、当該ゲームプログラムがシューティングゲームである場合、自分の戦闘機の方向操作(例えば、ボタンaとbに相当)については、ユーザAが、2種類のミサイルの発射ボタン(例えば、ボタンcとdに相当)については、ユーザAとBの両者が担当する等が可能となる。これにより、例えば、発射ボタンの連打等が望まれるような場合には、ユーザAとBのボタンc、dの押し下げによる入力情報を重複して入力することにより、いわゆる協力プレイ、分担プレイ等を実現することが可能となる。例えば、クイズの早押しに関するゲームである場合には、同時にグループ毎の複数のユーザからの入力を有効とすることで、グループ毎のいわゆる協力、対戦プレイを実現することができる。
【0087】
なお、本発明は、上記実施の形態または変形例1または2に限定されるものではなく、種々の変形が可能である。例えば、上記実施の形態または変形例1または2で示した構成と実質的に同一の構成、同一の作用効果を奏する構成又は同一の目的を達成することができる構成で置き換えることができる。例えば、上記実施の形態、変形例1及び2を組み合わせて、例えば、ゲームの途中でのユーザの指示に応じて、または、上記のような所定の場面に応じて、例えば、ステージ毎、キャラクター毎に、または、所定の時間毎に、操作部に入力される各入力情報の操作情報への割り当てを、上記のような割り当てが重複する場合も含めて、変更または設定等できるように構成してもよい。更に、上記においては、サーバ101及び各端末103等で構成される情報処理システムについて説明したが、端末103自体が、上記サーバ101の機能の一部または全部、例えば、上記実行部405、コントローラポート404、割当部412等を有することにより、当該端末103に接続される複数の端末103の当該コントローラポート404への割り当てを上記のように動的に変更できるように構成してもよい。
【符号の説明】
【0088】
101 サーバ、102 ネットワーク、103 端末、104、201 制御部、105、203 記憶部、106、202 通信部、204 表示部、205 操作部、301 方向キー、302 複数のボタン、303 アナログ操作部、401 操作情報取得部、402 接続状況監視部、403 テーブル管理部、404 コントローラポート、405 実行部、407 プログラム記憶部、408 実行制御部、409 実行状況検出部、410 画像情報生成部、411 画像情報送信部、412 割当部、413 割当テーブル記憶部。
【特許請求の範囲】
【請求項1】
ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポートと、
前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行する実行手段と、
前記各ポートへ前記各操作装置を割り当てる割当手段と、を有し、
前記割当手段は、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、
ことを特徴とする情報処理システム。
【請求項2】
前記情報処理システムは、更に、前記各ポートに対応した情報と前記各操作装置に対応した情報を関連付けた画像情報を生成する画像情報生成手段を有し、
前記割当手段は、前記画像情報に応じたユーザの割り当て指示に基づいて、前記各ポートへの前記各操作装置の割り当てを変更することを特徴とする請求項1記載の情報処理システム。
【請求項3】
前記割当手段は、前記複数の操作装置のうちの1の操作装置を、前記複数のポートのうち少なくとも2のポートへ割り当てることを特徴とする請求項1または2に記載の情報処理システム。
【請求項4】
前記情報処理システムは、更に、前記各ポートと前記各操作装置の接続状況を表す接続情報を取得する接続情報取得手段と、
前記取得された接続状況に応じて、前記割当手段は、前記各ポートへの前記各操作装置の割り当てを変更する、
ことを特徴とする請求項1乃至3のいずれかに記載の情報処理システム。
【請求項5】
前記情報処理システムは、更に、
前記実行部の所定の実行状況を検出する実行状況検出部を有し、
前記割当変更手段は、前記検出された実行状況に基づいて、前記割当手段は、前記各ポートへの前記各操作装置の割り当てを変更する、
ことを特徴とする請求項1乃至4のいずれかに記載の情報処理システム。
【請求項6】
前記実行状況検出部は、画像処理を用いて、前記所定の実行状況を検出することを特徴とする請求項5に記載の情報処理システム。
【請求項7】
前記割当手段は、前記各ポートを識別する各ポート識別情報が前記各操作装置を識別する各操作装置識別情報に関連付けて記憶された割当情報に基づいて、前記各ポートへの前記各操作装置の割り当てを変更することを特徴とする請求項1乃至6のいずれかに記載の情報処理システム。
【請求項8】
前記割当情報には前記所定の実行状況を識別する実行状況識別情報が関連付けて記憶されていることを特徴とする請求項7に記載の情報処理システム。
【請求項9】
前記割当情報は、前記取得された接続状況に応じて、更新されることを特徴とする請求項4に記載の情報処理システム。
【請求項10】
前記割当情報は、前記検出された実行状況に基づいて、更新されることを特徴とする請求項5、6、または8のいずれかに記載の情報処理システム。
【請求項11】
前記割当手段は、前記更新された割当情報に基づいて、前記各ポートへの前記各操作装置の割り当てを変更することを特徴とする請求項9または10に記載の情報処理システム。
【請求項12】
ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポートの前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行し、
前記各ポートへ前記各操作装置を割り当て、
所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、
ことを特徴とする情報処理方法。
【請求項13】
ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポート手段、
前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行する実行手段、及び、
前記各ポートへ前記各操作装置を割り当てる割当手段、としてコンピュータを機能させるための情報処理プログラムであって
前記割当手段は、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、ことを特徴とする情報処理プログラム。
【請求項14】
請求項12に記載した情報処理プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項1】
ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポートと、
前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行する実行手段と、
前記各ポートへ前記各操作装置を割り当てる割当手段と、を有し、
前記割当手段は、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、
ことを特徴とする情報処理システム。
【請求項2】
前記情報処理システムは、更に、前記各ポートに対応した情報と前記各操作装置に対応した情報を関連付けた画像情報を生成する画像情報生成手段を有し、
前記割当手段は、前記画像情報に応じたユーザの割り当て指示に基づいて、前記各ポートへの前記各操作装置の割り当てを変更することを特徴とする請求項1記載の情報処理システム。
【請求項3】
前記割当手段は、前記複数の操作装置のうちの1の操作装置を、前記複数のポートのうち少なくとも2のポートへ割り当てることを特徴とする請求項1または2に記載の情報処理システム。
【請求項4】
前記情報処理システムは、更に、前記各ポートと前記各操作装置の接続状況を表す接続情報を取得する接続情報取得手段と、
前記取得された接続状況に応じて、前記割当手段は、前記各ポートへの前記各操作装置の割り当てを変更する、
ことを特徴とする請求項1乃至3のいずれかに記載の情報処理システム。
【請求項5】
前記情報処理システムは、更に、
前記実行部の所定の実行状況を検出する実行状況検出部を有し、
前記割当変更手段は、前記検出された実行状況に基づいて、前記割当手段は、前記各ポートへの前記各操作装置の割り当てを変更する、
ことを特徴とする請求項1乃至4のいずれかに記載の情報処理システム。
【請求項6】
前記実行状況検出部は、画像処理を用いて、前記所定の実行状況を検出することを特徴とする請求項5に記載の情報処理システム。
【請求項7】
前記割当手段は、前記各ポートを識別する各ポート識別情報が前記各操作装置を識別する各操作装置識別情報に関連付けて記憶された割当情報に基づいて、前記各ポートへの前記各操作装置の割り当てを変更することを特徴とする請求項1乃至6のいずれかに記載の情報処理システム。
【請求項8】
前記割当情報には前記所定の実行状況を識別する実行状況識別情報が関連付けて記憶されていることを特徴とする請求項7に記載の情報処理システム。
【請求項9】
前記割当情報は、前記取得された接続状況に応じて、更新されることを特徴とする請求項4に記載の情報処理システム。
【請求項10】
前記割当情報は、前記検出された実行状況に基づいて、更新されることを特徴とする請求項5、6、または8のいずれかに記載の情報処理システム。
【請求項11】
前記割当手段は、前記更新された割当情報に基づいて、前記各ポートへの前記各操作装置の割り当てを変更することを特徴とする請求項9または10に記載の情報処理システム。
【請求項12】
ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポートの前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行し、
前記各ポートへ前記各操作装置を割り当て、
所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、
ことを特徴とする情報処理方法。
【請求項13】
ネットワークを介して複数の操作装置からの複数の操作信号が入力される複数のポートを有するコントローラポート手段、
前記各ポートに入力される前記各操作装置からの各操作信号に応じてゲームプログラムを実行する実行手段、及び、
前記各ポートへ前記各操作装置を割り当てる割当手段、としてコンピュータを機能させるための情報処理プログラムであって
前記割当手段は、所定の場合に、前記各ポートへの前記各操作装置の割り当てを変更する、ことを特徴とする情報処理プログラム。
【請求項14】
請求項12に記載した情報処理プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図8】
【図9A】
【図9B】
【図9C】
【図9D】
【図10A】
【図10B】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7A】
【図7B】
【図8】
【図9A】
【図9B】
【図9C】
【図9D】
【図10A】
【図10B】
【図11】
【図12】
【公開番号】特開2012−120783(P2012−120783A)
【公開日】平成24年6月28日(2012.6.28)
【国際特許分類】
【出願番号】特願2010−275863(P2010−275863)
【出願日】平成22年12月10日(2010.12.10)
【出願人】(310021766)株式会社ソニー・コンピュータエンタテインメント (417)
【Fターム(参考)】
【公開日】平成24年6月28日(2012.6.28)
【国際特許分類】
【出願日】平成22年12月10日(2010.12.10)
【出願人】(310021766)株式会社ソニー・コンピュータエンタテインメント (417)
【Fターム(参考)】
[ Back to top ]