以下、本実施形態の一例に係るゲームシステムについて説明する。本実施形態におけるゲームシステム1の一例は、本体装置(情報処理装置;本実施形態ではゲーム装置本体として機能する)2と左コントローラ3および右コントローラ4とを含む。本体装置2は、左コントローラ3および右コントローラ4がそれぞれ着脱可能である。つまり、ゲームシステム1は、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用できる。また、ゲームシステム1は、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる(図2参照)。以下では、本実施形態のゲームシステム1のハードウェア構成について説明し、その後に本実施形態のゲームシステム1の制御について説明する。
図1は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図である。図1に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。本体装置2は、ディスプレイ12を備える。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。
図2は、本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図である。図1および図2に示すように、左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
図3は、本体装置2の一例を示す六面図である。図3に示すように、本体装置2は、略板状のハウジング11を備える。本実施形態において、ハウジング11の主面(換言すれば、表側の面、すなわち、ディスプレイ12が設けられる面)は、大略的には矩形形状である。
なお、ハウジング11の形状および大きさは、任意である。一例として、ハウジング11は、携帯可能な大きさであってよい。また、本体装置2単体または本体装置2に左コントローラ3および右コントローラ4が装着された一体型装置は、携帯型装置となってもよい。また、本体装置2または一体型装置が手持ち型の装置となってもよい。また、本体装置2または一体型装置が可搬型装置となってもよい。
図3に示すように、本体装置2は、ハウジング11の主面に設けられるディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。本実施形態においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
本体装置2は、ハウジング11の内部においてスピーカ(すなわち、図6に示すスピーカ88)を備えている。図3に示すように、ハウジング11の主面には、スピーカ孔11aおよび11bが形成される。そして、スピーカ88の出力音は、これらのスピーカ孔11aおよび11bからそれぞれ出力される。
また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための端子である左側端子17と、本体装置2が右コントローラ4と有線通信を行うための右側端子21を備える。
図3に示すように、本体装置2は、スロット23を備える。スロット23は、ハウジング11の上側面に設けられる。スロット23は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム1およびそれと同種の情報処理装置に専用の記憶媒体(例えば、専用メモリカード)である。所定の種類の記憶媒体は、例えば、本体装置2で利用されるデータ(例えば、アプリケーションのセーブデータ等)、および/または、本体装置2で実行されるプログラム(例えば、アプリケーションのプログラム等)を記憶するために用いられる。また、本体装置2は、電源ボタン28を備える。
本体装置2は、下側端子27を備える。下側端子27は、本体装置2がクレードルと通信を行うための端子である。本実施形態において、下側端子27は、USBコネクタ(より具体的には、メス側コネクタ)である。上記一体型装置または本体装置2単体をクレードルに載置した場合、ゲームシステム1は、本体装置2が生成して出力する画像を据置型モニタに表示することができる。また、本実施形態においては、クレードルは、載置された上記一体型装置または本体装置2単体を充電する機能を有する。また、クレードルは、ハブ装置(具体的には、USBハブ)の機能を有する。
図4は、左コントローラ3の一例を示す六面図である。図4に示すように、左コントローラ3は、ハウジング31を備える。本実施形態においては、ハウジング31は、縦長の形状、すなわち、上下方向(すなわち、図1および図4に示すy軸方向)に長い形状である。左コントローラ3は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング31は、縦長となる向きで把持される場合に片手、特に左手で把持可能な形状および大きさをしている。また、左コントローラ3は、横長となる向きで把持されることも可能である。左コントローラ3が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
左コントローラ3は、アナログスティック32を備える。図4に示すように、アナログスティック32は、ハウジング31の主面に設けられる。アナログスティック32は、方向を入力することが可能な方向入力部として用いることができる。ユーザは、アナログスティック32を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。なお、左コントローラ3は、方向入力部として、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、本実施形態においては、アナログスティック32を押下する入力が可能である。
左コントローラ3は、各種操作ボタンを備える。左コントローラ3は、ハウジング31の主面上に4つの操作ボタン33~36(具体的には、右方向ボタン33、下方向ボタン34、上方向ボタン35、および左方向ボタン36)を備える。さらに、左コントローラ3は、録画ボタン37および-(マイナス)ボタン47を備える。左コントローラ3は、ハウジング31の側面の左上に第1Lボタン38およびZLボタン39を備える。また、左コントローラ3は、ハウジング31の側面の、本体装置2に装着される際に装着される側の面に第2Lボタン43および第2Rボタン44を備える。これらの操作ボタンは、本体装置2で実行される各種プログラム(例えば、OSプログラムやアプリケーションプログラム)に応じた指示を行うために用いられる。
また、左コントローラ3は、左コントローラ3が本体装置2と有線通信を行うための端子42を備える。
図5は、右コントローラ4の一例を示す六面図である。図5に示すように、右コントローラ4は、ハウジング51を備える。本実施形態においては、ハウジング51は、縦長の形状、すなわち、上下方向に長い形状である。右コントローラ4は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング51は、縦長となる向きで把持される場合に片手、特に右手で把持可能な形状および大きさをしている。また、右コントローラ4は、横長となる向きで把持されることも可能である。右コントローラ4が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
右コントローラ4は、左コントローラ3と同様、方向入力部としてアナログスティック52を備える。本実施形態においては、アナログスティック52は、左コントローラ3のアナログスティック32と同じ構成である。また、右コントローラ4は、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、右コントローラ4は、左コントローラ3と同様、ハウジング51の主面上に4つの操作ボタン53~56(具体的には、Aボタン53、Bボタン54、Xボタン55、およびYボタン56)を備える。さらに、右コントローラ4は、+(プラス)ボタン57およびホームボタン58を備える。また、右コントローラ4は、ハウジング51の側面の右上に第1Rボタン60およびZRボタン61を備える。また、右コントローラ4は、左コントローラ3と同様、第2Lボタン65および第2Rボタン66を備える。
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
図6は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、図3に示す構成の他、図6に示す各構成要素81~91、97、および98を備える。これらの構成要素81~91、97、および98のいくつかは、電子部品として電子回路基板上に実装されてハウジング11内に収納されてもよい。
本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。
プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、プロセッサ81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。本実施形態においては、ネットワーク通信部82は、第1の通信態様としてWi-Fiの規格に準拠した方式により、無線LANに接続して外部装置と通信を行う。また、ネットワーク通信部82は、第2の通信態様として所定の通信方式(例えば、独自プロトコルによる通信や、赤外線通信)により、同種の他の本体装置2との間で無線通信を行う。なお、上記第2の通信態様による無線通信は、閉ざされたローカルネットワークエリア内に配置された他の本体装置2との間で無線通信可能であり、複数の本体装置2の間で直接通信することによってデータが送受信される、いわゆる「ローカル通信」を可能とする機能を実現する。
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
プロセッサ81は、上述の左側端子17、右側端子21、および下側端子27に接続される。プロセッサ81は、左コントローラ3と有線通信を行う場合、左側端子17を介して左コントローラ3へデータを送信するとともに、左側端子17を介して左コントローラ3から操作データを受信する。また、プロセッサ81は、右コントローラ4と有線通信を行う場合、右側端子21を介して右コントローラ4へデータを送信するとともに、右側端子21を介して右コントローラ4から操作データを受信する。また、プロセッサ81は、クレードルと通信を行う場合、下側端子27を介してクレードルへデータを送信する。このように、本実施形態においては、本体装置2は、左コントローラ3および右コントローラ4との間で、それぞれ有線通信と無線通信との両方を行うことができる。また、左コントローラ3および右コントローラ4が本体装置2に装着された一体型装置または本体装置2単体がクレードルに装着された場合、本体装置2は、クレードルを介してデータ(例えば、画像データや音声データ)を据置型モニタ等に出力することができる。
ここで、本体装置2は、複数の左コントローラ3と同時に(換言すれば、並行して)通信を行うことができる。また、本体装置2は、複数の右コントローラ4と同時に(換言すれば、並行して)通信を行うことができる。したがって、複数のユーザは、左コントローラ3および右コントローラ4のセットをそれぞれ用いて、本体装置2に対する入力を同時に行うことができる。一例として、第1ユーザが左コントローラ3および右コントローラ4の第1セットを用いて本体装置2に対して入力を行うと同時に、第2ユーザが左コントローラ3および右コントローラ4の第2セットを用いて本体装置2に対して入力を行うことが可能となる。
また、ディスプレイ12は、プロセッサ81に接続される。プロセッサ81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
本体装置2は、コーデック回路87およびスピーカ(具体的には、左スピーカおよび右スピーカ)88を備える。コーデック回路87は、スピーカ88および音声入出力端子25に接続されるとともに、プロセッサ81に接続される。コーデック回路87は、スピーカ88および音声入出力端子25に対する音声データの入出力を制御する回路である。
本体装置2は、電力制御部97およびバッテリ98を備える。電力制御部97は、バッテリ98およびプロセッサ81に接続される。また、図示しないが、電力制御部97は、本体装置2の各部(具体的には、バッテリ98の電力の給電を受ける各部、左側端子17、および右側端子21)に接続される。電力制御部97は、プロセッサ81からの指令に基づいて、バッテリ98から上記各部への電力供給を制御する。
また、バッテリ98は、下側端子27に接続される。外部の充電装置(例えば、クレードル)が下側端子27に接続され、下側端子27を介して本体装置2に電力が供給される場合、供給された電力がバッテリ98に充電される。
図7は、本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図である。なお、本体装置2に関する内部構成の詳細については、図6で示しているため図7では省略している。
左コントローラ3は、本体装置2との間で通信を行う通信制御部101を備える。図7に示すように、通信制御部101は、端子42を含む各構成要素に接続される。本実施形態においては、通信制御部101は、端子42を介した有線通信と、端子42を介さない無線通信との両方で本体装置2と通信を行うことが可能である。通信制御部101は、左コントローラ3が本体装置2に対して行う通信方法を制御する。すなわち、左コントローラ3が本体装置2に装着されている場合、通信制御部101は、端子42を介して本体装置2と通信を行う。また、左コントローラ3が本体装置2から外されている場合、通信制御部101は、本体装置2(具体的には、コントローラ通信部83)との間で無線通信を行う。コントローラ通信部83と通信制御部101との間の無線通信は、例えばBluetooth(登録商標)の規格に従って行われる。
また、左コントローラ3は、例えばフラッシュメモリ等のメモリ102を備える。通信制御部101は、例えばマイコン(マイクロプロセッサとも言う)で構成され、メモリ102に記憶されるファームウェアを実行することによって各種の処理を実行する。
左コントローラ3は、各ボタン103(具体的には、ボタン33~39、43、44、および47)を備える。また、左コントローラ3は、アナログスティック(図7では「スティック」と記載する)32を備える。各ボタン103およびアナログスティック32は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部101へ出力する。
通信制御部101は、各入力部(具体的には、各ボタン103、および、アナログスティック32)から、入力に関する情報(具体的には、操作に関する情報、またはセンサによる検出結果)を取得する。通信制御部101は、取得した情報(または取得した情報に所定の加工を行った情報)を含む操作データを本体装置2へ送信する。なお、操作データは、所定時間に1回の割合で繰り返し送信される。なお、入力に関する情報が本体装置2へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。
上記操作データが本体装置2へ送信されることによって、本体装置2は、左コントローラ3に対して行われた入力を得ることができる。すなわち、本体装置2は、各ボタン103およびアナログスティック32に対する操作を、操作データに基づいて判別することができる。
左コントローラ3は、電力供給部108を備える。本実施形態において、電力供給部108は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ3の各部(具体的には、バッテリの電力の給電を受ける各部)に接続される。
図7に示すように、右コントローラ4は、本体装置2との間で通信を行う通信制御部111を備える。また、右コントローラ4は、通信制御部111に接続されるメモリ112を備える。通信制御部111は、端子64を含む各構成要素に接続される。通信制御部111およびメモリ112は、左コントローラ3の通信制御部101およびメモリ102と同様の機能を有する。したがって、通信制御部111は、端子64を介した有線通信と、端子64を介さない無線通信(具体的には、Bluetooth(登録商標)の規格に従った通信)との両方で本体装置2と通信を行うことが可能であり、右コントローラ4が本体装置2に対して行う通信方法を制御する。
右コントローラ4は、左コントローラ3の各入力部と同様の各入力部を備える。具体的には、各ボタン113、および、アナログスティック52を備える。これらの各入力部については、左コントローラ3の各入力部と同様の機能を有し、同様に動作する。
右コントローラ4は、電力供給部118を備える。電力供給部118は、左コントローラ3の電力供給部108と同様の機能を有し、同様に動作する。
以上に説明したように、本実施形態におけるゲームシステム1については左コントローラ3および右コントローラ4が本体装置2から着脱可能である。また、クレードルに左コントローラ3および右コントローラ4が本体装置2に装着された一体型装置や本体装置2単体を装着することによって据置型モニタ等の外部表示装置に画像(および音声)を出力可能である。以下の説明では、ディスプレイ12に画像を表示する利用態様におけるゲームシステム1を用いて説明する。
ゲームシステム1における左コントローラ3および/または右コントローラ4の各操作ボタンやスティックの操作、あるいは本体装置2のタッチパネル13に対するタッチ操作等に応じて、ディスプレイ12に表示される仮想空間を用いたゲームプレイが行われる。本実施例では、一例として、上記操作ボタン、スティック、およびタッチパネル13を用いたユーザ操作に応じて、仮想空間内に配置された、複数のキャラクタ等を動作させるゲームプレイが可能となる。
図8および図9を用いて、複数のゲームシステム1およびサーバ200によって構成される情報処理システムについて説明する。図8は、情報処理システムの構成の一例を示すブロック図である。図9は、サーバ200の構成の一例を示すブロック図である。
図8に示すように、複数のゲームシステム1およびサーバ200が、ネットワーク100を介して接続されることによって情報処理システムが構築される。ゲームシステム1は、無線または有線通信を用いて、ネットワーク100に接続可能に構成され、サーバ200との間でクライアント-サーバシステムを構成している。例えば、ゲームシステム1は、所定のアプリケーション(例えば、ゲームアプリケーション)の実行が可能である。また、ゲームシステム1は、上記所定のアプリケーションを実行することによって、ネットワーク100を介して、サーバ200と接続を確立して、サーバ200との通信が可能となる。
サーバ200は、通信部201、制御部202、および記憶部203を有している。通信部201は、通信パケットの送受信を行うことで、ネットワーク100を介してゲームシステム1等と通信を行う。一例として、制御部202は、ゲームシステム1との間で行われるゲーム進行の管理、ユーザ間で交換するキャラクタ、交換された場所等を管理する処理、課金に関する情報を管理する処理等のほか、通信部201を介してゲームシステム1等との通信リンクを確立し、ネットワーク100におけるデータ搬送制御や経路選択を行う。また、制御部202は、複数のゲームシステム1との間でゲーム(例えば、後述するキャラクタの交換)を行う場合、当該ゲームを行うゲームシステム1の組み合わせや当該ゲームシステム1の間のデータ通信の管理を行う。記憶部203は、制御部202で実行されるプログラム、上記処理に必要な各種データ、ゲームシステム1との通信に必要な各種データ等が記憶される。なお、ネットワーク100を用いたデータ送受信に所定のログイン処理が必要なシステムである場合、当該ログインしようとしているユーザが正規のユーザか否かを判別する認証処理をサーバ200において行ってもかまわない。また、サーバ200は、単一のサーバマシンから構成されてもいいし、複数のサーバマシンによって構成されてもよい。
本実施例では、ゲーム内で用いられるアイテムまたはキャラクタを交換対象としてユーザ間で交換する処理が可能である。上記交換が行われる場合、サーバ200を介して、上記交換対象の情報を示す交換対象情報データIがサーバ200を介して送受信される。例えば、ゲームシステム1aのユーザとゲームシステム1bのユーザとの間で上記交換が成立した場合、ゲームシステム1aのユーザが交換に出した交換対象の情報を示す交換対象情報データIaが、サーバ200を介してゲームシステム1aからゲームシステム1bへ送信される。また、ゲームシステム1bのユーザが交換に出した交換対象の情報を示す交換対象情報データIbが、サーバ200を介してゲームシステム1bからゲームシステム1aへ送信される。これらの交換対象情報データIが送受信されることによって、ゲームシステム1aのユーザとゲームシステム1bのユーザとの間で交換対象を交換する処理が行われる。また、ゲームシステム1bのユーザが、ゲームシステム1aから交換対象を受け取り、ゲームシステム1cのユーザに交換対象を渡すような1対1でない交換方法も、本実施例における交換に含まれるものとする。なお、本実施例においては、ユーザによって交換に出すものとして指定されたアイテムまたはキャラクタの情報と当該ユーザによって指定された場所(交換に出す場所)の情報とが、少なくとも交換対象の情報として含まれている。また、以下の説明においては、交換対象の一例として、キャラクタを用いて説明を行う。
(第1の実施形態)
図10~図15を参照して、本発明の第1の実施形態に係るゲーム処理(キャラクタ交換および表示処理)の一例について説明する。なお、図10は、第1の実施形態に係るゲーム処理におけるキャラクタ選択場面で表示されるゲーム画像の例を示す図である。図11は、第1の実施形態に係るゲーム処理における場所選択場面で表示されるゲーム画像の例を示す図である。図12は、第1の実施形態に係るゲーム処理における交換成立演出で表示されるゲーム画像の例を示す図である。図13は、第1の実施形態に係るゲーム処理における図鑑表示場面で表示されるゲーム画像の第1の表示例を示す図である。図14は、第1の実施形態に係るゲーム処理における図鑑表示場面で地球儀オブジェクトEを回転させて表示されるゲーム画像の例を示す図である。図15は、第1の実施形態に係るゲーム処理における図鑑表示場面で表示されるゲーム画像の第2の表示例を示す図である。
図10において、ゲームシステム1のユーザが他のユーザとキャラクタを交換する場合、当該交換の第1段階として、ユーザ自身が他のユーザに交換に出すキャラクタを選択する。ここで、上記キャラクタは、ゲームに用いられるゲームオブジェクトであり、ユーザが選択することによって仮想空間に登場させて動作させることができる。例えば、図10に例示するゲーム画像には、ユーザが交換に出すことが可能なキャラクタの一覧が、交換に出す交換対象の選択肢としてディスプレイ12に表示されている。交換に出す選択肢として提示されるキャラクタは、ユーザが現時点で所持しているキャラクタのうち、交換相手に提供可能なキャラクタであり、過去に交換相手との交換によって取得したキャラクタを含んでいてもよい。図10の例では、交換に出す交換対象の選択肢として6つのキャラクタC1~C6が表示されている。そして、ゲームシステム1を用いたユーザ操作に基づいて、これらの6つのキャラクタC1~C6から、他のユーザとの交換に出す交換対象が指定される。
次に、上記交換の第2段階として、選択された交換対象のキャラクタをユーザが交換に出す場所が指定される。本実施例では、図11に例示するように、ユーザが交換に出す場所を地球儀オブジェクトEで表すユーザインターフェイスが用いられる。地球儀オブジェクトEは、現実の世界の地球を模した地球儀を示す立体的な球形状オブジェクトであり、図11の例では、所定の方向から見た地球儀オブジェクトEが表示されている。なお、地球儀オブジェクトEは、地球の地形に応じて表面に起伏が形成されていてもよいし、全体が平滑な球面で形成されていてもよい。なお、地球儀オブジェクトEは、所定のユーザインターフェイスの一例に相当する。
ユーザは、地球儀オブジェクトE上に設定されている複数のポイントPi(図11において黒点でそれぞれ示されている場所であり、例えば、630ポイント)の何れかを選択することによって、交換対象のキャラクタを当該ユーザが交換に出す場所を指定することができる。例えば、図11の例では、上記複数ポイントPiのうち、ポイントPs(図示星印のポイント)が、交換に出す場所として指定された例を示している。ポイントを指定する方法については、どのような方法であってもよい。第1の例として、上記複数ポイントPiのうち、ユーザ操作による表示画像に対する指示位置と重なる地球儀オブジェクトE上の位置に最も近いポイントが指定されてもよい。第2の例として、地球儀オブジェクトE上の座標や緯度経度をユーザが指定する操作を行うことにより、当該指定された位置に最も近いポイントが指定されてもよい。第3の例として、選択肢として提示された複数のポイントPiから1つのポイントを選択するユーザ操作が行われることにより、ポイントが指定されてもよい。第4の例として、選択された国名、地域名、都市名、町名等に対応する地球儀オブジェクトE上の位置に基づいて、ポイントが指定されてもよい。第5の例として、予め設定されているユーザの場所(例えば、ユーザによって予め設定されている住所、居所、現在地)に対応する地球儀オブジェクトE上の位置に基づいて、ポイントが指定されてもよい。第6の例として、ゲーム初期設定において、ユーザが交換に出すポイントが予め設定されてもよい。第7の例として、交換に出す場所として指定されるポイントがランダムで設定されてもよい。
次に、上記交換の第3段階として、ユーザが操作するゲームシステム1からサーバ200に対して、キャラクタの交換申請が行われる。そして、サーバ200において、ユーザから申請されたキャラクタと交換を行う交換相手を選択する処理が行われる。例えば、上記交換申請において、ゲームシステム1は、交換に出すキャラクタを示す情報と指定されたポイント(交換に出す場所)を示す情報とが少なくとも示される交換対象情報データI(図8参照)を、サーバ200へ送信する。なお、本実施例では、交換相手や交換によって取得したいキャラクタ等を指定せずに、交換申請が行われる。
上記交換の第4段階として、サーバ200において交換成否の判定および交換相手の選択が行われる。第1の実施形態では、サーバ200は、交換申請されたポイント(ユーザによって交換に出された場所)と同じポイントにおいて、他のユーザの交換申請が行われている場合、当該他のユーザを交換相手として選択する。例えば、図11の例では、ポイントPsを交換に出す場所として交換申請している他のユーザがいる場合、当該他のユーザとの間でキャラクタの交換が行われる。なお、キャラクタの交換申請は、当該交換申請が行われた時点から所定の期間後までが交換有効期間とされ、当該交換有効期間中に交換相手が見つかった場合に当該交換相手との間の交換が成立する。なお、交換申請中の期間については、ゲームシステム1において、サーバ200との通信中であり交換相手を検索していることを示す画像(例えば、キャラクタが配置されていない地球儀オブジェクトEの画像)が表示されてもよいし、他のゲーム処理が交換申請と並行して行われてもよい。
サーバ200は、ゲームシステム1の第1ユーザから交換申請が行われて交換対象情報データI1を受信した場合、交換対象情報データI1に基づいて、アップロードされた第1ユーザのキャラクタを指定されたポイントに登録して記憶部203に記憶する。そして、サーバ200は、同じポイントに他のユーザのキャラクタが少なくとも1つ登録されている場合、上記アップロードされた第1ユーザのキャラクタと交換する第2ユーザのキャラクタを選択して、交換を成立させる。交換が成立した場合、サーバ200は、第1ユーザのゲームシステム1に、第2ユーザが交換申請していたキャラクタを示す情報と、第2ユーザが交換の際にしていたポイントを示す情報とを少なくとも示す交換対象情報データI2を送信することによって、交換が成立したことを通知する。また、サーバ200は、第2ユーザのゲームシステム1に、第1ユーザが交換申請していたキャラクタを示す情報と、第1ユーザが交換の際にしていたポイントを示す情報とを少なくとも示す交換対象情報データI1を送信することによって、交換が成立したことを通知する。そして、サーバ200は、交換申請において登録されている第1ユーザのキャラクタおよび第2ユーザのキャラクタに関連する情報を、記憶部203から削除する。
サーバ200は、同じポイントに他のユーザのキャラクタが登録されておらず、交換有効期間が満了してタイムアウトした場合、上記アップロードされた第1ユーザのキャラクタとの交換が不成立と判定する。そして、交換が不成立の場合、サーバ200は、交換が不成立であった旨を示す交換不成立データを第1ユーザのゲームシステム1に送信する。そして、サーバ200は、交換申請において登録されている第1ユーザのキャラクタに関連する情報を、サーバ200から削除する。
上記交換の第5段階として、ゲームシステム1において交換の成否がユーザに通知される。サーバ200から交換が成立したことを示す交換対象情報データIを受信した場合、ゲームシステム1は、ディスプレイ12に交換が成立した旨を通知する画像を表示する。例えば、図12に例示するように、キャラクタの交換が成立した場合、ディスプレイ12には、交換によって他のユーザから取得したキャラクタ(図12の例では、キャラクタC7)を示す画像と、交換が成立したポイント(図12の例では、交換の際にユーザが指定したポイントと同じポイントPs)を通知する画像とが表示される。そして、ゲームシステム1は、他のユーザへの交換に出したキャラクタを、ユーザが所持していない状態(例えば、当該キャラクタが過去の交換によって取得されたものであった場合は後述する地球儀オブジェクトEを用いた図鑑表示が交換履歴として継続して可能となるが、仮想空間に登場させて動作させるようなゲーム利用ができない状態)とする。また、ゲームシステム1は、他のユーザとの交換によって新たに取得したキャラクタを、ゲームで利用可能なキャラクタとして追加するともに、他のユーザによって当該キャラクタの交換の際に指定されていたポイントを示す情報を当該キャラクタと関連付けて管理する。
一方、サーバ200から交換が不成立となったことを示す交換不成立データを受信した場合、ゲームシステム1は、ディスプレイ12に交換が不成立となった旨を通知する画像を表示する。交換が不成立となった場合、ゲームシステム1は、他のユーザへの交換に出して交換不成立となったキャラクタをゲームで利用可能なキャラクタとして復活させてもよいし、当該キャラクタをユーザが所持していない状態としてもよい。
本実施例においては、上記交換によって交換相手から取得済みのキャラクタを表示することができる。第1の表示例として、図13に示すように、交換によって取得済みのキャラクタが、地球儀オブジェクトE上において当該キャラクタの交換相手が指定した場所にそれぞれ表示される。例えば、図13におけるゲーム画像例では、上述した説明においてポイントPsで交換が成立したキャラクタC7が、地球儀オブジェクトE上のポイントPs近傍に表示されている。また、他の交換において、ポイントP1で交換が成立済みのキャラクタC2が、地球儀オブジェクトE上のポイントP1近傍に表示されている。また、他の交換において、ポイントP2で交換が成立済みのキャラクタC3が、地球儀オブジェクトE上のポイントP2近傍に表示されている。このように、地球儀オブジェクトE上において交換が成立したポイント近傍に、当該交換で取得したキャラクタを表示することによって、交換で取得済みのキャラクタの表示が可能になるとともに、当該キャラクタを取得した場所の表示も可能となるキャラクタ図鑑として機能させることができる。
また、ユーザ操作入力に基づいた回転指示に応じて、地球儀オブジェクトEを回転させて表示することができる。例えば、図13に示す地球儀オブジェクトEを回転させる回転指示が行われた場合、図14に示すような地球儀オブジェクトEが表示される状態となる。この回転指示によって、図13に示す状態において手前側に配置されていたキャラクタC2、C3、およびC7が裏側に移動して表示できなくなる一方、図14に示す状態ではポイントP3に配置されているキャラクタC1およびポイントP4に配置されているキャラクタC5が表側に移動して表示可能な状態となっている。なお、ユーザ操作入力に基づいた回転指示に応じて、地球儀オブジェクトEが自転軸周りに回転可能であってもよいし、自由な回転方向に回転可能であってもよい。
このように、地球儀オブジェクトEを回転可能に構成することにより、ユーザは、地球儀オブジェクトEの全面に配置されているオブジェクトを見ることができ、各オブジェクトが交換された場所も全面において確認することができる。
上記交換によって交換相手から取得済みのキャラクタを表示する第2の表示例として、地球儀オブジェクトE上のポイントの1つが選択された場合、当該ポイントが指定された交換によって取得済みのキャラクタが一覧表示される。例えば、図15に示すように、交換によって交換相手から取得済みのキャラクタが、地球儀オブジェクトE上において当該交換相手が指定した場所を選択する操作が行われることによって、リスト表示されている。具体的には、ユーザ操作によって地球儀オブジェクトE上のポイントP1が選択されたことに応じて、ポイントP1の表示態様が変化するとともに、交換相手がポイントP1を指定した交換によって取得したキャラクタC2およびC4が、それぞれの交換成立日とともにリスト表示されている。なお、図15に例示しているように、同じキャラクタが1つのポイントにおいて別の交換でそれぞれ取得されている場合、一例として、それぞれの交換成立日とともに当該キャラクタを重複表示してもよい。
なお、上記交換によって交換相手から取得済みのキャラクタを表示する第2の表示例においても、ユーザ操作入力に基づいた回転指示に応じて、第1の表示例と同様に地球儀オブジェクトEを回転させて表示してもよい。また、上記第1の表示例および上記第2の表示例の両方を用いて、上記交換によって交換相手から取得済みのキャラクタを表示してもよい。一例として、交換によって1体のキャラクタが得られているポイントでは上記第1の表示例の表示態様で当該キャラクタを表示し、交換によって複数のキャラクタが得られているポイントでは上記第2の表示例の表示態様で当該キャラクタを表示する。他の例として、上記第2の表示例を用いて交換相手から取得済みのキャラクタを表示する場合であっても、ポイント毎に代表するキャラクタ1体(例えば、複数のキャラクタのうち、直近に取得されたキャラクタ)を上記第1の表示例を用いて地球儀オブジェクトE上の当該ポイント近傍に表示する。
また、上述した実施例では、ユーザが交換に出す場所を指定するためのユーザインターフェイスと、交換によって交換相手から取得済みの交換対象(キャラクタ)を見るためのユーザインターフェイスとを、同じ地球儀オブジェクトEを用いて説明しているが、これらのユーザインターフェイスは、同じでもよいし、異なっていてもよい。
また、上述した実施例では、ユーザが交換に出す場所を指定する、および交換によって交換相手から取得済みの交換対象(キャラクタ)を見るためのユーザインターフェイスとして、地球儀オブジェクトEを用いているが、少なくとも一方のユーザインターフェイスとして他の画像が用いられてもよい。例えば、平面地図や立体地図を示す画像を用いたユーザインターフェイスによって、当該地図上のエリアや地点をユーザが選択することによりユーザが交換に出す場所を指定したり、交換によって交換相手から取得済みの交換対象を当該地図上に配置して表示されたりしてもよい。また、上記ユーザインターフェイスは、現実の世界を模した地球儀を示すオブジェクトや地図を示す画像等でもよいし、仮想世界における天体を示すオブジェクトや平面ゲームマップや立体ゲームマップを示す画像等でもよい。
本実施例においては、上記交換が済んだ交換相手が指定したポイントの箇所数に基づいて、上記キャラクタが登場するゲームで利用できる所定の報酬がユーザに付与されてもよい。例えば、上記交換が済んだ交換相手が指定したポイントの履歴に基づいて、当該ポイントの箇所数(場所の数)が所定数に到達した場合、上記ゲームを進める際に有利となるアイテム、キャラクタ、ゲーム内通貨、能力、経験値、隠し要素や隠しステージの解放等が報酬としてユーザに付与される。このように、交換の際に交換相手によって指定された場所の数が累積されることによる報酬がユーザに付与されることによって、交換によって取得されるキャラクタの情報の付加情報として得られる場所の情報に、さらなるインセンティブを与えることができる。また、地球儀オブジェクトEを用いて、交換で取得されたキャラクタが指定されたポイントが確認可能に構成されているため、上記報酬が付与されるための状況をユーザが確認することも可能となる。
(第2の実施形態)
図16および図17を参照して、本発明の第2の実施形態に係るゲーム処理(キャラクタ交換および表示処理)の一例について説明する。図16は、第2の実施形態に係るゲーム処理における交換成立演出で表示されるゲーム画像の例を示す図である。図17は、第2の実施形態に係るゲーム処理における図鑑表示場面で表示されるゲーム画像の例を示す図である。
上述した第1の実施形態に係るゲーム処理に対して、第2の実施形態に係るゲーム処理は、交換相手の選択方法が異なり、交換申請が行われる上記交換の第3段階までの処理および交換されたポイント数に応じて報酬を付与する処理は第1の実施形態と同様である。したがって、第2の実施形態に係るゲーム処理の説明においては、上記交換の第3段階までの処理および報酬を付与する処理についての説明は省略する。なお、以下の説明においては、第1の実施形態に係るゲーム処理と同様に、ゲームシステム1のユーザが地球儀オブジェクトE上のポイントPs(図11参照)を指定してサーバ200に交換申請を行った例を用いる。
第2の実施形態における上記交換の第4段階として、サーバ200において交換成否の判定および交換相手の選択が行われる。第2の実施形態では、サーバ200は、全ポイント(例えば、630ポイント)を交換相手選択の対象として、何れかのポイントを指定する交換申請が他のユーザから行われている場合、これら他のユーザから交換相手を選択する。すなわち、交換相手の選択において、交換申請の際に指定しているポイントとは異なるポイントを指定している他のユーザが交換相手として選択されてもかまわない。交換相手の選択方法は、一例として、ランダムであってもよい。この場合、キャラクタの交換申請は、当該交換申請が行われた時点から所定の期間後までが交換有効期間とされ、当該交換有効期間中に交換相手が見つかった場合に当該交換相手との間の交換が成立する。
サーバ200は、ゲームシステム1の第1ユーザから交換申請が行われて交換対象情報データI1を受信した場合、交換対象情報データI1に基づいて、アップロードされた第1ユーザのキャラクタを指定されたポイントに登録して記憶部203に記憶する。そして、サーバ200は、全ポイントまたは第1ユーザが指定するポイントを除く全ポイントを交換組み合わせの対象として、他のユーザのキャラクタが少なくとも1つ当該ポイントに登録されている場合、上記アップロードされた第1ユーザのキャラクタと交換する第2ユーザのキャラクタを選択して、交換を成立させる。交換が成立した場合、サーバ200は、第1ユーザのゲームシステム1に、第2ユーザが交換申請していたキャラクタを示す情報と、第2ユーザが交換の際にしていたポイントを示す情報とを少なくとも示す交換対象情報データI2を送信することによって、交換が成立したことを通知する。また、サーバ200は、第2ユーザのゲームシステム1に、第1ユーザが交換申請していたキャラクタを示す情報と、第1ユーザが交換の際にしていたポイントを示す情報とを少なくとも示す交換対象情報データI1を送信することによって、交換が成立したことを通知する。そして、サーバ200は、交換申請において登録されている第1ユーザのキャラクタおよび第2ユーザのキャラクタに関連する情報を、記憶部203から削除する。
サーバ200は、全ポイントまたは第1ユーザが指定するポイントを除く全ポイントに他のユーザのキャラクタが登録されておらず、交換有効期間が満了してタイムアウトした場合、上記アップロードされた第1ユーザのキャラクタとの交換が不成立と判定する。そして、交換が不成立の場合、サーバ200は、交換が不成立であった旨を示す交換不成立データを第1ユーザのゲームシステム1に送信する。そして、サーバ200は、交換申請において登録されている第1ユーザのキャラクタに関連する情報を、サーバ200から削除する。
第2の実施形態における上記交換の第5段階として、ゲームシステム1において交換の成否がユーザに通知される。サーバ200から交換が成立したことを示す交換対象情報データIを受信した場合、ゲームシステム1は、ディスプレイ12に交換が成立した旨を通知する画像を表示する。例えば、図16に例示するように、キャラクタの交換が成立した場合、ディスプレイ12には、交換によって他のユーザから取得したキャラクタ(図16の例では、キャラクタC8)を示す画像と、交換が成立したポイント(図16の例では、交換の際にユーザが指定したポイントPsと異なるポイントPr)を通知する画像とが表示される。そして、ゲームシステム1は、他のユーザへの交換に出したキャラクタを、ユーザが所持していない状態とする。また、ゲームシステム1は、他のユーザとの交換によって新たに取得したキャラクタを、ゲームで利用可能なキャラクタとして追加するともに、他のユーザによって当該キャラクタの交換の際に指定されていたポイントを示す情報を当該キャラクタと関連付けて管理する。
一方、サーバ200から交換が不成立となったことを示す交換不成立データを受信した場合、ゲームシステム1は、ディスプレイ12に交換が不成立となった旨を通知する画像を表示する。
第2の実施形態に係るゲーム処理においても、第1の実施形態における第1の表示例および第2の表示例と同様に、上記交換によって交換相手から取得済みのキャラクタを表示することができる。例えば、図17に示すように、交換によって取得済みのキャラクタが、地球儀オブジェクトE上において当該キャラクタの交換相手が指定した場所にそれぞれ表示される。図17におけるゲーム画像例では、上述した説明においてポイントPsをユーザが指定した交換において取得したキャラクタC8が、地球儀オブジェクトE上において当該指定ポイントPsとは異なるポイントPr近傍に表示されている。また、他の交換において、ポイントP1で交換が成立済みのキャラクタC2が、地球儀オブジェクトE上のポイントP1近傍に表示されている。また、他の交換において、ポイントP2で交換が成立済みのキャラクタC3が、地球儀オブジェクトE上のポイントP2近傍に表示されている。このように、地球儀オブジェクトE上において交換が成立したポイント近傍に、当該交換で取得したキャラクタを表示することによって、第2の実施形態においても交換で取得済みのキャラクタの表示が可能になるとともに、当該キャラクタを取得した場所の表示も可能となるキャラクタ図鑑として機能させることができる。
なお、第2の実施形態における交換相手の選択方法の他の一例として、記憶部203に最後に記憶されたキャラクタを指定するようにしてもよい。この場合、交換が成立した場合に送信されたキャラクタが記憶部203に最後に記憶され、新たに最後に記憶されたキャラクタとなるため、常に最後に記憶されたキャラクタが存在することになり、交換有効期間を設定する必要はない。また、受信したキャラクタを提供した相手と、送信したキャラクタを受け取る相手が異なることになる。
次に、図18~図23を参照して、本実施例においてゲームシステム1およびサーバ200を含む情報処理システムにおいて行われる処理の詳細を説明する。なお、図18は、本実施例において本体装置2のDRAM85に設定されるデータ領域の一例を示す図である。なお、DRAM85には、図18に示すデータの他、他の処理で用いられるデータも記憶されるが、詳細な説明を省略する。
DRAM85のプログラム記憶領域には、ゲームシステム1で実行される各種プログラムPaが記憶される。本実施例においては、各種プログラムPaは、左コントローラ3および/または右コントローラ4や本体装置2から取得したデータに基づいた情報処理を行うためのアプリケーションプログラム(例えば、ゲームプログラム)等が記憶される。なお、各種プログラムPaは、フラッシュメモリ84に予め記憶されていてもよいし、ゲームシステム1に着脱可能な記憶媒体(例えば、スロット23に装着された所定の種類の記憶媒体)から取得されてDRAM85に記憶されてもよいし、インターネット等のネットワークを介して他の装置から取得されてDRAM85に記憶されてもよい。プロセッサ81は、DRAM85に記憶された各種プログラムPaを実行する。
また、DRAM85のデータ記憶領域には、ゲームシステム1において実行される情報処理等の処理において用いられる各種のデータが記憶される。本実施形態においては、DRAM85には、操作データDa、キャラクタデータDb、交換対象情報データDc、送信データDd、受信データDe、地球儀オブジェクトデータDf、報酬データDg、交換処理フラグデータDh、図鑑表示フラグデータDi、および画像データDj等が記憶される。
操作データDaは、左コントローラ3および/または右コントローラ4や本体装置2からそれぞれ適宜取得した操作データである。上述したように、左コントローラ3および/または右コントローラ4や本体装置2からそれぞれ取得される操作データには、各入力部(具体的には、各ボタン、アナログスティック、タッチパネル)からの入力に関する情報(具体的には、操作に関する情報)が含まれている。本実施例では、左コントローラ3および/または右コントローラ4や本体装置2からそれぞれ操作データを取得しており、当該取得した操作データを用いて操作データDaが適宜更新される。なお、操作データDaの更新周期は、後述するゲームシステム1で実行される処理の周期である1フレーム毎に更新されてもよいし、上記操作データが取得される周期毎に更新されてもよい。
キャラクタデータDbは、ユーザが所持しているキャラクタに関するデータであり、キャラクタ毎に種別データDb1、交換場所データDb2、および交換日時データDb3等を含んでいる。種別データDb1は、キャラクタの種別を示すデータである。交換場所データDb2は、キャラクタが交換で取得された場所(ポイント)を示すデータである。交換日時データDb3は、キャラクタが交換で取得された日時を示すデータである。
交換対象情報データDcは、ユーザが所持するキャラクタを交換に出す際の交換対象の情報を示すデータであり、交換キャラクタデータDc1および交換指定場所データDc2等を含んでいる。交換キャラクタデータDc1は、ユーザが交換に出すキャラクタを示すデータである。交換指定場所データDc2は、ユーザが交換に出す際に指定された場所(ポイント)を示すデータである。
送信データDdは、ゲームシステム1が他の装置(例えば、サーバ200)へ送信するデータである。受信データDeは、ゲームシステム1が他の装置(例えば、サーバ200)から受信したデータである。
地球儀オブジェクトデータDfは、仮想カメラ(視点)から見た地球儀オブジェクトEの姿勢や方向(回転角度)を示すデータである。
箇所数データDgは、交換が済んだ交換相手が指定したポイントの箇所数(場所の数)を示すデータである。
交換処理フラグデータDhは、交換処理が行われている場合にオンに設定される交換処理フラグを示すデータである。図鑑表示フラグデータDiは、図鑑表示が行われている場合にオンに設定される図鑑表示フラグを示すデータである。
画像データDjは、表示画面(例えば、本体装置2のディスプレイ12)に画像(例えば、キャラクタの画像、ユーザインターフェイスで用いられる画像、仮想空間の画像、背景画像等)を表示するためのデータである。
次に、図19~図21を参照して、本実施例においてゲームシステム1において行われる情報処理の詳細な一例を説明する。図19は、ゲームシステム1で実行される情報処理の一例を示すフローチャートである。図20は、図19におけるステップS126において行われる交換処理の詳細な一例を示すサブルーチンである。図21は、図19におけるステップS130において行われる図鑑表示処理の詳細な一例を示すサブルーチンである。本実施例においては、図19~図21に示す一連の処理は、プロセッサ81が各種プログラムPaに含まれる所定のアプリケーションプログラム(ゲームプログラム)を実行することによって行われる。また、図19~図21に示す情報処理が開始されるタイミングは任意である。
なお、図19~図21に示すフローチャートにおける各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えて(または代えて)別の処理が実行されてもよい。また、本実施例では、上記フローチャートの各ステップの処理をプロセッサ81が実行するものとして説明するが、上記フローチャートにおける一部のステップの処理を、プロセッサ81以外のプロセッサや専用回路が実行するようにしてもよい。また、本体装置2において実行される処理の一部は、本体装置2と通信可能な他の情報処理装置(例えば、サーバ200)によって実行されてもよい。すなわち、図19~図21に示す各処理は、本体装置2を含む複数の情報処理装置が協働することによって実行されてもよい。
図19において、プロセッサ81は、情報処理における初期設定を行い(ステップS121)、次のステップに処理を進める。例えば、上記初期設定では、プロセッサ81は、以下に説明する処理を行うためのパラメータを初期化する。
次に、プロセッサ81は、左コントローラ3、右コントローラ4、および/または本体装置2から操作データを取得して操作データDaを更新し(ステップS122)、次のステップに処理を進める。
次に、プロセッサ81は、操作データDaを参照して、キャラクタを交換する交換指示が行われたか否かを判定する(ステップS123)。そして、プロセッサ81は、操作データDaが上記交換指示を示している場合、ステップS124に処理を進める。一方、プロセッサ81は、操作データDaが上記交換指示を示していない場合、ステップS125に処理を進める。
ステップS124において、プロセッサ81は、交換処理フラグをオンに設定して、ステップS125に処理を進める。例えば、プロセッサ81は、交換処理フラグをオンに設定して、交換処理フラグデータDhを更新する。
ステップS125において、プロセッサ81は、交換処理フラグデータDhを参照して、交換処理フラグがオンに設定されているか否かを判定する。そして、プロセッサ81は、交換処理フラグがオンに設定されている場合、ステップS126に処理を進める。一方、プロセッサ81は、交換処理フラグがオフに設定されている場合、ステップS127に処理を進める。
ステップS126において、プロセッサ81は、交換処理を行い、ステップS127に処理を進める。以下、図20を参照して、上記ステップS126において行われる交換処理について説明する。
図20において、プロセッサ81は、キャラクタを選択する場面であるか否かを判定する(ステップS141)。そして、プロセッサ81は、交換に出すキャラクタを選択する指示を操作データDaが示している場合、またはキャラクタを選択中である場合、ステップS142に処理を進める。一方、プロセッサ81は、キャラクタを選択する場面でない場合、ステップS143に処理を進める。
ステップS142において、プロセッサ81は、交換に出すキャラクタの選択肢を示すキャラクタ一覧画像(図10参照)を設定することによってユーザにキャラクタの選択を促し、何れかのキャラクタを選択するユーザ指示に基づいて交換に出すキャラクタを選択する処理を行い、ステップS143に処理を進める。例えば、プロセッサ81は、操作データDaに基づいて、表示されているキャラクタ一覧画像から交換に出すキャラクタを選択し、選択されたキャラクタに基づいて交換キャラクタデータDc1を更新する。なお、操作入力に基づいて、プレイヤが交換のために他の情報処理装置に送信するアイテムまたはキャラクタを指定させるコンピュータは、一例としてステップS142の処理を行うプロセッサ81に相当する。
ステップS143において、プロセッサ81は、交換における場所を指定する場面であるか否かを判定する。そして、プロセッサ81は、場所を指定する指示を操作データDaが示している場合、または場所を指定中である場合、ステップS144に処理を進める。一方、プロセッサ81は、場所を指定する場面でない場合、ステップS145に処理を進める。
ステップS144において、プロセッサ81は、場所(ポイント)の指定が可能な地球儀オブジェクトE(図11参照)を設定することによってユーザに場所の指定を促し、何れかの場所を指定するユーザ指示に基づいて交換における場所を指定する処理を行い、ステップS145に処理を進める。例えば、プロセッサ81は、操作データDaに基づいて、地球儀オブジェクトEにおいて設定されている複数のポイントから1つのポイントを選択し、選択されたポイントに基づいて交換指定場所データDc2を更新する。なお、操作入力に基づいて、所定のユーザインターフェイス上にプレイヤが指定する場所を設定させるコンピュータは、一例としてステップS144の処理を行うプロセッサ81に相当する。
ステップS145において、プロセッサ81は、交換を開始するか否かを判定する。例えば、プロセッサ81は、操作データDaが交換を開始するユーザ指示を示している場合、上記ステップS145において肯定判定する。そして、プロセッサ81は、交換を開始する場合、ステップS146に処理を進める。一方、プロセッサ81は、交換を開始しない場合、ステップS147に処理を進める。
ステップS146において、プロセッサ81は、送信する交換対象情報データを設定して、ステップS147に処理を進める。例えば、プロセッサ81は、交換対象情報データDcに基づいて、ユーザが交換に出すキャラクタの情報および交換において指定する場所の情報を含む交換対象情報データを作成して、サーバ200に送信するための送信データDdとしてセットする。なお、作成された交換対象情報データは、後述するステップS131における送受信処理が実行されることによって、サーバ200へ送信される。また、上記ステップS146の実行を契機として、プロセッサ81は、サーバ200からの交換結果を待っている状態であることを示す演出画像を設定することにより、後述するステップS148において肯定判定されるまでの期間において当該演出画像が表示される設定を行ってもよい。なお、交換において、プレイヤによって指定された場所の情報とプレイヤによって指定されたアイテムまたはキャラクタの情報とを交換対象の情報として他の情報処理装置へ送信させるコンピュータは、一例としてステップS146の処理を行うプロセッサ81に相当する。
ステップS147において、プロセッサ81は、受信データDeを参照して、他の装置(例えば、サーバ200)から受信した受信データを分析し、次のステップに処理を進める。
次に、プロセッサ81は、上記ステップS147の分析の結果、交換結果を示す受信データを受信しているか否かを判定する(ステップS148)。例えば、プロセッサ81は、サーバ200から交換が成立したことを示す交換相手の交換対象情報データや交換が不成立となったことを示す交換不成立データを受信している場合、上記ステップS148において肯定判定する。そして、プロセッサ81は、交換結果を示す受信データを受信している場合、ステップS149に処理を進める。一方、プロセッサ81は、交換結果を示す受信データを受信していない場合、ステップS153に処理を進める。
ステップS149において、プロセッサ81は、交換が成立しているか否かを判定する。例えば、プロセッサ81は、サーバ200から交換が成立したことを示す交換相手の交換対象情報データを受信している場合に上記ステップS149において肯定判定し、サーバ200から交換が不成立となったことを示す交換不成立データを受信している場合に上記ステップS149において否定判定する。そして、プロセッサ81は、交換が成立している場合、ステップS150に処理を進める。一方、プロセッサ81は、交換が不成立の場合、ステップS152に処理を進める。
ステップS150において、プロセッサ81は、交換成立演出を設定して、次のステップに処理を進める。例えば、プロセッサ81は、サーバ200から受信した交換対象情報に基づいて、交換相手から取得したキャラクタおよび当該交換相手が指定していたポイントをユーザに通知するための画像(図12参照)を設定することによって、交換成立を演出する。
次に、プロセッサ81は、キャラクタ所持状態を更新する処理を行い(ステップS151)、ステップS153に処理を進める。例えば、プロセッサ81は、交換相手から新たに取得したキャラクタをユーザが所持している状態(例えば、仮想空間に登場させて動作させるようなゲーム利用が可能な状態)とするとともに、当該キャラクタの種別、当該交換相手が指定したポイント、および交換が成立した日時を用いて、新たなキャラクタデータDbを追加する。また、プロセッサ81は、交換相手への交換に出したキャラクタをユーザが所持していない状態(上記ゲーム利用ができない状態)とするが、当該キャラクタのキャラクタデータDbはそのまま継続させる。
一方、ステップS152において、プロセッサ81は、交換不成立演出を設定して、ステップS153に処理を進める。例えば、プロセッサ81は、サーバ200から受信した交換不成立データに基づいて、交換が不成立であったことをユーザに通知するための画像を設定することによって、交換不成立を演出する。なお、交換において、交換相手が指定した場所の情報と当該交換相手が指定したアイテムまたはキャラクタの情報とを交換対象の情報として他の情報処理装置から受信させるコンピュータは、一例としてステップS147-S152の処理を行うプロセッサ81に相当する。
ステップS153において、プロセッサ81は、交換処理を終了するか否かを判定する。例えば、プロセッサ81は、サーバ200から交換結果を受信して交換に関する演出が終了した場合やユーザが交換処理を終了する操作を行った場合、上記ステップS153において肯定判定する。そして、プロセッサ81は、交換処理を終了する場合、ステップS154に処理を進める。一方、プロセッサ81は、交換処理を継続する場合、当該サブルーチンによる処理を終了する。
ステップS154において、プロセッサ81は、交換処理フラグをオフに設定して、当該サブルーチンによる処理を終了する。例えば、プロセッサ81は、交換処理フラグをオフに設定して、交換処理フラグデータDhを更新する。なお、上記ステップS154の処理がサーバ200へ交換申請中に行われている場合、プロセッサ81は、当該交換申請を中止する旨を示す交換申請中止データを送信データDdにセットしてもよい。
図19に戻り、上記ステップS126の交換処理の後、または上記ステップS125における否定判定の後、プロセッサ81は、操作データDaを参照して、交換で取得したキャラクタの図鑑表示を行う指示が行われたか否かを判定する(ステップS127)。そして、プロセッサ81は、操作データDaが上記図鑑表示指示を示している場合、ステップS128に処理を進める。一方、プロセッサ81は、操作データDaが上記図鑑表示指示を示していない場合、ステップS129に処理を進める。
ステップS128において、プロセッサ81は、図鑑表示フラグをオンに設定して、ステップS129に処理を進める。例えば、プロセッサ81は、図鑑表示フラグをオンに設定して、図鑑表示フラグデータDiを更新する。
ステップS129において、プロセッサ81は、図鑑表示フラグデータDiを参照して、図鑑表示フラグがオンに設定されているか否かを判定する。そして、プロセッサ81は、図鑑表示フラグがオンに設定されている場合、ステップS130に処理を進める。一方、プロセッサ81は、図鑑表示フラグがオフに設定されている場合、ステップS131に処理を進める。
ステップS130において、プロセッサ81は、図鑑表示処理を行い、ステップS131に処理を進める。以下、図21を参照して、上記ステップS130において行われる図鑑表示処理について説明する。なお、交換によって交換相手から交換対象として取得済みの少なくとも1つのアイテムまたはキャラクタが、ユーザインターフェイス上において当該交換相手が指定した場所に表示される、または当該場所が選択されることより表示される第1のユーザインターフェイス表示を行わせるコンピュータは、一例としてステップS130の処理を行うプロセッサ81に相当する。
図21において、プロセッサ81は、地球儀オブジェクトEを設定して(ステップS161)、次のステップに処理を進める。例えば、プロセッサ81は、地球儀オブジェクトデータDfが示す姿勢および方向(回転角度)に基づいて、仮想空間内に地球儀オブジェクトE(図13~図15および図17参照)を配置する処理を行う。
次に、プロセッサ81は、交換で取得済みのキャラクタを地球儀オブジェクトE上に設定して(ステップS162)、次のステップに処理を進める。例えば、プロセッサ81は、キャラクタデータDbに基づいて、交換で取得済みのキャラクタを地球儀オブジェクトE上におけるそれぞれの交換場所に設定する。例えば、プロセッサ81は、上述した第1の表示例(図13、図14、および図17参照)を用いてキャラクタを表示する場合、キャラクタ毎に設定されている交換場所に対応する地球儀オブジェクトE上の位置に当該キャラクタをそれぞれ配置する。
次に、プロセッサ81は、地球儀オブジェクトEを回転させるか否かを判定する(ステップS163)。例えば、プロセッサ81は、操作データDaを参照して、地球儀オブジェクトEを回転させる指示が行われている場合、上記ステップS163において肯定判定する。そして、プロセッサ81は、地球儀オブジェクトEを回転させる場合、ステップS164に処理を進める。一方、プロセッサ81は、地球儀オブジェクトEを回転させない場合、ステップS165に処理を進める。
ステップS164において、プロセッサ81は、回転処理を行い、ステップS165に処理を進める。例えば、プロセッサ81は、操作データDaが示すユーザ操作に応じて、地球儀オブジェクトEを仮想空間内において回転させる、または仮想カメラの視点を回転移動させる等の制御によって、仮想カメラの視点に対して地球儀オブジェクトEが回転した位置関係になるように地球儀オブジェクトデータDfを更新する。
ステップS165において、プロセッサ81は、キャラクタ交換が成立した箇所数(場所の数)を算出し、次のステップに処理を進める。例えば、プロセッサ81は、キャラクタ毎に設定されている交換場所データDb2が示すポイントを、全て累積(同じポイントは、ポイント数が1として累積)することにより箇所数を算出して、箇所数データDgを更新する。
次に、プロセッサ81は、上記ステップS165において算出された箇所数に基づいて、ユーザに報酬を付与するか否かを判定する(ステップS166)。例えば、プロセッサ81は、箇所数データDgが示す箇所数が所定数に到達した場合(例えば、交換されたポイントが100箇所増える毎)、上記ステップS166において肯定判定する。そして、プロセッサ81は、ユーザに報酬を付与する場合、ステップS167に処理を進める。一方、プロセッサ81は、ユーザに報酬を付与しない場合、ステップS168に処理を進める。
ステップS167において、プロセッサ81は、ユーザに所定の報酬を付与して、ステップS168に処理を進める。例えば、プロセッサ81は、上記ゲームを進める際に有利となる所定の報酬をユーザに付与して、ユーザが当該報酬をゲームで利用可能な状態にする。なお、上記ステップS165~S167により交換が成立した箇所数に応じてユーザに報酬が付与される処理は、交換処理において(例えば、上記ステップS151の後において)行われてもよい。
ステップS168において、プロセッサ81は、図鑑表示処理を終了するか否かを判定する。例えば、プロセッサ81は、ユーザが図鑑表示処理を終了する操作を行った場合、上記ステップS168において肯定判定する。そして、プロセッサ81は、図鑑表示処理を終了する場合、ステップS169に処理を進める。一方、プロセッサ81は、図鑑表示処理を継続する場合、当該サブルーチンによる処理を終了する。
ステップS169において、プロセッサ81は、図鑑表示フラグをオフに設定して、当該サブルーチンによる処理を終了する。例えば、プロセッサ81は、図鑑表示フラグをオフに設定して、図鑑表示処理フラグデータDiを更新する。
図19に戻り、上記ステップS130の図鑑表示処理の後、または上記ステップS129における否定判定の後、プロセッサ81は、送受信処理を行い(ステップS131)、次のステップに処理を進める。例えば、プロセッサ81は、送信データDdにセットされているデータを、送信元ユーザを示す情報とともにサーバ200に送信する。また、プロセッサ81は、サーバ200から受信したデータを受信データDeに格納する。
次に、プロセッサ81は、表示制御処理を行い、次のステップに処理を進める。例えば、プロセッサ81は、上記ステップS121~ステップS132の処理結果等に基づいて、ゲーム画像を生成してディスプレイ12に表示する制御を行う。
次に、プロセッサ81は、ゲーム処理を終了するか否かを判定する(ステップS134)。上記ステップS134においてゲーム処理を終了する条件としては、例えば、ゲーム処理が終了される条件が満たされたことや、ユーザがゲーム処理を終了する操作を行ったこと等がある。プロセッサ81は、ゲーム処理を終了しない場合に上記ステップS122に戻って処理を繰り返し、ゲーム処理を終了する場合に当該フローチャートによる処理を終了する。以降、ステップS122~ステップS134の一連の処理は、ステップS134で処理を終了すると判定されるまで繰り返し実行される。
次に、図22を参照して、サーバ200に記憶されるデータおよびプログラムについて説明する。図22は、サーバ200の記憶部203に記憶される主なデータおよびプログラムの一例を示す図である。
図22に示すように、記憶部203のデータ記憶領域には、ポイント登録データDp、交換有効期間データDq、および送信データDr等が記憶される。なお、記憶部203には、図22に示す情報に含まれるデータの他、サーバ200で行う処理(例えば、ログイン、データ管理、およびデータ送信に関する処理)に必要なデータ等が記憶される。また、記憶部203のプログラム記憶領域には、上記処理を実現するための各種プログラム群Pbが記憶される。
ポイント登録データDpは、交換申請が行われる際にユーザによって指定されているポイント毎に、登録されているユーザおよびキャラクタを示すデータである。
交換有効期間データDqは、交換申請しているユーザ毎の交換有効期間の残り時間を示すデータである。
送信データDrは、ゲームシステム1へ送信する送信データを示すデータである。
次に、図23を参照して、サーバ200において行われる処理の詳細を説明する。図23は、サーバ200において実行される処理の一例を示すフローチャートである。ここで、図23に示すフローチャートにおいては、情報処理システムにおける処理のうち、ユーザ間でキャラクタの交換を行う処理について主に説明し、これらの処理と直接関連しない他の処理については詳細な説明を省略する。また、図23では、制御部202が実行する各ステップを「S」と略称する。
なお、図23に示すフローチャートにおける各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えておよび/または代えて別の処理が実行されてもよい。また、本実施例では、上記フローチャートの各ステップの処理を制御部202(CPU)が実行するものとして説明するが、上記フローチャートにおける一部のステップの処理を制御部202(CPU)が実行し、その他のステップの処理を制御部202(CPU)以外のプロセッサや専用回路が実行するようにしてもよく、上記フローチャートにおける全部のステップの処理を制御部202(CPU)以外のプロセッサや専用回路が実行するようにしてもよい。
図23において、サーバ200の制御部202は、ゲームシステム1から交換申請を示す交換対象情報データを受信したか否かを判定する(ステップS181)。そして、制御部202は、ゲームシステム1から交換対象情報データを受信した場合、ステップS182に処理を進める。一方、制御部202は、ゲームシステム1から交換対象情報データを受信していない場合、ステップS184に処理を進める。
ステップS182において、制御部202は、交換申請の際に指定されたポイントに、ユーザおよび交換に出されたキャラクタを登録し、次のステップに処理を進める。例えば、制御部202は、ゲームシステム1から受信した交換対象情報データが示す指定ポイントに、当該交換対象情報データの送信元ユーザおよび交換に出されたキャラクタが登録されるように、ポイント登録データDpの登録データを追加する。
次に、制御部202は、交換申請された送信元ユーザの交換有効期間を開始する処理を行い(ステップS183)、ステップS184に処理を進める。例えば、制御部202は、ゲームシステム1から受信した交換対象情報データの送信元ユーザの交換有効期間を、予め定められた期間に設定して、交換有効期間データDqに登録する。そして、制御部202は、以降の処理において、交換有効期間データDqが示す期間を経過時間に応じて逓減する。
なお、ゲームシステム1から交換申請後に交換中止を示すデータを受信した場合、制御部202は、当該交換中止を申請した送信元ユーザの登録データおよび交換有効期間データを、それぞれポイント登録データDpおよび交換有効期間データDqを削除してもよい。
ステップS184において、制御部202は、交換可能な組み合わせを検索して、次のステップに処理を進める。例えば、上述した第1の実施形態における交換相手の選択方法を用いる場合、制御部202は、ポイント登録データDpに登録されているユーザおよびキャラクタを参照して、異なるキャラクタをそれぞれ交換に出している複数のユーザが同じポイントに登録されている場合、交換可能な組み合わせとする。また、上述した第2の実施形態における交換相手の選択方法を用いる場合、制御部202は、ポイント登録データDpに登録されているユーザおよびキャラクタを参照して、異なるキャラクタをそれぞれ交換に出している複数のユーザが異なるポイントまたは同じポイントに登録されている場合、交換可能な組み合わせとする。
次に、制御部202は、上記ステップS184において交換可能な組み合わせが検出されたか否かを判定する(ステップS185)。そして、制御部202は、交換可能な組み合わせが少なくとも1組検出された場合、ステップS186に処理を進める。一方、制御部202は、交換可能な組み合わせが検出されなかった場合、ステップS188に処理を進める。
ステップS186において、制御部202は、交換可能な組み合わせとして検出された1組を交換する対象として、当該組に属するそれぞれのユーザに交換対象情報データを送信し、次のステップに処理を進める。例えば、制御部202は、第1のユーザと第2のユーザとの組み合わせを交換する対象とする場合、第1のユーザが交換に出したキャラクタの情報および第1のユーザが指定したポイントを示す交換対象情報データを送信データDrにセットし、第2のユーザに送信する。また、制御部202は、第2のユーザが交換に出したキャラクタの情報および第2のユーザが指定したポイントを示す交換対象情報データを送信データDrにセットし、第1のユーザに送信する。
次に、制御部202は、交換が行われたユーザのデータを削除し(ステップS187)、ステップS188に処理を進める。例えば、第1のユーザと第2のユーザとの組み合わせによる交換が行われた場合、制御部202は、ポイント登録データDpに登録されている第1のユーザおよび第2のユーザの登録データと、交換有効期間データDqにおける第1のユーザおよび第2のユーザのデータとを削除する。
ステップS188において、制御部202は、交換有効期間を満了したユーザがいるか否かを判定する。例えば、制御部202は、交換有効期間データDqを参照して、交換有効期間の残り時間がないユーザがいる場合、上記ステップS188において肯定判定する。そして、制御部202は、交換有効期間を満了したユーザがいる場合、ステップS189に処理を進める。一方、制御部202は、交換有効期間を満了したユーザがいない場合、上記ステップS181に戻って処理を繰り返す。
ステップS189において、制御部202は、交換有効期間が満了したユーザに交換不成立データを送信し、次のステップに処理を進める。例えば、制御部202は、交換が不成立であったことを示す交換不成立データを送信データDrにセットし、上記ステップS188において交換有効期間が満了したと判定されたユーザに送信する。
次に、制御部202は、交換が不成立となったユーザのデータを削除し(ステップS190)、上記ステップS181に戻って処理を繰り返す。例えば、制御部202は、登録されている交換有効期間が満了したと判定されたユーザのデータを、ポイント登録データDpおよび交換有効期間データDqから削除する。
なお、最後に記憶部203に記憶されたキャラクタを第1のユーザが第2のユーザ(当該キャラクタを登録した交換相手)から受け取る例の場合には、交換可能かどうかを組み合わせの検索によって行うのではなく、記憶部203にポイント登録データDpが少なくとも1件記憶されているか否かによって行われる。そして、記憶部203にポイント登録データDpが少なくとも1件記憶されている場合、最後に記憶されたポイント登録データDpが交換相手(第2のユーザ)の交換対象情報データとして送信データDrにセットされて、交換における受け取りの対象として第1のユーザに送信される。そして、第1のユーザが送信した交換対象情報データに基づいた登録データが、新たに最後に記憶されるポイント登録データDpとして記憶部203に記憶される。したがって、この場合、交換有効期間の設定が不要となるため、交換有効期間データDqの登録も不要となる。なお、サーバ200から送信された交換対象情報データの元になった登録データは、当該送信毎にポイント登録データDpから削除されてもよいし、当該送信後に所定期間経過するまでポイント登録データDpに記憶された状態が継続してもよい。前者の場合、ユーザへの送信毎に登録データがポイント登録データDpから常に削除されるため、ポイント登録データDpにおいて唯一記憶されている登録データが、上記最後に記憶されたポイント登録データDpとして交換相手(第2のユーザ)の交換対象情報データに設定されてもよい。また、前者の場合、ポイント登録データDpにおける登録データを無効化することによって当該登録データが削除されたものとして取り扱ってもよく、当該登録データがバックアップデータとしてサーバ200内に残っていてもかまわない。
このように、本実施例においては、ユーザ間においてキャラクタが交換される場合、キャラクタの種別や属性を示す情報だけでなく、当該キャラクタを交換に出す際に交換相手によって指定された場所の情報を用いた演出が行われるため、キャラクタのさらなる付加情報を用いることにより、キャラクタの交換にインセンティブを与えることができる。
なお、上述した実施例では、交換相手を選択する処理をサーバ200において行っているが、当該処理をゲームシステム1側で行ってもよい。ゲームシステム1から交換申請が行われることに応じて、当該交換申請が行われた時点における交換相手に関するデータ(例えば、ポイント登録データDp)をサーバ200から受信し、当該データに基づいて交換相手の選択がゲームシステム1内で行われる。この場合、交換相手の選択方法として、上述した第1の実施形態のように交換申請の際に指定したポイントと同じポイントを指定している交換相手が選択されてもよいし、上述した第2の実施形態のようにランダムで交換相手が選択されてもよい。何れの場合であっても、ゲームシステム1側で行われた交換相手の選択結果は、一旦サーバ200に送信されてサーバ200において登録データの確認や更新が行われる。なお、ゲームシステム1側で交換相手が選択される場合であっても、ゲームシステム1側で行われた交換相手の選択結果がサーバ200に送信された後に、改めて交換対象情報データがサ-バ200からゲームシステム1に送信されることによって交換が成立してもよい。
また、本実施例では、交換相手や交換によって取得したいキャラクタ等を指定せずに交換申請が行われるが、交換相手を選択する処理をゲームシステム1側で行う場合、ゲームシステム1のユーザが交換相手やキャラクタを指定してもよい。例えば、サーバ200から受信した交換相手に関するデータに基づいて、現時点で交換可能な交換相手や交換対象(キャラクタ)の一覧を所定のユーザインターフェイス(例えば、地球儀オブジェクトE)を用いてユーザに提示される。具体的には、サーバ200から受信したデータに基づいて、交換がまだ行われていないキャラクタが、上記ユーザインターフェイス上においてそれぞれ交換相手が指定したポイントに表示される。そして、ユーザ操作に基づいて、表示されたキャラクタから選択されることによって、ゲームシステム1側で交換相手が選択されてもよい。この場合も、ゲームシステム1側で行われた交換相手の選択結果は、一旦サーバ200に送信されてサーバ200において登録データの確認や更新が行われる。なお、ゲームシステム1側でユーザ選択によって交換相手が選択される場合であっても、ゲームシステム1側で行われた交換相手の選択結果がサーバ200に送信された後に、改めて交換対象情報データがサ-バ200からゲームシステム1に送信されることによって交換が成立してもよい。
また、交換申請において、希望するキャラクタや交換相手の交換場所等のユーザの交換希望条件が指定可能に構成されてもよい。この場合、交換申請を行う際にサーバ200に送信される交換対象情報データに、ユーザが交換を希望するキャラクタの種別や属性を示す情報や、交換相手として希望する場所の情報が追加される。そして、ユーザの交換希望条件を交換成立条件に加えた交換相手の選択処理がサーバ200側で行われることにより、ユーザの交換希望条件を考慮した交換を実現することができる。
また、上述した説明では、サーバ200を介して、複数のゲームシステム1の間でデータの送受信が行われる例を用いたが、ゲームシステム1同士が直接通信することによってデータの送受信が行われてもよい。この場合、サーバ200におけるデータの管理およびサーバ200において実行されている処理が、複数のゲームシステム1のうち、代表するゲームシステム1で行われてもよいし、複数のゲームシステム1で分担して行われてもよい。このように、上記実施例を実現するためにゲームシステム1と通信を行う他の情報処理装置は、他のゲームシステム1でもよいし、サーバ200でもよい。
なお、ゲームシステム1は、どのような装置であってもよく、携帯型のゲーム装置、任意の携帯型電子機器(PDA(Personal Digital Assistant)、携帯電話、パーソナルコンピュータ、カメラ、タブレット等)等の情報処理装置であってもよい。この場合、プレイヤキャラクタPCを動作させる操作を行うための入力装置は、左コントローラ3、右コントローラ4、またはタッチパネル13でなくてもよく、別のコントローラ、マウス、タッチパッド、タッチパネル、トラックボール、キーボード、十字キー、スライドパッド等であってもよい。
また、上述した説明では情報処理(ゲーム処理)をゲームシステム1やサーバ200で行われる例を用いたが、上記処理ステップの少なくとも一部を他の装置で行ってもかまわない。例えば、ゲームシステム1およびサーバ200がさらに他の装置(例えば、別のサーバ、他の画像表示装置、他のゲーム装置、他の携帯端末)と通信可能に構成されている場合、上記処理ステップは、さらに当該他の装置が協働することによって実行してもよい。このように、上記処理ステップの少なくとも一部を他の装置で行うことによって、上述した処理と同様の処理が可能となる。また、上述した情報処理は、少なくとも1つの情報処理装置により構成される情報処理システムに含まれる1つのプロセッサまたは複数のプロセッサ間の協働により実行されることが可能である。また、上記実施例においては、ゲームシステム1のプロセッサ81およびサーバ200の制御部202がそれぞれ所定のプログラムを実行することによって情報処理を行うことが可能であるが、ゲームシステム1および/またはサーバ200が備える専用回路によって上記処理の一部または全部が行われてもよい。
ここで、上述した変形例によれば、いわゆるクラウドコンピューティングのシステム形態や分散型の広域ネットワークおよびローカルネットワークのシステム形態でも本発明を実現することが可能となる。例えば、分散型のローカルネットワークのシステム形態では、据置型の情報処理装置(据置型のゲーム装置)と携帯型の情報処理装置(携帯型のゲーム装置)との間で上記処理を協働により実行することも可能となる。なお、これらのシステム形態では、上述した処理をどの装置で行うかについては特に限定されず、どのような処理分担をしたとしても本発明を実現できることは言うまでもない。
また、上述した情報処理で用いられる処理順序、設定値、判定に用いられる条件等は、単なる一例に過ぎず他の順序、値、条件であっても、本実施例を実現できることは言うまでもない。
また、上記プログラムは、外部メモリ等の外部記憶媒体を通じてゲームシステム1やサーバ200に供給されるだけでなく、有線または無線の通信回線を通じて当該装置に供給されてもよい。また、上記プログラムは、当該装置内部の不揮発性記憶装置に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、CD-ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ、などでもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを記憶する揮発性メモリでもよい。このような記憶媒体は、コンピュータ等が読み取り可能な記録媒体ということができる。例えば、コンピュータ等に、これらの記録媒体のプログラムを読み込ませて実行させることにより、上述で説明した各種機能を提供させることができる。
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。また、当業者は、本発明の具体的な実施例の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書(定義を含めて)が優先する。