説明

ゲームプログラムおよびゲーム装置

【課題】ゲームの戦略性が高く、興趣性に富むパズルゲームを提供する。
【解決手段】ゲーム装置は、各々に属性が設定された複数のパズル要素を表示装置の画面内における所定領域内に配置する。所定領域内におけるパズル要素の配置パターンは、プレイヤの操作に従って変更される。配置パターンが変更されると、ゲーム装置は、所定領域内の各パズル要素のうちで、同一種類の属性が設定されており、かつ、閉じた環状に隣接配置されているパズル要素の群を環状パズル要素群として、当該環状パズル要素群を特定する。ゲーム装置は、特定されたパズル要素群を特定環状パズル要素群として、当該特定環状パズル要素群によって決まる位置に配置されるパズル要素を消去する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、パズルゲームをユーザにプレイさせるゲームプログラムおよびゲーム装置に関する。
【背景技術】
【0002】
従来、画面上に配置されたブロックまたはパネル(以下、パズル要素と呼ぶ)をプレイヤの操作によって移動させたり変化させたりして、所定の条件が満たされた場合に、条件を満たしたパズル要素が消去されるパズルゲームがある(例えば、特許文献1および特許文献2)。特許文献1および特許文献2に開示されたパズルゲームでは、同じ種類のパズル要素が所定数以上隣接して配置されたことを条件としてパズル要素が消去される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2001−178967号公報
【特許文献2】特開2006−311933号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来の多くのパズルゲームにおいて、パズル要素を消去する条件(消去条件)は、上記特許文献1および特許文献2と同様、「同じ種類のパズル要素が所定数以上隣接する」という、単純な条件であった。従来のパズルゲームでは消去条件が単純であることからゲーム自体が単純で単調なものになってしまい、ゲームの戦略性が低く、面白みに欠ける場合があった。
【0005】
それ故、本発明の目的は、より戦略性が高く、興趣性に富むパズルゲームを提供することである。
【課題を解決するための手段】
【0006】
本発明は、上記の課題を解決するために、以下の構成を採用した。なお、本欄における括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、請求項に記載の発明を何ら限定するものではない。
【0007】
本発明は、表示装置にゲーム画像を表示することが可能なゲーム装置(1)のコンピュータ(CPU31等)に実行させるゲームプログラム(50)である。ゲームプログラムは、パズル要素配置手段(ステップS1を実行するCPU31等。以下、本欄においては単にステップ番号のみを記載する。)と、配置変更手段(S4)と、環状パズル要素特定手段(S7)と、パズル要素消去手段(S9)として、コンピュータを機能させる。パズル要素配置手段は、各々に属性(色)が設定された複数のパズル要素(ピース)が表示装置の画面内における所定領域に配置される状態を示す領域データをゲーム装置のメモリから繰り返し読み出し、当該領域データにより示される配置に従って複数のパズル要素を表示装置の当該所定領域に表示させる。配置変更手段は、メモリから領域データを読み出し、所定領域内におけるパズル要素の配置パターンをプレイヤの操作(変更操作)に従って変更するように領域データを変更する。環状パズル要素特定手段は、配置変更手段によって配置パターンの変更が行われたことに応じて、メモリから領域データを読み出し、当該配置パターンの変更によって位置または属性が変更されたパズル要素を含み、かつ、所定領域内の各パズル要素のうちで、同一種類の属性が設定されており、かつ、閉じた環状に隣接配置されているパズル要素の群を環状パズル要素群として特定し、当該環状パズル要素群を示すデータをメモリに記憶する。パズル要素消去手段は、環状パズル要素群を示すデータをメモリから読み出し、当該環状パズル要素特定手段によって特定されたパズル要素群を特定環状パズル要素群として少なくとも消去するように、メモリに記憶される領域データを変更する。
【0008】
上記によれば、パズル要素を消去するための消去条件として、「同一種類の属性が設定されており、かつ、閉じた環状に隣接配置されている」という条件が用いられる。したがって、単一種類のパズル要素を環状につなげるように配置することによって、パズル要素が消去される。従来のような「単一種類の複数個のパズル要素をつなげる」という消去条件では、条件が簡単すぎるためにゲーム自体が単純で戦略性の低いものになってしまうのに対して、上記によれば、消去条件が適度に複雑になることでゲームの戦略性を向上することができ、興趣性の高いパズルゲームを提供することができる。
また、上記によれば、プレイヤの操作によって配置パターンの変更が行われた結果、消去条件が満たされた場合、プレイヤのさらなる操作がなくとも環状パズル要素が消去される。したがって、プレイヤは快適な操作性でゲームをプレイすることができる。
【0009】
また、環状パズル要素特定手段は、環状パズル要素群の内側に、当該環状パズル要素群と同じ属性のパズル要素が配置されていないことを条件として、当該条件を満たす環状パズル要素群を特定環状パズル要素群として特定してもよい。
【0010】
上記によれば、環状パズル要素群の内側に当該環状パズル要素群と同一属性のパズル要素が配置されている配置パターンが存在する場合、消去条件は満たされないこととなる。ここで、もし仮に、上記の配置パターンとなる場合に消去条件が満たされるとすれば、消去条件を満たすパズル要素群が所定領域内に多数存在することになる。その結果、ゲームが簡単になりすぎてしまい、かえってゲームの興趣性が低下してしまうおそれがある。また、上記の配置パターンとなる場合に消去条件が満たされるとすれば、消去条件を満たす環状のパズル要素群が2重に存在する可能性があるので、いずれのパズル要素群を消去すべきかを判断するゲーム処理(またはプレイヤ操作)が必要となってしまう。これに対して、上記発明によれば、上記配置パターンでは消去条件が満たされないので、ゲームが簡単になりすぎることを防止することができるとともに、ゲーム処理またはプレイヤ操作が煩雑になることを防止することができる。
【0011】
パズル要素配置手段は、複数種類の属性のパズル要素を所定領域内に配置してもよい。このとき、環状パズル要素特定手段は、環状パズル要素群の内側に、当該環状パズル要素群と異なる単一の属性のパズル要素のみが配置されていることを条件(第1の追加条件)として、当該条件を満たす環状パズル要素群を特定環状パズル要素群として特定する。
【0012】
上記によれば、環状パズル要素群の内側のパズル要素が単一種類であることが要求されるので、ゲームの難易度をより向上することができる。
【0013】
環状パズル要素特定手段は、環状パズル要素群の内側に配置されている1以上のパズル要素をできるだけ少ない数のパズル要素で囲むことを追加の条件(第2の追加条件)として、当該追加の条件を満たす環状パズル要素群を特定環状パズル要素群として特定してもよい。
【0014】
上記によれば、同一属性で隣接配置されるあるパズル要素群Aについて見ると、当該パズル要素群Aを囲むことによって消去条件を満たす環状パズル要素群は、1つに決められる。上記パズル要素群Aを囲むことによって消去条件を満たすパズル要素群が2つ以上になることはないので、2つのうちからいずれのパズル要素群を消去すべきかを判断するゲーム処理(またはプレイヤ操作)が不要となる。したがって、上記によれば、ゲーム処理またはプレイヤ操作が煩雑になることを防止することができる。
【0015】
また、環状パズル要素特定手段は、基準選出手段(S21)と、内側パズル要素選出手段(S22)と、外側パズル要素選出手段(S24,S25)とを含んでいてもよい。基準選出手段は、配置変更手段による配置パターンの変更によって位置または属性が変更されたパズル要素を基準パズル要素(基準ピース、基準ピースデータ57)として選出し、当該基準パズル要素を示す基準パズル要素データをメモリに記憶する。内側パズル要素選出手段は、基準パズル要素データと領域データとをメモリから読み出し、領域データを参照して、基準パズル要素のみを囲むパズル要素群のうちで、基準パズル要素とは異なる属性のパズル要素を選出する。さらに、内側パズル要素選出手段は、選出されたパズル要素を含むパズル要素群であって、基準パズル要素とは異なる属性のパズル要素が互いに隣接配置されることによって形成されるパズル要素群を示すデータを内側パズル要素群データ(内側ピース群、内側ピースデータ58)としてメモリに記憶する。外側パズル要素選出手段は、メモリから領域データおよび内側パズル要素群データを読み出し、領域データを参照して、当該内側パズル要素群データが示すパズル要素群のみを囲むパズル要素群を外側パズル要素群(外側ピース群、外側ピースデータ59)として選出し、外側パズル要素群のうちで、それに含まれる各パズル要素が閉じた環状に隣接配置されている外側パズル要素群を、特定環状パズル要素群として特定し、当該特定環状パズル要素群を示すデータをメモリに記憶する。
【0016】
上記によれば、基準パズル要素を含む環状パズル要素群を、簡易な処理で特定することができる。すなわち、基準パズル要素から内側パズル要素群を選出し、内側パズル要素群から外側パズル要素群を選出することによって、容易かつ簡易な処理で環状パズル要素群を特定することができる。
上記の他に、環状パズル要素特定手段は、位置または属性が変更されたパズル要素を基準パズル要素とし、同種の属性のパズル要素で構成され、かつ基準パズル要素から延びるパズル要素列を探索し、当該パズル要素列が閉じた環状に形成されているか、および、パズル要素列の内側に同種のパズル要素が配置されていないかを判定することによって、環状パズル要素群を特定してもよい。
【0017】
また、パズル要素配置手段は、少なくとも第1の属性のパズル要素および第2の属性のパズル要素を所定領域内に配置してもよい。このとき、環状パズル要素特定手段は、第1の属性のパズル要素および第2の属性のパズル要素の両方について、特定環状パズル要素群となるか否かを判断する。
【0018】
上記によれば、複数種類の属性のいずれのパズル要素で閉じた環状形状を作成してもパズル要素を消すことができる。そのため、プレイヤは、各種類のパズル要素を外側(枠)にするかそれとも内側にするかを考えながらゲームをプレイすることになる。したがって、上記によれば、パズル要素の消去方法のバリエーションを増やすことによって、ゲームの戦略性を向上し、より興趣性の高いパズルゲームを提供することができる。
【0019】
また、環状パズル要素特定手段は、環状パズル要素群の内側に、当該環状パズル要素群と異なる単一の属性のパズル要素のみが配置されていることを条件として、第1の属性の環状パズル要素群の内側に、第2の属性のパズル要素のみが配置されている場合、および、第2の属性の環状パズル要素群の内側に、第1の属性のパズル要素のみが配置されている場合の両方の場合について、特定環状パズル要素群となるか否かを判断してもよい。
【0020】
上記によれば、閉じた環状に隣接配置されているパズル要素群の内側のパズル要素が単一種類であることが要求されるので、ゲームの難易度をより向上することができる。
【0021】
また、ゲームプログラムは、変更先および変更元のパズル要素を指定するプレイヤ操作を示すデータをゲーム装置の入力装置から取得する入力受付手段としてコンピュータをさらに機能させてもよい。このとき、配置変更手段は、入力受付手段がプレイヤ操作を示すデータを取得する毎に、パズル要素の配置パターンを変更する。
【0022】
上記によれば、プレイヤは、毎回の操作において第1および第2のいずれの属性のパズル要素に対しても操作を行うことができる。これによって、ゲームの操作性をより向上することができる。
【0023】
また、パズル要素消去手段は、環状パズル要素特定手段によって特定された特定環状パズル要素群と、当該特定環状パズル要素群の内側に配置されるパズル要素とを消去ように、メモリに記憶される領域データを変更してもよい(図5)。
【0024】
上記によれば、消去条件を満たした環状パズル要素群で囲まれる領域内のパズル要素が消去されるので、プレイヤにとっては消去条件を満たした場合にパズル要素が消去される領域がわかりやすい。すなわち、上記によれば、ルールがわかりやすく初心者でも楽しめるパズルゲームを提供することができる。
【0025】
また、パズル要素消去手段は、環状パズル要素特定手段によって特定された特定環状パズル要素群を消去ように、メモリに記憶される領域データを変更してもよい。
【0026】
上記によれば、消去条件を満たした環状パズル要素群が消去されるので、プレイヤにとっては消去条件を満たした場合に消去されるパズル要素がわかりやすい。すなわち、上記によれば、ルールがわかりやすく初心者でも楽しめるパズルゲームを提供することができる。
【0027】
また、パズル要素配置手段は、複数種類の属性のパズル要素を所定領域内に配置してもよい。このとき、ゲームプログラムは、所定領域内のパズル要素のうちで、変更元のパズル要素と変更先のパズル要素とを指定するプレイヤ操作を示すデータをゲーム装置の入力装置から取得する変更受付手段(S2)としてコンピュータをさらに機能させる。配置変更手段は、変更先のパズル要素の属性を、変更元のパズル要素の属性へと変更することによってパズル要素の配置パターンを変更する。
【0028】
上記によれば、変更先のパズル要素の属性は、変更元のパズル要素の属性へと変更されるので、プレイヤは、パズル要素の属性を所望の属性へと変更したい場合、当該所望の属性を所定領域内から探して指定しなければならない。つまり、上記によれば、配置パターンを変更する操作を、所望の属性をプレイヤが単に指定する操作に比べて、ゲーム性の高い面白みのある操作とすることができ、ゲームをより興趣性のあるものにすることができる。
【0029】
また、配置変更手段は、変更先のパズル要素の属性と変更元のパズル要素の属性とを入れ替えることによってパズル要素の配置パターンを変更してもよい(図3,図4)。
【0030】
上記によれば、プレイヤの操作によって変更先のパズル要素の属性と変更元のパズル要素の属性とが入れ替えられるので、パズル要素の属性の変更が所定領域内の2箇所で同時に発生することとなる。この場合、プレイヤは、うまく操作を行えば、1回の操作で2つのパズル要素の両方の属性を所望の属性へと変更することができる一方、失敗すれば、一方のパズル要素の属性を望まない属性へと変更してしまうこともあり得る。このように、上記によれば、プレイヤの操作に戦略性を持たせることが可能となり、その結果、ゲームの興趣性をより向上することができる。
【0031】
また、配置変更手段は、プレイヤにより指定された方向へ1以上のパズル要素を移動することによってパズル要素の配置パターンを変更してもよい。
【0032】
上記によれば、プレイヤは、方向を指定することによってパズル要素を移動させ、配置パターンを容易に変更することができる。
【0033】
また、ゲームプログラムは、所定領域内におけるパズル要素を指定するプレイヤ操作(指定操作)を示すデータを入力装置から取得する指定受付手段(S2)としてコンピュータをさらに機能させてもよい。このとき、環状パズル要素特定手段は、指定受付手段によってパズル要素を指定するプレイヤ操作を示すデータが取得されたことに応じて、指定されたパズル要素を含む環状パズル要素群を特定する(S7)。
【0034】
上記によれば、すでに消去条件を満たす環状パズル要素群が存在する場合であっても、そのままでは当該環状パズル要素群は消去されず、当該環状パズル要素群に含まれるパズル要素をプレイヤが指定することによって初めて環状パズル要素群を消去することができる。すなわち、消去条件を満たす環状パズル要素群をフィールドから見つけて指定するという、従来のパズルゲームにはない楽しみ方でプレイヤにゲームをプレイさせることができる。
【0035】
また、パズル要素消去手段は、環状パズル要素特定手段によって複数の特定環状パズル要素群が特定された場合、当該複数の特定環状パズル要素群によりそれぞれ決まる位置に配置されるパズル要素を消去ように、メモリに記憶される領域データを変更してもよい(S9)。
【0036】
上記によれば、プレイヤは、1回の操作で複数の特定環状パズル要素群に対応するパズル要素を消去することができる。
【0037】
また、ゲームプログラムは、所定領域内におけるパズル要素を指定するプレイヤ操作を示すデータを入力装置から取得する指定受付手段としてコンピュータをさらに機能させてもよい。このとき、環状パズル要素特定手段は、指定受付手段によってパズル要素を指定するプレイヤ操作を示すデータが取得されたことに応じて、指定されたパズル要素が当該環状パズル要素群の内側に位置する環状パズル要素群を特定環状パズル要素群として特定する。
【0038】
上記によれば、すでに消去条件を満たす環状パズル要素群が存在する場合であっても、そのままでは当該環状パズル要素群は消去されず、当該環状パズル要素群によって囲まれるパズル要素をプレイヤが指定することによって初めてパズル要素を消去することができる。すなわち、消去条件を満たす環状パズル要素群をフィールドから見つけて指定するという、従来のパズルゲームにはない楽しみ方でプレイヤにゲームをプレイさせることができる。
【0039】
また、ゲームプログラムは、パズル要素消去手段によってパズル要素が消去された場合、消去された位置にパズル要素を補充するように、メモリに記憶される領域データを変更するパズル要素補充手段(S14)としてコンピュータをさらに機能させてもよい。
【0040】
上記によれば、消去されたパズル要素の位置に新たなパズル要素が補充されるので、消去前とは異なる新たな配置パターンでプレイヤにゲームを継続させることができ、ゲームの興趣性を向上することができる。
【0041】
また、ゲームプログラムは、パズル要素補充手段としてコンピュータをさらに機能させてもよい。パズル要素補充手段は、パズル要素消去手段によってパズル要素が消去された結果、所定方向の側で他のパズル要素と隣接しないパズル要素が生じた場合、所定領域の端部までまたは他のパズル要素に隣接するまでパズル要素を当該所定方向へ移動させた後で、パズル要素が配置されない領域にパズル要素を補充した配置パターンを示すように、メモリに記憶される領域データを変更する。
【0042】
上記によれば、パズル要素が消去された場合、配置パターンが変更された上でパズル要素が補充されるので、消去前とは異なる新たな配置パターンでプレイヤにゲームを継続させることができ、ゲームの興趣性を向上することができる。
【0043】
また、パズル要素補充手段は、1回の補充において少なくとも2種類のパズル要素を補充してもよい。
【0044】
上記によれば、補充されるパズル要素の配置パターンが単調になることを防止することができ、その結果、ゲームの興趣性を向上することができる。
【0045】
パズル要素消去手段は、消去すべきパズル要素群を決定してから所定時間経過後に当該パズル要素を消去するように、メモリに記憶される領域データを変更してもよい。このとき、パズル要素消去手段は、消去中のパズル要素群が消去される前に、当該消去中のパズル要素群の一部を含む他の環状パズル要素群が環状パズル要素特定手段によって特定環状パズル要素群として特定された場合、当該特定環状パズル要素群によって決まる位置に配置されるパズル要素をさらに消去するように、メモリに記憶される領域データを変更する(図12,図13)。
【0046】
上記によれば、プレイヤは、環状パズル要素群の消去中において、当該環状パズル要素群の一部を用いて別の環状パズル要素群を消去することができる。つまり、上記によれば、一部が重複する複数の環状パズル要素群を連続して消去するという、特殊な方法でパズル要素を消去することができる。これによれば、パズル要素の消去方法のバリエーションを増やすことにより、ゲームの興趣性を向上することができる。
【0047】
また、ゲームプログラムは、パズル要素群を消去することによるゲーム効果として、当該パズル要素群が消去中の他のパズル要素群の一部を含むか否かに応じて異なるゲーム効果を発生させるように、メモリに記憶されるゲーム効果を示すデータを変更する第1効果発生手段(S10,S12)としてコンピュータをさらに機能させてもよい。
【0048】
上記によれば、一部が重複する複数のパズル要素群を連続して消去することによって、通常とは異なるゲーム効果を発生させることができるので、ゲームの興趣性をより向上することができる。
【0049】
また、ゲームプログラムは、パズル要素消去手段によって消去されるパズル要素の数に応じて異なるゲーム効果を発生させるように、メモリに記憶されるゲーム効果を示すデータを変更する第2効果発生手段(S10,S12)としてコンピュータをさらに機能させてもよい。
【0050】
上記によれば、パズル要素を消去する数に応じて異なるゲーム効果が得られるので、より興趣性の高いパズルゲームを提供することができる。
【0051】
また、ゲームプログラムは、パズル要素が消去されてから次にパズル要素が消去されるまでに行われた所定のプレイヤ操作の回数に応じて異なるゲーム効果を発生させるように、メモリに記憶されるゲーム効果を示すデータを変更する第3効果発生手段(S10,S12)としてコンピュータをさらに機能させてもよい。
【0052】
上記によれば、パズル要素を消去するまでに要した操作回数によって異なるゲーム効果が得られることとなるので、より興趣性の高いパズルゲームを提供することができる。
【0053】
また、ゲームプログラムは、領域記憶手段(S10)と、第4効果発生手段(S10,S12)としてコンピュータをさらに機能させてもよい。領域記憶手段は、所定領域のうちで、所定のタイミング後においてパズル要素が消去されたことがある領域(消去履歴データ60)をゲーム装置のメモリ(メインメモリ32)に記憶する。第4効果発生手段は、メモリに記憶されている領域が所定の条件を満たした場合に所定のゲーム効果を発生させるように、メモリに記憶されるゲーム効果を示すデータを変更する。
【0054】
上記によれば、プレイヤには、それまでにパズル要素を消去したことがある領域を考慮しながらゲーム操作を行うことが要求されることとなり、ゲームの戦略性を向上することができる。その結果、より興趣性の高いパズルゲームを提供することができる。
【0055】
また、ゲーム装置は、画面上における任意の位置を指定可能な入力装置(タッチパネル13)を備えていてもよい。このとき、配置変更手段は、入力装置に対して行われたプレイヤの操作に応じてパズル要素の配置パターンを変更する。
【0056】
上記によれば、プレイヤは、画面上の位置を指定することでゲーム操作を行うことができるので、ゲーム操作がより容易になり、ゲームの操作性を向上することができる。特に、所定領域内のパズル要素を指定するゲーム操作を行う場合には上記入力装置が有効である。
【0057】
また、ゲームプログラムは、上記パズル要素消去手段に代えて、パズル要素変更手段として、コンピュータを機能させてもよい。パズル要素変更手段は、環状パズル要素群を示すデータをメモリから読み出し、少なくとも当該環状パズル要素群の属性を変更するように、メモリに記憶される領域データを変更する。
【0058】
上記によれば、パズル要素を消去する場合と同様、環状パズル要素群の属性を変更するための条件を適度に複雑にすることでゲームの戦略性を向上することができ、興趣性の高いパズルゲームを提供することができる。
【0059】
また、本発明は、上記ゲーム装置と同等の機能を有するゲーム装置の形態で提供されてもよい。なお、当該ゲーム装置においては、ゲームプログラムを実行するCPUによって上記各手段が実現されてもよいし、ゲーム装置が備える専用の回路によって上記各手段の一部または全部が実現されてもよい。
【発明の効果】
【0060】
以上のように、本実施形態では、パズルゲームにおけるパズル要素を消去するための消去条件として、「単一種類のパズル要素を環状に隣接配置する」という条件を採用することによって、消去条件が適度に難しくすることができる。その結果、ゲームの戦略性を向上することができ、興趣性の高いパズルゲームを提供することができる。
【図面の簡単な説明】
【0061】
【図1】本実施形態に係るゲームプログラムを実行するゲーム装置の外観図
【図2】ゲーム装置の内部構成の一例を示すブロック図
【図3】本実施形態におけるゲーム画像の一例を示す図
【図4】図3に示すゲーム画像からピースの配置パターンが変更されたゲーム画像を示す図
【図5】図4に示す状態からピースが消去される様子を示す図
【図6】指定操作を行う様子を示す図
【図7】ゲーム装置のメインメモリに記憶されるデータを示す図
【図8】ゲーム装置において実行されるゲーム処理の流れを示すメインフローチャート
【図9】本実施形態におけるピースの配置パターンの例を示す図
【図10】図8に示す消去判定処理(ステップS7)の流れを示すフローチャート
【図11】消去条件を満たさない場合の配置パターンを含むゲーム画像の例を示す図
【図12】第1の加算条件が満たされる直前のゲーム画像を示す図
【図13】第1の加算条件が満たされた場合のゲーム画像を示す図
【図14】第2の加算条件が満たされる直前のゲーム画像を示す図
【図15】第2の加算条件が満たされた場合のゲーム画像を示す図
【発明を実施するための形態】
【0062】
[ゲーム装置のハードウェア構成]
図面を参照して、本発明の一実施形態に係るゲームプログラムおよびゲーム装置について説明する。本発明は、表示装置にゲーム画像を表示することが可能な任意のコンピュータシステムにおいて本ゲームプログラムが実行されることによって実現することができるが、本実施形態では、ゲーム装置の一例として図1に示すゲーム装置1を用いる場合について説明する。
【0063】
図1は、本実施形態に係るゲームプログラムを実行するゲーム装置1の外観図である。ここでは、ゲーム装置1の一例として、携帯ゲーム装置を示す。なお、ゲーム装置1は、カメラを内蔵しており、当該カメラによって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりする撮像装置としても機能する。
【0064】
図1において、ゲーム装置1は折り畳み型の携帯ゲーム装置であり、開いた状態(開状態)のゲーム装置1を示している。ゲーム装置1は、開いた状態においてもユーザが両手または片手で把持することができるようなサイズで構成される。
【0065】
ゲーム装置1は、下側ハウジング11および上側ハウジング21を有する。下側ハウジング11と上側ハウジング21とは、開閉可能(折り畳み可能)に連結されている。図1の例では、下側ハウジング11および上側ハウジング21は、それぞれ横長の長方形の板状に形成され、互いの長辺部分で回転可能に連結されている。通常、ユーザは、開状態でゲーム装置1を使用する。また、ユーザは、ゲーム装置1を使用しない場合には閉状態としてゲーム装置1を保管する。また、図1に示した例では、ゲーム装置1は、上記閉状態および開状態のみでなく、下側ハウジング11と上側ハウジング21とのなす角度が閉状態と開状態との間の任意の角度において、連結部分に発生する摩擦力などによってその開閉角度を維持することができる。つまり、上側ハウジング21を下側ハウジング11に対して任意の角度で静止させることができる。
【0066】
下側ハウジング11には、下側LCD(Liquid Crystal Display:液晶表示装置)12が設けられる。下側LCD12は横長形状であり、長辺方向が下側ハウジング11の長辺方向に一致するように配置される。なお、本実施形態では、ゲーム装置1に内蔵されている表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置等、他の任意の表示装置を利用してもよい。また、ゲーム装置1は、任意の解像度の表示装置を利用することができる。なお、下側LCD12には、内側カメラ23または外側カメラ25で撮像されている画像がリアルタイムに表示される。
【0067】
下側ハウジング11には、入力装置として、各操作ボタン14A〜14Kおよびタッチパネル13が設けられる。図1に示されるように、各操作ボタン14A〜14Kのうち、方向入力ボタン14A、操作ボタン14B、操作ボタン14C、操作ボタン14D、操作ボタン14E、電源ボタン14F、スタートボタン14G、およびセレクトボタン14Hは、上側ハウジング21と下側ハウジング11とを折り畳んだときに内側となる、下側ハウジング11の内側主面上に設けられる。図1に示す例では、方向入力ボタン14Aおよび電源ボタン14Fは、下側ハウジング11の内側主面の中央付近に設けられる下側LCD12に対して、左右一方側(図1では左側)の当該主面上に設けられる。また、操作ボタン14B〜14E、スタートボタン14G、およびセレクトボタン14Hは、下側LCD12に対して左右他方側(図1では右側)となる下側ハウジング11の内側主面上に設けられる。方向入力ボタン14A、操作ボタン14B〜14E、スタートボタン14G、およびセレクトボタン14Hは、ゲーム装置1に対する各種操作を行うために用いられる。方向入力ボタン14Aは、例えば選択操作等に用いられる。各操作ボタン14B〜14Eは、例えば決定操作やキャンセル操作等に用いられる。電源ボタン14Fは、ゲーム装置1の電源をオン/オフするために用いられる。
【0068】
なお、図1においては、操作ボタン14I〜14Kの図示を省略している。例えば、Lボタン14Iは、下側ハウジング11の上側面の左端部に設けられ、Rボタン14Jは、下側ハウジング11の上側面の右端部に設けられる。Lボタン14IおよびRボタン14Jは、撮影機能を有するゲーム装置1に対して、例えば撮影指示操作(シャッター操作)を行うために用いられる。さらに、音量ボタン14Kは、下側ハウジング11の左側面に設けられる。音量ボタン14Kは、ゲーム装置1が備えるスピーカの音量を調整するために用いられる。
【0069】
また、ゲーム装置1は、各操作ボタン14A〜14Kとは別の入力装置としてさらに、画面上における任意の位置を指定可能な入力装置であるタッチパネル13を備えている。タッチパネル13は、下側LCD12の画面上を覆うように装着されている。なお、本実施形態では、タッチパネル13は、例えば抵抗膜方式のタッチパネルが用いられる。ただし、タッチパネル13は、抵抗膜方式に限らず、任意の方式のタッチパネルを用いることができる。また、本実施形態では、タッチパネル13として、例えば下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル13の解像度と下側LCD12の解像度とが一致している必要はない。また、下側ハウジング11の右側面には、挿入口(図1では破線で示している)が設けられている。挿入口は、タッチパネル13に対する操作を行うために用いられるタッチペン27を収納することができる。なお、タッチパネル13に対する入力は、通常タッチペン27を用いて行われるが、タッチペン27に限らずユーザの指でタッチパネル13を操作することも可能である。
【0070】
また、下側ハウジング11の右側面には、メモリカード28を収納するための挿入口(図1では二点鎖線で示している)が設けられている。この挿入口の内側には、ゲーム装置1とメモリカード28とを電気的に接続するためのコネクタ(図示せず)が設けられる。メモリカード28は、例えばSD(Secure Digital)メモリカードであり、コネクタに着脱自在に装着される。メモリカード28は、例えば、ゲーム装置1によって撮像された画像を記憶(保存)したり、他の装置で生成された画像をゲーム装置1に読み込んだりするために用いられる。
【0071】
さらに、下側ハウジング11の上側面には、メモリカード29を収納するための挿入口(図1では、一点鎖線で示している)が設けられている。この挿入口の内側にも、ゲーム装置1とメモリカード29とを電気的に接続するためのコネクタ(図示せず)が設けられる。メモリカード29は、ゲームプログラム等を記録した記録媒体であり、下側ハウジング11に設けられた挿入口に着脱自在に装着される。
【0072】
下側ハウジング11と上側ハウジング21との連結部の左側部分には、3つのLED15A〜15Cが取り付けられる。ここで、ゲーム装置1は、他の機器との間で無線通信を行うことが可能であり、第1LED15Aは、ゲーム装置1の電源がオンである場合に点灯する。第2LED15Bは、ゲーム装置1の充電中に点灯する。第3LED15Cは、無線通信が確立している場合に点灯する。したがって、3つのLED15A〜15Cによって、ゲーム装置1の電源のオン/オフ状況、充電状況、および、通信確立状況をユーザに通知することができる。
【0073】
一方、上側ハウジング21には、上側LCD22が設けられる。上側LCD22は横長形状であり、長辺方向が上側ハウジング21の長辺方向に一致するように配置される。なお、下側LCD12と同様、上側LCD22に代えて、他の任意の方式および任意の解像度の表示装置を利用してもよい。なお、上側LCD22上を覆うように、タッチパネルを設けてもかまわない。上側LCD22には、例えば、各操作ボタン14A〜14Kやタッチパネル13の役割をユーザに教えるための操作説明画面が表示される。
【0074】
また、上側ハウジング21には、2つのカメラ(内側カメラ23および外側カメラ25)が設けられる。図1に示されるように、内側カメラ23は、上側ハウジング21の連結部付近の内側主面に取り付けられる。一方、外側カメラ25は、内側カメラ23が取り付けられる内側主面の反対側の面、すなわち、上側ハウジング21の外側主面(ゲーム装置1が閉状態となった場合に外側となる面であり、図1に示す上側ハウジング21の背面)に取り付けられる。なお、図1においては、外側カメラ25を破線で示している。これによって、内側カメラ23は、上側ハウジング21の内側主面が向く方向を撮像することが可能であり、外側カメラ25は、内側カメラ23の撮像方向の逆方向、すなわち、上側ハウジング21の外側主面が向く方向を撮像することが可能である。このように、本実施形態では、2つの内側カメラ23および外側カメラ25の撮像方向が互いに逆方向となるように設けられる。例えば、ユーザは、ゲーム装置1からユーザの方を見た景色を内側カメラ23で撮像することができるとともに、ゲーム装置1からユーザの反対側の方向を見た景色を外側カメラ25で撮像することができる。
【0075】
なお、上記連結部付近の内側主面には、音声入力装置としてマイク(図2に示すマイク43)が収納されている。そして、上記連結部付近の内側主面には、マイク43がゲーム装置1外部の音を検知できるように、マイクロフォン用孔16が形成される。マイク43を収納する位置およびマイクロフォン用孔16の位置は必ずしも上記連結部である必要はなく、例えば下側ハウジング11にマイク43を収納し、マイク43を収納位置に対応させて下側ハウジング11にマイクロフォン用孔16を設けるようにしてもよい。
【0076】
また、上側ハウジング21の外側主面には、第4LED26(図1では、破線で示す)が取り付けられる。第4LED26は、内側カメラ23または外側カメラ25によって撮影が行われた(シャッターボタンが押下された)時点で点灯する。また、内側カメラ23または外側カメラ25によって動画が撮影される間点灯する。第4LED26によって、ゲーム装置1による撮影が行われた(行われている)ことを撮影対象者や周囲に通知することができる。
【0077】
また、上側ハウジング21の内側主面の中央付近に設けられる上側LCD22に対して、左右両側の当該主面に音抜き孔24がそれぞれ形成される。音抜き孔24の奥の上側ハウジング21内にはスピーカが収納されている。音抜き孔24は、スピーカからの音をゲーム装置1の外部に放出するための孔である。
【0078】
以上に説明したように、上側ハウジング21には、画像を撮像するための構成である内側カメラ23および外側カメラ25と、主に操作説明画面を表示するための表示手段である上側LCD22とが設けられる。一方、下側ハウジング11には、ゲーム装置1に対する操作入力を行うための入力装置(タッチパネル13および各操作ボタン14A〜14K)と、撮像された画像を表示するための表示手段である下側LCD12とが設けられる。したがって、ゲーム装置1を使用する際には、ユーザは、下側LCD12に表示される撮像画像(カメラによって撮像された画像)を見ながら、下側ハウジング11を把持して入力装置に対する入力を行うことができる。
【0079】
次に、図2を参照して、ゲーム装置1の内部構成を説明する。図2は、ゲーム装置1の内部構成の一例を示すブロック図である。
【0080】
図2において、ゲーム装置1は、CPU31、メインメモリ32、メモリ制御回路33、保存用データメモリ34、プリセットデータ用メモリ35、メモリカードインターフェース(メモリカードI/F)36、メモリカードI/F37、無線通信モジュール38、ローカル通信モジュール39、リアルタイムクロック(RTC)40、電源回路41、インターフェース回路(I/F回路)42、第1GPU(Graphics Processing Unit)45、第2GPU46、第1VRAM(Video RAM)47、第2VRAM48、およびLCDコントローラ49等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて、下側ハウジング11(または上側ハウジング21でもよい)内に収納される。
【0081】
CPU31は、所定のプログラム(ここでは、本実施形態に係るゲームプログラム)を実行するための情報処理手段である。本実施形態では、ゲームプログラムがゲーム装置1内のメモリ(例えば保存用データメモリ34)やメモリカード28および/または29に記憶されており、CPU31は、当該ゲームプログラムを実行することによって、後述するゲーム処理を実行する。なお、CPU31によって実行されるプログラムは、ゲーム装置1内のメモリに予め記憶されていてもよいし、メモリカード28および/または29から取得されてもよいし、他の機器との通信によって他の機器から取得されてもよい。
【0082】
CPU31には、メインメモリ32、メモリ制御回路33、およびプリセットデータ用メモリ35が接続される。メモリ制御回路33には、保存用データメモリ34が接続される。メインメモリ32は、CPU31のワーク領域やバッファ領域として用いられる記憶手段である。すなわち、メインメモリ32は、上記ゲーム処理に用いられる各種データを記憶したり、外部(メモリカード28および29や他の機器等)から取得されるプログラムを記憶したりする。本実施形態では、メインメモリ32として、例えばPSRAM(Pseudo−SRAM)を用いる。保存用データメモリ34は、CPU31によって実行されるプログラムや内側カメラ23および外側カメラ25によって撮像された画像のデータ等を記憶するための記憶手段である。保存用データメモリ34は、不揮発性の記憶媒体によって構成されており、本実施形態では例えばNAND型フラッシュメモリで構成される。メモリ制御回路33は、CPU31の指示に従って、保存用データメモリ34に対するデータの読み出しおよび書き込みを制御する回路である。プリセットデータ用メモリ35は、ゲーム装置1において予め設定される各種パラメータ等のデータ(プリセットデータ)を記憶するための記憶手段である。プリセットデータ用メモリ35としては、SPI(Serial Peripheral Interface)バスによってCPU31と接続されるフラッシュメモリを用いることができる。
【0083】
メモリカードI/F36および37は、それぞれCPU31に接続される。メモリカードI/F36は、コネクタに装着されたメモリカード28に対するデータの読み出しおよび書き込みを、CPU31の指示に応じて行う。また、メモリカードI/F37は、コネクタに装着されたメモリカード29に対するデータの読み出しおよび書き込みを、CPU31の指示に応じて行う。本実施形態では、内側カメラ23および外側カメラ25によって撮像された画像データや他の装置から受信された画像データがメモリカード28に書き込まれたり、メモリカード28に記憶された画像データがメモリカード28から読み出されて保存用データメモリ34に記憶されたり、読み出された画像データがメモリカード28から読み出されて他の装置へ送信されたりする。また、メモリカード29に記憶された各種プログラムが、CPU31によって読み出されて実行されたりする。
【0084】
なお、本発明のゲームプログラムは、メモリカード29等の外部記憶媒体を通じてコンピュータシステムに供給されるだけでなく、有線または無線の通信回線を通じてコンピュータシステムに供給されてもよい。また、ゲームプログラムは、コンピュータシステム内部の不揮発性記憶装置に予め記録されていてもよい。なお、ゲームプログラムを記憶する情報記憶媒体としては、上記不揮発性記憶装置に限らず、CD−ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体でもよい。
【0085】
無線通信モジュール38は、例えばIEEE802.11.b/gの規格に準拠した方式により、無線LANに接続する機能を有する。また、ローカル通信モジュール39は、所定の通信方式により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール38およびローカル通信モジュール39は、CPU31に接続される。CPU31は、無線通信モジュール38を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール39を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【0086】
また、CPU31には、RTC40および電源回路41が接続される。RTC40は、時間をカウントしてCPU31に出力する。例えば、CPU31は、RTC40によって計時された時間に基づいて、現在時刻(日付)等を計算することもできる。電源回路41は、ゲーム装置1が有する電源(典型的には電池であり、下側ハウジング11に収納される)から供給される電力を制御し、ゲーム装置1の各部品に電力を供給する。
【0087】
また、ゲーム装置1は、マイク43およびアンプ44を備えている。マイク43およびアンプ44は、それぞれI/F回路42に接続される。マイク43は、ゲーム装置1に向かって発声されたユーザの音声を検知して、当該音声を示す音声信号をI/F回路42に出力する。アンプ44は、I/F回路42から音声信号を増幅してスピーカ(図示せず)から出力させる。I/F回路42は、CPU31に接続される。
【0088】
また、タッチパネル13は、I/F回路42に接続される。I/F回路42は、マイク43およびアンプ44(スピーカ)の制御を行う音声制御回路と、タッチパネル13の制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル13からの信号に基づいて所定の形式のタッチ位置データを生成してCPU31に出力する。例えば、タッチ位置データは、タッチパネル13の入力面に対して入力が行われた位置の座標を示すデータである。なお、タッチパネル制御回路は、タッチパネル13からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。CPU31は、I/F回路42を介してタッチ位置データを取得することにより、タッチパネル13に対して入力が行われた位置を知ることができる。
【0089】
操作ボタン14は、上記各操作ボタン14A〜14Kから構成され、CPU31に接続される。操作ボタン14からCPU31へは、各操作ボタン14A〜14Kに対する入力状況(押下されたか否か)を示す操作データが出力される。CPU31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に応じた処理を実行する。
【0090】
内側カメラ23および外側カメラ25は、それぞれCPU31に接続される。内側カメラ23および外側カメラ25は、CPU31の指示に応じて画像を撮像し、撮像した画像データをCPU31に出力する。本実施形態では、CPU31は、内側カメラ23および外側カメラ25のいずれか一方に対して撮像指示を行い、撮像指示を受けたカメラが画像を撮像して画像データをCPU31に送る。
【0091】
第1GPU45には第1VRAM47が接続され、第2GPU46には第2VRAM48が接続される。第1GPU45は、CPU31からの指示に応じて、メインメモリ32に記憶されている表示画像を生成するためのデータに基づいて第1の表示画像を生成し、第1VRAM47に描画する。第2GPU46は、第1GPU45と同様に、CPU31からの指示に応じて第2の表示画像を生成し、第2VRAM48に描画する。第1VRAM47および第2VRAM48は、LCDコントローラ49に接続されている。
【0092】
LCDコントローラ49は、レジスタ491を含む。レジスタ491は、CPU31からの指示に応じて0または1の値を記憶する。LCDコントローラ49は、レジスタ491の値が0の場合は、第1VRAM47に描画された第1の表示画像を下側LCD12に出力し、第2VRAM48に描画された第2の表示画像を上側LCD22に出力する。また、レジスタ491の値が1の場合は、第1VRAM47に描画された第1の表示画像を上側LCD22に出力し、第2VRAM48に描画された第2の表示画像を下側LCD12に出力する。例えば、CPU31は、内側カメラ23および外側カメラ25のいずれかから取得した画像を下側LCD12に表示させ、所定の処理によって生成した操作説明画面を上側LCD22に表示させることも可能である。
【0093】
[ゲーム処理の概要]
次に、図3から図15を参照して、本実施形態に係るゲームプログラムによって実行されるゲーム処理の概要について説明する。本ゲーム処理は、表示装置の画面内における所定領域内に表示されるパズル要素を消去して遊ぶパズルゲームのためのゲーム処理である。
【0094】
図3は、本実施形態におけるゲーム画像の一例を示す図である。なお、図3に示すゲーム画像では、説明のためにいくつかのピースに“A”〜“P”の記号を付しているが、実際に表示されるゲーム画像においてはこれらの記号は表示されない(図4以降に示すゲーム画像についても同様)。
【0095】
図3に示すように、ゲーム装置1は、下側LCD12の画面内における所定領域(フィールド)内に、各々に属性が設定された複数のパズル要素(ピース)を配置する(後述するステップS1)。本実施形態では、白または黒の四角形のピースが格子状に複数個(図3では54個)配置される。本実施形態では、四角形のピースをパズル要素として用いるが、他の実施形態では、他の形状や、人や動物等を模したキャラクタをパズル要素として用いてもよい。ここで、「パズル要素」とは、一般的なパズルゲームにおいてブロックやピースと呼ばれるものであり、プレイヤの操作によって配置パターンが変更される対象となる図形(図柄)の1つ1つを指す。また、本実施形態では、各ピースは四角形の格子状に配置されているが、六角形の格子状に配置されていてもよい。
【0096】
また、本実施形態では、白のピースと黒(図では黒色を斜線で表す)のピースという、属性(色)が異なる2種類のピースが表示される。「(ピースの)属性」とは、ピースの種類を視覚的に区別するためにピースに設定されるものであり、例えばピースの色、形状、または模様(図柄)等である。本実施形態ではピースの属性として色を設定し、ピースの種類毎に色を異ならせるようにしているが、他の実施形態においては形状や模様をピースの種類毎に異ならせるようにしてもよい。また、本実施形態では、ピースの種類は2種類であるとするが、3種類以上であってもよい。
【0097】
本実施形態では、プレイヤは、変更操作(および、後述する指定操作)を行うことが可能である。変更操作は、フィールド内におけるパズル要素の配置パターンを変更する操作である。本実施形態では、変更操作は、タッチパネル13を用いて変更元のピースと変更先のピースとを指定することによって行われる。すなわち、プレイヤは、図3に示すように、変更元のピース(図3ではピースP)上の位置を始点とし、変更先のピース(図3ではピースG)上の位置を終点とする軌跡をタッチパネル13の入力面上で描く操作を変更操作として行う。
【0098】
変更操作が行われた場合、ゲーム装置1は、当該変更操作に応じて、フィールド内におけるピースの配置パターンを変更する(後述するステップS4)。図4は、図3に示すゲーム画像からピースの配置パターンが変更されたゲーム画像を示す図である。図3に示す配置パターンにおいて変更操作が行われた場合、図4に示すように、変更元のピースPの属性と、変更先のピースGの属性とが入れ替えられる。その結果、ピースPが黒になるとともにピースGが白になる。このように、本実施形態では、変更操作によって、変更元のピースの属性と変更先のピースの属性とが入れ替えられる。プレイヤは、上記変更操作を必要に応じて行い、各ピースを所望の配置パターンとする。
【0099】
また、変更操作が行われたことに応じて、ゲーム装置1は、消去条件を満たすピース群を特定する(後述するステップS7)。「消去条件」とは、ピースを消去するための条件である。本実施形態では、消去条件には、「同一種類の属性が設定されており、かつ、閉じた環状に隣接配置されていること」という条件が少なくとも含まれる。つまり、本実施形態では、一方の色のピースで「枠」を作って当該枠で他方の色のピースを囲んだ場合、消去条件が満たされるのである。例えば、図4に示すピースの配置パターンでは、ピースA−Lからなるピース群が、上記消去条件を満たしている(図4に示す一点鎖線参照)。したがって、ゲーム装置1は、ピースA−Lからなるピース群を、「消去条件を満たすピース群」として特定する。以下では、環状に配置されることによって消去条件を満たすピース群を「環状ピース群」と呼び、さらに、環状ピース群のうちでゲーム装置1によって特定されたピース群を「特定環状ピース群」と呼ぶことがある。なお、詳細は後述するが、消去条件は、上記条件を少なくとも含んでいればよく、さらなる条件が追加されていてもよい。
【0100】
ここで、本実施形態のように四角形の格子状にピースが配置されている場合において、「(2つの)ピースが隣接している」とは、2つのピースが格子の縦または横方向に並んでいる状態を指す場合と、2つのピースが格子の縦、横、または斜め方向に並んでいる状態を指す場合とが考えられる。本明細書では、方向を特に記載しない場合には、「(2つの)ピースが隣接している」とは、2つのピースが格子の縦または横方向に並んでいる状態を指すものとする。
【0101】
図4において、環状ピース群が特定されると、ゲーム装置1は、当該環状ピース群と、当該環状ピース群によって囲まれる(当該環状ピース群の内側に配置される)ピースとを消去する。図5は、図4に示す状態からピースが消去される様子を示す図である。図4においてピースA−Lが特定環状ピース群として特定された場合、ゲーム装置1は、図5に示すように、当該特定環状ピース群(ピースA−L)と、当該特定環状ピース群の内側に配置されるピース(ピースM,N,O)とを消去する。なお、詳細は後述するが、本実施形態では、ピースは一定時間(数秒程度)をかけて次第に消去されていく。
【0102】
本実施形態では、上記のようにピースが消去されたことによって得点が加算される。また、ピースが消去されると、ピースが消去された領域に新たなピースが補充される(後述するステップS14)。本パズルゲームでは、プレイヤは、ゲーム開始から所定の制限時間内に、できるだけ多くのピースを消すことを目的として、変更操作(および後述する指定操作)を行い、ゲーム終了までに得られた得点を競って遊ぶ。
【0103】
以上のように、本実施形態では、パズルゲームにおけるパズル要素(ピース)を消去するための消去条件として、「単一種類のピースを環状につなげる(枠を作る)」という条件を採用する。つまり、本パズルゲームでは、単一種類のピースを環状につなげるように配置することによって、ピースが消去されるのである。ここで、従来のような「単一種類のピースを複数個つなげる」という消去条件では、条件が簡単すぎるためにゲーム自体が単純で戦略性の低いものになってしまうおそれがあった。これに対して、本実施形態によれば、上記の消去条件を採用することによって消去条件が適度に難しくなり、ゲームの戦略性を向上することができ、興趣性の高いパズルゲームを提供することができる。
【0104】
また、本実施形態においては、プレイヤは、上記変更操作の他に指定操作を行うことが可能である。指定操作は、フィールドに配置される1つのピースを指定する操作である。ここで、本実施形態においては、例えば初期配置において消去条件を満たす環状ピース群がフィールド内に含まれる場合や、ピースの補充によって消去条件を満たす環状ピース群が形成される場合がある。詳細は後述するが、本実施形態では、このような場合であってもそのままでは(プレイヤの操作なしでは)上記環状ピース群は消去されない。そのため、本実施形態では、消去条件を満たす環状ピース群が消去されずにフィールドに配置されていることがある。指定操作は、上記消去条件を満たす環状ピース群が存在する場合にその環状ピース群を消去するための操作である。
【0105】
図6は、指定操作を行う様子を示す図である。図6においては、消去条件を満たしているピースA−Hが消去されずに配置されているものとする。このとき、プレイヤはピースA−Hのいずれか(図6ではピースF)を指定する操作を行う。具体的には、図6に示すように、プレイヤはピースをタッチする操作を行う。
【0106】
指定操作が行われたことに応じて、ゲーム装置1は、上記変更操作が行われた場合と同様、消去条件を満たすピース群を特定する(後述するステップS7)。その結果、例えば図6に示すピースA−Hのように、プレイヤによって指定されたピースを含み、かつ、消去条件を満たす環状ピース群が特定環状ピース群として特定される。そして、変更操作が行われた場合と同様、特定環状ピース群(図6では、ピースA−H)と、当該特定環状ピース群の内側に配置されるピース(図6では、ピースI)とが消去される。
【0107】
以上のように、本実施形態においては、すでに消去条件を満たすように配置されている環状ピース群は、そのままでは消去されず、プレイヤが当該環状ピース群に対して指定操作を行うことによって当該環状ピース群が消去される。ここで、本実施形態では、「単一種類のピースを環状につなげる」という、従来よりも複雑な消去条件を採用している。そのため、仮にフィールド内にすでに消去条件を満たす環状ピース群が存在していたとしても、プレイヤがその環状ピース群を見つけることは容易ではないと考えられる。したがって、消去条件を満たす環状ピース群を見つけることにもゲーム性があり、プレイヤは当該環状ピース群を見つけることに楽しみを見い出すことができる。つまり、従来よりも複雑な消去条件を採用する本実施形態においては、「消去条件を満たすピース群を(変更操作によって)作成する」楽しみに加えて、「消去条件を満たすピース群を見つける(指定操作によって指定する)」楽しみがあり、プレイヤは、従来のパズルゲームにはない楽しみ方でゲームをプレイすることができる。
【0108】
[ゲーム処理の詳細]
以下、図7〜図15を参照して、本実施形態に係るゲームプログラムによって実行されるゲーム処理の詳細について説明する。まず、ゲーム処理において用いられる各種データについて説明する。図7は、ゲーム装置1のメインメモリ32に記憶されるデータを示す図である。図7において、メインメモリ32には、本実施形態に係るゲームプログラム50およびゲーム処理用データ51が記憶される。
【0109】
ゲームプログラム50は、後述するゲーム処理(図8)をゲーム装置1のCPU31に実行させるためのプログラムである。ゲームプログラム50は、メモリカード29から適宜のタイミングで読み込まれることによってメインメモリ32に記憶されてもよいし、ゲーム装置1の外部との通信によって取得されることによってメインメモリ32に記憶されてもよい。
【0110】
ゲーム処理用データ51は、後述するゲーム処理(図8)において用いられるデータである。ゲーム処理用データ51は、タッチ入力データ52、フィールドデータ55、操作履歴データ56、基準ピースデータ57、内側ピースデータ58、外側ピースデータ59、消去履歴データ60、および得点データ61を含む。なお、ゲーム処理用データ51は、図7に示すデータの他、ゲームに登場する各種オブジェクト(ピース等)の画像データ等、ゲーム処理に必要なデータを含む。
【0111】
タッチ入力データ52は、上記タッチ位置データとしてタッチパネル13から取得されるデータである。本実施形態では、タッチ入力データ52は、始点データ53および終点データ54を含む。始点データ53は、タッチパネル13から連続して取得されるタッチ位置データのうちで、最初に取得されたデータである。終点データ54は、タッチパネル13から連続して取得されるタッチ位置データのうちで、最後に取得されたデータである。つまり、プレイヤがタッチパネル13に対して軌跡を描く入力を行った場合、当該軌跡の始点の位置を示すデータが始点データ53としてメインメモリ32に記憶され、当該軌跡の終点(軌跡の入力中であれば、現在のタッチ位置)を示すデータが終点データ54としてメインメモリ32に記憶される。タッチ入力データ52は、上記変更操作および指定操作が行われたか否かを判断するために用いられる。
【0112】
フィールドデータ55は、フィールドにおけるピースの配置状態を示す。具体的には、フィールドデータ55は、フィールドに配置されるピース1つ1つについて、ピースが配置される位置を示すピース位置データと、ピースの属性(色)を示すピース属性データと、ピースの状態を示すピース状態データとを含んでいる。なお、ピース状態データは、具体的には、ピースが消去中であるか否か、および、消去中である場合にはピースが完全に消去されるまでの残り時間を示す。ゲーム装置1は、上記フィールドデータ55に基づいてピースの配置パターンを判断する。
【0113】
操作履歴データ56は、プレイヤによる変更操作の履歴を示す。本実施形態においては、操作履歴データ56は、最後にピースが消去されてから変更操作が行われた回数を示す。詳細は後述するが、本パズルゲームでは、ピースを消去する際に一定の条件(加算条件)を満たす場合、通常の消去による得点に加えてさらに得点が加算される(後述するステップS12)。操作履歴データ56は、上記加算条件を満たしたか否かを判定するために用いられる。
【0114】
基準ピースデータ57、内側ピースデータ58、および外側ピースデータ59は、後述する消去判定処理(ステップS7)において上記環状ピース群を特定するために用いられる。基準ピースデータ57は、消去判定処理において環状ピース群を探索する上で基準となるピース(「基準ピース」と呼ぶ)を示す。詳細は後述するが、基準ピースは、変更操作または指定操作の対象となったピースである。
【0115】
内側ピースデータ58は、1以上のピースからなる内側ピース群を示す。ここで、内側ピース群とは、環状ピース群の内側に配置される1以上のピース群となる可能性があるピース群である。具体的には、内側ピース群は、基準ピースの周囲に存在し、基準ピースとは異なる種類のピースで構成され、互いに隣接配置される1以上のピース群である。また、外側ピースデータ59は、上記内側ピース群の外側のピース群(「外側ピース群」と呼ぶ)を示す。
【0116】
消去履歴データ60は、ピースを消去した履歴を示すデータである。具体的には、消去履歴データ60は、フィールドのうちで、ゲーム開始から現在までの間にピースを消去したことがある領域(「消去済み領域」と呼ぶ)を示す。詳細は後述するが、消去履歴データ60は、上記加算条件を満たしたか否かを判定するために用いられる。
【0117】
得点データ61は、プレイヤが得た得点を示す。本実施形態では、ピースを消去したことに応じて得点が加算される他、上記加算条件が満たされた場合にも得点が加算される。
【0118】
次に、ゲーム装置1において行われるゲーム処理の詳細を、図8〜図15を用いて説明する。図8は、ゲーム装置1において実行されるゲーム処理の流れを示すメインフローチャートである。電源ボタン14Fが押下されることによってゲーム装置1の電源が投入されると、ゲーム装置1のCPU31は、メインメモリ32等の初期化を行った後、図8に示すゲーム処理を行うためのゲームプログラム50の実行を開始する。
【0119】
まずステップS1において、CPU31は、白または黒の属性が設定された複数のピースをフィールド内に配置する。また、フィールド内に各ピースが配置されたゲーム画像を下側LCD12に表示させる。本実施形態では、図3に示したように、四角形の格子状に、縦6個×横9個の合計54個のピースが配置される。なお、他の実施形態においては、配置されるピースの個数はいくつでもよいし、六角形の格子状にピースが配置されてもよい。また、ステップS1における初期配置は、予め決められた配置でもよいし、ランダムに決められてもよい。上記ステップS1においては、上記初期配置における各ピースの位置および属性を示すフィールドデータ55がメインメモリ32に記憶される。なお、この時点では、フィールドデータ55に含まれる各ピースのピース状態データは、消去中でないことを示す。また、操作履歴データ56は“0”を示し、消去履歴データ60は消去済み領域がないことを示し、得点データ61は“0”を示す。ステップS1の次にステップS2の処理が実行される。以下、ステップS2〜S16の処理ループは、所定時間(例えば1/60秒)に1回の割合で実行される。
【0120】
ステップS2において、CPU31は、プレイヤによるゲーム操作の入力を受け付ける。具体的には、CPU31はタッチパネル13からタッチ位置データを取得し、タッチ入力データ52としてメインメモリ32に記憶する。なお、タッチパネル13に対する入力がないことを示すデータがタッチパネル13から取得される場合、当該データはメインメモリ32に記憶されない。ステップS2で取得されたタッチ位置データが最初に取得されたデータである場合(前回のステップS2〜S16の処理ループにおいてタッチ位置データが取得されていなかった場合)、当該タッチ位置データは始点データ53としてメインメモリ32に記憶される。一方、ステップS2で取得されたタッチ位置データが最初に取得されたデータでない場合(前回のステップS2〜S16の処理ループにおいてタッチ位置データが取得されていた場合)、当該タッチ位置データは終点データ54としてメインメモリ32に記憶される。以上によって、プレイヤがタッチパネル13に対して軌跡を描く入力を行った場合、当該軌跡の始点の位置と終点の位置とがタッチ入力データ52としてメインメモリ32に記憶されることとなる。ステップS2の次にステップS3の処理が実行される。
【0121】
上記ステップS2のように、本実施形態においては、ゲーム装置1は、タッチパネル13を用いて変更操作および指定操作をプレイヤに行わせることにより、プレイヤが変更操作および指定操作を直感的に行うことを可能にしている。なお、他の実施形態においては、ゲーム装置1は、変更操作および指定操作を操作ボタンを用いてプレイヤに行わせるようにしてもよい。例えば、方向入力ボタン14Aで画面上に表示されるカーソルを所望のピースの位置に移動させ、操作ボタン14Bで当該ピースを指定することにより、変更操作および指定操作をプレイヤに行わせるようにしてもよい。また、ゲーム装置1は、タッチパネル13をゲーム操作に用いない場合には、フィールドのゲーム画像を上側LCD22に表示してもよい。
【0122】
ステップS3においては、CPU31は、プレイヤによって変更操作が行われたか否かが判定される。上述したように、本実施形態における変更操作は、タッチパネル13の入力面(下側LCD12の画面)上において、変更元のピース上の位置を始点とし、変更先のピース上の位置を終点とする軌跡を描く操作である(図3参照)。変更操作が行われたか否かの判定は、メインメモリ32に記憶されているタッチ入力データ52に基づいて行われる。具体的には、タッチパネル13に対するプレイヤの入力が終了した直後であり、かつ、始点データ53により示される位置と終点データ54により示される位置とが異なるピースに対応する場合、変更操作が行われたと判定される。一方、タッチパネル13に対するプレイヤの入力が終了した直後ではないか、あるいは、始点データ53により示される位置と終点データ54により示される位置とが同じピースに対応する場合、変更操作が行われていないと判定される。なお、「タッチパネル13に対するプレイヤの入力が終了した直後である」場合とは、前回の処理ループ(ステップS2〜S16)におけるステップS2においてタッチ位置データが取得され、今回の処理ループにおけるステップS2においてタッチ位置データが取得されない場合である。
【0123】
ステップS3の判定結果が肯定である場合、ステップS4の処理が実行される。一方、ステップS3の判定結果が否定である場合、後述するステップS6の処理が実行される。
【0124】
ステップS4において、CPU31は、上記変更操作に従ってピースの配置パターンを変更する。具体的には、CPU31は、メインメモリ32に記憶されているフィールドデータ55を読み出し、変更元のピースの属性(色)と変更先のピースの属性(色)とを入れ替えるようにフィールドデータ55の内容を変更(更新)する。これによって、後述する表示処理(ステップS15)では、変更元のピースの色と変更先のピースの色とが入れ替わって表示される。以上のステップS4の次にステップS5の処理が実行される。
【0125】
以上のように、本実施形態においては、ゲーム装置1は、フィールド内のピースのうちで、変更元のピースと変更先のピースとを指定するプレイヤ操作(変更操作)を受け付け(ステップS2,S3)、変更先のピースの属性と変更元のピースの属性とを入れ替えることによってピースの配置パターンを変更した(ステップS4)。ここで、配置パターンの変更は、プレイヤによる操作に応じてピースの配置パターンが結果的に変更されればどのような方法で行われてもよい。例えば、他の実施形態においては、ゲーム装置1は、変更先のピースの属性を、変更元のピースの属性へと変更することによってピースの配置パターンを変更する(変更元のピースの属性は変更されない)ようにしてもよい。また、変更操作は、変更元と変更先との2つのピースを指定する操作に限らず、変更する対象となるピースのみを指定する操作であってもよい。例えば、ゲーム装置1は、ピースがタッチされたことに応じて所定の順番で属性が変化するように、当該ピースの属性を変更するようにしてもよい。
【0126】
また、配置パターンの変更は、ピースの属性を変更することによって行われてもよいし、ピースを移動させる(ピースの位置を変更する)ことによって行われてもよい。例えば、他の実施形態においては、CPU31は、変更先のピースの位置と変更元のピースの位置とを入れ替えることによって配置パターンを変更してもよい。
【0127】
ステップS5において、CPU31は操作履歴を更新する。すなわち、メインメモリ32に記憶されている操作履歴データ56の内容を更新する。上述のように、操作履歴データ56は、最後にピースが消去されてから変更操作が行われた回数を示す。したがって、操作履歴データ56の内容は、更新前の値(回数)に1を加算した値へと変更される。ステップS5の次に、後述するステップS7の処理が実行される。
【0128】
一方、ステップS6において、CPU31は、プレイヤによって指定操作が行われたか否かが判定される。本実施形態における指定操作は、フィールド上の1つのピースを指定する操作である(図6参照)。より具体的には、指定操作は、タッチパネル13の入力面上において、指定すべきピース内の位置をタッチし、同じピース内の位置でタッチ入力を終了する操作である。指定操作が行われたか否かの判定は、メインメモリ32に記憶されているタッチ入力データ52に基づいて行われる。具体的には、タッチパネル13に対するプレイヤの入力が終了した直後であり、かつ、始点データ53により示される位置と終点データ54により示される位置とが同じピースに対応する場合、当該ピースに対して指定操作が行われたと判定される。一方、タッチパネル13に対するプレイヤの入力が終了した直後ではないか、あるいは、始点データ53により示される位置と終点データ54により示される位置とが異なるピースに対応する場合、指定操作が行われていないと判定される。
【0129】
上記ステップS6の判定結果が肯定である場合、ステップS7の処理が実行される。一方、ステップS6の判定結果が否定である場合、後述するステップS13の処理が実行される。
【0130】
上記ステップS3およびS6のように、本実施形態では、変更操作が行われた場合(ステップS3でYes)、または、指定操作が行われた場合(ステップS6でYes)、後述するステップS7で消去判定処理が実行され、後述するステップS9で特定環状ピース群が消去される。つまり、本実施形態では、プレイヤによる変更操作または指定操作が行わなければ、ピースが消去されることはない。
【0131】
ステップS7において、CPU31は消去判定処理を行う。消去判定処理は、所定のピース群について消去条件を満たすか否かを判定し、フィールド内の各ピースのうちで消去条件を満たす環状ピース群を特定する処理である。以下、消去判定処理について説明する。
【0132】
まず、本実施形態における消去判定処理に用いられる消去条件について説明する。上述したように、消去条件は、「同一種類の属性が設定されており、かつ、閉じた環状に隣接配置されていること」という条件を少なくとも含んでいる。この条件に加えて、本実施形態における消去条件には以下の追加条件が含まれる。
(第1の追加条件):環状ピース群の内側に配置される1以上のピース(内側ピース群)が、環状ピース群とは異なる単一種類のピースのみで構成されること
(第2の追加条件):環状ピース群が、内側ピース群をできるだけ少ない数で囲むこと
【0133】
以下、図9を参照して、上記追加条件を消去条件に含める理由を説明する。図9は、本実施形態におけるピースの配置パターンの例を示す図である。まず、上記第1の追加条件を消去条件に含める理由は、ゲームの難易度を適切にするため、および、環状ピース群の特定を容易にするためである。ここで、もし第1の追加条件を消去条件に含めないとすると、閉じた環状に隣接配置されているピース群は全て環状ピース群と判断されてしまうことになる。そのため、環状ピース群と判断されるピース群がフィールド内において多数存在し、また、プレイヤが環状ピース群を作成することが簡単になりすぎてしまう。例えば、プレイヤは、フィールドの最外周に配置される各ピースを単一の色となるように操作すれば、フィールド全部のピースを消去することができてしまうのである。これでは、消去条件が緩すぎるためにゲームの難易度が低くなり、ゲームの興趣性が損なわれてしまう。また、もし第1の追加条件を消去条件に含めないとすると、環状ピース群が2重に生じる場合がある。例えば図9においては、ピースA−Jからなるピース群と、ピースA−H,U,T,S,R,Q,O,N,M,L,Kからなるピース群とのように、環状ピース群が2重に生じてしまう(なお、図9においては他にも環状ピース群は存在する。)。このように環状ピース群が2重に存在する場合、2つの環状ピース群のうちいずれを消去すべきかの判断が必要となり、実際に消去すべき環状ピース群を特定する処理が困難になってしまう。仮に2つの環状ピース群のいずれかをプレイヤに選択させるとすれば、プレイヤの操作が煩雑になり、操作性の悪いゲームになってしまう。以上の理由で、本実施形態においては上記第1の追加条件を消去条件に含めている。
【0134】
また、上記第2の追加条件を消去条件に含める理由は、環状ピース群の特定を容易にするためである。例えば図9においては、白のピースp,qを囲む環状ピース群としては、ピースA〜Jからなるピース群と、ピースA−G,V,U,H−Jからなるピース群という2通りが存在する。したがって、もし第2の追加条件を消去条件に含めないとすると、上記第1の追加条件の場合と同様、2つの環状ピース群のうちいずれを消去すべきかの判断が必要となり、環状ピース群を特定する処理が困難になってしまう。
【0135】
以上のように、本実施形態においては、CPU31は、上記第1および第2の追加条件を含む消去条件を満たす環状ピース群を特定するべく、以下に説明するアルゴリズムによって消去判定処理を実行する。以下、図10を参照して、ステップS7の消去判定処理の詳細について説明する。なお、消去判定処理の各ステップにおいては、フィールドにおけるピースの配置を知る目的で、メインメモリ32に記憶されているフィールドデータ55が適宜読み出されて参照される。
【0136】
図10は、図8に示す消去判定処理(ステップS7)の流れを示すフローチャートである。消去判定処理においては、まずステップS21において、CPU31は、基準ピースを選出する。具体的には、変更操作において変更先のピースとして指定されたピース、または、指定操作において指定されたピースが基準ピースとして選出される。選出されたピースを示すデータが基準ピースデータ57としてメインメモリ32に記憶される。なお、他の実施形態においては、上記ステップS21において、変更操作において変更元のピースとして指定されたピース、または、上記変更先のピースおよび変更元のピースの両方を、基準ピースとしてもよい。ステップS21の次にステップS22の処理が実行される。
【0137】
なお、基準ピースは、消去判定処理において環状ピース群を探索する上で基準となるピースである。詳細は後述するが、消去判定処理においてCPU31は、消去条件を満たし、かつ、基準ピースを含む環状ピース群を特定する。したがって、本実施形態では、プレイヤ操作の対象となったピースを含む環状ピース群のみが実際に消去される。一方、消去条件を満たすように配置されていても、プレイヤ操作の対象となっていない環状ピース群は、消去されない。ただし、他の実施形態においては、消去判定処理において、プレイヤ操作の対象となっているか否かに関わらず、フィールド内の環状ピース群を全て特定するようにしてもよい。すなわち、ステップS21−S25の処理をフィールド内の各ピースについて実行するようにしてもよい。
【0138】
ステップS22において、CPU31は内側ピース群を選出する。上述のように、内側ピース群は、基準ピースの周囲に存在し、基準ピースとは異なる種類のピースで構成され、互いに隣接配置されるピース群である。
【0139】
具体的には、内側ピース群は次の手順で選出される。すなわち、まず、CPU31は、メインメモリ32に記憶されている基準ピースデータ57を読み出し、基準ピースデータ57により示される基準ピースを特定する。そして、フィールドデータ55を参照して、基準ピースのみを囲むピース群のうちで、基準ピースとは異なる属性のピースを選出する。ここで、「基準ピースのみを囲むピース群」とは、縦、横、および斜めの8方向において基準ピースの最近に位置するする8つのピースからなるピース群のことである。図9を例にとって説明すると、基準ピースがピースAである場合、上記8方向においてピースAの最近に位置するするピース(ピースAのみを囲むピース群)B,J,K,W,a,h,k,pのうちで、ピースAとは異なる属性のピースである、ピースa,h,k,pが選出される。
【0140】
次に、CPU31は、フィールドデータ55を参照して、選出されたピースを含むピース群であって、基準ピースとは異なる属性のピースが互いに隣接配置されて形成されるピース群を「内側ピース群」として選出する。図9を例にとって説明すると、ピースaを含み、白(基準ピースとは異なる属性)のピースが互いに隣接配置されて形成されるピース群である、ピース群a−gが内側ピース群として選出される。さらに、選出された他のピースh,k,pについてもピースaと同様に、ピースh−j,ピースk−o,およびピースp−qがそれぞれ内側ピース群として選出される。したがって、図9の場合には、4つの内側ピース群が選出される。
【0141】
以上のようにして、本実施形態では、基準ピースの周囲に配置される(基準ピースとは異種の)ピース群が、内側ピース群として選出される。上記ステップS22においては、内側ピース群として選出されたピース群を示すデータは、内側ピースデータ58としてメインメモリ32に記憶される。ステップS22の次にステップS23の処理が実行される。
【0142】
ステップS23において、CPU31は、ステップS22で選出された内側ピース群から、フィールドの周に隣接する内側ピース群を除外する。フィールドの周に隣接する内側ピース群は、基準ピースおよびそれと同種のピースによって囲まれることはなく、環状ピース群の内側となることはないからである。図9を例にとって説明すると、上記4つの内側ピース群のうち、ピースa−gからなる内側ピース群およびピースh−jからなる内側ピース群は、ステップS23において除外される。上記ステップS23における具体的な処理としては、CPU31は、メインメモリ32から内側ピースデータ58を読み出し、除外された内側ピース群を示すデータを内側ピースデータ58の内容から削除する処理を行う。さらに、削除処理後の内側ピースデータ58をメインメモリ32に記憶する。
【0143】
ステップS24において、CPU31は、内側ピース群に基づいて外側ピース群を選出する。すなわち、メインメモリ32に記憶されているフィールドデータ55および内側ピースデータ58を読み出し、読み出した内側ピースデータ58により示される内側ピース群のみを囲むピース群を選出する。具体的には、上記8方向において1つの内側ピース群に含まれるいずれかのピースの最近に位置するピース(1つの内側ピース群に含まれるいずれかのピースを囲むピース)であって、内側ピース群とは異なる種類のピース(基準ピースと同種のピース)からなるピース群を選出する。なお、外側ピース群の選出は内側ピース群毎に行われ、ステップS24の時点で内側ピース群が複数選出されている場合は、複数の内側ピース群のそれぞれについて外側ピース群が選出される。図9を例にとって説明すると、ピースk−o,およびピースp−qがそれぞれ内側ピース群として選出されている場合、ピースk−oからなる内側ピース群に対応する外側ピース群として、ピースA,K−U,H−Jからなるピース群が選出され、ピースp−qからなる内側ピース群に対応する外側ピース群として、ピースA−Jからなるピース群が選出される。なお、図9の例から明らかなように、互いに異なる外側ピース群において、一部のピースが重複していてもよい(同一のピースが含まれていてもよい)。選出された外側ピース群を示すデータは、外側ピースデータ59としてメインメモリ32に記憶される。以上のステップS24の次にステップS25の処理が実行される。
【0144】
ステップS25において、CPU31は、ステップS24で選出された外側ピース群から、閉じた環状に隣接配置されていないピース群を除外する。ここで、外側ピース群に含まれる各ピースが閉じた環状に隣接配置されているか否かは、当該各ピースのそれぞれが、当該外側ピース群に含まれる他の2つ以上のピースと隣接しているか否かによって判断することができる。すなわち、外側ピース群に含まれる各ピースのうちに、当該外側ピース群に含まれる他のピースと隣接していない、あるいは、当該外側ピース群に含まれる1つのピースのみと隣接しているピースがある場合、当該外側ピース群は閉じた環状に隣接配置されていないと判断される。一方、外側ピース群に含まれる全てのピースが、当該外側ピース群に含まれる他の2つ以上のピースと隣接している場合、当該外側ピース群は閉じた環状に隣接配置されていると判断される。図9を例にとって説明すると、ピースA,K−U,H−Jからなるピース群は、ピースPがピースOとのみ隣接しており、当該ピース群に含まれる2つ以上のピースと隣接していない。したがって、ピースA,K−U,H−Jからなるピース群は、ステップS25において除外される。一方、ピースA−Jからなるピース群は、全てのピースA−Jが、当該ピース群に含まれる2つ以上のピースと隣接している。したがって、ピースA−Jからなるピース群は、ステップS25において除外されず、外側ピース群として残される。
【0145】
なお、上記ステップS25における具体的な処理としては、CPU31は、メインメモリ32から外側ピースデータ59を読み出し、除外された外側ピース群を示すデータを外側ピースデータ59の内容から削除する処理を行う。さらに、削除後の外側ピースデータ59をメインメモリ32に記憶する。この時点でメインメモリ32に記憶されている外側ピースデータ59により示されるピース群(図9の例では、ピースA−Jからなるピース群)が、環状ピース群として特定されるピース群である。以上のステップS25の処理の終了後、CPU31は消去判定処理を終了する。
【0146】
なお、他の実施形態においては、CPU31は、上記ステップS23の処理を実行しなくてもよい。ステップS23において、フィールドの周に隣接する内側ピース群を除外しなくとも、当該内側ピース群に隣接する外側ピース群は、ステップS25の処理において除外されるからである。
【0147】
以上のように、本実施形態では、上記消去判定処理によって環状ピース群が特定される。そして、その後に実行されるステップS9の処理によって特定環状ピース群が消去される。ここで、上記消去判定処理では、ゲーム装置1は、まず内側ピース群を選出し(ステップS22,S23)、内側ピース群に隣接するピースを外側ピース群として選出している(ステップS24,S25)。このとき、外側ピース群は、内側ピース群を囲む最小の数で構成される、すなわち、内側ピース群をできるだけ少ない数で囲むこととなる。したがって、本実施形態によれば、上記第2の追加条件を満たすように外側ピース群を選出することができ、その結果、第2の追加条件を満たす環状ピース群を容易に特定することができる。
【0148】
また、上記消去判定処理では、ゲーム装置1は、内側ピース群に隣接するピースを外側ピース群として選出(ステップS24)した上で、外側ピース群に含まれる各ピースが閉じた環状に隣接配置されていることを条件として環状ピース群を特定している(ステップS25)。ここで、例えば図11に示すピースの配置パターンの場合を考える。図11は、消去条件を満たさない場合の配置パターンを含むゲーム画像の例を示す図である。図11において、例えばピースAが基準ピースである場合、ステップS22およびS23において内側ピース群としてピースa−hが選出される。その結果、ステップS24ではピースA−Qが外側ピース群として選出される。ここで、ピースA−Qは閉じた環状に隣接配置されていない(ピースQは、外側ピース群に含まれる他のピースA−Pと隣接していない)ので、ステップS25でピースA−Qは除外される。このように、上記消去判定処理では、閉じた環状に隣接配置されるピース群(ピースA−P)の内側にそのピース群と同種のピース(ピースQ)がある場合のように、上記第1の追加条件が満たされない場合、そのピース群は消去されない。つまり、上記消去判定処理によれば、上記第1の追加条件を満たすように外側ピース群を選出することができ、その結果、第1の追加条件を満たす環状ピース群を容易に特定することができる。
【0149】
また、上記消去判定処理では、基準ピースがいずれの属性であっても環状ピース群の特定が行われる。つまり、上記消去判定処理では、ゲーム装置1は、消去条件を満たす環状ピース群が存在するか否かを複数種類の属性のピースについて判断する。したがって、本実施形態においては、白のピースで黒のピースを囲んでも、黒のピースで白を囲んでも、ピースを消すことができる。プレイヤは、各種類のピースを外側(枠)にするかそれとも内側にするかを考えながらゲームをプレイすることになる。以上のように、本実施形態によれば、ピースの消去方法のバリエーションを増やすことによって、ゲームの戦略性を向上し、より興趣性の高いパズルゲームを提供することができる。
【0150】
また、上記消去判定処理では、変更操作が行われた場合(ステップS3でYes)、変更操作の対象となったピースを基準ピースとし(ステップS21)、基準ピースを含む環状ピース群が特定される(ステップS22〜S25)。つまり、本実施形態における消去判定処理では、ゲーム装置1は、ピースの配置パターンの変更が行われたことに応じて、当該変更によって位置または属性が変更されたピースを含み、かつ、消去条件を満たす環状ピース群を特定する。そして、消去判定処理で環状ピース群が特定された場合には後述するステップS9が実行され、特定環状ピース群が消去される。したがって、本実施形態では、プレイヤが変更操作によって消去条件を満たす配置パターンを作成した場合には、さらなる操作を行わなくとも特定環状ピース群が消去される。これにより、プレイヤは快適な操作性でゲームをプレイすることができる。
【0151】
また、上記消去判定処理では、指定操作が行われた場合(ステップS6でYes)、指定操作の対象となったピースを基準ピースとし(ステップS21)、基準ピースを含む環状ピース群が特定される(ステップS22〜S25)。つまり、本実施形態における消去判定処理では、ゲーム装置1は、ピースを指定する操作が行われたことに応じて、当該指定されたピースを含み、かつ、消去条件を満たすピース群を特定する。そして、消去判定処理で環状ピース群が特定された場合には後述するステップS9が実行され、特定環状ピース群が消去される。このように、本実施形態においては、ステップS1またはステップS14の処理等によってすでに消去条件を満たす環状ピース群が発生した場合であっても、そのままでは当該環状ピース群は消去されず、プレイヤは、当該環状ピース群に含まれるピースを指定することによって環状ピース群を消去することができる(図6)。すなわち、プレイヤは、消去条件を満たす環状ピース群をフィールドから見つけて指定するという、従来のパズルゲームにはない楽しみ方でゲームをプレイすることができる。
【0152】
なお、本実施形態においては、消去条件を満たす環状ピース群自身を指定操作によって指定することによって、当該環状ピース群が特定環状ピース群として特定されたが、他の実施形態においては、消去条件を満たす環状ピース群の内側のピースを指定操作によって指定することによって、当該環状ピース群が特定環状ピース群として特定されるようにしてもよい。すなわち、上記消去判定処理では、ゲーム装置1は、ピースを指定する指定操作が受け付けられたことに応じて、消去条件を満たす環状ピース群であって、指定されたピースが当該環状ピース群の内側に位置する環状ピース群を特定するようにしてもよい。
【0153】
なお、上記消去判定処理では、まず基準ピースを選出し(ステップS21)、次に内側ピース群を選出し(ステップS22,S23)、最後に外側ピース群を選出する(ステップS24,S25)アルゴリズムによって、ゲーム装置1は環状ピース群を特定した。ここで、基準ピースを含む環状ピース群を特定するための他のアルゴリズムとしては、基準ピースを起点として、基準ピースと同種のピース列を探索するアルゴリズムが考えられる。他の実施形態においては、ゲーム装置1は、当該アルゴリズムを用いて環状ピース群を特定してもよい。このアルゴリズムでは、ゲーム装置1は、基準ピースと同種のピースで構成され、かつ基準ピースから延びるピース列を探索する。さらに、当該ピース列が閉じた環状に形成されているか、および、ピース列の内側に同種のピースが配置されていないかを判定することにより、環状ピース群を特定することができる。なお、上記ピース列を探索するアルゴリズムでは、ピースの配置パターンによっては探索するピース列が多くなって処理負荷が大きくなったり、上記第2の追加条件を判断する処理が複雑になったりするおそれがある。これに対して、上記判定処理で用いられるアルゴリズムでは、環状ピース群を簡易な処理で特定することができる。
【0154】
図8の説明に戻り、ステップS7の次のステップS8において、CPU31は、環状ピース群が特定されたか否かを判定する。ステップS8の判定は、メインメモリ32に記憶されている外側ピースデータ59に基づいて行うことができる。すなわち、外側ピースデータ59が1つ以上のピース群を示す場合、消去条件を満たす環状ピース群が特定されたと判断することができ、外側ピースデータ59がピース群を示していない場合、消去条件を満たす環状ピース群が特定されなかったと判断することができる。ステップS8の判定結果が肯定である場合、ステップS9の処理が実行される。一方、ステップS8の判定結果が否定である場合、後述するステップS13の処理が実行される。
【0155】
ステップS9において、CPU31は、ピース群の消去を開始する。本実施形態では、ピース群の消去は、ステップS9で消去が開始されてから、予め定められた所定時間(例えば数秒程度)かけて完了する。つまり、消去すべきピース群は、ステップS9で消去が開始されてから所定時間経過後に完全に消去される。ここで「消去すべきピース群」は、本実施形態では、ステップS7で特定された環状ピース群(特定環状ピース群)と、当該環状ピース群の内側に配置されたピースとからなる。具体的には、上記ステップS9では、メインメモリ32に記憶されているフィールドデータ55に含まれるピース状態データのうち、消去すべきピース群に対応するピース状態データの内容が、消去されるまでの残り時間(上記所定時間)を示す内容へと変更される。なお、ステップS9の時点ですでに消去中のピース(更新前のピース状態データが残り時間を示しているピース)に関しては、ピース状態データの内容が更新されてもよいし、更新されなくてもよい。すでに消去中のピースに対応するピース状態データの内容が、上記所定時間を示す内容へと更新されることは、当該ピースが消去されるまでの残り時間が延ばされることを意味する。ステップS9の次にステップS10の処理が実行される。
【0156】
なお、上記ステップS9では、特定環状ピース群が特定されたことによって消去されるピースの対象を、当該消去特定環状ピース群およびそれによって囲まれるピースとした。ここで、消去されるピースは、ステップS7で特定された特定環状ピース群によって決まる位置に配置されるピースであればよい。つまり、当該特定環状ピース群の位置に基づいて一義的に決めることができればよい。例えば、他の実施形態においては、ゲーム装置1は、特定環状ピース群のみを消去するようにしてもよいし、特定環状ピース群の内側に配置されるピース群のみを消去する(特定環状ピース群は消去されない)ようにしてもよい。なお、特定環状ピース群が消去されない場合には、消去条件を満たす環状ピース群がそのまま残ることになるので、次にピースを消去することが簡単になってしまう。そのため、上記ステップS9では、ゲーム装置1は、少なくとも環状ピース群を消去することが好ましい。
【0157】
また、上述のステップS7において複数組の特定環状ピース群が特定された場合、上記ステップS9においては、当該複数の特定環状ピース群に基づき消去すべきピースが決められる。すなわち、複数組の特定環状ピース群が特定された場合、各特定環状ピース群と、各特定環状ピース群によって囲まれるピースとが消去の対象となる。なお、このとき、後述する第2の加算条件が満たされることとなる。
【0158】
ステップS10において、CPU31は、ピースの消去に応じた得点の加算を行うとともに、各種履歴データ(操作履歴データ56および消去履歴データ60)を更新する。すなわち、まず、得点の加算処理として、メインメモリ32に記憶されている得点データ61を読み出し、得点データ61により示される得点に、予め定められた得点を加算する。そして、加算後の得点を示すデータを新たな得点データ61としてメインメモリ32に記憶する。なお、他の実施形態においては、CPU31は、ステップS9で消去されるピースの数に応じて、加算する得点を変化させたり、ステップS9で消去されるピース群の形状に応じて、加算する得点を変化(例えば、ピース群が十字形状であれば通常より多い得点を加算する)させたりしてもよい。
【0159】
上記ステップS10では次に、CPU31は、メインメモリ32に記憶されている消去履歴データ60を読み出して更新する。上述のように、消去履歴データ60は、フィールドの全領域のうちの消去済み領域を示す。したがって、ステップS10では、更新前の消去履歴データ60により示される消去済み領域に、今回の処理ループ(ステップS2〜S16)におけるステップS9で消去された特定環状ピース群の領域を追加するように、消去履歴データ60が更新される。次に、CPU31は、操作履歴データ56の値をリセットする。すなわち、操作履歴データ56により示される値は“0”に更新される。ステップS10の次にステップS11の処理が実行される。
【0160】
ステップS11において、CPU31は、上述した加算条件が満たされたか否かを判定する。ここで、本実施形態では、4種類の加算条件が設定されている。すなわち、メインメモリ32には、第1〜第4の加算条件を示すデータが、条件を満たした場合に加算される得点のデータと関連づけて記憶されており、CPU31はこれらのデータを読み出してステップS11の判定を行う。以下、各加算条件の詳細を説明する。
【0161】
まず、第1の加算条件について説明する。第1の加算条件は、ステップS9で消去されることが決定された特定環状ピース群が、すでに消去中の他の特定環状ピース群の一部を含むことである。つまり、ある特定環状ピース群が消去される前に(ある特定環状ピース群が消去中である間に)、当該特定環状ピース群の一部を含み、かつ、消去条件を満たす他の環状ピース群が特定されると、第1の加算条件が満たされる。以下、図12および図13を例にとって説明する。図12は、第1の加算条件が満たされる直前のゲーム画像を示す図であり、図13は、第1の加算条件が満たされた場合のゲーム画像を示す図である。図12においては、ピースA−Oが消去中である。図12に示す状態において、ピースQおよびピースSの属性を変更する変更操作を行った場合(図12に示す矢印参照)、図13に示すように、消去中のピースG−Iを含むピース群G−I,Q−Uが新たに消去条件を満たすことになる。その結果、ピース群A−Oと、ピース群G−I,Q−Vとがそれぞれ消去される。この場合、第1の加算条件が満たされ、通常(特定環状ピース群が、消去中である他の特定環状ピース群の一部を含まない場合)よりも多くの得点が加算される。なお、第1の加算条件を連続して満たすようにする(例えば図13において、ピースR−Tを含む環状ピース群をさらに作成する)ことも可能であり、連続させる回数に応じて、加算する得点を変化させるようにしてもよい。
【0162】
ここで、従来のパズルゲームでは、高得点が得られるテクニックとして、いわゆる「連鎖」というテクニックがある。「連鎖」とは、ピースを消去したことによって他のピースが落下等することでピースの配置パターンが変化した結果、消去条件を満たすピースが新たに形成されて当該ピースがさらに消去される、というテクニックである。これに対して、本実施形態では、ピースの補充によって消去条件を満たす環状ピース群が発生しても、プレイヤの操作がない限りは当該環状ピース群が消去されないので、従来の「連鎖」のテクニックを使うことができない。
【0163】
そこで、本実施形態では、「(環状に形成されるピース群が消去条件を満たすことになるため)環状ピース群の一部を他の環状ピース群の一部として利用することができる」という、本発明に固有の特徴に着目し、ピース群を連続して消去するテクニック(従来の「連鎖」とは異なる)を可能としている。すなわち、ピース群を一定時間かけて消去する(ステップS9)ことによって、消去中の環状ピース群の一部を用いて新たな環状ピース群を作成することを可能とし、ピース群を連続して消去するテクニックを可能としている。さらに、上記第1の加算条件を設けることによって、ピース群を連続して消去することで高得点を得ることができるようにしている。以上のように、本実施形態では、ピース群を連続して消去するテクニックにより高得点を得られるようにすることで、ゲームをより興趣性の高いものにしている。
【0164】
上記第1の加算条件が満たされたか否かは、今回のステップS2〜S16の処理ループにおけるステップS9で消去が開始された環状ピース群のうちで、すでに消去中のピースが含まれていたか否かによって判断することができる。なお、ピースがすでに消去中であるか否かは、フィールドデータ55に含まれるピース状態データを読み出して参照することで知ることができる。
【0165】
次に、第2の加算条件について説明する。図14は、第2の加算条件が満たされる直前のゲーム画像を示す図であり、図15は、第2の加算条件が満たされた場合のゲーム画像を示す図である。図14においてピースEの属性を白に変更すれば(図14に示す矢印参照)、図15に示すように、ピース群A−Hおよびピース群E−G,J−Nという2つのピース群が消去条件を満たすことになる。その結果、これら2つのピース群が同時に消去される。第2の加算条件は、2つ以上の環状ピース群を同時に消去することである。したがって、2つ以上の環状ピース群を同時に消去した場合、通常(2つの環状ピース群を1つずつ別々に消去した場合)よりも多くの得点が加算される。なお、図14および図15では、変更操作によって2つの環状ピース群を同時に消去する例を示したが、指定操作によって2つの環状ピース群を同時に消去することも可能である。例えば、初期配置が図15に示す配置パターンである場合に、ピースE−Gのいずれかを指定する指定操作を行うことによって、上記2つの環状ピース群を同時に消去することができる。なお、3つまたは4つの環状ピース群を同時に消去することも可能であり、同時に消去する環状ピース群の数に応じて、加算する得点を変化させるようにしてもよい。
【0166】
上記第2の加算条件を設けることによって、1つの環状ピース群を単独で消去する場合と、複数の環状ピース群を同時に消去する場合とで異なるゲーム効果が得られることとなる。これによれば、1回の操作でできるだけ多くの環状ピース群を消去することがプレイヤに要求されることとなり、ゲームの戦略性が向上する。したがって、上記第3の加算条件を設けることによって、より興趣性の高いパズルゲームを提供することができる。
【0167】
第2の加算条件が満たされたか否かは、今回のステップS2〜S16の処理ループにおけるステップS9で2つ以上の特定環状ピース群が消去されたか否かによって判断することができる。すなわち、外側ピースデータ59を読み出して、外側ピースデータ59が2つ以上のピース群を示しているか否かによって判断することができる。
【0168】
また、第3の加算条件は、最後にピースを消去してから(あるいは、初期配置から)1回の変更操作によって消去条件を満たす環状ピース群を作成することである。第3の加算条件が満たされた場合、通常(2回以上の変更操作によって消去条件が満たされた場合)よりも多くの得点が加算される。なお、本実施形態では、ピースが消去されてから次にピースが消去されるまでの変更操作の回数が1回である場合に加算を行うようにしたが、他の実施形態においては、加算する得点を当該回数に応じて変化させるようにしてもよい。
【0169】
上記第3の加算条件を設けることによって、ピースを消去するまでに要した操作回数によって異なるゲーム効果が得られることとなる。これによれば、ピースを消去するまでの操作回数を考慮しながらゲーム操作を行うことがプレイヤに要求されることとなり、ゲームの戦略性が向上する。したがって、上記第3の加算条件を設けることによって、より興趣性の高いパズルゲームを提供することができる。
【0170】
第3の加算条件が満たされたか否かは、操作履歴データ56を読み出して参照することにより判断することができる。すなわち、操作履歴データ56が“1”を示す場合、第3の加算条件が満たされたと判断し、操作履歴データ56が“2”以上を示す場合、第3の加算条件が満たされないと判断することができる。
【0171】
また、第4の加算条件は、フィールドの全ての領域でピースを消去することである。なお、第4の加算条件では、第2の加算条件とは異なり、1回の操作によってフィールドの全領域でピースを消去することは要求されず、ゲーム開始後の任意回数の操作(操作回数に制限を設けてもよい)によってフィールドの全領域でピースを消去すればよい。第4の加算条件が満たされた場合、環状ピース群を消去したことによる得点とは別にさらに得点が加算される。なお、本実施形態では、第4の加算条件は、ピースを消去したことがある領域がフィールドの全領域となったことを要求する条件であったが、他の実施形態においては、第4の加算条件は、ピースを消去したことがある領域が所定の条件(例えば、フィールド全領域の80%の面積になったことや、所定の形状になったこと)を満たしたことを要求する条件であってもよい。
【0172】
上記第4の加算条件を設けることによって、プレイヤには、それまでにピースを消去したことがある領域を考慮しながらゲーム操作を行うことが要求されることとなり、ゲームの戦略性を向上することができる。したがって、上記第4の加算条件を設けることによって、より興趣性の高いパズルゲームを提供することができる。
【0173】
第4の加算条件が満たされたか否かは、消去履歴データ60を読み出して参照することにより判断することができる。すなわち、消去履歴データ60がフィールドの全領域を示す場合、第4の加算条件が満たされたと判断し、消去履歴データ60がフィールドの一部の領域のみを示す場合、第4の加算条件が満たされないと判断することができる。
【0174】
なお、他の実施形態においては、上記第1〜第4の加算条件に加えて(または上記第1〜第4の加算条件に代えて)、例えば下記の加算条件が設定されてもよい。
・消去中の特定環状ピース群が存在する間に、他の環状ピース群をさらに作成すること(第1の加算条件とは異なり、2つの環状ピース群は重複しない)
・フィールド上に配置されるピースを白または黒の1種類にすること
・フィールド上に配置されるピースを全て消去すること
【0175】
ステップS11においては、上記第1〜第4の加算条件のそれぞれについて、条件が満たされたか否かが判定される。ただし、指定操作によってピースが消去された場合には、ステップS11において第3の加算条件の判定は行われない。ステップS11において、上記第1〜第4の加算条件のうち少なくとも1つが満たされたと判定される場合、ステップS11の判定結果は肯定となり、ステップS12の処理が実行される。一方、上記第1〜第4の加算条件の全てが満たされないと判定される場合、ステップS11の判定結果は否定となり、後述するステップS13の処理が実行される。
【0176】
ステップS12において、CPU31は、上記第1〜第4の加算条件のうち、ステップS11で満たされたと判定された条件に対応する得点を加算する。すなわち、メインメモリ32に記憶されている得点データ61を読み出し、得点データ61により示される得点に、ステップS11で満たされたと判定された条件に対応する得点を加算する。そして、加算後の得点を示すデータを新たな得点データ61としてメインメモリ32に記憶する。ステップS12の次にステップS13の処理が実行される。
【0177】
上記ステップS12のように、本実施形態によれば、上記加算条件を満たす特別な方法でピースを消去することによって、加算条件を満たさない通常の方法でピースを消去する場合よりも高い得点を得ることができる。これにより、ゲームの戦略性がより向上し、興趣性の高いパズルゲームを提供することができる。
【0178】
なお、本実施形態においては、上記加算条件が満たされた場合には得点が加算されることとしたが、他の実施形態においては、加算条件が満たされたことによって生じるゲーム上の効果(ゲーム効果)は、得点の加算に限らず、どのような効果であってもよい。すなわち、ゲーム装置1は、上記加算条件が満たされた場合、加算条件が満たされない場合とは異なるゲーム効果を与えるようにすればよく、ゲーム効果の内容はどのようなものであってもよい。例えば、加算条件が満たされた場合には、ステップS16におけるゲームの制限時間を延ばす(より長い時間ゲームを継続できる)ようにしてもよいし、ゲーム上有利な効果を与えるアイテムを入手できるようにしてもよい。
【0179】
ステップS13において、CPU31は、消去中のピースを完全に消去するか否かを判定する。まず、CPU31は、消去中のピースの残り時間を、所定時間(ステップS2〜S16の1回の処理ループに相当する時間)だけ減算する。すなわち、フィールドデータ55をメインメモリ32から読み出し、消去中のピースに対応するピース状態データの内容を、上記所定時間だけ減算した値に更新する。次に、CPU31は、更新後のピース状態データにより示される値が0以下になったピースがあるか否かを判定する。当該ピースがある場合、ステップS13の判定結果は肯定であると判断され、ステップS14の処理が実行される。一方、上記ピースがない場合、ステップS13の判定結果は否定であると判断され、ステップS14の処理がスキップされてステップS15の処理が実行される。
【0180】
ステップS14において、CPU31は、ステップS13でピースが(完全に)消去された位置にピースを補充する。すなわち、CPU31は、フィールドデータ55をメインメモリ32から読み出し、ステップS13でピースが消去された位置に対応するピースについて、ピース属性データおよびピース状態データを更新する。ここで、ピース状態データは、消去中でないことを示す内容に更新される。また、ピース属性データは、白または黒のいずれかがランダムに設定されて更新される。つまり、本実施形態では、補充されるピースの属性はランダムに決定される。なお、他の実施形態においては、補充されるピースの属性を所定のルールに従って決定してもよい。例えば、CPU31は、1回のステップS14における補充において複数種類(本実施形態では2種類)のピースを補充するように(補充されるピースが1種類だけにならないように)してもよい。ステップS14の次にステップS15の処理が実行される。
【0181】
なお、上記ステップS14では、ゲーム装置1は、ピースが消去された位置に新たなピースを補充するようにしたが、他の実施形態においては、ピースが消去された場合、フィールド内のピースを移動させてから新たなピースを補充するようにしてもよい。すなわち、ゲーム装置1は、ピースが消去された結果、所定方向の側で他のピースと隣接しないピースが生じた場合、フィールドの端部までまたは他のピースに隣接するまでピースを当該所定方向へ移動させる。そして、ピースを移動させた後、フィールド内においてピースが配置されていない領域に新たなピースを補充する。例えば図6を例にとって説明すると、図6に示すピースA−Iが消去された場合、ピースA,G,Hの上側に配置された3つのピースは、下方向にピースC−Eの位置まで移動されるようにしてもよい。そして、上記3つのピースが移動した後、移動後の上記3つのピースの上側に、新たなピースが補充されるようにしてもよい。
【0182】
ステップS15において、CPU31は表示処理を行う。具体的には、フィールドデータ55を読み出して、フィールドデータ55により示されるピース配置に従って、下側LCD12の画面に複数のピースを表示させる。なお、消去中のピースについて、CPU31は、例えば半透明で表示したり、点滅させたり、色を付したりすることによって、消去中でないピースとプレイヤが視覚的に区別しやすいように表示してもよい。また、図示していないが、下側LCD12(または上側LCD22)の画面には、ピースが配置されるフィールドに加えて、得点やゲームのプレイ時間(または制限時間)が表示されてもよい。ステップS15の次にステップS16の処理が実行される。
【0183】
ステップS16において、CPU31はゲームを終了するか否かを判定する。具体的には、ゲーム開始から上記制限時間が経過したか否かを判定する。なお、ゲームを終了するか否かの判定は、例えば、ゲームがクリアされたか否か、ゲームオーバーとなったか否か、プレイヤがゲームを中止する指示を行ったか否か等によって行われてもよい。ステップS16の判定結果が否定である場合、ステップS2の処理が再度実行される。以降、ステップS16でゲームを終了すると判定されるまで、ステップS2〜S16の処理ループが繰り返し実行される。一方、ステップS16の判定結果が肯定である場合、CPU31は、図8に示すゲーム処理を終了する。以上で、ゲーム処理の説明を終了する。
【0184】
以上のように、本実施形態におけるゲーム処理によれば、プレイヤは、単一種類のピースを環状につなげることによってピースを消去することができる。このように、従来にはなく、かつ、従来よりも複雑な消去条件を採用することによって、ゲームの戦略性を向上することができ、興趣性の高いパズルゲームを提供することができる。
【0185】
[変形例]
なお、上記実施形態におけるパズルゲームの例は一例であり、種々の変形を行うことが可能である。以下、上記実施形態の変形例について説明する。
【0186】
(ピースの種類に関する変形例)
上記実施形態においては、ピースの種類は白色と黒色の2種類であったが、他の実施形態においては、ピースの種類は1種類でもよいし、3種類以上であってもよい。ピースを1種類とする場合には、例えばゲーム装置1は、フィールド内の一部領域にピースを配置する(ピースが配置されない領域を設ける)ようにすればよい。この場合も、ピース群が閉じた環状に隣接配置された(環状の内側にはピースが配置されない)ことを消去条件としてピースを消去することができる。
【0187】
なお、フィールド内の一部領域にピース(複数種類でもよい)を配置する場合には、ゲーム装置1は、ピースを移動する操作を受け付けるようにしてもよい。例えば、ゲーム装置1は、フィールドにおける方向を指定する操作を受け付ける。そして、当該操作が受け付けられた場合、指定された方向へピースを移動させる。なお、プレイヤによって指定された特定のピースのみが移動されてもよいし、指定された方向へ移動可能な全てのピースが移動されてもよい。ここで、「指定された方向へ移動可能なピース」とは、指定された方向の側に他のピースが存在したり、フィールドの端部に配置されていたりするために当該方向へ移動することができないピースを除いたピースを指す。
【0188】
また、ピースを3種類以上とする場合でも、ゲーム装置1は、上記実施形態と同様、ピース群が閉じた環状に隣接配置されたことを消去条件としてピースを消去することができる。なお、ピースを3種類以上とする場合には、閉じた環状に隣接配置されたピース群の内側に複数種類のピースが配置される可能性がある。したがって、この場合においては、「環状ピース群の内側には、環状ピース群と同じ種類のピースが配置されていないこと」を消去条件に加えてもよいし、「環状ピース群の内側には、環状ピース群とは異なる単一種類のピースが配置されていること」を消去条件に加えてもよい。前者の条件を採用する場合、ゲーム装置1は、上記ステップS22における内側ピース群の条件として、「基準ピースとは異なる種類のピースで構成される」という条件を追加すればよい。また、後者の条件を採用する場合、ゲーム装置1は、上記ステップS22における内側ピース群の条件として、「基準ピースとは異なる単一種類のピースで構成される」(あるいは、「基準ピースと同じ種類のピースにのみ隣接している」)という条件を追加する。さらに、上記ステップS24における外側ピース群の条件として、「基準ピースと同じ種類のピースで構成される」という条件を追加すればよい。
【0189】
また、上記実施形態においては、ピースの属性によって色のみが異なる場合を説明したが、他の実施形態においては、ピースの属性によって大きさが異なるようにしてもよいし、ピースの属性によってピースの消去条件が異なるようにしてもよい。例えば、他のピースに比べて2倍(縦横にそれぞれ2倍)の大きさのピースがフィールドに配置されてもよいし、閉じた環状に隣接配置されたピース群によって通算2回囲まれなければ消去されないピースが配置されてもよい。また、所定の種類のピース群によって囲まれなければ消去されないピースを設けてもよい。このように、大きさや消去条件等、視覚的特徴以外の特徴を有するピースを配置することによって、ゲームの戦略性をより向上することができる。
【0190】
(ゲームのルールに関する変形例)
上記実施形態においては、所定の制限時間内において、フィールド内に配置されたピースをできるだけ多く消去するパズルゲームを例として説明したが、パズルゲーム上のルールはこれに限られない。例えば、上記実施形態においては、ピースが消去された場合にピースが補充されるようにしたが、他の実施形態においては、ゲーム装置1によって行われるパズルゲームは、例えば一定時間間隔でフィールド内にピースが落下してくることでピースが補充されるパズルゲームであってもよい。このパズルゲームでは、フィールド内にピースが積み上がった場合にゲームオーバーと判断され、プレイヤは、フィールド内にピースが積み上がらないようにフィールド内のピースを消去する。また、他の実施形態においては、ゲーム装置1によって行われるパズルゲームは、ピースを補充しない代わりに、画面に表示されるフィールドがスクロールするパズルゲームであってもよい。このパズルゲームでは、画面に表示されているフィールド内のピースが消去されて所定数以下となったことに応じて、フィールドがスクロールして新たなピースが表示される。プレイヤは、ピースを消去することによりフィールドをスクロールさせてゴール地点を目指したり、所定時間内にフィールドをスクロールさせた距離を競ったりして遊ぶことができる。
【0191】
また、上記実施形態では、1人のプレイヤがプレイするゲームを例として説明したが、本発明は、複数人でプレイするゲームにも適用することが可能である。例えば、フィールド内にピースが落下してくることでピースが補充されるパズルゲームにおいて、あるプレイヤが消去したピースの数に応じた数のピースが他のプレイヤのフィールドに落下するようにするようにしてもよい。これによって、複数人プレイ型のパズルゲームを実現することができる。また、上記変更操作や指定操作等の操作を1回ずつ交代でプレイヤに行わせることにより、複数人プレイ型のパズルゲームを実現することもできる。
【0192】
また、上記実施形態では、特定環状ピース群によって決められる位置に配置されるピース群を消去するパズルゲームについて説明したが、他の実施形態においては、当該ピース群を消去することに代えて、当該ピース群に含まれる各ピースの属性を変更するようにしてもよい。例えば、ゲーム装置1は、特定環状ピース群およびその内側のピースのそれぞれの属性を変更するようにしてもよい。また、変更後の属性は、ランダムに決められてもよいし、予め決められたアルゴリズムに従って決められてもよい。また、ゲーム装置1は、特定環状ピース群の作成によるピースの属性の変更に応じて、得点を加算するようにしてもよい。以上のように、他の実施形態においては、ゲーム装置1は、環状ピース群の特定によって何らかのゲーム上の評価を行えばよい。
【産業上の利用可能性】
【0193】
以上のように、本発明は、より戦略性が高く、興趣性に富むパズルゲームを提供すること等を目的として、例えば、パズルゲームを実行するためのゲームプログラムおよびゲーム装置として利用することができる。
【符号の説明】
【0194】
1 ゲーム装置
11 下側ハウジング
12 下側LCD
13 タッチパネル
14 操作ボタン
21 上側ハウジング
23 内側カメラ
25 外側カメラ
27 タッチペン
50 ゲームプログラム
57 基準ピースデータ
58 内側ピースデータ
59 外側ピースデータ
60 消去履歴データ

【特許請求の範囲】
【請求項1】
表示装置にゲーム画像を表示することが可能なゲーム装置のコンピュータに実行させるゲームプログラムであって、
各々に属性が設定された複数のパズル要素が前記表示装置の画面内における所定領域に配置される状態を示す領域データを前記ゲーム装置のメモリから繰り返し読み出し、当該領域データにより示される配置に従って前記複数のパズル要素を前記表示装置の当該所定領域に表示させるパズル要素配置手段と、
前記メモリから前記領域データを読み出し、前記所定領域内におけるパズル要素の配置パターンをプレイヤの操作に従って変更するように前記領域データを変更する配置変更手段と、
前記配置変更手段によって配置パターンの変更が行われたことに応じて、前記メモリから前記領域データを読み出し、当該配置パターンの変更によって位置または属性が変更されたパズル要素を含み、かつ、同一種類の属性が設定されており、かつ、閉じた環状に隣接配置されている前記パズル要素の群を環状パズル要素群として特定し、当該環状パズル要素群を示すデータを前記メモリに記憶する環状パズル要素特定手段と、
前記環状パズル要素群を示すデータを前記メモリから読み出し、当該環状パズル要素群を特定環状パズル要素群として少なくとも消去するように、前記メモリに記憶される前記領域データを変更するパズル要素消去手段として、前記コンピュータを機能させるゲームプログラム。
【請求項2】
前記環状パズル要素特定手段は、前記環状パズル要素群の内側に、当該環状パズル要素群と同じ属性のパズル要素が配置されていないことを条件として、当該条件を満たす環状パズル要素群を前記特定環状パズル要素群として特定する、請求項1に記載のゲームプログラム。
【請求項3】
前記パズル要素配置手段は、複数種類の属性のパズル要素を前記所定領域内に配置し、
前記環状パズル要素特定手段は、前記環状パズル要素群の内側に、当該環状パズル要素群と異なる単一の属性のパズル要素のみが配置されていることを条件として、当該条件を満たす環状パズル要素群を前記特定環状パズル要素群として特定する、請求項2に記載のゲームプログラム。
【請求項4】
前記環状パズル要素特定手段は、前記環状パズル要素群の内側に配置されている1以上のパズル要素をできるだけ少ない数のパズル要素で囲むことを追加の条件として、当該追加の条件をさらに満たすパズル要素群を前記特定環状パズル要素群として特定する、請求項2または請求項3に記載のゲームプログラム。
【請求項5】
前記環状パズル要素特定手段は、
前記配置変更手段による配置パターンの変更によって位置または属性が変更されたパズル要素を基準パズル要素として選出し、当該基準パズル要素を示す基準パズル要素データを前記メモリに記憶する基準選出手段と、
前記基準パズル要素データと前記領域データとを前記メモリから読み出し、前記領域データを参照して、前記基準パズル要素のみを囲むパズル要素群のうちで、前記基準パズル要素とは異なる属性のパズル要素を選出し、当該選出されたパズル要素を含むパズル要素群であって、前記基準パズル要素とは異なる属性のパズル要素が互いに隣接配置されることによって形成されるパズル要素群を示すデータを内側パズル要素群データとして前記メモリに記憶する内側パズル要素選出手段と、
前記メモリから前記領域データおよび内側パズル要素群データを読み出し、前記領域データを参照して、当該内側パズル要素群データが示すパズル要素群のみを囲むパズル要素群を外側パズル要素群として選出し、外側パズル要素群のうちで、それに含まれる各パズル要素が閉じた環状に隣接配置されている外側パズル要素群を、前記特定環状パズル要素群として特定し、当該特定環状パズル要素群を示すデータを前記メモリに記憶する外側パズル要素選出手段とを含む、請求項2に記載のゲームプログラム。
【請求項6】
前記環状パズル要素特定手段は、位置または属性が変更されたパズル要素を基準パズル要素とし、同種の属性のパズル要素で構成され、かつ基準パズル要素から延びるパズル要素列を探索し、当該パズル要素列が閉じた環状に形成されているか、および、パズル要素列の内側に同種のパズル要素が配置されていないかを判定することによって、環状パズル要素群を特定する、請求項1に記載のゲームプログラム。
【請求項7】
前記パズル要素配置手段は、少なくとも第1の属性のパズル要素および第2の属性のパズル要素を前記所定領域内に配置し、
前記環状パズル要素特定手段は、前記第1の属性のパズル要素および前記第2の属性のパズル要素の両方について、前記特定環状パズル要素群となるか否かを判断する、請求項1から請求項6のいずれか1項に記載のゲームプログラム。
【請求項8】
前記環状パズル要素特定手段は、前記環状パズル要素群の内側に、当該環状パズル要素群と異なる単一の属性のパズル要素のみが配置されていることを条件として、前記第1の属性の環状パズル要素群の内側に、前記第2の属性のパズル要素のみが配置されている場合、および、前記第2の属性の環状パズル要素群の内側に、前記第1の属性のパズル要素のみが配置されている場合の両方の場合について、前記特定環状パズル要素群となるか否かを判断する、請求項7に記載のゲームプログラム。
【請求項9】
前記ゲームプログラムは、前記変更先および変更元のパズル要素を指定するプレイヤ操作を示すデータを前記ゲーム装置の入力装置から取得する入力受付手段として前記コンピュータをさらに機能させ、
前記配置変更手段は、前記入力受付手段がプレイヤ操作を示すデータを取得する毎に前記パズル要素の配置パターンを変更する、請求項7に記載のゲームプログラム。
【請求項10】
前記パズル要素消去手段は、前記環状パズル要素特定手段によって特定された特定環状パズル要素群と、当該特定環状パズル要素群の内側に配置されるパズル要素とを消去するように、前記メモリに記憶される前記領域データを変更する、請求項1から請求項9のいずれか1項に記載のゲームプログラム。
【請求項11】
前記パズル要素消去手段は、前記環状パズル要素特定手段によって特定された特定環状パズル要素群を消去するように、前記メモリに記憶される前記領域データを変更する、請求項1から請求項9のいずれか1項に記載のゲームプログラム。
【請求項12】
前記パズル要素配置手段は、複数種類の属性のパズル要素を前記所定領域内に配置し、
前記所定領域内のパズル要素のうちで、変更元のパズル要素と変更先のパズル要素とを指定するプレイヤ操作を示すデータを前記ゲーム装置の入力装置から取得する変更受付手段として前記コンピュータをさらに機能させ、
前記配置変更手段は、前記変更先のパズル要素の属性を、前記変更元のパズル要素の属性へと変更することによってパズル要素の配置パターンを変更する、請求項1から請求項11のいずれか1項に記載のゲームプログラム。
【請求項13】
前記配置変更手段は、前記変更先のパズル要素の属性と前記変更元のパズル要素の属性とを入れ替えることによってパズル要素の配置パターンを変更する、請求項12に記載のゲームプログラム。
【請求項14】
前記配置変更手段は、プレイヤにより指定された方向へ1以上のパズル要素を移動することによってパズル要素の配置パターンを変更する、請求項1から請求項11のいずれか1項に記載のゲームプログラム。
【請求項15】
前記所定領域内におけるパズル要素を指定するプレイヤ操作を示すデータを入力装置から取得する指定受付手段として前記コンピュータをさらに機能させ、
前記環状パズル要素特定手段は、前記指定受付手段によってパズル要素を指定するプレイヤ操作を示すデータが取得されたことに応じて、指定されたパズル要素を含む環状パズル要素群を特定する、請求項1から請求項14のいずれか1項に記載のゲームプログラム。
【請求項16】
前記パズル要素消去手段は、前記環状パズル要素特定手段によって複数の特定環状パズル要素群が特定された場合、当該複数の特定環状パズル要素群によりそれぞれ決まる位置に配置されるパズル要素を消去するように、前記メモリに記憶される前記領域データを変更する、請求項15に記載のゲームプログラム。
【請求項17】
前記所定領域内におけるパズル要素を指定するプレイヤ操作を示すデータを入力装置から取得する指定受付手段として前記コンピュータをさらに機能させ、
前記環状パズル要素特定手段は、前記指定受付手段によってパズル要素を指定するプレイヤ操作を示すデータが取得されたことに応じて、指定されたパズル要素が環状パズル要素群の内側に位置する環状パズル要素群を前記特定環状パズル要素群として特定する、請求項1から請求項14のいずれか1項に記載のゲームプログラム。
【請求項18】
前記パズル要素消去手段によってパズル要素が消去された場合、消去された位置にパズル要素を補充するように、前記メモリに記憶される前記領域データを変更するパズル要素補充手段として前記コンピュータをさらに機能させる、請求項1から請求項17のいずれか1項に記載のゲームプログラム。
【請求項19】
前記パズル要素消去手段によってパズル要素が消去された結果、所定方向の側で他のパズル要素と隣接しないパズル要素が生じた場合、前記所定領域の端部までまたは他のパズル要素に隣接するまでパズル要素を当該所定方向へ移動させた後で、パズル要素が配置されない領域にパズル要素を補充した配置パターンを示すように、前記メモリに記憶される前記領域データを変更するパズル要素補充手段として前記コンピュータをさらに機能させる、請求項1から請求項17のいずれか1項に記載のゲームプログラム。
【請求項20】
前記パズル要素補充手段は、1回の補充において少なくとも2種類のパズル要素を補充する、請求項18または請求項19に記載のゲームプログラム。
【請求項21】
前記パズル要素消去手段は、
消去すべきパズル要素群を決定してから所定時間経過後に当該パズル要素を消去するように、前記メモリに記憶される前記領域データを変更し、
消去中のパズル要素群が消去される前に、当該消去中のパズル要素群の一部を含む他の環状パズル要素群が前記環状パズル要素特定手段によって前記特定環状パズル要素群として特定された場合、当該特定環状パズル要素群によって決まる位置に配置されるパズル要素をさらに消去するように、前記メモリに記憶される前記領域データを変更する、請求項1から請求項20のいずれか1項に記載のゲームプログラム。
【請求項22】
パズル要素群を消去することによるゲーム効果として、当該パズル要素群が消去中の他のパズル要素群の一部を含むか否かに応じて異なるゲーム効果を発生させるように、前記メモリに記憶されるゲーム効果を示すデータを変更する第1効果発生手段として前記コンピュータをさらに機能させる、請求項21に記載のゲームプログラム。
【請求項23】
前記パズル要素消去手段によって消去されるパズル要素の数に応じて異なるゲーム効果を発生させるように、前記メモリに記憶されるゲーム効果を示すデータを変更する第2効果発生手段として前記コンピュータをさらに機能させる、請求項1から請求項22のいずれか1項に記載のゲームプログラム。
【請求項24】
パズル要素が消去されてから次にパズル要素が消去されるまでに行われた所定のプレイヤ操作の回数に応じて異なるゲーム効果を発生させるように、前記メモリに記憶されるゲーム効果を示すデータを変更する第3効果発生手段として前記コンピュータをさらに機能させる、請求項1から請求項23のいずれか1項に記載のゲームプログラム。
【請求項25】
前記所定領域のうちで、所定のタイミング後においてパズル要素が消去されたことがある領域を前記メモリに記憶する領域記憶手段と、
前記メモリに記憶されている領域が所定の条件を満たした場合に所定のゲーム効果を発生させるように、前記メモリに記憶されるゲーム効果を示すデータを変更する第4効果発生手段として前記コンピュータをさらに機能させる、請求項1から請求項24のいずれか1項に記載のゲームプログラム。
【請求項26】
前記ゲーム装置は、前記画面上における任意の位置を指定可能な入力装置を備え、
前記配置変更手段は、前記入力装置に対して行われたプレイヤの操作に応じてパズル要素の配置パターンを変更する、請求項1から請求項25のいずれか1項に記載のゲームプログラム。
【請求項27】
表示装置にゲーム画像を表示することが可能なゲーム装置のコンピュータに実行させるゲームプログラムであって、
各々に属性が設定された複数のパズル要素が前記表示装置の画面内における所定領域に配置される状態を示す領域データを前記ゲーム装置のメモリから繰り返し読み出し、当該領域データにより示される配置に従って前記複数のパズル要素を前記表示装置の当該所定領域に表示させるパズル要素配置手段と、
前記メモリから前記領域データを読み出し、前記所定領域内におけるパズル要素の配置パターンをプレイヤの操作に従って変更するように前記領域データを変更する配置変更手段と、
前記配置変更手段によって配置パターンの変更が行われたことに応じて、前記メモリから前記領域データを読み出し、当該配置パターンの変更によって位置または属性が変更されたパズル要素を含み、かつ、同一種類の属性が設定されており、かつ、閉じた環状に隣接配置されている前記パズル要素の群を環状パズル要素群として特定し、当該環状パズル要素群を示すデータを前記メモリに記憶する環状パズル要素特定手段と、
前記環状パズル要素群を示すデータを前記メモリから読み出し、少なくとも当該環状パズル要素群の属性を変更するように、前記メモリに記憶される前記領域データを変更するパズル要素変更手段として、前記コンピュータを機能させるゲームプログラム。
【請求項28】
表示装置にゲーム画像を表示することが可能なゲーム装置であって、
各々に属性が設定された複数のパズル要素が前記表示装置の画面内における所定領域に配置される状態を示す領域データを前記ゲーム装置のメモリから繰り返し読み出し、当該領域データにより示される配置に従って前記複数のパズル要素を前記表示装置の当該所定領域に表示させるパズル要素配置手段と、
前記メモリから前記領域データを読み出し、前記所定領域内におけるパズル要素の配置パターンをプレイヤの操作に従って変更するように前記領域データを変更する配置変更手段と、
前記配置変更手段によって配置パターンの変更が行われたことに応じて、前記メモリから前記領域データを読み出し、当該配置パターンの変更によって位置または属性が変更されたパズル要素を含み、かつ、同一種類の属性が設定されており、かつ、閉じた環状に隣接配置されている前記パズル要素の群を環状パズル要素群として特定し、当該環状パズル要素群を示すデータを前記メモリに記憶する環状パズル要素特定手段と、
前記環状パズル要素群を示すデータを前記メモリから読み出し、当該環状パズル要素群を特定環状パズル要素群として少なくとも消去するように、前記メモリに記憶される前記領域データを変更するパズル要素消去手段とを備える、ゲーム装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2011−83631(P2011−83631A)
【公開日】平成23年4月28日(2011.4.28)
【国際特許分類】
【出願番号】特願2010−290301(P2010−290301)
【出願日】平成22年12月27日(2010.12.27)
【分割の表示】特願2009−59455(P2009−59455)の分割
【原出願日】平成21年3月12日(2009.3.12)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】