[本発明の実施形態の説明]
最初に、本発明の実施形態の内容を列記して説明する。本発明の一実施形態のゲームプログラムは、以下のような構成を備える。
(項目1)
コンピュータに対して、
一以上のゲームオブジェクトが配置可能なゲーム空間を構成するステップと、
第1ユーザ操作によって選択された対象オブジェクトを特定するステップと、
前記対象オブジェクトの現在位置を特定するステップと、
第2ユーザ操作によって選択された移動先位置を特定するステップと、
前記現在位置と前記移動先位置との距離を特定するステップと、
前記距離に応じたポイントを算出するステップと、
ゆーづによって、算出された前記ポイントが消費されると、前記対象オブジェクトを前記現在座標から前記移動先座標に移動するステップと、
を実行させる、
ゲームプログラム。
(項目2)
項目2に記載のゲームプログラムであって、
前記コンピュータに対して、
前記ゲームオブジェクトに所定の属性を関連付けるステップと、
前記対象オブジェクトの属性を特定するステップと、
を更に実行させ、
前記算出するステップは、更に、前記属性を考慮して前記ポイントを算出する、
ゲームプログラム。
(項目3)
項目1又は項目2に記載のゲームプログラムであって、
前記コンピュータに対して、
前記ゲームオブジェクトにゲーム空間における占有領域を関連付けるステップと、
前記対象オブジェクトの前記占有領域を特定するステップと、
を更に実行させ、
前記算出するステップは、更に、前記占有領域を考慮して前記ポイントを算出する、
ゲームプログラム。
(項目4)
項目1乃至項目3のいずれかに記載のゲームプログラムであって、
前記コンピュータに対して、
算出された前記ポイントを表示するステップ、
を更に実行させる、
ゲームプログラム。
(項目5)
項目1乃至項目4のいずれかに記載のゲームプログラムであって、
前記ゲーム空間において第1ユーザ領域を第1ユーザに関連付け、第2ユーザ領域を第2ユーザに関連付けるステップと、
前記ゲームオブジェクトのうち、第1ゲームオブジェクトを前記第1ユーザに関連付け、
第2ゲームオブジェクトを前記第2ユーザに関連付けるステップと、
前記現在位置及び移動先位置が前記第1ユーザ領域又は前記第2ユーザ領域のいずれに存在するか判定するステップと、
を更に実行させ、
前記算出するステップは、更に、前記判定の結果を考慮して前記ポイントを算出する、
ゲームプログラム。
[本発明の実施形態の詳細]
本発明の実施形態に係るゲームプログラムの具体例を、以下に図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
図1に示される本実施形態のゲームシステム1は、複数のユーザに街作りシミュレーションゲームを提供するものである。ゲームシステム1は、複数のユーザ端末100-1~4と、ゲームサーバ200と、を含む。各ユーザ端末100とゲームサーバ200は、ネットワーク2を介して接続されている。ゲームサーバ200は、ゲームに関する各種サービスを各ユーザ端末100に提供する。ネットワーク2は、インターネットや、図示しない無線基地局によって構築される無線ネットワーク(例えばWiFi(登録商標))を含んでいても良い。
ユーザは、図2に示されるような仮想的なゲーム空間G内の平面PLに各種オブジェクトOを配置することによってゲームを進行する。ゲーム空間Gは、例えば複数の格子で形成された平面と、空や遠景等を示す背景で構成されている。本実施形態では、複数のオブジェクトOのそれぞれが1つ以上の前記格子上に配置される。オブジェクトを配置するために必要な格子数は、建物ごとに決定されている。各ユーザは、オブジェクトOをゲーム空間G内に配置することにより、ゲームポイントを取得できる。ゲームポイントは、例えばオブジェクト毎に関連付けられた「人口」Pを含む。また、ユーザはゲーム内通貨としての「コイン」C1や「ダイヤモンド」C2の他、各種ゲーム内アイテムといったゲームパラメータを保有する。
図3は、各ユーザ端末100の構成を示す。ユーザ端末100はスマートフォンやフィーチャーフォン、PDA、タブレット型コンピュータ等の携帯端末であることが好ましい。ユーザ端末100は、互いにバス接続された制御部110、記憶部120、入力部131、表示部132、通信部140を備える。ユーザ端末100は入力部131および表示部142を構成するタッチパネル130を備えることが好ましく、ユーザは当該タッチパネル130を介してゲーム空間G内のゲームオブジェクトを操作することができる。入力部131は、ユーザのタッチパル130に対する操作を検知して、ユーザ端末100に対して何らかの操作(主に、タッチ操作、スライド動作、スワイプ操作、及びタップ操作等の物理的接触操作)があったことを検知する。タッチパル130は、タッチセンシング部を備える液晶ディスプレイ等で構成され得る。
通信部140は、ゲームサーバ200に対して各種情報の送受信を実行するための制御を行う。本実施形態では、当該要求は所定のゲームプログラムやゲームデータをユーザ端末100に送信させる操作指示や、ゲームを進行させるための指示を含む。例えば、通信部140はユーザIDをゲームサーバ200の送信することにより、当該ユーザIDに関連付けられたゲームオブジェクトに関する情報(保有する建物等のオブジェクト情報等)を受信する。また、通信部140はユーザの操作に基づいてゲーム空間G内にゲームオブジェクトを配置した場合には、その結果として取得されたゲームポイントをゲームサーバ200に送信する。
制御部110はCPU等を含んで構成され得る。通信部140は制御部110の制御によりユーザ端末100とネットワーク2との接続を確立する。記憶部120は、DRAMなどの揮発性記憶装置で構成される主記憶と、フラッシュメモリやHDDなどの不揮発性記憶装置で構成される補助記憶を含む。補助記憶には、ゲームサーバ200からダウンロードされるゲームプログラム等が格納される。当該プログラムは、主記憶上に展開され制御部110に実行される。ユーザ端末100の制御部110は、当該プログラムによって、作用受付部111、端末処理部112、タイマー部113、端末判定部114、画像生成部11として機能し得る。なお、主記憶上には、制御部110が当該プログラムに従って動作している間に生成したデータや制御部110によって利用されるデータも一時的に格納される。
作用受付部111は、入力部131に対するユーザの作用を検知する。作用受付部111は、タッチパネル130や、その他のボタンを介した操作指示等、いかなる入力がなされたかを判別し、その結果を端末処理部112等の必要な要素に出力する。タッチパネル130に対する操作入力がなされた場合には、操作入力位置の座標情報や、タッチ操作やスライド動作などいかなる操作がなされたかを検知する。また、連続して検知されていた入力が途切れることを検知することで、タッチパネル130からユーザの接触が離れたことを検知することもできる。
端末処理部112は、ユーザ端末100全体の動作を制御し、各要素間におけるデータの送受信や、ゲームの実行に必要な演算処理を行う。例えば、作用受付部111で検知された操作入力に基づいてゲームプログラムに従ったゲームを展開させ、その結果としてのゲーム画像を描画するよう、画像生成部115に指示する。例えば、タッチパネル130に対する操作入力に基づいて仮想空間内におけるゲームオブジェクトを操作する。また、ゲームの進行状態に応じて、ゲーム空間Gの視野を指定するための仮想カメラの位置を制御する処理を行っても良い。
タイマー部113はゲーム空間G内における時間の経過を計測する。タイマー部113はゲーム空間G内に配置された各オブジェクトOについて、個別に時間を計測する機能を有する。例えば、後述するように、各オブジェクトOがゲーム空間G内に配置された時間を記憶部120に記憶させ、その後経過した時間を測定することにより、各オブジェクトOが建築中オブジェクトから建築済オブジェクトに変化するまでの建築時間や、建築済オブジェクトに変化してから各種ゲームポイントを取得できるまでの準備時間、スキルを発動できるようになるまでのクールタイムが経過したか否かを判定するための時間情報を端末判定部114に提供する。また、タイマー部113は後述する対戦時間を計測してもよい。
端末判定部114は、端末処理部112からの判定要求に基づいて、記憶部に記憶された各種ユーザ情報やゲーム情報を参照し、ゲーム進行に必要な各種判定を実行する。例えば、ゲーム空間G内に配置されたオブジェクトOが所定の条件を満たしているか否かを判定する。後述するように、タイマー部113および記憶部120を参照して、当該オブジェクトの時間情報を取得し、各オブジェクトに設定されたユーザに付与されるゲームポイントを算出するための基礎となる条件を満たしているか否か判定する。
画像生成部115は、ゲームサーバ200から受信したユーザ情報や、ゲームプログラムによる演算結果、ユーザの入力部131に対する操作入力に基づいて、表示部132に表示されるゲーム空間GやゲームオブジェクトO等の画像を生成する。本実施形態では、ユーザ端末100はゲームサーバ200からユーザがゲーム空間Gに配置したオブジェクトの種類や配置位置に関する情報を取得してゲーム空間Gの画像を生成する。また、画像生成部116は端末処理部112によるゲーム進行制御に応じて表示画像を更新する。
図4は、ゲームサーバ200の構成を示す。ゲームサーバ200は、システム管理者等が、ユーザ(プレイヤ)に提供するゲームを制御し、管理する際に利用する情報処理装置であり、例えばワークステーションやパーソナルコンピュータ等である。本実施形態のゲームサーバ200は、各ユーザ端末にゲーム進行に必要な情報を提供するゲーム提供機能を有している。ゲームサーバ200は、ユーザ端末100から各種の操作指示を受信し、ユーザ端末100上で動作可能なゲームプログラムや、Webページ(ゲーム画面等)や、ゲームパラメータ等の各種データ、各種通知等を送信する。ゲームサーバ200は、ネットワーク2と通信するネットワークインターフェースである通信装置210と、処理装置220と、メモリ部230と、記憶装置240と、入力装置250と、出力装置260と、を備えており、これらは互いにバスにより電気的に接続されている。
処理装置220は、ゲームサーバ200全体の動作を制御し、各要素間におけるデータの送受信や、ゲームの実行に必要な演算処理を行う。処理装置220は例えばCPU(Central Processing Unit)であり、記憶装置240に格納されるとともにメモリ230に展開されたプログラム等を実行することによって、必要な処理が実現される。制御部220は、当該プログラムによって、受信部221、サーバ処理部222、データ管理部223、マッチング部224、計測部225、サーバ判定部226、報酬計算部227、送信部228として機能し得る。
メモリ部230は例えばDRAM(Dynamic Random Access Memory)などの揮発性記憶装置であり、記憶装置240は例えばフラッシュメモリやHDD(Hard Disc Drive)などの不揮発性記憶装置である。なお、主記憶上には、制御部110が当該プログラムに従って動作している間に生成したデータや制御部110によって利用されるデータも一時的に格納される。記憶装置240には、ゲームプログラムやユーザの認証プログラムが格納される他、後述するように、ユーザ管理テーブル300、オブジェクト管理テーブル310、スキル管理テーブル320といったデータベースが構築されていてもよい。
受信部221は、各ユーザ端末100からの各種情報を受け付ける。各ユーザ端末100は、通信部140の制御により各種情報をゲームサーバ200に対して送信し、ゲームサーバ200は、ネットワーク2、通信装置210を介して当該情報を受信し、受信部221が情報の内容を識別して受け付ける。受信部221は、記憶装置240に格納される各種管理テーブルを参照し、必要に応じて管理部223が各種管理テーブルを更新することにより、必要な処理を実行する。当該情報には、各ユーザに関連付けられるオブジェクトをゲーム空間内に配置する操作、削除する操作、移動する操作、購入売却する操作、買収する操作等の各種要求が含まれる。
サーバ処理部222は、ゲームサーバ200全体の動作を制御し、各要素間におけるデータの送受信や、ゲームの実行に必要な演算処理を行う。また、データ管理部223は、サーバ処理部222における各種演算結果に基づいて、記憶装置240に格納される各種データベースを更新する。例えば、ユーザがゲーム空間GにオブジェクトOを配置するようにユーザ端末100に作用を与えると、受信部221はその結果としてユーザが保有するオブジェクト情報やゲームポイントに関する情報を受信し、サーバ処理部222が必要な処理を実行するとともに、データ管理部223は当該データに基づいてユーザ管理テーブル300を更新する。
ユーザ端末100からゲーム空間Gにオブジェクトを配置する要求を受け付けた場合には、データ管理部223はゲーム空間Gに配置されるオブジェクトの情報を、ユーザ情報、オブジェクトの配置位置、等に関する情報と関連付けて記憶する。また、後述するように、各ユーザやオブジェクトに関連するゲームポイントに変動が生じた場合には、当該変動の結果に関する情報を各オブジェクトと関連付けるように、各種データベースを更新する。
マッチング部224は、複数のユーザをマッチングして対戦ゲームを開始するための一連の処理を行う。ユーザが後述するホームゲーム空間において対戦ゲーム開始要求を入力すると、マッチング部224はロビーを生成し、当該ユーザをマッチング待ちユーザとして特定する。当該ロビーに特定されたマッチング待ちユーザが所定数に達すると、マッチング部224は当該ユーザに対戦ゲーム空間を構成し、対戦ゲームを開始する処理をサーバ処理部222に実行させる。
計測部224は、主として対戦ゲームにおける対戦時間を管理する。計測部224は、後述するように、マッチング部224から対戦ゲーム開始処理の要求があった場合に、対戦時間の計測を開始し、複数のユーザ間における対戦時間を一元管理する。また、計測部224はゲーム空間Gの時間情報を計測し、タイマー部113におけるゲーム空間Gの時間情報と照合する。これにより、ユーザ端末100とゲームサーバ200においてゲーム空間Gの時間情報が同期され、各種時間情報の計測・判定が円滑に実施され得る。
サーバ判定部226は、サーバ処理部222からの判定要求に基づいて、記憶装置240に記憶された各種ユーザ情報やゲーム情報を参照し、ゲーム進行に必要な各種判定を実行する。また、サーバ判定部226は、対戦ゲーム終了時に各ユーザの保有するゲームポイントを参照することにより、対戦の勝敗を判定する。勝敗は、前述した人口Pといったゲームポイントに基づいて判定されることが好ましく、コインC1等のユーザに関連づけられた所定のゲームパラメータや、ゲーム空間Gの占有率といった他の要素を加味してもよい。
報酬計算部227は、サーバ判定部226における勝敗判定結果に基づいて、各ユーザに提供される報酬を算出する。報酬計算部227は、対戦ゲームにおける各ユーザの順位情報をも参照し、当該順位に応じた報酬を各ユーザに分配してもよい。
送信部226は、ユーザ端末100上で動作可能なゲームプログラムや、ゲーム画面等のゲーム空間情報や、ゲームポイントやゲームパラメータ、報酬等の各種データ、各種通知等をユーザ端末100に送信する制御を行う。
入力装置250はマウスやキーボード等の情報入力機器である。出力装置260は液晶ディスプレイ等であり、コンピュータの情報をモニタリングするために用いられる。
上記のユーザ端末100の機能の少なくとも一部は、ゲームサーバ200が備えるように構成されていても良い。また、上記のゲームサーバ200の機能の少なくとも一部は、ユーザ端末100が備えるように構成されていても良い。すなわち、本実施形態におけるゲームプログラムが実行されるコンピュータは、上述のユーザ端末100やゲームサーバ200を含む情報処理装置等から任意に選択され得る。
図5に、各ユーザが保有するゲームポイントやゲームパラメータ、オブジェクト等のユーザ情報を管理するユーザ管理テーブル300の一例を示す。ユーザ管理テーブル300は、ゲームサーバ200の記憶装置240および/またはユーザ端末100の記憶部120に記憶されている。ユーザ管理テーブル300には、各ユーザを識別するユーザ情報と、ユーザが保有するコイン・アイテム・ダイヤといったゲームパラメータと、各ユーザが保有する建物等のオブジェクト情報が関連付けられている。各オブジェクトに関する基本情報は後述するオブジェクト管理テーブル310で管理され、ユーザ管理テーブル300では、各オブジェクトのレベルや、レベルによる各建物のパラメータ補正値や、建物のゲーム空間Gにおける配置位置が管理される。また、後述するように、各オブジェクトが建築中であるか、建築済であるかといった建物の状態や、当該オブジェクトがゲーム空間Gに配置されてからの経過時間、または,当該オブジェクトが建築済となってから経過した時間を示す経過時間も管理される。また、各オブジェクトに関連づけられたゲームポイントとしての保有人口が管理され、各オブジェクトの保有人口の合計値が、当該ユーザに関連づけられたゲームポイントとして管理される。
図6に、各オブジェクトに関連付けられた情報を管理するオブジェクト管理テーブル310の一例を示す。本実施形態では、各オブジェクトには、オブジェクトの種類、保有人口や生産されるコインやアイテムといった、取得できるゲームポイント・ゲームパラメータに関する情報が規定されている。また、各オブジェクトからゲームポイント・ゲームパラメータを取得可能とするためには、当該オブジェクトを稼働させる必要があり、そのために必要なゲームパラメータとしての電力消費量が規定されている。各オブジェクトが建築中建物としてゲーム空間Gに配置されてから建築済建物に変化するまでに必要な時間である建築時間や、各オブジェクトがコインやアイテムを生産するのに必要な準備時間が設定されている。準備時間は複数定められていてもよく、当該準備時間が経過する度に、コインやアイテムの生産量が増加するように設定されていてもよい。
図7,図8に、各オブジェクトに関連づけられたスキルを管理するスキル管理テーブル320,330の一例を示す。図7に示すパッシブスキルを有するオブジェクトは、ゲーム空間G内に配置された後、建築済建物に変化することにより、ゲームを有利に進めるための所定のスキル(パッシブスキル)を発動させることができる。各オブジェクトはスキルの内容、スキルの影響が及ぼされる範囲である有効範囲が規定されており、有効範囲内に配置されたオブジェクトに対して自動的にスキルによる効果を与える。図8に示すアクティブスキルを発動することができる各オブジェクト(以下、スキルオブジェクトと称することがある。)は、ゲーム空間G内に配置された後、建築済建物に変化し、かつ、ユーザからのスキル発動要求を受け付けることにより、ゲームを有利に進めるための所定のスキルを発動させることができる。各オブジェクトはスキルの内容、スキルの影響が及ぼされる範囲である有効範囲、クールタイムが設定されている。各オブジェクトは、建築済オブジェクトに変化されるか、または、一度スキルを使用するとクールタイムに入り、所定時間内はスキルを発動することができない。
以下、本実施形態によるゲームシステム1の処理の流れを図9~図31を参照して詳細に説明するユーザは、オブジェクト一覧(図示せず)からゲーム空間G内に配置(いわゆる「建築」。)したいオブジェクトを選択し、場所を指定することで、各オブジェクトをゲーム空間内に配置できる。ユーザは、前述のように、各オブジェクトをゲーム空間内に配置することでゲームポイントとしての人口やコイン(ゲーム内通貨)、各種アイテムを取得できる。また、既に配置されたオブジェクトを選択し、別の場所を指定することで、当該オブジェクトの配置位置を移動させることができる。
図9に示すように、本実施形態のゲーム空間Gはホームゲーム空間G1と対戦ゲーム空間G2を含む。ホームゲーム空間G1は、各ユーザA~Dに関連づけられており、当該ホームゲーム空間G1に関連づけられたユーザのみがゲームオブジェクトを配置できるゲーム空間である。対戦ゲーム空間G2は複数のユーザA~Dによってネットワークを介して共有されるゲーム空間であり、複数のユーザA~Dがそれぞれに関連づけられたゲームオブジェクトを対戦ゲーム空間G2に配置できる。各ユーザA~Dは、所定のユーザ作用によって各ユーザ端末100に表示されるホームゲーム空間G1と対戦ゲーム空間G2を切り替えることができる。
本実施形態において、人口等の対戦の勝敗を決するためのゲーム内情報がゲームポイントとして定義される。また、コインや各種アイテムや等の所定ユーザまたは所定ゲームオブジェクトに関連づけられたゲームを有利に進めるために必要なゲーム内情報や、各ゲームオブジェクトに関連づけられ、当該ゲームオブジェクトを稼働させるために必要なゲーム内情報(例えば、後述する消費電力や、火災発生有無といった情報)が、ゲームパラメータとして定義される。なお、ゲームポイントとゲームパラメータは、少なくとも一部が重複していても良く、ゲームポイントに基づいて対戦の勝敗を決定するに当たり、ゲームパラメータの一部を参照してもよい。
図10~18を参照して、ホームゲーム空間G1におけるゲーム進行処理の流れを詳細に説明する。図10~13を参照して、ホームゲーム空間G1にゲームオブジェクトとしての建物を配置することにより、ユーザにゲームポイントが付与される処理について説明する。図14~16を参照して、ホームゲーム空間G1に配置された建物に対するユーザ作用により、ユーザにゲームパラメータが付与される処理について説明する。図17,図18を参照して、ホームゲーム空間G1内の建物を対戦ゲーム空間G2内で使用可能とするための処理について説明する。図12,図13,図15,図16,は当該機能をコンピュータに実行させるゲームシステムの処理を示すフローチャートである。図10,図11,図14,図17,図18はホームゲーム空間G1の一例を示す。
図10および図12に示すように、ユーザ端末100に表示されたショップSに含まれるショップオブジェクトSOから、所定のオブジェクトを長押しして選択し、ホームゲーム空間G1内の平面PL1における所定位置にドラッグする。これにより、作用受付部111がユーザから入力部131に対する作用を検知し(S101)、作用受付部111がオブジェクトをゲーム空間内に配置させるためのオブジェクト配置要求として受け付ける(S102)。平面PL1には、オブジェクト配置要求に基づいて建築中建物BO(第1状態)が配置される(S103)。そして、ユーザ端末100はゲームサーバ200に対して、当該オブジェクトがゲーム空間G内に配置されたことを示すゲーム空間情報をゲームサーバ200に送信する(S104)。ゲームサーバ200はユーザが配置したオブジェクトに関する情報を受信し(S201)、当該情報に基づいてユーザ管理テーブル300を更新する(S202)。
平面PL1に建築中建物BOが配置されると、タイマー部113により経過時間の計測が開始される(S105)。そして、各オブジェクトに設定された建築時間を、建築中建物の経過時間が超過し(S106)、当該建築中オブジェクトBOに対するユーザ作用(例えばタップ操作)をさらに受け付けると(S107)、建築中建物BOが建築済建物O1~O5に変化する(S108)。次に、建築済オブジェクトにライフラインから電力が供給されているか否かが判定され(S109)、各オブジェクトが稼働される(S110)図11に示すように、ライフラインである発電所O3が道路Rに隣接して配置されているので、当該道路Rに隣接するオブジェクトに対して電力が供給される。本実施形態では、マンションO1、商店O4、消防署O5が発電所O3から供給される電力によって稼働され、公園O2は電力を必要としないので、道路Rに隣接していなくても稼働される。
建築済建物が稼働すると、当該オブジェクトに対するユーザ作用の受付を開始し、後述するように、当該オブジェクトによるゲームパラメータの取得や、スキルの発動を受け付けることを可能にするよう処理される(第2状態)。また、建築中建物が建築済建物に変化すると、タイマー部113により各オブジェクトO1~O5の経過時間の計測が開始される(S110)。そして、当該オブジェクトをゲーム空間G内に配置することによって獲得される、当該オブジェクトに関連づけられたゲームポイント(例えば人口P)が、ユーザに付与され、当該ユーザに関連づけられたゲームポイントが更新される(S111)。
このとき、ユーザ端末100は建築中建物が建築済建物に変化した情報を含むゲーム情報をゲームサーバ200に送信し、ゲームサーバ200はユーザが保有するオブジェクトが建築済建物に変化したことを示す情報や、建築済建物が稼働されることによって獲得されたゲームポイントに関する情報を受信し(S203)、当該情報に基づいてユーザ管理テーブル300を更新する(S204)。
なお、建築済建物は、再度建築中建物に変化されても良い。例えば、建築済建物を増築したりレベルアップさせることによって、保有可能人口やコイン生産量を増加させるようにしてもよい。この場合には、建築済建物を再度建築中建物に変化させ、経過時間の計測を開始し(S105と同様)、増築やレベルアップに必要な建築時間(増築時間)経過後にユーザ作用を受け付ける(S106~S107と同様)ことによって、建築中建物を増築やレベルアップ後の建築済建物に変化させてもよい(S108と同様)。その後のゲームポイント更新処理についても、前述の処理S109~S111,S203~S204が適用され得る。
図11,図13に示すように、平面PL1に建築済建物としてのマンションO1、公園O2、発電所O3、商店O4、消防署O5が配置されると(S112)、各オブジェクトの保有人口を計算することによって(S117)、ユーザに関連づけられたゲームポイントが算出される。本実施形態では、人口を保有可能なオブジェクトはマンションO1のみである。まず、オブジェクト管理テーブル310を参照してマンションO1の保有可能人口を特定し(S113)、マンションO1が平面PL1に配置することによって保有可能となる初期人口を特定する(S114)。
次に、他のオブジェクトのスキルによってマンションO1に保有される人口の変動を算出する。まず、マンションO1が他のオブジェクトの有効範囲に属しているか否かを判定し(S115)、マンションO1は公園O2の有効範囲E1と、発電所O3の有効範囲E2に属していると特定される。そして、公園O2および発電所O3のパッシブスキルの内容を特定すると(S116)、初期人口から公園O2のパッシブスキルによる人口増加分を加算し、発電所O3のパッシブスキルによる人口減少分を減算することにより、マンションO1の保有人口が算出される(S117)。ユーザ端末100はマンションO1をゲーム空間に配置することによって得られた保有人口をゲームポイント情報としてゲームサーバ200に送信し(S118)、ゲームサーバ200は当該ゲームポイントに関する情報を受信して(S205)、当該情報に基づいてユーザ管理テーブル300を更新する(S206)。
さらに、図14~図16に示すように、平面PL1に配置された建物に対するユーザ作用により、ユーザにゲームパラメータが付与される処理が実行される。図15に示すように、例えばユーザが平面PL1に配置された商店O4をタップすると、ユーザ端末100はユーザ作用が入力されたことを検知する(S119)。そして、ユーザ管理テーブル300をから商店O4の経過時間を参照して、商店O4からコインC1を取得に可能にするための準備時間を経過したか否かを判定し(S120)、Yesと判定される場合には、商店O4からコインを獲得するための要求として受け付ける(S121)。この時、各オブジェクトに付されたコインを獲得可能であることを示す表示が消去され、ユーザはコイン獲得要求が受け付けられたことが視認できる。
次に、経過時間に基づいて、獲得されるコインの量といったゲームパラメータ値が計算される(S122)。そして、ユーザ端末100はゲームサーバ200に対して、所定値のゲームパラメータがユーザに付与されたことを示すゲーム情報をゲームサーバ200に送信する(S123)。ゲームサーバ200はユーザに付与されたゲームパラメータに関する情報を受信し(S207)、当該情報に基づいてユーザ管理テーブル300を更新する(S208)。
また、図16に示すように、ユーザ端末100はスキルオブジェクトである消防署O5に対するユーザ作用を検知すると(S125)、消防署O5が建築済オブジェクトに変化されてからの経過時間か、または、一度スキルを発動してからの経過時間を参照し、経過時間がクールタイムを経過したか否かを判定する(S126)。クールタイムを超過している場合には、ユーザ端末100はユーザ作用を受け付けて、消防署O5の有効範囲E3を特定し、有効範囲内に火災が発生したオブジェクトが配置されているか否かを判定する(S127)。有効範囲E3に配置されたマンションO1に火災が発生しているから、マンションO1を対象オブジェクトとして特定し、消防署O5のスキルによってマンションO1の火災を鎮火するように処理する(S128)。ユーザ端末100はマンションO1の火災を鎮火することによって得られたゲームポイントやゲームパラメータに関する情報をゲームサーバ200に送信し、ゲームサーバ200は当該情報を受信して(S209)、ユーザ管理テーブル300を更新する(S210)。また、消防署O5のスキルが発動されると、消防署O5はクールタイムに入るとともに、ユーザ管理情報300における経過時間をリセットして再計測を開始し、経過時間がクールタイムを超過するまでは再度スキルを発動できないように処理される(S129)。
また、図17,図18に示すように、ホームゲーム空間G1内に配置された建物、および、ユーザがホームゲーム空間G1内に配置できなかったオブジェクトを保管しておく倉庫Wに保管されているオブジェクトWOを、対戦ゲーム空間G2内で使用可能なデッキオブジェクトDOとして選択することができる。
図17に示すように、ユーザは平面PL1に配置されたオブジェクトOおよび道路Rを長押しすることによって選択し、デッキDにドラッグすることによって、デッキオブジェクトDOとして登録することができる。
また、図18に示すように、平面PL1にデッキオブジェクトDOを選択するためのオブジェクトである本社H0が配置されていてもよい。本社H0の有効範囲E4内に配置されたオブジェクトはデッキオブジェクトDOとして登録され、その配置関係を維持した状態で後述する対戦ゲーム空間G2に反映させることができる。
次に、図19を参照して、ホームゲーム空間G1から対戦ゲーム空間G2に切り替えるためのゲームシステム1における処理フローを説明する。あるユーザ端末100からゲームサーバ200に対して対戦ゲームを開始するためのマッチング要求が送信されると(S130)、ゲームサーバ200はこれを受け付けて(S211)、他の対戦ユーザを待ち受けるためのロビーを生成するとともに、当該ユーザをマッチング待ちユーザとして登録する。当該ユーザ端末100では、対戦相手のマッチングが完了するまで待機状態となる(S131)。
ゲームサーバ200は他のユーザ端末100からも同様にマッチング要求を受け付け、当該ロビーに特定されたマッチング待ちユーザが所定数に達したと判断すると(S212)、図20に示すような対戦ユーザ管理テーブル340を生成する(S213)。対戦ユーザ管理テーブル340には、保有コインや保有アイテムといったゲームパラメータはホームゲーム空間G1から引き継がず(異ならせる)、全ユーザに共通の初期状態が設定される。一方、保有ダイヤモンド等の一部のゲームパラメータは、ホームゲーム空間G1から引き継ぐようにされている(一致される)。また、保有オブジェクトとして、ホームゲーム空間G1で設定されたデッキオブジェクトDOが設定される。このとき、図17に示すようにデッキDにデッキオブジェクトDOを移動させることによりデッキオブジェクトDOを選択した場合には、初期状態では全デッキオブジェクトDOが倉庫Wに収容された状態とされる。一方、図18に示すように本社H0の有効範囲に基づいてデッキオブジェクトDOを選択した場合には、デッキオブジェクトDOの対戦ゲーム空間G2における初期配置位置が特定される(S214)。
次に、ゲームサーバ200は対戦ユーザ間で共有される対戦ゲーム空間G2を構成し(S215)、対戦時間の計測を開始した後に(S216)、当該情報を含む対戦ゲーム情報を各ユーザ端末に送信する(S217)ことによって、対戦ゲームが開始される(S218)。各ユーザ端末においては、当該対戦ゲーム情報を受信することによって(S132)、対戦ゲームが開始される(S133)。対戦時間は対戦ゲーム空間G2において対戦ゲームが行われる時間であり、対戦開始後に所定の対戦時間が経過することにより対戦ゲームが終了され、対戦ゲーム空間G2にゲームオブジェクトが配置されないように処理される。対戦ゲーム情報が対戦時間の計測が開始された時刻と、対戦が終了される時刻に関する情報を含むことにより、各ユーザ端末100において対戦ゲーム空間G2における経過時間が共有される。対戦時間は、長さの異なる複数の対戦時間のうちから選択可能であることが好まし。
図21~32を参照して、対戦ゲーム空間G2におけるゲーム進行処理の流れを詳細に説明する。図21~26を参照して、対戦ゲーム空間G2にゲームオブジェクトとしての建物を配置することにより、ユーザにゲームポイントが付与される処理について説明する。図27~31を参照して、対戦ゲーム空間G2において実現される、対戦ゲームのゲーム性を高めるためのゲーム要素の一例を説明する。図32は、対戦ゲーム終了後に、各ユーザに付与されたゲームポイントに基づいて対戦ゲームの勝者を決定する処理について説明する。図22,図26,図32は当該機能をコンピュータに実行させるゲームシステムの処理を示すフローチャートである。図21,図23~図25,図27,図29~図31は対戦ゲーム空間G2の一例を示す。
対戦ユーザのマッチングが完了すると、各ユーザ端末100には図21に示す対戦ゲーム空間G2が表示される。対戦ゲーム空間G2内の平面PL2はユーザA~Dに関連づけられており、ユーザA~Dがゲームオブジェクトを配置できる。一方、平面PL2は、ユーザAに関連づけられた第1エリアPE1,ユーザBに関連づけられた第2エリアPE2,ユーザCに関連づけられた第3エリアPE3,ユーザDに関連づけられた第4エリアPE4を含む。ユーザAは第1エリアPE1内にのみゲームオブジェクトOを配置できる。ユーザBは第2エリアPE2内にのみゲームオブジェクトOを配置できる。ユーザCは第3エリアPE3内にのみゲームオブジェクトOを配置できる。ユーザDは第4エリアPE4内にのみゲームオブジェクトOを配置できる。なお、ユーザAのユーザ端末100-1の表示部132には第1エリアPE1のみが視認可能に表示され、ユーザBのユーザ端末100-2の表示部132には第2エリアPE2のみが視認可能に表示され、ユーザCのユーザ端末100-3の表示部132には第3エリアPE3のみが視認可能に表示され、ユーザDのユーザ端末100-4の表示部132には第4エリアPE4のみが視認可能に表示される。従って、ユーザAは第2エリアPE2~第4エリアPE4を視認することができない。
第1エリアPE1~第4エリアPE4は、ユーザA~Dに関連づけられた本社H1~H4を含む。図18に示したように、ホームゲーム空間G1において本社H0の有効範囲E4内に配置されたオブジェクトはデッキオブジェクトDOとして登録した場合には、対戦ゲーム開始時に、第1エリアPE1~第4エリアPE4のうち、本社H1~H4を含む領域にデッキオブジェクトDOを反映させても良い。これにより、対戦ゲーム開始時に有効範囲E4内に配置されたデッキオブジェクトDOを、その配置関係を維持した状態で対戦ゲーム空間G2に反映させることができ、ユーザの利便性が向上する。
また、ホームゲーム空間G1と同様に、ユーザA~Dは平面PL2(第1エリアPE1~第4エリアPE4)にゲームオブジェクトOを配置できる。図10と同様に、各ユーザ端末100に表示されたショップSに含まれるショップオブジェクトSOから、所定のオブジェクトを長押しして選択し、対戦ゲーム空間G2内の平面PL2における所定位置にドラッグする。これにより、作用受付部111がユーザから入力部131に対する作用を検知し、作用受付部111がオブジェクトを対戦ゲーム空間G2内に配置させるためのオブジェクト配置要求として受け付ける(図22のS134)。上記の所定位置が、各ユーザがオブジェクトを配置できる第1エリアPE1~第4エリアPE4内にあると判定される場合には(S135のY)、オブジェクト配置要求に基づいて平面PL2に建築中建物BO(第1状態)が配置される(S136)。平面PL2に建築中建物BOが配置されると、タイマー部113により経過時間の計測が開始される(S137)そして、ユーザ端末100はゲームサーバ200に対して、当該オブジェクトが対戦ゲーム空間G2内に配置されたことや、経過時間の計測が開始された時刻を示すゲーム空間情報をゲームサーバ200に送信する(S138)。
ゲームサーバ200は各ユーザA~Dが配置したオブジェクトに関する情報を受信し(S219)、当該情報に基づいて対戦ユーザ管理テーブル340を更新する(S220)。これにより、対戦ゲーム空間G2内に各ユーザが配置したオブジェクトの配置に基づくゲーム空間情報や対戦ユーザA~Dの保有ゲームポイントやゲームパラメータが一元管理される。そして、ゲームサーバ200がゲーム空間情報やユーザ情報を各ユーザ端末100に送信することにより(S221)、各ユーザ端末間でゲーム空間情報やユーザ情報が共有され、対戦ゲーム空間G2がリアルタイムに更新される。
各オブジェクトに設定された建築時間を、建築中建物の経過時間が超過し、当該建築中オブジェクトBOに対するユーザ作用(例えばタップ操作)をさらに受け付けると、建築中建物BOが建築済建物Oに変化する(S140)。このような対戦ゲーム空間G2内に建築済建物Oが配置された情報は、ゲーム空間情報としてゲームサーバ200に送信され、他の各ユーザ端末にも共有される(S220,S221)。
図23に示すように、対戦ゲーム空間G2内に建築済建物OA1,OA2,OB1~3が配置されると(図26のS140)、各建築済オブジェクトにライフラインから電力が供給されているか否かが判定される(S141)。マンションOA1と発電所OA2はユーザAに関連づけられ、マンションOB1と発電所OB2と公園OB3と道路RはユーザBに関連づけられている。ライフラインである発電所OA2および発電所OB2は道路Rに隣接して配置されているので、当該道路Rに隣接するオブジェクトに対してゲームパラメータとしての電力が供給される。本実施形態では、道路Rはユーザ間で共有して用いることができ、発電所OA2はユーザBに関連づけられた道路Rを介してユーザAに関連づけられたオブジェクトに電力を提供するとともに、発電所OB2はユーザBに関連づけられた道路Rを介してユーザBに関連づけられたオブジェクトに電力を提供する。従って、マンションOA1は発電所OA1から供給される電力によって稼働され、マンションOB1は発電所OB2から供給される電力によって稼働される。なお、公園OB3は電力を必要としないので、道路Rに隣接しているか否かによらず稼働される。第1ユーザに関連づけられたゲームオブジェクト同士を、第2ユーザに関連づけられたゲームオブジェクトによって関連づけることができる。このように、道路Rのように一部のオブジェクトを各ユーザ間で共用できるものとすることにより、各ユーザは対戦相手のオブジェクト配置を考慮して自らのゲームオブジェクト配置を工夫する必要が生じ、街づくり要素等における戦略的思考の重要性を高めることができる。
建築済建物OA1,OA2,OB1~3が稼働すると、当該オブジェクトに対するユーザ作用の受付を開始し、後述するように、当該オブジェクトによるゲームパラメータの取得や、スキルの発動を受け付けることを可能にするよう処理される(第2状態)。また、建築中建物が建築済建物に変化すると、タイマー部113により各オブジェクトOA1,OA2,OB1~3の経過時間の計測が開始される(S142)。そして、当該オブジェクトを対戦ゲーム空間G2内に配置することによって獲得される、当該オブジェクトに関連づけられたゲームポイント(例えば人口P)が、ユーザに付与される。
このとき、各オブジェクトの保有人口を計算することによって(S147)、ユーザに関連づけられたゲームポイントが算出される。本実施形態では、人口を保有可能なオブジェクトはマンションOA1およびマンションOA2である。まず、オブジェクト管理テーブル310を参照してマンションOA1,OB2の保有可能人口を特定する(S143)とともに、マンションO1,OB2が平面PL2に配置することによって保有可能となる初期人口を特定する(S144)。
次に、他のオブジェクトのスキルによってマンションOA1,OB2に保有される人口の変動を算出する。まず、マンションOA1,OB2が他のオブジェクトの有効範囲に属しているか否かを判定する(S145)。このとき、オブジェクト管理テーブル310およびパッシブスキル管理テーブル320を参照することにより、平面PL2内に配置された建築済建物OA1,OA2,OB1~3のうち、パッシブスキルを有するオブジェクトの有効範囲を特定し、当該有効範囲内に少なくとも一部が配置されているオブジェクトを特定する。本実施形態では、発電所OA2の有効範囲E5内にマンションOB1が配置され、公園OB3の有効範囲E6内にマンションOA1一部およびマンションOB1の一部が配置されている。
マンションOA1は公園OB3の有効範囲E6、に属していると特定される(S145のY)。従って、公園OB3のパッシブスキルの内容を特定すると(S146)、初期人口から公園OB3のパッシブスキルによる人口増加分を加算し、マンションOA1の保有人口が算出される(S147)。また、マンションOB1は、発電所OA2の有効範囲E5と公園OB3の有効範囲E6と、に属していると特定される(S145のY)。従って、発電所OA2および公園OB3のパッシブスキルの内容を特定すると(S146)、初期人口から公園OB3のパッシブスキルによる人口増加分を加算し、発電所OA2のパッシブスキルによる人口減少分を減算することにより、マンションOB1の保有人口が算出される(S147)。ユーザAに関連づけられたユーザ端末100-1は、マンションOA1をゲーム空間に配置することによって得られた保有人口をゲームポイント情報としてゲームサーバ200に送信し、ユーザBに関連づけられたユーザ端末100-2は、マンションOB1をゲーム空間に配置することによって得られた保有人口をゲームポイント情報としてゲームサーバ200に送信する(S148)、ゲームサーバ200は当該ゲームポイントに関する情報を受信して(S222)、当該情報に基づいてユーザ管理テーブル300を更新するとともに、更新後の当該情報を各ユーザ端末100に送信する(S223)。
このとき、各オブジェクトを配置することにより更新されるゲームポイント値は、ホームゲーム空間G1に配置された場合に更新されるゲームポイント値と一致することが好ましい。即ち、対戦ユーザ管理テーブル340に特定された保有オブジェクトの保有可能人口やパッシブスキルにより更新される保有人口数は、ユーザ管理テーブル300およびオブジェクト管理テーブル310、スキル管理テーブル320,330に基づいて設定されることが好ましい。これにより、ユーザはゲームオブジェクトをホームゲーム空間G1で育成することにより対戦ゲームを有利に進行でき、ホームゲーム空間G1におけるゲーム性を高めることができる。
なお、他の建物の有効範囲に属しているかを判定するステップ(S145)において特定される有効範囲は、図25に示したユーザAに関連付けられた消防署OA4のアクティブスキルの有効範囲E7を採用してもよい。この場合の処理は図16に示したものと同様であるが、消防署OA4はユーザAのみのユーザ作用を受け付けることとされ、これにより有効範囲E7が特定される。有効範囲E7内に配置されたマンションO1に火災が発生している場合には、消防署OA4のアクティブスキルによって火災が鎮火され、マンションOA1が再び稼働されるようにゲームパラメータを更新する。
アクティブスキルは有効範囲内に配置されたオブジェクトのうち、スキルを発生させたユーザAに関連づけられたオブジェクトのゲームポイントおよびゲームパラメータのみを変動させることとしてもよい。即ち、火災の発生したマンションOA1がユーザBに関連づけられている場合には、消防署OA4のアクティブスキルにより火災を鎮火させないようにしてもよい。なお、上記のパッシブスキルについても、有効範囲内に配置されたオブジェクトのうち、スキルを発生させるオブジェクトに関連づけられたユーザに関連づけられたオブジェクトのゲームポイントおよびゲームパラメータを変動させることとしてもよい。
また、各オブジェクトの対戦ゲーム空間G2における建築時間やクールタイムは、ホームゲーム空間G1における建築時間やクールタイムと異ならせても良い。また、対戦時間が、長さの異なる複数の対戦時間のうちから選択可能である場合には、対戦時間に応じて建築時間やクールタイムが変更されてもよい。例えば、対戦時間が短い場合には建築時間やクールタイムを短く設定しておくことが好ましい。これにより、対戦時間に応じて対戦ゲーム空間G2におけるゲーム進行のスピード感を異ならせることができるので、ユーザは容易に対戦ゲームを楽しむことができる。
上記のようにしてゲームポイントが更新されると(S148)、更新後のゲームポイントが閾値を超えているか否かが判定される(S149)。閾値を超えたと判定されると、図21に破線で示すように、第1エリアPE1~第4エリアPE4のうち当該ユーザに関連受けられたエリアの面積が拡大される(S150)。これにより、ゲームの進行に応じてゲームの自由度が増し、街づくり要素等におけるゲーム性が高まる。なお、ゲームポイントが減少した場合には、それに応じて第1エリアPE1~第4エリアPE4の面積が縮小されても良い。
なお、第1エリアPE1~第4エリアPE4を最初は広く設定しておき、各ユーザのゲームポイントに応じて第1エリアPE1~第4エリアPE4の面積が縮小されるものとしても良い。ゲームの進行に応じてゲームの自由度を制限することにより、当初よりオブジェクトを配置する戦略を考慮することが要求されるようになる。
本実施形態では、各ユーザは自己のゲームポイントまたは所定のゲームパラメータ(例えば、ゲーム内通貨としてのコイン)と引き替えに、他のユーザのオブジェクトを自らに関連づける操作(以下「買収」という)をすることができる。これにより、街づくり要素等における戦略的思考の重要性を高めることができる。
図27に示すように、ユーザAがユーザBに関連づけられたマンションOB4を買収する場合を例示して説明する。本実施形態では、ユーザAは第1エリアPE1内に配置され、他のユーザB~Dのいずれかに関連づけられたオブジェクトを買収することができる。マンションOB4は、第1エリアPE1内に配置されるとともに、第2エリアPE2内にも配置されている。従って、前述のように、ユーザAのゲームポイントまたはその他のゲームパラメータに基づいて第1エリアPE1の面積を拡大するようにすれば、ゲームの進行に伴ってオブジェクトを配置する自由度が増す一方で、他のユーザとオブジェクトを配置するためのスペースを奪い合う必要が生じる。これにより、街づくり要素等におけるゲーム性を高めることができる。
他のユーザのオブジェクトを買収するために必要なゲームポイントおよびゲームパラメータは、図28に示すように、各オブジェクト、および、オブジェクトの種類に応じて定められていることが好ましい。本実施形態では各オブジェクトには基準価格が設定されている。そして、買収価格算出テーブル350に基づいて、当該オブジェクトが対戦ゲーム空間G2内で活用されている度合いである活用度を算出し、基準価格に活用度を乗じた値が買収価格として設定される。各ユーザは、買収価格に相当するコイン(第1値)を支払った場合には、100%の確率で対象オブジェクトを買収することができる。一方、買収価格より少ない額のコイン(第2値)を支払った場合には、支払額の買収価格に占める割合に応じて買収確率が設定される。各ユーザは、自己のコイン保有額と買収確率を考慮して、支払額を決定することができる。
オブジェクトの対戦ゲーム空間G2内における活用度は、当該オブジェクトが他のオブジェクトに与える影響の度合いに基づいて算出されることが好ましい。図28に示すように、マンションは、保有可能人口に占める実際の保有人口の割合が活用度として設定されている。公園および消防署は、有効範囲の面積(マス数)に占める、影響を与えるオブジェクトの面積(マス数)の割合が活用度として設定されている。発電所は、電力供給量に占める、実際に建物が消費している電力(電力消費量)の合計値の割合が活用度として設定されている。これにより、ユーザが対戦ゲーム空間G2内でよく活用している重要度の高いオブジェクトは、買収を困難にすることができる。これにより、オブジェクトの買収によって不合理なゲーム状況(戦況)の変化が生じることを防止でき、街づくり要素等におけるゲーム性が高まる。なお、商店や畑のように、活用度によって買収価格を変動させないオブジェクトが含まれていてもよい。
ゲームポイントまたは所定のゲームパラメータと引き替えに他のユーザに関連付けられたゲームオブジェクトを取得する(所謂「買収」)処理は、対戦ゲーム空間G2において、自己のゲームオブジェクトを配置可能なエリア外に配置されたゲームオブジェクトに対して適用されてもよい。また、「買収」機能はホームゲーム空間G1においても適用され得る。例えば、ユーザAがユーザBのホームゲーム空間G1を訪問した際に、ユーザAがユーザBのホームゲーム空間G1に配置されたゲームオブジェクトを買収できるように処理されてもよい。その場合には、図28に示した買収価格算出テーブル350に従って、買収価格および買収確率が算出されることが好ましい。
本発明においては、ゲームポイント(コイン)の消費と引き換えに、配置したゲームオブジェクトを移動することができる。必要なゲームポイント(以下、単に「コスト」と呼ぶ)は移動量(マスの数)に応じて決定される。以下、図29を参照して、平面PL上ののm0に配置されたゲームオブジェクトOがm1乃至m3に移動する場合のコストの算出例を説明する。
移動量は、初期位置からX軸又はY軸に沿って何マス移動させれば移動先にゲームオブジェクトが配置できるかに基づいてマスの数を算出している。換言すれば、移動先座標と移動元座標の差をマスの数としている。例えば、図29において、初期位置であるm0に配置されたゲームオブジェクトOの移動先をm1とした場合、Y軸に沿って6マス移動させれば、移動先であるm1上に配置することができる(図示された補助数字を参照)。従って、m0からm1までの移動量は「6」となる。移動量が算出されると、次に図30に示されるコスト管理テーブルを参照してコストを特定する。コスト管理テーブルにおいては、移動量に応じてそれぞれコストが関連付けられている。例えば、移動量が1のときのコストは100であり、移動量が2のときのコストは200である。また、上記の例における移動量が6の場合のコストは、600である。ユーザは、600のコストの消費(支払)を行うことにより、ゲームオブジェクトOをm1に移動させることがでるきる。
図29を再び参照して、ゲームオブジェクトOをm2に移動させる場合も同様である。即ち、ゲームオブジェクトOをX方向に沿って4マス移動させれば移動先座標m2に配置することができるため、移動量は4となる。図30のコスト管理テーブルによれば、移動量が4の場合のコストは400である。従って、ユーザは400のコストの消費(支払)を行うことにより、ゲームオブジェクトOをm2に移動させることがでるきる。更に、ゲームオブジェクトOをm3に移動させる場合も同様である。移動先m3は、ゲームオブジェクトOをX方向に沿って5マス移動させ更にY方向に沿って8マスの合計13マス移動すれば、移動先座標m3に配置することができる。よって、移動量は13となる。図30のコスト管理テーブルによれば、移動量13の場合のコストは1300である。従って、ユーザは1300のコストの消費(支払)を行うことにより、ゲームオブジェクトOをm3に移動させることがでるきる。
本実施の形態によるコストの算出は、図30に示されるコスト管理テーブルからも理解されように、移動量が1増加する毎にコストは100増加する正比例である。即ち、移動に必要なコストPは、移動先座標を(X
n,Y
n)、移動元座標を(X
0,Y
0)とした場合、下記数式1で表すことができる。
しかしながら、現実生活の移動コスト(所謂「引っ越し費用」)と同様に、移動量が増加するほど指数的に増加(即ち、遠くに移動させようとするほど指数的にコストが増加)することとしてもよい。この場合のコストP’は、例えば、下記数式2で示されるように、移動先座標(X
n,Y
n)と移動元座標(X
0,Y
0)との差に所定の累乗係数d(d>1)を付加するものであってもよい。
以上説明したように、ゲームオブジェクトの移動にコストを課すこととすれば、ユーザは、より緊張感をもってゲームオブジェクトの配置を行うこととなり、ゲームの難易度を上げることができる。また、例えば、上述したように、ゲームオブジェクトの属性効果を工夫することによって、相手側に自分のゲームオブジェクトを移動せざるを得ない状況を作り出し、相手側へのコスト攻撃という新しい戦術をユーザに提供することができる。
上述した実施の形態においては、単に移動量のみによってコストを算出することとしていたが、移動するゲームオブジェクトの大きさによって、付加コストを要求することとしてもよい。この場合、ゲームオブジェクトの大きさは、平面PL上において配置に必要なマス数(占有領域)として定義することができる。この場合、図30に示されるコスト管理テーブルにおけるコストは占有領域1あたりのコストとして適用する。即ち、占有領域が1のゲームオブジェクトに関しては、図30のコスト管理テーブルをそのまま適用することとしてよい。例えば、図29のゲームオブジェクトOは、平面PL上において、2マスの領域上に配置されている(占有領域=2)。よって、上記の方法によって算出されたコストの2倍の消費と引き換えに移動させることができる。具体的には、図29に示される占有領域が2のゲームオブジェクトOをm1、m2、m3に移動させた場合のコストは、夫々、1200、400、2600となる。また、ゲームオブジェクトOの占有領域が仮に4であった場合のコストは、夫々、2400、1600、5200にまで増加する。このように、本実施の形態によれば、ゲームオブジェクトの大きさも考慮しながら配置操作を行う必要が生じることから、慎重な配置が求められることとなり、より高度なゲーム性を提供することができる。
上述した実施の形態においては、単に移動距離のみによってコストを算出することとしていたが、ゲームオブジェクトに関連付けられた属性に応じてコストを増減させることとしてもよい。この場合、図31に示されるように、オブジェクトの属性と、移動量1あたりのコストとを関連付けて管理するテーブルを参照することによってコストを算出すればよい。例えば、移動の対象となっているゲームオブジェクトがマンションやアパート等の住宅施設の場合移動量1あたりのコストは100であり、同様に、スーパーや専門店等の商業施設では200、工場等の生産施設では1000、消防署や学校等の公共施設では50、道路や水路等のライフラインでは10、水力発電所や風力発電所等の発電施設では2000、というようにしてもよい。なお、コストの額は一例であり、適宜変更可能である。また、属性によってはコストが0であってもよい。
ゲームオブジェクトの属性に加えて(又はそれとは別に)、移動元の領域特性と移動先の領域特性とを考慮することによって付加コストを算出し、上述したコストに増額(又は減額)してもよい。かかる領域特性の例としては、例えば、ユーザに関連付けられた平面の領域(その領域を支配しているユーザ)などが挙げられる。図32に示されるように、既に説明した複数のユーザによる対戦を行うゲームモードにおいては、対戦ゲーム空間G4内の平面PL4に対して、複数のユーザがゲームオブジェクトを配置する。なお、以下の説明においては、理解を容易にするため、プレイヤPE1とプレイヤPE2に関してのみの説明を行う。プレイヤPE1は、平面PL4上に自己の支配領域である領域Ar_1を有している。また、プレイヤPE2は、平面PL4上に自己の支配領域である領域Ar_2を有している。
移動対象となっているゲームオブジェクトの移動元の領域特性と、移動先の領域特性によって決定される付加コストは、例えば、図33に示されるテーブルによって算出される。図示されるテーブルにおいて特定される付加コストは、自己領域内における付加コストを0とする一方、他人の領域内にあるゲームオブジェクトに対する操作はコストを高くしている。なお、付加コストの設定方法は、適宜変更可能である。例えば、有利な移動(例えば、自分の領域を移動先とする移動)であれば、付加コストの値を移動コストから減算することとしてもよい。
図32及び図33を参照して、プレイヤPE1の領域Ar_1内のL0に位置するゲームオブジェクトOをL1乃至L4に移動する場合の付加コストを説明する。図に示されるように、移動元領域の支配者は「自分」である。従って、図33のテーブルを参照すると、領域の支配者が自分であるL1に移動する場合の負荷コストは0であり、領域の支配者がいないL2に移動する場合の負荷コストは+5であり、領域の支配者が自分且つ他人であるL3に移動する場合の負荷コストは+10であり、領域の支配者が他人であるL4に移動する場合の負荷コストは+15である。
このように、移動元と移動先の領域の支配者に応じて、コストを増減させることとすれば、例えば、自分の移動コストを下げるため(又は他人の移動コストを上げるため)に自分の領域を拡張したり、領域拡張の意思決定に新たな要素を追加することができる。
なお、上述したアクティブスキルを使用して移動のコストを低下させる特殊なゲームオブジェクトを設けることとしてもよい。例えば、図34に示されるように、ゲームオブジェクトO1に対するユーザ操作によってアクティブスキルが発動されると、所定の時間に限り、有効範囲E内にあるゲームオブジェクトO2所定の移動のためのコストを低下させる。一方、有効範囲外のゲームオブジェクトO3の移動コストには影響はない。また、これとは逆に、有効範囲内にある相手のオブジェクトの移動コストを増加させるようなゲームオブジェクトを登場させることとしてもよい。更には、このような効果を、上述したパッシブスキルとして保持させることとしてもよい。
以上説明したゲームオブジェクトの移動に際して、算出されたコストを表示することとしてもよい。上述したように、ゲームオブジェクトの移動量、ゲームオブジェクトの占有領域(マス数)、ゲームオブジェクトの属性、移動先と移動元の領域特性の全てを採用した場合、このような表示がないと不便だからである。なお、コストの表示は、ゲームオブジェクト近傍であもよいし、マスの上に表示することとしてもよい。