[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2017023696A - ゲームサーバ - Google Patents

ゲームサーバ Download PDF

Info

Publication number
JP2017023696A
JP2017023696A JP2016091120A JP2016091120A JP2017023696A JP 2017023696 A JP2017023696 A JP 2017023696A JP 2016091120 A JP2016091120 A JP 2016091120A JP 2016091120 A JP2016091120 A JP 2016091120A JP 2017023696 A JP2017023696 A JP 2017023696A
Authority
JP
Japan
Prior art keywords
game
user
user terminal
lobby
battle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2016091120A
Other languages
English (en)
Inventor
元 紅林
Hajime Kurebayashi
元 紅林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Colopl Inc
Original Assignee
Colopl Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Colopl Inc filed Critical Colopl Inc
Priority to JP2016091120A priority Critical patent/JP2017023696A/ja
Publication of JP2017023696A publication Critical patent/JP2017023696A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】複数のユーザが関与するゲームにおけるユーザの利便性を高める。
【解決手段】複数のユーザのそれぞれに関連付けられた複数のユーザ端末にネットワークを介してゲーム空間を共有させるゲームサーバであって、ゲーム空間におけるゲームを開始するための必要ユーザ数を特定するステップと、ユーザ端末から送信されたマッチング要求を受け付けるステップと、マッチング要求を送信した前記ユーザ端末の数を特定するステップと、ユーザ端末の数が前記必要ユーザ数に達したか否かを判定するステップと、ユーザ端末の数が前記必要ユーザ数に達したと判定した場合に、前記ゲームを開始するステップと、を実行するゲームサーバ。
【選択図】図9

Description

本発明は、ゲームサーバに関する。
ネットワークを通じて複数のユーザに共通のゲーム空間を共有させて実行される対戦ゲームが知られている。特許文献1には、バックグラウンドでプレイヤ対戦を行うための対戦相手を待ち受ける処理を行い、対戦相手が見つかると、その対戦相手とのネットワーク対戦に移行する技術が開示されている。これにより、対戦相手が容易に見つからない場合に、ゲーム開始までプレイヤを長時間待たせることによる、プレイヤのストレスを解消し得る。
特開2010−167251号公報
特許文献1に開示されているゲームでは、プレイヤがCPU対戦している最中に対戦相手とのマッチングが完了すると、強制的にネットワーク対戦に移行される(所謂「乱入」)。従って、プレイヤは結局ゲームを起動し続けて、対戦相手とのマッチングが完了するまで待つ必要がある。
本発明は、複数のユーザが関与するゲームにおけるユーザの利便性を高めることを目的とする。
本発明によれば、複数のユーザのそれぞれに関連付けられた複数のユーザ端末にネットワークを介してゲーム空間を共有させるゲームサーバであって、前記ゲーム空間におけるゲームを開始するための必要ユーザ数を特定するステップと、前記ユーザ端末から送信されたマッチング要求を受け付けるステップと、前記マッチング要求を送信した前記ユーザ端末の数を特定するステップと、前記ユーザ端末の数が前記必要ユーザ数に達したか否かを判定するステップと、前記ユーザ端末の数が前記必要ユーザ数に達したと判定した場合に、前記ゲームを開始するステップと、を実行するゲームサーバが得られる。
本発明によれば、複数のユーザが関与するゲームにおけるユーザの利便性を高めることができる。
本実施形態のゲームシステムを示す図である。 本実施形態のゲーム空間を示す図である。 本実施形態のユーザ端末の構成を示す図である。 本実施形態のゲームサーバの構成を示す図である。 本実施形態のユーザ管理テーブルの一例を示す。 本実施形態のオブジェクト管理テーブルの一例を示す。 本実施形態のパッシブスキル管理テーブルの一例を示す。 本実施形態のアクティブスキル管理テーブルの一例を示す。 ホームゲーム空間と対戦ゲーム空間の関係を示す図である。 ホームゲーム空間の一例を示す図である。 ホームゲーム空間の一例を示す図である。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 ホームゲーム空間の一例を示す図である。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 ホームゲーム空間の一例を示す図である。 ホームゲーム空間の一例を示す図である。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 対戦ユーザ管理テーブルの一例を示す。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 対戦ゲーム空間の一例を示す図である。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 対戦ゲーム空間の一例を示す図である。 対戦ゲーム空間の一例を示す図である 対戦ゲーム空間の一例を示す図である。 本実施形態のゲームシステムにおける処理を示すフローチャートである。 本実施形態のゲームシステムにおける処理を示すフローチャートである。
[本発明の実施形態の説明]
最初に、本発明の実施形態の内容を列記して説明する。本発明の一実施形態のゲームサーバは、以下のような構成を備える。
(項目1)
複数のユーザのそれぞれに関連付けられた複数のユーザ端末にネットワークを介してゲーム空間を共有させるゲームサーバであって、
前記ゲーム空間におけるゲームを開始するための必要ユーザ数を特定するステップと、
前記ユーザ端末から送信されたマッチング要求を受け付けるステップと、
前記マッチング要求を送信した前記ユーザ端末の数を特定するステップと、
前記ユーザ端末の数が前記必要ユーザ数に達したか否かを判定するステップと、
前記ユーザ端末の数が前記必要ユーザ数に達したと判定した場合に、前記ゲームを開始するステップとを実行するゲームサーバ。
本項目のゲームサーバによれば、マッチング要求を送信したユーザが必要ユーザ数に達した場合に、自動的にゲームを開始させることができる。これにより、ユーザがゲームを起動し続けてマッチング完了まで待つ必要をなくすことができる。
(項目2)
前記マッチング要求を送信した前記ユーザ端末からログアウト通知を受信した場合に、前記マッチング要求を送信した前記ユーザ端末の前記マッチング要求を解除しない、項目1のゲームサーバ。
本項目のゲームサーバによれば、ユーザはマッチング要求後にログアウトしたとしても、マッチング要求を送信したユーザが必要ユーザ数に達した場合に、自動的にゲームを開始させることができる。これにより、複数のユーザが関与するゲームにおけるユーザの利便性を高め得る。
(項目3)
前記ゲームが開始された後に、前記ログアウト通知を送信した前記ユーザ端末から送信されたログイン通知を受信した場合には、
前記ログイン通知を受信した前記ユーザ端末に対して、前記ゲームに途中参加させるためのゲーム情報を送信する、項目2のゲームサーバ。
本項目のゲームサーバによれば、ユーザはマッチング要求後にログアウトし、ゲーム開始後に再度ログインしたとしても、ゲームに途中参加することができる。これにより、複数のユーザが関与するゲームにおけるユーザの利便性を高め得る。
(項目4)
前記ユーザ端末は、個別にホームゲーム空間に関連付けられるとともに、前記ホームゲーム空間から前記マッチング要求を送信するように構成され、
前記マッチング要求に基づいて、前記ユーザ端末をロビーに関連付ける、項目1〜3のいずれかのゲームサーバ。
本項目のゲームサーバによれば、各ユーザ端末を、ホームゲーム空間からロビーを介して対戦ゲーム空間に関連付けることができる。これにより、各ユーザ端末を容易にマッチングできる。
(項目5)
前記ユーザ端末は、前記ロビーから前記ホームゲーム空間に関連付けるためのロビー退出要求を送信するように構成され、
前記ロビーに関連付けられた前記ユーザ端末からログアウト通知を受信した場合には、前記ロビーに関連付けられた前記ユーザ端末の前記マッチング要求を解除せず、
前記ロビーに関連付けられた前記ユーザ端末から前記ロビー退出要求を受信した場合には、前記ロビーに関連付けられた前記ユーザ端末の前記マッチング要求を解除する、項目4のゲームサーバ。
本項目のゲームサーバによれば、ユーザがロビーから退出した場合には自動的にマッチングを中止させることができる。これにより、ユーザは容易に対戦ゲームを中止して、ホームゲーム空間におけるゲームに復帰できる。これにより、複数のユーザが関与するゲームにおけるユーザの利便性を高め得る。
(項目6)
前記ユーザ端末は、前記ロビーから前記ホームゲーム空間に関連付けるためのロビー退出要求を送信するように構成され、
前記ロビーに関連付けられた前記ユーザ端末からログアウト通知を受信した場合には、前記ロビーに関連付けられた前記ユーザ端末の前記マッチング要求を解除せず、
前記ロビーに関連付けられた前記ユーザ端末から前記ロビー退出要求を受信した場合にも、前記ロビーに関連付けられた前記ユーザ端末の前記マッチング要求を解除しない、項目4のゲームサーバ。
本項目のゲームサーバによれば、ユーザはホームゲーム空間におけるゲームを進行しつつ、マッチングを待つこともできる。これにより、複数のユーザが関与するゲームにおけるユーザの利便性を高め得る。
(項目7)
前記ユーザ端末は、前記ロビー退出要求によって前記ホームゲーム空間に関連付けられた後に、前記マッチング要求を解除するマッチング中止要求を送信するように構成され、
前記マッチング中止要求に基づいて、前記ロビー退出要求によって前記ホームゲーム空間に関連付けられた前記ユーザ端末からのマッチング要求を解除する、項目6のゲームサーバ。
本項目のゲームサーバによれば、ユーザはホームゲーム空間におけるゲームを進行しつつ、マッチングを解除することもできる。これにより、複数のユーザが関与するゲームにおけるユーザの利便性を高め得る。
(項目8)
前記ゲーム空間に、所定のユーザに関連付けられたゲームオブジェクトを配置することにより、前記所定のユーザおよび前記ゲームオブジェクトに関連付けられるゲームポイントを算出するステップと、
前記ゲームが開始されてから対戦時間が経過した後に、前記ゲーム空間に前記ゲームオブジェクトが配置されないように処理するステップと、
前記複数のユーザのそれぞれに関連づけられたゲームポイントを比較し、前記複数のユーザから勝者を選定するステップと、を実行する項目1〜7のいずれかのゲームサーバ。
本項目のゲームサーバによれば、街づくりシミュレーションゲームにおける対戦ゲームと行った、途中参加によりゲームを進めることが比較的容易な対戦ゲームにおいて、自動的にゲームを開始させることが容易となる。これにより、ユーザの利便性を向上し得る。
[本発明の実施形態の詳細]
本発明の実施形態に係るゲームサーバの具体例を、以下に図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
図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と、ロビーLBを含む。ホームゲーム空間G1は、各ユーザA〜Dに関連づけられており、当該ホームゲーム空間G1に関連づけられたユーザのみがゲームオブジェクトを配置できるゲーム空間である。対戦ゲーム空間G2は複数のユーザA〜Dによってネットワークを介して共有されるゲーム空間であり、複数のユーザA〜Dがそれぞれに関連づけられたゲームオブジェクトを対戦ゲーム空間G2に配置できる。ロビーLBは、対戦ユーザが所定数に達するまで各ユーザA〜Dが待ち合わせを行うためのスペースである。各ユーザ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〜図25を参照して、ホームゲーム空間G1から対戦ゲーム空間G2に切り替えるためのゲームシステム1における処理フローを説明する。
図19に示すように、あるユーザ端末100からゲームサーバ200に対して対戦ゲームを開始するためのマッチング要求が送信されると(S130)、ゲームサーバ200はこれを受け付けて、記憶装置240に記憶された図20に示すような対戦ユーザ管理テーブル340を参照し、対戦ユーザ待ちロビーの有無を判定する(S211)。当該ユーザ端末100は、表示部132にロビー画面が表示されることによりロビーLBに関連付けられ、対戦相手のマッチングが完了するまで待機状態となる(S131)。
対戦ユーザ管理テーブル340には、ロビーID毎にマッチング要求を送信したユーザの対戦ゲーム空間G2における情報が管理される。ユーザ端末100からマッチング要求が送信されると、当該ユーザ端末100はいずれかのロビーLBに関連付けられる。各ロビーにはゲームを開始するための必要ユーザ数が規定されており、本実施形態では4人である。当該ロビーに関連付けられたユーザ数が必要ユーザ数より少ない場合には、待ち受け状況が「対戦ユーザ待ち」とされる。図20に示す対戦ユーザ管理テーブル340では、3人のユーザが関連付けられているので、対戦ユーザ待ちとされている。また、対戦ゲーム空間G2における保有コインや保有アイテムといったゲームパラメータはホームゲーム空間G1から引き継がず(異ならせる)、全ユーザに共通の初期状態が設定される。一方、保有ダイヤモンド等の一部のゲームパラメータは、ホームゲーム空間G1から引き継ぐようにされている(一致される)。また、保有オブジェクトとして、ホームゲーム空間G1で設定されたデッキオブジェクトDOが設定される。このとき、図17に示すようにデッキDにデッキオブジェクトDOを移動させることによりデッキオブジェクトDOを選択した場合には、初期状態では全デッキオブジェクトDOが倉庫Wに収容された状態とされる。一方、図18に示すように本社H0の有効範囲に基づいてデッキオブジェクトDOを選択した場合には、デッキオブジェクトDOの対戦ゲーム空間G2における初期配置位置が特定される。
対戦ユーザ待ちのロビーがある場合には、当該ユーザが関連付けられる参加ロビーを特定し(S212)、当該ユーザを当該ロビーに関連付けるように、対戦ユーザ管理テーブル340を更新する(S213)。その結果、当該ロビーに関連付けられたユーザ数が必要ユーザ数に達したと判定された場合には(S214のY)、共通の対戦ゲーム空間G2で対戦ゲームが進行される対戦ユーザが確定される(S215)。このとき、当該ロビーの待ち受け状況を対戦ユーザ待ちから解除するように、対戦ユーザ管理テーブル340を更新する。一方、未だ必要ユーザ数に達していないと判定される場合には(S214のN)、さらに他のユーザからのマッチング要求を待ち(S216)、他のユーザからのマッチング要求を受け付けた場合には(S217)、再び当該ロビーに関連付けられたユーザ数が必要ユーザ数に達したと判定し(S218)、達したと判定された場合には(S218のY)、共通の対戦ゲーム空間G2で対戦ゲームが進行される対戦ユーザが確定される(S215)。
一方、対戦ユーザ待ちのロビーがない場合には(S211のN)、当該ユーザ端末100からのマッチング要求に基づいて、新規にロビーLBが生成される(S219)とともに、対戦ユーザ管理テーブル340が生成される(S220)。このとき、新規に生成されたロビーLBには当該ユーザしか関連付けられていないため、新規に生成されたロビーLBは対戦ユーザ待ちロビーとして設定される(S221)。そして、他のユーザからのマッチング要求を待ち(S216)、他のユーザからのマッチング要求を受け付けた場合には(S217)、当該ロビーに関連付けられたユーザ数が必要ユーザ数に達したと判定し(S218)、達したと判定された場合には(S218のY)、共通の対戦ゲーム空間G2で対戦ゲームが進行される対戦ユーザが確定される(S215)。
対戦ユーザが確定されると、ゲームサーバ200は対戦ユーザ間で共有される対戦ゲーム空間G2を構成し(S222)、対戦時間の計測を開始した後に(S223)、当該情報を含む対戦ゲーム情報を各ユーザ端末に送信する(S224)ことによって、対戦ゲームが開始される(S225)。各ユーザ端末においては、当該対戦ゲーム情報を受信することによって、対戦ゲームが開始される(S132)。対戦時間は対戦ゲーム空間G2において対戦ゲームが行われる時間であり、対戦開始後に所定の対戦時間が経過することにより対戦ゲームが終了され、対戦ゲーム空間G2にゲームオブジェクトが配置されないように処理される。対戦ゲーム情報が対戦時間の計測が開始された時刻と、対戦が終了される時刻に関する情報を含むことにより、各ユーザ端末100において対戦ゲーム空間G2における経過時間が共有される。対戦時間は、長さの異なる複数の対戦時間のうちから選択可能であることが好ましい。
なお、ロビーを指定してマッチングを実施する場合には、図21に示すゲームシステム1の処理フローに基づいて処理されてもよい。あるユーザ端末100からゲームサーバ200に対して対戦ゲームを開始するためのマッチング要求が送信されると、ゲームサーバ200はロビー作成要求として受け付ける(S133)。ゲームサーバ200はロビー作成要求に基づいてロビーLBを新規に生成するとともに、図20に示すような対戦ユーザ管理テーブル340を生成する。また、当該ロビーLBに他のユーザを招待するための招待キーを生成し(S226)、これをマッチング要求を送信したユーザ端末100に送信する(S227)。当該ユーザ端末100は、対戦相手のマッチングが完了するまで待機状態となる(S134)。また、ゲームサーバ200は、当該ロビーLBを対戦ユーザ待ち状態とし、他のユーザ端末100からのマッチング要求を待つ(S228)。
ここで、別のユーザ端末100からゲームサーバ200に対して、生成された招待キーとともにマッチング要求が送信されると(S135)、ゲームサーバ200はこれを受け付けて、当該ユーザを対戦ユーザとして特定するように対戦ユーザ管理テーブル340を更新する(S229)。ゲームサーバ200は他のユーザ端末100からのマッチング要求を受け付けたことを通知するための参加通知を各ユーザ端末100に送信する(S230、S231)。これにより、当該他のユーザ端末100も、対戦相手のマッチングが完了するまで待機状態とされる(S136)。
そして、当該ロビーに関連付けられたユーザ数が必要ユーザ数に達したと判定された場合には(S232のY)、共通の対戦ゲーム空間G2で対戦ゲームが進行される対戦ユーザが確定される(S233)。このとき、当該ロビーの待ち受け状況を対戦ユーザ待ちから解除するように、対戦ユーザ管理テーブル340を更新する。一方、未だ必要ユーザ数に達していないと判定される場合には(S232のN)、さらに他のユーザからのマッチング要求を待ち(S228)、他のユーザからのマッチング要求を受け付けた場合には再び当該ロビーに関連付けられたユーザ数が必要ユーザ数に達したと判定し(S232)、達したと判定された場合には(S232のY)、共通の対戦ゲーム空間G2で対戦ゲームが進行される対戦ユーザが確定される(S233)。対戦ユーザが確定されると、ゲームサーバ200は対戦ユーザ間で共有される対戦ゲーム空間G2を構成し、対戦時間の計測を開始した後に、当該情報を含む対戦ゲーム情報を各ユーザ端末に送信する(S236,237)ことによって、対戦ゲームが開始される(S137,S238)。
ここで、図22に示すように、ユーザ端末100が関連付けられたロビーLBが他のユーザからのマッチング要求待ちにある場合に(S216,S228)、当該ユーザ端末100からログアウト通知を受信した場合には(S138)、ゲームサーバ200は、当該ユーザ端末100のマッチング要求を解除しないことが好ましい。すなわち、ユーザ端末100がロビーLBに関連付けられた状態で、ユーザがゲームプログラムを停止した場合には、対戦ユーザ管理テーブル340から当該ユーザを削除せず、他のユーザからのマッチング要求をさらに待つことが好ましい。他のユーザ端末100からのマッチング要求をさらに受け付けた場合には(S239)、当該ロビーに関連付けられたユーザ数が必要ユーザ数に達したと判定し(S240)、達したと判定された場合には(S240のY)、共通の対戦ゲーム空間G2で対戦ゲームが進行される対戦ユーザが確定され、対戦ゲーム情報を各ユーザ端末に送信する(S241)ことによって、対戦ゲームが開始される(S139,S242)。ここで、既にログアウトしたユーザ端末100には対戦ゲーム情報が送信されず、ログイン中のユーザのみが参加する状態で対戦ゲームが開始される。
対戦ゲームが開始された後に、当該ログアウト通知を送信したユーザ端末100からログイン通知が送信された場合には(S140)、ゲームサーバ200は当該ユーザ端末100に対して、ゲームに途中参加させるための対戦ゲーム情報を送信することが好ましい(S243)。この場合の対戦ゲーム情報は、対戦ゲーム開始時に他のユーザ端末100にも送信された対戦ゲーム空間G2の初期状態に関する情報に加え、他のユーザが対戦ゲーム空間G2に既に配置したゲームオブジェクト等を含むゲーム空間情報や、それにより他のユーザに付与されたゲームポイントやゲームパラメータに関するゲーム情報を含む。これにより、対戦ゲーム開始後にログインしたユーザは、他のユーザと対戦ゲーム空間G2を共有でき、対戦ゲームに途中参加できる。
対戦ゲーム開始後にログインしたユーザのユーザ端末100は、ログイン直後に対戦ゲーム空間G2に関連付けられてもよいし、ログイン直後はホームゲーム空間G1に関連付けられ、所定のユーザ作用を受け付けた後に対戦ゲーム空間G2に関連付けられることとしてもよい(S141)。
なお、図23に示すように、ユーザ端末100が関連付けられたロビーLBが他のユーザからのマッチング要求待ちにある場合に(S216,S228)、当該ユーザ端末100からロビー退出要求を受信した場合には(S142)、当該ユーザ端末100のマッチング要求を解除することとしてもよい。ロビー退出要求は、前述のゲームプログラムを停止する処理とは異なり、ユーザ端末100をロビーLBからホームゲーム空間G1に関連付けるようにする要求である。この場合、ロビー管理テーブル340から当該ユーザに関する情報を削除する(S244)。そして、各ユーザ端末100に当該ユーザがロビーLBから退出したことを通知する(S245,S246)とともに、当該ユーザ端末100はホームゲーム空間G1に関連付けられる(S143)。また、このロビーLBはマッチング要求待ち状態を継続する(S247)。これにより、ユーザがロビーLBから退出した場合には対戦ゲームへの参加を中止したものと判断し、自動的にマッチングを中止させることができる。
一方、図24に示すように、ユーザ端末100が関連付けられたロビーLBが他のユーザからのマッチング要求待ちにあるときに(S216,S228)、当該ユーザ端末100からロビー退出要求を受信した場合には(S142)、当該ユーザ端末100のマッチング要求を解除しないこととしてもよい。そして、ロビー退出要求を受信した後も他のユーザからのマッチング要求の受け付けを継続し(S248)、必要ユーザ数に達した場合には(S249のY)、対戦ゲーム情報を他のユーザへ送信して(S251)対戦ゲームを開始するとともに(S146,S252)、ホームゲーム画面G1へ移行したユーザには、マッチングが完了して対戦ゲームが開始されたことを通知するマッチング通知が送信されてもよい(S250)。そして、当該ユーザがホームゲーム空間G1から対戦ゲームに途中参加するための要求が送信されると(S147)、ゲームサーバ200は当該ユーザ端末100に対して、ゲームに途中参加させるための対戦ゲーム情報を送信する(S253)。これにより、対戦ゲーム開始後にログインしたユーザは、他のユーザと対戦ゲーム空間G2を共有でき、対戦ゲームに途中参加できる。
さらに、図25に示すように、ユーザ端末100がロビー退出要求を送信してホームゲーム画面G1へ移行した(S144〜S145)後に、当該ユーザ端末100からゲームサーバ200に対してマッチング中止要求を送信することとしてもよい(S149)。そして、ゲームサーバ200は、マッチング中止要求に基づいて当該ユーザ端末からのマッチング要求を解除するように対戦ユーザ管理テーブル340を更新し(S254)、さらに他のユーザからのマッチング要求を待ち受けることとしてもよい(S255)。これにより、ユーザはホームゲーム空間G1におけるゲームを進行しつつ、マッチングを解除することができ、利便性がさらに向上され得る。
図26〜32を参照して、対戦ゲーム空間G2におけるゲーム進行処理の流れを詳細に説明する。図26〜31を参照して、対戦ゲーム空間G2にゲームオブジェクトとしての建物を配置することにより、ユーザにゲームポイントが付与される処理について説明する。図32は、対戦ゲーム終了後に、各ユーザに付与されたゲームポイントに基づいて対戦ゲームの勝者を決定する処理について説明する。図27,図31,図32は当該機能をコンピュータに実行させるゲームシステムの処理を示すフローチャートである。図26,図28〜図30は対戦ゲーム空間G2の一例を示す。
対戦ユーザのマッチングが完了すると、各ユーザ端末100には図26に示す対戦ゲーム空間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内に配置させるためのオブジェクト配置要求として受け付ける(図27のS150)。上記の所定位置が、各ユーザがオブジェクトを配置できる第1エリアPE1〜第4エリアPE4内にあると判定される場合には(S151のY)、オブジェクト配置要求に基づいて平面PL2に建築中建物BO(第1状態)が配置される(S152)。平面PL2に建築中建物BOが配置されると、タイマー部113により経過時間の計測が開始される(S153)そして、ユーザ端末100はゲームサーバ200に対して、当該オブジェクトが対戦ゲーム空間G2内に配置されたことや、経過時間の計測が開始された時刻を示すゲーム空間情報をゲームサーバ200に送信する(S154)。
ゲームサーバ200は各ユーザA〜Dが配置したオブジェクトに関する情報を受信し(S256)、当該情報に基づいて対戦ユーザ管理テーブル340を更新する(S257)。これにより、対戦ゲーム空間G2内に各ユーザが配置したオブジェクトの配置に基づくゲーム空間情報や対戦ユーザA〜Dの保有ゲームポイントやゲームパラメータが一元管理される。そして、ゲームサーバ200がゲーム空間情報やユーザ情報を各ユーザ端末100に送信することにより(S258)、各ユーザ端末間でゲーム空間情報やユーザ情報が共有され、対戦ゲーム空間G2がリアルタイムに更新される。
各オブジェクトに設定された建築時間を、建築中建物の経過時間が超過し、当該建築中オブジェクトBOに対するユーザ作用(例えばタップ操作)をさらに受け付けると、建築中建物BOが建築済建物Oに変化する(S157)。このような対戦ゲーム空間G2内に建築済建物Oが配置された情報は、ゲーム空間情報としてゲームサーバ200に送信され、他の各ユーザ端末にも共有される(S257,S258)。
図28に示すように、対戦ゲーム空間G2内に建築済建物OA1,OA2,OB1〜3が配置されると(図31のS157)、各建築済オブジェクトにライフラインから電力が供給されているか否かが判定される(S158)。マンション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の経過時間の計測が開始される(S159)。そして、当該オブジェクトを対戦ゲーム空間G2内に配置することによって獲得される、当該オブジェクトに関連づけられたゲームポイント(例えば人口P)が、ユーザに付与される。
このとき、各オブジェクトの保有人口を計算することによって(S164)、ユーザに関連づけられたゲームポイントが算出される。本実施形態では、人口を保有可能なオブジェクトはマンションOA1およびマンションOA2である。まず、オブジェクト管理テーブル310を参照してマンションOA1,OB2の保有可能人口を特定する(S160)とともに、マンションO1,OB2が平面PL2に配置することによって保有可能となる初期人口を特定する(S161)。
次に、他のオブジェクトのスキルによってマンションOA1,OB2に保有される人口の変動を算出する。まず、マンションOA1,OB2が他のオブジェクトの有効範囲に属しているか否かを判定する(S162)。このとき、オブジェクト管理テーブル310およびパッシブスキル管理テーブル320を参照することにより、平面PL2内に配置された建築済建物OA1,OA2,OB1〜3のうち、パッシブスキルを有するオブジェクトの有効範囲を特定し、当該有効範囲内に少なくとも一部が配置されているオブジェクトを特定する。本実施形態では、発電所OA2の有効範囲E5内にマンションOB1が配置され、公園OB3の有効範囲E6内にマンションOA1一部およびマンションOB1の一部が配置されている。
マンションOA1は公園OB3の有効範囲E6、に属していると特定される(S162のY)。従って、公園OB3のパッシブスキルの内容を特定すると(S163)、初期人口から公園OB3のパッシブスキルによる人口増加分を加算し、マンションOA1の保有人口が算出される(S164)。また、マンションOB1は、発電所OA2の有効範囲E5と公園OB3の有効範囲E6と、に属していると特定される(S162のY)。従って、発電所OA2および公園OB3のパッシブスキルの内容を特定すると(S163)、初期人口から公園OB3のパッシブスキルによる人口増加分を加算し、発電所OA2のパッシブスキルによる人口減少分を減算することにより、マンションOB1の保有人口が算出される(S164)。ユーザAに関連づけられたユーザ端末100−1は、マンションOA1をゲーム空間に配置することによって得られた保有人口をゲームポイント情報としてゲームサーバ200に送信し、ユーザBに関連づけられたユーザ端末100−2は、マンションOB1をゲーム空間に配置することによって得られた保有人口をゲームポイント情報としてゲームサーバ200に送信する(S165)、ゲームサーバ200は当該ゲームポイントに関する情報を受信して(S259)、当該情報に基づいてユーザ管理テーブル300を更新するとともに、更新後の当該情報を各ユーザ端末100に送信する(S260)。
このとき、各オブジェクトを配置することにより更新されるゲームポイント値は、ホームゲーム空間G1に配置された場合に更新されるゲームポイント値と一致することが好ましい。即ち、対戦ユーザ管理テーブル340に特定された保有オブジェクトの保有可能人口やパッシブスキルにより更新される保有人口数は、ユーザ管理テーブル300およびオブジェクト管理テーブル310、スキル管理テーブル320,330に基づいて設定されることが好ましい。これにより、ユーザはゲームオブジェクトをホームゲーム空間G1で育成することにより対戦ゲームを有利に進行でき、ホームゲーム空間G1におけるゲーム性を高めることができる。
なお、他の建物の有効範囲に属しているかを判定するステップ(S162)において特定される有効範囲は、図30に示したユーザAに関連付けられた消防署OA4のアクティブスキルの有効範囲E7を採用してもよい。この場合の処理は図16に示したものと同様であるが、消防署OA4はユーザAのみのユーザ作用を受け付けることとされ、これにより有効範囲E7が特定される。有効範囲E7内に配置されたマンションO1に火災が発生している場合には、消防署OA4のアクティブスキルによって火災が鎮火され、マンションOA1が再び稼働されるようにゲームパラメータを更新する。
アクティブスキルは有効範囲内に配置されたオブジェクトのうち、スキルを発生させたユーザAに関連づけられたオブジェクトのゲームポイントおよびゲームパラメータのみを変動させることとしてもよい。即ち、火災の発生したマンションOA1がユーザBに関連づけられている場合には、消防署OA4のアクティブスキルにより火災を鎮火させないようにしてもよい。なお、上記のパッシブスキルについても、有効範囲内に配置されたオブジェクトのうち、スキルを発生させるオブジェクトに関連づけられたユーザに関連づけられたオブジェクトのゲームポイントおよびゲームパラメータを変動させることとしてもよい。
また、各オブジェクトの対戦ゲーム空間G2における建築時間やクールタイムは、ホームゲーム空間G1における建築時間やクールタイムと異ならせても良い。また、対戦時間が、長さの異なる複数の対戦時間のうちから選択可能である場合には、対戦時間に応じて建築時間やクールタイムが変更されてもよい。例えば、対戦時間が短い場合には建築時間やクールタイムを短く設定しておくことが好ましい。これにより、対戦時間に応じて対戦ゲーム空間G2におけるゲーム進行のスピード感を異ならせることができるので、ユーザは容易に対戦ゲームを楽しむことができる。
上記のようにしてゲームポイントが更新されると(S165)、更新後のゲームポイントが閾値を超えているか否かが判定される(S166)。閾値を超えたと判定されると、図21に破線で示すように、第1エリアPE1〜第4エリアPE4のうち当該ユーザに関連受けられたエリアの面積が拡大される(S167)。これにより、ゲームの進行に応じてゲームの自由度が増し、街づくり要素等におけるゲーム性が高まる。なお、ゲームポイントが減少した場合には、それに応じて第1エリアPE1〜第4エリアPE4の面積が縮小されても良い。
なお、第1エリアPE1〜第4エリアPE4を最初は広く設定しておき、各ユーザのゲームポイントに応じて第1エリアPE1〜第4エリアPE4の面積が縮小されるものとしても良い。ゲームの進行に応じてゲームの自由度を制限することにより、当初よりオブジェクトを配置する戦略を考慮することが要求されるようになる。
対戦ゲーム空間G2内における経過時間が所定の対戦時間を経過した場合には(図32のS261のY)、対戦ゲームを終了させる処理として、対戦ゲーム空間G2にゲームオブジェクトが配置されないように処理される(S262)。また、対戦が終了されたことを各ユーザ端末100に通知し、各ユーザ端末100においても、対戦ゲームを終了させる処理として、対戦ゲーム空間G2にゲームオブジェクトが配置されないように処理される(S168)。
対戦ゲームを終了させると、各ユーザのゲームポイントを比較して、勝者を選定する処理が実行される(S263)。勝者の選定は、各ユーザに関連づけられたゲームポイントとしての人口Pを比較することによって行うことが好ましく、各ユーザに関連づけられた人口Pは、対戦ユーザ管理テーブル340を参照して、各ユーザに関連づけられた建物に関連づけられた保有人口を合計することによって算出される。
勝者の選定において、人口Pの値に基づいて各ユーザの順位を決定しても良い。また、人口Pのみならず、コイン等のゲーム内通貨やゲーム内アイテムといったゲームパラメータを考慮してもよい。例えば、人口PとコインCの合計値に基づいて勝敗を選定しても良いし、いずれかを重みづけした加重平均値によって勝敗を選定してもよい。また、ゲーム空間Gの占有率といった他の要素をさらに加味してもよい。また、ゲームポイント値が同値であった場合などには、ロビーLBに早く関連付けられたユーザを有利に取り扱うこととしてもよい。ロビーLBに早く関連付けられたユーザは対戦ゲームに途中参加することとなる可能性が高いため、勝敗選定処理において何らかの特典(優位性)を付与することが好ましい。
各ユーザの勝者および順位が選定されると、各ユーザに分配される報酬が決定され、各ユーザ端末100に分配される報酬情報が送信され(S264)、当該報酬を付与するようにユーザ管理テーブル300が更新される(S265)。各ユーザ端末100は報酬を受信すると(S169)、当該報酬が反映されたホームゲーム空間G1に移行される。
上述した実施の形態は、本発明の理解を容易にするための例示に過ぎず、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良することができると共に、本発明にはその均等物が含まれることは言うまでもない。
例えば、上述した実施形態では、ゲーム空間Gに各種オブジェクトを配置するための処理や、スキルオブジェクトにより付与されるゲームポイント値の算出がユーザ端末100において実行し、その結果としてのゲーム空間情報やゲームポイント値といったゲーム情報がユーザ端末100からゲームサーバ200に送信される態様を説明した。しかし、当該処理がゲームサーバ200で実行されることとしてもよい。例えば、ユーザ端末100は所定のユーザ作用を受け付けた情報をゲームサーバ200に送信し、ゲームサーバ200において当該ユーザ作用によるゲーム空間の更新処理やゲームポイント値の更新処理を実施し、その結果としてのゲーム情報をユーザ端末100に送信することとしてもよい。ユーザ端末100はゲームサーバ200から受信したゲーム情報に基づいてゲーム空間Gを構築する処理を実行することができる。
1…ゲームシステム、2…ネットワーク、100…ユーザ端末、110…制御部、120…記憶部、130…タッチパネル、140…通信部、200…ゲームサーバ、210…通信装置、220…処理装置、230…メモリ部、240…記憶装置、250入力装置、260…出力装置、300…ユーザ管理テーブル、310…オブジェクト管理テーブル、320,330…スキル管理テーブル、340…対戦ユーザ管理テーブル、G…ゲーム空間、G1…ホームゲーム空間、G2…対戦ゲーム空間、LB・・・ロビー。


Claims (8)

  1. 複数のユーザのそれぞれに関連付けられた複数のユーザ端末にネットワークを介してゲーム空間を共有させるゲームサーバであって、
    前記ゲーム空間におけるゲームを開始するための必要ユーザ数を特定するステップと、
    前記ユーザ端末から送信されたマッチング要求を受け付けるステップと、
    前記マッチング要求を送信した前記ユーザ端末の数を特定するステップと、
    前記ユーザ端末の数が前記必要ユーザ数に達したか否かを判定するステップと、
    前記ユーザ端末の数が前記必要ユーザ数に達したと判定した場合に、前記ゲームを開始するステップと
    を実行するゲームサーバ。
  2. 前記マッチング要求を送信した前記ユーザ端末からログアウト通知を受信した場合に、前記マッチング要求を送信した前記ユーザ端末の前記マッチング要求を解除しない、
    請求項1のゲームサーバ。
  3. 前記ゲームが開始された後に、前記ログアウト通知を送信した前記ユーザ端末から送信されたログイン通知を受信した場合には、
    前記ログイン通知を受信した前記ユーザ端末に対して、前記ゲームに途中参加させるためのゲーム情報を送信する、
    請求項2のゲームサーバ。
  4. 前記ユーザ端末は、個別にホームゲーム空間に関連付けられるとともに、前記ホームゲーム空間から前記マッチング要求を送信するように構成され、
    前記マッチング要求に基づいて、前記ユーザ端末をロビーに関連付ける、
    請求項1〜3のいずれかのゲームサーバ。
  5. 前記ユーザ端末は、前記ロビーから前記ホームゲーム空間に関連付けるためのロビー退出要求を送信するように構成され、
    前記ロビーに関連付けられた前記ユーザ端末からログアウト通知を受信した場合には、前記ロビーに関連付けられた前記ユーザ端末の前記マッチング要求を解除せず、
    前記ロビーに関連付けられた前記ユーザ端末から前記ロビー退出要求を受信した場合には、前記ロビーに関連付けられた前記ユーザ端末の前記マッチング要求を解除する、
    請求項4のゲームサーバ。
  6. 前記ユーザ端末は、前記ロビーから前記ホームゲーム空間に関連付けるためのロビー退出要求を送信するように構成され、
    前記ロビーに関連付けられた前記ユーザ端末からログアウト通知を受信した場合には、前記ロビーに関連付けられた前記ユーザ端末の前記マッチング要求を解除せず、
    前記ロビーに関連付けられた前記ユーザ端末から前記ロビー退出要求を受信した場合にも、前記ロビーに関連付けられた前記ユーザ端末の前記マッチング要求を解除しない、
    請求項4のゲームサーバ。
  7. 前記ユーザ端末は、前記ロビー退出要求によって前記ホームゲーム空間に関連付けられた後に、前記マッチング要求を解除するマッチング中止要求を送信するように構成され、
    前記マッチング中止要求に基づいて、前記ロビー退出要求によって前記ホームゲーム空間に関連付けられた前記ユーザ端末からのマッチング要求を解除する、
    請求項6のゲームサーバ。
  8. 前記ゲーム空間に、所定のユーザに関連付けられたゲームオブジェクトを配置することにより、前記所定のユーザおよび前記ゲームオブジェクトに関連付けられるゲームポイントを算出するステップと、
    前記ゲームが開始されてから対戦時間が経過した後に、前記ゲーム空間に前記ゲームオブジェクトが配置されないように処理するステップと、
    前記複数のユーザのそれぞれに関連づけられたゲームポイントを比較し、前記複数のユーザから勝者を選定するステップと、
    を実行する請求項1〜7のいずれかのゲームサーバ。

JP2016091120A 2016-04-28 2016-04-28 ゲームサーバ Pending JP2017023696A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016091120A JP2017023696A (ja) 2016-04-28 2016-04-28 ゲームサーバ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016091120A JP2017023696A (ja) 2016-04-28 2016-04-28 ゲームサーバ

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2015146388A Division JP5933084B1 (ja) 2015-07-24 2015-07-24 ゲームサーバ

Publications (1)

Publication Number Publication Date
JP2017023696A true JP2017023696A (ja) 2017-02-02

Family

ID=57950112

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016091120A Pending JP2017023696A (ja) 2016-04-28 2016-04-28 ゲームサーバ

Country Status (1)

Country Link
JP (1) JP2017023696A (ja)

Similar Documents

Publication Publication Date Title
JP5838280B1 (ja) ゲームサーバおよびゲームプログラム。
JP5933084B1 (ja) ゲームサーバ
JP6126276B1 (ja) ゲームの実行方法
JP6009048B1 (ja) ゲームプログラム
WO2017094522A1 (ja) ゲームプログラム
JP2017006618A (ja) ゲームサーバおよびゲームプログラム。
JP6027671B1 (ja) ゲームプログラム
JP2017035280A (ja) シミュレーションプログラム
JP7245213B2 (ja) プログラム、情報処理装置、および情報処理装置の制御方法
JP7018250B2 (ja) ゲームプログラム
JP5938135B1 (ja) ゲームプログラム
JP2017023696A (ja) ゲームサーバ
JP6220820B2 (ja) ゲームプログラム、ゲーム処理方法及びコンピュータ
JP2017070349A (ja) 対戦シミュレーションゲームプログラム
JP6852963B2 (ja) ゲームプログラム
JP6157707B1 (ja) ゲームを制御するための方法、および、プログラム
JP2017099850A (ja) ゲームプログラム
JP5986677B1 (ja) ゲームプログラム
JP2017023768A (ja) ゲームプログラム
JP6570917B2 (ja) ゲームプログラム
JP2017099845A (ja) ゲームプログラム
JP2017109077A (ja) ゲームプログラム
JP2017185105A (ja) サーバの制御方法、プログラム及び記録媒体
JP2017023422A (ja) ゲームプログラム
JP2017012763A (ja) ゲームプログラム