以下、本発明の好ましい実施の形態を、添付図面を参照して具体的に説明する。
図1は、本発明に係るゲーム装置の概観を示す正面図である。図2は、同ゲーム装置の概観を示す右側面図である。
ゲーム装置1は、携帯型ビデオゲーム機であり、ゲームプログラム及びゲームデータが記録された専用の可搬型記録メディア(以下、「ゲームメディア」という。)から当該ゲームプログラム及びゲームデータを装置内のメモリ(RAM)に読み込み、CPU(Central Processing Unit)によってゲームプログラムを実行させることにより遊戯者(プレイヤ)がゲーム内容を楽しむことができるものである。
本実施形態は、携帯型ビデオゲーム機であるが、本発明は家庭用のテレビゲーム機やアーケードゲーム機などの他の種類のゲーム機やパーソナルコンピュータにも適用することができる。なお、以下の説明では、ゲーム内容として、プレイヤキャラクタが仮想的な多数のバトルカードを保有しており、プレイヤキャラクタがゲーム空間を移動中に敵キャラクタに遭遇すると、バトルモードに移行し、プレイヤは上記の多数のバトルカードの一部をプレイヤキャラクタに使用させて敵キャラクタと対戦させる対戦型ゲームを例に説明する。
ゲーム装置1は、横長長方形の薄型直方体からなる下側本体2と、この下側本体2の上面の上辺部に一対のヒンジ2a,2bにより開閉可能に取り付けられた上側本体3とで構成された折畳み可能な携帯型ゲーム装置である。上側本体3は接続部2cにより下側本体2と電気的に接続されている。
下側本体2の上面の中央には第1のディスプレイ4が設けられている。このディスプレイ4の左側には十字キー7と電源ボタン8が上下に配置されている。また、ディスプレイ4の右側にはA,B,X,Yの4個のボタンからなる操作ボタン10と2個のボタンからなる操作ボタン11が上下に配置され、その下に電源のオン/オフ状態を示すための表示灯9が配置されている。
さらに下側本体2の上側の長辺に沿う側面の略中央に記録メディアを装着するためのメディア装着部13が設けられ、下側本体2の右上角部分にRボタン14が設けられ、下側本体2の左上角部分にLボタン15が設けられている。
一方、上側本体3の下面(閉じた状態で下側本体2の上面に対向する面)の中央には第2のディスプレイ5が設けられ、このディスプレイ5の両側に効果音をステレオ出力するスピーカ12A,12Bが配置されている。
電源ボタン8は、ゲーム装置1内の回路に電源を供給してゲーム装置1を起動させる操作ボタンで、電源がオンになると、表示灯9が点灯する。十字キー7は、プレイヤがプレイヤキャラクタを移動させたり、メニュー画面やプレイヤにバトルカードを選択させるためのカード選択画面(後述する)におけるカーソルを移動させたりするための操作キーとして使用されるものである。
Rボタン14及びLボタン15は、例えば、プレイヤがバトルカードを選択するためにカード選択画面を開くために使用されるものである。操作ボタン10は、カード選択画面でプレイヤにカードを選択させるときには、選択されたバトルカードの決定やキャンセルをしたり、バトルカードの説明を見たりするための操作部材として使用され、敵キャラクタとバトルを行うときには、選択したバトルカードの使用を指令したり、プレイヤキャラクタが通常武器として保持しているロックバスターの銃撃を指令するための操作部材として使用されるものである。
第1のディスプレイ4及び第2のディスプレイ5は、ゲームのタイトル画像、メニュー画像、カード選択画面、ゲームの進行画像などの各種の画像を表示するものである。ゲームの進行画像は上側本体3の第2のディスプレイ5に表示され、カード選択画面は下側本体2の第1のディスプレイ4に表示される。なお、ゲームの進行画像は常時、第2のディスプレイ5に表示されているが、カード選択画面はプレイヤにバトルカードを選択させる処理に移行したときに第1のディスプレイ4に表示される。第1,第2のディスプレイ4,5は、例えば半透過型カラー液晶ディスプレイで構成され、略同一の表示サイズを有している。
第1のディスプレイ4の表示面には透明のタッチパネル6が設けられている。このタッチパネル6は、パネル面に多数の微小コンデンサ若しくは微小抵抗が格子状に配置されたもので、パネル面を直接手で触れたり、専用のタッチペンで触れたりして接触位置の微小コンデンサ若しくは微小抵抗を変化させ、その変化情報から第1のディスプレイ4の表示面上のタッチ位置を検出してCPUに入力するための入力装置である。
カード選択画面によるバトルカードの選択では、プレイヤは、上記のように十字キー7と操作ボタン10とによって選択することができるが、タッチパネル6に触れて所望のバトルカードを選択することもできる。
図3は、本発明に係るゲーム装置の内部構成を示すブロック図である。
ゲーム装置1は、CPU21、RAM(Random Access Memory)22、ROM(Read Only Memory)23、描画処理プロセッサ24、VRAM(Video-RAM)25、D/A(Digital-Analog)コンバータ26、表示部27、表示部28、音声処理プロセッサ29、アンプ30、スピーカ31、入力信号処理部32、タッチパネル33、操作部34、ドライバ35及びバス36を含んでいる。
なお、表示部27は図1の第1のディスプレイ4に相当し、表示部28は図1の第2のディスプレイ5に相当し、スピーカ31は図1のスピーカ12A,12Bに相当している。また、タッチパネル33は図1のタッチパネル6に相当し、操作部34は図1の十字キー7、電源ボタン8及び操作ボタン10,11に相当している。
ゲーム装置1では、ゲームプログラム及びゲームデータ(キャラクタや背景の画像データ、ステータスなどの情報表示用の画像データ、効果音やBGMなどの音声データ、文字や記号によるメッセージデータなど)が記録されたゲームメディア37をメディア装着部13に装着し、ドライバ35によってゲームメディア37内のゲームプログラム及びゲームデータをRAM22に読み込み、CPU21によってゲームプログラムを実行することによりゲーム内容を楽しむことができる。
プレイヤは下側本体2のタッチパネル6、十字キー7及び操作ボタン10の操作部材を操作することによりゲームを進行させることができる。
CPU21、RAM22、ROM23、描画処理プロセッサ24、音声処理プロセッサ29及びドライバ35はバス36によって相互にデータ伝送可能に接続されている。
CPU21は、上記のようにドライバ35によってゲームメディア37からRAM22に読み込まれるゲームプログラムを実行することより、ゲーム進行を統括的に制御する。より具体的には、タッチパネル33や操作部34の操作部材からプレイヤの操作信号が入力されると、CPU21は、ゲームプログラムに従ってその操作信号に対する所定のゲーム進行処理を行い、その処理結果に応じたゲーム進行画像を描画処理プロセッサ24に生成させて表示部27と表示部28に表示させるとともに、その処理結果に応じた効果音を音声処理プロセッサ29に生成させてスピーカ31から出力させる。
表示部27,28に表示するためのゲーム進行画像の描画処理は、主として描画処理プロセッサ24によって行われる。CPU21は、タッチパネル33及び操作部34からのプレイヤの操作信号に基づき、表示部27,28に表示すべきゲーム進行画像の内容を決定し、その内容に対して必要な描画データを生成し、その描画データを描画処理プロセッサ24に転送して描画処理を行わせる。
また、CPU21は、スピーカ31から出力すべき効果音若しくはBGMの音響内容を決定し、音声処理プロセッサ29にその音響内容に対した音声データを生成させ、その音声データをスピーカ31から出力させる。
RAM22は、ドライバ35によってゲームメディア37から読み込まれたゲームプログラム及びゲームデータを格納するエリアと、CPU21がゲームプログラムを処理するためのワークエリアを提供するものである。RAM22には、ゲームの進行に応じて必要なゲームプログラムとゲームデータとがゲームメディア37から読み込まれて記憶される。
ゲームプログラムには、CPU21に実行させるための処理手順や各種命令等が記述されており、その中には、タッチパネル33又は操作部34からの操作信号に応じてゲーム画面や音声等を制御するための内容が含まれている。ゲームデータには、例えばプレイヤキャラクタ、敵キャラクタ及び背景や他の物体を描画するための画像データが含まれ、BGMや各種の効果音として用いられる音声データも含まれている。
本実施形態では、ゲームメディア37に記憶されたゲームプログラムは、ゲーム空間上に仮想的な世界もしくは社会を形成し、プレイヤの操作によりその社会でプレイヤキャラクタを移動させると、種々の敵キャラクタに遭遇し、プレイヤはプレイヤキャラクタを通して敵キャラクタとのバトルを楽しむことを主な内容とする対戦型ゲームのゲームプログラムである。より具体的には、プレイヤキャラクタは、「ロックバスター」という連射可能な銃器を保持するとともに、「バトルカード」という多種多様な攻撃内容が定義されたカード型のアイテムを保持しており、プレイヤはロックバスターとバトルカードを駆使して敵キャラクタを撃破することを楽しむようになっている。
ロックバスターはバトル中にいつでも使用できるが、攻撃力が弱く、ロックバスターのみでは敵キャラクタを倒すことは極めて困難である。ロックバスターに対し、バトルカードは多種多様の攻撃の種類や攻撃力が定義されたもので、プレイヤがバトルカードを使用すると、そのバトルカードに定義された攻撃が敵キャラクタに加えられ、敵キャラクタにロックバスターよりも大きいダメージを与えたり、敵キャラクタを麻痺状態などの不利な状態にしたりすることができるが、ゲーム進行上、使用できる枚数が限られており、しかもその枚数や使用できるカードの種類は、後述するようにプレイヤが自由に選択できないように組み立てられている。
従って、プレイヤは、敵キャラクタの種類に応じてロックバスターとバトルカードを戦略的に使い分けて当該敵キャラクタを攻略する必要があり、本実施形態に係る対戦型ゲームは、その攻略プロセスにおけるプレイヤのバトルカードの選択とその戦略的な使い方が対戦の醍醐味となっている。
ROM23は、ディスクローディング機能などのゲーム装置1の基本的機能やゲームメディア37に記憶されたゲームプログラム及びゲームデータを読み出す手順などを示す基本プログラムが記憶されている。CPU21は、メディア装着部13にゲームメディア37が装着されると、ROM23の基本プログラムに従ってドライバ35を動作させ、ゲームメディア37からゲームプログラム及びゲームデータをRAM22に読み込み、ゲーム開始状態に設定する。
描画処理プロセッサ24は、アニメーション画像の各コマの画像を生成し、表示部27及び表示部28に表示させるものである。描画処理プロセッサ24は、CPU21からの描画指令に基づき、表示部27及び表示部28に表示させる各コマの二次元画像(本来の対戦ゲームの進行を示す画像だけでなくメニュー画面やカード選択画面などの画像を含む)を作成する。描画処理プロセッサ24には各コマの二次元画像の作成作業をするためのVRAM25が接続されている。
VRAM25には、表示部27,28に表示される各コマの二次元画像のデータを格納するためのバッファメモリ(以下、「スクリーンバッファ」という。)が2個設けられている。スクリーンバッファ25A,25Bは同一のメモリ構造及びメモリ容量を有している。
VRAM25を2個のスクリーンバッファ25A,25Bで構成するのは、1個のディスプレイ、例えば第1のディスプレイ4にアニメーション画像を表示させるような通常の描画処理の場合、一方のスクリーンバッファ25Aを用いて第1のディスプレイ4への表示処理を行っている間に、他方のスクリーンバッファ25Bで次のコマの画像データを生成し、この処理をスクリーンバッファ25Aとスクリーンバッファ25Bとの間で交互に行うことにより、第1のディスプレイ4への1/60秒毎の各コマの描画処理をスムーズに行うためである。
D/Aコンバータ26は、VRAM25から出力される画像データをアナログ信号に変換して表示部27,28に出力するものである。D/Aコンバータ26にはスクリーンバッファ25Aからの画像データとスクリーンバッファ25Bからの画像データを切り換えるスイッチ回路が設けられ、このスイッチ回路の切り換えは描画処理プロセッサ24によって制御される。
音声処理プロセッサ29は、CPU21からの音声指令に基づき、RAM22から効果音もしくはBGMの音声データを読み出し、所要の加工処理とD/A変換処理をした後、アンプ30に出力する。アンプ30は、音声処理プロセッサ29から入力される音声信号を所定の増幅度で増幅した後、スピーカ31に出力する。
入力信号処理部32は、タッチパネル33から入力されるタッチ情報(センサである抵抗やコンデンサの変化情報)に基づいてパネル面(第1のディスプレイ4の表示面)におけるタッチ位置を算出し、その算出結果をCPU21に入力する。
パネル面には、図4(a)に示すように、左上隅を原点Oとして下方向にy軸、右方向にx軸が設定されており、パネル面に設けられた多数の微小抵抗又は微小コンデンサなどのセンサにはセンサ位置(x,y)が定義されている。例えばプレイヤがタッチパネル6のP点の部分を指で触れた場合、同図(b)に示すように、接触領域には複数のセンサStが含まれ、これらのセンサStから接触があったことを示す信号が入力信号処理部32に入力される。
入力信号処理部32は、入力信号から接触のあったセンサStの各座標(x,y)を算出し、これらの座標から接触領域の中心位置を算出し、その算出結果を接触位置の情報としてCPU21に入力する。例えば接触があった領域のx軸方向の範囲がx(i)〜x(i+n)で、y軸方向の範囲がy(j)〜x(j+m)である場合、入力信号処理部32は、(x(i)+x(i+n))/n、(y(j)+y(j+m))/mを接触位置Pの座標としてCPU21に入力する。
次に、本発明に係るゲーム装置の対戦型ゲームにおけるゲーム進行について説明する。
なお、本発明に係る対戦型ゲームは、プレイヤキャラクタがゲーム空間上に仮想的に形成された世界若しくは社会を移動しているときに敵キャラクタに遭遇し、その遭遇の度に強制的にバトルが開始され、そのバトル中にプレイヤキャラクタが保有している多数のバトルカードの中からプレイヤが一部のバトルカードを選択し、ロックバスターとそのバトルカードを駆使して敵キャラクタと対戦することをメインのイベントとするものである。本発明は、各バトルにおいて、プレイヤにバトルカードを選択させる処理に関するものであるので、以下の説明では、各バトルが開始されたときの処理について、説明する。
プレイヤキャラクタが敵キャラクタに遭遇してバトルが行われるときには、例えば、図5に示すようなバトル画面40が第2のディスプレイ5に表示され、プレイヤはこのバトル画面40によってバトルの展開を視認することができる。
バトル画面40には、プレイヤキャラクタPAの背後から仮想カメラで敵キャラクタPBを見たバトル状況を示す画像(遠近法で描いた画像)が表示され、バトル画面40の周辺と各敵キャラクタPBの下部にバトルに関する各種のステータス情報が表示される。なお、バトル画面40の仮想カメラの位置は固定されているものではなく、プレイヤキャラクタPA又は敵キャラクタPBの攻撃に応じて仮想カメラの位置を変化させてその攻撃効果を示すバトル画面40が作成される。
図5の例では、3つのレーン41からなる対戦場が設定され、その対戦場の両端にプレイヤキャラクタPAと敵キャラクタPBが配置されている。なお、図5の例は、バトル途中の状況であるので、敵キャラクタPBが中央のレーン41と右側のレーン41に2つしか描かれていないが、バトル開始時は各レーン41の敵キャラクタPBが表れ、プレイヤキャラクタPAは合計3つの敵キャラクタPBと対戦することになる場合もある。
各レーン41には複数のマス目が設けられ、敵キャラクタPBはマス目を単位として前後に移動したり、3つのレーン41の間を左右に移動したりすることができる。一方、プレイヤキャラクタPAは3つのレーン41を左右に移動することができる。プレイヤキャラクタPAのロックバスターによる攻撃はプレイヤキャラクタPAが乗っているレーン41上の敵キャラクタPBしか攻撃ができないが、バトルカードによる攻撃は、バトルカードに定義された攻撃の種類によってプレイヤキャラクタPAが乗っているレーン41以外のレーン41上の敵キャラクタPBを攻撃することができるものもある。
ステータス情報としては、プレイヤキャラクタPAの体力値(HP)42、敵キャラクタPBの体力値(HP)43、カード選択画面で選択したバトルカードの枚数に関する情報44、次に発動できるバトルカードの名前と攻撃力の情報45、カスタムゲージ46などがあり、プレイヤキャラクタPAの体力値(HP)42は画面の左上隅に数値で表示され、敵キャラクタPBの体力値(HP)43は各敵キャラクタPBの下部に数値で表示される。
バトルカードの枚数に関する情報44は、次に発動できるバトルカードを除いた残りのバトルカードの枚数を示す情報で、バトル画面40の下辺左側にカードのシンボルマークで表示される。また、次に発動できるバトルカードの名前と攻撃力の情報45はバトル画面40の下辺右側にカードのアイコン45aとともに、名称と攻撃力の数値が表示される。なお、図5の例では、バトルカードが残り2枚となっているので、バトルカードの枚数に関する情報44を示すシンボルマークは1つだけ表示されている。
また、カスタムゲージ46は縦長のゲージで、バトル画面40の右上隅に縦方向に表示される。カスタムゲージ46は、バトル中にプレイヤがバトルカードを補充することができる条件を示すゲージで、このカスタムゲージ46が満杯の状態でRボタン14又はLボタン15が押されると、第1のディスプレイ4にカード選択画面CSG(図11参照)が表示され、第2のディスプレイ5に表示されているバトル状態は停止される。
カスタムゲージ46は、バトル画面40のバトル状態が再開されたときは0であるが、時間の経過とともに所定のスピードで上昇するように構成されている。カスタムゲージ46が満杯になると、その状態が保持され、このときにプレイヤはカード選択画面CSGを開いてバトルカードを補充することができる。
通常、第2のディスプレイ5にはプレイヤキャラクタPAが仮想的な社会を移動している状態が表示されるが、プレイヤキャラクタPAが敵キャラクタPBに遭遇すると、バトルモードに移行する。プレイヤキャラクタPAが敵キャラクタPBに遭遇したときには、プレイヤキャラクタPAはバトルに使用するバトルカードを保有していないので、第2のディスプレイ5には図5に示すバトル画面40ではなくプレイヤキャラクタPAが敵キャラクタPBと対峙したバトル開始画面(静止画)が表示され、第1のディスプレイ4にカード選択画面CSGが表示され、プレイヤにバトルカードを選択させる状態になる。すなわち、プレイヤの操作は第1のディスプレイ4に対する操作として処理される状態となる。なお、最初にカード選択画面CSGが表示されているときには、プレイヤはLボタン15を押すことによってプレイヤキャラクタPAをバトルから退散させることができる場合がある。
次に、図6〜図13を用いて、プレイヤキャラクタPAが敵キャラクタPBに遭遇したときのバトルの処理手順について説明する。
プレイヤキャラクタPAが敵キャラクタPBに遭遇すると、第2のディスプレイ5にその敵キャラクタPBとのバトル開始画面が表示され、図6に示すフローチャートが実行される。
バトル開始画面が表示された状態で、まず、「カード選択画面の表示I」の処理が行われ、第1のディプレイ4に後述するカード選択画面CSGが表示される(S1)。プレイヤは第1のディプレイ4に表示されたカード選択画面CSGに対して所望のバトルカード50(図11参照)を選択する操作をすることができる(S2〜S4のループ処理)。プレイヤがバトルカード50の選択を終えると(S4:YES)、ステップS5に移行し、後述するバトル処理が行われる(S5)。プレイヤがカード選択画面CSG内のバトルカード50を選択せず(S2:NO)、カード選択画面CSG内の「OK」ボタン51(図11参照)を操作した場合には(S4:YES)、バトル開始時にはプレイヤはバトルカード50を選択していないので、敵キャラクタPBからの攻撃に対してはロックバスターで応戦することになる。なお、バトル中ではカスタムゲージ46が満杯であれば、プレイヤはいつでもRボタン14又はLボタン15を押すことによりカード選択画面CSGを表示させ、バトルカード50を選択することができる。
そして、プレイヤはロックバスターとバトルカード50を駆使してプレイヤキャラクタPAに敵キャラクタPBを攻撃させ、敵キャラクタPBを全滅する(全ての敵キャラクタPBのHPを0にする)と、「勝ち」となり、逆に敵キャラクタPBの攻撃によりプレイヤキャラクタPAのHPが0になると、「負け」となり、そのバトル内容が所定の「リザルト画面」によって第2のディスプレイ5に表示され(S6)、バトル処理は終了する。
なお、「リザルト画面」は、バトルに勝利した場合には、バトルにおける敵キャラクタPBとの戦い方を評価した結果を示す画面で、例えば、バトル終了までに要した時間や同時に複数の敵キャラクタPBを倒した場合などの各種の評価値を演算し、その演算結果に基づいてプレイヤキャラクタPAに付与されるお金やアイテムなどの種々の褒美を表示する。一方、バトルに敗北した場合は、ゲームオーバー画面が「リザルト画面」として表示され、タイトル画面に戻ることになる。
カード選択画面CSGは、図11に示すように、第1のディスプレイ4を2行×3列の6つのカード表示領域A,B,C,D,E,Fに分割し、各カード表示領域A〜FにプレイヤキャラクタPAの保有している多数のバトルカード50から6枚のバトルカード50を取り出して、各カード表示領域A〜Fに配置した画面である。図11に示す例では、カード表示領域Bとカード表示領域Cに配置された2枚のバトルカード50B,50Cとカード表示領域Dとカード表示領域Eに配置された2枚のバトルカード50D,50Eがそれぞれ重なっている。そして、プレイヤは、後述する選択条件に従ってバトルカード50を選択することができる。
なお、図11では、カード表示領域A〜Fに配置されたバトルカード50に対してはそれぞれ50A,50B,50C,50D,50E,50Fの符号を付してこれらの識別をするようにしている。従って、以下では、バトルカードを総称する場合は「バトルカード50」とし、カード表示領域A〜Fに配置されたバトルカードを識別する場合は、「バトルカード50A」〜「バトルカード50F」として説明する。
第1のディスプレイ4のサイズは、例えば、256ドット(横)×192ドット(縦)であり、カード表示領域A〜Fのサイズは82ドット(横)×86ドット(縦)である。
バトルカード50は、多種多様な攻撃内容が定義されたカード状のアイテムである。バトルカード50は、図13に示すように、攻撃内容(「概要」の欄を参照)の攻撃力やレア度によってスタンダードクラス、メガクラス、ギガクラスの3つのクラスに分かれており、攻撃力及びレア度の高さはスタンダードクラス<メガクラス<ギガクラスの関係になっている。そして、この関係に応じて、カードのサイズもスタンダードクラス<メガクラス<ギガクラスの関係になっている。一方、各クラスに含まれるバトルカードの種類は、逆にスタンダードクラスが最も多く、スタンダードクラス>メガクラス>ギガクラスの順になっている。例えば、スタンダードクラスは200枚余り、メガクラスは数十枚、ギガクラスは十数枚である。
なお、スタンダードクラス、メガクラスおよびギガクラスの各クラスのカードサイズは、72ドット(横)×56ドット(縦)、90ドット(横)×70ドット(縦)、108ドット(横)×84ドット(縦)となっている。また、図13の「色」の欄に示すように、バトルカード50は、クラスに応じた色で塗り分けられ、スタンダードクラスのバトルカード50は黄色、メガクラスのバトルカード50は青色、ギガクラスのバトルカード50は赤色となっている。また、各バトルカード50には、カードの種類に応じた絵柄が描かれている。
図13の「属性」の欄は、敵キャラクタPBに定義される属性に対応して各バトルカード50に定義される攻撃内容の属性を示すものである。属性は敵キャラクタPBの種類を分類するとともに、強弱関係を設定するためのもので、「水」、「炎」、「木」、「電気」などの属性がある。なお、「無し」は属性が「水」、「炎」、「木」、「電気」のいずれでもないことを示している。バトルカード50に定義された「属性」は、その属性を弱点とする敵キャラクタPBに効果があることを示し、プレイヤが30枚のバトルカード50を編集する際にはバトルで遭遇する敵キャラクタPBの属性を考慮してバトルカード50の属性が参酌される。
図11に戻り、プレイヤが初めてゲームを行う場合には、初期設定として、プレイヤキャラクタPAにはスタンダードクラスのバトルカード50が所定の枚数(例えば、30枚)だけ付与されており、ゲームを行うことによってバトルカード50を増やすことができる。また、1回のバトルで使用できるバトルカード50の枚数は、30枚に制限され、プレイヤはバトルが行われていないときに、バトルに使用するバトルカード50を格納しておくフォルダにバトルカード50を入れたり、フォルダ外のものと入れ替えたりすることによって、フォルダ内のバトルカード50を編集することができる。従って、プレイヤは、バトルカード50のクラス、攻撃内容、属性などを参照して多数のバトルカード50の中からバトルに使用するための30枚のバトルカード50を編集する。編集された30枚のバトルカード50は、フォルダに格納される。そして、フォルダに格納されたバトルカード50は、バトル毎にシャッフルされる。図11のカード選択画面CSGの横に記載したバトルカード50の山Mはシャッフルされた30枚のバトルカード50を示している。
また、プレイヤは、上記のように、多数のバトルカード50の中からバトルに使用するための30枚のバトルカード50を編集することができるが、編集が終了すると、30枚のバトルカード50の中から所定枚数(例えば、4枚)だけお気に入りのカードを「フェイバリットカード」として指定することができる。フェイバリットカードがカード選択画面CSGに含まれる場合は、プレイヤは無条件でそのフェイバリットカードを選択することができるという利点がある。
一方、バトル中は、プレイヤは、カスタムゲージ46が満杯になる毎にカード選択画面CSGを開いてそのカード選択画面CSGからバトルカード50を選択することができるが、各カード選択画面CSGの表示領域A〜Fには、バトルカード50の山Mからバトルカード50を順番に取り出して、バトルカード50が選択された順番で各表示領域A〜Fに配置(又は補充)される。なお、図11のバトルカード50の山Mの各バトルカード50に記載した番号は、カード選択画面CSGに取り出される順番を示している。
上記のように、プレイヤは、バトル毎に、編集した30枚のバトルカード50の中から少しずつバトルカード50を取り出して当該バトルで使用することができるが、30枚のバトルカード50からバトルカード50を取り出せる順番は、カード選択画面CSGを作成するための順番(山Mにおけるバトルカード50の順番)とカード選択画面CSGでバトルカード50が選択できる条件とによって予測困難な状態になっており、プレイヤは所望のバトルカード50を自由に取り出すことはできないようになっている。なお、カード選択画面CSGにおけるバトルカード50の選択条件については後述する。
図6でステップS1に移行すると、図7に示すフローチャートに従って「カード選択画面の表示I」の処理が行われる。
「カード選択画面の表示I」は、バトル開始時のカード選択画面CSGを作成し、第1のディスプレイ4に表示させる処理である。プレイヤキャラクタPAが敵キャラクタPBに遭遇してバトルが開始する前に、プレイヤはバトルに使用したい30枚のバトルカード50を選択してフォルダに格納しているので、まず、その30枚のバトルカード50のカード選択画面CSGへの出現順序をランダム抽選により決定し、決定された順序に従って、カード選択画面CSGに配置される。従って、「カード選択画面の表示I」は、主としてフォルダから取り出される6枚のバトルカード50をどのカード表示領域A〜Fに配置するかを決定する処理1(S201,S202)と、各バトルカード50のカード表示領域A〜Fにおける表示位置を決定する処理2(S203〜S205)と、バトルカード50の山Mから取り出される6枚のバトルカード50について重なり判定をし、その判定結果と処理1で決定されたカード表示領域A〜Fの配置順とに基づいて、6枚のバトルカード50をそれぞれ決定されたカード表示領域A〜Fに順番に配置してカード選択画面CSGを作成する処理3(S206,S207)で構成されている。
まず、処理1について説明する。
6枚のバトルカード50の取り出し順は決まっているから、6つのカード表示領域A〜Fの配置順を決定し、バトルカード50の取り出し順とカード表示領域A〜Fの配置順を対応させれば、6枚のバトルカード50がどのカード表示領域A〜Fに配置されるかは一義的に決まることになる。従って、処理1では、6つのカード表示領域A〜Fの配置順が決定される。
ところで、本発明に係るカード選択画面CSGでは、6枚のバトルカード50を6つのカード表示領域A〜Fにそれぞれ配置する際に、隣接するバトルカード50同士に重なり合いが生じやすくなるように制御する必要がある。バトルカード50には、サイズの異なる3種類のバトルカード50が含まれるが、サイズの大きいメガクラスやギガクラスのバトルカード50の総数は少ないので、フォルダ内に格納された30枚のバトルカード50に含まれるメガクラスやギガクラスのバトルカード50の数も少なく、連続して取り出される6枚のバトルカード50はスタンダードクラスになることが多い。
スタンダードクラスのバトルカード50のサイズは、72ドット(横)×56ドット(縦)であるのに対し、カード表示領域A〜Fのサイズは、82ドット(横)×86ドット(縦)であるので、6枚のバトルカード50を6つのカード表示領域A〜Fの中央にそれぞれ配置すると、各バトルカード50はカード表示領域A〜Fから外にはみ出ないから2枚のバトルカード50が重なる状態を作ることはできない。従って、6枚のバトルカード50のうち、何枚かはカード表示領域A〜Fの中央からずらせて配置させる必要がある。
この場合、画面横方向の中央に位置するカード表示領域B,Eでは、バトルカード50を中央から左右のいずれにずらせても左右に隣接するバトルカード50と重なり合せることができるが、左端に位置するカード表示領域A,Dでは、バトルカード50を中央から左側にずらすと、中央のカード表示領域B,Eに配置されるバトルカード50と重なり合せ難くなる。同様に、右端に位置するカード表示領域C,Fでもバトルカード50を中央から右側にずらすと、中央のカード表示領域B,Eに配置されるバトルカード50と重なり合せ難くなる。
また、各カード表示領域A〜Fにおける中央からのずれをランダムに設定すると、カード選択画面CSG内で6枚のバトルカード50が、例えば、全体的に左側や右側に偏って配置されたような構成になる場面が生じることがあり、カード選択画面CSGの視覚的なゲーム演出効果を考慮すると、このような偏った配置は好ましくない。
そこで、本実施形態では、一方の対角線上の角に位置するカード表示領域A,Fではバトルカード50を中央に配置し、他方の対角線上の角に位置するカード表示領域C,Dではバトルカード50を中央のカード表示領域B,Eの側に寄せて配置する、若しくは、これとは逆にカード表示領域C,Dではバトルカード50を中央に配置し、カード表示領域A,Fではバトルカード50を中央のカード表示領域B,Eの側に寄せて配置する。
なお、図4で説明したように、第1のディスプレイ4には左上隅を原点Oとして下方向にy軸、右方向にx軸が設定されており、このxy座標によってカード表示領域A,C,D,Fにはそれぞれ、図12に示すように、各カード表示領域A,C,D,Fの中央位置a,c,d,fが「基準位置」として設定され、カード表示領域B,Eは、同図に示すように、各カード表示領域B,Eの中央位置b3,e3と、この中央位置b3,e3に対して所定の距離(例えば、12ドット)だけ左右にずれた位置b1,b2,e1,e2とが「基準位置」として設定されている。
従って、処理1のステップS201では、6つのカード表示領域A〜Fを(A,F)、(B,E)及び(C,D)の3つの組に分け、バトルカード50をカード表示領域の中央に配置する(より具体的には、横長長方形のバトルカード50の中心位置を各カード表示領域に設定された基準位置に一致させて配置する)一組のカード表示領域を(A,F)と(C,D)のいずれの組にするかをランダムな抽選によって決定している。
バトルカード50を基準位置に配置するカード表示領域(以下、「基準位置配置のカード表示領域」という。)の組が決定されると、3つのカード表示領域の組について、配置順を決定する順番が自動的に決定される。具体的には、基準位置配置のカード表示領域の組が(A,F)である場合は、3つの組の配置順は(A,F)、(C,D)、(B,E)となり、(C,D)である場合は、3つの組の配置順は(C,D)、(A,F)、(B,E)となる。すなわち、(B,E)の順番は常に3番目であり、ステップS201で(A,F)と(C,D)のいずれかが基準位置配置のカード表示領域の組に決定されると、決定された組が1番目となり、残りの組が2番目となる。
処理1のステップS202では、配置順の決定されたカード表示領域の各組について、抽選により配置順の先後が決定される。例えば、3つの組の配置順が(A,F)、(C,D)、(B,E)であった場合、(A,F)、(C,D)及び(B,E)の各組について、それぞれ抽選を行って配置順の先後が決定される。従って、(A,F)の組では、6つのカード表示領域A〜Fの配置順の1番目と2番目が決定され、(C,D)の組では、同配置順の3番目と4番目が決定され、(B,E)の組では、同配置順の5番目と6番目が決定されることになる。
例えば、上記の例で、(A,F)の組の順番が[F,A]、(C,D)の組の順番が[C,D]、(B,E)の組の順番が[E,B]であったとすると、6つのカード表示領域A〜Fの配置順は、F→A→C→D→E→Bとなる。この6つのカード表示領域A〜Fの配置順のデータは、RAM22に保存され、バトル終了まで維持される。すなわち、バトル中に使用されたバトルカード50は、バトルカード50の山Mから補充されるが、補充されるバトルカード50は、上記した順番に従って配置される。
次に、処理2について説明する。
処理1では、6つのカード表示領域A〜Fの配置順が決定されるので、処理2では、A〜Fのカード表示領域におけるバトルカード50の位置が決定される。3つの組の配置順の1番目の組については、カード表示領域におけるバトルカード50の位置が基準位置(カード表示領域の中央)に決まっているので、処理2では、2番目と3番目の組について、カード表示領域におけるバトルカード50の位置が決定される。
上述したように、2番目と3番目の組のカード表示領域については、全てのバトルカード50がカード表示領域の中央からずれた位置に配置されるので、これらのバトルカード50のずれの方向とずらし量がカード選択画面CSG全体の見栄えの良さなどに影響する。その一方、中央に位置する(B,E)の組については、バトルカード50の中央からのずれ量が小さいと、隣接するバトルカード50と重なりあいが生じにくくなるので、(B,E)のカード表示領域については、各カード表示領域の中央位置b3,e3に対して左右にずれた位置b1,b2,e1,e2を基準位置とし(図12参照)、バトルカード50は、これらの基準位置からずらすようにしている。
従って、処理2のステップS203では、まず、Bのカード表示領域について、2つの基準位置b1,b2のうち、いずれをバトルカード50の配置の基準位置とするかがランダムな抽選によって決定され、次に、Eのカード表示領域について、2つの基準位置e1,e2のうち、カード表示領域Bの基準位置に対して逆方向にずれた基準位置がバトルカード50の配置の基準位置として決定される。例えば、カード表示領域Bの基準位置b1がバトルカード50の配置の基準位置として決定されると、カード表示領域Eの基準位置e2がバトルカード50の配置の基準位置として決定され、逆にカード表示領域Bの基準位置b2がバトルカード50の配置の基準位置として決定されると、カード表示領域Eの基準位置e1がバトルカード50の配置の基準位置として決定される。
ステップS203で決定されたカード表示領域B,Eの基準位置もバトルが終了するまで維持される。すなわち、バトル中に、開かれた2回目以降のカード選択画面CSGでもバトルカード50の山Mから取り出され、カード表示領域B,Eに配置されるバトルカード50は、ステップS203で決定されたカード表示領域B,Eの基準位置に対して位置をずらせて配置される。
次に、処理2のステップS204では、A〜Fの各カード表示領域におけるバトルカード50の基準位置からのずらし量がランダムな抽選により決定される。例えば、基準位置配置のカード表示領域の組が(A,F)である場合は、カード表示領域A,Fの基準位置に対するずらし量は0に設定される。一方、カード表示領域B,Eについては、X軸方向−12〜+12ドット、Y軸方向−6〜+6ドットの範囲内で抽選によりずらし量がそれぞれ決定され、カード表示領域Cについては、X軸方向−9〜0ドット、Y軸方向−6〜+6ドットの範囲内で抽選によりずらし量が決定され、カード表示領域Dについては、X軸方向0〜+9ドット、Y軸方向−6〜+6の範囲内で抽選によりずらし量が決定される。
なお、基準位置配置のカード表示領域の組が(C,D)である場合は、カード表示領域C,Dの基準位置に対するずらし量は0に設定され、カード表示領域Aについては、X軸方向0〜+9ドット、Y軸方向−6〜+6ドットの範囲内で抽選によりずらし量が決定され、カード表示領域Fについては、X軸方向−9〜0ドット、Y軸方向−6〜+6ドットの範囲内で抽選によりずらし量が決定されることになる。また、上記のずらし量は、例示に過ぎず、第1のディスプレイ4の画面のサイズやカード選択画面CSGのサイズに応じて適宜、適切なずらし量が設定される。
なお、バトルカード50の山Mから取り出されたバトルカード50がサイズの大きいメガクラスもしくはギガクラスの場合は、基準位置からのずらし処理は適用せず、ずらし量は0に設定される。さらに、メガクラスもしくはギガクラスのバトルカード50がカード表示領域B,Eに配置される場合は、配置の基準位置を中央の基準位置b3,e3に設定し、バトルカード50はカード表示領域B,Eの中央に配置される。従って、メガクラスもしくはギガクラスのバトルカード50は、B,Eの各カード表示領域については、その中心位置を各カード表示領域の中央の基準位置b3,e3に一致させて配置され、A,C,D,Fの各カード表示領域については、その中心位置をA,C,D,Fの各カード表示領域に設定された基準位置a,c,d,fに一致させて配置される。
次に、処理2のステップS205では、ステップS204で決定されたA〜Fのカード表示領域における基準位置からのずらし量の調整が行われる。このずらし量の調整は、6枚のバトルカード50をステップS204で決定された各カード表示領域A〜F内の位置に配置したときに、隣り合うバトルカード50同士が近接し過ぎて重なりあっていないように見える場合や隣り合うバトルカード50同士が僅かに重なり合っているような場合があり、カード選択画面CSGの見栄えが良くなかったり、プレイヤがバトルカード50の重なり具合を十分に把握できなかったりする不具合を低減するための処理である。
従って、ステップS205では、隣接する2つのカード表示領域にそれぞれ配置される2つのバトルカード50について、図14に示す16項目のチェックが行われる。そして、いずれかの項目でチェック結果が4ドット以内である場合は、その項目に対する補正内容が行われる。例えば、カード表示領域Aに配置されるバトルカード50Aの上辺とカード表示領域Bに配置されるバトルカード50Bの上辺のY方向のずれ量が4ドット以内の場合は、カード表示領域Aにおけるバトルカード50Aの配置位置をY方向に+6ドットもしくは−6ドットだけ修正する(図14の(1−1)参照)。また、カード表示領域Aに配置されるバトルカード50Aの右辺とカード表示領域Bに配置されるバトルカード50Bの左辺のX方向のずれ量が4ドット以内の場合は、カード表示領域Aにおけるバトルカード50Aの配置位置をX方向に+6ドットもしくは−6ドットだけ修正する(図14の(2−1)参照)。
なお、図14において、比較するバトルカード50がステップS201で決定された基準位置配置のカード表示領域に配置される場合は、当該バトルカード50の配置位置は常にカード表示領域の中央位置に固定されるので、チェックの対象から除外される。例えば、基準位置配置のカード表示領域の組が(A,F)である場合は、これらのカード表示領域A,Fに配置されるバトルカード50A,50Fについては配置位置の調整は行われない。同様に、バトルカード50がサイズの大きいメガクラスやギガクラスの場合もカード表示領域の基準位置に配置されるので、配置位置の調整は行われない。また、チェックの結果、配置位置を調整すると、バトルカード50がカード選択画面CSGからはみ出すことになる場合もその調整は行われない。
ステップS204,S205の処理は、バトルカード50がバトルカード50の山Mから補充される度に行われる。
次に、処理3のステップS206では、バトルカード50の山Mから取り出される6枚のバトルカード50のサイズと、各バトルカード50のカード選択画面CSGにおける配置位置からバトルカード50が重なり合う組が判定される。この判定は、バトルカード50が重なり合う場合は、後から配置されるバトルカード50が先に配置されたバトルカード50の下側となるように表示するためである。
従って、例えば、ステップS202で決定されたカード表示領域A〜Fの配置順がF→A→C→D→E→Bで、ステップS206で判定されたバトルカードの重なり判定が、バトルカード50Bとバトルカード50C、バトルカード50Dとバトルカード50Eであった場合、図11に示すように、先に配置されたバトルカード50Cに対して後に配置されるバトルカード50Bは下に重なるように表示され、先に配置されたバトルカード50Dに対して後に配置されるバトルカード50Eは下に重なるように表示されることになる。
次に、処理3のステップS207では、バトルカード50の山Mから6枚のバトルカード50を順番に取り出し、その取り出し順に対応する配置順のカード表示領域に当該カード表示領域に設定された配置位置にバトルカード50の中心位置を合わせてそれぞれ配置してカード選択画面CSGが作成され、そのカード選択画面CSGが第1のディスプレイ4に表示される。このときのカード選択画面CSGの作成では、上述したように、重なり合うバトルカード50同士は、先に配置したバトルカード50に対して後に配置するバトルカード50を下に重なるように作成される。
図6に戻り、「カード選択画面の表示I」の処理により第1のディスプレイ4にカード選択画面CSGが表示されると、プレイヤはカード選択画面CSGに表示された6枚のバトルカード50A〜50Fの中から所定の選択条件に適合するバトルカード50を1枚ずつ選択することができる。
本実施形態では、所定の選択条件として、
(1)重なり合っているバトルカード50は、一番上にあるバトルカード50しか選択することができない、
(2)重なり合っていないバトルカード50と(1)の条件を満たすバトルカード50が複数枚あるとき、(2-1)最初に選択したバトルカードに対して上下または左右の位置関
係にあるバトルカードは、種類(名前)に関係なく選択することができる、(2-2)最初
に選択したバトルカードに対して同じ名前のバトルカードは、(2-1)の配置関係になくても選択することができる、(2-3)最初に選択したバトルカードに対して上下または左右の位置関係にないバトルカードが(2-2)の条件で選択されたときは、最初に選択したバトルカードに対して上下または左右の位置関係にあるバトルカードを選択することはできない((2-1)の条件の例外)、
(3)プレイヤが予めフェイバリットカードとして設定したバトルカードは自由に選択することができる、
の条件が設定されている。
例えば、図11の例では、プレイヤは、選択条件(1)より4枚のバトルカード50A,50C,50D,50Fから最初のバトルカード50を選択することができる。プレイヤが、例えば、最初にバトルカード50Aを選択したとき、2番目のバトルカード50として、バトルカード50Dは選択条件(2-1)より選択可能であるが、バトルカード50C,50Fは選択条件(2-2)または選択条件(3)を満たさなければ、選択することはできない。また、バトルカード50Cが選択条件(2-2)を満たしている場合、プレイヤがバトルカード50Cを2番目のバトルカード50として選択すると、選択条件(2-3)によりバトルカード50Dは選択条件(2-1)を満たしていても選択することはできない。
また、カード選択画面CSGでは、上記(1)〜(3)の選択条件に適合しないバトルカード50の輝度を暗くすることによってカード選択画面CSGに表示されるバトルカード50のいずれを選択できるかがプレイヤに識別できるようにしている。バトルカード50が選択されていない状態では重なりあっているカードのうち下のバトルカード50が暗転(輝度を落として)表示され、選択できないことが示される(図11のバトルカード50B,50E参照)。
従って、この状態でプレイヤが十字キー7を操作してカード選択画面CSGに表示されるカーソル(具体的にはバトルカード50の四隅を囲む枠として表示されるカーソル)を所望のバトルカード50に移動させて操作ボタン10の中のAボタンを操作する、もしくは、タッチペンを所望のバトルカード50に直接タッチするなどしてバトルカード50を選択すると(S2:YES)、図8に示すフローチャートに従って「カード選択画面の変更」の処理が行われる(S3)。
「カード選択画面の変更」の処理では、選択されたバトルカード50が選択条件に適合するか否かが判別され(暗転しているバトルカード50が選択されたか否かが判別され)(S401)、選択条件に適合していれば(暗転していないバトルカード50が選択されていれば)(S401:YES)、そのバトルカード50が選択済みであることを示すために塗り潰し表示され(S402)、そのバトルカード50に対して上記(1)〜(3)の選択条件に適合しない残りのバトルカード50の輝度を暗転させる(S403)。一方、選択されたバトルカード50が選択条件に適合していなければ(S401:NO)、ステップS402〜S403をスキップして図6のフローチャートに戻る。
図6に戻り、ステップS3,S4の処理は、プレイヤがカード選択画面CSGに表示される「OK」ボタン51を操作するまで繰り返され(S2〜S4のループ)、プレイヤが「OK」ボタンを操作すると(S4;YES)、「バトル処理」に移行する(S5)。
「バトル処理」に移行すると、図9に示すフローチャートに従ってプレイヤキャラクタPAと敵キャラクタPBとのバトルが処理される。
ステップS5で「バトル処理」に移行すると、バトル画面40(図5参照)が第2のディスプレイ5に表示される。プレイヤがカード選択画面CSGで選択した複数枚のバトルカード50は、その選択順でしか使用できず、図5に示すように、バトル画面40の下辺には次に発動できるバトルカード50が表示される。
従って、バトル中に、プレイヤが操作ボタン10のAボタンを操作すると(S601:YES)、バトル画面40の下辺に次に発動できるバトルカード50が表示されていれば(S602:YES)、そのバトルカード50が発動され(S603)、そのバトルカード50による攻撃が敵キャラクタPBに当たったか否かの当たり判定とその当たり判定に基づく敵キャラクタPBの体力値(HP)の減算処理が行われ(S604)、その減算処理に基づいて、バトル画面40にそのバトルカード50による攻撃効果が表示される(S605)。なお、バトル画面40の下辺に次に発動できるバトルカード50が表示されていなければ(S602:NO)、すなわち、選択したバトルカード50を全て使用していれば、Aボタンの操作に対する処理は行われず、ステップS601に戻る。
また、プレイヤが操作ボタン10のBボタンを操作すると(S606:YES)、プレイヤキャラクタPAの持っているロックバスターが発射され(S607)、そのロックバスターによる攻撃が敵キャラクタPBに当たったか否かの当たり判定とその当たり判定に基づく敵キャラクタPBの体力値(HP)の減算処理が行われ(S608)、その減算処理に基づいて、バトル画面40にそのロックバスターによる攻撃効果が表示される(S609)。なお、プレイヤがBボタンを押し続けている間はロックバスターが連射され、バトル画面40にはロックバスターの連射攻撃による効果が表示される。また、攻撃効果の表示とは、バトルカード50またはロックバスターの攻撃を受けた敵キャラクタPBのダメージの状態を示す画像と敵キャラクタPBの減少した体力値(HP)の情報の表示である。
そして、プレイヤキャラクタPAのバトルカード50若しくはロックバスターによる攻撃により敵キャラクタPBが全滅すると(S610:YES)、プレイヤキャラクタPAの「勝ち」となり(S621)、バトル処理を終了して図6のフローチャートに戻る。なお、敵キャラクタPBが複数体いる場合は、プレイヤキャラクタPAの攻撃に対して敵キャラクタPB毎に体力値(HP)が更新され、その体力値(HP)が0になると、その敵キャラクタPBはバトル画面40から消去される。従って、最後に残っている敵キャラクタPBの体力値(HP)が0になり、バトル画面40から消去された時点で敵キャラクタPBの全滅となる。
一方、バトル中に、敵キャラクタPBの攻撃があると(S611:YES)、その攻撃がプレイヤキャラクタPAに当たったか否かの当たり判定とその当たり判定に基づくプレイヤキャラクタPAの体力値(HP)の減算処理が行われ(S612)、その算出処理に基づいて、その攻撃効果が表示される(S613)。この攻撃効果は、敵キャラクタPBに対する攻撃効果と同様に、攻撃を受けたプレイヤキャラクタPAのダメージの状態を示す画像とプレイヤキャラクタPAの減少した体力値(HP)の情報の表示である。
そして、敵キャラクタPBの攻撃によりプレイヤキャラクタPAの体力値(HP)が0になると(S614:YES)、プレイヤキャラクタPAの「負け」となり(S622)、バトル処理を終了して図6のフローチャートに戻る。
上記のステップS601〜S614,S621,S622の処理の説明では、プレイヤキャラクタPAの攻撃と敵キャラクタPBの攻撃の処理手順しか説明していないが、例えば、プレイヤキャラクタPAは、レーン41を横に移動するなどして敵キャラクタPBの攻撃を回避することができ、敵キャラクタPBも同様にプレイヤキャラクタPAからの攻撃を回避することがある。
従って、バトル処理では、プレイヤキャラクタPAと敵キャラクタPBとの相互の攻撃/回避の処理が繰り返され、プレイヤキャラクタPAの体力値(HP)が0になるか、全ての敵キャラクタPBの体力値(HP)が0になった時点で勝敗が決まり、そのバトルは終了する。
バトル中に、プレイヤがバトルカード50を補充するためにRボタン14又はLボタン15を操作すると(S615:YES)、バトル画面40に表示されたカスタムゲージ46が満杯になっているか否かが判別され(S616)、カスタムゲージ46が満杯になっていれば(S616:YES)、「カード選択画面の表示II」の処理が行われ、第1のディプレイ4にカード選択画面CSGが表示される(S617)。一方、プレイヤがRボタン14又はLボタン15を操作せず(S615:NO)、または、カスタムゲージ46が満杯になっていなければ(S616:NO)、ステップS601に戻り、バトルが継続される。すなわち、プレイヤは、カード選択画面CSGにおいて新たなバトルカード50を選択することはできない。
ステップS617に移行すると、図10に示すフローチャートに従って「カード選択画面の表示II」の処理が行われる。
「カード選択画面の表示II」の処理では、前回のカード選択処理で選択されず残ったバトルカード50のみが表示されたカード選択画面CSGに対して、バトルカード50のないカード表示領域にバトルカード50の山Mからバトルカード50を補充してカード選択画面CSGを生成する。
なお、バトルカード50の補充は、前回のカード選択処理で選択されて無くなったバトルカード50のカード表示領域に対して行われるが、その無くなったバトルカード50と同一の位置に再配置するのではなく、再度、配置位置を算出し、新たな配置位置にバトルカード50の補充が行われる。このように、配置位置を再計算するのは、補充するバトルカード50のカード表示領域における位置を変化させることにより、前回のカード選択処理で残っているバトルカード50との重なり具合を変化させ、カード選択画面CSGの全体的な見た目の感じを前回のカード選択画面CSGとは異ならせるためである。これにより、プレイヤは、カード選択画面CSGを開く度に6枚のバトルカード50の配置や重なり具合が異なるので、変化に富んだカード選択画面CSGでバトルカード50の選択ができる。
「カード選択画面の表示II」の処理では、まず、前回のカード選択処理で残ったカード選択画面CSGのバトルカード50のないカード表示領域における各カード表示領域のバトルカード50の配置順のデータがRAM22から読み出される(S613a)。例えば、前回のカード選択画面CSGが図11に示す内容で、このカード選択画面CSGでプレイヤが3枚のバトルカード50A,50C,50Dを選択していた場合、2回目に表示されるカード選択画面CSGは、図15のようになる。なお、図15において、点線で示すバトルカード50A,50C,50Dは選択されたバトルカードを示し、実線で示すバトルカード50B,50E,50Fは選択されず残ったバトルカード50を示している。
最初のカード選択画面CSGを作成する際に決定されたA〜Fのカード表示領域の配置順がF→A→C→D→E→Bであるとすると、図15の例では、RAM22から3つのカード表示領域A,C,Dの配置順のデータ(2番,3番,4番)が読み出される。従って、このデータの大小関係から3つのカード表示領域A,C,Dのバトルカード50の補充の順番はA→C→Dとなる。
続いて、バトルカード50の山Mからバトルカード50が取り出される(S613b)。図15の例では、同図(a)に示すように、バトルカード50の山Mは、既に6枚のバトルカード50がカード選択画面CSGの作成で取り出されているので、7番目のバトルカード50を先頭にした山となっている。従って、バトルカード50の山Mから、7番目のバトルカード50が取り出される。
続いて、最初に補充するカード表示領域について、「カード選択画面の表示I」におけるステップS204,S205,S206の処理(図7参照)と同様の処理が行われる(S613c〜S613e)。すなわち、最初に補充するカード表示領域について、バトルカード50の基準位置からのずらし量がランダムな抽選により決定され(S613c)、さらにそのずらし量の調整が行われた後(S613d)、バトルカード50の山Mから取り出されたバトルカード50が隣接するバトルカード50と重なるか否かの判定が行われる(S613e)。
そして、再計算したカード表示領域における配置位置と重なり判定の結果とに基づき、バトルカード50の山Mから取り出されたバトルカード50が最初のカード表示領域に補充される(S613f)。
最初のバトルカード50の補充処理が終了すると、全ての補充すべきバトルカード50の補充処理が完了したか否かが判別され(S613g)、補充すべきバトルカード50が残っていれば(S613g:NO)、ステップS613bに戻り、最初のバトルカード50の補充処理と同様の処理が繰り返される(ステップS613b〜S613gのループ)。
図15(b)は、同図(a)のカード表示領域A,C,Dにバトルカード50が補充された状態の一例を示したものである。
図15の例では、上記のように、カード表示領域A,C,Dのバトルカード50の補充の順番はA→C→Dであるので、最初にカード表示領域Aに対してバトルカード50の補充位置が再計算されるが、カード表示領域Aは「カード選択画面の表示I」の処理で基準位置配置のカード表示領域に設定されているので、補充位置は前回のカード選択画面CSGの場合と同じである(図15(a)の位置n1(基準位置a1))。また、カード表示領域Aのバトルカード50Aは隣接するバトルカード50と重ならないので、図15(b)では補充されたバトルカード50Aは同図(a)のバトルカード50Aと同じになっている。
一方、カード表示領域C,Dについては、再計算された補充位置が前回のカード選択画面CSGの場合と異なる場合がある。図15(b)では、カード表示領域Cの補充位置n2が僅かに左上に移動してn2’となり、カード表示領域Dの補充位置n3が僅かに右に移動してn3’となった場合の例を示している。また、カード表示領域C,Dに対する2枚のバトルカード50の重なり判定では、それぞれバトルカード50Cとバトルカード50Dに重なることが判定されるので、その判定結果に基づき、バトルカード50の山Mから取り出される2枚目のバトルカード50(8番目のバトルカード50)は、バトルカード50Bの下に配置され、3枚目のバトルカード50(9番目のバトルカード50)は、バトルカード50Eの下に配置される。
このように、後から補充されるバトルカード50C,50Dを重なり合う関係にあるバトルカード50B,50Eに対して下に配置するのは、先に下に配置されていたバトルカード50B,50Eの上に配置すると、上記(1),(2)の選択条件によって下に配置されていたバトルカード50B,50Eが選択されないという不都合が生じるから、その不都合が生じないようするためである。
そして、補充すべきカード表示領域の全てにバトルカード50が補充されると(S613g:YES)、図9のバトル処理に戻る。
図9のバトル処理に戻ると、ステップS618〜S620でプレイヤによるバトルカード50の選択処理が行われる。なお、ステップS618〜S620の処理は、上述した図6のステップS2〜S4の処理と同様であるので、説明を省略する。そして、カード選択画面CSGによるプレイヤのバトルカード50の選択が終了すると(S620:YES)、ステップ601に戻り、バトルが継続される。
上記のように、本実施形態によれば、プレイヤにバトルカード50を選択させるためのカード選択画面CSGとして、6枚のバトルカード50を2行×3列に配置する際、隣接するバトルカード50同士に重なり合いが生じやすくなるように制御しているので、カード選択画面CSG内の6枚のバトルカード50の配置に変化が生じ、ゲーム進行を示す画像の視覚的な演出効果を高めることができる。
また、2枚のバトルカード50が重なり合う箇所が複数個所生じる場合には、カード選択画面CSGにおける6枚のバトルカード50の配置のバランスが偏らないように調整しているので、カード選択画面CSGの見栄えを悪くすることがない。
更に、カード選択画面CSGを用いてプレイヤがバトルカード50を選択する際の選択条件として、重なり合った2枚のバトルカード50については、1番上にあるバトルカード50だけを選択可能にしているので、カード選択画面CSGでプレイヤが選択したいバトルカード50を選択できるか否かについて運の要素が従来よりも大きくなり、カード選択画面CSGでのバトルカード50の選択をより戦略的にさせることができる。これにより、プレイヤに対して対戦ゲームの興趣を高めることができる。
また、バトル中は、バトルカード50の山Mからバトルカード50が補充されるが、2回目以降のカード選択画面CSGでは先のカード選択画面CSGで選択されたバトルカード50が補充されるようにしているので、各カード選択画面CSGでプレイヤが選択できるバトルカード50の組み合わせが複雑に変化し、バトルカード50の選択における面白さが向上する。
ところで、上記の実施形態では、バトルカード50に定義される攻撃内容は1つだけで、バトル画面40でバトルカード50を発動すると、そのバトルカード50に定義された攻撃が行われるだけであったが、バトルカード50に2つまたはそれ以上の攻撃内容を定義するとともに、攻撃内容に応じてカード選択画面CSGで選択できる条件を異ならせるようにしてもよい。
そのようにすると、実質的にバトルカード50による攻撃の種類を増加させるとともに、バトルカード50の選択方法もより複雑かつ変化に富んだものにすることができ、対戦型ゲームの面白さをより向上させることができる。
例えば、図13に示したバトルカード50の攻撃内容は敵キャラクタPBを直接攻撃するものであるが、その攻撃内容を「バトルカード50の本来的な使用」とすると、各バトルカード50に「補助的な使用」を定義し、カード選択画面CSGで選択条件により選択できないバトルカード50を「補助的な使用」であれば、選択できるようにする方法が考えられる。
より具体的には、各バトルカード50の攻撃内容は、「無属性」「炎属性」「水属性」「電気属性」及び「木属性」の6つの属性に分類されているが、これらの属性に対応して補助的な攻撃を定義し、プレイヤにバトルカード50を補助的な攻撃としても使用するか否かをバトル開始前に選択させるようにする。補助的な攻撃とは、例えば、
(a)無属性のバトルカード;
バトルフィールド(図5のバトル画面40のレーン41参照)を削り取り、敵キャラクタPBに攻撃を当て易くする
(b)炎属性のバトルカード;
直前に選択されたバトルカード50の攻撃力を所定値だけ上昇させる
(c)水属性のバトルカード;
プレイヤキャラクタPAを殆どの攻撃をかわす透明人間にする
(d)電気属性のバトルカード;
発動すると、敵キャラクタPBを一定時間マヒ状態にし、動けなくする
(e)木属性のバトルカード;
バトルフィールド(図5のバトル画面40のレーン41参照)を草むらに変更し、続けて炎属性の攻撃を行った場合にはその攻撃力を倍増する
といった内容である。
そして、プレイヤがバトルカード50を補助的な攻撃として使用することを選択していれば、カード選択画面CSGで上記の(1)〜(3)の選択条件(バトルカード50の本来的な使用としての選択条件)で選択できないバトルカード50を上記の(1)〜(3)
の選択条件とは異なる選択条件で選択可能にする。
例えば、図11に示すカード選択画面CSGにおいて、6枚のバトルカード50A〜50Fを他のバトルカード50の下に配置されているグループ(イ)(バトルカード50B,50E)と、他のバトルカード50の下に配置されていないグループ(ロ)(バトルカード50A,50C,50D,50F)とに分け、グループ(イ)については、「補助的な使用」であれば、グループ(ロ)のバトルカード50に加えて自由に選択できるものとし(選択条件(4))、一方、「本来的な使用」であれば、グループ(ロ)のバトルカード50を選択しない条件で1枚だけ選択できる(選択条件(5))ようにする。
(1)〜(3)の選択条件に(4),(5)の選択条件を加えることにより、例えば、図11に示すカード選択画面CSGにおいて、プレイヤは、
(i)「本来的な使用」をするバトルカード50として、グループ(ロ)のバトルカード50A,50C,50D,50Fの中から選択条件(1)〜(3)に従ってバトルカード50を選択する
(ii)上記(i)の選択に加えて、選択条件(4)に従ってグループ(イ)のバトルカード50B,50Eを「補助的な使用」をするバトルカード50として選択する
(iii)「本来的な使用」をするバトルカード50として、選択条件(5)に従ってグループ(イ)のバトルカード50B,50Eのいずれか1枚を選択する
のいずれかを行うことができる。
図16は、バトルカード50に補助的な使用を加えた場合のカード選択画面CSGにおけるバトルカード50の選択処理の手順を示すフローチャートである。なお、同図に示すフローチャートでは、説明を簡単にするために、選択条件(5)に従ってグループ(イ)のバトルカード50を選択する場合の処理は省略している。従って、同図に示すフローチャートは、図8に示すフローチャートにステップS404〜S406の処理を追加した内容となっている。
図16に示すフローチャートによれば、ステップS401で、プレイヤに選択されたバトルカード50が選択条件に適合していないと判別されると(S401:NO)、更にプレイヤに選択されたバトルカード50が他のバトルカード50の下にあるか否かが判別され(S404)、他のバトルカード50の下にある場合は(S404:YES)、プレイヤに補助カードとして使用するか(「補助的な使用」であるか)否かの問い合わせが行われ(S405)、この問い合わせに対してプレイヤが「補助カードとして使用する」を選択すると(S406:YES)、ステップS402に移行し、そのバトルカード50が選択済みであることを示すために塗り潰し表示され(S402)、上記(1)〜(3)の選択条件に適合しない残りのバトルカード50の輝度を暗転させる(S403)。
一方、ステップS404で他のバトルカード50の下にないと判別された場合(S404:NO)やステップS406でプレイヤが「補助カードとして使用する」を選択しなかった場合(S406:NO)は、図6のフローチャートに戻る。
なお、カード選択画面CSGで「補助的な使用」として選択されたバトルカード50のバトル画面40での使用は、基本的に「本来的な使用」として選択されたバトルカード50と同じであり、カード選択画面CSGで選択された順番に発動される。従って、例えば、「補助的な使用」として選択されたバトルカード50の攻撃内容が上記(c)の場合は、そのバトルカードが発動されたときからプレイヤキャラクタPAが透明人間となり、敵キャラクタPBの攻撃をかわし易くなる。一方、「補助的な使用」として選択されたバトルカード50の攻撃内容が上記(b)の場合は、その攻撃内容はそのバトルカード50が選択される直前に選択されたバトルカード50に対して作用する。従って、例えば、図11の例で、バトルカード50Bが「本来的な使用」で選択された後、バトルカード50Dが「補助的な使用」で選択された場合、バトルカード50Bを発動したときの攻撃力がバトルカード50Dによって倍増されることになる。
また、図16のフローチャートでは、選択条件(5)がある場合については説明を省略したが、選択条件(5)がある場合には、例えば、ステップS405で、バトルカード50を「本来的な使用」と「補助的な使用」のいずれで使用するかの問い合わせを行い、プレイヤが「本来的な使用」を選択した場合は、それまでに選択しているグループ(ロ)のバトルカード50をキャンセルさせるようにすればよい。
なお、上記実施形態では対戦ゲームを例に説明したが、本発明に係るゲーム装置は、対戦ゲームに限定されず、多数のカード状のアイテムの一部をカード選択画面CSGを用いてプレイヤに選択させ、そのカード状のアイテムを使用しながらゲームを進行させる各種のジャンルのゲームに広く適用することができる。
また、上記実施形態では、プレイヤキャラクタPAにバトルカード50を使用させるゲームについて説明したが、プレイヤキャラクタPAが登場せず、プレイヤ自身がゲーム空間上でカード状のアイテムを使用してゲームを楽しむタイプにも適用することができる。