説明

ゲーム装置、ゲームシステム、動作方法、ならびに、プログラム

【課題】仮想プレイヤの動作に人間らしさを持たせるのに好適なゲーム装置、ゲームシステム、動作方法、ならびに、プログラムを提供する。
【解決手段】ゲーム装置200は、記憶部201と進行部202とを備える。記憶部201は、所定の推奨人数のプレイヤによってプレイされた過去のゲームについて、プレイヤのそれぞれにより選択されたアクションの履歴を含むゲーム履歴を記憶する。進行部202は、推奨人数より少い数のプレイヤでゲームが開始された場合、足りない人数分の仮想プレイヤを提供する。進行部202は、仮想プレイヤの次にとるべきアクションを、できるだけ、記憶部201の記憶するゲーム履歴のうちの、いずれかのプレイヤ(参照プレイヤ)のアクションの履歴のうちから選択する。

【発明の詳細な説明】
【技術分野】
【0001】
仮想プレイヤの動作に人間らしさを持たせるのに好適なゲーム装置、ゲームシステム、動作方法、ならびに、プログラムに関する。
【背景技術】
【0002】
プレイヤがCPUと対戦してプレイする種のゲームでは、CPUは予め設定された目標得点前後のスコアを取得するように設定されているのが典型的である。このようなゲームにおいて、CPUによってプレイされる仮想的なプレイヤ(以降、仮想プレイヤと呼ぶ)は、ゲームの難易度にかかわらず、安定したスコアを取得する。よって、仮想プレイヤ相手のゲームの内容はリアリティに乏しく、実際のプレイヤ同士でプレイしているかのような臨場感が得られ難かった。近年、リアリティの高い、臨場感のある対戦を演出するため、仮想プレイヤの動作に人間らしさを持たせる技術が提案されている。
【0003】
例えば、特許文献1に開示される、プレイヤが音楽等に合わせて操作を行って楽しむゲームシステムでは、曲の再生情報及び操作タイミングデータを含む曲情報を分析し、その分析結果に基づいて、曲の途中で目標得点を変化させることで、仮想プレイヤの操作の評価に影響を与える。これにより、曲全体の難易度、曲の各部分での難易度に応じて仮想プレイヤの得点を制御することができる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第4008469号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1は、プレイヤと仮想プレイヤとのアクションが互いに影響しないゲームを想定しているが、例えば、トランプゲームなどの、相手のアクションに応じて自分の次のアクションを決めるようなゲームにおいても、仮想プレイヤの動作に人間らしさを持たせたいという要望がある。
【0006】
本発明は以上のような課題を解決するためのものであり、仮想プレイヤの動作に人間らしさを持たせるのに好適なゲーム装置、ゲームシステム、動作方法、ならびに、プログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するため、本発明の第1の観点に係るゲーム装置は、所定の人数のプレイヤのそれぞれにより選択されたアクションに基づいて進行するゲームを実現するゲーム装置であり、記憶部と、進行部と、を備える。なお、所定の人数とは、ゲームにおいて推奨されるプレイ人数である。また、アクションとは、プレイヤがゲームを進行させるために行う操作指示であり、カードゲームにおいては、例えば、プレイヤがカードを他人やスタックから引いたり、捨てたり、他人にあげたり、等の行為を示す。
【0008】
まず、記憶部には、ゲームが開始されてから終了されるまでに所定の人数のプレイヤのそれぞれにより選択されたアクションの履歴を含むゲーム履歴が1つ以上記憶される。
【0009】
即ち、記憶部は、推奨される人数でゲームがプレイされたときに、そのゲームのゲーム履歴を記憶する。例えば、推奨するプレイ人数が4人であるトランプゲームが、実際に4人でプレイされたときに、ゲームのゲーム履歴が記憶部に蓄積される。各ゲーム履歴には、各プレイヤとそのプレイヤの選択したアクションとが対応付けられて、アクションが選択された順番に応じて蓄積される。なお、同じプレイヤのアクションを検索すれば、各プレイヤのアクションの履歴を得ることができる。
【0010】
また、進行部は、所定の人数に満たないプレイヤ(以下「実プレイヤ」という)によりゲームが開始されると、記憶部からゲーム履歴をいずれか1つ選択し、当該選択されたゲーム履歴に含まれるプレイヤ(以下「参照プレイヤ」という)により選択されたアクションの履歴のうちから、当該満たない数だけの参照プレイヤによるアクションの履歴を取得し、当該実プレイヤにより選択されたアクションと、当該取得された参照プレイヤにより選択されたアクションの履歴と、に基づいて、ゲームを進行させる。
【0011】
例えば、推奨プレイ人数が4人のゲームを、1人で開始した場合(即ち、実プレイヤが1人)、所謂CPU対戦モードでゲームが開始される。即ち、推奨人数に満たない3人については、ゲーム装置によって仮想プレイヤが提供される。このとき、進行部は、記憶部に記憶されている過去にプレイされたゲーム履歴のうちの1つを選択する。そして、進行部は、選択されたゲーム履歴を生成した実際のゲームをプレイしたプレイヤ(以下、参照プレイヤと呼ぶ)を参考にして、各仮想プレイヤのとるべきアクションを選択する。
【0012】
このように、仮想プレイヤの一連のアクションを、なるべく過去にプレイされたゲームのプレイヤによって選択されたアクションの履歴に沿うように選択するため、あたかも人間と対戦しているかのような臨場感を持たせることができる。
【0013】
なお、仮想プレイヤは、ゲーム履歴のうちのいずれの参照プレイヤを参考にすればよい。例えば、ゲーム履歴中の参照プレイヤがA、B、C、Dであった場合、仮想プレイヤA’、B’、C’の3人は、参照プレイヤA、B、C、のそれぞれを参考にしても、B、C、D、のそれぞれを参考にしてもよい。ただし、1つのゲームが終了するまでは、同じ参照プレイヤを参考にする。アクションを選択する際に参考にする参照プレイヤを変化させることで、仮想プレイヤのアクションに幅を持たせることが可能となる。
【0014】
また、記憶部はキューの構成を有するようにして、所定の数だけゲーム履歴を蓄積する。所定の数のゲーム履歴が蓄積されると、最も古いゲームを廃棄して、新しいゲーム履歴を記憶する。記憶容量にある程度の余裕がある場合は、所定の数を大きくするようにしてもよい。常に同じゲーム履歴を使用しないようにして、仮想プレイヤのアクションに幅を持たせることが可能となる。
なお、1人より多い人数でゲームを行う場合については、後述のゲームシステムにおいて実現可能である。
【0015】
また、ゲーム履歴には、ゲームの初期状態がさらに含まれ、
進行部は、所定の人数に満たない実プレイヤによりゲームが開始されると、記憶部に記憶された初期状態からゲームを開始するようにしてもよい。
【0016】
ここで、初期状態とは、例えば、トランプゲームにおいて、予め配られる持ち札などの情報を含む、ゲームが開始される際の状態である。
【0017】
例えば、プレイヤが予め配られた持ち札を順番に出すゲームであって、その持ち札を出すルールに比較的制約があるゲームをプレイする場合を考える。このようなゲームをプレイする際に、過去にプレイされたゲームと同じ持ち札が配られると、ゲームの進行、特に序盤では、過去にプレイされたゲームと似た進行となる可能性が高い。あるいは、スタックに積まれたカードからプレイヤが一定の制約の下にカードを出していくようなトランプゲームについて、過去のゲームと同じスタックを用いた場合にも同様のことが言える。
【0018】
したがって、過去に推奨人数でプレイされたゲームと同じ初期状態、即ち、同じ持ち札や、スタックを、実プレイヤと仮想プレイヤとが対戦するゲームに適用すれば、自然に、仮想プレイヤのアクションに人間らしさを持たせることが可能となる。
【0019】
なお、本ゲーム装置は、持ち札に相当する手持ち牌や、スタックに相当する山を使用する麻雀ゲームなどにも適用することが可能である。
【0020】
また、進行部は、所定の人数に満たない実プレイヤにより開始されたゲームが終了すると、過去に当該実プレイヤと同人数の実プレイヤによりプレイされたゲームであって、同一のゲーム履歴を選択して進行された全てのゲームにおける全ての実プレイヤの取得したスコアに基づいて、当該終了したゲームにおける実プレイヤの順位を算出するようにしてもよい。
【0021】
即ち、同じゲーム履歴の、同じ参照プレイヤが使用されて進行されたゲームでは、実プレイヤのプレイ条件が類似する。したがって、同じ条件でプレイした実プレイヤのスコア同士を比較すれば、プレイヤの実力の目安を算出することが可能となる。
【0022】
また、進行部は、参照プレイヤのアクションの履歴から順にアクションを取得して、当該アクションがゲームのゲームルールに矛盾しない場合、当該アクションに基づいてゲームを進行させ、矛盾する場合、当該アクションをスキップして次のアクションを取得することを繰り返してゲームを進行させるようにしてもよい。
【0023】
ここで、以下の例を用いて説明する。例えば、実プレイヤA’、仮想プレイヤB’、C’、D’の順番でプレイするゲームにおいて、仮想プレイヤB’、C’、D’のそれぞれに、参照プレイヤB、C、Dが対応付けられる場合を考える。このとき、プレイヤA’がアクションを選択すると、進行部は、続くプレイヤ(即ち、仮想プレイヤB’)のアクションを、対応する参照プレイヤ(即ち、プレイヤB)のアクションの履歴から選択する。
【0024】
例えば、進行部は、仮想プレイヤB’に対応する参照プレイヤBのアクションの履歴において、まだ選択されていないアクション(即ち、未選択アクション)のうちから、一番最初のアクションを取得する。取得したアクションが、ゲームのルールに矛盾を生じなければ、そのアクションを、仮想プレイヤB’のとるべきアクションとして選択する。
【0025】
一方、取得したアクションが、ゲームのルールに矛盾(例えば、アクションは「カードxxを捨てる」ことを示すものであるが、当該カードを捨てられる条件が現状では満たされていない等)する場合は、当該アクションをスキップする。スキップした後、進行部は次のいずれかを行うことができる。
【0026】
1つは、継続して、仮想プレイヤB’のアクションを選択する処理を行う。即ち、参照プレイヤBのアクションの履歴における、未選択アクションのうちから、次のアクションを取得する。進行部は、ゲームのルールに矛盾しないアクションが得られるまで、参照プレイヤBのアクションの履歴の中から順次未選択アクションを取得する。
【0027】
あるいは、進行部は、仮想プレイヤB’に順番をパスさせるように処理してもよい。即ち、上述の例において、進行部は、次のプレイヤである仮想プレイヤC’のアクションを選択するべく、対応する参照プレイヤCのアクションの履歴を参照する。
【0028】
進行部は、参照プレイヤCのアクションの履歴のうち、最初の未選択のアクションが、ゲームのルールに矛盾しないアクションであれば、そのアクションを仮想プレイヤC’のアクションとして選択する。そうでなければ、順次、次の仮想プレイヤに順番を移し、ゲームルールに矛盾しないアクションが得られるまで、対応する参照プレイヤのアクションの履歴を参照して、未選択アクションを得選択する。
【0029】
なお、取得したアクションがゲームルールに矛盾する場合に行う上記の処理は、組み合わせて行ってもよい。例えば、ある仮想プレイヤのアクションとして、対応する参照プレイヤのアクションの履歴からアクションが選択できなかった場合に、はじめて次の仮想プレイヤに順番を移すようにしてもよい。
【0030】
ただし、アクションの履歴のいずれのアクションもゲームルールに矛盾する場合は、ゲームルールに矛盾しないように、進行部が所定の処理を行って、アクションを選択する。
【0031】
このように、過去のゲーム履歴を適用することで、仮想プレイヤのアクションに人間らしさを持たせることができる。
【0032】
また、進行部は、スキップされたアクションに、ゲームの状態とゲームルールとに矛盾しないアクションがある場合、当該矛盾しないアクションを次のアクションとして取得するようにしてもよい。
【0033】
即ち、ある時点では、ある仮想プレイヤに対応する参照プレイヤのアクションが、ゲームルールに矛盾するアクションであったとしても、他のプレイヤの選択したアクションによって矛盾が解消される場合がある。したがって、次に当該仮想プレイヤの順番が回ってきたときに、スキップしたアクションを再度取得して、矛盾しない場合は、当該仮想プレイヤのアクションとして選択する。
【0034】
このように、なるべくアクション履歴に沿うように、次のアクションを選択することで、仮想プレイヤのアクションに人間らしさを持たせることができる。
【0035】
また、本発明の他の観点に係るゲームシステムは、第1の観点のゲーム装置として機能するサーバ装置と、1つ以上のクライアント装置と、を備えるゲームシステムであって、
クライアント装置は、当該クライアント装置に対応付けられるプレイヤからの指示入力に基づいて、当該プレイヤによるアクションを選択し、当該選択されたアクションをサーバ装置に送信し、
サーバ装置は、クライアント装置から送信されたアクションを受信し、
サーバ装置において、進行部は受信されたアクションを当該クライアント装置のプレイヤにより選択されたアクションとして、ゲームを進行させ、
サーバ装置は、ゲームが進行されると、最新のゲームの状況をクライアント装置に送信し、
クライアント装置は、サーバ装置から送信されたゲームの状況を受信し、当該ゲームの状況を当該クライアント装置に対応付けられるプレイヤに提示する、
ことを特徴とする。
【0036】
ここで、上記第1の観点に係るゲーム装置は、プレイヤが1人の際に、ゲームの推奨するプレイヤの数に満たない分だけ仮想プレイヤを提供して、ゲームを進行させるものである。一方、本ゲームシステムは、1人以上のプレイヤが各々の操作するクライアント装置からサーバ装置に接続してゲームをプレイする所謂ネットワークゲームを想定している。
【0037】
即ち、サーバ装置は、クライアント装置から送信されたプレイヤの操作指示にしたがって、ゲームを進行させる。プレイヤの数が推奨人数に満たない場合は、満たない数だけ仮想プレイヤを提供して、ゲームを進行させる。そして、サーバ装置は、進行された最新のゲームの状況をクライアント装置に送信すると、クライアント装置は、その最新のゲームの状況に基づいて、ゲーム画面などを生成して、プレイヤに表示する。
【0038】
また、本発明の他の観点に係るゲームシステムは、複数のゲーム端末を備えるゲームシステムであって、
複数のゲーム端末のうち、1つを、第1の観点に係るゲーム装置として機能するマスター装置に選択し、残りを、スレーブ装置に選択し、
複数のゲーム端末のそれぞれは、当該ゲーム端末に対応付けられるプレイヤからの指示入力に基づいて、当該プレイヤによるアクションを選択し、
スレーブ装置は、当該スレーブ装置に対応付けられるプレイヤについて選択されたアクションをマスター装置に送信し、
マスター装置は、スレーブ装置から送信されたアクションを受信し、
マスター装置において、進行部は、当該マスター装置に対応付けられるプレイヤについて選択されたアクションと、スレーブ装置から送信されたアクションであって当該スレーブ装置のプレイヤにより選択されたアクションと、に基づいて、ゲームを進行させ、
マスター装置は、ゲームが進行されると、最新のゲームの状況をスレーブ装置に送信し、当該ゲームの状況を当該マスター装置に対応付けられるプレイヤに提示し、
スレーブ装置は、マスター装置から送信されたゲームの状況を受信し、当該ゲームの状況を当該スレーブ装置に対応付けられるプレイヤに提示する、
ことを特徴とする。
【0039】
ここで、本ゲームシステムは、上述のゲームシステムのように、1台のサーバ装置と複数のクライアント装置という構成ではなく、1人以上のプレイヤが各々の操作する携帯型のゲーム端末アドホックモード等で接続して、複数のプレイヤでプレイする場合を想定している。即ち、ゲーム端末のうち、マスター装置として選択される一台は、上述のゲームシステムのサーバ装置として機能するほか、クライアント装置としても機能する。
【0040】
即ち、マスター装置は、仮想プレイヤを提供するほか、他のゲーム装置であるスレーブ装置から受け付けられた操作指示にしたがってゲームを進行させる。また、自装置において、プレイヤから操作指示を受信した場合についても、スレーブ装置から受け付けた場合と同様にゲームを進行させる。
【0041】
また、本発明の他の観点に係る動作方法は、所定の人数のプレイヤのそれぞれにより選択されたアクションに基づいて進行するゲームを実現するゲーム装置による動作方法であって、
ゲーム装置は、ゲームが開始されてから終了されるまでに所定の人数のプレイヤのそれぞれにより選択されたアクションの履歴を含むゲーム履歴が1つ以上記憶される記憶部と、進行部と、を備え、
動作方法は、
進行部が、
所定の人数に満たないプレイヤ(以下「実プレイヤ」という)によりゲームが開始されると、記憶部からゲーム履歴をいずれか1つ選択し、当該選択されたゲーム履歴に含まれるプレイヤ(以下「参照プレイヤ」という)により選択されたアクションの履歴のうちから、当該満たない数だけの参照プレイヤによるアクションの履歴を取得し、当該実プレイヤにより選択されたアクションと、当該取得された参照プレイヤにより選択されたアクションの履歴と、に基づいて、ゲームを進行させる工程、
を備える。
【0042】
また、本発明の他の観点に係る動作方法は、第1の観点に係るゲーム装置として機能するサーバ装置と、1つ以上のクライアント装置と、を備えるゲームシステムによる動作方法であって、
クライアント装置は、当該クライアント装置に対応付けられるプレイヤからの指示入力に基づいて、当該プレイヤによるアクションを選択し、当該選択されたアクションをサーバ装置に送信する工程、
サーバ装置が、クライアント装置から送信されたアクションを受信する工程、
サーバ装置において、進行部が受信されたアクションを当該クライアント装置のプレイヤにより選択されたアクションとして、ゲームを進行させる工程、
サーバ装置が、ゲームが進行されると、最新のゲームの状況をクライアント装置に送信する工程、
クライアント装置が、サーバ装置から送信されたゲームの状況を受信し、当該ゲームの状況を当該クライアント装置に対応付けられるプレイヤに提示する工程、
を備える。
【0043】
また、本発明の他の観点に係る動作方法は、複数のゲーム端末を備えるゲームシステムによる動作方法であって、
複数のゲーム端末のうち、1つを、第1の観点に係るゲーム装置として機能するマスター装置に選択し、残りを、スレーブ装置に選択する工程、
複数のゲーム端末のそれぞれが、当該ゲーム端末に対応付けられるプレイヤからの指示入力に基づいて、当該プレイヤによるアクションを選択する工程、
スレーブ装置が、当該スレーブ装置に対応付けられるプレイヤについて選択されたアクションをマスター装置に送信する工程、
マスター装置が、スレーブ装置から送信されたアクションを受信する工程、
マスター装置において、進行部が、当該マスター装置に対応付けられるプレイヤについて選択されたアクションと、スレーブ装置から送信されたアクションであって当該スレーブ装置のプレイヤにより選択されたアクションと、に基づいて、ゲームを進行させる工程、
マスター装置が、ゲームが進行されると、最新のゲームの状況をスレーブ装置に送信し、当該ゲームの状況を当該マスター装置に対応付けられるプレイヤに提示する工程、
スレーブ装置が、マスター装置から送信されたゲームの状況を受信し、当該ゲームの状況を当該スレーブ装置に対応付けられるプレイヤに提示する工程、
を備える。
【0044】
また、本発明の他の観点に係るプログラムは、コンピュータを、上記のゲーム装置として機能させるように構成する。また、本発明の他の観点に係るプログラムは、サーバ装置用のコンピュータとクライアント装置用のコンピュータを上記サーバ装置およびクライアント装置のそれぞれとして機能させるように構成する。また、本発明の他の観点に係るプログラムは、複数のコンピュータのそれぞれを上記のゲーム端末として機能させるように構成する。
【0045】
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記録媒体に記録することができる。上記プログラムは、当該プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記録媒体は、当該コンピュータとは独立して配布・販売することができる。
【発明の効果】
【0046】
本発明によれば、仮想プレイヤの動作に人間らしさを持たせるのに好適なゲーム装置、ゲームシステム、動作方法、ならびに、プログラムを提供することができる。
【図面の簡単な説明】
【0047】
【図1】本実施の形態に係るゲーム装置が実現される典型的な携帯型情報処理装置の概要構成を示すブロック図である。
【図2】本実施の形態においてプレイされる「七ならべ」を説明するための図であり、場におけるカードの配置を示す図である。
【図3】本実施の形態に係るゲーム装置の機能ブロック図である。
【図4】記憶部に記憶されるアクションの履歴のデータ構成例を示す図である。
【図5】あるゲームのアクションの履歴の例を、プレイヤ毎に示した図である。
【図6】本実施の形態に係るゲーム装置の動作処理の流れを示すフロー図である。
【図7】本実施の形態に係るゲーム装置のCPU対戦モードにおける動作処理の流れを示すフロー図である。
【図8】(A)から(D)は、ゲームが進行した際のある時点における、場に置かれたカードの例を示す図である。
【発明を実施するための形態】
【0048】
以下では、理解を容易にするため、携帯型情報処理装置に本発明が適用される実施の形態を説明するが、各種のコンピュータ、PDA、携帯電話などにおいても同様に本発明を適用することができる。すなわち、以下に説明する実施の形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと等しいものに置換した実施の形態を採用することが可能であるが、これらの実施の形態も本発明の範囲に含まれる。
【0049】
図1は、本発明の実施の形態に係るゲーム装置が実現される典型的な携帯型情報処理装置1の概要構成を示す模式図である。以下、本図を参照して説明する。
【0050】
携帯型情報処理装置1は、処理制御部10と、コネクタ11と、カートリッジ12と、無線通信部13と、通信コントローラ14と、サウンドアンプ15と、スピーカ16と、操作キー17と、第1の表示部18と、第2の表示部19と、タッチパネル20と、を備える。
【0051】
処理制御部10は、CPU(Central Processing Unit)コア10aと、画像処理部10bと、VRAM(Video Random Access Memory) 10cと、WRAM(Work RAM) 10dと、LCD(Liquid Crystal Display)コントローラ10eと、タッチパネルコントローラ10fと、を備える。
【0052】
CPUコア10aは、携帯型情報処理装置1全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。具体的には、カートリッジ12がコネクタ11に装着された状態で、カートリッジ12内のROM(Read Only Memory) 12aに記憶されたプログラムやデータを読み出して、所定の処理を実行する。
【0053】
画像処理部10bは、カートリッジ12内のROM 12aから読み出されたデータや、CPUコア10aにて処理されたデータを加工処理した後、これをVRAM 10cに格納する。
【0054】
VRAM 10cは、表示用の情報を記憶するフレームメモリであり、画像処理部10b等により加工された画像情報を記憶する。
WRAM 10dは、CPUコア10aがプログラムに従った各種処理を実行する際に必要となるワークデータ等を記憶する。
【0055】
LCDコントローラ10eは、第1の表示部18および、第2の表示部19を制御し、所定の表示用画像を表示させる。たとえば、LCDコントローラ10eは、VRAM 10cに記憶された画像情報を、所定の同期タイミングで表示信号に変換し、第1の表示部18に出力する。また、LCDコントローラ10eは、第2の表示部19に所定の指示アイコン等を表示する。
【0056】
タッチパネルコントローラ10fは、タッチペンやユーザの指によるタッチパネル20への接触(タッチ)を検出する。たとえば、第2の表示部19に所定の指示アイコン等が表示されている状態で、タッチパネル20上の接触およびその位置等を検出する。
【0057】
コネクタ11は、カートリッジ12と脱着自在に接続可能な端子であり、カートリッジ12が接続された際に、カートリッジ12との間で所定のデータを送受信する。
【0058】
カートリッジ12は、ROM(Read Only Memory) 12aと、RAM(Random Access Memory)12bと、を備える。
ROM 12aには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データ等が記録される。
RAM 12bには、ゲームの進行状況等を示す種々のデータが記憶される。
【0059】
無線通信部13は、他の携帯型情報処理装置1の無線通信部13との間で、無線通信を行うユニットであり、図示せぬアンテナ(内蔵アンテナ等)を介して所定のデータを送受信する。
なお、無線通信部13は、所定のアクセスポイントとの間で、無線LAN通信を行うこともできる。また、無線通信部13には、固有のMAC(Media Access Control)アドレスが採番されている。
【0060】
通信コントローラ14は、無線通信部13を制御し、所定のプロトコルに沿って、処理制御部10と他の携帯型情報処理装置1の処理制御部10との間で行われる通信の仲立ちをする。
【0061】
サウンドアンプ15は、処理制御部10にて生成された音声信号を増幅し、スピーカ16に供給する。
スピーカ16は、例えば、ステレオスピーカ等からなり、サウンドアンプ15にて増幅された音声信号に従って、所定の楽曲音や効果音等を出力する。
【0062】
操作キー17は、携帯型情報処理装置1に適宜配置された複数のキースイッチ等からなり、ユーザの操作に従って、所定の指示入力を受け付ける。
【0063】
第1の表示部18および、第2の表示部19は、LCD等からなり、LCDコントローラ10eに制御され、ゲーム画像等を適宜表示する。
なお、第2の表示部19は、タッチパネル20の接触によりユーザから操作指示を入力させるための指示アイコン等を表示する。
【0064】
タッチパネル20は、第2の表示部19の前面に重畳して配置され、タッチペンやユーザの指の接触による入力を受け付ける。
タッチパネル20は、たとえば、感圧式のタッチセンサパネル等からなり、ユーザの指等の圧力を検出し、接触状態および、接触状態から非接触状態への移行等を検出する。なお、タッチパネル20は、他に静電容量の変化等から、ユーザの指等の接触を検出してもよい。
【0065】
なお、本実施の形態に係るゲーム装置は、上述した典型的な携帯型情報処理装置1上に実現されるが、一般的なコンピュータやゲーム機上に実現することもできる。一般的なコンピュータやゲーム機は、上記携帯型情報処理装置1と同様に、CPUコアや、VRAM、WRAM、を備える。また、通信部として、例えば、LAN(Local Area Network)を構成する際に用いられる10BASE−T/100BASE−Tなどの規格に準拠するNIC(Network Interface Controller)、記憶装置としてハードディスクを有する他、DVD−ROMや、光磁気ディスク、等が利用できるようになっている。また、入力装置として、タッチパネルの代わりに、キーボードやマウスなどを利用する。そして、プログラムをインストールした後に、そのプログラムを実行させると、ゲーム装置として機能させることができる。
【0066】
以下では、注記しない限り、本実施の形態に係るゲーム装置は、図1に示した携帯型情報処理装置1により説明を加える。ゲーム装置は、必要に応じて適宜一般的なコンピュータや、ゲーム装置の要素に置換することができ、これらの実施の形態も本発明の範囲に含まれる。
【0067】
(実施形態1)
本実施の形態では、本発明に係るゲーム装置200が、トランプゲームの「七ならべ」を提供する場合について説明する。ゲーム装置200を保有するプレイヤは、無線通信部13を介して、他のゲーム装置200を保有するプレイヤと、それぞれのゲーム装置200が提供するゲーム(七ならべ)において、対戦することが可能である。
【0068】
以下に典型的な七ならべのルールを示す。
【0069】
1)52枚の全てのカードを各プレイヤに1枚ずつ順番に配る。
2)カードが全て配られると、7を持っているプレイヤは、場の所定の位置にカードを置いて前準備を行う。なお、場において、各カードの配置される位置は、図2に示すように、スート(即ち、ハート、ダイヤ、クラブ、スペードの4つのマーク)毎に、1〜Kの順番になるように、予め決められている。
3)全てのスートの7が、場における対応する位置に配置されると、ゲームが開始される。各プレイヤは、自分の番になると、持ち札からカードを一枚場に置く。ただし、場に置けるカードは、すでに場に置かれているカードに続くカードのみである。即ち、ゲーム開始時は、各スートの7のみが場に置かれているため、各スートの6または8を置くことができる。次のプレイヤがダイヤの8を場に置くと、さらに続くプレイヤは、ダイヤの6または9、あるいは、ダイヤ以外のスートの6または8を場に置くことができる。
4)プレイヤが自分の順番において場に出せるカードを持っていない場合、自分の順番をパスしてもよい。なお、出せるカードがあった場合にも、他人がカードを場に置けないようにパスを行ってもよい。ただし、パスの回数の上限は典型的には3回までと定められている。
5)パスを使い切ってしまい、場に出せるカードがない場合、プレイヤは、その時点で自分の手元にあるカードを全て、場の所定の位置に置き、ゲームから脱落する。
6)脱落することなく持ち札を全て場に出したプレイヤから順番に勝ち抜ける。
【0070】
次いで、このようなゲームを提供する本実施の形態に係るゲーム装置200の概要構成を図3に示す。図3に示すように、ゲーム装置200は、記憶部201と、進行部202と、を備える。
【0071】
記憶部201は、所定の人数のプレイヤのそれぞれによりプレイされた過去のゲームのゲーム履歴を記憶する。ゲーム履歴には、ゲームが開始されてから終了されるまでにプレイヤのそれぞれにより選択されたアクションの履歴が含まれる。
【0072】
例えば、各プレイヤのそれぞれにより選択されたアクションの履歴は、図4に示すような構成で、記憶部201に記憶される。即ち、各プレイヤとその選択したアクションとが対応付けられて、アクションが選択された順番に応じて蓄積される。なお、同じプレイヤのアクションを検索すれば、そのプレイヤのアクションの履歴を得ることができる。
【0073】
なお、アクションの履歴の構成は上記のような構成に限らない。どの順番で、どのプレイヤがどのアクションを選択したかを特定できればよい。また、所定の人数とは、提供するゲームにおける、参加プレイヤの推奨人数であり、本実施の形態では4人としているが、これに限らない。
【0074】
さらに、ゲーム履歴には、ゲームの初期状態を示す情報が含まれる。ここで、初期状態とは、予めプレイヤに配られた持ち札などの情報である。即ち、どのプレイヤにどのカードが配られたかが初期状態として記憶される。
【0075】
このほか、記憶部201には、提供するゲームのルールなどを記憶してゲームを進行させるプログラムやデータなども記憶される。
【0076】
処理制御部10のWRAM 10d、カートリッジ12のROM 12a、および、RAM 12bが、記憶部201として機能する。
【0077】
進行部202は、推奨プレイ人数のプレイヤによりゲームがプレイされた場合、記憶部201に記憶されたプログラムやデータ、および、プレイヤの選択したアクションに応じて、ゲームを進行させる。そして、ゲーム履歴を、記憶部201に記憶する。
【0078】
一方、所定の人数に満たないプレイヤ(以下「実プレイヤ」と呼ぶ)によりゲームが開始されると、進行部202は、所謂、CPU対戦モードでゲームを進行させる。即ち、進行部202は、当該満たない数だけのプレイヤに代わって、仮想的なプレイヤ(以下「仮想プレイヤ」と呼ぶ)を提供してゲームを進行させる。このとき、進行部202は、記憶部201に記憶された過去のゲーム履歴を参考にする。即ち、実プレイヤと仮想プレイヤとを、参考にするゲーム履歴の、各プレイヤに対応付ける。
【0079】
ここで、実プレイヤと仮想プレイヤとが対応付けられる、過去のゲーム履歴における各プレイヤを、参照プレイヤと呼ぶ。詳細は後述するが、進行部202は、まず、実プレイヤと仮想プレイヤの初期状態を、参考にするゲーム履歴と同様になるように再現する。例えば、七ならべの場合、実プレイヤと仮想プレイヤとに最初に配られる札の内容を、それぞれに対応する参照プレイヤと同じにする。そして、進行部202は、仮想プレイヤの各アクションとして、仮想プレイヤのそれぞれに対応する参照プレイヤのアクションを参考にして選択する。処理制御部10、コネクタ11、カートリッジ12、などが協働して、進行部202として機能する。
【0080】
(動作処理)
以上の構成を有するゲーム装置200の動作処理を図6を参照して説明する。
ゲーム装置200の電源が投入されると、カートリッジのROM 12aに記憶されるゲームプログラムがWRAM 10dに読み出され、所定の初期化処理が行われることによりゲームプログラムの実行が開始される(ステップS100)。
【0081】
上述したように、ゲーム装置200を保有するプレイヤは、無線通信部13を利用して、他のゲーム装置200を保有するプレイヤと対戦することが可能である。よって、まず、進行部202は、ゲームプログラムの実行を開始すると、周囲で同じゲームを実行しているゲーム装置200の数を特定して、ゲームに参加する人数を求める(ステップS101)。
【0082】
例えば、ゲーム装置200のそれぞれは、無線通信部13を介して、ゲーム装置200の実行しているゲームプログラムを識別する情報や、ゲーム装置200を識別する情報を含む、識別情報を互いにやりとりする。進行部202は、無線通信部13によって受信された識別情報に基づいて、同じゲームプログラムを実行しているゲーム装置200の数を特定する。特定されたゲーム装置200の数がゲームに参加する人数に相当する。
【0083】
次いで、進行部202は、マスター装置を決定する(ステップS102)。例えば、ステップS101で特定されたゲーム装置200のうち、MACアドレスの最も小さいゲーム装置200をマスター装置として機能させるようにすればよい。他のゲーム装置200が特定されなかった場合は、自装置がマスター装置となる。
【0084】
続いて、マスター装置は、ゲームに参加する人数が推奨プレイ人数と等しいか否かを判定する(ステップS103)。ゲームに参加する人数が推奨プレイ人数であれば(ステップS103;Y)、マスター装置と、マスター装置以外のゲーム装置200(以下、スレーブ装置)とは、通常モードでゲームを進行させる(ステップS104)。
【0085】
即ち、マスター装置を保有するプレイヤのプレイ順番であれば、マスター装置は自装置において操作指示を受け付ける。また、スレーブ装置を保有するプレイヤのプレイ順番であれば、マスター装置は、スレーブ装置において受け付けられたアクションを受信する。そして、マスター装置の進行部202は、受け付けたアクション、あるいは、スレーブ装置から送信されたアクションに従って、ゲームを進行させる。マスター装置の進行部202は、無線通信部13を介して、最新のゲームの状況を全てのスレーブ装置に送信する。スレーブ装置の進行部202は、送信された最新の状況に基づいたゲーム画面を、第1の表示部18や第2の表示部19に表示する。
【0086】
ゲームが終了すると、マスター装置とスレーブ装置を含む、ゲームに参加した全てのゲーム装置200は、プレイされたゲームの初期状態と、ゲームの開始から完了までの各プレイヤの選択したアクションの履歴と、を含むゲーム履歴をそれぞれの記憶部201に記憶する(ステップS105)。そして、次のゲームを開始すべく、処理をステップS101に戻す。
【0087】
一方、特定されたゲーム装置200の数が推奨プレイ人数よりも少ない場合(ステップS103;N)、CPU対戦モードでゲームが開始される。即ち、マスター装置は、推奨人数に足りない数だけの仮想プレイヤを提供する。理解を容易にするために、他のゲーム装置が1台も特定されなかった場合、即ち、実プレイヤが1人であり、マスター装置のみが存在する場合、について説明する。なお、推奨プレイ人数が4人のときに、実プレイヤが1人の場合、進行部202が提供する仮想プレイヤは3人となる。
【0088】
本実施の形態においては、CPU対戦モードにおける仮想プレイヤが、過去にゲームを実際にプレイしたプレイヤのアクションをなるべく真似るようにゲームが進行される。したがって、進行部202は、まず記憶部201に記憶されるゲーム履歴のうちのいずれかを、参照するゲーム履歴として選択する(ステップS201)。
【0089】
次いで、開始されたゲームの各プレイヤ(即ち、1人の実プレイヤと、3人の仮想プレイヤ)を、ゲーム履歴に記録される各プレイヤ(即ち、参照プレイヤ)に対応づける(ステップS202)。そして、仮想プレイヤについては、対応付けられた参照プレイヤのアクションの履歴を、各仮想プレイヤの参照するアクションの履歴として、記憶部201から取得する(ステップS203)。なお、実プレイヤについては、対応する参照プレイヤのアクションの履歴を参照せずに、実プレイヤ自身がアクションを選択する。しかし、後述するように、初期状態、即ち、最初に配られる持ち札など、については、仮想プレイヤ同様に、実プレイヤについても、対応する参照プレイヤの初期状態を採用する。
【0090】
例えば、図5は、ステップS201で選択されたゲーム履歴における、アクションの履歴を、プレイヤ毎に示した図である。図5の例では、参照プレイヤA〜Dのプレイの順番を縦方向に(上から下に)、そして、各参照プレイヤの選択したアクションを時間の進行に従って、横方向に(左から右に)示している。なお、七ならべでは、持ち札に7のカードを有しているプレイヤは7のカードをゲームの開始前に場に置くが、このアクションについては、図5に示していない。
【0091】
図5において図示されるカードは、参照プレイヤが場に置いたカードを示す。よって、例では、参照プレイヤA、B、C、Dの順番で、ダイヤの6、ダイヤの8、ハートの8、ハートの6、ダイヤの5、ハートの9…、を場に置いたことが示される。以降、ゲームが開始されてからの一連のアクションの履歴を、通しのアクションの履歴と呼ぶ。また、あるカードを場に置くというアクションを、単に「カードを置く」、という。
【0092】
ここで、進行部202は、ステップS202において、例えば、実プレイヤA’、および、仮想プレイヤB’〜D’を、参照プレイヤA〜Dのそれぞれに対応させたとする。このとき、ステップS203では、各仮想プレイヤB’,C’、D’の参照するアクションの履歴として、参照プレイヤB、C、Dのアクションの履歴を取得する。即ち、図5の例では、仮想プレイヤB’の参照するアクションの履歴は、第2行目に示される、ダイヤの8、ハートの9、スペードの5…である。同様に、仮想プレイヤC’は、第3行目、そして、仮想プレイヤD’は第4行目に示されるアクションの履歴を参照する。
【0093】
続いて、進行部202は、実プレイヤと仮想プレイヤとに、それぞれに対応付けられた参照プレイヤと同じ持ち札が配られるようにカードを配付して、ステップS201で選択したゲーム履歴における初期状態を再現する(ステップS204)。
【0094】
七ならべでは、選択可能なアクションは、カードを置くか、パスするか、のいずれかである。よって、図5に示される、各参照プレイヤによって置かれた一連のカードが、各参照プレイヤに最初に持ち札として配られたカードに等しい。各プレイヤに持ち札として配られたカードは、ゲーム履歴の初期状態を示す情報として、各参照プレイヤに対応付けて記憶される。即ち、参照プレイヤA〜Dのそれぞれには、初期状態の情報として、第1行目〜第4行目の各行に示されるカードがそれぞれ配られた旨が記憶される。なお、各スートの7については、どのプレイヤによって保有されていたかはゲームに影響しない。よって、本実施の形態においては、各プレイヤに各スートの7を配らずに、7が既に場に置かれた状態でゲームが開始される。
【0095】
したがって、上述の例のように、実プレイヤA’、および、仮想プレイヤB’〜D’が、参照プレイヤA〜Dのそれぞれに対応付けられた場合、ステップS203では、実プレイヤと仮想プレイヤとに、参照プレイヤA〜Dのそれぞれに配られたカードを配付する。
【0096】
なお、七ならべの場合は、上述のように初期状態をアクションの履歴から求めることが可能であるため、初期状態の情報を、記憶するのではなく、アクションの履歴から求めるようにしてもよい。また、実プレイヤA’や仮想プレイヤB’〜D’は、参照プレイヤA〜Dのいずれかに対応付けられればよく、ゲーム毎に対応付ける参照プレイヤを換えてもよい。
【0097】
次に、進行部202は、CPU対戦モードで、ゲームを進行させる(ステップS205)。詳細を図7を参照して説明する。
【0098】
まず、進行部202は、開始されたゲームにおいて、次のプレイヤを特定する(ステップS301)。図5の例において、参照プレイヤは、A〜Dの順番でプレイしている。進行部202は、開始されたゲームにおいても、この順番で、各参照プレイヤに対応するプレイヤにゲームをプレイさせる。即ち実プレイヤA’、仮想プレイヤB’〜D’の順番でプレイさせる。よって、まず、実プレイヤA’が次のプレイヤとして特定される。
【0099】
続いて、進行部202は、特定したプレイヤが実プレイヤか否かを判定する(ステップS302)。実プレイヤであれば(ステップS302;Y)、進行部202は、プレイヤからの指示を受け付け(ステップS303)、受け付けた指示に従って、ゲームを進行させる(ステップS304)。そして、ゲームが終了しなかった場合(ステップS305;N)次のプレイヤにプレイさせるため、処理をステップS301に戻す。
【0100】
例えば、図5においては、最初のプレイヤは実プレイヤA’であるため、進行部202は、まず、実プレイヤA’の指示に従って、ゲームを進行させる。ここで、実プレイヤA’はダイヤの6を置く指示を入力したとする。
【0101】
七ならべでは、7のカードを持ち札に有するプレイヤが、まず場に7のカードを置いてから、ゲームが開始される(図8(A)の状態)。したがって、図5の場合、実プレイヤA’の持ち札のうち、場に置かれているカードに連続するカードはダイヤの6のみであり、実プレイヤは、ダイヤの6を置かざるを得ない。このように、初期状態を過去のゲームと同じにすることにより、実プレイヤの選択するアクションも、おのずと参照している過去のゲームに近いものとなる。この時点の場の様子を図8(B)に示す。
【0102】
なお、図8では、理解を容易にするために、各カードに、そのカードが置かれた順番(即ち、アクションが選択された順番)と、そのカードをプレイヤを示している。例えば、ダイヤの6に記載される「1(A’)」は、1番目に実プレイヤA’がダイヤの6を置いたことを意味する。
【0103】
一方、特定したプレイヤが、実プレイヤではなく、仮想プレイヤである場合(ステップS302;N)、進行部202は、仮想プレイヤに対応する参照プレイヤのアクションの履歴のうちから、次の、まだ仮想プレイヤによって選択されていないアクション(以降、未選択アクションと呼ぶ)を1つ取得する(ステップS311)。そして、取得したアクションがその時点において、ゲームのルールに反するか否かを判定する(ステップS312)。ルールに反しない場合(ステップS312;N)進行部202は、取得したアクションに従って、ゲームを進行させる(ステップS313)。
【0104】
進行させた結果、ゲームが終了する場合(ステップS315;Y)は、次のゲームを開始すべく、処理をステップS101へ進める。ゲームが終了しない場合は(ステップS315;N)、次のプレイヤを特定すべく、処理をステップS301へ進める。
【0105】
例えば、実プレイヤA’の指示に従ってゲームを進行させ、図8(B)の状態が得られた後、進行部202は、次のプレイヤとしてプレイヤB’を特定する。プレイヤB’は仮想プレイヤであるため、進行部202は、仮想プレイヤB’に対応付けられた参照プレイヤB’のアクションの履歴のうちから次のアクションを取得する。図5において、参照プレイヤBのアクションの履歴には、まず、ダイヤの8を置く旨のアクションが記憶されている。現時点では、ダイヤの7がすでに置かれているため、ダイヤの8を場に置くことは、ゲームのルールに矛盾しない。よって進行部202は、仮想プレイヤB’のアクションとしてダイヤの8を置くことを選択する。
【0106】
同様の処理を行って、進行部202は、仮想プレイヤC’そして、続く仮想プレイヤD’のアクションとして、それぞれの参照するアクションの履歴の1番目のアクションである、ハートの8、および、ハートの6を置くことを選択する。なお、アクションの履歴のうち、仮想プレイヤによって選択されたアクションについては、選択された旨の情報を対応付けて記憶する。この時点の場の様子を図8(C)に示す。
【0107】
続いて、実プレイヤA’の順番では、ダイヤの9を置くアクションが選択されたとする。進行部202は、後続のプレイヤB’およびC’のそれぞれについて、上記と同様の処理を行い、それぞれに対応する参照プレイヤの次の未選択アクションである、ハートの9、および、スペードの6を場に置くアクションを選択する(図8(D)を参照)。
【0108】
一方、次のプレイヤである仮想プレイヤD’については、図8(D)からも明らかなように、対応する参照プレイヤDのアクションの履歴に次に記憶される未選択アクション(ダイヤの4を場に置くアクション)を選択することができない。参照しているゲーム履歴においては、参照プレイヤAによってダイヤの5が置かれたが、実プレイヤA’がこのアクションを選択しなかったためである。
【0109】
このように、取得したアクションがルールに反する場合(ステップS312;Y)、進行部202は、取得したアクションをスキップして、他のアクションを探し、そのアクションに従ってゲームを進行させる(ステップS314)。ここで、本実施の形態においては、ルールに矛盾しないアクションが見つかるまで、対応する参照プレイヤのアクションの履歴を順次検索する。
【0110】
例えば、図5において、ダイヤの4に続いて、参照プレイヤDのアクションの履歴に記録されるアクションはスペードの4であるが、スペードの5がまだ置かれていないので、アクションとして選択できない。一方、続くハートの5については、既にハートの6が置かれているため、ルールに矛盾しない。したがって、進行部202は、次の未選択アクションであるハートの5を置くことを、仮想プレイヤD’の次のアクションとして選択する。
【0111】
選択せずにスキップしたアクションについては(例えば、ダイヤの4およびスペードの4を置くアクション)、次に仮想プレイヤDのアクションを選択する場合に、再度、その時点におけるゲームのルールに矛盾しないか否かを判断すればよい。そして、矛盾しなければ選択すればよい。
【0112】
なお、対応する参照プレイヤのアクションの履歴を全て検索しても、選択できるアクションが見つからない場合がある。このとき、進行部202は、選択できるアクションを他の参照プレイヤのアクション履歴から検索し、交換するようにしてもよい。
【0113】
例えば、図8(D)に示すカードが既に置かれており、仮想プレイヤD’の順番において、対応付けられる参照プレイヤDのアクションの履歴のうちに、仮想プレイヤD’が選択できるアクションが見つからなかった場合について説明する。まず、直前に選択されたアクションに注目する。直前のアクションでは、仮想プレイヤC’によってスペードの6を置くことが選択されている。よって、進行部202は、スペードの6に継続するスペードの5を置いた旨のアクションをアクションの履歴に記憶している参照プレイヤを検索する。
【0114】
例では、スペードの5を置いた旨をアクションの履歴に記憶している参照プレイヤはプレイヤBである。よって、進行部202は、仮想プレイヤD’に対応する参照プレイヤDのアクションの履歴のうち、最初の未選択のアクションである、ダイヤの4を置くアクションと、参照プレイヤBのアクションの履歴のうち、スペードの6を置くアクションとを交換する。そして、仮想プレイヤDのアクションとして、スペードの6を置くことを選択する。また、ハートの10を置くアクションに対応付けて、当該アクションが選択された旨の情報を記憶する。
【0115】
なお、七ならべの場合、プレイヤの参照するアクションを交換することは、プレイヤの持ち札の交換を意味する。上述の例のように、仮想プレイヤ同士の参照するアクションを入れ替える場合は、問題は生じない。しかし、交換したいアクションが、実プレイヤに対応する参照プレイヤのアクションの履歴に含まれている場合、アクションの交換ができない。これは、実プレイヤの持ち札を交換すると実プレイヤのプレイに影響が生じるためである。
【0116】
よって、例えば、進行部202は、現在プレイ中のゲームにおいて、さらに1つ前に選択されたアクション(即ち、仮想プレイヤB’により、選択されたスペードの6を置くアクション)に注目する。そして、継続するカード(即ち、スペードの5)を置く旨のアクションを、アクションの履歴に記憶する参照プレイヤを探して、アクションを交換する同様の処理を行えばよい。
【0117】
このようにして、他のアクションを選択すると、進行部202は、選択したアクションにしたがってゲームを進行させる。続いて、ステップS315に処理を進め、ゲームが終了した否かを判定する。そして、ゲームが終了しない(ステップS315;N)と判断される間は、上述した処理を繰り返して、ゲームを進行させる。
【0118】
CPU対戦モードにおけるゲームが終了すると(ステップS315;Y)、次のゲームを開始すべく、処理はステップS101に戻る。
【0119】
以上、他のゲーム装置が1台も特定されなかった場合、即ち、実プレイヤが1人であり、マスター装置のみが存在する場合、について説明した。しかし、実プレイヤが1人より多く、参照人数より少ない場合についてもマスター装置であるゲーム装置200に上述の処理を行わせて、仮想プレイヤを提供するようにできる。
【0120】
例えば、ステップS101において実プレイヤが2人であると特定され、ステップS102において、実プレイヤのうちの一人の有するゲーム装置200aがマスター装置として選択された場合について説明する。即ち、もう一方のゲーム装置200bはスレーブ装置として機能する。
【0121】
ゲーム参加人数(実プレイヤ数)は2人であるため、マスター装置であるゲーム装置200aの進行部202は、上述のように、ステップS201で記憶部201に記憶されるゲーム履歴のうちから1つを選択して、進行中のプレイヤと、参照プレイヤとを対応付け(ステップS202)、仮想プレイヤに対応付けられた2名の参照プレイヤのアクションの履歴を取得する(ステップS203)。ゲーム装置200aは、初期状態を再現した後(ステップS204)、スレーブ装置200bとともに、CPU対戦モードを開始する(ステップS205)。
【0122】
即ち、マスター装置200aの進行部202が、特定した次のプレイヤ(ステップS301)が実プレイヤであると判断する(ステップS302;Y)と、ステップS303では、ステップS104に説明したように、その実プレイヤの操作するゲーム装置200から操作指示を受け付ける(ステップS303)。即ち、特定された実プレイヤの操作するゲーム装置200が、マスター装置200aであれば、自装置において操作指示を受け付ける。一方、スレーブ装置200bであれば、マスター装置200aは、スレーブ装置200bにおいて入力された操作指示を受信する。マスター装置200aの進行部202は、受け付けた、或いは、受信した操作指示に基づいて、ゲームを進行させる(ステップS304)。スレーブ装置200bは、マスター装置200aから送信された最新のゲームの状態に基づいたゲーム画面を、第1の表示部18や第2の表示部19に表示する。そして、マスター装置200aは、処理をステップS305に進める。
【0123】
一方、マスター装置200aの進行部202は、特定した次のプレイヤが仮想プレイヤであると判断した場合(ステップS302;N)、実プレイヤが1名であった場合と同様に、ステップS311からS314を行って仮想プレイヤのアクションを選択し、ゲームを進行させる。ステップS313、またはS314において得られた最新のゲームの状態は、マスター装置200aからスレーブ装置200bに送信され、スレーブ装置200bは、最新のゲームの状態に基づいたゲーム画面を、第1の表示部18や第2の表示部19に表示する。そして、マスター装置200aは、処理をステップS315に進める。
【0124】
以上、本発明の実施の形態について説明したが、本発明は、上述した実施の形態に限定されず、種々の変形および応用が可能である。また、上述した実施の形態の各構成要素を自由に組み合わせることも可能である。
【0125】
例えば、上記実施の形態では、複数のゲーム装置200でゲームを行う場合、1台がマスター装置となってゲームを進行させ、結果をスレーブ装置に送信する例を説明した。そうではなく、マスターゲーム装置の処理を、実プレイヤの保有するゲーム装置200で、分担するようにしてもよい。そして、進行されたゲームの情報を共有するようにすればよい。
【0126】
また、上記実施の形態のCPU対戦モードにおいて、仮想プレイヤのアクションを選択すべく取得したアクションが、その時点のゲームのルールに反する場合、ステップS314に示した処理を実行せずに、仮想プレイヤの順番をパスするようにしてもよい。即ち、ステップS311で取得したアクションが、その時点におけるゲームのルールに矛盾する場合(ステップS312;Y)、そのアクションをスキップし、処理をS302に進めることで、単純に順番を次のプレイヤに移すようにしてもよい。
【0127】
或いは、仮想プレイヤに対応する参照プレイヤのアクションの履歴のうちに、選択可能なアクションがないときに、はじめてパスするようにしてもよい。なお、パスできる回数は、ゲームのルールにおいて許される所定の回数とする。所定の回数のパスを使い切った後に、上述したアクションの交換を行うようにしてもよい。
【0128】
また、上記実施の形態は、麻雀ゲーム等にも適用することができる。麻雀ゲームでは、まず、初期状態として、持ち札に相当する手持ち牌をプレイヤに配り、スタックに相当する山を用意する。プレイヤは、決められた順番で、山から1つ牌を引いて、或いは、他のプレイヤの捨てた牌を1つ拾って、手持ち牌を1つ捨てる操作を繰り返すことにより、所定の組合せの牌をいち早く集める。プレイヤは、集めた牌の組合せに応じて決定されるスコア(点数)を競い合う。
【0129】
上述の例のように、1名の実プレイヤと、3名の仮想プレイヤでゲームがプレイされ、仮想プレイヤのそれぞれのアクションは、あるゲーム履歴Gにおける、参照プレイヤのアクションの履歴に基づいて決定される場合について説明する。なお、麻雀ゲームにおいて、各プレイヤは、典型的には、ゲームの序盤において、牌を山から1つ引いては、1つ捨てることを繰り返す。そして、ある程度牌が揃いだすと、他のプレイヤの捨てた牌を拾う(ポンやチー)アクションも選択する。このようなアクションの履歴が、ゲーム履歴Gにおいても、記録されているものとする。
【0130】
したがって、進行部202は、まずステップS204と同様にゲーム履歴Gの初期状態を、新たなゲームにおいて再現する。そして、参照するプレイヤのアクションの履歴に、ポンまたはチーを行うアクションが現れるまでは、仮想プレイヤのアクションとして、当該仮想プレイヤの参照する参照プレイヤのアクションの履歴に記憶されているように、牌を山から1つ引いては、1つ捨てるアクションを選択する。このように、特にゲームの序盤において、人間らしさが仮想プレイヤのプレイに表れる。
【0131】
一方、仮想プレイヤの参照するアクションの履歴に、牌Pをポンまたはチーするアクションが現れた場合、進行部202は、それまでのゲーム進行において、牌Pがいずれかのプレイヤによって捨てられているか否かを判断する。捨てられていなければ、仮想プレイヤは、牌Pをポンまたはチーすることが出来ない。したがって、上記実施の形態に示すように、進行部202は、対応付けられる参照プレイヤのアクションの履歴のうちから、その時点のゲームのルールに矛盾が生じないアクションを選択するようにする。
【0132】
参照しているアクションの履歴に、選択可能なアクションがない場合は、上記実施の形態に示すように、山の再編や、アクションの交換を行ってもよい。
【0133】
同じように、持ち札やスタックの概念を有するゲームについても、上記実施の形態を適用することが可能である。
【0134】
麻雀ゲーム以外にも、例えば、レースゲームにも上記実施の形態を適用することが可能である。即ち、過去においてプレイヤが選択したアクションの履歴を記憶しておき、CPU対戦モードが選択された場合に、仮想プレイヤのアクションとして、記憶された過去のプレイヤ(参照プレイヤ)のアクションの履歴を参照すればよい。なお、実プレイヤが操作する車が仮想プレイヤの車に衝突したような場合は、例えば、所定の時間が経過するまで、他のプレイヤに順番を譲って(即ち、動けるようになるまで待ってから)、再度レースを開始すればよい。なお、レースゲームでは、過去にプレイされたゲームの初期状態を記憶したり、開始されたゲームにおいて、初期状態を再現する必要はない。
【0135】
また、上記麻雀ゲームのようにスコア(点数)を競うゲームにおいては、実プレイヤ同士の順位を次に示すようにして算出してもよい。
【0136】
典型的なCPU対戦モードにおいては、初期状態、即ち、麻雀ゲームにおける、最初に配られる手持ち牌や、山の内容、は各ゲームによって異なる。また、このとき、実プレイヤのスコアは、その実プレイヤが参加したゲームにおける、初期状態によって大きく影響される。したがって、実プレイヤの取得したスコアを単純に他の実プレイヤや仮想プレイヤと比較しても、実プレイヤの実力のレベルを知ることは出来ない。
【0137】
一方で、本実施の形態において、同一実プレイヤ数(よって、同一仮想プレイヤ数)でプレイされたゲームであって、同じゲーム履歴を参照しているものについて考える。これらのゲームにおいて、実プレイヤ、および仮想プレイヤが、同じ参照プレイヤのそれぞれに対応付けられていれば、開始される初期状態が同一となる。即ち、実プレイヤ、および、仮想プレイヤの手持ち牌や、山の内容が同じになる。さらに、各仮想プレイヤは、同じ参照プレイヤを参照して、アクションを選択するため、仮想プレイヤの選択するアクションも似たものとなる。
【0138】
したがって、上記実施の形態において、実プレイヤが仮想プレイヤと対戦するゲームにおいては、進行部202は、記憶部201に、参照したゲーム履歴と、各プレイヤに対応付けられた参照プレイヤと、実プレイヤが取得したスコアと、を含む、結果情報を記憶部201に記憶させる。そして、ゲームが終了した際に、進行部202は、上述の条件を満たす結果情報を、記憶部201に記憶されたうちから検索する。
【0139】
即ち、進行部202は、終了したゲームと同一実プレイヤ数(よって、同一仮想プレイヤ数)によってプレイされたゲームであって、同じゲーム履歴を参照しており、且つ、実プレイヤ、および、仮想プレイヤが、同じ参照プレイヤのそれぞれに対応付けられているゲームを、記憶部201に記憶された結果情報のうちから検索する。そして、検索された結果情報に含まれる、実プレイヤのスコアをスコア順に並べて、順位づけすればよい。これにより、ほぼ同じ条件でプレイした実プレイヤのスコアによって順位を決定することが可能となり、実プレイヤの実力のレベルをある程度正しく知ることが可能となる。
【0140】
また、ステップ201で選択したゲーム履歴は、記憶部201に記憶されているうちから、ランダムに選択しても、或いは、ラウンドロビン方式で選択してもよい。ラウンドロビン方式では、例えば、参照するゲーム履歴を複数のうちから選択できたときに、順番に選択する。例えば、ゲーム履歴を参照する1番目のゲームは、1番目のゲーム履歴、次のゲームは、2番目のゲーム履歴、…、のようにして、順番にゲーム履歴を選択する。
【0141】
また、ステップS202における、実プレイヤや仮想プレイヤと、参照プレイヤとの対応付けについても同様に、ランダムに行ってもよいし、ラウンドロビン方式で行ってもよい。後者の場合、例えば、あるゲームにおいて、1名の実プレイヤA’と3名仮想プレイヤB’,C’,D’を、参照プレイヤA、B、C、Dのそれぞれに対応付けたとすると、次のゲームにおいては、参照プレイヤB、C、D、Aのそれぞれに対応付ける。さらに次のゲームにおいては、参照プレイヤC、D、A、Bに対応付けて、参照する参照プレイヤを順番に変えていく。
【0142】
あるいは、参照するために選択したゲーム履歴のうち、最もスコアの良かった参照プレイヤを、実プレイヤに対応付けても良い。ただし、いずれの場合についても、参照するアクションの履歴になるべく沿うように仮想プレイヤのアクションを選択するためには、対応づけられた参照プレイヤのプレイした順番で、実プレイヤおよび仮想プレイヤもプレイすることが好ましい。
【0143】
例えば、上記実施の形態に示した例では、参照プレイヤA、B、C、Dの順番でゲームがプレイされたため、参照プレイヤA、B、C、Dのそれぞれ対応づけられた実プレイヤA’、仮想プレイヤB’、C’、D’の順番でゲームを進行させた。同様に、参照プレイヤのプレイ順が、D、C、B、Aであれば、仮想プレイヤD’、C’、B’、そして実プレイヤA’の順番でゲームを進行させればいよい。
【0144】
また、上記実施の形態では、CPU対戦モードにおいてプレイされたゲームの履歴を記憶部201に記憶しなかった。しかし、通常モードと同様に、CPU対戦モードにおいてプレイされたゲームの履歴を記憶して、後に同じ数の実プレイヤによってプレイされるCPU対戦モードのゲームにおいて、ゲーム履歴を参照可能にしてもよい。
【0145】
また、上記実施の形態では、記憶部201に、過去のゲーム履歴を蓄積するようにした。そうではなく、サーバを用意して、推奨プレイ人数によりプレイされたゲームの履歴は、無線通信部13を介して、全てサーバに登録するようにしてもよい。そして、実プレイヤの数が、所定の人数より少ない場合、実プレイヤのいずれかの保有するゲーム装置200がこのサーバに接続して、ゲーム履歴を取得するようにしてもよい。これにより、参照プレイヤはゲーム装置200を保有するプレイヤが今まで対戦したことのないプレイヤとなるため、ゲームの進行が、今までにない新鮮なものとなる。
【0146】
また、上記実施の形態において、ゲーム装置200同士は、アドホックモードに代表されるように互いに直接通信するようにしても、インフラストラクチャモードに代表されるように、ネットワークを介して互いに通信するようにしてもよい。
【0147】
また、上記実施の形態では、複数のゲーム装置200が互いに通信しながらゲームを進行させる場合について説明した。そうではなく、例えば、ゲームを提供するサーバ装置に、ネットワークを介してゲーム端末装置が接続されたゲームシステムにも、本発明を適用することが可能である。
【0148】
例えば、ネットワークゲームなどでは、サーバに登録されたプレイヤが集って、ゲームを開始する。このとき、ゲーム端末装置は、受け付けたプレイヤの操作をサーバ装置に送ると、サーバ装置が、受け付けたプレイヤの操作に基づいてゲームを進行させる。なお、例えば、所定の時間が経過しても、推奨人数のプレイヤを集めることが出来なかった場合、サーバ装置は仮想プレイヤを提供して、ゲームを進行させる。ゲーム端末装置は、サーバ装置の処理にしたがって、ゲームの結果を表示する。この場合、ゲーム履歴は、サーバ装置の有する記憶部が記憶すればよい。
【産業上の利用可能性】
【0149】
以上説明したように、本発明によれば、仮想プレイヤの動作に人間らしさを持たせるのに好適なゲーム装置、ゲームシステム、動作方法、ならびに、プログラムを提供することができる。
【符号の説明】
【0150】
1 携帯型情報処理装置
10 処理制御部
11 コネクタ
12 カートリッジ
13 無線通信部
14 通信コントローラ
15 サウンドアンプ
16 スピーカ
17 操作キー
18 第1の表示部
19 第2の表示部
20 タッチパネル
200 ゲーム装置
201 記憶部
202 進行部

【特許請求の範囲】
【請求項1】
所定の人数のプレイヤのそれぞれにより選択されたアクションに基づいて進行するゲームを実現するゲーム装置であって、
前記ゲームが開始されてから終了されるまでに前記所定の人数のプレイヤのそれぞれにより選択されたアクションの履歴を含むゲーム履歴が1つ以上記憶される記憶部、
前記所定の人数に満たないプレイヤ(以下「実プレイヤ」という)により前記ゲームが開始されると、前記記憶部から前記ゲーム履歴をいずれか1つ選択し、当該選択されたゲーム履歴に含まれるプレイヤ(以下「参照プレイヤ」という)により選択されたアクションの履歴のうちから、当該満たない数だけの参照プレイヤによるアクションの履歴を取得し、当該実プレイヤにより選択されたアクションと、当該取得された参照プレイヤにより選択されたアクションの履歴と、に基づいて、前記ゲームを進行させる進行部、
を備えることを特徴とするゲーム装置。
【請求項2】
請求項1に記載のゲーム装置であって、
前記ゲーム履歴には、ゲームの初期状態がさらに含まれ、
前記進行部は、前記所定の人数に満たない実プレイヤにより前記ゲームが開始されると、前記記憶部に記憶された初期状態から前記ゲームを開始する、
ことを特徴とする、ゲーム装置。
【請求項3】
請求項2に記載のゲーム装置であって、
前記進行部は、前記所定の人数に満たない実プレイヤにより開始された前記ゲームが終了すると、過去に当該実プレイヤと同人数の実プレイヤによりプレイされたゲームであって、同一のゲーム履歴を選択して進行された全てのゲームにおける全ての実プレイヤの取得したスコアに基づいて、当該終了したゲームにおける実プレイヤの順位を算出する、
ことを特徴とする、ゲーム装置。
【請求項4】
請求項1から3のいずれか1項に記載のゲーム装置であって、
前記進行部は、前記参照プレイヤのアクションの履歴から順にアクションを取得して、当該アクションが前記ゲームのゲームルールに矛盾しない場合、当該アクションに基づいて前記ゲームを進行させ、矛盾する場合、当該アクションをスキップして次のアクションを取得することを繰り返して前記ゲームを進行させる、
ことを特徴とするゲーム装置。
【請求項5】
請求項4に記載のゲーム装置であって、
前記進行部は、前記スキップされたアクションに前記ゲームの状態と前記ゲームルールとに矛盾しないアクションがある場合、当該矛盾しないアクションを次のアクションとして取得する、
ことを特徴とするゲーム装置。
【請求項6】
請求項1に記載のゲーム装置として機能するサーバ装置と、1つ以上のクライアント装置と、を備えるゲームシステムであって、
前記クライアント装置は、当該クライアント装置に対応付けられるプレイヤからの指示入力に基づいて、当該プレイヤによるアクションを選択し、当該選択されたアクションを前記サーバ装置に送信し、
前記サーバ装置は、前記クライアント装置から送信されたアクションを受信し、
前記サーバ装置において、前記進行部は前記受信されたアクションを当該クライアント装置のプレイヤにより選択されたアクションとして、ゲームを進行させ、
前記サーバ装置は、前記ゲームが進行されると、最新のゲームの状況を前記クライアント装置に送信し、
前記クライアント装置は、前記サーバ装置から送信されたゲームの状況を受信し、当該ゲームの状況を当該クライアント装置に対応付けられるプレイヤに提示する、
ことを特徴とするゲームシステム。
【請求項7】
複数のゲーム端末を備えるゲームシステムであって、
前記複数のゲーム端末のうち、1つを、請求項1に記載のゲーム装置として機能するマスター装置に選択し、残りを、スレーブ装置に選択し、
前記複数のゲーム端末のそれぞれは、当該ゲーム端末に対応付けられるプレイヤからの指示入力に基づいて、当該プレイヤによるアクションを選択し、
前記スレーブ装置は、当該スレーブ装置に対応付けられるプレイヤについて選択されたアクションを前記マスター装置に送信し、
前記マスター装置は、前記スレーブ装置から送信されたアクションを受信し、
前記マスター装置において、前記進行部は、当該マスター装置に対応付けられるプレイヤについて選択されたアクションと、前記スレーブ装置から送信されたアクションであって当該スレーブ装置のプレイヤにより選択されたアクションと、に基づいて、ゲームを進行させ、
前記マスター装置は、前記ゲームが進行されると、最新のゲームの状況を前記スレーブ装置に送信し、当該ゲームの状況を当該マスター装置に対応付けられるプレイヤに提示し、
前記スレーブ装置は、前記マスター装置から送信されたゲームの状況を受信し、当該ゲームの状況を当該スレーブ装置に対応付けられるプレイヤに提示する、
ことを特徴とするゲームシステム。
【請求項8】
所定の人数のプレイヤのそれぞれにより選択されたアクションに基づいて進行するゲームを実現するゲーム装置による動作方法であって、
前記ゲーム装置は、前記ゲームが開始されてから終了されるまでに前記所定の人数のプレイヤのそれぞれにより選択されたアクションの履歴を含むゲーム履歴が1つ以上記憶される記憶部と、進行部と、を備え、
前記動作方法は、
前記進行部が、
前記所定の人数に満たないプレイヤ(以下「実プレイヤ」という)により前記ゲームが開始されると、前記記憶部から前記ゲーム履歴をいずれか1つ選択し、当該選択されたゲーム履歴に含まれるプレイヤ(以下「参照プレイヤ」という)により選択されたアクションの履歴のうちから、当該満たない数だけの参照プレイヤによるアクションの履歴を取得し、当該実プレイヤにより選択されたアクションと、当該取得された参照プレイヤにより選択されたアクションの履歴と、に基づいて、前記ゲームを進行させる工程、
を備えることを特徴とする動作方法。
【請求項9】
請求項1に記載のゲーム装置として機能するサーバ装置と、1つ以上のクライアント装置と、を備えるゲームシステムによる動作方法であって、
前記クライアント装置は、当該クライアント装置に対応付けられるプレイヤからの指示入力に基づいて、当該プレイヤによるアクションを選択し、当該選択されたアクションを前記サーバ装置に送信する工程、
前記サーバ装置が、前記クライアント装置から送信されたアクションを受信する工程、
前記サーバ装置において、前記進行部が前記受信されたアクションを当該クライアント装置のプレイヤにより選択されたアクションとして、ゲームを進行させる工程、
前記サーバ装置が、前記ゲームが進行されると、最新のゲームの状況を前記クライアント装置に送信する工程、
前記クライアント装置が、前記サーバ装置から送信されたゲームの状況を受信し、当該ゲームの状況を当該クライアント装置に対応付けられるプレイヤに提示する工程、
を備える、ことを特徴とする動作方法。
【請求項10】
複数のゲーム端末を備えるゲームシステムによる動作方法であって、
前記複数のゲーム端末のうち、1つを、請求項1に記載のゲーム装置として機能するマスター装置に選択し、残りを、スレーブ装置に選択する工程、
前記複数のゲーム端末のそれぞれが、当該ゲーム端末に対応付けられるプレイヤからの指示入力に基づいて、当該プレイヤによるアクションを選択する工程、
前記スレーブ装置が、当該スレーブ装置に対応付けられるプレイヤについて選択されたアクションを前記マスター装置に送信する工程、
前記マスター装置が、前記スレーブ装置から送信されたアクションを受信する工程、
前記マスター装置において、前記進行部が、当該マスター装置に対応付けられるプレイヤについて選択されたアクションと、前記スレーブ装置から送信されたアクションであって当該スレーブ装置のプレイヤにより選択されたアクションと、に基づいて、ゲームを進行させる工程、
前記マスター装置が、前記ゲームが進行されると、最新のゲームの状況を前記スレーブ装置に送信し、当該ゲームの状況を当該マスター装置に対応付けられるプレイヤに提示する工程、
前記スレーブ装置が、前記マスター装置から送信されたゲームの状況を受信し、当該ゲームの状況を当該スレーブ装置に対応付けられるプレイヤに提示する工程、
を備えることを特徴とする動作方法。
【請求項11】
コンピュータを、所定の人数のプレイヤのそれぞれにより選択されたアクションに基づいて進行するゲームを実現するゲーム装置として機能させるプログラムであって、
前記プログラムは前記コンピュータを、
前記ゲームが開始されてから終了されるまでに前記所定の人数のプレイヤのそれぞれにより選択されたアクションの履歴を含むゲーム履歴が1つ以上記憶される記憶部、
前記所定の人数に満たないプレイヤ(以下「実プレイヤ」という)により前記ゲームが開始されると、前記記憶部から前記ゲーム履歴をいずれか1つ選択し、当該選択されたゲーム履歴に含まれるプレイヤ(以下「参照プレイヤ」という)により選択されたアクションの履歴のうちから、当該満たない数だけの参照プレイヤによるアクションの履歴を取得し、当該実プレイヤにより選択されたアクションと、当該取得された参照プレイヤにより選択されたアクションの履歴と、に基づいて、前記ゲームを進行させる進行部、
として機能させることを特徴とするプログラム。
【請求項12】
サーバ装置用のコンピュータを請求項1に記載のゲーム装置として機能するサーバ装置として機能させるサーバプログラムと、1つ以上のクライアント装置用のコンピュータのそれぞれをクライアント装置として機能させるクライアントプログラムと、を備えるプログラムであって、
前記クライアントプログラムは、前記クライアント装置用コンピュータを、当該クライアント装置用コンピュータに対応付けられるプレイヤからの指示入力に基づいて、当該プレイヤによるアクションを選択し、当該選択されたアクションを前記サーバ装置用コンピュータに送信するように機能させ、
前記サーバプログラムは、前記サーバ装置用コンピュータを、
前記クライアント装置用コンピュータから送信されたアクションを受信し、
前記サーバ装置において、前記進行部は前記受信されたアクションを当該クライアント装置のプレイヤにより選択されたアクションとして、ゲームを進行させ、
前記ゲームが進行されると、最新のゲームの状況を前記クライアント装置用コンピュータに送信する
ように機能させ、
前記クライアントプログラムは、前記クライアント装置用コンピュータを、前記サーバ装置用コンピュータから送信されたゲームの状況を受信し、当該ゲームの状況を当該クライアント装置用コンピュータに対応付けられるプレイヤに提示するように機能させる
ことを特徴とするプログラム。
【請求項13】
複数のコンピュータのそれぞれをゲーム端末として機能させるプログラムであって、
前記プログラムは、
前記複数のコンピュータのうち、1つを、請求項1に記載のゲーム装置として機能するマスター装置に選択し、残りを、スレーブ装置に選択し、
前記複数のコンピュータのそれぞれが、当該ゲーム端末に対応付けられるプレイヤからの指示入力に基づいて、当該プレイヤによるアクションを選択し、
前記スレーブ装置が、当該スレーブ装置に対応付けられるプレイヤについて選択されたアクションを前記マスター装置に送信し、
前記マスター装置が、前記スレーブ装置から送信されたアクションを受信し、
前記マスター装置において、前記進行部は、当該マスター装置に対応付けられるプレイヤについて選択されたアクションと、前記スレーブ装置から送信されたアクションであって当該スレーブ装置のプレイヤにより選択されたアクションと、に基づいて、ゲームを進行させ、
前記マスター装置が、前記ゲームが進行されると、最新のゲームの状況を前記スレーブ装置に送信し、当該ゲームの状況を当該マスター装置に対応付けられるプレイヤに提示し、
前記スレーブ装置が、前記マスター装置から送信されたゲームの状況を受信し、当該ゲームの状況を当該スレーブ装置に対応付けられるプレイヤに提示する、
ように機能させる
ことを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate