説明

コンピュータゲーム装置、方法およびプログラム

【課題】将棋やチェス型のゲームについて、定石を組み替えて用いる必要性があり、思考停止を回避し、深遠な汎用性のある意味を引き出し、熟練者が初心者相手でも楽しめ、手早くいろんなパターンの駆け引きを経験できるゲームを提供する。
【解決手段】駒の移動や配置を所定の障害ルールに従って制限する障害オブジェクトを記憶する障害オブジェクト座標記憶手段と、障害オブジェクトの座標をもとに、駒の移動を制限する移動制限手段とを有する。障害オブジェクトとして、マス間を遮蔽する壁や柱、マス自体を埋める湖や丘や山などがある。盤がせまい場合、ゲームの最初から持ち駒をもつようにし、初期フェーズで王も打つようにしたり、王を打っていない側を負けにしたり、持ち駒の残っているほうを負けにしたりできる。コンピュータは、障害オブジェクトを加味した思考を行う。利用者は障害オブジェクトを独自に配置した盤を投稿できる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、日本の将棋・日本以外の将棋・チェス等、味方の駒の移動可能な座標に存在する敵の駒を座標上から消滅させられる基本ルールを有するゲーム(なお、チェスの「ポーン」にはそもそも例外的なルールがあるがこうした例外的なルールのある場合も含む)又はそれらのゲームを変形したゲーム(例えば、蜂の巣状の座標系をもつものや、座標系を縦又は横に拡大又は縮小したりしたものや、4人で対戦できるように変形したもの)を、コンピュータ又はコンピュータネットワークを介して、人対人の対戦方式もしくはコンピュータ対人の対戦方式として遊戯させるために、駒の座標(座標系が駒の可動域の定義と整合するもの)を記憶するコンピュータゲーム装置、そのための方法およびコンピュータプログラムに関する。また、盤上に、利用者が自由に障害物をおけるようにした将棋/チェス型のボードゲーム製品に関する。
【背景技術】
【0002】
従来からリバーシや将棋やチェスが、コンピュータやコンピュータネットワークを介して、人対人又はコンピュータ対人の形式で実施されてきた。こういったゲームには、コンピュータを使うと否とに関わらず、いわゆる「定石」というものが開発されており、ある程度「定石」を暗記してさえいれば、定石に潜む数学的な意味や定石の普遍的に活用できるより深遠な意味を知らなくても戦えてしまい、利用者をある種の「思考停止」に陥らせ、進化や発達を止めて退屈感を招いてしまうという弊害、特に初心者との対戦では「定石」だけで戦えてしまいおもしろくないという弊害等があった。
【0003】
また、内部において一様な座標系では、十分多様なパターンの駆け引きを、特に初心者同士の対戦では経験できないという、ほとんど知られていない問題もあった。
【0004】
リバーシについては、ボード(盤)に壁や柱を設けることで、「定石」を組み替えて用いる必要性をもたらし「思考停止」を回避してさまざまなパターンの駆け引きを手早く経験できるゲームを、発明者が開発済であったが、将棋やチェスについては、こういったものがなく、開発が求められていた。
【0005】
また、将棋やチェスは、盤の形(座標系)を変形したり壁や柱といった障害オブジェクトを置いて駒の移動を制限したりすることによるゲーム性への影響が、リバーシ以上に大きいため(たとえば、すべての駒を配置しきれないような形の座標系や、各駒の価値を十分発揮する動きが十分にとれないような/せまい障害オブジェクト構成、等)、有効なゲームの開発が困難であった。
【非特許文献1】「かべまるWalls&Pillars」 http://kabemaru.com
【発明の開示】
【発明が解決しようとする課題】
【0006】
解決しようとする課題は、将棋やチェス型のゲームについて、「定石」を組み替えて用いる必要性をもたらし、「思考停止」を回避して、そのゲームのより深遠な/汎用性の高い意味等を引き出し、熟練者が初心者相手でも楽しめ、初心者でも手早くいろんなパターンの駆け引きが経験できるゲーム(装置、方法、コンピュータプログラム、おもちゃ等)を提供することである。
【課題を解決するための手段】
【0007】
上記の課題を解決するため、本発明は、請求項1として、
味方の駒の移動可能な座標に存在する敵の駒を座標上から消滅させられる基本ルールを有するゲーム
又はそれらのゲームを変形したゲームを、
コンピュータ又はコンピュータネットワークを介して、人対人の対戦方式もしくはコンピュータ対人の対戦方式として遊戯させるために、
駒の座標を記憶するコンピュータゲーム装置であって、
駒の移動および又は配置を所定の障害ルールに従って制限する障害オブジェクトの座標を記憶する障害オブジェクト座標記憶手段と、
該障害オブジェクト座標記憶手段に記憶した障害オブジェクトの座標をもとに、前記所定の障害ルールに従って駒の移動を制限する移動制限手段と、
を有することを特徴とする、コンピュータゲーム装置、を提供する。
【0008】
ここで、「障害オブジェクト」とは、座標を占める空間として定義されるオブジェクトを含む。たとえば、8×8の座標系であるチェス盤のマスの境に配置される壁(縦・横の移動を制限)や柱(斜めの移動を制限)、マス自体に配置される池(移動目的地として止まることが不可能)や丘(移動目的地として止まることはできるが飛び越えて通過することが不可能)や山(止まることも通過することも不可能)を示すデータ構造であり、通常、現実の地形や建物や抽象的なモチーフを表現するように、座標系に1つ以上配置する。なお、マス自体に配置される所定の障害オブジェクト(例えば山)について、そのマスの所定のマス境界辺やマス境界点に壁や柱に相当する効果を自然と含むものとして障害オブジェクトのデータ構造をコンピュータ解釈することも、本発明に含む。
【0009】
ここで、「味方の駒の移動可能な座標に存在する敵の駒を座標上から消滅させられる基本ルールを有するゲーム」とは、日本の将棋・日本以外の将棋・チェス等、であるが、これに限らない。 また、チェスの「ポーン」にはそもそも例外的なルールがあるがこうした例外的なルールのある場合も含める。
【0010】
ここで、「座標」とは、例えば座標系が駒の可動域の定義(例えば、角が斜めに進めるという定義等)と整合するものをいう。
【0011】
ここで、「それらのゲームを変形したゲーム」とは、例えば、蜂の巣状の座標系をもつもの(いわゆるヘックスやレンガ状のものなど)や、座標系を縦又は横に拡大又は縮小したりしたもの(長方形等)や、非対称の形のものや、ギザギザした形のものや、立体座標にしたものや、4人で対戦できるように変形したもの等があるが、これらに限らない。
【0012】
ここで、駒の「移動」とは、座標系に配置されている駒を、駒の可動域の定義に従って一手分移動(例えば、歩なら一つ前へ移動)することをいう。
【0013】
ここで、駒の「配置」とは、座標系に配置されていない駒(将棋であれば持ち駒)を、座標系(将棋であれば9×9の盤)のいずれかの座標に置くことをいう。
【0014】
ここで、「所定の障害ルールに従って制限する」とは、例えば、通常将棋の金は、一手分の移動で斜め前にすすめるが、右斜め前のマスとの間に柱(障害)があるときは、「柱は通り抜けできない」という障害ルールに従って、その金のマスからは一手では右斜めのマスに移動できない(したがって右斜め前にある敵の駒を取ることもできない)等といったものである。その他、上で挙げたように、壁(縦/横)の障害ルール、池、丘、山の障害ルール等が例として挙げられるが、これらに限られない。
【0015】
将棋やチェス等のボードゲームの実装は多くの公知技術が利用できる。障害オブジェクトの座標は、オブジェクト指向言語のオブジェクトのリストとして記憶することもできるが、盤(座標系)を示すN次元配列変数(Nは多くの場合2)に障害オブジェクトの種類を表す値を定義して実現できる(例えば、縦壁は東西片方通行(一方のマスからもう一方のマスへのみ移動できる)は101(東から西不可)や102(西から東不可)として定義し、東西両方通行不可は103として定義する。例えば、横壁は、南北片方通行(一方のマスからもう一方のマスへのみ移動できる)は204(南から北不可)や208(北から南不可)として定義し、南北両方通行不可は212として定義する。また、例えば、柱は、東南への通行不可が301、東北への通行不可が302、西南への通行不可が304、西北への通行不可が308として定義し、それらの通行不可の組み合わせは、下2桁を足したもので定義し、例えば4方向を遮断する柱は、315等として定義する)。また、「所定の障害ルールに従って駒の移動を制限する移動制限手段」は、例えば、コンピュータ思考ルーチンの一手分解候補生成(先読みにおける生成も含む)や人間からの一手分入力(駒のドラッグドロップ等)で、移動候補や移動希望を決定した後に、その移動が可能かどうかを、まずは、移動対象となっている駒の可動域の定義により公知の可動域適合チェック方法でチェックし、ついで、移動する動線上にその移動を遮断する障害オブジェクトが存在するかどうかを上記N次元配列等でチェックすることにより機械的に制限を実現することができる。障害オブジェクトが、所定の方向の移動のみを制限する場合には、動線上に存在するかどうかだけでなく、動線の移動方向(東西南北又はその中間)を取得して、その移動方向をその障害オブジェクトが遮断するように定義されているかどうかを比較チェックすることにより制限するかどうかを正しく機械計算することができる。障害オブジェクトは、駒の移動/配置がなされる座標であるマス自体に配置することができ、当然にこの計算の対象となるが、後述する遮蔽オブジェクトは、マスとマスの隙間に配置され、遮蔽オブジェクトも同様に、この計算の対象となる。
【0016】
障害オブジェクトの存在により、駒の座標および駒種によって、移動が制限されるため、定石を組み替えて用いる必要性が生じ、戦略がより多様になり、思考停止が抑止され、多様なかけひきパターン(/問題/課題)との遭遇が容易になり、初心者との対戦も楽しめるものとなり、いろんな観点から本発明の目的が達成される。
【0017】
また、有利には、前記障害オブジェクトの少なくとも一つが、縦・横・斜めに隣接する座標間の移動を制限する遮蔽オブジェクトである。
ここで、「遮蔽オブジェクト」とは、縦・横・斜めに隣接する座標間の移動を制限するものであり、駒が置ける座標系(マスのN次元配列等)の隣接する座標(例えば、(1,1)と(2,1))間の隙間(この場合、(1.5,1))に置かれるものであり、整数で表現すべく、駒用のマスの座標系を8×8とした場合、17×17の駒および遮蔽オブジェクト両用の座標系を想定して、位置を管理することもできる。遮蔽オブジェクトの例としては、一般的な縦・横共に整列した座標系にあっては、隣接する座標間で、駒の縦もしくは横方向の移動を制限する壁オブジェクト又は駒の斜め方向の移動を制限する柱オブジェクト又はその両方であり、正六角形(ヘックスとも呼ばれ座標が蜂の巣のセル状に隣接したもの)やレンガ式(奇数段と偶数段の座標が互いに半分ずつずれて隣接したもの)の縦又は横がずれた座標系にあっては、隣接する座標間で、駒の各方向への移動を制限する壁オブジェクトであり、正三角形のセルが隙間なく隣接した座標系にあっては、壁オブジェクトであり、それぞれ立体の場合にも明らかに拡張することが可能である。なお、遮蔽オブジェクト以外の障害オブジェクト(湖(竪穴、川、海、沼等も可)、丘、山(建造物等も可))は、駒も置かれるマス自体に配置することができる。
【0018】
遮蔽オブジェクトの配置は、例えば、駒および障害オブジェクト両用の座標系を想定して実現できる。例えば、8×8のマスに対して17×17の2次元配列を用意し、駒および一般の障害オブジェクトを配置できる座標を(偶数,偶数)の座標に限定し、(奇数,偶数)の座標に縦壁を、(奇数,奇数)の座標に柱を、(偶数,奇数)の位置に横壁を、配置するかしないかする。なお、機械計算の便宜上、座標系の端や角には壁や柱を原則配置するようにしてもよい。遮蔽オブジェクトによる移動制限は、障害オブジェクトにおける制限手段を、拡張した座標系(この場合17×17)に適用することにより行うことができる。拡張した座標系(この場合17×17)では、元のマスの座標系(この場合、8×8)における「隣接するマス」の定義や駒の可動域の定義について、それらの定義で用いていたベクトル(相対座標)の成分を倍にして計算すれば、定義(すなわちデータ構造やメソッドといったモジュール)をほとんどそのまま流用することできる。例えば、「ナイト」の元の可動域の定義は、{(−2,−1),(−1,−2),・・・}であったとき、遮蔽オブジェクトを配置できるように拡張した座標系における「ナイト」の可動域の定義は、{(−4,−2),(−2,−4),・・・}となる。
元のマスの座標系がヘックスやレンガ状の場合にも、配列を同様に拡張することにより、遮蔽オブジェクト(および一般の障害オブジェクト)を、駒配置も含めて、一元的に管理することができる。例えば8×8のヘックス座標系を、17×17の遮蔽オブジェクトのおける座標系に拡張した場合、例えば、(偶数,偶数)座標を駒や一般の障害オブジェクトのおける座標とし、(奇数,偶数)座標、(奇数,奇数)座標、(偶数,奇数)座標とも壁のおける座標とすることができる。この場合、例えば、(奇数,偶数)座標が縦壁用、(奇数,奇数)座標が斜め壁(東南〜北西方向の移動制限)用、(偶数,奇数)座標が斜め壁(北東〜南西方向の移動制限)用の座標とすることができる。
【0019】
壁や柱は、座標系のマスの境界に配置できるため、マス自体に障害オブジェクトを配置する場合に比べて、きめ細かい移動制限を行うことができ、例えば自治体の境界などを、マス自体を壁にした境界等よりも的確/効率的に表現して新しい駆け引きの素材/種とすること等が可能になる。
【0020】
また、有利には、駒の座標を含む属性を記憶する駒属性記憶手段を有し、
駒属性記憶手段に記憶した駒集合のうち少なくともいくつかの駒についてゲーム開始時に座標系に配置されていない座標系外ものとして(例えば、手持ちの駒等として)記憶しており、
ゲーム開始後にプレイヤが座標系に配置することができるようにコンピュータ制御する座標系外駒配置手段を有すること
を特徴とする。
【0021】
ここで、「駒の座標を含む属性」とは、駒の座標をすくなくとも含む情報をいう。駒の座標以外に、駒の種別(ポーン、ルーク、ナイト・・・、歩、香車、・・・等)や、所属(先手側、後手側、玉側、王側、黒側、白側等)や、座標系(盤)に配置済か持ち駒かどうか、等を含んでもよい。なお、座標系(盤)に配置済かどうかは、専用のプロパティ(フラグ等)を設ける以外に、座標で判断するようにすることもできる(例えば、X座標が負の場合は、持ち駒と判断する等)。
【0022】
例えば、ゲームに登場可能な全部の駒についての情報(駒種、所属、X座標、Y座標)をリスト形式で管理し、持ち駒については、X座標が−1になるようにする。「座標系外駒配置手段」は、例えば、X座標が−1である駒を、その駒の所属に合致するプレイヤの番(フェーズ)において、ルール全体に即して座標系(盤)に配置するためのヒューマンインターフェースやコンピュータ思考ルーチンとして、本発明によれば、明らかに実現可能である。
【0023】
味方の駒の少なくともいくつかは初期配置されておらず駒がおけるようになっていることにより、戦略や局面やかけひきパターンのさらなる多様性をもたらし、また、配下駒の多いゲームが、障害物の多い/狭い座標系でも成立しやすくなる。
【0024】
また、有利には、前記座標系外駒配置手段が、所定のフェーズ以降、すでに座標系に配置された該プレイヤ所属の駒の座標に隣接しない座標に、該プレイヤに所属する駒を座標系外から配置できないようにコンピュータ制御すること
を特徴とする。
ここで、「所定のフェーズ」とは、例えば、各プレイヤ1手目、2手目又はN手目等である。1手目以降の場合は、例えば、すでになんらかの味方の駒(例えば、王だけ)がゲームの開始時点から座標系に配置されており、1手目以降に座標系外(持ち駒)から配置するときにその味方駒のいずれかに隣接するように配置しなければならない等である。2手目以降の場合は、例えば、1手目に自由な座標に配置した味方の駒(例えば、王)に隣接するように、座標系外からさらに配置するならば、配置しなければならない等である。それ以上のN手目以降もNに応じた戦略性に対する効果が発生する。また、「所定のフェーズ」を、「相手方が王を置いた以降の手番」としたり、「両方が王を置いた以降の手番」としたり、「相手方の陣地に最初に駒を配置した以降の手番」としたり、することもでき、いずれにしてもゲーム性を高めるような設定とすることができる。また、別の所定の第二のフェーズ以降にこの制限を廃止するという制御を含んでもよい。
【0025】
ここで、「該プレイヤ所属の駒の座標に隣接しない座標」とは、1)その駒が王(上下左右斜めの全方向に1マスすすめる)であったとしたならばその座標から移動に2手以上かかる座標、と定義したり、2)プレイヤ所属のその駒が移動に2手以上かかる座標(浮き駒となる座標)、と定義したり、3)障害オブジェクトや遮蔽オブジェクトの存在を考慮せずにその駒が王であったとしたならばその座標からの移動に2手以上かかる座標、と定義したりする等できる。いずれも、ゲーム性が高くなるように調整して組み合わせることができる。
【0026】
採用した上記隣接の定義、配置されている駒の座標や所属、配置されている味方駒の可動域および障害オブジェクト(遮蔽オブジェクトを含む)の配置状況を参照して、味方駒に隣接していると自動計算により決定できる場合には座標系外からの配置を認め、そうでない場合にはその配置を認めないよう、所定のフェーズ以降に機械制御することにより、実現することができる。
【0027】
これにより、駒が、例えば初期配置が終わるまで、自駒に接する位置にしかおけないため、急に/非現実的に、王(以降、チェス等でキングと呼ばれる場合も含めて単に「王」という)が敵から迫られる可能性を低くすることができ、現実の兵站等における制約をある程度モデル化したものとすることができ、現実の問題に沿った興味深いゲームとすることができる。
【0028】
また、有利には、座標系と障害オブジェクトとの構成上および其の他の所定のルール上配置できなくなるまで、該プレイヤの番に、該プレイヤに所属する座標系外の駒を、該プレイヤに配置させるようコンピュータ制御する初期配置フェーズを実施するようコンピュータ制御すること
を特徴とする。
【0029】
ここで、「座標系と障害オブジェクトとの構成上および其の他の所定のルール上配置できなくなるまで」とは、座標系の容量(盤のせまさ)、採用した上記隣接の定義、配置されている駒の座標や所属、配置されている味方駒の可動域、障害オブジェクト(遮蔽オブジェクトを含む)の配置状況、その他の基本ルール(例えば、将棋では動けない駒がおけなかったり、打ち歩詰めが禁止されていたりする)の一部又は全部を所定の遵守方針で遵守して配置できなくなるまで、という意味である。
【0030】
ここで、「初期配置フェーズ」とは、座標系外(持ち駒)から配置できる限り配置させるようコンピュータ制御する(パスや、移動(や敵をとること)をさせない)フェーズをいう。
【0031】
初期配置フェーズかどうかは、例えば、ゲーム開始時にセットされかつ一手毎に初期配置フェーズ解除条件(例えば両プレイヤとも座標系外からの配置ができなくなったこと)を検出してリセットされるフラグ等により判断する。配置する余地があるかないかの判断は、例えば、配置可能性の全探索(座標系、障害オブジェクト、駒座標、ゲームで採用する其の他の所定のルールを参照しながらの全可能性の探索(O(座標系外の駒数×座標系のサイズ)))で判断することができる。
【0032】
これにより、派遣兵力の全体を(嵐を避ける等の目的で)島に上陸させる必要がある等といった、現実的な制約に対応したものとなり、そういった制約を加味した新たな戦略性が生まれるとともに、さらに現実の問題に即した興味深いゲームとすることができる。
【0033】
また、有利には、前記初期配置フェーズにおいて、所定の駒を配置していないプレイヤの負けとなるようにコンピュータ制御すること
を特徴とする。
【0034】
ここで、「所定の駒」としては、例えば、王、玉、キング等とすることができるが、他の駒/駒集合にすることもできる。
【0035】
ここで、「負け」とは、そのゲームが「勝ち」に比べて不利に終了すること等である。したがって、獲得点数が勝者に比べて相対的に低くなる場合も含む。また、国盗りゲームの一環としてゲームを行っている場合には、国盗りゲーム自体が決するわけではない。
【0036】
ここで、「初期配置フェーズにおいて、所定の駒を配置していない」とは、初期配置フェーズの終了時に配置がされていないこと等をいう。
【0037】
例えば、座標系外から駒がおけなくなっているかどうかを初期配置フェーズにおいて一手毎に全探索等で検出し、座標系外から駒がおけなくなっている場合に、その「所定の駒」が配置されているかどうかをその駒の座標等から決定して、配置されていない場合にゲーム終了フラグを立てて所定のゲーム終了ルーチンにジャンプする、などといったコンピュータ制御により実現することができる。
【0038】
これにより、例えば、王等を置いていないプレイヤが反則負けとなるようにすることができ、相手の王等がおかれそうなところを読んで先まわりして駒を配置したりして、相手の戦術を邪魔する等の駆け引きを楽しむことができる。
【0039】
また、有利には、該プレイヤの座標系外の駒がなくなるまで、該プレイヤの番に、該プレイヤが、座標系外の駒を配置するか、敵の駒を取るか、パスするか、のいずれかのみを実施できるようにコンピュータ制御することを
を特徴とする。
【0040】
ここで、「座標系外の駒がなくなるまで」とは、いわゆる持ち駒がある状態をいう。ただし、上記「初期配置フェーズ」においてのみ、このようなコンピュータ制御をすることも本発明に含める。
【0041】
ここで、「座標系外の駒を配置するか、敵の駒を取るか、パスするか、のいずれかのみを実施」とは、座標系外の駒を配置できたり、敵の駒を取れたりする場合には、単なる移動を認めず、配置か取る以外ではパスのみを認めることを意味する。
【0042】
座標系外の駒があるかないかは、上述のように駒データリストにより機械判断でき、このような場合に単なる移動を認めないよう制御することが明らかに実施可能である。
【0043】
これにより、例えば初期配置段階などで単なる移動を認めないことによって、配置の決断に責任をもたせ、緊張感を出すことが可能になる。また、「動かすぐらいなら最初からそこに置いて下さい」、という戦略の高度性を要求できる。
【0044】
また、さらに有利には、前記プレイヤが、座標系外の駒を配置できるか、敵の駒を取れるかする場合には、パスできないようにコンピュータ制御することを特徴とする。
ここで、「座標系外の駒を配置できるか、敵の駒を取れるかする場合には、パスできないようにコンピュータ制御する」とは、上記「初期配置フェーズ」においてのみ、このようにコンピュータ制御をすることも含む。
【0045】
座標系外の駒を配置できるかどうかの決定や、敵の駒を取れるかどうかの決定は、座標系の定義や、障害オブジェクトの配置や、現在の持ち駒(座標系外の駒)や、座標系内の駒配置や、ゲームで採用した其の他の所定のルールを参照しながら、当業者であれば、本発明により、コンピュータプログラムで容易に全探索して行うことができる。
【0046】
このような場合にパスできないことにより、例えば初期配置段階等で先読みがさらに深く成立し、ゲームの戦略性がより高まる。
【0047】
また、有利には、前記プレイヤが、座標系外の駒が残っている状態で、該プレイヤの番に、座標系外の駒を配置もできず、敵の駒も取れない場合に、負けとなるようにコンピュータ制御すること
を特徴とする。
【0048】
ここで、「座標系外の駒が残っている状態で、該プレイヤの番に、座標系外の駒を配置もできず、敵の駒も取れない場合に、負けとなるようにコンピュータ制御する」とは、上記「初期配置フェーズ」においてのみ、このようにコンピュータ制御をすることも含む。
【0049】
座標系外の駒を配置できるかどうかの決定や、敵の駒を取れるかどうかの決定は、前述のように、当業者であれば、本発明により、コンピュータプログラムで容易に全探索して行うことができる。
【0050】
これにより、勝ちのパターン(負けのパターン)が読みやすくなり/多様になり、さらに緊張感を高める/ゲーム性を高めることができる。
【0051】
また、有利には、初期状態において、すくなくとも一方のプレイヤのすべての駒を座標系外として記憶すること
を特徴とする。
【0052】
ここで、「すくなくとも一方の」とは、両方のプレイヤのすべての駒を座標系外として初期状態(ゲーム開始時)において記憶する場合も含む。すなわち、初期状態において、駒が一つも盤上にないことを含む。
【0053】
これは、例えばすべての駒データのX座標を−1にすること等により実現できる。
【0054】
これにより、戦略・戦術の自由度が高くなり、戦略・戦術をすばやく表現してその優劣を決することが可能となり、プレイ時間が節約できる。
【0055】
また、有利には、該プレイヤに所属する座標系外の所定の駒(例えば、王、玉、キング等)を、該プレイヤの最初の番に、該プレイヤに配置させるようコンピュータ制御することを特徴とする。
【0056】
ここで、「所定の駒」とは、例えば、王、玉、キング等が考えられるが、飛車や角やクイーンであってもよく、その他の駒種であってもよい。どの駒を「所定の駒」とするかによってゲーム性に一定の変化があり、戦略も多様になる。
【0057】
ここで、「最初の番」とは、ゲーム開始後の各プレイヤの一手目である。
【0058】
このような制御は、コンピュータ思考ルーチンやヒューマンインターフェースにおいて、最初の番における他の駒操作を認めないようにするコンピュータプログラムにより、当業者が、本発明により公知技術を組み合わせて、明らかに実現することができる。
【0059】
これにより、最初の一手から戦略・戦術の要部をプレイヤに表現させることになり、戦略的思考を要求する度合いがさらに高まり、その緊張感によりゲームへの興味をさらに高めることができる。
【0060】
また、有利には、コンピュータがプレイヤを担当する対戦方式である場合に、コンピュータの番において、コンピュータに所属する駒を、後に該駒が座標系と障害オブジェクトとの構成上動ける座標数の多い座標に、優先的に移動又は配置するようコンピュータ制御すること
を特徴とする。
ここで、「後に該駒が座標系と障害オブジェクトとの構成上動ける座標数の多い座標」とは、移動や配置の結果として駒が位置することになる座標からのその駒種による可動域が広いことをいい、例えば、角やビショップを、斜め方向に障害オブジェクトが少ない座標に優先的に配置したり移動したりすること等を含む。
【0061】
ここで、「優先的に移動又は配置」とは、例えば、「後に該駒が座標系と障害オブジェクトとの構成上動ける座標数の多い座標」への移動や配置を伴う駒操作(配駒)候補(手候補、解候補、等)に相対的に高い評価値(又は評価観点ごと重み)を与えて探索(公知のMIN−MAX探索等)すること等を含む。
【0062】
これは、例えば、駒操作後の座標から該駒が(座標系と障害オブジェクトとの構成上)動ける座標数を単純に数え上げる候補評価ルーチン(プログラム)等によって、本発明により、実現可能である。操作対象となる駒だけでなく、外駒操作後の味方駒全体の(座標系および障害オブジェクトの構成を考慮した)総可動座標数をかわりに評価基準にしてその駒操作候補を評価することにより、味方全体の総合的な機動力を優先したコンピュータ思考ルーチンも可能となる。
【0063】
これにより、障害物の多い座標系において駒の活きやすいコンピュータ思考ルーチンが可能になる。
【0064】
また、有利には、コンピュータがプレイヤを担当する対戦方式である場合に、コンピュータの番において、コンピュータに所属する駒を、コンピュータに所属する所定の駒(例えば、王、玉、キング等)の座標から相手に所属する所定の駒(例えば、玉、王、キング等)の座標に、一つ又は複数の障害オブジェクトを迂回して至る経路となる座標上に、優先的に移動又は配置するようコンピュータ制御すること
を特徴とする。
【0065】
ここで、「所定の駒」とは、例えば、王、玉、キングとしてもよいが、飛車や角やクイーンなどの他の重要な駒も、評価への重みを落としたりして「所定の駒」とすることもできる。
【0066】
ここで、「迂回して至る経路となる座標」とは、座標系の単なる最短距離を考慮した動線ではなく、障害オブジェクトの存在により迂回が必要となっている動線上に優先的に味方駒を配置して、主戦場に効率的に味方の駒を多く配置する趣旨である。
【0067】
これは、例えば、味方王から敵王へ障害オブジェクトを迂回して到達する極小となる動線をいくつか求め、その動線上の座標への移動を伴う駒操作候補を高く評価する候補評価ルーチン(プログラム)等を、本発明により、当業者が明らかに実現することができる。なお、より重要な動線への移動をより高く評価するなどすることも、コンピュータプログラムで実現可能である。
【0068】
これにより、自王等を守りながら敵王等を攻める、効率的な配駒が、コンピュータ思考ルーチンで可能になる。
【0069】
また、有利には、1つ又は複数の障害オブジェクトを配置した座標系を、利用者がインターネットを介して作成又は登録できるようコンピュータ制御する利用者製座標系受信手段を有することと、
利用者製座標系受信手段により受信した該座標系の障害オブジェクトの座標を障害オブジェクト座標記憶手段に記憶することと
を特徴とする。
【0070】
ここで、「1つ又は複数の障害オブジェクトを配置した座標系」とは、利用者が、自分の住んでいる地域の景勝や地形(自然の形や自治体境界線等)、興味をもった城・ビル等の建造物や幾何学模様や生物等をモチーフとしてその形状に沿って一つ又は複数の障害オブジェクトを配置した様々な輪郭を有しうる盤(座標系)である。
【0071】
利用者製座標系受信手段は、例えば、DBMSと連携したインターネットサーバーとして、本発明によれば、公知の技術により実装することができる。利用者は、Webブラウザなどのクライアントソフトにより、インターネットを介してサーバーにアクセスし、HTTP等により座標系データ(障害オブジェクトの配置を含む)をサーバーに送信し、サーバーがそのプロトコルで受信して、解釈するように構成することができる。利用者による、座標系の設計、障害オブジェクトの配置、初期駒配置の設定などといった作業は、Webブラウザではなく、ActiveXやJAVA(登録商標)アプレットやWindows(登録商標)アプリケーション等として実装された専用の編集&投稿ソフトウエアによって実施することもできる。サーバーサイドで、こういった編集や投稿を補助する機能(HTML+サーバーサイドプログラム)を実現することもできる。
【0072】
こうして利用者からの投稿を募ることにより、遊べる戦略が多くなり、興味をそそりやすい現実の地形等の網羅性が高まるようになる。また、利用者側としては、自分の思考(生きた地域への認識等)の証を公的なゲームへと簡単に昇華することができるようになり、公的知識ベースへの参加意識が高まり、ゲーム自体の認知度や興味も高まっていく効果がある。
【0073】
本発明は、また、日本の将棋・日本以外の将棋・チェス等、
味方の駒の移動可能な座標に存在する敵の駒を座標上から消滅させられる基本ルールを有するゲーム
又はそれらのゲームを変形したゲーム(例えば、蜂の巣状の座標系をもつものや、座標系を縦又は横に拡大又は縮小したりしたものや、4人で対戦できるように変形したもの)を、
コンピュータ又はコンピュータネットワークを介して、人対人の対戦方式もしくはコンピュータ対人の対戦方式として遊戯させるために、
駒の座標(座標系が駒の可動域の定義と整合するもの)を記憶するコンピュータゲームの制御方法であって、
駒の移動および又は配置を所定の障害ルールに従って制限する障害オブジェクト(座標を占める空間として定義されるオブジェクトも含む)の座標を記憶する障害オブジェクト座標記憶ステップと、
該障害オブジェクト座標記憶手段に記憶した障害オブジェクトの座標をもとに、前記所定の障害ルールに従って駒の移動を制限する移動制限ステップと、
を有することを特徴とする、コンピュータゲーム制御方法を提供する。
【0074】
本発明は、また、日本の将棋・日本以外の将棋・チェス等、
味方の駒の移動可能な座標に存在する敵の駒を座標上から消滅させられる基本ルールを有するゲーム
又はそれらのゲームを変形したゲーム(例えば、蜂の巣状の座標系をもつものや、座標系を縦又は横に拡大又は縮小したりしたものや、4人で対戦できるように変形したもの)を、
コンピュータ又はコンピュータネットワークを介して、人対人の対戦方式もしくはコンピュータ対人の対戦方式として遊戯させるために、
駒の座標(座標系が駒の可動域の定義と整合するもの)を記憶するコンピュータプログラムであって、
駒の移動および又は配置を所定の障害ルールに従って制限する障害オブジェクト(座標を占める空間として定義されるオブジェクトも含む)の座標を記憶する障害オブジェクト座標記憶制御と、
該障害オブジェクト座標記憶手段に記憶した障害オブジェクトの座標をもとに、前記所定の障害ルールに従って駒の移動を制限する移動制限制御と、
をコンピュータに実施させることを特徴とする、コンピュータプログラムを提供する。
【発明の効果】
【0075】
請求項1、請求項15および請求項16の発明では、障害オブジェクトの存在により、駒の座標および駒種によって、移動が制限されるため、定石を組み替えて用いる必要性が生じ、戦略がより多様になり、思考停止が抑止され、多様なかけひきパターン(/問題/課題)との遭遇が容易になり、初心者との対戦も楽しめるものとなり、いろんな観点から本発明の目的が達成される。
【0076】
請求項2の発明では、壁や柱は、座標系のマスの境界に配置できるため、マス自体に障害オブジェクトを配置する場合に比べて、きめ細かい移動制限を行うことができ、例えば自治体の境界などを、マス自体を壁にした境界等よりも的確/効率的に表現して新しい駆け引きの素材/種とすること等が可能になる。
【0077】
請求項3の発明では、味方の駒の少なくともいくつかは初期配置されておらず駒がおけるようになっていることにより、戦略や局面やかけひきパターンのさらなる多様性をもたらし、また、配下駒の多いゲームが、障害物の多い/狭い座標系でも成立しやすくなる。
【0078】
請求項4の発明では、駒が、初期配置が終わるまで、自駒に接する位置にしかおけないため、急に/非現実的に王やキングに迫られる可能性をひくくすることができ、現実の兵站等における制約をある程度モデル化したものとすることができ、現実の問題に沿った興味深いゲームとすることができる。
【0079】
請求項5の発明では、派遣兵力の全体を(嵐を避ける等の目的で)島に上陸させる必要がある等といった、現実的な制約に対応したものとなり、そういった制約を加味した新たな戦略性が生まれるとともに、さらに現実の問題に即した興味深いゲームとすることができる。
【0080】
請求項6の発明では、例えば、王等を置いていないプレイヤが反則負けとなるようにすることができ、相手の王等がおかれそうなところを読んで先まわりして駒を配置したりして、相手の戦術を邪魔する等の駆け引きを楽しむことができる。
【0081】
請求項7の発明では、例えば初期配置段階などで単なる移動を認めないことによって、配置の決断に責任をもたせ、緊張感を出すことが可能になる。また、「動かすぐらいなら最初からそこに置いて下さい」、という戦略の高度性を要求できる。
【0082】
請求項8の発明では、このような場合にパスできないことにより、例えば初期配置段階などで先読みがさらに深く成立し、ゲームの戦略性がより高まる。
【0083】
請求項9の発明では、勝ちのパターン(負けのパターン)が読みやすくなり/多様になり、さらに緊張感を高める/ゲーム性を高めることができる。
【0084】
請求項10の発明では、戦略・戦術の自由度が高くなり、戦略・戦術をすばやく表現してその優劣を決することが可能となり、プレイ時間が節約できる。
【0085】
請求項11の発明では、最初の一手から戦略・戦術の要部を表現させることになり、戦略的思考を要求する度合いがさらに高まり、その緊張感によりゲームへの興味をさらに高めることができる。
【0086】
請求項12の発明では、障害物の多い座標系において駒の活きやすいコンピュータ思考ルーチンが可能になる。
【0087】
請求項13の発明では、自王等を守りながら敵王等を攻める、効率的な配駒が、コンピュータ思考ルーチンで可能になる。
【0088】
請求項14の発明では、遊べる戦略が多くなり、興味をそそりやすい現実の地形等の網羅性が高まるようになる。また、居住地域への愛着や思い、生活の記憶や旅行の証を、誰もが、みんなが遊べるゲームの問題・公的な知識へと昇華することができるようにする。
【発明を実施するための最良の形態】
【0089】
本発明を、障害オブジェクト(壁、柱、湖(海、川)、山)がさまざまな形状の盤上に存在しうるタイプのチェス及び将棋を人対人又は人対コンピュータの対戦形式で遊べるようにした、サーバー・クライアント型システム(Walls&PillarsChess)として実現した。サーバーは、JAVA(登録商標)サーブレットであり、クライアントは、JAVA(登録商標)アプレットである。クライアントハードウエアとしては、PCと携帯端末(携帯電話を含む)に対応している。サーバーは、新たな盤(大きさ、形状、障害オブジェクトの配置を利用者が設計したもの)の投稿を利用者のクライアントから受け付けて、他の利用者やコンピュータと対戦のために利用者間で共有できる機能を有している。
【実施例1】
【0090】
図1は、本発明の実施例としての物理的な全体構成を示した概略図である。
サーバーが、インターネットを介して、複数のプレイヤ(1〜N)の複数のクライアント端末に接続されている。
クライアント端末のいくつかはPC端末であり、いくつかは携帯電話である。サーバーもクライアント端末も、コンピュータとしての一般的な構成を備えている。クライアント側の不揮発メモリには、ゲームのセッション管理のためのIDや、駒画像などのローカルリソースをサーバーからダウンロードさせて蓄積しており、プレイヤ(利用者)は、このクライアント端末を介して、他のプレイヤと対戦したり、サーバー内のコンピュータ思考プログラムと対戦したりすることができるように構成されている。なお、実施例のシステムは将棋とチェスの両用であり、利用者は盤の選択時に将棋かチェスかを選択できるが、将棋の場合は駒の手前方向への移動が制限される場合が多いため、将棋にふさわしくない盤は、盤ごとに「チェス用」などといった推奨がされている。
【0091】
サーバーには、CPU1および主記憶2をはじめとする一般的な構成を備えており、クライアント端末からの受信内容を記憶したり処理したり処理結果をクライアント端末に送信したりすることができる。受信内容や処理結果の一部は、不揮発記憶装置に記憶されており、サインアップ/ログイン/ログアウト、ゲームの開始/中断/再開/終了、ハイスコアの管理、利用者(多くはプレイヤでもある)から投稿された盤(独特の形状と障害物を有しうる)の登録と利用(利用者間共有)、を可能にしている。また、不揮発記憶装置には、OSのブートイメージや仮想記憶域などシステム領域の他、本発明のコンピュータプログラムやデータファイル(プログラムに関連するデータ構造を含む設定ファイルやデータベースファイル)の一部であり図2に関して後述するサーバー主記憶内容のコピーを有しており、サーバーの柔軟な運用(停止、保守、再開、等)を可能にしている。
【0092】
図2は、サーバーの主記憶に記憶される、本発明の実施例としてのコンピュータプログラム及び関連するデータ構造の主な構成を示した概略図である。
サーバーの主記憶には、OSのシステム領域等の他、本発明の将棋/チェスゲームプログラム(一部はデータ構造として表現されているもの)が格納されている。
【0093】
利用者製座標系受信手段21は、利用者のクライアント端末からインターネットを介して投稿された新しい座標系(一つ以上の障害物(障害オブジェクト)が配置されうるさまざまな形状の将棋盤/チェス盤)をTCP/IPプロトコルで受信し、不揮発記憶装置にその受信データ(座標系+障害オブジェクト)を格納・登録して、障害オブジェクト座標記憶手段22によるその受信データの読み込み(利用者間での座標系(盤(以下、障害物を含むものを意味する))の共有)を可能にする。
【0094】
障害オブジェクト座標記憶手段22は、不揮発記憶装置に管理された座標系(盤)を読み込んで、移動制限手段23の扱いやすい形式で、その座標系データを記憶する。読み込む座標系(盤)は、利用者が投稿してサーバーに登録されていた座標系集合と、運用開始時からサーバーに登録されていた基本的な座標系集合との中から、プレイヤにより選択されたものが対象になる。
【0095】
移動制限手段23は、ゲーム制御及びルール適用手段24による制御及びデータ提供(移動希望情報の提供等)の下、障害オブジェクト座標記憶手段22に記憶された障害オブジェクト座標(図3)を参照しながら、図4に関して後述する方法により、駒移動の制限を行う。
【0096】
ゲーム制御及びルール適用手段24は、図5および図9に関して後述する中央制御手段であり、他の手段(21、22、23、25、26、27、28)をコントロールし、他の手段からデータ(利用者が投稿した盤に付加した付加ルールも含む)や制御情報を取得したりながら、ゲームの全体制御を行い、かつゲームで採用しているルール全体(駒の可動域の定義や其の他のルール定義25に格納されている基本ルールや障害ルール、ゲーム制御及びルール適用手段24が内蔵しているゲーム制御用の基本ルール(初期配置フェーズの一般的な振る舞いを含む)や記号解釈用の基本ルール、盤に関連づけられている付加ルール(初期配置フェーズの特別な振る舞いを含む)、等)を適用していく。
【0097】
駒の可動域定義及び其の他ルール定義25は、駒の可動域の定義(ゲーム制御用基本ルールの一部)や其の他のルール(主に障害ルール)の定義をコンピュータ可読の記号列(データやスクリプト)に置き換えて記憶しているものであり、クイーンの可動域や遮蔽オブジェクトの移動制限効果などといった、簡単な記号列で表現しつくしがたい定義については、ゲーム制御及びルール適用手段24に、特定の簡単な記号列に対して既定の複雑な解釈をするための記号解釈用基本ルール(プログラムコード又は実行スクリプト)として実装している。これは当業者が公知の手法で実現可能である。
【0098】
駒属性(座標含)記憶手段26は、図6に関して後述する、駒の属性を記憶している手段であり、ゲーム制御及びルール適用手段24によるデータ提供及び制御の下、駒の座標や帰属といった、ゲームの主要な状態を記憶するものである。
【0099】
座標系外駒配置手段27は、ゲーム制御及びルール適用手段24による制御及びデータ提供の下、座標系外にある駒(持ち駒)を、座標系内に配置する手段であり、配置した結果となる駒属性(座標を含む)等を返す。これは当業者が公知の手法で実現可能である。
【0100】
コンピュータ思考手段28は、図7および図8に関して後述するコンピュータの思考ルーチンを提供する手段であり、ゲーム制御及びルール適用手段24によるデータ(盤や駒やフェーズの情報等)の提供及び制御の下、必要に応じて、コンピュータとしての思考結果を返す。
【0101】
図3は、本発明の実施例としての障害オブジェクト座標記憶手段22の概略図である。
【0102】
右はメモリ上で、9×9の整数型2次元配列のデータ構造であり、左はそれによって表現される4×4のマス座標系(盤(障害オブジェクトを含む))の概要である。
【0103】
図3右の数値315は、すべての斜め方向(東南1、東北2、西南4、西北8の組み合わせ(足し算)でコード化される方向)の移動を遮断する柱を示す。
【0104】
図3右の数値212は、すべての縦方向(北4、南8の組み合わせ(足し算)でコード化される方向)の移動を遮断する横壁、数値103は、すべての横方向(東1、西2の組み合わせ(足し算)でコード化される方向)の移動を遮断する縦壁、をそれぞれ表す。
【0105】
図3右の数値400は、そこに障害オブジェクトである湖があり、駒を配置したり、駒を移動(進入して停止)したりできないことを表す。
【0106】
図3右の数値500は、そこに障害オブジェクトである山があり、駒を配置したり、駒を移動したりできない(丘でなく山なので、進入も飛角香等の通過もできない)ことを表す。
【0107】
図3右の数値000は、そこに遮蔽オブジェクトも一般の障害オブジェクトも(さらには駒も)存在しないことを示す。
【0108】
図3右の数値の下の下線は、本発明に特徴的な障害オブジェクトの存在を強調している。
【0109】
図3左は、ゲーム時における盤の表示例を示したものであり、山や湖のアイコン、壁や柱が、図右のデータ構造にあわせて表示されている。なお、角や端の柱は+ではなく美観のため、カギ状又はT字上に表示している。
【0110】
図4は、本発明の実施例としての移動制限手段23のデータ構造とその制御ロジックの概略図である。
【0111】
図3の状態にさらにクイーンの駒(Q=016)とキングの駒(K=015)を配置した状態で、クイーン(Q)の可動域を、障害オブジェクトや座標系の外壁や他の駒(ここではK=015)がどのように制限するかを、Qからの8方向の矢印を長方形枠及び楕円が遮断する様子として示している。
【0112】
可動域のうち、各方向の遮断される領域は、プログラムにより、その方向の可動域を1マスづつ遠くへと2次元配列上を走査し、その走査線(図では矢印)上に障害オブジェクト(外壁など遮蔽オブジェクトも含む)や他の駒がないかチェックしていくことにより求めている。
【0113】
右図は、クイーン(Q)から全方向に走査した結果としての可動域を矢印で示したものである。キング(K)の座標は、そのキングが味方の駒であるため可動域には入らない。
【0114】
図5は、本発明の実施例としてのゲーム制御及びルール適用手段24の概略図である。
【0115】
将棋やチェスとしての一般的なゲーム制御手段241は、プログラムであり、将棋やチェスとしての公知のコンピュータゲーム制御(すなわち、指し手(番)の交代、持ち時間による制限、千日手制御、打ち歩詰め禁止といったゲーム制御用基本ルールの適用や、記号解釈用基本ルールの適用、等)を実施する。
【0116】
初期配置フェーズの開始と終了の制御手段242は、初期配置フェーズの開始と終了を制御する。すなわち、開始と終了の所定の条件を他の手段(243,244,245)等と連動して検出し、初期配置フェーズであることを示すフラグをセット/リセットする。初期配置フェーズの終了時(リセット時)には、持ち駒が残っているか、王(又はキング)が配置されているかの検査手段245をトリガして、本発明に特有のルール(例えば、初期配置フェーズ終了時に王(又はキング)が配置(別の、付加ルールでは、すべての味方駒が配置)されていなければならない、等)により勝敗が決していれば、ゲーム制御手段241にその旨を伝達し、対戦が終了することになる。
【0117】
指し手の持ち駒を配置可能かどうかの計算手段243は、現在の番である指し手が、次の一手で持ち駒(座標系外の味方駒)を座標系(盤)に配置可能かどうかを計算する。計算に際しては、座標系の形状、障害オブジェクトの配置状況、他の駒の配置状況、ゲームで採用した其の他の所定のルール等を参照しながら、全探索(全持ち駒×全座標の探索)により決定する。
【0118】
指し手が相手の駒をとれるかどうかの計算手段244は、現在の番である指し手が、次の一手で敵の駒を一つでもとれる状況かどうかを計算する。計算に際しては、同様に、座標系の形状、障害オブジェクトの配置状況、他の駒の配置状況、ゲームで採用した其の他の所定のルール等を参照しながら、全探索(全配置済駒の全可動域の探索)により決定する。
【0119】
持ち駒が残っているか、王(又はキング)が配置されているか、の検査手段245は、初期配置フェーズの最後にトリガされ、初期配置フェーズ終了時にみたされていなければならないルール(デフォルトのゲーム制御用基本ルールをベースに、付加ルールがオーバーライドしたルール。持ち駒が残っていてはいけない/王(又はキング)が配置されていなければならない/等)の充足状況を、プログラムにより機械検査する。これを介して、持ち駒が残っているほうが不当に有利となったり、王(又はキング)が配置されないかぎり負けが成立しなかったり、という理不尽やゲーム性の欠如を排除している。
【0120】
図6は、本発明の実施例としての駒属性記憶手段26をプログラムソースコードにより説明した図である。
【0121】
図はチェスの白黒各16駒(計32駒)についてのすべての、駒番号(駒を識別する番号)、駒種(1:キング(K)、2:クイーン(Q)、など)、駒所属(1:白、2:黒)、X座標(−1:初期配置フェーズでまだ配置されていない駒、それ以外:X座標の値)、Y座標(Y座標の値)、駒有効性(とられたことがない駒かどうか(将棋ではこれは常に1))を記憶している。
【0122】
実際には、このソースコードで定義された数値が、主記憶に2次元配列のデータ構造として記憶され、一手毎に更新され、ゲームの主要な状態データを構成する。
【0123】
なお、駒の座標は、この駒属性記憶手段26から、ゲーム制御およびルール適用手段24を介して、移動制限手段23のワークエリアにおけるデータ構造(図4)、コンピュータ思考手段28のワークエリアにおけるデータ構造(図8)、座標系外駒配置手段27の図示しないデータ構造、等に反映されて、各所で参照され、そこで更新された内容が、ゲーム制御およびルール適用手段24を介して、この駒属性記憶手段26に反映される。
【0124】
図7は、本発明の実施例としてのコンピュータ思考手段28の概略説明図である。
【0125】
公知の各種アルゴリズムの実装281は、ミニマックス法や各種の枝狩り法により、限られたリソース(時間、メモリ、計算量)で、所定のコンピュータ思考レベルでの最適な一手(駒操作)を計算するアルゴリズムの実装(プログラム)である。利用可能なリソースをわざわざ制限して(例えば、読みの深さを浅くして計算するなど)、相手のレベルとあわせることもできる。
【0126】
駒操作候補の総合評価基準としては、駒操作後の、強い味方駒の多さ、味方キング(又は王)の危険度、強い味方駒の危険度等の指標の他、本発明の障害オブジェクトの存在を加味した、次に説明する2つの評価を参照している。
【0127】
障害オブジェクトを迂回する動線を考慮した重要座標評価の実装282は、例えば、図8の左図の各マス内右上の数値(小さいほど重要)を求めるアルゴリズムの実装(プログラム)である。
【0128】
この数値は、本発明による障害オブジェクトを迂回してのK(キング)からK(キング)までの最短経路(迂回の方向が複数ある場合は極小経路集合)の計算と、最短経路上(または極小経路集合上)の各マスからの最短距離を求めることにより計算している。
【0129】
この実施例では、最短経路上のマスには1を与え、各マスからの最短距離+1をそのマス(座標)の重要度としている。
【0130】
求めた数値は、公知の各種アルゴリズムの実装281に与えられて駒操作候補(座標系外からの配置も候補に含む)の評価に加味される。
【0131】
図示していないが、複数の極小経路がある場合は、経路の複雑さ(クイーンで到達しようとしたときの方向転換の多さ)と経路の長さにより重み付けして、複雑なあるいは長い極小経路上のマスには、より大きな値を与え、その周辺のマスにはその「より大きな値」からの距離を反映したものを与えることとしている。
【0132】
また、複数の極小経路の交差するマスには、交差しないマスよりも小さい(すなわちより重要な座標を示唆する)値を与えている。
【0133】
なお、極小経路集合は、この実施例では、以下のように求める。K(キング)からK(キング)への全部の一筆書き経路集合のうち他の一筆書き経路を含まないような一筆書き経路集合をXとする。Xに属するすべての2経路組について、長さが同じならば何もせず、長さが異なるならば長い経路と短い経路とが閉路(ぐるぐる回れる経路)を形成しかついずれか一つの閉路の内側に(又は閉路が分断するように)障害オブジェクト(遮蔽オブジェクトの全体又は部分も含める)がない場合に長いほうの経路にフラグをたてていく。最後にXのうちフラグのたっていない一筆書き経路からなる集合を極小経路集合とする。なお、2つの経路が閉路を構成するかどうかは、2マス同じ座標を共有しており、かつその2マス間の部分経路が異なる場合に、閉路を構成していると決定できる。障害オブジェクトが閉路の内側にあるかどうかは、障害オブジェクトの座標から幅優先探索により閉路をぬける経路が存在するかどうかを機械探索することにより求めることができる。遮蔽オブジェクトを閉路が分断しているかどうかの決定は、図3や図4のような遮蔽オブジェクト用に拡張した二次元配列上で容易に検出可能であり、ここでは詳述しない。
【0134】
駒種ごとの、障害オブジェクトに邪魔されない可動方向を考慮した座標評価の実装283は、例えば、図8の右図の各マス内右下の数値(大きいほど好ましい)を求めるアルゴリズムの実装(プログラム)である。
【0135】

図から明らかなように、座標における駒の、「障害オブジェクトに邪魔されない」可動域(座標数)を数え上げ、可動域が多い座標ほど、その駒に適した座標として好ましい値(例えば、2)を与えることにより、駒の特徴を活用できるような駒操作候補を総合的に高く評価できるようにしている。
【0136】

求めた数値(0、1、2)は、公知の各種アルゴリズムの実装281に与えられて駒操作候補(座標系外からの配置も候補に含む)の評価に加味される。
【0137】
図8は、本発明の実施例としてのコンピュータ思考手段における座標の各観点からの部分的評価結果の例を示す説明図である。
【0138】
左図は、障害オブジェクトを迂回する動線を考慮した重要座標評価の実装282の評価結果を各マスの右上に数値(1から5)として示している。
【0139】
右図は、駒種ごとの、障害オブジェクトに邪魔されない可動方向を考慮した座標評価の実装283の評価結果を、各マスの右下に数値(0から2)として示している。
【0140】
なお、説明の便宜上、一貫して4×4のマス座標系(したがって9×9の遮蔽オブジェクト用拡張座標系)で説明してきたが、8×8の通常のマス座標系(したがって、17×17の遮蔽オブジェクト用拡張座標系)や、長方計の座標系や、方形でない外壁を有する座標系でも、同じ実装が可能であり、そのようなさまざまな座標系(盤(異なった障害オブジェクト(遮蔽オブジェクトを含む)が配置されうる))が様々な利用者による投稿の対象となり、様々な配置の障害オブジェクトを含む様々な形の座標系のそれぞれの特徴を反映した評価値が、この図におけると同様に与えられる。
【0141】
図9は、本発明の実施例としてのゲームの概略フローチャートである。
【0142】
ステップS1は、利用スタートステップであり、利用者のクライアント端末との間で認証がなされて、セッションIDなどが共有される。
【0143】
ステップS2は、利用者が盤を投稿するかどうかの判断ステップであり、投稿する場合にはステップS3に移る。利用者は、投稿をせずに遊ぶことのほうが多く、すでに登録されている様々な形の盤で遊ぶ場合は、ステップS4に移る。
【0144】
ステップS3は、利用者による盤の投稿と共有フェーズのステップである。利用者はここで、盤データ(座標系の形状と、障害オブジェクト配置と、場合によってはいくつかの駒の初期配置や付加ルールを伴う)をサーバーに送信し、サーバーは受信した盤データを、他の利用者も遊べるような形で(例えばリストに)登録し、管理する。いくつもの盤を一度に投稿できるよう、ステップS3はステップS2へと遷移する。
【0145】
ステップS4は、利用者が盤を選択するか対戦相手を選択するかの判断ステップである。盤を選択する場合は、盤選択用の画面構成を備えるステップS5に遷移する。対戦相手(コンピュータを含む)を探す場合は、対戦相手を探せる画面構成を備えるステップS7に遷移する。
【0146】
ステップS5は、利用者による盤の選択(他の利用者により投稿された盤を含む)フェーズのステップである。ここでは、興味のある盤(形状以外にも、障害オブジェクトや、駒の初期配置や、付加ルールも含みうる)と、先手・後手の希望と、勝負に賭けるポイントと、持ち時間(一手毎の及び又は一ゲームの)を指定し、ステップS6に遷移する。
【0147】
ステップS6は、対戦相手が利用者を選んでくれるのを待つフェーズである。対戦相手(別の利用者)が(別のセッションからステップS7で)利用者を選んでくれると、ステップS8に遷移してゲームがスタートする。
【0148】
ステップS7は、対戦相手(別の利用者かコンピュータ)を探して選ぶフェーズである。対戦相手(コンピュータも含む)は、興味のある盤(と、先手・後手と、賭けポイントと)を指定して待っており、その待っている利用者達(その一部はコンピュータ)のリストが、それぞれの盤の様子、先手・後手、賭けポイント、持ち時間とともに、表示されている。そのリストの中から一つを選択するとステップS8に遷移してゲームが始まる。
【0149】
S8は、ゲーム対戦中のフェーズであり、初期配置用のゲーム制御フェーズ(初期配置フェーズ)S81と、通常のフェーズS82とからなる。両フェーズを通じて、盤を指定して待っていた側の利用者による先手・後手指定と、持ち時間指定に従いゲームが進行する。対戦模様をインターネットで他の利用者に配信する機能も実施される。携帯電話の中断に備えて、中断時や勝負が明らかな際に自分の手をコンピュータに有料で任せるオプション(強いコンピュータ思考ルーチンほど高い)もついている。王(又はキング)をとったり(とられたり)、持ち時間を経過したりすると、ゲームオーバーとなり、ステップS9に遷移する。
【0150】
S81は、初期配置用のゲーム制御フェーズ(初期配置フェーズ)のステップであり、ステップS8のスタートとともに開始し、盤に関連づけられた初期配置フェーズの終了条件の充足とともに終了する。あるチェス盤では、初期配置されている駒はなく、白・黒が一手づつ順番に配置していき、両方のキングが置かれた瞬間に初期配置フェーズが終了するように設定されている。この盤では初期配置フェーズでキングを置き忘れると負けになるようにも設定されている。また別のチェス盤では、初期配置駒なしで、白黒合せて40手までが初期配置フェーズであり、初期配置フェーズの終了時に持ち駒が残っているほうが負けであるように設定されている。また別のチェス盤では、キングを含むいくつかの駒が初期配置されており、すべての駒を配置しきるまでが初期配置フェーズであり、初期配置中、障害オブジェクトに邪魔されずに味方の駒に接するマスに座標系外の駒を座標系に配置していかなければならないように設定されている。初期配置フェーズが終了すると、通常のゲーム制御フェーズ(S82)に遷移する。
【0151】
S82は、初期配置後の通常のゲーム制御フェーズであり、本発明による障害オブジェクトや盤に設定された付加ルールを考慮する以外は、通常ゲームの方針に沿ってゲーム制御がなされる。
【0152】
S9は、ゲームオーバーの演出・記録等の実施フェーズのステップであり、賭けポイントのやりとりや勝負の記録、ポイントのランキング表示等の演出が行われる。
【0153】
別の実施例では、十分な広さの盤が設計され、デフォルトの初期設定フェーズでは、持ち駒の配置か、相手の駒を座標内の駒でとるか、パスしかできないようになっており、持ち駒がなくなるまで、初期設定フェーズを続けるよう制御する。
【0154】
別の実施例では、十分な広さの盤が設計され、デフォルトの初期設定フェーズでは、持ち駒の配置か、相手の駒を座標内の駒でとれるかする場合には、パスができなくなっており、持ち駒がなくなるまで、初期設定フェーズを続けるよう制御する。
【0155】
別の実施例では、十分な広さの盤が設計され、デフォルトの初期設定フェーズでは、味方駒に隣接する座標への持ち駒の配置(ただし隣接が遮蔽オブジェクトでじゃまされていない場合に限る)か、相手の駒を座標内の駒でとるか、パスしかできないようになっており、持ち駒がなくなるまで初期設定フェーズを続けるよう制御する。
【0156】
別の実施例では、十分な広さの盤が設計され、デフォルトの初期設定フェーズでは、両者の駒が全部持ち駒であり、各自、王(又はキング)を最初に配置する必要があり、その後、味方駒に隣接する座標への持ち駒の配置(ただし隣接が遮蔽オブジェクトでじゃまされていない場合に限る)か、相手の駒を座標内の駒でとるか、パスしかできないようになっており、持ち駒がなくなるまで初期設定フェーズを続けるよう制御する。
【0157】
別の実施例では、十分な広さの盤が設計され、デフォルトの初期設定フェーズでは、相手利用者に目隠しで王(又はキング)を最初に配置する必要があり、その後、味方駒に隣接する座標への持ち駒の配置(ただし隣接が遮蔽オブジェクトでじゃまされていない場合に限る)か、相手の駒を座標内の駒でとるか、パスしかできないようになっており、持ち駒がなくなるまで初期設定フェーズを続けるよう制御する。
【0158】
別の実施例では、三次元の盤によるゲーム(三次元配列による移動制限がおこなわれているもの)が実施される。
【0159】
別の実施例では、賭けポイントのないゲームが実施される。
【0160】
別の実施例では、サーバー・クライアント型でなく、スタンドアロンのゲームマシンやPCで実施される。
【0161】
別の実施例では、サーバーによるセッション管理でなくピアツーピアーの通信により対戦形式のゲームが実施される。
【0162】
別の実施例では、ボードゲームおもちゃとしての物理的な盤に物的な障害オブジェクトを利用者の好きなように配置してもらい、盤に内蔵されたコンピュータが障害オブジェクトの配置や利用者による駒の動きを検出して、ルール違反を指示したり、ゲーム進行を補助したり、音声などを用いた演出をしたりするように構成されている。
【産業上の利用可能性】
【0163】
本発明は、コンピュータゲーム産業や戦略教育だけでなく、脳トレーニングにも適用できる。
【図面の簡単な説明】
【0164】
【図1】本発明の実施例としての物理的な全体構成を示した概略図である。(実施例1)
【図2】サーバーの主記憶に記憶される、本発明の実施例としてのコンピュータプログラム及び関連するデータ構造の主な構成を示した概略図である。(実施例1)
【図3】本発明の実施例としての障害オブジェクト座標記憶手段の概略図である。(実施例1)
【図4】本発明の実施例としての移動制限手段のデータ構造とその制御ロジックの概略図である。(実施例1)
【図5】本発明の実施例としてのゲーム制御及びルール適用手段の概略図である。(実施例1)
【図6】本発明の実施例としての駒属性記憶手段をプログラムソースコードにより説明した図である。(実施例1)
【図7】本発明の実施例としてのコンピュータ思考手段の概略説明図である。(実施例1)
【図8】本発明の実施例としてのコンピュータ思考手段における座標の各観点からの部分的評価結果の例を示す説明図である。(実施例1)
【図9】本発明の実施例としてのゲームの概略フローチャートである。(実施例1)
【符号の説明】
【0165】
1 CPU
2 主記憶
21 利用者製座標系受信手段
22 障害オブジェクト座標記憶手段
23 移動制限手段
24 ゲーム制御及びルール適用手段
241 将棋やチェスとしての一般的なゲーム制御手段
242 初期配置フェーズの開始と終了の制御手段
243 指し手の持ち駒を配置可能かどうかの計算手段
244 指し手が相手の駒をとれるかどうかの計算手段
245 持ち駒が残っているか、王(又はキング)が配置されているか、の検査手段
25 駒の可動域定義及び其の他ルール定義
26 駒属性(座標含)記憶手段
27 座標系外駒配置手段
28 コンピュータ思考手段
281 公知の各種アルゴリズムの実装
282 障害オブジェクトを迂回する動線を考慮した重要座標評価の実装
283 駒種ごとの、障害オブジェクトに邪魔されない可動方向を考慮した座標評価の実装
S1 利用スタートステップ
S2 利用者が盤を投稿するかどうかの判断ステップ
S3 利用者による盤の投稿と共有フェーズのステップ
S4 利用者が盤を選択するか対戦相手を選択するかの判断ステップ
S5 利用者による盤の選択(他の利用者により投稿された盤を含む)フェーズのステップ
S6 対戦相手が利用者を選んでくれるのを待つフェーズのステップ
S7 対戦相手を探して選ぶフェーズのステップ
S8 ゲーム対戦中のフェーズ
S81 初期配置用のゲーム制御フェーズ(初期配置フェーズ)のステップ
S82 初期配置後の通常のゲーム制御フェーズのステップ
S9 ゲームオーバーの演出・記録等の実施フェーズのステップ

【特許請求の範囲】
【請求項1】
日本の将棋・日本以外の将棋・チェス等、味方の駒の移動可能な座標に存在する敵の駒を座標上から消滅させられる基本ルールを有するゲーム又はそれらのゲームを変形したゲームを、
コンピュータ又はコンピュータネットワークを介して、人対人の対戦方式もしくはコンピュータ対人の対戦方式として遊戯させるために、
駒の座標(座標系が駒の可動域の定義と整合するもの)を記憶するコンピュータゲーム装置であって、
駒の移動および又は配置を所定の障害ルールに従って制限する障害オブジェクト(座標を占める空間として定義されるオブジェクトも含む)の座標を記憶する障害オブジェクト座標記憶手段と、
該障害オブジェクト座標記憶手段に記憶した障害オブジェクトの座標をもとに、前記所定の障害ルールに従って駒の移動を制限する移動制限手段と、
を有することを特徴とする、コンピュータゲーム装置。
【請求項2】
前記障害オブジェクトの少なくとも一つが、縦・横・斜めに隣接する座標間の移動を制限する遮蔽オブジェクト(例えば、一般的な縦・横共に整列した座標系にあっては、隣接する座標間で、駒の縦もしくは横方向の移動を制限する壁オブジェクト又は駒の斜め方向の移動を制限する柱オブジェクト又はその両方であり、正六角形(ヘックスとも呼ばれ座標が蜂の巣のセル状に隣接したもの)やレンガ式(奇数段と偶数段の座標が互いに半分ずつずれて隣接したもの)の縦又は横がずれた座標系にあっては、隣接する座標間で、駒の各方向への移動を制限する壁オブジェクトであり、正三角形のセルが隙間なく隣接した座標系にあっては、壁オブジェクトである)である、請求項1に記載のコンピュータゲーム装置。
【請求項3】
駒の座標を含む属性を記憶する駒属性記憶手段を有し、
駒属性記憶手段に記憶した駒集合のうち少なくともいくつかの駒についてゲーム開始時に座標系に配置されていない座標系外ものとして(例えば、手持ちの駒等として)記憶しており、
ゲーム開始後にプレイヤが座標系に配置することができるようにコンピュータ制御する座標系外駒配置手段を有すること
を特徴とする、請求項1又は2に記載のコンピュータゲーム装置。
【請求項4】
前記座標系外駒配置手段が、所定のフェーズ以降、すでに座標系に配置された該プレイヤ所属の駒の座標に隣接しない座標に、該プレイヤに所属する駒を座標系外から配置できないようにコンピュータ制御すること
を特徴とする、請求項3に記載のコンピュータゲーム装置。
【請求項5】
座標系と障害オブジェクトとの構成上および其の他の所定のルール上配置できなくなるまで、該プレイヤの番に、該プレイヤに所属する座標系外の駒を、該プレイヤに配置させるようコンピュータ制御する初期配置フェーズを実施するようコンピュータ制御すること
を特徴とする、請求項3又は4に記載のコンピュータゲーム装置。
【請求項6】
前記初期配置フェーズにおいて、所定の駒(例えば、王、玉、キング等)を配置していないプレイヤの負けとなるようにコンピュータ制御すること
を特徴とする請求項5に記載のコンピュータゲーム装置。
【請求項7】
該プレイヤの座標系外の駒がなくなるまで、該プレイヤの番に、該プレイヤが、座標系外の駒を配置するか、敵の駒を取るか、パスするか、のいずれかのみを実施できるようにコンピュータ制御することを
を特徴とする請求項3から5のいずれ一項に記載のコンピュータゲーム装置。
【請求項8】
前記プレイヤが、座標系外の駒を配置できるか、敵の駒を取れるかする場合には、パスできないようにコンピュータ制御することを特徴とする、請求項7に記載のコンピュータゲーム装置。
【請求項9】
前記プレイヤが、座標系外の駒が残っている状態で、該プレイヤの番に、座標系外の駒を配置もできず、敵の駒も取れない場合に、負けとなるようにコンピュータ制御すること
を特徴とする請求項7又は8に記載のコンピュータゲーム装置。
【請求項10】
初期状態において、すくなくとも一方のプレイヤのすべての駒を座標系外として記憶すること
を特徴とする、請求項3から9のいずれか一項に記載のコンピュータゲーム装置。
【請求項11】
該プレイヤに所属する座標系外の所定の駒(例えば、王、玉、キング等)を、該プレイヤの最初の番に、該プレイヤに配置させるようコンピュータ制御することを特徴とする、請求項3から10のいずれか一項に記載のコンピュータゲーム装置。
【請求項12】
コンピュータがプレイヤを担当する対戦方式である場合に、コンピュータの番において、コンピュータに所属する駒を、後に該駒が座標系と障害オブジェクトとの構成上動ける座標数の多い座標に、優先的に移動又は配置するようコンピュータ制御すること
を特徴とする、請求項1から11のいずれか一項に記載のコンピュータゲーム装置。
【請求項13】
コンピュータがプレイヤを担当する対戦方式である場合に、コンピュータの番において、コンピュータに所属する駒を、コンピュータに所属する所定の駒(例えば、王、玉、キング等)の座標から相手に所属する所定の駒(例えば、玉、王、キング等)の座標に、一つ又は複数の障害オブジェクトを迂回して至る経路となる座標上に、優先的に移動又は配置するようコンピュータ制御すること
を特徴とする、請求項1から11のいずれか一項に記載のコンピュータゲーム装置。
【請求項14】
1つ又は複数の障害オブジェクトを配置した座標系を、利用者がインターネットを介して作成又は登録できるようコンピュータ制御する利用者製座標系受信手段を有することと、
利用者製座標系受信手段により受信した該座標系の障害オブジェクトの座標を障害オブジェクト座標記憶手段に記憶することと
を特徴とする、請求項1から13のいずれか一項に記載のコンピュータゲーム装置。
【請求項15】
日本の将棋・日本以外の将棋・チェス等、
味方の駒の移動可能な座標に存在する敵の駒を座標上から消滅させられる基本ルールを有するゲーム又はそれらのゲームを変形したゲームを、
コンピュータ又はコンピュータネットワークを介して、人対人の対戦方式もしくはコンピュータ対人の対戦方式として遊戯させるために、
駒の座標(座標系が駒の可動域の定義と整合するもの)を記憶するコンピュータゲームの制御方法であって、
駒の移動および又は配置を所定の障害ルールに従って制限する障害オブジェクト(座標を占める空間として定義されるオブジェクトも含む)の座標を記憶する障害オブジェクト座標記憶ステップと、
該障害オブジェクト座標記憶手段に記憶した障害オブジェクトの座標をもとに、前記所定の障害ルールに従って駒の移動を制限する移動制限ステップと、
を有することを特徴とする、コンピュータゲーム制御方法。
【請求項16】
日本の将棋・日本以外の将棋・チェス等、
味方の駒の移動可能な座標に存在する敵の駒を座標上から消滅させられる基本ルールを有するゲーム又はそれらのゲームを変形したゲームを、
コンピュータ又はコンピュータネットワークを介して、人対人の対戦方式もしくはコンピュータ対人の対戦方式として遊戯させるために、
駒の座標(座標系が駒の可動域の定義と整合するもの)を記憶するコンピュータプログラムであって、
駒の移動および又は配置を所定の障害ルールに従って制限する障害オブジェクト(座標を占める空間として定義されるオブジェクトも含む)の座標を記憶する障害オブジェクト座標記憶制御と、
該障害オブジェクト座標記憶手段に記憶した障害オブジェクトの座標をもとに、前記所定の障害ルールに従って駒の移動を制限する移動制限制御と、
をコンピュータに実施させることを特徴とする、コンピュータプログラム。

【図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