(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-29
(45)【発行日】2022-10-07
(54)【発明の名称】コンピュータプログラム、移動装置、及び移動装置システム
(51)【国際特許分類】
A63F 3/00 20060101AFI20220930BHJP
A63H 18/16 20060101ALI20220930BHJP
A63F 3/02 20060101ALI20220930BHJP
【FI】
A63F3/00 515Z
A63H18/16 A
A63F3/00 E
A63F3/00 501Z
A63F3/00 511H
A63F3/00 512F
A63F3/02 511H
(21)【出願番号】P 2020045549
(22)【出願日】2020-03-16
(62)【分割の表示】P 2018176547の分割
【原出願日】2018-09-20
【審査請求日】2021-09-15
(73)【特許権者】
【識別番号】000135748
【氏名又は名称】株式会社バンダイ
(74)【代理人】
【識別番号】110003281
【氏名又は名称】特許業務法人大塚国際特許事務所
(74)【代理人】
【識別番号】100076428
【氏名又は名称】大塚 康徳
(74)【代理人】
【識別番号】100115071
【氏名又は名称】大塚 康弘
(74)【代理人】
【識別番号】100112508
【氏名又は名称】高柳 司郎
(74)【代理人】
【識別番号】100116894
【氏名又は名称】木村 秀二
(74)【代理人】
【識別番号】100130409
【氏名又は名称】下山 治
(72)【発明者】
【氏名】豊田 淳
【審査官】佐藤 洋允
(56)【参考文献】
【文献】特表2017-505559(JP,A)
【文献】特開2012-056001(JP,A)
【文献】特開2018-149221(JP,A)
【文献】特開2015-036164(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 3/00 - 3/08
A63H 1/00 - 37/00
B25J 5/00
(57)【特許請求の範囲】
【請求項1】
撮影手段と制御手段とを備える情報処理装置に、ゲーム方法を実行させるためのコンピュータプログラムであって、
前記情報処理装置は、移動手段を備える本体部に装着されて、ゲーム盤上を移動することが可能であって、
前記ゲーム方法は、前記情報処理装置が前記本体部に装着され、かつ、前記ゲーム盤上に位置している場合に、
前記制御手段が、
前記撮影手段に、前記情報処理装置が位置する前記ゲーム盤の情報を取得させることと、
取得した前記ゲーム盤の情報に基づいて、前記移動手段の制御を含む実行動作を決定することと、
決定された前記実行動作に基づき前記移動手段を制御することと
を含む、コンピュータプログラム。
【請求項2】
前記情報処理装置は、通信手段を更に備え、
前記ゲーム方法は、前記制御手段が、
前記通信手段に、他の情報処理装置の前記ゲーム盤上における位置の情報を取得させることと、
前記ゲーム盤上における他の情報処理装置の位置に更に基づいて、前記実行動作を決定することと、
前記通信手段に、前記実行動作の結果を他の情報処理装置に通知させることと
を含む、請求項1に記載のコンピュータプログラム。
【請求項3】
情報処理装置は、表示手段を更に備え、
前記ゲーム方法は、前記制御手段が、
前記通信手段に、前記他の情報処理装置における前記実行動作の結果を前記他の情報処理装置から受信させることと、
前記表示手段に、受信した前記他の情報処理装置における前記実行動作の結果に基づく画面を表示させることと
を更に含む、請求項2に記載のコンピュータプログラム。
【請求項4】
前記情報処理装置は、マスター、または、スレーブのいずれかとして動作し、
前記ゲーム方法は、前記制御手段が、
前記情報処理装置が前記マスターとして動作する場合、前記通信手段に前記スレーブとして動作する前記他の情報処理装置の前記ゲーム盤上における位置の情報を受信させると共に、前記ゲーム盤上に位置するすべての情報処理装置の位置の情報を、前記スレーブとして動作する前記他の情報処理装置に送信させることと、
前記情報処理装置が前記スレーブとして動作する場合、前記通信手段に前記情報処理装置の前記ゲーム盤上における位置の情報を前記マスターとして動作する情報処理装置に送信させると共に、該マスターとして動作する情報処理装置から、前記ゲーム盤上に位置するすべての情報処理装置の位置の情報を受信させることと
を更に含む、請求項2または3に記載のコンピュータプログラム。
【請求項5】
前記ゲーム方法は、前記制御手段が、
実行すべき動作と、該実行すべき動作を実行するための条件とを含む動作情報に基づいて前記実行動作を決定することと、
前記条件が満たされるか否かを、前記情報処理装置の位置、前記他の情報処理装置の位置、及び、前記ゲーム盤の構成情報に基づいて判定することと、
を更に含む、請求項2から4のいずれか1項に記載のコンピュータプログラム。
【請求項6】
前記動作情報は、前記情報処理装置のユーザによる入力に基づき生成され、
前記ユーザによる入力には、複数の選択肢からの選択入力が含まれる、
請求項5に記載のコンピュータプログラム。
【請求項7】
前記情報処理装置は、前記本体部に装着されて前記ゲーム盤上に設置可能であり、かつ、前記情報処理装置が前記移動手段を制御することにより前記ゲーム盤上を移動可能に構成されている、請求項1から6のいずれか1項に記載のコンピュータプログラム。
【請求項8】
前記制御手段が、
前記取得された前記ゲーム盤の情報に基づいて、前記情報処理装置の前記ゲーム盤上における位置を特定することと、
前記情報処理装置の前記ゲーム盤上における位置に更に基づいて、前記実行動作を決定することと、
を更に含む、請求項1から7のいずれか1項に記載のコンピュータプログラム。
【請求項9】
前記情報処理装置は、水平面に対し0度から90度の傾斜角度により前記本体部に装着される、請求項1から8のいずれか1項に記載のコンピュータプログラム。
【請求項10】
撮影手段と、制御手段と、請求項1から9のいずれか1項に記載のコンピュータプログラムを記憶した記憶手段とを備え、前記コンピュータプログラムの実行によりゲーム方法を実行する情報処理装置と、
前記情報処理装置が装着され、前記情報処理装置により制御される移動手段を有する本体部と
を備える、移動装置。
【請求項11】
請求項10
に記載の移動装置の複数が無線通信することにより構成される、移動装置システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータプログラム、移動装置、及び移動装置システムに関する。
【背景技術】
【0002】
従来より、スマートフォン等の情報処理装置の表示部を利用した玩具が提案されている(特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の玩具は自動では移動しない玩具であったが、情報処理装置を装着した玩具を移動させながらゲームを行うことを可能とする技術が求められていた。
【0005】
そこで、本発明は、情報処理装置を装着して構成される移動装置を用いてゲームを実行可能とするための技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明は、主に撮影手段と制御手段とを備える情報処理装置に、ゲーム方法を実行させるためのコンピュータプログラムであって、
前記情報処理装置は、移動手段を備える本体部に装着されて、ゲーム盤上を移動することが可能であって、
前記ゲーム方法は、前記情報処理装置が前記本体部に装着され、かつ、前記ゲーム盤上に位置している場合に、
前記制御手段が、
前記撮影手段に、前記情報処理装置が位置する前記ゲーム盤の情報を取得させることと、
取得した前記ゲーム盤の情報に基づいて、前記移動手段の制御を含む実行動作を決定することと、
決定された前記実行動作に基づき前記移動手段を制御することとを含む。
【発明の効果】
【0007】
本発明によれば、情報処理装置を装着して構成される移動玩具を用いてゲームが実行可能となる。
【図面の簡単な説明】
【0008】
【
図1】発明の実施形態に対応するゲームシステム10の構成例を示すブロック図。
【
図2】発明の実施形態に対応する移動装置100のハードウェア構成例を示すブロック図。
【
図3】発明の実施形態に対応するゲームシステムにおける処理の全体的な流れの一例を示すフローチャート。
【
図4】発明の実施形態に対応するゲーム盤データ生成処理の一例を示すフローチャート。
【
図5】発明の実施形態に対応するタイル、ゲーム盤及びゲーム盤データの一例を示す図。
【
図6】発明の実施形態に対応する動作プログラム登録処理の一例を示すフローチャート。
【
図7】発明の実施形態に対応する動作プログラム登録処理の際に表示される表示画面の一例を示す図。
【
図8】発明の実施形態に対応するゲーム処理の一例を示すフローチャート。
【
図9】発明の実施形態に対応する情報処理装置120の装着方法を説明するための図。
【発明を実施するための形態】
【0009】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【0010】
まず、発明の実施形態に係るゲームシステムの構成について、
図1のブロック図を用いて説明する。
図1は、発明の実施形態に係るゲームシステム10の構成例を示すブロック図である。
図1において、ゲームシステム10は、複数の移動装置100Aから100Cが、Bluetooth(登録商標) Low Energy(以下、BLE)の通信プロトコルに従う無線通信を行うことにより構築されている移動装置システムである。本実施形態では、複数の移動装置のうち移動装置100AがBLEのマスターとして動作し、移動装置100B及び100CがBLEのスレーブとして動作する。
図1では、3台の移動装置100が通信する場合を示しているが、ゲームシステム10はより多く、或いは、より少ない数の移動装置により構築されてもよい。また、移動装置のことを、例えば、ロボット装置、或いは、自走装置、バトル装置、対戦用装置等と呼ぶこともできる。
【0011】
次に、移動装置100のハードウェア構成について説明する。
図2は、発明の実施形態に係る移動装置100のハードウェア構成の一例を示す図である。移動装置100は、本体部110上に載置されたスマートフォン等の情報処理装置120とで構成される。本体部110は、駆動部111、制御部112、発光部113及び通信部114を含むように構成される。駆動部111は、情報処理装置120が載置された本体部110を移動させるための機構を備える。当該機構には、駆動輪、駆動輪を駆動させる駆動機構、駆動機構の駆動源、駆動源に動力を供給する動力源等が含まれる。
【0012】
図1に示したように、本実施形態に対応する本体部110は、キャタピラ状の構造とすることができる。この場合、複数の駆動輪に無端ベルトが掛け巻かれるように構成される。本体部110の構造はキャタピラ状に限られるものではなく、駆動輪にタイヤ状の弾性部材(例えば、ゴムタイヤ)を取り付けて構成してもよい。
【0013】
次に制御部112は、情報処理装置120からの制御信号に基づいて、本体部110の動作を制御する。制御部112は駆動部111の動作を制御することにより、本体部110をゲーム盤上で前進、後退、左右への旋回等することができる。また、制御部112は、発光部113における発光動作を制御すると共に、通信部114における情報処理装置120との通信を制御する。
【0014】
発光部113は、移動装置100がゲーム盤上を移動する際にゲーム盤情報の読み取り精度を確保するために、ゲーム盤に光を照射する。発光部113は移動装置100の動作中は常に点灯していてもよい。発光部113による発光制御は制御部112により実行される。
【0015】
通信部114は、情報処理装置120と接続し、通信するための通信インタフェースであって、例えばUSB方式に従う有線接続により通信を行うことができる。通信部114は、情報処理装置120からの制御命令を受信すると制御部112に提供する。情報処理装置120との接続はUSB方式以外の任意の方式でもよく、有線以外に無線接続であってもよい。
【0016】
次に、情報処理装置120は、上記のようにスマートフォンやタブレット端末等として構成することができる。情報処理装置120は以下の要素を含むように構成することができる。
【0017】
制御部121は、情報処理装置120の各部の動作を制御する。表示部122は、ゲーム処理が進行している際に、所定のゲーム画面を表示する。また、ゲーム盤の画像を撮影する際には撮影された画像を表示する。表示部122は例えばLCDや有機ELディスプレイとして構成することができる。外部装置通信部123は、他の移動装置100との無線通信を行う。通信方式としては、上記のように例えばBLEを利用することができる。
【0018】
本体通信部124は、本体部110の通信部114と接続して通信を行う。通信部114とはUSB方式に従う有線接続により通信を行うことができる。本体通信部124は、制御部121によるゲーム処理の実行結果に基づき、制御命令を本体部110に送信することができる。
【0019】
撮影部125は、ゲーム盤やタイルを撮影し、ゲーム盤画像、タイル画像を生成する。操作部126は、ボタン、タッチパネル等で構成され、情報処理装置120のユーザからの操作を受け付ける。画像処理部127は、撮影部125が撮影したゲーム盤画像を解析してゲーム盤データを生成したり、タイル画像を解析してゲーム装置100の現在位置を判定することができる。その他、画像についての全般的な処理を行う。画像処理部127の機能は制御部121により実現されてもよい。記憶部128は、撮影部125が生成した画像データを記憶したり、画像処理部127における処理により生成された各種データや、当該処理に用いられる情報を記憶する。また、表示部122に表示するための各種表示用データや、発明の実施形態に対応する処理を実行するためのアプリケーションデータを記憶する。
【0020】
次に、情報処理装置120のハードウェア構成について
図2(B)を参照して説明する。
【0021】
図2(B)において、CPU200は、制御部121として動作することができ、ハードディスク装置(以下、HDと呼ぶ)204に格納されている本実施形態に対応する一連の処理を実行するためのアプリケーションプログラム、オペレーティングシステム(OS)や制御プログラム等を実行し、RAM202にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。また、画像処理部127として動作することも可能であって、撮影部125で撮影された画像の解析処理等を実行する。さらには、インタフェース(I/F)206を介した本体部110との通信を制御する。なお、後述する
図3、
図4、
図6及び
図8における各フローチャートに従う処理もCPU200が対応する処理プログラムを実行することにより装置全体を制御して実現することができる。
【0022】
ROM201は、内部に基本I/Oプログラムの他、所定の処理を実行するアプリケーションプログラム等の各種データを記憶する。RAM202は各種データを一時記憶し、CPU200の主メモリ、ワーク領域等として機能する。また、撮影部125から受信した情報を一時的に記憶する。
【0023】
ハードディスク装置203は、本実施形態では大容量メモリとして機能するHD(ハードディスク)を用いている。HD203には、アプリケーションプログラム、OS、制御プログラム、関連プログラム等が格納される。本実施形態に対応する一連の処理を実行するためのアプリケーションプログラムを外部サーバからダウンロードし、HD203に記憶することができる。なお、ハードディスクの代わりに、フラッシュ(登録商標)メモリ等の不揮発性記憶装置を用いても良い。
【0024】
指示入力装置204は、ボタン、スイッチ、タッチパネル等がこれに相当する。出力装置205は、指示入力装置204から入力されたコマンドや、それに対する応答出力等を出力する。出力装置205にはディスプレイ、スピーカ、ヘッドフォン端子等を含むことができる。システムバス207は、情報処理装置120内のデータの流れを司る。
【0025】
インタフェース(以下、I/Fという)206は、他の移動装置100や本体部110とのデータのやり取りを仲介する役割を果たす。具体的に、I/F206は、BLE通信のための無線通信モジュールを含むことができ、当該モジュールはアンテナシステム、RF送受信器、1つ以上の増幅器、同調器、1つ以上の発振器、デジタル信号プロセッサ、CODECチップセット、加入者識別モジュールカード、メモリなどを含む、周知の回路機構を含むことができる。また、有線接続のための有線通信モジュールを含むことができる。有線通信モジュールは1つ以上の外部ポートを介して本体部110を含む他のデバイスとの通信を可能とする。また、データを処理する様々なソフトウェアコンポーネントを含むことができる。外部ポートは、イーサーネット、USBやIEEE1394等を介して、直接的に、又はネットワークを介して間接的に他のデバイスと結合する。尚、以上の各装置と同等の機能を実現するソフトウェアにより、ハードウェア装置の代替として構成することもできる。
【0026】
次に、ゲームシステム10において実行される処理について
図3から
図8を参照して説明する。
【0027】
まず、
図3は、ゲームシステム10を構成する各移動装置100のそれぞれにおいて実行される処理の流れを示すフローチャートである。以下に説明する実施形態においては、ゲームシステム10は移動装置100Aから100Cの3台により構築されるものとするが、より多くの移動装置によりゲームシステム10を構築してもよい。
【0028】
まず、S301において制御部121は、移動装置100のユーザであるプレーヤから操作部126を介した動作選択を受け付ける。ここで選択可能な動作としては、ゲームとプログラミングとの2種類が含まれる。ゲームが選択されると処理はS302に進み、プログラミングが選択されると処理はS309に進む。S309において動作プログラム登録処理を実行する。より詳細な動作プログラム登録処理の流れについては
図6を参照して後述する。なお、この動作プログラム登録処理の間に、外部サーバと接続して通信を行うことができる。外部サーバからは、動作プログラム登録に必要な情報をダウンロードしたり、サンプルプログラムや、ゲームで使用可能な種々のアイテム等をダウンロードしたりすることができる。
【0029】
S302において、制御部121は、移動装置100のプレーヤから操作部126を介した動作プログラムの選択を受け付ける。動作プログラムは、S308において登録されたプログラムを含み、複数の動作プログラムがある場合にはそのうちのいずれか1つを選択することができる。
【0030】
続くS303では、制御部121は移動装置100をマスターとして動作させるか、それともスレーブとして動作させるかの選択(指定)をプレーヤから操作部126を介して受け付ける。マスターはゲームシステム10において1台のみであり、スレーブは複数存在することができる。マスターの選択を受け付けた場合には、処理はS304に進み、スレーブの選択を受け付けた場合には処理はS305に進む。本実施形態では、移動装置100Aがマスターとなり、移動装置100B及び100Cがスレーブとなる場合を想定する。
【0031】
S304において、制御部121は、ゲーム盤データの生成処理を実行する。本実施形態では、ゲーム盤データの生成処理をマスターの移動装置100Aのみが実行し、スレーブの移動装置100Bと100Cに生成したゲーム盤データを提供する場合を説明する。但し、これに限らず、全ての移動装置100Aから100Cにおいてそれぞれゲーム盤データを生成してもよい。より詳細なゲーム盤データ生成処理の流れについては
図4を参照して後述する。その後、処理はS306に進む。
【0032】
スレーブ側では、S305においてマスターと接続するために、制御部121が外部装置通信部123を制御してBLEプロトコルに従ったアドバタイジングを行う。これに対しマスター側では、S306においてスレーブのスキャニングを行って、制御部121がスレーブから送信されたアドバタイジングを検知すると、表示部122の画面上に検出したスレーブの情報を表示する。制御部121は操作部126を介してプレーヤから接続の指示(スレーブの選択指示)を受け付けると、マスターの移動装置100Aから、スレーブの各移動装置100に対してコネクトリクエスト(接続要求)が送信されて、マスターとスレーブ間の通信が確立される。このような接続確立の手順はBLEプロトコルに従った公知技術を採用すればよいので、より詳細な説明は省略する。
【0033】
以上によりマスターと1以上のスレーブとの間で通信が確立されると、処理はS307に進む。S307では、制御部121は表示部122の画面に情報処理装置120を本体部110に装着するようにメッセージを表示させ、装着が完了するとS308においてゲーム処理を開始する。本実施形態において実行可能なゲームには、対戦ゲーム(1対1バトル、チームバトル、バトルロワイヤル)、障害物レース、宝探し等がある。ゲーム処理の詳細については
図8を参照して詳述する。なお、S301からS307までの処理は、本体部110に装着された状態で実行されてもよい。
【0034】
上記において、動作プログラム登録処理は移動装置100Aから100Cのそれぞれにおいて個別に実行される場合を説明した。しかし実施形態はこれに限られず、例えば、マスターの移動装置100Aが登録した動作プログラムをスレーブの移動装置100B及び100Cが共有してもよい。各移動装置が個別に登録を行う場合には、移動装置毎に異なる動作プログラムによりゲームが進行するので、各プレーヤが独自性を発揮してゲームを行うことが可能となる。その一方、移動装置で1つの動作プログラムを共有する場合には同一のルールでゲームを楽しむことができる。
【0035】
次に、
図4を参照してゲーム盤データ生成処理について説明する。ゲーム盤データ生成処理においては、まずS401において制御部121は撮影部125によりゲーム盤を撮影しゲーム盤画像を生成する。ここで撮影対象となるゲーム盤は例えば
図5に示すように構成される。
【0036】
図5において、タイル501から504は、ゲーム盤を構成するために利用可能なタイルの模様の一例を示している。本実施形態では、タイル501から504を任意に敷き詰める(配置する)ことにより、ゲーム盤を構成することができる。ゲーム盤505は、縦7枚、横7の計49枚のタイルにより構成されたゲーム盤の一例を示している。タイルの配置は矩形型に限られるものではなく、L字型やコの字型、S字型等の他、任意の配置とすることができる。
【0037】
タイル501から504は、それぞれ移動装置を上に載せられるのに十分な大きさを有するものとする。例えば、
図1に示す移動装置100Aから100Cの下側に示す枠線は各タイルの例示的な大きさを示している。タイル501から504はそれぞれ表面に模様が印刷されており、各模様はタイルに割り当てられた機能を示している。
【0038】
まず、タイル501は地面を表す。地面のタイルは、移動装置100の進行を妨げず、かつ、移動装置100の視界を遮らない性質が割り当てられている。移動装置100はタイル501の上を縦横に通行が可能である。タイル501上に記されている点線は移動装置100の進行位置を制御するために用いられる。移動装置100は撮影部125によりタイル501を撮影し、画像処理部127が画像から点線を抽出し、その位置に応じて制御部121は本体部110に制御信号を送信して移動装置100のタイル上での位置を調整する。
【0039】
タイル502は渓谷を表す。渓谷のタイルは、移動装置100の進行を妨げるが、移動装置100の視界は遮らない性質が割当てられる。よって、移動装置100は、タイル502の上を通過することはできない。
【0040】
次に、タイル503は要塞を表す。要塞のタイルは、移動装置100の進行を妨げないが、移動装置100の視界を遮る性質が割り当てられる。よって、タイル503上に存在する移動装置100は、他の移動装置100からその存在を認識されることがない。
【0041】
タイル504はピラミッドを表す。ピラミッドのタイルは移動装置100の進行を妨げ、かつ、移動装置100の視界を遮る性質が割り当てられる。よって、移動装置100はタイル504上を通過することができないし、タイル504を挟んで存在している移動装置100の存在を認識することはできない。
【0042】
タイルの種類は上述の4種類に限定されるものではなく、追加の種類を用意することができる。例えば、宝探しゲームを行う場合には、宝を示すタイルを用意してもよい。
【0043】
S401のゲーム盤撮影においては、撮影部125によりゲーム盤の全体が収まるように撮影を行い、ゲーム盤505のような画像を取得する。続くS402では、ゲーム盤505の画像を画像処理部127が二階調化し、更にS403において解析処理を行う。解析処理においては、各タイルの種別を判別すると共に、各タイルの辺が他のタイルと接触あるいは隣接しているか否かを判定する。タイルの種別はタイルの表面に印刷された模様に基づいて判別し、地面、渓谷、要塞、ピラミッドのいずれかの種別を判別する。本実施形態では、それぞれ0から3の数値を割当、地面:0、渓谷:1、ピラミッド:2、要塞:3としている。また、タイルの3辺以上が他のタイルの辺と接触あるいは隣接していないタイルは、スタート位置として数値4を割り当てる。
【0044】
上記解析処理においては、ゲーム盤を構成する候補とすべきタイルには、いずれかの側面が他のタイルの側面と隣接しているタイルのみを含めることとし、他のタイルから孤立しているタイルは含めないようにする。これは、当該孤立したタイルは移動装置100を移動させることができないので予め除外しておくためである。各タイルの種別を判別しスタート位置の判定が終了すると、S404において制御部121はゲーム盤データを生成し、記憶部128に保存する。ゲーム盤データは、S403で割り当てた数値をテーブル化して構成することができる。ゲーム盤505に基づくゲーム盤データはゲーム盤データ506のように構成することができる。
【0045】
次に、
図6を参照して動作プログラム登録処理の詳細を説明する。本実施形態では、動作プログラム登録処理を
図3の全体フローの一部としてゲーム盤データ生成処理の後に実行する場合を説明するが、本処理は、ゲームシステムを構築する以前に各プレーヤが予め独立に実行してもよい。
【0046】
本実施形態においては、情報処理装置120の表示部122には、動作プログラムの登録を行うためのユーザインタフェース(UI)が表示される。このとき表示されるUIの一例を
図7を参照して説明する。
【0047】
図7は、動作プログラムの登録を行う表示画面の一例を示す図である。画面700には、トリガー表示領域701、遷移表示702、アクション表示領域703が含まれている。
【0048】
トリガー表示領域701には、アクションを実行するための条件となるトリガーが規定されている領域である。本実施形態においてトリガーには、例えば、対戦相手(敵)に関する条件、周囲の状況に関する条件、自分に関する条件、その他の条件等が含まれる。
【0049】
具体的に、敵に関する条件には、「もし敵が前方5マス以上先に見えたら・・・」、「もし敵から自分が見えているとわかったら・・・」、「もし敵のほうが上側にいるとわかったら・・・」等が含まれる。また、周囲の状況に関する条件には、例えば「もし上の地形が移動可能なら・・・」、「もし5マス以内に高台が見つかったら・・・」、「もし上の地形が山なら・・・」等が含まれる。自分に関する条件には、例えば「もし縦座標が8以上なら・・・」、「もし主砲が砲撃可能なら・・・」、「もしダメージが50%以上なら・・・」等が含まれる。その他の条件には、例えば「もしさいころの値が3以上だったら・・・」等がある。
【0050】
プレーヤは、これらのトリガーを表示画面700上に表示される選択肢の中から選択することができる。トリガーの内容が決定されると、トリガーで規定される条件を満たす場合に実行されるアクションをトリガー表示領域701の下側に設定する。
図7では、トリガー1の下にアクション1が示されている。このとき遷移表示702により、トリガー1に基づいてアクション1が実行されることを示している。
【0051】
アクション表示領域703には、トリガーに基づいて実行されるアクション、すなわち、動作の内容が規定されている領域である。本実施形態においてアクションには、例えば、移動、回転、攻撃、作戦、変数等に関する動作が含まれる。
【0052】
具体的に、移動の動作として、「前進する」、「地点1に近づく方向に移動する」、「ランダムで移動する」等がある。回転の動作として、「この敵に向く方向に回転する」、「上方向に回転する」、「逆方向に回転する」等がある。攻撃の動作として、「この敵を主砲で砲撃する」、「体当たりする」、「主砲を撃つ」等がある。作戦の動作として、「防御する」、「身を潜める」、「アイテムを使う」等がある。変数については、「この敵の位置を地点1にセットする」、「地点1を北3東5にセットする」、「フラグ1を立てる」等がある。
【0053】
プレーヤは、これらのアクションも表示画面700上に表示される選択肢の中から選択することができる。
【0054】
本実施形態においては、表示画面700において、トリガー表示領域701に規定される条件が満たされない場合には、右隣の条件の判定を行う。よって、左端に位置するトリガー表示領域701に規定される条件から順に、条件が満たされるかどうか(成立するかどうか)が判定され、満たされない場合には、右隣の条件が順に判定されていく。条件が満たされる場合には、そのトリガー表示領域701と関連付けられたアクション表示領域703に分岐し、アクション表示領域703に規定されているアクションが実行される。本実施形態では1つのトリガーについて複数のアクションを連続的に設定することもできる。例えば、1つ目のアクションで目的地を設定し、2つ目のアクションで当該目的地に向けて移動する、という動作を行ってもよい。
【0055】
但し、アクションの組み合わせは、例えば、上記の移動、回転、攻撃、作戦、変数のそれぞれ1つずつのみしか選択できないものとしてもよい。また、ある種の攻撃を行った場合には、次のターンにおいて同種の攻撃を禁止してもよい。その場合、対応するトリガーに規定される条件が満たされた場合であっても、当該条件に基づく攻撃が禁止されているので、右隣のトリガーを更に判定することになる。以上のようにして動作プログラムを登録することができるが、動作プログラムとは、条件分岐と条件を満たす場合の動作の組み合わせの情報であって、動作プログラム以外にも、動作情報、動作条件情報、条件情報、判定情報、動作判定情報等のように呼ぶことができる。
【0056】
図6の説明に戻り、まずS601では、制御部121は、操作部126を介してプレーヤからのトリガー選択を受け付ける。具体的には、
図7に示す表示画面700において、トリガー表示領域701を表示して、当該領域内に包含するトリガー内容の選択を受け付ける。続くS602では、制御部121は操作部126を介してS601で設定したトリガーに対応するアクションの選択を受け付ける。具体的には、
図7に示す表示画面700においてアクション表示領域703を表示して、当該領域内に包含するアクション内容の選択を受け付ける。
【0057】
続くS603において制御部121は、入力を完了するか否かを判定する。プレーヤから登録を指示する操作を受け付けた場合には、入力完了と判定して処理はS604に進む。一方、登録指示を行わない場合には、S601に戻って処理を継続する。
【0058】
S604では、制御部121はユーザから入力されたトリガーとアクションとの組み合わせを動作プログラムとして登録し、記憶部128に保存する。
【0059】
なお、動作プログラムを複数の移動装置100の間で共有する場合には、マスターとなった移動装置100Aからスレーブの移動装置100B及び100Cに対して当該動作プログラムを送信する。
【0060】
次に、
図8を参照してゲーム処理の詳細を説明する。ゲーム処理は、マスターの移動装置100Aと、スレーブの移動装置100B及び100Cとの間の通信に基づいて実行される。
【0061】
本実施形態においては、ゲームシステム10を構成する複数の移動装置100は、1つのターンにおいて順番にゲーム処理及び本体部110の動作を行う。マスターはゲームの進行を制御する。マスターは自身の順番になれば、ゲーム処理及び本体部110の動作を行うと共に、その結果をスレーブに通知する。また、各スレーブはマスターからの指示に基づいて順にゲーム処理を行い、処理結果をマスター及びマスターを介してスレーブに通知する。各移動装置において実行されるゲーム処理及び動作は、S302で選択された動作プログラムに従うものとする。
【0062】
以下、
図8のフローチャートの詳細を説明する。
図8では、S801からS809がマスター側の処理を示し、S811からS818がスレーブ側の処理を示す。マスター、スレーブそれぞれにおいて、表示部122に表示された所定の操作ボタンの操作に応じてゲーム処理を開始することができる。
【0063】
ゲームが開始されると、まず、マスター側では、S801において制御部121がスタート位置の判定を行う。スタート位置の判定は、例えば、表示部122にゲーム盤画像を表示して、どのスタート位置に移動装置100が配置されたのかの指定をプレイヤから受け付けることにより行ってもよい。あるいは、スタート位置に使用するタイルの模様に予め各スタート位置を一意に示すことが可能なマークを付与しておき、タイルに含まれる当該マークの有無に基づいてスタート位置を判定してもよい。この場合、生成されたゲーム盤データにおいては、各スタート位置のタイルのマークと、ゲーム盤上の位置が関連付けられており、タイル画像から抽出されるマークによりスタート位置を特定可能となっている。よって、各移動装置100はタイル画像を撮影部125で取得し、画像処理部127が解析して、タイル画像からマークを抽出し、ゲーム盤データと照らし合わせてどのスタート位置に配置されているかを判定することができる。
【0064】
次に、S802において、制御部121はゲーム盤データの更新及びスレーブとの通信を行う。マスターの移動装置100Aは、自装置のゲーム盤上での位置が判明すると、本ステップにおいてゲーム盤データ上に自装置の位置を書き込む。また、マスターの移動装置100Aは、スレーブの移動装置100B及び100Cから、各装置のマップ上の位置情報を受信して、受信した位置情報に基づいてゲーム盤データを更新する。これにより、移動装置100Aから100Cのゲーム盤上に位置する全てのゲーム装置がゲーム盤上のどの位置に位置しているかが特定可能となる。全ての移動装置100の位置情報を更新し終わると、マスターの移動装置100Aは更新済みのゲーム盤データをスレーブの移動装置100B及び100Cに送信する。これにより、スレーブ側のゲーム盤データも更新される。
【0065】
続くS803において、制御部121は、動作を行う移動装置100がいずれの移動装置であるかを判定する。当該処理は順番判定と呼び、例えば、移動装置100A、移動装置100B、移動装置100Cの順で動作を行う場合には、次に動作を行う移動装置が上記順序においていずれの移動装置であるかを判定する。
【0066】
S803における順番判定の結果、マスターと判定された場合、すなわち、移動装置100Aの自装置である場合には処理はS805に進む。一方、次はスレーブの順番である場合、処理はS804に移行する。
【0067】
S804において、制御部121は、外部装置通信部123を制御して順番に該当するスレーブの送信装置に対して実行指示を送信する。その後、処理はS806に進む。
【0068】
S805において、制御部121は、動作プログラムに従い実行する動作を決定すると共に、動作を実行する。当該動作の決定は、その時点のゲーム盤データを参照して行うことができる。ゲーム盤データには、ゲームに参加している移動装置100の最新の位置が登録されているため、各移動装置100の位置、及び、ゲーム盤データから得られる周囲の地形情報に基づいて実行する動作を判定する。
【0069】
続くS806において、制御部121は外部装置通信部123を制御して、S805において動作を実行した場合には動作結果をスレーブの各移動装置100に通知する。また、スレーブが動作を実行した場合には、当該動作結果をスレーブから受信すると共に、他のスレーブに対して動作結果を通知する。
【0070】
続くS807において、制御部121はS806における通信の結果に従い、パラメータを更新すると共に、必要な画面表示を表示部122において行う。例えば、スレーブの移動装置100Bからマスターの移動装置100Aが攻撃を受けた場合には、当該攻撃に基づき移動装置100Aのキャラクタの体力値を削減すると共に、攻撃されたことを示す攻撃画像を表示部122に表示することができる。更に、攻撃を防御した場合には防御画像を表示したり、キャラクタ画像を表示したりすることもできる。
【0071】
続くS808においては、撮影部125がタイル画像を取得して、S809において画像処理部127が取得したタイル画像に基づいてゲーム盤上での現在位置を判定する。その後、処理はS802に戻り、ゲーム盤データの更新等を行う。
【0072】
次に、スレーブ側の移動装置100の処理について説明する。S811において制御部121はスタート位置の判定を行う。当該判定処理はS801における処理と同様に行うことができる。続くS812において、制御部121は外部装置通信部123を制御して、自装置のゲーム盤上の位置情報をマスターの移動装置100Aに送信し、マスター側で更新済みのゲーム盤データを受信する。また、受信したゲーム盤データにより記憶部128に記憶されている自装置のゲーム盤データを更新することで、最新のゲーム盤データへの更新が可能となる。
【0073】
続くS813では、制御部121は、マスターの移動装置100Aから実行指示を受信したか否かを判定する。実行指示を受信した場合には処理はS814に進み、受信しない場合には処理はS815に進む。S814における処理は、S805における処理と同様である。
【0074】
S815では、制御部121は外部装置通信部123を制御してマスターの移動装置100Aと通信し、S814において動作を実行した場合には動作結果をマスターに通知する。また、他の移動装置(マスターを含む)が動作を実行した場合には、当該動作結果をマスターから受信する。続くS816では、制御部121はS815における通信の結果に従い、パラメータを更新すると共に、必要な画面表示を表示部122において行う。ここでの処理はS807と同様である。続くS817においては、撮影部125がタイル画像を取得して、S818において画像処理部127が取得したタイル画像に基づいてゲーム盤上での現在位置を判定する。その後、処理はS812に戻り、ゲーム盤データの更新等を行う。
【0075】
次に
図9を参照して、情報処理装置120の本体部110に対する装着について説明する。本体部110には、スマートフォン等の情報処理装置を固定するための支持機構が備え付けられている。支持部901は、情報処理装置120の長辺側の端部を両脇から挟み込むように配置され、その幅はシャフト904により矢印で示すように調整可能に構成されている。支持部902及び903は、情報処理装置の短辺側の端部を上下に挟み込むように配置され、その幅はシャフト904により同じように矢印で示すように調整可能に構成されている。これにより任意の幅及び長さを有するスマートフォン、タブレット端末などを固定することができる。
【0076】
情報処理装置120を本体部110に取り付ける際の取り付け角度Θは、任意に変更することが可能である。取り付け角度Θは、例えば0度以上90以下の範囲で変更可能とすることができる。
【0077】
次に表示部122に表示される画面の他の態様について説明する。制御部121は移動装置100Aが位置するゲーム盤の情報に基づいて必要な画面表示を表示部122において行ってもよい。例えば、取得された移動装置100Aが位置するゲーム盤の情報が、砂利道等、凹凸のある地形の情報である場合には、キャラクタが揺れていることを示すキャラクタ画像を表示部122に表示することができる。また、ゲーム盤において現実に凹凸のある地形が形成されている場合において移動装置100Aが凹凸のある地形部分に位置している場合には、同じくキャラクタが揺れていることを示すキャラクタ画像を表示部122に表示することができる。このようにゲーム盤の仮想的な情報だけではなく、ゲーム盤の現実的な情報に基づき表示部122に表示される画面を構成することも可能である。
【0078】
以上の実施形態に対応する発明によれば、情報処理装置を搭載し、当該情報処理装置による制御に基づき移動が可能な複数の移動装置を利用して、所定の異なる種別のタイルを配置して構成されたゲーム盤上において対戦ゲームを含む種々のゲームを実行することができる。
【0079】
[その他の実施形態]
本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。また本発明に係る情報処理装置は、1以上のコンピュータを該情報処理装置として機能させるコンピュータプログラムによっても実現可能である。該コンピュータプログラムは、コンピュータが読み取り可能な記録媒体に記録されることにより、あるいは電気通信回線を通じて、提供/配布することができる。