特許法第30条第2項適用 (1)ウェブサイトの掲載日:令和5年(2023年)4月14日 ・ウェブサイトのアドレス:https://gnn.gamer.com.tw/detail.php?sn=248268 (2)ウェブサイトの掲載日:令和5年(2023年)4月20日 ・ウェブサイトのアドレス:https://www.youtube.com/watch?v=O8gEi0BQoqo (3)ウェブサイトの掲載日:令和5年(2023年)4月20日 ・ウェブサイトのアドレス:https://www.youtube.com/watch?v=JfPhkFigeMk (4)ウェブサイトの掲載日:令和5年(2023年)4月20日 ・ウェブサイトのアドレス:https://www.youtube.com/watch?v=27AeK2bUsOg (5)ウェブサイトの掲載日:令和5年(2023年)4月20日 ・ウェブサイトのアドレス:https://www.youtube.com/watch?v=gRQBkpunCpg (6)ウェブサイトの掲載日:令和5年(2023年)4月20日 ・ウェブサイトのアドレス:https://www.4gamer.net/games/487/G048777/20230420024/ (7)ウェブサイトの掲載日:令和5年(2023年)4月20日 ・ウェブサイトのアドレス:https://app.famitsu.com/20230420_2075513/ (8)ウェブサイトの掲載日:令和5年(2023年)4月21日 ・ウェブサイトのアドレス:https://gnn.gamer.com.tw/detail.php?sn=248614 (9)ウェブサイトの掲載日:令和5年(2023年)4月27日 ・ウェブサイトのアドレス:https://www.inven.co.kr/webzine/news/?news=284123 (10)ウェブサイトの掲載日:令和5年(2023年)4月28日 ・ウェブサイトのアドレス:https://apps.apple.com/jp/app/id1576831351
特許法第30条第2項適用 (11)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://play.google.com/store/apps/details?id=com.heavenburnsred&hl=ja&gl=US (12)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://apps.apple.com/tw/app/%E7%B7%8B%E6%9F%93%E5%A4%A9%E7%A9%BA-heaven-burns-red/id1576831351 (13)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://apps.apple.com/hk/app/%E7%B7%8B%E6%9F%93%E5%A4%A9%E7%A9%BA-heaven-burns-red/id1576831351 (14)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://apps.apple.com/mo/app/%E7%B7%8B%E6%9F%93%E5%A4%A9%E7%A9%BA-heaven-burns-red/id1576831351 (15)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://apps.apple.com/kr/app/%E7%B7%8B%E6%9F%93%E5%A4%A9%E7%A9%BA-heaven-burns-red/id1576831351 (16)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://play.google.com/store/apps/details?id=com.heavenburnsred&hl=zh-tw&gl=US&pli=1 (17)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://play.google.com/store/apps/details?id=com.heavenburnsred&hl=ko&gl=US&pli=1
特許法第30条第2項適用 (18)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://twitter.com/heavenburnsred/status/1651768196477616135?s=20 (19)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://store.steampowered.com/app/1973710/_/ (20)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://gnn.gamer.com.tw/detail.php?sn=249016 (21)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://www.4gamer.net/games/487/G048777/20230428017/ (22)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://www.gamer.ne.jp/news/202304280021/ (23)ウェブサイトの掲載日:令和5年(2023年)4月20日・ウェブサイトのアドレス:https://www.youtube.com/watch?v=aPAV_zNA3-Y (24)ウェブサイトの掲載日:令和5年(2023年)4月20日・ウェブサイトのアドレス:https://www.youtube.com/watch?v=qXXYrzBmA4Q (25)ウェブサイトの掲載日:令和5年(2023年)4月20日・ウェブサイトのアドレス:https://gamebiz.jp/news/367612 (26)ウェブサイトの掲載日:令和5年(2023年)4月20日・ウェブサイトのアドレス:https://www.famitsu.com/news/202304/20300175.html (27)ウェブサイトの掲載日:令和5年(2023年)4月25日・ウェブサイトのアドレス:https://www.famitsu.com/news/202304/25300645.html
特許法第30条第2項適用 (28)ウェブサイトの掲載日:令和5年(2023年)4月27日・ウェブサイトのアドレス:https://bbs.ruliweb.com/news/read/181324 (29)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://bbs.ruliweb.com/news/read/181404 (30)ウェブサイトの掲載日:令和5年(2023年)4月21日・ウェブサイトのアドレス:https://thekoreanews.com/detail.php?number=100671&thread=26 (31)ウェブサイトの掲載日:令和5年(2023年)4月28日・ウェブサイトのアドレス:https://thekoreanews.com/detail.php?number=100944&thread=26 (32)ウェブサイトの掲載日:令和5年(2023年)4月20日・ウェブサイトのアドレス:https://dengekionline.com/articles/182473/ (33)雑誌の発行日:令和5年(2023年)4月27日・雑誌の名称:週刊ファミ通2023年5月18日増刊号(No.1796)
以下、添付図面を参照しながら各実施形態について詳細に説明する。なお、添付図面では、見易さのために、複数存在する同一属性の部位には、一部のみしか参照符号が付されていない場合がある。
(ゲームシステムの概要)
図1を参照して、本発明の一実施形態に係るゲームシステム1の概要について説明する。図1は、本実施形態に係るゲームシステム1のブロック図である。ゲームシステム1は、サーバ装置10と、1つ以上の端末装置20と、を備える。図1では簡便のため、3つの端末装置20を図示しているが、端末装置20の数は2つ以上であればよい。
サーバ装置10は、例えばゲーム運営者が管理するサーバ等の情報処理装置である。端末装置20は、例えば携帯電話、スマートフォン、タブレット端末、PC(Personal Computer)、又はゲーム装置等の、ユーザによって使用される情報処理装置である。また、端末装置20は、これらの情報処理装置の一部又は全部と、ヘッドマウントディスプレイ(HMD)やスマートグラス、モーションキャプチャのセンサなど、身体の一部に装着する装置との組み合わせで実現されてもよいし、身体の一部に装着する装置自体により実現されてもよい。端末装置20は、本実施形態に係るゲームのアプリケーションを実行可能である。ゲームのアプリケーションは、ネットワーク30を介してサーバ装置10や所定のアプリケーション配信サーバから端末装置20に受信されてもよく、あるいは端末装置20に備えられた記憶装置又は端末装置20が読取可能なメモリカード等の記憶媒体に予め記憶されていてもよい。サーバ装置10及び端末装置20は、ネットワーク30を介して通信可能に接続される。例えば、サーバ装置10及び端末装置20が協動して、ゲームに関する多様な処理を実行する。
なお、ネットワーク30は、無線通信網や、インターネット、VPN(Virtual Private Network)、WAN(Wide Area Network)、有線ネットワーク、又はこれらの任意の組み合わせ等を含んでよい。
ここで、本実施形態に係るゲームの概要について説明する。本実施形態に係るゲームは、例えばロールプレイングゲーム又はシミュレーションゲーム等であって、ゲームの実行に伴い、ゲーム媒体が用いられる。例えば、本実施形態に係るゲームは、3次元の仮想空間内のフィールド上でゲーム媒体を移動させるゲームである。
ゲーム媒体は、ゲームに使用される電子データであり、例えば、カード、アイテム、ポイント、サービス内通貨(又はゲーム内通貨)、チケット、キャラクタ、アバター、パラメータ等、任意の媒体を含む。また、ゲーム媒体は、レベル情報、ステータス情報、ゲームパラメータ情報(体力値及び攻撃力等)又は能力情報(スキル、アビリティ、呪文、ジョブ等)のような、ゲーム関連情報であってもよい。また、ゲーム媒体は、ユーザによってゲーム内で取得、所有、使用、管理、交換、合成、強化、売却、廃棄、又は贈与等され得る電子データであるが、ゲーム媒体の利用態様は本明細書で明示されるものに限られない。
以下、特に明示した場合を除き、「ユーザが所有するゲーム媒体」とは、ユーザのユーザIDに対応付けられたゲーム媒体を示す。また、「ゲーム媒体をユーザに付与する」とは、ゲーム媒体をユーザIDに対応付けることを示す。また、「ユーザが所有するゲーム媒体を破棄する」とは、ユーザIDとゲーム媒体との対応付けを解消することを示す。また、「ユーザが所有するゲーム媒体を消費する」とは、ユーザIDとゲーム媒体との対応付けの解消に応じて、何らかの効果又は影響をゲーム内で発生させ得ることを示す。また、「ユーザが所有するゲーム媒体を売却する」とは、ユーザIDと当該ゲーム媒体との対応付けを解消し、且つ、ユーザIDに他のゲーム媒体(例えば、仮想通貨又はアイテム等)を対応付けることを示す。また、「あるユーザが所有するゲーム媒体を他のユーザに譲渡する」とは、あるユーザのユーザIDとゲーム媒体との対応付けを解消し、且つ、他のユーザのユーザIDに当該ゲーム媒体を対応付けることを示す。
本実施形態に係るゲームは、一例として、第1ゲームパートと、第2ゲームパートと、第3ゲームパートと、を含む。
第1ゲームパートにおいて、ユーザは、ユーザキャラクタを操作して、仮想空間内のフィールドを探索しながら、ゲームを進行させる。具体的には、ユーザ操作に応じてユーザキャラクタがフィールド上を移動する。なお、ユーザキャラクタは、アバター(ユーザの分身)の形態であってもよい。フィールドには、例えば釣り場及びダンジョン等の多様なエリアが設けられており、例えば釣り場での釣りゲームや、ダンジョン内で遭遇する敵キャラクタとの対戦等、エリアに応じた多様なミニゲームやイベント等が発生する。イベントが実行されることによって、ゲームのメインストーリーが進行する。また第1ゲームパートにおいて、例えばミニゲームで成果をあげたり敵キャラクタとの対戦に勝利したりすると、例えばアイテム、仮想通貨、又はキャラクタ等のゲーム媒体がユーザに付与され得る。
第2ゲームパートにおいて、ユーザは、ゲーム媒体の保有状況を変更する。ユーザは、例えばアイテム、仮想通貨、及びキャラクタ等の多様なゲーム媒体を収集する。具体的には、フィールド上に設けられた釣り場や採掘場等の特定のエリアにユーザキャラクタを移動させると、ゲーム媒体が取得可能なサブイベントが発生する。サブイベントは、例えばサブストーリーの進行、及びミニゲームの実行等を含むが、サブイベントの内容はこれらに限られない。サブイベントの実行結果に応じて、多様なゲーム媒体がユーザに付与され得る。
第3ゲームパートにおいて、ユーザは、ゲーム媒体に関するパラメータを変更する。ユーザは、例えばユーザキャラクタの強化を行う。具体的には、上述したように第1ゲームパート及び第2ゲームパートにおいてユーザに付与されたゲーム媒体が消費されることによって、ユーザキャラクタの多様なゲームパラメータが変化する。ゲームパラメータは、例えばユーザキャラクタのレベル、HP、攻撃力、防御力、属性、及びスキル等を含むが、これらに限られない。ユーザキャラクタのゲームパラメータの変化に応じて、ユーザキャラクタが強化される。ユーザキャラクタの強化によって、第1ゲームパートにおける敵キャラクタとの対戦でユーザキャラクタが勝利できる蓋然性が高まる。
このように、本実施形態に係るゲームにおいて、ユーザは第1ゲームパート、第2ゲームパート、及び第3ゲームパートを繰り返し行う。
以下では、主に、第1ゲームパートにおいて実行可能な釣り場での釣りゲームについて説明する。なお、変形例では、釣りゲームは、第3ゲームパートとして実行されてもよい。釣り場は、フィールド上の複数箇所に設定されてもよい。
(サーバ装置の構成)
サーバ装置10の構成について具体的に説明する。サーバ装置10は、サーバコンピュータにより構成される。サーバ装置10は、複数台のサーバコンピュータにより協動して実現されてもよい。
サーバ装置10は、サーバ通信部11と、サーバ記憶部12と、サーバ制御部13と、を備える。
サーバ通信部11は、外部装置と無線又は有線によって通信し、情報の送受信を行うインターフェースを含む。サーバ通信部11は、例えば無線LAN(Local Area Network)通信モジュール又は有線LAN通信モジュール等を含んでもよい。サーバ通信部11は、ネットワーク30を介して、端末装置20との間で情報を送受信可能である。
サーバ記憶部12は、例えば記憶装置であって、ゲームの処理に必要な種々の情報及びプログラムを記憶する。例えばサーバ記憶部12は、ゲームのアプリケーションを記憶する。
また、サーバ記憶部12は、3次元の仮想空間内に配置された種々のオブジェクトに投影(テクスチャマッピング)するための種々の画像(テクスチャ画像)を記憶する。
例えば、サーバ記憶部12は、ゲーム媒体であるユーザキャラクタの画像を記憶する。なお、本実施形態では、仮想空間内では、ユーザキャラクタは1つだけ表現されるが、2つ以上のユーザキャラクタが表現されてもよい。なお、ユーザキャラクタは、複数のキャラクタのグループであってもよい。また、仮想空間内で利用されるユーザキャラクタは、ユーザにより適宜交換可能とされてもよい。
また、サーバ記憶部12は、ユーザキャラクタが装着/利用可能な各種アイテム(ゲーム媒体)の画像を記憶する。各種アイテムは、後述する釣りゲームにおける釣り道具等を含んでよい。
また、サーバ記憶部12は、例えば建物、壁、樹木、又はNPC(Non Player Character)等のような、他のゲーム媒体に係る画像を記憶する。本実施形態では、他のゲーム媒体は、後述する釣りゲームにおける魚オブジェクト等を含んでよい。
また、サーバ記憶部12は、例えば空又は遠景等の背景の画像(背景画像)を記憶する。以下、背景画像が投影されたオブジェクトを背景オブジェクトともいう。なお、背景画像は複数種類用意され、使い分けられてもよい。
また、サーバ記憶部12は、フィールド(例えば、地面)の画像(フィールド画像)を記憶する。フィールド画像は、後述するフィールド面に投影される。以下、フィールド画像がフィールド面に投影されたオブジェクトを、フィールドオブジェクトとも称する。なお、フィールドオブジェクトは、仮想空間内における仮想のフィールド(地面)として用いられる。また、フィールドオブジェクトは、仮想空間内における仮想の海(例えば釣り場の海)を含んでよい。
サーバ制御部13は、専用のマイクロプロセッサ又は特定のプログラムを読み込むことにより特定の機能を実現するCPUである。例えばサーバ制御部13は、表示部23に対するユーザ操作に応じてゲームのアプリケーションを実行する。また、サーバ制御部13は、ゲームに関する多様な処理を実行する。
例えば、サーバ制御部13は、フィールドオブジェクトやユーザキャラクタ等が表示されるフィールド画像を表示部23に表示させる。また、サーバ制御部13は、所定のユーザ操作に応じて、仮想空間内においてユーザキャラクタを、フィールドオブジェクトに対して相対的に、フィールドオブジェクト上で移動させる等により、仮想空間内のユーザキャラクタの活動(例えば後述する釣りゲームのプレイ等)を実現する。サーバ制御部13の具体的な処理の詳細は後述する。
図1Aは、サーバ装置10のハードウェア構成の一例を示す図である。
サーバ装置10は、バス119で接続されたCPU(Central Processing Unit)111、RAM(Random Access Memory)112、ROM(Read Only Memory)113、補助記憶装置114、ドライブ装置115、及び通信インターフェース117、並びに、通信インターフェース117に接続された有線送受信部125及び無線送受信部126を含む。
補助記憶装置114は、例えばHDD(Hard Disk Drive)や、SSD(Solid State Drive)などであり、アプリケーションソフトウェアなどに関連するデータを記憶する記憶装置である。
有線送受信部125は、ネットワーク30(図1参照)のような有線ネットワークを利用して通信可能な送受信部を含む。有線送受信部125には、周辺機器(図示せず)が接続されてもよい。ただし、周辺機器(図示せず)の一部又は全部は、バス119に接続されてもよいし、無線送受信部126に接続されてもよい。
無線送受信部126は、ネットワーク30(図1参照)のような無線ネットワークを利用して通信可能な送受信部である。無線ネットワークは、携帯電話の無線通信網、インターネット、VPN(Virtual Private Network)、WAN(Wide Area Network)等を含んでよい。また、無線送受信部126は、近距離無線通信(NFC:Near Field Communication)部、ブルートゥース(Bluetooth、登録商標)通信部、Wi-Fi(Wireless-Fidelity)送受信部、赤外線送受信部などを含んでもよい。
なお、サーバ装置10は、記録媒体116と接続可能であってもよい。記録媒体116は、所定のプログラムを格納する。この記録媒体116に格納されたプログラムは、ドライブ装置115を介してサーバ装置10の補助記憶装置114等にインストールされる。インストールされた所定のプログラムは、サーバ装置10のCPU111により実行可能となる。例えば、記録媒体116は、CD(Compact Disc)-ROM、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する記録媒体、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等であってよい。なお、記録媒体116には、搬送波は含まれない。
(端末装置の構成)
端末装置20の構成について具体的に説明する。図1に示すように、端末装置20は、端末通信部21と、端末記憶部22と、表示部23と、入力部24と、端末制御部25とを備える。
端末通信部21は、外部装置と無線又は有線によって通信し、情報の送受信を行うインターフェースを含む。端末通信部21は、例えばLTE(Long Term Evolution)(登録商標)等のモバイル通信規格に対応する無線通信モジュール、無線LAN通信モジュール、又は有線LAN通信モジュール等を含んでもよい。端末通信部21は、ネットワーク30を介して、サーバ装置10との間で情報を送受信可能である。
端末記憶部22は、例えば一次記憶装置及び二次記憶装置を含む。例えば端末記憶部22は、半導体メモリ、磁気メモリ、又は光メモリ等を含んでもよい。端末記憶部22は、サーバ装置10から受信する、ゲームの処理に用いられる種々の情報及びプログラムを記憶する。ゲームの処理に用いられる情報及びプログラムは、端末通信部21を介して外部装置から取得されてもよい。例えば、ゲームのアプリケーションプログラムが、所定のアプリケーション配信サーバから取得されてもよい。以下、アプリケーションプログラムを、単にアプリケーションともいう。また例えば、上述したユーザに関する情報及び対戦相手であるゲーム媒体に関する情報等の一部又は全部が、サーバ装置10から取得されてもよい。
表示部23は、例えば液晶ディスプレイ又は有機EL(Electro-Luminescence)ディスプレイ等の表示デバイスを含む。表示部23は、多様な画像を表示可能である。表示部23は、例えばタッチパネルで構成され、多様なユーザ操作を検出するインターフェースとして機能する。
入力部24は、例えば表示部23と一体的に設けられたタッチパネルを含む入力インターフェースを含む。入力部24は、端末装置20に対するユーザ入力を受付可能である。また、入力部24は、物理キーを含んでもよいし、マウス等のようなポインティングデバイスをはじめとする任意の入力インターフェースを更に含んでもよい。また、入力部24は、ヘッドアップディスプレイを装着したユーザにより利用可能なコントローラー(例えば加速度センサ等を内蔵するコントローラー)を含んでよい。
端末制御部25は、1つ以上のプロセッサを含む。端末制御部25は、端末装置20全体の動作を制御する。
端末制御部25は、端末通信部21を介して情報の送受信を行う。例えば、端末制御部25は、ゲームの処理に用いられる種々の情報及びプログラムを、サーバ装置10及び他の外部サーバの少なくとも一方から受信する。端末制御部25は、受信された情報及びプログラムを、端末記憶部22に記憶する。
端末制御部25は、ユーザの操作に応じてゲームのアプリケーションを起動する。端末制御部25は、サーバ装置10と協動して、ゲームを実行する。例えば、端末制御部25は、ゲームに用いられる種々の画像(例えば後述する各種のフィールド画像)を表示部23に表示させる。画面上には、例えばユーザ操作を検出するGUI(Graphic User Interface)が表示されてもよい。端末制御部25は、入力部24を介して、画面に対するユーザ操作を検出可能である。例えば端末制御部25は、ユーザのタップ操作、ロングタップ操作、フリック操作、及びスワイプ操作等を検出可能である。タップ操作は、ユーザが指で表示部23に触れ、その後に指を離す操作である。端末制御部25は、操作情報をサーバ装置10に送信する。
なお、端末装置20のハードウェア構成は、図1Aを参照して上述したサーバ装置10のハードウェア構成と実質的に同一であってよい。ただし、端末装置20のハードウェア構成は、図1Aを参照して上述したサーバ装置10のハードウェア構成に対して、表示部23に対応するディスプレイ装置を備える点が異なってよい。
(釣りゲーム)
次に、釣りゲームを一例として、本実施形態の特徴的な構成を説明する。
図2は、釣りゲームの画面例を示す図である。
図2に示す例では、ユーザキャラクタが釣り道具のオブジェクトを手にして、釣りをしている様子の画面が示されている。なお、釣り道具のオブジェクトは、厳密には、竿やリール、ハリス、針、餌等の各種オブジェクトの組み合わせであるが、ここでは、代表して「竿オブジェクト」とも称する。また、竿オブジェクトは、ユーザキャラクタに対応付けられたアイテムであり、ユーザキャラクタと竿オブジェクトとは、実質的に一体化した一のゲーム媒体を形成する。従って、以下の説明において、「竿側」とは、「ユーザキャラクタ側」と実質的に同義である。
図3は、釣りゲームの画面G200におけるゲージ表示G300の説明図である。図4は、釣りゲームの進行に応じて実現されうる魚側ゲージG1及び竿側ゲージG2の各動きの説明図である。
本実施形態では、釣りゲームの画面G200は、図3に示すように、ゲームの進行状況を表すゲージ表示G300を含む。ゲージ表示G300は、画面横方向に直線状に延在し、魚側ゲージ部G301と、竿側ゲージ部G302とを含む。なお、変形例では、ゲージ表示G300は、画面縦方向に延在してもよいし、あるいは、円形や半円形の形態であってもよい。
魚側ゲージ部G301には、魚オブジェクトを模式的に表す表示G10が対応付けられる。例えば、表示G10は、魚側ゲージ部G301の右側端部の右側に配置されてよい。表示G10は、固定であってもよいし、可動であってもよい。例えば、表示G10は、後述する魚側ゲージG1の伸縮に連動する態様で動き(図4の矢印R403参照)を有してもよい。また、表示G10は、任意のパラメータ(例えば後述する魚側ゲージパラメータ)の値に応じて色及び/又はサイズ等が変化してもよい。また、表示G10は、後述する魚側ゲージG1の右端に表示され、後述する魚側ゲージG1の伸縮に連動する態様で動いてもよい。
魚側ゲージ部G301は、魚側ゲージパラメータの値(後述)を視覚的に表す魚側ゲージG1(第1ゲージ表示の一例)を含む。魚側ゲージG1は、左側端部から右側端部までの区間内で、伸縮可能である。本実施形態では、一例として、魚側ゲージG1は、左側端部が初期位置(第1初期位置の一例)であり、右側端部(第1位置の一例)まで伸びると(図3の矢印R301)、魚側の“勝利”を表す。なお、魚側の“勝利”の場合、魚オブジェクトが釣り上げられることなく、逃げることになる。
竿側ゲージ部G302には、竿オブジェクトを表す表示G20が対応付けられる。例えば、表示G20は、竿側ゲージ部G302の左側端部の左側に配置されてよい。表示G20は、固定であってもよいし、可動であってもよい。例えば、表示G20は、後述する竿側ゲージG2の伸縮に連動する態様で動き(図4の矢印R404参照)を有してもよい。また、表示G20は、任意のパラメータ(例えば後述する竿側ゲージパラメータ)の値に応じて色及び/又はサイズ等が変化してもよい。また、表示G20は、後述する竿側ゲージG2の左端に表示され、後述する竿側ゲージG2の伸縮に連動する態様で動いてもよい。
竿側ゲージ部G302は、竿側ゲージパラメータの値(後述)を視覚的に表す竿側ゲージG2(第2ゲージ表示の一例)を含む。竿側ゲージG2は、左側端部から右側端部までの区間内で、伸縮可能である。竿側ゲージG2の右側端部は、魚側ゲージG1の左側端部と、画面左右方向で隣り合う。本実施形態では、一例として、竿側ゲージG2は、右側端部が初期位置(第2初期位置の一例)であり、左側端部(第2位置の一例)まで伸びると(図3の矢印R302)、竿側(すなわちユーザキャラクタ側)の“勝利”を表す。なお、竿側の“勝利”の場合、魚オブジェクトが釣り上げられることになる。なお、釣り上げられた魚オブジェクトは、対応するユーザにより獲得された状態として、対応するユーザIDに対応付けられもよい。
図5及び図6は、比較例によるゲージ表示を示す説明図である。
本実施形態では、上述したように、魚側ゲージG1及び竿側ゲージG2は、それぞれの初期位置が隣接し、かつ、各限界位置が左右方向で互いに対して最も離れる態様で、画面左右方向に直線状に延在する。そして、魚側ゲージG1及び竿側ゲージG2は、それぞれ、増減(伸縮)する態様(矢印R401、R402参照)で変化する。なお、魚側ゲージG1及び竿側ゲージG2は、それぞれ初期位置にあるときは、伸びが0であり、実質的に非表示状態とされてよい。
また、本実施形態では、魚側ゲージG1及び竿側ゲージG2は、それぞれ、共通のゲームパラメータ(後述)の値に基づいて、それぞれ、増減する態様(矢印R401、R402参照)で変化する。すなわち、共通のゲームパラメータ(後述の魚内部HP)(所定パラメータの一例)の値を用いるにもかかわらず、魚側ゲージG1及び竿側ゲージG2のそれぞれを変化させることができる。これにより、竿側と魚側との間の攻防(引き合い)を、より直感的に認識可能となり、ゲームの興趣を高めることができる。
ここで、図5に示す比較例は、魚を模した可動表示G501の位置により、共通のゲームパラメータの値を表す表示態様である。可動表示G501の位置は、初期位置R510から左右に移動可能である。具体的には、可動表示G501の位置は、魚側が優位になるにつれて右側に移動し、右側端部に至ると魚側の“勝利”を表す。また、逆に、可動表示G501の位置は、竿側が優位になるにつれて左側に移動し、左側端部に至ると竿側の“勝利”を表す。このような表示態様は、綱引きのような態様で綱の中央位置に相当する可動表示G501が左右に移動するので、どちらが現在優位であるかを直感的に認識可能である。しかしながら、このような表示態様は、斬新さが不足し、また、竿側と魚側との間の攻防(引き合い)を、臨場感ある態様で表すことができない。
また、図6に示す比較例では、魚側と竿側にそれぞれ独自のゲームパラメータ(例えばHP:Hit Point)の値を与え、魚側のゲームパラメータの値(初期値は、右側端部の最大値Max)が左側端部の0となると(図6の矢印R601)、竿側の“勝利”となる。また、逆に、竿側のゲームパラメータの値(初期値は、左側端部の最大値Max)が右側端部の0となると(図6の矢印R602)、魚側の“勝利”となる。このような表示態様も、通常的な対戦ゲームで利用されていることから、斬新さに欠き、また、竿側と魚側との間の攻防(引き合い)を、臨場感ある態様で表すことができない。
これに対して、本実施形態によれば、上述したように、斬新でありながら、竿側と魚側との間の攻防(引き合い)を、より直感的に認識可能な表示態様を実現できる。
次に、図7以降を参照して、本実施形態の更なる詳細を説明する。
図7は、上述した釣りゲームに関連したゲームシステム1のゲーム機能に関する機能ブロック図の一例である。図8は、ユーザに関する情報の説明図である。図9は、竿パラメータに関する情報の説明図である。図10は、魚オブジェクトに関する情報の説明図である。図11は、魚パラメータに関する情報の説明図である。図12は、魚側ゲージ部G301における魚側ゲージG1の長さaの説明図である。図13は、竿側ゲージ部G302における竿側ゲージG2の長さcの説明図である。なお、図8(以下の同様の図9等も同様)において、「***」は、なんらかの情報が格納されている状態を示し、「・・・」は、同様の情報の格納の繰り返し状態を示す。
なお、以下で説明するゲームシステム1の各部は、サーバ装置10単独により実現されてもよい。この場合、出力処理部150により出力されるデータを、端末装置20が受信して表示部23に出力してよい。あるいは、以下で説明するゲームシステム1の各部は、端末装置20単独により実現されてもよい。この場合、以下で説明するユーザ情報記憶部134の一部の情報(他のユーザに関する情報)は記憶されなくてよい。あるいは、以下で説明するゲームシステム1の各部は、サーバ装置10及び端末装置20の組み合わせにより実現されてもよい。この場合、例えば、出力処理部150の機能の一部(描画処理部分)又は全部が、端末装置20単独により実現されてもよい。
ゲームシステム1は、操作情報取得部132と、ユーザ情報記憶部134と、魚情報記憶部136と、ゲーム処理部140と、出力処理部150とを含む。ゲーム処理部140は、魚側ゲーム処理部141と、竿側ゲーム処理部142と、ゲーム開始処理部143と、魚内部HP記憶部144と、ゲーム終了処理部145とを含む。
なお、操作情報取得部132、ゲーム処理部140のうちの魚内部HP記憶部144以外の処理部、及び出力処理部150は、図1Aに示したCPU111が、図1Aに示した記憶装置(例えばROM113等)に記憶された1つ以上のプログラムを実行することで実現できる。なお、以下、各部の処理に関して、“算出”とは、データとして記憶された算出値や設定値等を読み出すだけの処理を含む概念である。
また、ユーザ情報記憶部134及び魚情報記憶部136は、例えば図1Aに示した補助記憶装置114等により実現できる。また、ゲーム処理部140のうちの魚内部HP記憶部144は、例えば図1Aに示したRAM112等により実現できる。
操作情報取得部132は、ユーザの操作情報を取得する。なお、ユーザの操作情報は、端末装置20におけるユーザによる各種操作に応じて生成される。なお、操作情報は、ジェスチャーや音声入力等により生成されてもよい。釣りゲーム中の操作情報は、例えば、後述するように端末装置20の画面へのタップ操作等を含んでよい。なお、取得対象の操作情報は、任意であり、端末の姿勢や動きを加速度センサや角速度センサで検知するモーションキャプチャに基づく入力や、視線検出に基づく入力等が利用されてもよい。視線検出の場合、ヘッドマウントディスプレイやスマートグラス等が好適である。
ユーザ情報記憶部134には、複数のユーザそれぞれに関する情報が記憶される。図8を参照して、ユーザに関する情報について説明する。図8は、2人のユーザそれぞれに関する情報を示す。ユーザに関する情報は、当該ユーザに固有の種々の情報を含む。例えば、ユーザに関する情報は、ユーザIDと、ユーザ名と、ランクと、ユーザキャラクタに関する情報と、使用ゲーム媒体に関する情報と、フレンド情報とを含む。
ユーザIDは、ユーザを一意に識別可能な情報である。以下、ユーザIDを単にユーザともいう。
ユーザ名は、ユーザの名前を示す情報である。ユーザ名は、ユーザIDとは異なり、ユーザを一意に識別可能でなくてもよい。ユーザ名は、端末装置20に対するユーザ操作に応じて任意に決定及び変更が可能であってもよい。
ランクは、ゲーム全般(又は釣りゲーム)に関するユーザの熟練度を示すパラメータである。本実施形態において、ランクの値は、ユーザによるゲームのプレイに応じて増加してもよい。ランクが高いほど、ゲームに関するユーザの熟練度が高い。
ユーザキャラクタに関する情報は、ユーザが仮想空間内で操作するユーザキャラクタに関する。ユーザキャラクタに関する情報は、当該ユーザキャラクタを特定するキャラクタIDや描画用の情報を含んでよい。
使用ゲーム媒体に関する情報は、対戦ゲームパートにおいてユーザに使用させるゲーム媒体に関する。本実施形態では、使用ゲーム媒体は、釣りゲームに関する使用ゲーム媒体を含む。釣りゲームに関する使用ゲーム媒体は、上述したような釣り道具(竿等)を含む。また、釣りゲームに関する使用ゲーム媒体は、使用可能な餌(疑似餌を含む)に関する情報を含んでよい。
フレンド情報は、フレンド関係にあるユーザIDを表す。例えば、ユーザAが、ユーザB、Cとフレンド関係である場合、ユーザAに対応付けられたフレンド情報は、ユーザB、CのユーザIDを含む。なお、フレンド関係は、フレンド申請等を介して実現される。このように、フレンド情報は、ユーザとの間で一方向的又は双方向的に関連付けられた他のユーザのユーザIDを含む。なお、フレンド関係にあるユーザ同士は、例えばゲームシステム1上でメッセージの送受信等のコミュニケーションが可能であってもよい。なお、ユーザに関する情報において、フレンド情報に代えて又は加えて、所属するグループ(例えばギルドやパーティ)を示す情報が含められてもよい。
ユーザに関する情報の内容は、上述したものに限られない。例えば、ユーザに関する情報は、ユーザがゲーム内で保有する所定のポイントを示す情報を更に含んでもよい。当該ポイントは、ユーザがゲームパートをプレイするために消費される。ゲームパートごとに、当該ポイントの消費量が異なってもよい。当該ポイントは、例えば時間経過に応じて、又は所定のゲーム媒体の使用に応じて、増加してもよい。
本実施形態では、図8に示した使用ゲーム媒体に関する情報は、竿パラメータに関する情報(以下、「竿パラメータ情報」とも称する)を含んでよい。図9は、竿パラメータ情報の一例を示す。図9に示す例では、一の特定の竿に関する竿パラメータ情報が示される。使用可能な竿が複数種類ある場合、竿パラメータ情報は、竿ごとに設定されてよい。
竿パラメータ情報は、竿イベント(第2イベントの一例)と、竿イベントごとの変化パラメータの値とを含む。竿イベントは、後述する魚内部HP(Hit Point)の値を低減させるイベントであり、変化パラメータの値は、その低減量を表す。図9に示す例では、2つの竿イベントとして、タップ操作イベント、及び、所定時間経過ごとのタイムアウトイベントが定義されており、それぞれの竿イベントに対して、変化パラメータの値-α1、-α2が対応付けられている。この場合、タップ操作イベントが検出されると、魚内部HPの値がα1だけ減算される。また、所定時間経過ごとのタイムアウトイベントが検出されると、魚内部HPの値がα2だけ減算される。なお、タイムアウトイベントは、所定時間経過ごとに発生するイベントであり、例えば所定時間ΔT竿ごとにリセットされるタイマがタイムアウトするイベントに対応する。所定時間ΔT竿は、具体的な数値として定義され、竿ごとに異なりうる態様で定義されてもよい。また、変化パラメータの値-α1、-α2は、ユーザに関する情報のうちの、ランク等に応じて変化してもよい。例えば、竿イベントごとに同じであっても異なってもよい。また、変化パラメータの値は、竿のランクや種類ごとに異なってもよいし、適宜、ゲームに使用するゲーム媒体やユーザの情報に応じて設定されてもよい。これは、所定時間ΔT竿についても同様である。
なお、図9に示す竿イベントは、あくまで一例であり、竿イベントは、所定期間内に所定回数以上のタップ操作イベントや、所定確率で生じるゲーム状況の変化(例えばゲームにおける釣り場で嵐が起きる等)等を含んでもよい。また、竿イベントは、タッチパネルやコントローラーを介した特定の操作(ロングタップ操作、フリック操作、及びスワイプ操作等)や、特定のコマンドの入力(ジョイスティックに対する特定操作や特定ボタンの特定パターンでの操作などの各種組み合わせを含む)、特定のジェスチャー入力や音声入力等を含んでよい。また、ゲームに使用するゲーム媒体やユーザの情報に応じて、竿イベントの内容が異なってもよい。
魚情報記憶部136には、釣りゲームにおける釣り対象の魚オブジェクトに関する情報が記憶される。魚情報記憶部136には、複数の魚オブジェクトそれぞれに関する情報が記憶される。図10を参照して、魚オブジェクトに関する情報について説明する。図10は、2匹の魚オブジェクトそれぞれに関する情報を示す。魚オブジェクトに関する情報は、当該魚オブジェクトに固有の種々の情報を含む。例えば、魚オブジェクトに関する情報は、魚IDと、魚名と、ランクと、魚パラメータに関する情報(以下、「魚パラメータ情報」とも称する)とを含む。
魚IDは、魚オブジェクトを一意に識別可能な情報である。魚名は、魚の名前を示す情報である。
ランクは、釣りゲームに関する魚の強さ(釣り難さ)を示すパラメータである。本実施形態において、ランクの値は、魚の属性に応じて異なる。例えば、マグロの場合、イワシよりもランクの値が高い。
魚パラメータ情報は、後述する魚HPの変化を引き起こす魚イベントと、魚イベントごとの変化パラメータの各値を含む。
図11は、魚パラメータ情報の一例を示す。図11に示す例では、一の特定の魚に関する魚パラメータ情報が示される。魚パラメータ情報は、魚ごとに設定されてよい。また、魚の種類が同じでも、サイズごとに設定されてもよい。
魚パラメータ情報は、魚イベント(第1イベントの一例)と、魚イベントごとの変化パラメータの値とを含む。魚イベントは、魚内部HPの値を増加させるイベントであり、変化パラメータの値は、その増加量を表す。図11に示す例では、1つの魚イベントとして、所定時間経過ごとのタイムアウトイベントが定義されており、かかる魚イベントに対して、変化パラメータの値β1が対応付けられている。この場合、所定時間経過ごとのタイムアウトイベントが検出されると、魚内部HPの値がβ1だけ加算される。なお、タイムアウトイベントは、所定時間経過ごとに発生するイベントであり、本実施形態では、所定時間ΔT魚ごとにリセットされるタイマがタイムアウトするイベントに対応する。所定時間ΔT魚は、具体的な数値として定義され、魚オブジェクトごとに異なりうる態様で定義されてもよい。例えば、所定時間ΔT魚は、魚オブジェクトのランクが高いほど所定時間ΔT魚が短くなる態様で、魚オブジェクトごとに異なってもよい。また、同様に、変化パラメータの値β1は、魚オブジェクトのランクが高いほど大きくなる態様で、魚オブジェクトごとに異なってもよい。また、魚オブジェクトの種類に応じて、魚イベントの内容が異なってもよい。
ゲーム処理部140は、釣りゲームに関するゲーム処理を実行する。
ゲーム処理部140は、上述したように、魚側ゲーム処理部141と、竿側ゲーム処理部142と、ゲーム開始処理部143と、魚内部HP記憶部144と、ゲーム終了処理部145とを含む。
魚側ゲーム処理部141は、魚イベント処理部1410と、魚HP増加処理部1412とを含む。
魚イベント処理部1410は、魚イベントを検出する。魚イベントは、図11を参照して上述したとおりである。例えば、魚イベントが所定時間経過ごとのタイムアウトイベントである場合、魚イベント処理部1410は、所定時間ΔT魚ごとにリセットされるタイマに基づいて、タイマがタイムアウトするごとに魚イベントを検出してよい。
魚HP増加処理部1412は、魚イベントに基づいて、魚内部HPの値を増加させる。具体的には、魚HP増加処理部1412は、一の魚イベントに基づいて、当該一の魚イベントに対応付けられた変化パラメータの値(例えば図11のβ1)だけ、魚内部HPの値を増加させる。
竿側ゲーム処理部142は、竿イベント処理部1420と、魚HP低減処理部1422とを含む。
竿イベント処理部1420は、竿イベントを検出する。竿イベントは、図9を参照して上述したとおりである。例えば、竿イベントがタップ操作イベントである場合、魚イベント処理部1410は、操作情報取得部132により取得される操作情報に基づいて、タップ操作イベントを検出してよい。
魚HP低減処理部1422は、竿イベントに基づいて、魚内部HPの値を減少させる。具体的には、魚HP低減処理部1422は、一の竿イベントに基づいて、当該一の竿イベントに対応付けられた変化パラメータの値(例えば図9のα1)だけ、魚内部HPの値を減少させる。
ゲーム開始処理部143は、釣りゲームに関するゲーム開始準備等の処理を実行する。例えば、ゲーム開始処理部143は、ユーザによるアイテムの選択(例えば餌の選択)等を受け付ける処理や、竿レベルの調整処理等を実行する。
魚内部HP記憶部144は、釣りゲームの進行中に動的に変化する魚内部HPの値を記憶及び更新する。具体的には、魚内部HP記憶部144は、魚HP増加処理部1412により魚内部HPの値が増加される際、及び、魚HP低減処理部1422により魚内部HPの値が低減される際、当該変化後の値を記憶する。なお、魚HP増加処理部1412による魚内部HPの値の増加と、魚HP低減処理部1422による魚内部HPの値の低減とが、同時(同一処理周期)に起こる場合、それらの相殺後の値が記憶されてよい。この際、魚HP増加処理部1412による魚内部HPの値の増加量と、魚HP低減処理部1422による魚内部HPの値の低減量とが同じであるとき、魚内部HPの値は変化しない。
本実施形態では、魚内部HP記憶部144には、釣りゲームの進行中に、当該釣りゲームにおける魚内部HPの値の変化履歴や、後述する最大HP値や最小HP値が記憶及び更新されてよい。
ゲーム終了処理部145は、ゲーム終了条件が成立すると、ゲームの終了イベントを発生させる。ゲーム終了条件は、魚内部HPの値が上限値HPMax及び下限値HPMinのいずれかに達した場合に満たされる。上限値HPMaxは、魚内部HPの初期値(ゲーム開始時の値)よりも大きく、下限値HPMinは、魚内部HPの初期値よりも小さい。本実施形態では、一例として、魚内部HPの初期値は、「200」であり、上限値HPMaxは、「400」であり、下限値HPMinは、「0」であるとする。
ゲーム終了条件は、他の終了条件が満たされた場合にも満たされてよい。他の終了条件は、ゲーム開始時からの経過時間が上限時間に達した場合や、ユーザによる強制終了入力があった場合等に満たされてよい。
なお、変形例では、ゲーム終了処理部145は、ゲームの終了イベントに加えて又は代えて、ゲーム区切り条件が成立すると、ゲームの区切りイベントを発生させてもよい。ゲーム区切り条件は、魚内部HPの値が区切り用上限値HPMax1及び区切り用下限値HPMin1のいずれかに達した場合に満たされてよい。この場合、区切り用上限値HPMax1は、上限値HPMaxよりも小さくてよく、また、区切り用下限値HPMin1は、下限値HPMinよりも大きくてよい。ゲーム区切り条件が成立すると、図3及び図4を参照して上述した魚側ゲージ部G301又は竿側ゲージ部G302が終了位置に達した後、リセットされてもよい。
出力処理部150は、図3及び図4を参照して上述した魚側ゲージ部G301及び竿側ゲージ部G302に関する出力処理等を実行する。
出力処理部150は、魚側出力処理部151と、竿側出力処理部152とを含む。
魚側出力処理部151は、図3等を参照して上述した魚側ゲージ部G301に関する出力処理等を実行する。
魚側出力処理部151は、魚側ゲージパラメータ更新部1510と、魚ゲージ描画処理部1512とを含む。
魚側ゲージパラメータ更新部1510は、ゲームの進行中に、魚内部HPの値が変化した場合に、魚オブジェクトに対応付けられる魚側ゲージパラメータ(第1の表示パラメータの一例)の値を変化させる。
本実施形態では、魚側ゲージパラメータ更新部1510は、ゲームの進行中において更新された魚内部HPの各値(魚内部HP記憶部144内の記憶値の変化履歴)のうちの、最小値(以下、「最小HP値」とも称する)を利用する。なお、最小HP値は、上限値HPMax(第1限界値の一例)に対して最も差分の大きさが大きい値(第1最大差分値の一例)であり、ゲームの進行中に動的に変化しうる。具体的には、魚側ゲージパラメータ更新部1510は、最小HP値と、魚内部HPの今回値と、上限値HPMaxとに基づいて、魚側ゲージパラメータの今回値を算出する。
この際、魚側ゲージパラメータの今回値は、上限値HPMaxと最小HP値との間の差分の大きさを1としたときの、魚内部HPの今回値と最小HP値との間の差分の大きさの比である。すなわち、
魚側ゲージパラメータの今回値=(魚内部HPの今回値-最小HP値)/(上限値HPMax-最小HP値) 式(1)
である。なお、ゲーム開始時の最小HP値は、初期値と等しい。
なお、変形例では、魚側ゲージパラメータの今回値は、上限値HPMaxと魚内部HPの初期値との間の差分の大きさを1としたときの、魚内部HPの初期値と魚内部HPの今回値との間の差分の大きさの比であってもよい。すなわち、
魚側ゲージパラメータの今回値=(魚内部HPの今回値-魚内部HPの初期値)/(上限値HPMax-魚内部HPの初期値) 式(2)
である。ただし、この場合、魚内部HPの今回値-魚内部HPの初期値が0以下のとき、魚側ゲージパラメータの今回値=0とされてよい。
なお、本実施形態では、魚側ゲージパラメータの今回値は、上限値HPMaxと最小HP値との間の差分の大きさを1としたときの、魚内部HPの今回値と最小HP値との間の差分の大きさの比であるが、当該比に基づく値であれば、他の値であってもよい。例えば、魚側ゲージパラメータの今回値は、当該比とは異なるが、当該比から一意に導出可能な値(例えば後述する式(1A)の値)であってもよい。
魚ゲージ描画処理部1512は、図3等を参照して上述した態様で、魚側ゲージ部G301の魚側ゲージG1を伸縮させる。本実施形態では、魚ゲージ描画処理部1512は、魚側ゲージパラメータ更新部1510により算出される魚側ゲージパラメータの今回値に応じて伸縮可能な態様で、魚側ゲージG1を描画する。
この際、魚ゲージ描画処理部1512は、図12に示すように、魚側ゲージG1の長さを「a」とし、魚側ゲージ部G301の長さ(魚側ゲージG1の最大長さ)を「b」としたとき、a/b=魚側ゲージパラメータの今回値となるように、魚側ゲージG1の長さaの今回値を算出する。
この場合、最小HP値が小さいほど、魚側ゲージG1の伸び率(魚内部HPの値の単位増加量あたりの伸び)が小さくなる。以下、このようにして、ゲームの進行中に、魚側ゲージG1の伸び率が動的に変化する機能を、「ゲージ伸び率の動的変化機能」とも称する。
例えば、ケース1として、最小HP値=100であるとき、魚内部HPの値が250から350に増加するときを想定する。
魚内部HPの値が250のときの、魚側ゲージパラメータの今回値は、以下のとおりである。
(250-100)/(400-100)=150/300(=1/2)
魚内部HPの値が350のときの、魚側ゲージパラメータの今回値は、以下のとおりである。
(350-100)/(400-100)=250/300(=5/6)
従って、魚内部HPの値が250から350に増加すると、魚側ゲージG1の長さaは、1/3増加する。
次に、ケース2として、最小HP値=150であるとき、魚内部HPの値が250から350に増加するときを想定する。
魚内部HPの値が250のときの、魚側ゲージパラメータの今回値は、以下のとおりである。
(250-150)/(400-150)=100/250(=2/5)
魚内部HPの値が350のときの、魚側ゲージパラメータの今回値は、以下のとおりである。
(350-150)/(400-150)=200/250(=4/5)
従って、魚内部HPの値が250から350に増加すると、魚側ゲージパラメータの値は、2/5増加する。
2/5>1/3であるので、最小HP値が相対的に小さいケース1のほうがケース2よりも、魚側ゲージG1の伸び率が小さい。
ただし、比較対象が、魚側ゲージG1の長さa自体であるとすると、魚内部HPの値が同じ250(350等の他の値でも同じ)であるとき、ケース2では、a=100/250(=2/5)であり、ケース1のa=150/300(=1/2)よりも、短くなる。換言すると、魚側ゲージG1に係るゲージ伸び率の動的変化機能は、同じ魚内部HPの値であっても、最小HP値の相違に応じて、魚側ゲージG1の長さaを異ならせる機能とも、いうことができる。
なお、このような構成は、式(1)に代えて、以下の式(1A)で魚側ゲージパラメータの今回値を算出し、(b-a)/b=魚側ゲージパラメータの今回値となるように、魚側ゲージG1の長さaの今回値を算出する構成と実質的に等価である。
魚側ゲージパラメータの今回値=(上限値HPMax-魚内部HPの今回値)/(上限値HPMax-最小HP値) 式(1A)
なお、式(1A)による魚側ゲージパラメータの今回値=(1-式(1)による魚側ゲージパラメータの今回値)の関係である。
なお、変形例の式(2)の場合も、魚ゲージ描画処理部1512は、a/b=魚側ゲージパラメータの今回値となるように、魚側ゲージG1の長さaの今回値を算出する。この場合、上述したゲージ伸び率の動的変化機能は得られないものの、図3及び図4を参照して上述した効果が得られる。
竿側出力処理部152は、図3等を参照して上述した竿側ゲージ部G302に関する出力処理等を実行する。
竿側出力処理部152は、竿側ゲージパラメータ更新部1520と、竿ゲージ描画処理部1522とを含む。
竿側ゲージパラメータ更新部1520は、ゲームの進行中に、魚内部HPの値が変化した場合に、竿オブジェクトに対応付けられる竿側ゲージパラメータ(第2の表示パラメータの一例)の値を変化させる。
本実施形態では、竿側ゲージパラメータ更新部1520は、ゲームの進行中において更新された魚内部HPの各値(魚内部HP記憶部144内の値の変化履歴)のうちの、最大値(以下、「最大HP値」とも称する)を利用する。なお、最大HP値は、下限値HPMin(第2限界値の一例)に対して最も差分の大きさが大きい値(第2最大差分値の一例)であり、ゲームの進行中に動的に変化しうる。具体的には、竿側ゲージパラメータ更新部1520は、最大HP値と、魚内部HPの今回値と、下限値HPMinとに基づいて、竿側ゲージパラメータの今回値を算出する。
この際、竿側ゲージパラメータの今回値は、下限値HPMinと最大HP値との間の差分の大きさを1としたときの、下限値HPMinと魚内部HPの今回値との間の差分の大きさの比を、1から引き算して得られる値である。すなわち、
竿側ゲージパラメータの今回値=1-(魚内部HPの今回値-下限値HPMin)/(最大HP値-下限値HPMin) 式(3)
である。なお、ゲーム開始時の最大HP値は、初期値と等しい。
なお、本実施形態では、下限値HPMinは、「0」であるので、式(3)は、以下の式(3A)ように書き換えることもできる。
竿側ゲージパラメータの今回値=1-(魚内部HPの今回値)/(最大HP値) 式(3A)
下限値HPMinが「0」である場合、プログラム上、式(3A)のように、下限値HPMinが現れない場合があるが、式(3A)は、下限値HPMinを利用した関係式であると、いうことができる。なお、これは、上述した式(1A)に関しても同様である。また、上限値HPMaxが「0」である場合には、上述した式(1)に関しても同様である。
また、本実施形態では、竿側ゲージパラメータの今回値は、下限値HPMinと最大HP値との間の差分の大きさを1としたときの、下限値HPMinと魚内部HPの今回値との間の差分の大きさの比を、1から引き算して得られる値であるが、当該値に基づく値であれば、他の値であってもよい。例えば、魚側ゲージパラメータの今回値は、当該値とは異なるが、当該値から一意に導出可能な他の値であってもよい。
竿ゲージ描画処理部1522は、図3等を参照して上述した態様で、竿側ゲージ部G302の竿側ゲージG2を伸縮させる。本実施形態では、竿ゲージ描画処理部1522は、竿側ゲージパラメータ更新部1520により算出される竿側ゲージパラメータの今回値に応じて伸縮可能な態様で、竿側ゲージG2を描画する。
この際、竿ゲージ描画処理部1522は、図13に示すように、竿側ゲージG2の長さを「c」とし、竿側ゲージ部G302の長さ(竿側ゲージG2の最大長さ)を「d」としたとき、c/d=竿側ゲージパラメータの今回値とする。
この場合、最大HP値が大きいほど、竿側ゲージG2の伸び率(魚内部HPの値の単位増加量あたりの伸び)が小さくなる。このようにして、竿側ゲージG2についても、ゲームの進行中に、竿側ゲージG2の伸び率が動的に変化する機能(ゲージ伸び率の動的変化機能)を有する。
例えば、ケース3として、最大HP値=300であるとき、魚内部HPの値が250から150に減少するときを想定する。
魚内部HPの値が250のときの、竿側ゲージパラメータの今回値は、以下のとおりである。
1-(250-0)/(300-0)=5/30(=1/6)
魚内部HPの値が150のときの、竿側ゲージパラメータの今回値は、以下のとおりである。
1-(150-0)/(300-0)=15/30(=1/2)
従って、魚内部HPの値が250から150に減少すると、竿側ゲージパラメータの値は、1/3増加する。
次に、ケース4として、最大HP値=350であるとき、魚内部HPの値が250から150に減少するときを想定する。
魚内部HPの値が250のときの、竿側ゲージパラメータの今回値は、以下のとおりである。
1-(250-0)/(350-0)=10/35(=2/7)
魚内部HPの値が150のときの、竿側ゲージパラメータの今回値は、以下のとおりである。
1-(150-0)/(350-0)=20/35(=4/7)
従って、魚内部HPの値が250から150に減少すると、竿側ゲージパラメータの値は、2/7増加する。
2/7<1/3であるので、最大HP値が相対的に大きいケース4のほうがケース3よりも、竿側ゲージG2の伸び率が小さい。
ただし、比較対象が、竿側ゲージG2の長さc自体であるとすると、魚内部HPの値が同じ250(150等の他の値でも同じ)であるとき、ケース4では、c=10/35(=2/7)であり、ケース3のc=5/30(=1/6)よりも、長くなる。換言すると、竿側ゲージG2に係るゲージ伸び率の動的変化機能は、同じ魚内部HPの値であっても、最大HP値の相違に応じて、竿側ゲージG2の長さcを異ならせる機能とも、いうことができる。
このように本実施例では、最小HP値及び最大HP値を考慮することで、魚側ゲージG1及び竿側ゲージG2に係るゲージ伸び率の動的変化機能を実現できる。ここで、ゲーム進行中に記憶した最小HP値が低い=竿が有利になった、最大HP値が高い=魚側が有利になった、とのゲームの状況を示す。従って、本実施例によれば、ゲームの状況に応じた魚側ゲージG1及び竿側ゲージG2に係るゲージ伸び率の動的変化機能を実現できる。これによって、オンオフのデジタルな表現となってしまいがちな仮想空間における力の均衡状態の表現において、現実世界でみられるような「力関係の粘り」や「(均衡状態が崩れることにより)一気に崩れる」といった表現をすることが可能となる。例えると、輪ゴムを飛ばす直前まで引っ張り合う瀬戸際の緊張感を表現できる。具体的には、上述の算出方法においては、最大HP値が高いほど、竿側ゲージG2に係るゲージ伸び率が低くなるため、逆転がなかなかできない感覚をプレイヤにもたらし、引っ張り合って拮抗している状況を表現することができる。また、最小HP値が低いほど、魚側ゲージG1の伸びが悪くなるため、竿側が有利に進行している感覚(竿側が一気に押し切れそうになる感覚)をプレイヤにもたらすことができる。すなわち、魚内部HPが同じ値であっても、そのときのゲームの状況(最大HP値と最小HP値)に応じてゲージ(魚側ゲージG1や竿側ゲージG2、以下同じ)に係るゲージ伸び率を異ならせることで、ゲームの緊迫感のある進行状況を表現することができる。また、魚内部HPの値に基づいた、竿側と魚側のそれぞれのゲージ表現とすることにより、単一のゲージ表現のように均衡関係を表現しつつも、それぞれのゲージによって、竿側と魚側の動作を別に表現することができるため、両者の対話的なアクションの実行を表現することができる。
また、大きな画面を備える端末装置20よりも表現が制限されるスマートフォン等の小さな画面の端末装置20においても、両者のゲージを表示するため対戦者同士が拮抗している緊張感を効果的に表現することができる。特にタッチパネルを用いる端末装置20においては、操作に用いる範囲が存在するため、UI(User Interface)の配置範囲が限られるが、本実施形態では、少ない占有範囲で上記のような緊張感を効果的に表現できるため有効である。さらに、タッチパネルにおいては、ユーザがボタンを押すという感覚が感じられないため、操作に対するフィードバックが乏しく操作感を感じにくい。それに対して、本実施形態では、上記のような力関係に関する多様な表現を可能とすることで仮想的な操作感を表現することができる。一方で、HMDや据え置きの大画面における表示においても、少ない占有範囲で上記のような効果を表現ができるため、配置位置や他のUIとの位置関係などの表現の自由度を高めることができる。また、ゲームの緊迫感や緊張感を表現するためには、特別な演出やエフェクトを描画する方法も考えられるが、描画の処理負荷が増大する可能性がある。一方で、本実施形態では、変化するゲージの値に応じて、それぞれのゲージの変化量を異ならせるだけなので、描画処理の負荷を抑えつつ、ゲームの進行状況の緊迫感をユーザが直感的に認識できるように表現できる。このような効果は、高性能なGPU(Graphics Processing Unit)を搭載できず描画処理能力の劣る、携帯端末やHMDが端末装置20である場合において特に顕著である。
次に、図14以降を参照して、本実施形態によるゲームシステム1の動作例について説明する。
図14は、上述した釣りゲームに関してゲームシステム1により実行される処理の一例を示す概略フローチャートである。図14に示す処理は、釣りゲームにおいて魚オブジェクトの釣り上げが可能となる状態への遷移イベントが発生すると起動し、所定周期ごとに繰り返し実行されてよい。なお、遷移イベントは、任意であるが、例えば、魚オブジェクトによる引きが発生してから、竿オブジェクトによる合わせ(最初のタップ操作)が生じたイベントであってよい。
なお、図14に示すフローチャートにおいては、各ステップの入力と出力の関係を損なわない限り、各ステップの処理順序を入れ替えてもよい。
ステップS1400では、ゲームシステム1は、ゲームタイマがタイムアウトしたか否かを判定する。ゲームタイマは、1回の釣りゲームが継続可能な最長時間(上限時間)を計時するタイマであり、釣りゲームの開始時にリセットされる。なお、1回の釣りゲームが継続可能な最長時間(上限時間)は、魚オブジェクトごとに異なってもよく、例えば、ランクが高い魚オブジェクトほど短く設定されてもよい。判定結果が“NO”の場合、ステップS1402に進み、それ以外の場合は、ステップS1414に進む。
ステップS1402では、ゲームシステム1は、今回の処理周期の操作情報を取得し、記憶する。なお、操作情報は、1回の釣りゲームごとに、履歴として記憶(蓄積)されてよい。
ステップS1404では、ゲームシステム1は、魚タイマがタイムアウトしたか否かを判定する。魚タイマは、魚側イベントを発生させるタイマであり、釣りゲームの開始時にリセットされる。魚タイマは、所定時間ΔT魚ごとにタイムアウトして、リセット(再起動)される。判定結果が“YES”の場合、ステップS1406に進み、それ以外の場合は、ステップS1408に進む。
ステップS1406では、ゲームシステム1は、魚内部HPの値を増加させ、魚内部HP記憶部144内の記憶値(魚内部HPの値)を更新する。この際、魚内部HPの値が今回の釣りゲームにおいて、最大HP値を更新した場合は、新たな最大HP値を魚内部HP記憶部144内に記憶してよい。なお、魚側イベントごとの魚内部HPの値の増加量は、図11を参照して上述したように、対応する魚オブジェクトに対応付けられている魚パラメータ情報の変化パラメータの値で決まる。
ステップS1408では、ゲームシステム1は、ステップS1402で得た操作情報に基づいて、タップ操作イベント(竿側イベント)があったか否かを判定する。なお、タップ操作イベントは、単なる1回のタップ操作であってもよいし、連続したタップ操作のうちの1回又は所定回の操作であってもよい。判定結果が“YES”の場合、ステップS1410に進み、それ以外の場合は、ステップS1412に進む。
ステップS1410では、ゲームシステム1は、魚内部HPの値を低減させ、魚内部HP記憶部144内の記憶値(魚内部HPの値)を更新する。この際、魚内部HPの値が今回の釣りゲームにおいて、最小HP値を更新した場合は、新たな最小HP値を魚内部HP記憶部144内に記憶してよい。なお、竿側イベントごとの魚内部HPの値の低減量は、図9を参照して上述したように、対応する竿オブジェクトに対応付けられている竿パラメータ情報の変化パラメータの値で決まる。
ステップS1412では、ゲームシステム1は、魚内部HPの値が上限値HPMaxに達したか否かを判定する。判定結果が“YES”の場合、ステップS1414に進み、それ以外の場合は、ステップS1416に進む。
ステップS1414では、ゲームシステム1は、魚側の勝利を表すゲーム終了画面を生成及び出力して、今回の釣りゲームに関する処理を終了する。なお、ゲーム終了画面は、今回の釣りゲームに関する結果等の情報を含んでよい。
ステップS1416では、ゲームシステム1は、魚内部HPの値が下限値HPMinに達したか否かを判定する。判定結果が“YES”の場合、ステップS1418に進み、それ以外の場合は、ステップS1420に進む。
ステップS1418では、ゲームシステム1は、竿側の勝利を表すゲーム終了画面を生成及び出力して、今回の釣りゲームに関する処理を終了する。なお、ゲーム終了画面は、今回の釣りゲームに関する結果等の情報を含んでよい。
ステップS1420では、ゲームシステム1は、魚内部HP記憶部144内の記憶値(魚内部HPの値)に基づいて、魚側ゲージパラメータの値を更新する。魚側ゲージパラメータの値の更新方法は、魚側ゲージパラメータ更新部1510に関連して上述したとおりである。
ステップS1422では、ゲームシステム1は、魚内部HP記憶部144内の記憶値(魚内部HPの値)に基づいて、竿側ゲージパラメータの値を更新する。竿側ゲージパラメータの値の更新方法は、竿側ゲージパラメータ更新部1520に関連して上述したとおりである。
ステップS1424では、ゲームシステム1は、ステップS1420及びステップS1422で更新した魚側ゲージパラメータの値及び竿側ゲージパラメータの値に基づいて、ゲージ表示G300の魚側ゲージG1及び竿側ゲージG2を更新する。魚側ゲージG1及び竿側ゲージG2の各長さの更新方法は、魚ゲージ描画処理部1512及び竿ゲージ描画処理部1522を参照して上述したとおりである。
以上、各実施形態について詳述したが、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施形態の構成要素の全部又は複数を組み合わせることも可能である。
例えば、上述した実施形態では、釣りゲームに関して特徴的な構成を説明したが、かかる特徴的な構成は、釣りゲーム以外の任意の対戦ゲームに適用可能である。例えば、格闘ゲームにおいて、一方のプレイヤに係るゲージ表示と、他方のプレイヤに係るゲージ表示とを、共通の所定パラメータの値を各イベントに応じて増減させながら、更新させてよい。また、対戦ゲームは、1対1の対戦に限られず、1対多の対戦であってもよい。この場合、多のプレイヤに係るゲージ表示は、一のゲージ表示とされてもよい。この際、多のプレイヤに係る一のゲージについては、例えば、各プレイヤのタップ操作イベントの発生に応じて表示パラメータの値を変化させることとしてもよい。また、三つ巴のような3者間の対戦や4者以上間の対戦にも適用可能である。この場合、例えば各プレイヤに係るゲージ表示は、平行して配置してもよいし、中央から放射線状に伸びる態様で配置してもよい。また、対戦相手は、Non-player Character(NPC)に限られず、人であってもよい。また、グループ同士の対戦であってもよい。この場合、一のグループに係るゲージ表示は、一のゲージ表示とされてもよい。この際、一のグループに係る一のゲージについては、例えば、グループを形成する各プレイヤのタップ操作イベントの発生に応じて表示パラメータの値を変化させることとしてもよい。
また、上述した実施形態では、ゲージ伸び率の動的変化機能について、最小HP値が小さいほど、魚側ゲージG1の伸び率(魚内部HPの値の単位増加量あたりの伸び)が小さくなるが、逆であってもよい。すなわち、ゲージ伸び率の動的変化機能について、最小HP値が小さいほど、魚側ゲージG1の伸び率が大きくなってもよい。これは、竿側ゲージG2についても同様である。
また、上述した実施形態では、ゲージ伸び率の動的変化機能について、魚側ゲージパラメータ更新部1510及び竿側ゲージパラメータ更新部1520は、対応する釣りゲームの進行中における魚内部HPの値の変化態様を表す所定情報(例えば最小HP値や最大HP値)に基づいて、魚側ゲージG1及び竿側ゲージG2の伸び率を変化させているが、これに限られない。等価的に、魚側ゲージパラメータ更新部1510及び竿側ゲージパラメータ更新部1520は、対応する釣りゲームの進行中における魚内部HPの値の変化態様自体に基づいて、魚側ゲージG1及び竿側ゲージG2の伸び率を変化させることとしてもよい。また、上述した実施形態では、ゲージ伸び率の動的変化機能について、魚側ゲージパラメータ更新部1510及び竿側ゲージパラメータ更新部1520の双方が、魚側ゲージG1及び竿側ゲージG2の伸び率を変化させているが、これに限られない。すなわち、魚側ゲージパラメータ更新部1510及び竿側ゲージパラメータ更新部1520のいずれか一方だけが、魚側ゲージG1又は竿側ゲージG2の伸び率を変化させてもよい。
また、上述した実施形態では、ゲージ表示G300は、画面横方向に直線状に延在するが、上述したように、円形や半円形の形態であってもよい。この場合、竿側ゲージパラメータ等の表示パラメータの値の増減に伴い、円などの図形が拡大縮小してもよい。また、ゲージ表示G300は、その伸縮とともに、色も変化してよい。なお、このような色の変化は、ゲージ表示G300の形態に依存せず、直線状の形態のゲージにも適用できる。また、竿側ゲージパラメータ等の表示パラメータの値の増減に伴い、ゲージ表示G300の形態自体が変化してもよい。また、竿側ゲージパラメータの値に応じて、ユーザの身体に装着されてよいアクチュエーターによる振動を出力してもよい。この場合、竿側ゲージパラメータの値が増えると、振動が大きくなるといった具合に、振動態様が竿側ゲージパラメータの値に応じて変化してもよい。
また、上述した実施形態では、魚イベントと竿イベントとは、異種のイベントであったが、同じであってもよい。例えば、魚イベントと竿イベントは、ともにタップ操作イベントであってもよい。