IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社コーエーテクモゲームスの特許一覧

特開2023-4604処理プログラム、処理方法及び処理装置
<>
  • 特開-処理プログラム、処理方法及び処理装置 図1
  • 特開-処理プログラム、処理方法及び処理装置 図2
  • 特開-処理プログラム、処理方法及び処理装置 図3
  • 特開-処理プログラム、処理方法及び処理装置 図4
  • 特開-処理プログラム、処理方法及び処理装置 図5
  • 特開-処理プログラム、処理方法及び処理装置 図6
  • 特開-処理プログラム、処理方法及び処理装置 図7
  • 特開-処理プログラム、処理方法及び処理装置 図8
  • 特開-処理プログラム、処理方法及び処理装置 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023004604
(43)【公開日】2023-01-17
(54)【発明の名称】処理プログラム、処理方法及び処理装置
(51)【国際特許分類】
   A63F 13/58 20140101AFI20230110BHJP
   A63F 13/52 20140101ALI20230110BHJP
   A63F 13/45 20140101ALI20230110BHJP
   A63F 13/55 20140101ALI20230110BHJP
【FI】
A63F13/58
A63F13/52
A63F13/45
A63F13/55
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2021106420
(22)【出願日】2021-06-28
(71)【出願人】
【識別番号】595000427
【氏名又は名称】株式会社コーエーテクモゲームス
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】篠崎 翔
(57)【要約】
【課題】複数のオブジェクトによる所定の複数の攻撃に対して攻撃効果に制限を与える技術を提供する。
【解決手段】複数のオブジェクトが登場する仮想空間を表示部に表示させ、ゲームを処理するコンピュータに実行させる処理プログラムであって、前記仮想空間上のキャラクタの攻撃を検出する処理と、検出した前記攻撃に応じて発生するオブジェクトの表示を制御する処理と、前記攻撃に応じて発生するオブジェクトのうち同一グループのオブジェクトを判定する処理と、判定した前記同一グループのオブジェクトによる複数の攻撃のうち2つ以上の攻撃がヒットした場合に前記ヒットした数よりも少ない攻撃の効果を与える処理と、を含む処理プログラムが提供される。
【選択図】図6
【特許請求の範囲】
【請求項1】
複数のオブジェクトが登場する仮想空間を表示部に表示させ、ゲームを処理するコンピュータに実行させる処理プログラムであって、
前記仮想空間上のキャラクタの攻撃を検出する処理と、
検出した前記攻撃に応じて発生するオブジェクトの表示を制御する処理と、
前記攻撃に応じて発生するオブジェクトのうち同一グループのオブジェクトを判定する処理と、
判定した前記同一グループのオブジェクトによる複数の攻撃のうち2つ以上の攻撃がヒットした場合に前記ヒットした数よりも少ない攻撃の効果を与える処理と、を含む処理プログラム。
【請求項2】
前記ヒットした数よりも少ない攻撃の効果を与える処理は、前記同一グループのオブジェクトのうちの1つがヒットした時点から、前記同一グループのオブジェクトのうちのいずれかが次にヒットできるようになるまでの時間を、前記同一グループのオブジェクトで同一時間にそろえる処理である、
請求項1に記載の処理プログラム。
【請求項3】
検出した前記攻撃のうち同種類の攻撃から発生した複数のオブジェクトを前記同一グループのオブジェクトと判定する処理を前記コンピュータに実行させる、
請求項1又は2に記載の処理プログラム。
【請求項4】
検出した前記攻撃のうち同種類のオブジェクトの識別情報が付与された複数のオブジェクトを前記同一グループのオブジェクトと判定する処理を前記コンピュータに実行させる、
請求項1又は2に記載の処理プログラム。
【請求項5】
検出した前記攻撃のうち同種類の攻撃から発生した複数のオブジェクトのそれぞれの動作の開始フレームが予め設定されたフレーム数以上ずれていない複数のオブジェクトを前記同一グループのオブジェクトと判定する処理を前記コンピュータに実行させる、
請求項1又は2に記載の処理プログラム。
【請求項6】
検出した前記攻撃のうち同種類の攻撃から発生した複数のオブジェクトのそれぞれの動作が同時に開始された複数のオブジェクトを前記同一グループのオブジェクトと判定する処理を前記コンピュータに実行させる、
請求項1又は2に記載の処理プログラム。
【請求項7】
検出した前記攻撃のうち同種類の攻撃から発生した複数のオブジェクトであって、同種類のモーションから発生したオブジェクトを前記同一グループのオブジェクトと判定する処理を前記コンピュータに実行させる、
請求項1又は2に記載の処理プログラム。
【請求項8】
前記同一グループのオブジェクトによる複数の攻撃によって一のオブジェクトが敵のキャラクタにヒットしたときから予め設定されたフレーム数の間、前記複数の攻撃によって他のオブジェクトが敵のキャラクタにヒットした場合であってもヒット数を1とカウントする処理を前記コンピュータに実行させる、
請求項1~7のいずれか一項に記載の処理プログラム。
【請求項9】
前記仮想空間上のキャラクタのうち、ユーザの操作に応じて動作するキャラクタの攻撃を検出する処理を前記コンピュータに実行させる、
請求項1~8のいずれか一項に記載の処理プログラム。
【請求項10】
前記攻撃の効果を与える処理は、判定した前記同一グループのオブジェクトによる複数の攻撃のうち2つ以上の攻撃がヒットした場合に1つの攻撃がヒットした場合と同じ攻撃ポイントを算出する処理である、
請求項1~9のいずれか一項に記載の処理プログラム。
【請求項11】
複数のオブジェクトが登場する仮想空間を表示部に表示させ、ゲームを処理するコンピュータが実行する処理方法であって、
前記仮想空間上のキャラクタの攻撃を検出する処理と、
検出した前記攻撃に応じて発生するオブジェクトの表示を制御する処理と、
前記攻撃に応じて発生するオブジェクトのうち同一グループのオブジェクトを判定する処理と、
判定した前記同一グループのオブジェクトによる複数の攻撃のうち2つ以上の攻撃がヒットした場合に前記ヒットした数よりも少ない攻撃の効果を与える処理と、を含む処理方法。
【請求項12】
複数のオブジェクトが登場する仮想空間を表示部に表示させ、ゲームを処理する処理装置であって、
前記仮想空間上のキャラクタの攻撃を検出する検出部と、
検出した前記攻撃に応じて発生するオブジェクトの表示を制御する表示制御部と、
前記攻撃に応じて発生するオブジェクトのうち同一グループのオブジェクトを判定する判定部と、
判定した前記同一グループのオブジェクトによる複数の攻撃のうち2つ以上の攻撃がヒットした場合に前記ヒットした数よりも少ない攻撃の効果を与える算出部と、を有する処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、処理プログラム、処理方法及び処理装置に関する。
【背景技術】
【0002】
例えば、特許文献1には、複数のオブジェクトが登場する3次元の仮想空間において、キャラクタに矢のオブジェクトが当たったかをコリジョンにより判定し、矢のオブジェクトが当たったと判定した場合、キャラクタが攻撃された方向を向くように画像処理される技術が提案されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2006-318136号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、すべての攻撃動作にコリジョンを持たせ、コリジョンの衝突判定により攻撃動作を判定すると、銃や弓などの多弾攻撃動作、すなわち短時間のうちに複数の矢や弾などを発射するような攻撃動作において複数の矢や弾のそれぞれのヒットにより攻撃の効果が通常の攻撃に比べて強くなりすぎてしまう場合が生じる。
【0005】
そこで、1つの側面では、本開示は、複数のオブジェクトによる所定の複数の攻撃に対して攻撃の効果に制限を与える技術を提供する。
【課題を解決するための手段】
【0006】
1つの実施態様では、複数のオブジェクトが登場する仮想空間を表示部に表示させ、ゲームを処理するコンピュータに実行させる処理プログラムであって、前記仮想空間上のキャラクタの攻撃を検出する処理と、検出した前記攻撃に応じて発生するオブジェクトの表示を制御する処理と、前記攻撃に応じて発生するオブジェクトのうち同一グループのオブジェクトを判定する処理と、判定した前記同一グループのオブジェクトによる複数の攻撃のうち2つ以上の攻撃がヒットした場合に前記ヒットした数よりも少ない攻撃の効果を与える処理と、を含む処理プログラムが提供される。
【発明の効果】
【0007】
1つの側面では、本開示は、複数のオブジェクトによる所定の複数の攻撃に対して攻撃の効果に制限を与えることができる。
【図面の簡単な説明】
【0008】
図1】実施形態に係るゲームシステムを示す図。
図2】実施形態に係るサーバのハードウェア構成を示す図。
図3】実施形態に係る端末装置のハードウェア構成を示す図。
図4】実施形態に係るサーバの機能構成を示す図。
図5】実施形態に係る端末装置の機能構成の一例を示す図
図6】実施形態に係るゲーム処理を示すフローチャート。
図7】実施形態に係る同一グループの判定処理を示すフローチャート。
図8】実施形態に係る攻撃情報テーブルの一例を示す図。
図9】実施形態に係る表示画面の一例を示す図。
【発明を実施するための形態】
【0009】
以下、本開示を実施するための形態について図面を参照して説明する。なお、本明細書及び図面において、実質的に同一の構成については、同一の符号を付することにより重複した説明を省く場合もある。
【0010】
[ゲームシステム]
図1は、実施形態におけるゲームシステム1の構成を示す図である。実施形態のゲームシステム1は、ネットワークN(例えば、インターネット等)を介してゲームに関する各種サービスをユーザに提供する。ゲームシステム1は、サーバ10と端末装置30とを有する。サーバ10は、ゲームに関する各種サービスを端末装置30に提供する情報処理装置(処理装置)の一例である。サーバ10は、パーソナルコンピュータ、ワークステーション、クラウドコンピュータ等であってよい。
【0011】
端末装置30は、ゲームをプレイする際にユーザが使用する情報処理装置(処理装置)の一例である。端末装置30は、スマートフォン、パーソナルコンピュータ、携帯型ゲーム装置、ゲームコントローラ、タブレット型コンピュータ、ウェアラブルコンピュータ、業務用ゲーム装置であってよい。
【0012】
端末装置30は、サーバ10に対してゲームに関する各種情報(ゲームプログラムやゲーム画面等)の配信要求を行う。サーバ10は、端末装置30から各種情報の配信要求を受け付けると、端末装置30においてプレイするゲームプログラムやゲーム画面のWebページを配信する。
【0013】
端末装置30は、ユーザにゲーム画面を表示するWebページを閲覧させるためのWebブラウザ機能を有する。これにより、端末装置30は、サーバ10から配信されたゲーム画面等のWebページを表示することができる。
【0014】
端末装置30の接続個数は3つに限られず、1又は複数の端末装置30がサーバ10に接続され得る。複数のサーバが連携してサーバ10の機能を実現してもよい。サーバ10は、ネットワークNに接続された複数の端末装置30が敵及び味方に分かれて対戦するオンラインゲームを提供してもよい。ただし、サーバ10は、これに限られず、バスケットやテニス等のスポーツゲーム、レーシングゲーム、街づくりゲーム等、あらゆるゲームを提供できる。また、サーバ10は、ガチャ等によりゲームを提供できる。サーバ10が提供するゲームは、複数のユーザが共同して参加するゲームを含む。なお、サーバ10を有さず、端末装置30が、サーバ10の後述する機能を有し、ネットワークNに接続されずに単独でゲームを実行できるようにしてもよい。このように図1のゲームシステム1は一例であり、用途や目的に応じて様々なシステム構成例が考えられる。
【0015】
[サーバ10のハードウェア構成]
次に、サーバ10のハードウェア構成について、図2を参照して説明する。図2は、実施形態に係るサーバ10のハードウェア構成を示す図である。サーバ10は、CPU(Central Processing Unit)126、メモリ127及び通信装置128を有する。CPU126は、サーバ10を制御する。メモリ127は、例えば、CPU126が直接アクセス可能なサーバ10内の記憶媒体である。通信装置128は、通信を制御するネットワークカードなどの通信デバイスである。
【0016】
サーバ10は、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などの各種マイクロプロセッサ、VRAMやRAM、ROM等の各種メモリを搭載してもよい。
【0017】
サーバ10は、演算処理により端末装置30を用いてプレイするために必要な各種ゲームデータを端末装置30に提供し、端末装置30にて行うゲーム処理の実行を制御及び管理するゲーム管理機能を有する。CPU126が所定のゲームプログラム及びデータに基づいて演算処理を行うことにより、ゲーム処理が実行される。
【0018】
[端末装置のハードウェア構成]
次に、端末装置30のハードウェア構成について、図3を参照して説明する。図3は、実施形態に係る端末装置30のハードウェア構成を示す図である。端末装置30は、CPU121、メモリ122、通信装置123、入力装置124及び表示装置125を有する。CPU121は、端末装置30を制御する。メモリ122は、例えば、CPU121が直接アクセス可能な端末装置30内の記憶媒体である。通信装置123は、通信を制御するネットワーク回路などの通信デバイスである。入力装置124は、カメラ又はタッチパネルなどの入力デバイスである。表示装置125は、ディスプレイなどの出力デバイスである。
【0019】
端末装置30は、サーバ10が提供するゲームを実行する。一例では、ユーザは、端末装置30を使用して敵キャラクタと争う対戦ゲームを行う。他の端末装置30と連携して敵キャラクタと対戦してもよい。
【0020】
[サーバの機能構成]
次に、サーバ10の機能構成について図4を参照して説明する。図4は、実施形態に係るサーバ10の機能構成を示す図である。サーバ10は、制御部11、記憶部12及び通信部13を有する。
【0021】
制御部11は、各部間のデータの受け渡しを行うと共にサーバ10の制御を行う。制御部11は、CPU126が所定のメモリ127に格納されたゲームプログラムを実行することによって実現される。
【0022】
記憶部12は、ゲームをコンピュータに実行させるゲームプログラム、各種のデータ及び各種の情報を記憶している。記憶部12は、例えばメモリ127によって実現される。記憶部12は、ゲームプログラムが記憶された読み取り専用の記憶領域であるROM(Read Only Memory)と、制御部11による演算処理のワーク領域として使用される書き換え可能な記憶領域であるRAM(Random Access Memory)とを有している。記憶部12は、例えば、フラッシュメモリやハードディスク等の不揮発性の記憶装置によって実現される。ゲームプログラムの一部又は全部はRAMに格納されてもよい。
【0023】
更に、記憶部12は、攻撃情報テーブル21を記憶する。攻撃情報テーブル21は、キャラクタ毎の攻撃に関する情報及び攻撃から発生するオブジェクトに関する情報を記憶する(図8参照)。
【0024】
通信部13は、端末装置30及びその他の機器との間で通信を行うための機能を有する。通信部13は、端末装置30から送信される各種データを受信する受信部として機能と、制御部11の指令に応じて各種データを端末装置30へ送信する送信部として機能とを有する。通信部13は、例えば、NIC(Network Interface Card)によって実現される。
【0025】
制御部11は、ゲーム実行処理部14、検出部15、判定部16、算出部17及び表示制御部18を有する。ゲーム実行処理部14は、例えばユーザが操作するキャラクタが敵キャラクタと対戦する対戦ゲームを実行する。例えば、ゲーム実行処理部14が行うゲームは、ユーザが操作するキャラクタの攻撃に応じて発生する各種武器のオブジェクトによる攻撃動作により敵キャラクタを攻撃するゲームであってもよい。ただし、ゲーム実行処理部14が行うゲームは、これに限らず、ゲームに登場する複数のオブジェクトによる所定の複数の攻撃動作に対して攻撃効果に制限を与えるための処理を含むゲームであれば、対戦ゲームに限らない。なお、ユーザの操作には、コントローラの操作、タッチ操作、ジェスチャ操作等が含まれる。
【0026】
なお、本明細書におけるオブジェクトは、仮想空間に表示される表示部品であり、キャラクタが行う攻撃に応じて発生するオブジェクトが含まれる。キャラクタ毎の攻撃の種類に応じて様々なオブジェクトが表示される。攻撃に応じて発生するオブジェクトには、矢、銃等の敵キャラクタを攻撃可能な武器が含まれる。一の攻撃に応じて1又は複数のオブジェクトが発生する。
【0027】
検出部15は、仮想空間上のキャラクタの攻撃が発生したか否かを検出する。なお、検出部15は、仮想空間上のキャラクタのうち、ユーザにより操作されるキャラクタの攻撃を検出してもよい。ただし、検出部15は、仮想空間上のキャラクタのうち、ユーザにより操作されるキャラクタ以外のキャラクタの攻撃を検出してもよい。
【0028】
判定部16は、検出した攻撃に応じて発生するオブジェクトのうち同一グループのオブジェクトを判定する。この場合の検出したキャラクタの攻撃は複数であってもよい。判定部16は、同一グループのオブジェクトか否かの判定に次の判定条件の少なくともいずれかを用いることができる。
【0029】
<判定条件>
1.検出したキャラクタの攻撃のうち同種類の攻撃から発生した複数のオブジェクトを同一グループのオブジェクトと判定する。同種類の攻撃は、同一の攻撃を含む。
2.検出したキャラクタの攻撃から発生した複数のオブジェクトのうち同種類のオブジェクトIDが付与された複数のオブジェクトを同一グループのオブジェクトと判定する。
3.検出したキャラクタの攻撃のうち同種類の攻撃から発生した複数のオブジェクトのそれぞれの動作の開始フレームが最先の開始フレームから予め設定されたフレーム数以上ずれていない複数のオブジェクトを同一グループのオブジェクトと判定する。換言すれば、検出したキャラクタの攻撃のうち同種類の攻撃から発生した複数のオブジェクトのそれぞれの動作の開始フレームが、最先の開始フレームから設定されたフレーム数以内である複数のオブジェクトを同一グループのオブジェクトと判定する。
4.検出したキャラクタの攻撃のうち同種類の攻撃から発生した複数のオブジェクトのそれぞれの動作が同時に開始された複数のオブジェクトを同一グループのオブジェクトと判定する。3及び4の判定条件は、1の判定条件に異なるタイミングの条件を加えた例である。
5.検出したキャラクタの攻撃のうち同種類の攻撃から発生した複数のオブジェクトであって、同種のモーションから発生した複数のオブジェクトを同一グループのオブジェクトと判定する。5の判定条件は、1の判定条件に更なる条件を加えた例である。例えば、「弓矢攻撃」の攻撃が発せられた場合、その攻撃を行うキャラクタのモーションとして「ジャンプして矢を放つ」というモーション1と、「回転しながら矢を放つ」というモーション2があった場合、検出したキャラクタの攻撃のうち同種類の攻撃から発生したオブジェクトであるが、モーション1、2が同種類のモーションでない場合には、同一グループのオブジェクトでないと判定される。同種類のモーションから発生したオブジェクトであるか否かは、後述する図8の攻撃情報テーブル21に記憶したモーションIDから判定可能である。例えば同じモーションIDが付与されたオブジェクトは同種類のモーションから発生したオブジェクトと判定できる。
【0030】
算出部17は、判定した同一グループのオブジェクトによる複数の攻撃動作のうち2つ以上の攻撃がヒットした場合に1つの攻撃がヒットした場合と同じ攻撃の効果を与える処理を実行する。例えば、算出部17は、判定した同一グループのオブジェクトによる複数の攻撃動作のうち2つ以上の攻撃がヒットした場合に1つの攻撃がヒットした場合と同じ攻撃ポイントを算出してもよい。例えば、算出部17は、同一グループのオブジェクトによる複数の攻撃動作によって一のオブジェクトが敵キャラクタにヒットしたときから予め設定されたフレーム数の間、前記複数の攻撃動作によって他のオブジェクトが敵キャラクタにヒットした場合であっても前記一のオブジェクトが前記敵キャラクタにヒットした場合と同じ攻撃ポイントを算出してもよい。ただし、判定した同一グループのオブジェクトによる複数の攻撃動作のうち2つ以上の攻撃がヒットした場合に1つの攻撃がヒットした場合と同じ攻撃の効果を与える処理は、前記2つ以上の攻撃がヒットした場合に1つの攻撃がヒットしたのと同じように扱う処理であればよい。また、前記「同じ攻撃の効果を与える処理」は、同一グループのうち1つがヒットした時点から所定フレームの間(フレーム数は任意に設定可能)、同一グループの他の攻撃はヒットしないようにする、という効果を与える処理であればよい。すなわち、同一グループのうち1つがヒットした時点から、次にヒットできるようになるまでの時間を、同一グループのオブジェクトで同一時間にそろえる処理が実行される。算出部17は、算出した「次にヒットできるようになるまでの時間」を、同一グループの各オブジェクトIDに紐づけて記憶部12に記憶する。
【0031】
表示制御部18は、検出したキャラクタの攻撃や攻撃に応じて発生するオブジェクトによる攻撃動作等の表示を制御する。表示制御部18は、複数のオブジェクトが登場する仮想空間を表示装置125に表示させる。表示制御部18は、ゲーム画面のWebページを制御し、ゲーム画面のWebページを通信部13により端末装置30に送信し、端末装置30の画面に表示する。
【0032】
[端末装置の機能構成]
次に、端末装置30の機能構成について図5を参照して説明する。図5は、実施形態に係る端末装置の機能構成の一例を示す図である。端末装置30は、制御部31、記憶部32、通信部33、入力部34及び表示部35を有する。
【0033】
制御部31は、各部間のデータの受け渡しを行うと共に端末装置30の制御を行う。制御部31は、CPU121が所定のメモリ122に格納されたプログラムを実行することによって実現される。
【0034】
記憶部32は、バスを介して制御部31に接続され、制御部31からの指令に応じて記憶されているデータを参照、読み出し、書き換える処理が行われる。記憶部32は、例えば、フラッシュメモリやハードディスク等によって実現される。
【0035】
通信部33は、ネットワークNを介してサーバ10との間で通信を行う。通信部33は、サーバ10から送信される各種データを受信する受信部としての機能と、
制御部31の指令に応じて各種データをサーバ10へ送信する送信部として機能とを有する。通信部13は、例えば、NIC(Network Interface Card)によって実現される。
【0036】
入力部34は、ユーザが各種操作(ゲーム操作等)を行うためのものであり、例えば、操作ボタン、タッチパネル等によって実現される。表示部35は、制御部31からの指令によりゲーム画面を表示するためのものであり、たとえば、液晶ディスプレイ(LCD:Liquid Crystal Display)等によって実現される。表示部35は、サーバ10が生成し、通信部33により受信したゲーム画面のWebページを端末装置30の画面に表示する。
【0037】
[ゲーム処理]
次に、本開示のゲーム処理について図6及び図7を参照しながら説明する。図6は、実施形態に係るゲーム処理を示すフローチャートである。図7は、実施形態に係る同一グループの判定処理を示すフローチャートである。図6及び図7の処理はサーバ10によって実行される。
【0038】
図6のゲーム処理では、ステップS1においてゲーム実行処理部14が、ユーザが操作するキャラクタ及び敵キャラクタを含む複数のキャラクタを例えば端末装置30の表示装置125の仮想空間に表示し、対戦ゲームを実行する。
【0039】
ステップS2において、検出部15は、仮想空間上のキャラクタの攻撃が発生したかを検出する。検出部15は、例えば、ユーザにより操作されるキャラクタの攻撃を検出する。
【0040】
検出部15が、仮想空間上のキャラクタの攻撃が発生していないことを検出すると、本処理を終了する。一方、検出部15が、仮想空間上のキャラクタの攻撃が発生したことを検出すると、ステップS3において、判定部16は、検出した攻撃から発生したオブジェクトを判定し、攻撃に関する情報及びオブジェクトに関する情報を攻撃情報テーブル21に記憶する。
【0041】
図8は、攻撃情報テーブル21の一例である。攻撃情報テーブル21には、キャラクタのモーションの識別情報(モーションID)と、攻撃に関する情報としてキャラクタ毎に各キャラクタが行った攻撃種類と、攻撃の識別情報(攻撃ID)とが記憶されている。また、オブジェクトに関する情報として攻撃から発生したオブジェクトの識別情報(オブジェクトID)と、攻撃から発生したオブジェクトの表示が開始されたフレーム番号(開始フレーム)とが記憶されている。また、攻撃情報テーブル21には、同一グループの判定に使用するフレーム数が予め設定されている。
【0042】
例えば、ユーザの操作に応じてキャラクタAが特定のモーションを行った場合、そのモーションの識別情報としてモーションIDが記憶される。また、キャラクタAが弓矢攻撃の攻撃を行った場合、キャラクタAの攻撃種類である「弓矢攻撃」と、その攻撃に与えられた攻撃IDが攻撃情報テーブル21に記憶される。弓矢攻撃の攻撃が行われたときに、これに応じて発生した複数のオブジェクト(ここでは弓矢)の攻撃動作の表示が開始された開始フレームと、攻撃動作を行う複数のオブジェクトのそれぞれに与えられたオブジェクトIDが攻撃情報テーブル21に記憶される。
【0043】
ゲーム画像を表示装置(ディスプレイ)に描画させるとき、出力される画像の一フレーム時間は、例えば1/30~1/60秒であり、フレーム単位で1枚の画像の描画が実行される。すなわち、一秒間に30回~60回のフレームの画像が描画される。よって、開始フレームは、各オブジェクトIDが付与されたオブジェクト毎に各オブジェクトの攻撃動作の描画が開始されたフレーム番号を攻撃情報テーブル21に記憶すればよい。なお、図8に記憶されたキャラクタBの銃攻撃は、銃攻撃から発生した複数の銃弾により敵キャラクタを攻撃する攻撃方法である。ただし、図8の攻撃種類及び攻撃方法は一例であり、限定されない。
【0044】
ユーザ操作によりキャラクタが攻撃を開始し、キャラクタの攻撃から複数のオブジェクトが発生する場合、発生した複数のオブジェクトのそれぞれの攻撃動作が描画されるタイミングは同一フレームである場合(すなわち、同一タイミングである場合)と、異なるフレームである場合(すなわち、タイミングがずれている場合)がある。複数のオブジェクトの攻撃動作が同時に発生する場合、各オブジェクトの開始フレームのフレーム番号は同一となる。複数のオブジェクトの攻撃動作が多少ずれて発生する場合、各オブジェクトの開始フレームのフレーム番号は異なる場合がある。例えば、図9(c)に示す3本の矢300a~300cは、敵キャラクタ200にヒットしている。この3本の矢300a~300cが同時に放たれた場合が前者(すなわち、同一フレームである場合)であり、3本の矢300a~300cが1本ずつ3回連続で放たれた場合が後者(すなわち、タイミングがずれている場合)である。タイミングがずれている場合、3本の矢300a~300cのそれぞれの攻撃動作が描画されるタイミングは異なるフレームである場合が生じ得る。
【0045】
図6に戻り、ステップS4において、判定部16は、オブジェクトがヒットしたかを判定する。判定部16は、オブジェクトがヒットしていないと判定すると、本処理を終了する。ステップS4において判定部16は、オブジェクトがヒットしたと判定すると、ステップS5において既にヒットしたオブジェクトであるかを判定する。
【0046】
判定部16は、既にヒットしたオブジェクトではないと判定すると、ステップS9において検出した攻撃から発生したオブジェクトが複数であるかを判定する。図8に示すように、キャラクタAの攻撃IDが「GIDa」の攻撃に紐づけられたオブジェクトIDは5つである。この場合、判定部16は、検出した攻撃から発生したオブジェクトが複数であると判定する。ただし、検出した複数の攻撃のうちの一つの攻撃から発生したオブジェクトが一つであっても、検出した複数の攻撃のそれぞれから発生するオブジェクトの合計が複数の場合、判定部16は、検出した攻撃から発生したオブジェクトが複数であると判定してもよい。
【0047】
ステップS9において判定部16は、検出した攻撃から発生したオブジェクトが複数でないと判定した場合、ステップS13において算出部17は、オブジェクトのヒット数に1をカウントし、ステップS14に進む。ステップS9において判定部16は、検出した攻撃から発生したオブジェクトが複数であると判定した場合、ステップS10に進み、同一グループの判定処理を実行する。同一グループの判定処理を図7に示す。
【0048】
(同一グループの判定処理)
同一グループの判定処理が開始されると、ステップS21において、判定部16は、検出した攻撃から発生した複数のオブジェクトが同種類の攻撃から発生したオブジェクトであるかを判定する。同種類の攻撃のオブジェクトであるかの判定方法は一つに限らない。例えば図8の例では、攻撃情報テーブル21に記憶された攻撃IDが同じオブジェクトは同種類の攻撃のオブジェクトであると判定してもよい。攻撃の種類を分類した別のテーブルを用意し、そのテーブルを参照して同一分類の攻撃のオブジェクトを同種類の攻撃のオブジェクトであると判定してもよい。
【0049】
ステップS21において判定部16は、同種類の攻撃の複数のオブジェクトでないと判定した場合、ステップS25において、検出した攻撃から発生した複数のオブジェクトが同一グループのオブジェクトでないと判定し、本処理を終了する。一方、判定部16が、同種類の攻撃の複数のオブジェクトであると判定した場合、ステップS22において同種類のオブジェクトIDが付与されているかを判定する。なお、オブジェクトIDは、例えば、矢であればIDa、銃弾であればIDb、というようにオブジェクトの種類等に応じて付与される。そこで、攻撃情報テーブル21に記憶されたオブジェクトIDの上三桁が同じオブジェクトは同種類のオブジェクトIDが付与されていると判定してもよい。ステップS22において判定部16は同種類のオブジェクトIDが付与されていないと判定した場合、ステップS25において、検出した攻撃から発生した複数のオブジェクトが同一グループのオブジェクトでないと判定し、本処理を終了する。一方、判定部16は、同種類のオブジェクトIDが付与されていると判定した場合、ステップS23において検出した攻撃から発生した複数のオブジェクトが、当該複数のオブジェクトのそれぞれに紐づけられた開始フレームが同じ又は最先の開始フレームから図8のフレーム数内のオブジェクトであるかを判定する。判定の結果、ステップS23において「YES」と判定した場合、ステップS24において判定部16は、検出した攻撃から発生した複数のオブジェクトが同一グループのオブジェクトであると判定し、本処理を終了する。ステップS23において「NO」と判定した場合、ステップS25において判定部16は、検出した攻撃から発生した複数のオブジェクトが同一グループのオブジェクトでないと判定し、本処理を終了する。
【0050】
図7の3つの判定処理(S21,S22,S23)については、必ずしもすべての判定処理を行わなくてもよい。3つの判定処理のいずれかを用いるかは、キャラクタによって異なってもよい。例えば、ステップS22の処理をスキップしてステップS21の処理後ステップS23の処理を行ってもよい。ステップS22及びS23の処理をスキップしてステップS21の処理のみを行ってもよい。ステップS21及びS23の処理をスキップしてステップS22の処理のみを行ってもよい。ステップS21及びS22の処理を実行して、ステップS23をスキップしてもよい。すなわち、上述した<判定条件>のうちの少なくとも1つの判定処理を行い、同一グループのオブジェクトか否かを判定してよい。例えば、ステップS21の「検出したキャラクタの攻撃のうち同種類の攻撃から発生した複数のオブジェクトか?」の判定処理に替えて、<判定条件>の「5」に記載された「検出したキャラクタの攻撃のうち同種類の攻撃から発生した複数のオブジェクトであって、同種類のモーションから発生したオブジェクトか?」の判定処理を行うことが一例として挙げられる。
【0051】
図6のステップS11に戻り、判定部16は、同一グループのオブジェクト(複数のオブジェクト)があるかを判定する。判定部16が、同一グループのオブジェクトがあると判定した場合、ステップS12に進み、算出部17は、ヒットしたオブジェクトと同一グループのオブジェクトに、既にヒットした状態を設定し、ステップS13に進む。ステップS13において算出部17は、オブジェクトのヒット数に1をカウントし、ステップS14に進む。ステップS11において判定部16が、同一グループのオブジェクトがないと判定した場合、ステップS13において算出部17は、オブジェクトのヒット数に1をカウントし、ステップS14に進む。
【0052】
なお、ステップS5において判定部16が、既にヒットしたオブジェクトであると判定した場合、ステップS6に進み、所定フレームが経過したかを判定する。判定部16は、所定フレームが経過したと判定した場合、ステップS9に進み、ステップS9以降の処理を実行する。ステップS6において判定部16は、所定フレームが経過していないと判定した場合、ステップS7においてオブジェクトのヒット数に0をカウントし、ステップS14に進む。
【0053】
これにより、同一グループのオブジェクトのうちの1つがヒットした場合、ヒットしたオブジェクトと同一グループのオブジェクトを所定期間ヒットさせないようにすることができる。ステップS12において、例えば算出部17は、同一グループのオブジェクトによる複数の攻撃動作によって一のオブジェクトが最先に敵キャラクタにヒットした場合、複数の攻撃動作によって他のオブジェクトがその後に敵キャラクタにヒットした場合であっても他のオブジェクトのヒット数によらず、ヒット数を1とカウントし、ヒット数に応じた攻撃ポイントを算出してもよい。
【0054】
ステップS14において算出部17は、カウントしたヒット数に応じて攻撃ポイントを算出し、敵キャラクタの体力レベルの表示等を変更し、本処理を終了する。図6のフローチャートの処理は、攻撃から発生した各オブジェクトについて行われるものであり、複数オブジェクトが発生している場合はステップS4以降をループして各オブジェクトについて同様の処理を行う。
【0055】
[画面]
以上に説明した処理方法による効果について、図9を参照しながら説明する。図9は、実施形態に係る対戦ゲームを描画した仮想空間上の画面の一例を示す図である。図9に示す仮想空間上の画面の表示制御は、表示制御部18により実行される。
【0056】
図9(a)では、ユーザが操作するキャラクタ100が、フィールド内に出現した様子を表示している。
【0057】
図9(b)では、フィールド内に敵キャラクタ200が出現し、ユーザ操作に応じてキャラクタ100が、敵キャラクタ200に向かって弓100aを構え、敵キャラクタ200に対して弓を引く攻撃を実行している様子を表示している。
【0058】
図9(c)では、弓を引く攻撃に応じて発生した5つのオブジェクト、すなわち、5つの矢300a~300eによる攻撃動作を表示している。5つの矢300a~300eは、同タイミングに射出されるようにしてもよいし、タイミングをずらして射出されるようにしてもよい。
【0059】
実施形態による同一グループの判定処理において、同一の攻撃から発生している5つの矢300a~300eのオブジェクトは同一グループのオブジェクトであると判定される。この場合、攻撃から発生した5つの矢300a~300eによる攻撃動作によって3つの矢300a~300cが敵キャラクタ200にヒットした場合、その一つの矢が敵キャラクタ200にヒットした場合と同等に見なされ、攻撃ポイントが算出される。例えば、最初に矢300aが敵キャラクタ200にヒットした場合、矢300aがヒットしてから所定フレームの間は次以降の矢300b~300eのうちの矢300b~300cが敵キャラクタ200にヒットした場合であっても、3つの矢300a~300cのヒット数を1として攻撃ポイントが算出される。
【0060】
なお、5つの矢300a~300eが同一グループのオブジェクトでないと判定された場合には、3つの矢300a~300cがそれぞれ敵キャラクタ200にヒット(多弾ヒット)したとき、通常通りヒット数を3として攻撃ポイントが算出される。
【0061】
これによれば、敵キャラクタ200に対する攻撃動作により複数のオブジェクトが敵キャラクタ200に当たった場合であっても、同一グループのオブジェクトの場合にはヒット数を1と見なす。ただし、3つの矢300a~300cのヒット数は1に限らず、実際のヒット数の1/2等、実際のヒット数よりも小さい値に換算してもよい。
【0062】
同一グループ内の複数のオブジェクトによる多弾ヒットでは、図9(c)のように3つの矢300a~300cが敵キャラクタ200に当たった場合には、敵キャラクタ200に1ヒットの3倍のダメージを与えることになる。また、ヒット数に応じて蓄積されるパラメータが所定値以上になった場合に必殺技を発動できるなどの場合にも、一度の攻撃で複数のヒットが発生しうる攻撃が有利になってしまう。同一グループ内の複数のオブジェクトによる多弾ヒットによる過剰攻撃を抑制するために、同一グループのオブジェクトの複数ヒットは実際にヒットした数よりも少ない攻撃の効果を与えるヒット数(例えば、ヒット数1)とカウントし、ヒット数に応じた攻撃ポイントを算出する。これにより、算出される攻撃ポイントを実際に敵キャラクタにヒットしたヒット数に対応する攻撃ポイントよりも低くすることで、敵キャラクタ200に過度なダメージを与えないようにすることができる。なお、攻撃ポイントには、敵キャラクタのダメージの値、自キャラクタの必殺技を発動するためのパラメータやスキルゲージへの加算値など、攻撃のヒット数に応じたあらゆる値を含んでよい
【0063】
同一グループのオブジェクトであるかの判定条件の一つに水属性、火属性等の同じ属性か否かを加えてもよい。
【0064】
以上に説明したように、一実施形態に係る処理プログラム、処理方法及び処理装置によれば、複数のオブジェクトによる所定の複数の攻撃動作に対して攻撃効果に制限を与えることができる。例えば同種類の攻撃に応じて発生した複数のオブジェクトによる攻撃動作により1つ目のオブジェクトが敵キャラクタに当たったと判定された時点で同一グループのオブジェクトのヒット状態をシェアし、2つ目以降のオブジェクトのヒットは、設定フレームの間敵キャラクタへの再ヒットとしないようにすることができる。
【0065】
以上、処理プログラム、処理方法及び処理装置を上記実施形態により説明したが、本開示に係る処理プログラム、処理方法及び処理装置は上記実施形態に限定されるものではなく、本開示の範囲内で種々の変形及び改良が可能である。また、上記実施形態及び変形例が複数存在する場合、矛盾しない範囲で組み合わせることができる。
【符号の説明】
【0066】
1 ゲームシステム
10 サーバ
11 制御部
12 記憶部
13 通信部
14 ゲーム実行処理部
15 検出部
16 判定部
17 算出部
21 攻撃情報テーブル
30 端末装置
31 制御部
32 記憶部
33 通信部
34 入力部
35 表示部
図1
図2
図3
図4
図5
図6
図7
図8
図9