JP2014061042A - パズルゲームプログラム - Google Patents
パズルゲームプログラム Download PDFInfo
- Publication number
- JP2014061042A JP2014061042A JP2012206511A JP2012206511A JP2014061042A JP 2014061042 A JP2014061042 A JP 2014061042A JP 2012206511 A JP2012206511 A JP 2012206511A JP 2012206511 A JP2012206511 A JP 2012206511A JP 2014061042 A JP2014061042 A JP 2014061042A
- Authority
- JP
- Japan
- Prior art keywords
- block
- processing unit
- puzzle
- puzzle game
- game program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
- A63F13/798—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories for assessing skills or for ranking players, e.g. for generating a hall of fame
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/10—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
- A63F2300/1068—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad
- A63F2300/1075—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad using a touch screen
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】タッチパネル式の表示装置を備えるコンピュータにおけるパズルゲームプログラムを提供する。
【解決手段】タッチパネル式表示装置を備えたコンピュータを、タッチパネル式表示装置に表示したm×nに配置したブロックに対する操作を検出するブロック操作検出処理部12、検出した操作に基づいてその移動方向に位置する行または列のブロックを連続的に順次移動することでブロックの移動処理を行うブロック移動処理部13、移動後の状態のブロックの配置と元の状態のブロックの配置とを比較することで一致を判定する一致判定処理部14、として機能させるパズルゲームプログラム。
【選択図】図1
【解決手段】タッチパネル式表示装置を備えたコンピュータを、タッチパネル式表示装置に表示したm×nに配置したブロックに対する操作を検出するブロック操作検出処理部12、検出した操作に基づいてその移動方向に位置する行または列のブロックを連続的に順次移動することでブロックの移動処理を行うブロック移動処理部13、移動後の状態のブロックの配置と元の状態のブロックの配置とを比較することで一致を判定する一致判定処理部14、として機能させるパズルゲームプログラム。
【選択図】図1
Description
本発明は,タッチパネル式の表示装置を備えるコンピュータにおけるパズルゲームプログラムに関する。
コンピュータゲームとしてのパズルゲームは,ゲームのルールが明確であるため,比較的取り組みやすく,気軽に遊べるので,コンピュータゲームの中で一ジャンルとして確立されている。また,ゲームプログラムも複雑な処理が不要で,かつ画像データなども多用しないため,ゲームプログラムの容量が少なく,処理性能が高くないコンピュータ,たとえば携帯電話(スマートフォンを含む),PHS,タブレット型コンピュータなどでも遊ぶことが可能である。
このようなパズルゲームの一例を特許文献1乃至特許文献4に示す。
特許文献1乃至特許文献4をはじめとして,パズルゲームの一つとして,特定の課題に合致させることを目的としたものが存在する。たとえば特定の絵柄に揃える,数値を揃えることを目的としたパズルゲームなどである。
近年,パズルゲームは脳の活性化に役立ち,たとえば認知症の予防などにも有効であると言われている。そのため,上述のようなパズルゲームを高齢者が利用することで,脳の活性化を促し,認知症の予防に役立たせることが期待できる。
上述のように,特定の絵柄や数値に揃えることを目的としたパズルゲームは,ルールがもっとも分かりやすいことから,高齢者にとってもなじみやすいといえる。しかしながら,高齢者にとってコンピュータ自体になじみがない人も多く,複数の操作ボタンなどがあった場合には,パズルゲームであってもなかなか操作することが容易ではない。そのため,パズルゲームを行うことを断念してしまうおそれもある。そこで高齢者にとっても操作しやすいパズルゲームが求められている。
また高齢者といってもその能力には幅がある。従って,高齢者を対象としたパズルゲームであっても,その能力に衰えがほとんどない高齢者の場合,簡単なパズルゲームでは満足することができず,すぐに興味がなくなってしまうおそれもある。一方,能力の衰えが大きい高齢者の場合,複雑なパズルゲームは解くことができず,この場合も興味がなくなってしまう可能性が高い。
そこで高齢者を対象としたパズルゲームの場合,その能力差が大きいことから,幅広く対応することが求められる。
そこで本発明者は上記課題に鑑み,特に高齢者の認知症予防を目的としたパズルゲームを発明した。
第1の発明は,タッチパネル式表示装置を備えたコンピュータを,前記タッチパネル式表示装置に表示した,m×nに配置したブロックに対する操作を検出するブロック操作検出処理部,前記検出した操作に基づいて,その移動方向に位置する行または列のブロックを連続的に順次移動することで,前記ブロックの移動処理を行うブロック移動処理部,前記移動後の状態のブロックの配置と,前記元の状態のブロックの配置とを比較することで一致を判定する一致判定処理部,として機能させるパズルゲームプログラムである。
本発明のように構成することで,ユーザは,直接,ブロックを触っているかのような感覚で操作ができるので,コンピュータに不慣れな高齢者であっても楽しむことができる。また,自ら指を動かしてパズルを解くことができるので,指先の運動となり,脳の活性化につなげることもできる。
上述の発明において,前記パズルゲームプログラムは,前記コンピュータを,さらに,m×nに配置した元の状態のブロックに対して,任意の回数だけブロックを移動させることで問題を生成する問題生成処理部,として機能させ,前記ブロック操作検出処理部は,前記タッチパネル式表示装置における,前記問題として生成されたm×nに配置したブロックに対する操作を検出する,パズルゲームプログラムのように構成することもできる。
本発明のように構成すれば,問題を自動的に生成するので,問題生成時のブロックの移動回数を任意に変更すれば,高齢者の能力差に応じることも可能となる。そのため幅広い高齢者が楽しむことができる。
上述の発明において,前記パズルゲームプログラムは,前記コンピュータを,さらに,前記パズルゲームプログラムの表示の制御を少なくとも行うゲーム制御処理部,として機能させ,前記タッチパネル式表示装置において,前記問題と前記ブロックの元の状態とを同時に表示する,パズルゲームプログラムのように構成することもできる。
パズルゲームでは,一般的に正解となる元の状態を問題と同時に表示することはない。そこで本発明のように構成することで,元の状態を確認しながらパズルゲームを楽しむことができる。
上述の発明において,前記問題生成処理部は,前記ユーザのパズルゲームのクリア回数に基づいて,前記元の状態からのブロックの移動回数を変更する,パズルゲームプログラムのように構成することもできる。
上述の発明において,前記問題生成処理部は,さらに,前記m×nの各ブロックに対して,色または絵柄を任意に割り当てることで,前記元の状態となるブロックを生成する,パズルゲームプログラムのように構成することもできる。
上述の発明において,前記問題生成処理部は,さらに,前記元の状態となるブロックを生成する際に,前記ユーザのパズルゲームのクリア回数に基づいて,前記m×nの各ブロックに対して割り当てる色または絵柄の数を変更する,パズルゲームプログラムのように構成することもできる。
これらの発明のように構成することで,パズルゲームの難易度を細かく調整することが自動的に行える。そのため,通常は問題作成が一番大変であるが,その負担を軽減することができる。
上述の各パズルゲームプログラムを備えるコンピュータを構成しても,本発明と同様の技術的効果を得ることができる。
本発明によって,高齢者であっても操作がしやすく,またなじみやすいパズルゲームプログラムを構成することができる。また,難易度を適度に保つことができることから,高齢者の興味を惹きつけることができる。
本発明のパズルゲームプログラム1の機能を示す概念図を図1に模式的に示す。本発明のパズルゲームプログラム1は,携帯電話(スマートフォンを含む),PHS,タブレット型コンピュータなどを含むコンピュータ上で実行される。このコンピュータは,後述するように,タッチパネル形式の表示装置72を備えている。
図2に,パズルゲームプログラム1を実行するためのコンピュータのハードウェア構成の一例を模式的に示す。
本発明では,パズルゲームプログラム1がコンピュータ上で実行されることで実現される。コンピュータは,プログラムの演算処理を実行するCPUなどの演算装置70と,情報を記憶するRAMやハードディスクなどの記憶装置71と,タッチパネル式のディスプレイである表示装置72と,演算装置70の処理結果や記憶装置71に記憶する情報をインターネットやLANなどのネットワークを介して送受信する通信装置73とを有している。コンピュータ上で実現する各機能(各手段)は,その処理を実行するプログラムの各機能が演算装置70に読み込まれることでその処理が実行される。各機能は,記憶装置71に記憶した情報をその処理において使用する場合には,該当する情報を当該記憶装置71から読み出し,読み出した情報を適宜,演算装置70における処理に用いる。なお,パズルゲームプログラム1は,その機能が複数のコンピュータに分散配置されていても良い。
本発明における各手段は,その機能が論理的に区別されているのみであって,物理上あるいは事実上は同一の領域を為していても良い。
パズル情報記憶部711は,記憶装置71において,本発明のパズルゲームで出題するパズルの情報を記憶する。パズルとしては,複数のレベルに分けられており,そのレベルごとに複数のパズルが記憶されていることが好ましい。図4にパズルの一例を模式的に示す。図4は,レベル1の9つのパズルの一例を示している。なお,パズル情報記憶部711には,実際には,各ブロックごとの色や絵柄などの情報が記憶されており,それが管理されている。なお,図4では,ブロックには白地,網掛け,斜線の3種類で示しているが,実際には,これらが異なる色,たとえば白地は白,網掛けは黄色,斜線は水色として表現されていることが好ましい。また最大,ブロックの数だけ色や絵柄などを設けることができる。
また図面上は,各ブロックに色や絵柄などが表現されているが,パズルゲームのプログラム上では,各ブロックを行列の一要素と見て,色や絵柄に対応する情報(たとえば数値)が記憶されている。たとえば図4の場合,3×3のパズルであるので,3行3列の配列としてパズルゲームプログラム1では処理を実行する。そして白地のブロックには「0」,網掛けのブロックには「1」,斜線のブロックには「2」といったように,それぞれ対応する情報が記憶されている。なお,パズルの形状は正方形に限られるものではなく,m×nであれば良い。なお,m,nは自然数であり,n=mの場合も含まれる。
パズルゲームプログラム1は,ゲーム制御処理部10と問題生成処理部11とブロック操作検出処理部12とブロック移動処理部13と一致判定処理部14とを有する。
ゲーム制御処理部10は,パズルゲームに関する全般の制御処理を行う。たとえばゲームの起動,各画面の制御,次のパズルへの移行,クリアした場合の画面表示,終了処理などを行う。
問題生成処理部11は,ユーザが,パズルを選択することを受け付けると,そのパズルの問題を生成する処理を実行する。パズル情報記憶部711で記憶してるパズルの情報を抽出し,それを任意に複数回,縦または横にマスを移動させることで,元の状態から崩し,それを問題として生成する。
たとえば選択されたパズルが図5(図6(a))の状態の場合,1行目を右に2つ(図6(b)),3列目を下に1つ(図6(c)),3行目を左に1つ(図6(d)),1列目を上に1つ(図6(e)),2列目を上に2つ(図6(f)),1行目を左に2つ(図6(g)),2行目を左に2つ(図6(h)),1列目を下に1つ(図6(i)),それぞれ移動させる。これによって,図6(i)の状態ができるので,図6(i)を問題として生成する。何回移動させるかは任意の設定に基づく。またブロックを上下左右にどれだけ移動させるかは,たとえば乱数などによって定めればよい。
ブロック操作検出処理部12は,ユーザが表示装置72上で選択したブロックを検出し,選択されたブロックが,どの方向にどれだけ移動する操作が行われたかを検出する。すなわち上下左右にいくつ移動する操作が行われたかを検出する。
ブロック移動処理部13は,ブロック操作検出処理部12で検出したブロックを移動させる操作に基づいて,ブロックを移動させる処理を実行する。すなわち,ユーザが選択したブロックについて,移動させる方向に位置する行または列のブロックを,その順序に従って,連続的に移動させる処理を実行する。
ここでm×nに配置されるブロックであるから,ある方向にブロックを移動させた場合には,その方向に,その並び順だけブロックがずれることとなるが,移動方向の端から移動量に相当する場所に位置するブロックは,m×nの配置から外れてしまう。一方,移動方向の反対の端から移動量に相当する場所にはブロックが存在しなくなる。そこで外れたブロックを,その存在しなくなったブロックに,そのまま配置をする移動処理を行う。これによって,ブロックの両端が連続的に繋がっているように移動制御することができる。
たとえば3×3で配置されるブロックであって,右方向にブロックを1だけ移動させた場合,その行に位置するブロックをそれぞれ順次,1つだけ右に移動させる。そうすると,その行の右端に位置したブロックは3×3の配置からずれることとなり,その行の左端に位置したブロックは空白となる。そこで,ずれたブロック(右端に位置していたブロック)を左端に移動させる処理を実行する。
一致判定処理部14は,ブロック操作検出処理部12で検出した操作に従ってブロック移動処理部13でブロックの移動処理後,それがあらかじめ記憶された元の状態と一致しているかを判定する。
つぎに本発明のパズルゲームプログラム1の処理プロセスの一例を図3を用いて説明する。なお,以下の説明では,タブレット型コンピュータでパズルゲームプログラム1を実行する場合を説明するが,それ以外の携帯電話,PHSなどであっても同様に行える。
まずユーザは所定のコンピュータで,たとえば,タッチパネル式の表示装置72のパズルゲームプログラム1のアイコンをタップ(表示装置72を軽く叩く操作)することで,ゲームを起動させることの入力指示を行う。ゲーム制御処理部10は,この入力指示に基づいてパズルゲームプログラム1をコンピュータで起動し,(S100)。起動画面を表示装置72で表示させる。図7にパズルゲームプログラム1の起動画面の一例を模式的に示す。
ユーザはゲームを開始する場合,図7の起動画面から「ゲームを始める」をタップする。これによって,ゲーム制御処理部10は,図8に示す画面を表示装置72に表示させる。図8では,あらかじめ定められたレベル(ステージ)のパズルの情報の一覧を,ゲーム制御処理部10は,記憶装置71のパズル情報記憶部711から抽出して表示する(S110)。たとえば図8では,レベル1(ステージ1)のパズルをパズル情報記憶部711から抽出して表示している。
ここで,ユーザが異なるレベルのパズルを選択したい場合には,レベルを示す表示(「ステージ1」の表示)をタップすることで,レベルを選択する。その選択指示をゲーム制御処理部10は受け付け,選択されたレベルのパズルの情報をパズル情報記憶部711から抽出して表示させる(S110)。
図8の画面で表示されているパズルの一覧から,ユーザは遊びたいパズルを一つ選択し,タップをする。この選択指示をゲーム制御処理部10が受け付けると(S120),その選択されたパズルの情報に基づいて,問題生成処理部11が問題を生成する(S130)。この問題生成処理は,上述のように,元の状態から,任意の方向に,任意の回数だけブロックを移動させることで,問題を生成する。
たとえばS120において,図8の左下のパズルを選択した場合,図6のようにブロックを移動させる処理を実行することで,図6(i)のように問題を生成する。なお,このブロックを移動させる処理は,後述のブロック移動処理部13の処理を実行すればよい。
このようにして問題生成処理部11で問題を生成すると,ゲーム制御処理部10は,図9に示すように,問題と正解(目標とする元の状態)とを一つに表示したゲーム画面を表示装置72で表示する(S140)。この際に,正解とする元の状態を配列Aに記憶させておく。たとえば正解が図6(a)の状態とすると,配列A(m,n)には,それぞれ,A(1,1)=1,A(1,2)=0,A(1,3)=0,A(2,1)=1,A(2,2)=0,A(2,3)=2,A(3,1)=0,A(3,2)=0,A(3,3)=2を格納しておく。なお,図9では,正解を表示した状態を示したが,正解を表示せずに,ユーザからの正解の表示操作,無操作状態の一定時間の経過によって,一時的に正解を表示させるようにしても良い。これによって,正解を記憶しようとするので,記憶力も鍛えられる。
ユーザは,このゲーム画面で,ブロックを選択して上下左右方向にスワイプ(表示装置72に指を触れたまま特定の方向に移動する操作)することで,ブロックを正解の状態にあわせるように移動させ,パズルの問題を解くこととなる。
パズルゲームプログラム1において,ブロックを移動させる処理を図10のフローチャートを用いて説明する。図10のフローチャートの場合,ユーザの一度のスワイプでは1つだけ上下左右方向に移動させられる場合を示す。
図11は,パズルの表示装置72上での表現とプログラム上での表現とを模式的に示す図である。パズルが図11の状態に変形されていたとする。図11の状態は3×3のパズル(m=3,n=3)であり,左上のブロックが原点M(1,1)となり,右および下方向をそれぞれ正方向としている。またパズル上の各ブロックには,それぞれ図11に示すように色が配置されている。そのため,プログラムの処理では,ブロックの位置に対応する配列M(m,n)には,それぞれ,M(1,1)=0,M(1,2)=1,M(1,3)=2,M(2,1)=2,M(2,2)=0,M(2,3)=0,M(3,1)=1,M(3,2)=0,M(3,3)=0として値が代入されている。
まずユーザが図9のゲーム画面において,移動させるブロックを選択し上下左右方向にスワイプすると,その操作をブロック操作検出処理部12が検出をする(S150)。そうすると,ブロック操作検出処理部12は,選択されたブロックの位置とその移動方向を検出する(S300,S310)。
ここで図9でユーザが選択したブロックが(i,j)=(2,1)であり,下方向に1つ移動((x,y)=(0,1))させるとする。なお,変数(i,j)はユーザにより選択されたブロックの位置(座標)を示すものであり,変数(x,y)はスワイプさせた方向およびその移動量を示すものである。
そうすると,ブロック移動処理部13は,ブロックの移動処理を実行する。上述の場合,ブロック移動処理部13は,移動方向が上下方向なので(S320),配列X(1,1),X(2,1),X(3,1)に対してそれぞれ,M(1,1),M(2,1),M(3,1)の値を代入する(S330)。すなわちX(1,1)=0,X(2,1)=2,X(3,1)=1を代入する。
そしてブロック移動処理部13は,移動方向が下方向(正方向)であるから,カウンタa=1からa=m(m=3)になるまで,S340の処理を繰り返す。すなわちまずカウンタaには初期値1を代入し,M(1,1)=X(3,1)=1を代入する。そしてカウンタaをインクリメントしてM(2,1)=X(2−1,1)=X(1,1)=0を代入する。そしてカウンタaをインクリメントしてM(3,1)=X(3−1,1)=X(2,1)=2を代入する。これによって,新しい配列Mは,M(1,1)=1,M(1,2)=1,M(1,3)=2,M(2,1)=0,M(2,2)=0,M(2,3)=0,M(3,1)=2,M(3,2)=0,M(3,3)=0となる。これを模式的に示すのが図12である。図12(a)は移動前後の配列Mの状態,図12(b)は移動前後の配列Mに基づいてパズルで表示した場合の状態である。
また図9でユーザが選択したブロックが(i,j)=(1,1)であり,上方向に1つ移動((x,y)=(0,−1))させるとする。
そうすると,この場合,ブロック移動処理部13は,移動方向が上下方向なので(S320),配列X(1,1),X(2,1),X(3,1)に対してそれぞれ,M(1,1),M(2,1),M(3,1)の値を代入する(S330)。すなわちX(1,1)=0,X(2,1)=2,X(3,1)=1を代入する。
そしてブロック移動処理部13は,移動方向が上方向(負方向)であるから,カウンタa=1からa=m(m=3)になるまで,S340の処理を繰り返す。すなわちまずカウンタaには初期値1を代入し,M(1,1)=X(1+1,1)=X(2,1)=2を代入する。そしてカウンタaをインクリメントしてM(2,1)=X(2+1,1)=X(3,1)=1を代入する。そしてカウンタaをインクリメントしてM(3,1)=X(1,1)=0を代入する。これによって,新しい配列Mは,M(1,1)=2,M(1,2)=1,M(1,3)=2,M(2,1)=1,M(2,2)=0,M(2,3)=0,M(3,1)=0,M(3,2)=0,M(3,3)=0となる。これを模式的に示すのが図13である。図13(a)は移動前後の配列Mの状態,図13(b)は移動前後の配列Mに基づいてパズルで表示した場合の状態である。
また図9でユーザが選択したブロックが(i,j)=(1,2)であり,右方向に1つ移動((x,y)=(1,0))させるとする。
そうすると,この場合,ブロック移動処理部13は,移動方向が左右方向なので(S320),配列X(1,1),X(1,2),X(1,3)に対してそれぞれ,M(1,1),M(1,2),M(1,3)の値を代入する(S350)。すなわちX(1,1)=0,X(1,2)=1,X(1,3)=2を代入する。
そしてブロック移動処理部13は,移動方向が右方向(正方向)であるから,カウンタb=1からb=n(n=3)になるまで,S360の処理を繰り返す。すなわちまずカウンタbには初期値1を代入し,M(1,1)=X(1,3)=2を代入する。そしてカウンタbをインクリメントしてM(1,2)=X(1,2−1)=X(1,1)=0を代入する。そしてカウンタbをインクリメントしてM(1,3)=X(1,3−1)=X(1,2)=1を代入する。これによって,新しい配列Mは,M(1,1)=2,M(1,2)=0,M(1,3)=1,M(2,1)=2,M(2,2)=0,M(2,3)=0,M(3,1)=1,M(3,2)=0,M(3,3)=0となる。これを模式的に示すのが図14である。図14(a)は移動前後の配列Mの状態,図14(b)は移動前後の配列Mに基づいてパズルで表示した場合の状態である。
また図9でユーザが選択したブロックが(i,j)=(2,2)であり,左方向に1つ移動((x,y)=(−1,0))させるとする。
そうすると,この場合,ブロック移動処理部13は,移動方向が左右方向なので(S320),配列X(2,1),X(2,2),X(2,3)に対してそれぞれ,M(2,1),M(2,2),M(2,3)の値を代入する(S350)。すなわちX(2,1)=2,X(2,2)=0,X(2,3)=0を代入する。
そしてブロック移動処理部13は,移動方向が左方向(負方向)であるから,カウンタb=1からb=n(n=3)になるまで,S360の処理を繰り返す。すなわちまずカウンタbには初期値1を代入し,M(2,1)=X(2,1+1)=X(2,2)=0を代入する。そしてカウンタbをインクリメントしてM(2,2)=X(2,2+1)=X(2,3)=0を代入する。そしてカウンタbをインクリメントしてM(2,3)=X(2,1)=2を代入する。これによって,新しい配列Mは,M(1,1)=2,M(1,2)=0,M(1,3)=1,M(2,1)=0,M(2,2)=0,M(2,3)=2,M(3,1)=1,M(3,2)=0,M(3,3)=0,となる。これを模式的に示すのが図15である。図15(a)は移動前後の配列Mの状態,図15(b)は移動前後の配列Mに基づいてパズルで表示した場合の状態である。
以上のような処理を実行することで,ユーザが選択したブロックのスワイプ操作に従って,ブロックを移動する処理を行える。
このようにして移動処理を実行後,一致判定処理部14は,正解(元の状態(図6(a)の状態))と一致するかを判定する(S170)。すなわち,一致判定処理部14は,配列Mと配列Aのそれぞれの値を比較し,すべての値が一致する場合に正解と判定する。上述の場合にはそれぞれ一致しないので,次のブロック操作の検出を待機し,上述の処理を反復することとなる。
一方,一致判定処理部14におけるS170の判定の結果,正解と一致した場合には,ゲーム制御処理部10は,図16に示すクリア画面を表示装置72に表示する(S180)。そして,ユーザが次のパズルを楽しみたい場合には,図16のクリア画面における「次へ」の選択を受け付けることで,まだそのレベルのパズルがすべてクリアしていなければ(S190),ゲーム制御処理部10は次のパズルを自動的に選択し,問題生成処理部11がS130における問題の生成処理を実行する。
一方,そのレベルのパズルがすべてクリアしていれば(S190),ゲーム制御処理部10は,たとえば図17に示すレベルのクリア画面を表示装置72に表示する(S200,S210)。そして,ユーザが次のレベルのパズルを楽しみたい場合には,図17のレベルのクリア画面における「次へ」の選択を受け付けることで,ゲーム制御処理部10が次のレベルのパズルの一覧を,記憶装置71のパズル情報記憶部711から抽出して表示する(S110)。たとえばレベル1が終了したのであれば,レベル2のパズルの一覧を抽出して表示する。この状態を示すのが図18に示す画面である。
もし最終レベルまですべてのパズルを終了したのであれば(S200),ゲーム制御処理部10は,図19に示すようなゲームのクリア画面を表示装置72に表示する(S220)。
なお,上述のブロック移動処理部13におけるブロックの移動処理としては,図10の処理を示したが,1回のスワイプの操作で複数のマス目を移動可能な場合,たとえば図20に示すフローチャートの処理を用いることもできる。この場合の処理を以下に説明する。
パズルの元の状態が図6(a)の状態で,そこから図11の状態に変形されていたとする。
まずユーザが図9のゲーム画面において,移動させるブロックを選択し上下左右方向にスワイプすると,その操作をブロック操作検出処理部12が検出をする(S150)。そうすると,ブロック操作検出処理部12は,選択されたブロックの位置とその移動方向を検出する(S400,S410)。
ここでユーザが選択したブロックが(i,j)=(1,1)であり,下方向に2マス移動((x,y)=(0,2))させるとする。
そうすると,ブロック移動処理部13は,ブロックの移動処理を実行する。上述の場合,ブロック移動処理部13は,移動方向が上下方向でかつ正方向なので(S420,S430),配列X(1,1),X(2,1),X(3,1)に対してそれぞれ,M(1,1),M(2,1),M(3,1)の値を代入する(S450)。すなわちX(1,1)=0,X(2,1)=2,X(3,1)=1を代入する。
そしてブロック移動処理部13は,カウンタa=1からa=m(m=3)になるまで,S460の処理を繰り返す。すなわちまずカウンタaには初期値1を代入し,M(1,1)=X(3−|1−2|,1)=X(2,1)=2を代入する。そしてカウンタaをインクリメントしてM(2,1)=X(3−|2−2|,1)=X(3,1)=1を代入する。そしてカウンタaをインクリメントしてM(3,1)=X(3−2,1)=X(1,1)=0となる。これによって,新しい配列Mは,M(1,1)=2,M(1,2)=1,M(1,3)=2,M(2,1)=1,M(2,2)=0,M(2,3)=0,M(3,1)=0,M(3,2)=0,M(3,3)=0となる。これを模式的に示すのが図21である。図21(a)は移動前後の配列Mの状態,図21(b)は移動前後の配列Mに基づいてパズルで表示した場合の状態である。
また図9でユーザが選択したブロックが(i,j)=(3,3)であり,上方向に2つ移動((x,y)=(0,−2))させるとする。
そうすると,この場合,ブロック移動処理部13は,移動方向が上下方向でかつ負方向なので(S420,S430),まず負方向を正方向に変換する(S440)。すなわちy=m−|y|の処理を実行する。ここではy=−2なので,y=1とする。
つぎに,正方向に変換した後,ブロック移動処理部13は,配列X(1,3),X(2,3),X(3,3)に対してそれぞれ,M(1,3),M(2,3),M(3,3)の値を代入する(S450)。すなわちX(1,3)=2,X(2,3)=0,X(3,3)=0を代入する。
そしてブロック移動処理部13は,カウンタa=1からa=m(m=3)になるまで,S460の処理を繰り返す。すなわちまずカウンタaには初期値1を代入し,M(1,3)=X(3−|1−1|,3)=X(3,3)=0を代入する。そしてカウンタaをインクリメントしてM(2,3)=X(2−1,3)=X(1,3)=2を代入する。そしてカウンタaをインクリメントしてM(3,3)=X(3−1,3)=X(2,3)=0となる。これによって,新しい配列Mは,M(1,1)=0,M(1,2)=1,M(1,3)=0,M(2,1)=2,M(2,2)=0,M(2,3)=2,M(3,1)=1,M(3,2)=0,M(3,3)=0となる。これを模式的に示すのが図22である。図22(a)は移動前後の配列Mの状態,図22(b)は移動前後の配列Mに基づいてパズルで表示した場合の状態である。
また図9でユーザが選択したブロックが(i,j)=(1,1)であり,右方向に2つ移動((x,y)=(2,0))させるとする。
そうすると,この場合,ブロック移動処理部13は,移動方向が左右方向でかつ正方向なので(S420,S470),配列X(1,1),X(1,2),X(1,3)に対してそれぞれ,M(1,1),M(1,2),M(1,3)の値を代入する(S490)。すなわちX(1,1)=0,X(1,2)=1,X(1,3)=2を代入する。
そしてブロック移動処理部13は,カウンタb=1からb=n(n=3)になるまで,S500の処理を繰り返す。すなわちまずカウンタbには初期値1を代入し,M(1,1)=X(1,3−|1−2|)=X(1,2)=1を代入する。そしてカウンタbをインクリメントしてM(1,2)=X(1,3−|2−2|)=X(1,3)=2を代入する。そしてカウンタbをインクリメントしてM(1,3)=X(1,3−2)=X(1,1)=0を代入する。これによって,新しい配列Mは,M(1,1)=1,M(1,2)=2,M(1,3)=0,M(2,1)=2,M(2,2)=0,M(2,3)=0,M(3,1)=1,M(3,2)=0,M(3,3)=0となる。これを模式的に示すのが図23である。図23(a)は移動前後の配列Mの状態,図23(b)は移動前後の配列Mに基づいてパズルで表示した場合の状態である。
また図9でユーザが選択したブロックが(i,j)=(2,3)であり,左方向に2つ移動((x,y)=(−2,0))させるとする。
そうすると,この場合,ブロック移動処理部13は,移動方向が左右方向でかつ負方向なので(S420,S470),まず負方向を正方向に変換する(S480)。すなわちx=n−|x|の処理を実行する。ここではx=−2なので,x=1とする。
つぎに,正方向に変換した後,ブロック移動処理部13は,配列X(2,1),X(2,2),X(2,3)に対してそれぞれ,M(2,1),M(2,2),M(2,3)の値を代入する(S490)。すなわちX(2,1)=2,X(2,2)=0,X(2,3)=0を代入する。
そしてブロック移動処理部13は,カウンタb=1からb=n(n=3)になるまで,S500の処理を繰り返す。すなわちまずカウンタbには初期値1を代入し,M(2,1)=X(2,3−|1−1|)=X(2,3)=0を代入する。そしてカウンタbをインクリメントしてM(2,2)=X(2,2−1)=X(2,1)=2を代入する。そしてカウンタbをインクリメントしてM(2,3)=X(2,3−1)=X(2,2)=0を代入する。これによって,新しい配列Mは,M(1,1)=0,M(1,2)=1,M(1,3)=2,M(2,1)=0,M(2,2)=2,M(2,3)=0,M(3,1)=1,M(3,2)=0,M(3,3)=0となる。これを模式的に示すのが図24である。図24(a)は移動前後の配列Mの状態,図24(b)は移動前後の配列Mに基づいてパズルで表示した場合の状態である。
以上のような処理を実行することで,ユーザが選択したブロックを2マス以上ずつ移動させられる場合であっても,ブロックの移動処理が行える。
なお,図10および図20のブロックの移動処理は一例であり,ほかの処理であっても同様に実現できる。また配列を用いて処理する場合を説明したが,ポインタを用いるなど,別の方法を用いることもできる。
また,記憶装置71にパズル情報記憶部711を備える場合を示したが,備えなくても良い。この場合,m×nのパズルであることに基づいて,各ブロックの色または絵柄を任意に選択し,それをm×nの任意の位置に配置することで,パズルの元の状態を生成する。そしてそこから問題生成処理部11が問題を生成する処理を実行しても良い。この場合,色や絵柄が増えると難易度が高くなることから,難易度に応じて(たとえばレベルの値に応じて,ゲームのクリア回数に応じて),レベルの値やゲームのクリア回数が低い場合には色や絵柄の数を少なくし,難易度が高くなる(レベルの値やゲームのクリア回数が高くなる)につれ,色や絵柄の数を多くすることが好ましい。最大で,m×n種類の色や絵柄のパズルとすれば,すべてのブロックに異なる色や絵柄が配置されるので,もっとも難しい状態の問題を生成することができる。また,問題生成処理部11で,ブロックを移動させる回数を増やした方が元の状態からの変化の度合いが大きくなるので,レベルの値やゲームのクリア回数に応じて,ブロックを移動させる回数を変化させても良い。
このような処理を設けることで,パズル作成の負担を軽減し,また難易度に応じたパズルの問題を生成することができる。
また別の実施態様として,問題生成処理部11を設けなくても良い。この場合,パズル情報記憶部711に,元の状態となるパズルと,問題として出題するパズルの双方を記憶しておけばよい。これによって,問題生成処理部11を不要とするので,問題生成に要する時間が不要となり,処理をより高速に行える。
本発明のパズルゲームプログラム1によって,高齢者であっても操作がしやすく,またなじみやすいパズルゲームを構成することができる。また,難易度を適度に保つことができることから,高齢者の興味を惹きつけることができる。
1:パズルゲームプログラム
10:ゲーム制御処理部
11:問題生成処理部
12:ブロック操作検出処理部
13:ブロック移動処理部
14:一致判定処理部
70:演算装置
71:記憶装置
72:タッチパネル式表示装置
73:通信装置
711:パズル情報記憶部
10:ゲーム制御処理部
11:問題生成処理部
12:ブロック操作検出処理部
13:ブロック移動処理部
14:一致判定処理部
70:演算装置
71:記憶装置
72:タッチパネル式表示装置
73:通信装置
711:パズル情報記憶部
Claims (7)
- タッチパネル式表示装置を備えたコンピュータを,
前記タッチパネル式表示装置に表示した,m×nに配置したブロックに対する操作を検出するブロック操作検出処理部,
前記検出した操作に基づいて,その移動方向に位置する行または列のブロックを連続的に順次移動することで,前記ブロックの移動処理を行うブロック移動処理部,
前記移動後の状態のブロックの配置と,前記元の状態のブロックの配置とを比較することで一致を判定する一致判定処理部,
として機能させることを特徴とするパズルゲームプログラム。 - 前記パズルゲームプログラムは,
前記コンピュータを,さらに,
m×nに配置した元の状態のブロックに対して,任意の回数だけブロックを移動させることで問題を生成する問題生成処理部,
として機能させ,
前記ブロック操作検出処理部は,
前記タッチパネル式表示装置における,前記問題として生成されたm×nに配置したブロックに対する操作を検出する,
ことを特徴とする請求項1に記載のパズルゲームプログラム。 - 前記パズルゲームプログラムは,
前記コンピュータを,さらに,
前記パズルゲームプログラムの表示の制御を少なくとも行うゲーム制御処理部,
として機能させ,
前記タッチパネル式表示装置において,前記問題と前記ブロックの元の状態とを同時に表示する,
ことを特徴とする請求項1または請求項2に記載のパズルゲームプログラム。 - 前記問題生成処理部は,
前記ユーザのパズルゲームのクリア回数に基づいて,前記元の状態からのブロックの移動回数を変更する,
ことを特徴とする請求項2または請求項3に記載のパズルゲームプログラム。 - 前記問題生成処理部は,さらに,
前記m×nの各ブロックに対して,色または絵柄を任意に割り当てることで,前記元の状態となるブロックを生成する,
ことを特徴とする請求項2から請求項4のいずれかに記載のパズルゲームプログラム。 - 前記問題生成処理部は,さらに,
前記元の状態となるブロックを生成する際に,前記ユーザのパズルゲームのクリア回数に基づいて,前記m×nの各ブロックに対して割り当てる色または絵柄の数を変更する,
ことを特徴とする請求項5に記載のパズルゲームプログラム。 - 請求項1から請求項6のいずれかに記載されたパズルゲームプログラムを備える,
ことを特徴とするコンピュータ。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012206511A JP2014061042A (ja) | 2012-09-20 | 2012-09-20 | パズルゲームプログラム |
PCT/JP2013/068482 WO2014045676A1 (ja) | 2012-09-20 | 2013-07-05 | パズルゲームプログラムおよびコンピュータ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012206511A JP2014061042A (ja) | 2012-09-20 | 2012-09-20 | パズルゲームプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014061042A true JP2014061042A (ja) | 2014-04-10 |
Family
ID=50341002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012206511A Pending JP2014061042A (ja) | 2012-09-20 | 2012-09-20 | パズルゲームプログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2014061042A (ja) |
WO (1) | WO2014045676A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017535331A (ja) * | 2014-11-17 | 2017-11-30 | スーパーセル オーワイSupercell Oy | ユーザのやり取りを促進する電子デバイス |
JP6995231B1 (ja) | 2020-08-26 | 2022-01-14 | 株式会社あかつき | 情報処理システム、ゲームプログラム、情報処理方法 |
JP2022037990A (ja) * | 2020-08-26 | 2022-03-10 | 株式会社あかつき | 情報処理システム、ゲームプログラム、情報処理方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6149230B2 (ja) * | 2014-03-28 | 2017-06-21 | 学校法人塚本学院 | 脳機能障害者生活支援装置 |
JP6522053B2 (ja) * | 2017-06-30 | 2019-05-29 | グリー株式会社 | 制御プログラム、制御方法及びコンピュータ |
TWI675354B (zh) * | 2018-02-12 | 2019-10-21 | 洪榮昭 | 空間能力評測方法及系統 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007226297A (ja) * | 2006-02-21 | 2007-09-06 | Fujifilm Corp | 携帯機器、およびプリントシステム |
JP2009233237A (ja) * | 2008-03-28 | 2009-10-15 | Namco Bandai Games Inc | プログラム、情報記憶媒体、端末 |
-
2012
- 2012-09-20 JP JP2012206511A patent/JP2014061042A/ja active Pending
-
2013
- 2013-07-05 WO PCT/JP2013/068482 patent/WO2014045676A1/ja active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007226297A (ja) * | 2006-02-21 | 2007-09-06 | Fujifilm Corp | 携帯機器、およびプリントシステム |
JP2009233237A (ja) * | 2008-03-28 | 2009-10-15 | Namco Bandai Games Inc | プログラム、情報記憶媒体、端末 |
Non-Patent Citations (4)
Title |
---|
"Nuzzle:数字をグリグリ回してうまく並べるパズルゲーム、感謝祭の期間は無料。", APPBANK, JPN6016031972, 26 November 2008 (2008-11-26), ISSN: 0003382480 * |
"Rubik's Race", PUZZLE-APP.COM, JPN6016031977, 7 November 2011 (2011-11-07), ISSN: 0003382483 * |
"Sliding Tiles", PUZZLE-APP.COM, JPN6016031975, 19 December 2011 (2011-12-19), ISSN: 0003382482 * |
田中 哲朗: "パズル", 情報処理 第44巻 第9号, vol. 第44巻第9号通巻463号, JPN6016031973, 15 September 2003 (2003-09-15), JP, pages 921 - 926, ISSN: 0003382481 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017535331A (ja) * | 2014-11-17 | 2017-11-30 | スーパーセル オーワイSupercell Oy | ユーザのやり取りを促進する電子デバイス |
US10877646B2 (en) | 2014-11-17 | 2020-12-29 | Supercell Oy | Electronic device for facilitating user interactions with graphical objects presented on a display |
US11314397B2 (en) | 2014-11-17 | 2022-04-26 | Supercell Oy | Electronic device for facilitating user interactions with graphical objects on a display |
JP6995231B1 (ja) | 2020-08-26 | 2022-01-14 | 株式会社あかつき | 情報処理システム、ゲームプログラム、情報処理方法 |
JP2022039931A (ja) * | 2020-08-26 | 2022-03-10 | 株式会社あかつき | 情報処理システム、ゲームプログラム、情報処理方法 |
JP2022037990A (ja) * | 2020-08-26 | 2022-03-10 | 株式会社あかつき | 情報処理システム、ゲームプログラム、情報処理方法 |
US11273366B1 (en) | 2020-08-26 | 2022-03-15 | Akatsuki Inc. | Information processing system, game program, and information processing method |
Also Published As
Publication number | Publication date |
---|---|
WO2014045676A1 (ja) | 2014-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2014045676A1 (ja) | パズルゲームプログラムおよびコンピュータ | |
US10792562B2 (en) | Information processing method, terminal, and computer storage medium | |
US9446313B2 (en) | Device, game and control methods therefor | |
JP2012521603A (ja) | スライダボタン付き仮想キーボード | |
JP2016206740A (ja) | ユーザ・インタフェース・プログラム | |
JP5995909B2 (ja) | ユーザインターフェースプログラム | |
JP6062902B2 (ja) | プログラム、制御方法及び情報処理装置 | |
WO2020138201A1 (ja) | ゲームシステム、処理方法及び情報記憶媒体 | |
JP2017140342A (ja) | ユーザインターフェースプログラム、当該プログラムを備えたゲームプログラム及び制御方法 | |
JP5081399B2 (ja) | ゲーム装置、プログラム及び情報記録媒体 | |
US9446311B2 (en) | Device, game and control methods therefor | |
JP6097256B2 (ja) | 複数の画像間の画面表示をスムーズに移行させるコンピュータ・プログラム | |
WO2018043693A1 (ja) | ゲームプログラム、方法および情報処理装置 | |
JP2015097583A (ja) | タッチパネルを備えるゲーム装置、その制御方法およびプログラム | |
JP2010068970A (ja) | パズルゲームプログラムおよびパズルゲーム装置 | |
JP7427635B2 (ja) | 情報処理方法、プログラム、情報処理装置 | |
JP6560908B2 (ja) | 情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法 | |
JP2015208576A (ja) | ゲームプログラム | |
JP5854495B2 (ja) | ゲーム装置、及びゲームプログラム | |
JP6946896B2 (ja) | 電子機器、表示方法、およびプログラム | |
WO2022091746A1 (ja) | 情報処理方法、プログラム、情報処理装置 | |
JP6732864B2 (ja) | プログラム、制御方法、および、情報処理装置 | |
JP6978878B2 (ja) | パズルマッチングゲーム方法及びそれを用いたゲームシステム | |
JP2016059820A (ja) | プログラム | |
WO2015181334A1 (en) | System and method for video games |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150623 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150623 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160823 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20170321 |