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

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

▶ テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッドの特許一覧

特許7597298仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム
<>
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図1A
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図1B
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図2
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図3
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図4A
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図4B
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図4C
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図5
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図6
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図7
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図8
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図9
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図10
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図11
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図12
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図13
  • 特許-仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-02
(45)【発行日】2024-12-10
(54)【発明の名称】仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム
(51)【国際特許分類】
   A63F 13/847 20140101AFI20241203BHJP
   A63F 13/537 20140101ALI20241203BHJP
   A63F 13/55 20140101ALI20241203BHJP
   A63F 13/795 20140101ALI20241203BHJP
   A63F 13/822 20140101ALI20241203BHJP
   G06F 3/048 20130101ALI20241203BHJP
【FI】
A63F13/847
A63F13/537
A63F13/55
A63F13/795
A63F13/822
G06F3/048
【請求項の数】 16
(21)【出願番号】P 2023513938
(86)(22)【出願日】2021-12-23
(65)【公表番号】
(43)【公表日】2023-09-12
(86)【国際出願番号】 CN2021140900
(87)【国際公開番号】W WO2022151946
(87)【国際公開日】2022-07-21
【審査請求日】2023-02-28
(31)【優先権主張番号】202110052871.8
(32)【優先日】2021-01-15
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514187420
【氏名又は名称】テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】リウ,フォン
【審査官】宇佐田 健二
(56)【参考文献】
【文献】特開2010-155055(JP,A)
【文献】特開2018-114192(JP,A)
【文献】特開2005-006984(JP,A)
【文献】特開2018-057568(JP,A)
【文献】特許第6793235(JP,B1)
【文献】特開2020-195522(JP,A)
【文献】特開2008-142352(JP,A)
【文献】特開2019-063174(JP,A)
【文献】特開2004-237071(JP,A)
【文献】特開2017-023581(JP,A)
【文献】特許第6165919(JP,B1)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00-13/98,9/24
G06F 3/048-3/04895
(57)【特許請求の範囲】
【請求項1】
電子機器が実行する、ターン制ストラテジーゲームにおける仮想キャラクタの制御方法であって、
互いに対戦する第1の陣営及び第2の陣営を含む仮想シーンを表示するステップと、
前記第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、前記第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示するステップと、
前記連合攻撃スキルに応じた前記第2の仮想キャラクタの状態を表示するステップと、
前記連合攻撃スキルの発動と同一のラウンドにおいて、前記連合攻撃スキルに応じて前記第2の仮想キャラクタが死亡していない状態にある場合、前記第2の仮想キャラクタにより前記第1の陣営における前記第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示し、前記第2の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じた前記第1の仮想キャラクタの状態を表示するステップと、を含み、
前記連合攻撃スキルは、前記第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び前記少なくとも1つのチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含み、
前記第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、前記第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示するステップは、
前記第1の陣営における第1の仮想キャラクタ及び複数のチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、前記複数のチームメイトキャラクタのうちの攻撃力の最も高いチームメイトキャラクタ及び前記第1の仮想キャラクタに陣容連合を結成させ、前記陣容連合により前記第2の仮想キャラクタに対して発動された連合攻撃スキルを表示するステップ、を含み、
前記連合攻撃スキルは、前記第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び前記攻撃力の最も高いチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含む、方法。
【請求項2】
前記連合攻撃スキルのトリガ条件は、
前記仮想シーンにおける前記第2の仮想キャラクタの位置が前記第1の仮想キャラクタの攻撃範囲内にあり、且つ前記少なくとも1つのチームメイトキャラクタの攻撃範囲内にあること、及び
前記少なくとも1つのチームメイトキャラクタに対する前記第1の仮想キャラクタの方位が所定の方位であり、或いは所定の方位範囲にあることのうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項3】
前記第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、前記第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示するステップは、
前記第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしており、且つ前記第1の仮想キャラクタ及び前記少なくとも1つのチームメイトキャラクタのキャラクタタイプが所定の陣容連合に合致する場合、前記第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示するステップ、を含む、請求項1又は2に記載の方法。
【請求項4】
前記所定の陣容連合は、
前記第1の仮想キャラクタのレベルが前記少なくとも1つのチームメイトキャラクタのレベル以下であること、
前記第1の仮想キャラクタの属性と前記少なくとも1つのチームメイトキャラクタの属性とが同一であり、或いは互いに適合すること、及び
前記第1の仮想キャラクタのスキルと前記少なくとも1つのチームメイトキャラクタのスキルとが同一であり、或いは互いに適合することのうちの少なくとも1つを含む、請求項3に記載の方法。
【請求項5】
前記第2の仮想キャラクタが先制攻撃スキルを有する場合、前記第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する前に、
前記第2の仮想キャラクタにより前記第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示するステップと、
前記第2の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じた前記第1の仮想キャラクタの状態を表示するステップと、をさらに含む、請求項1乃至4の何れかに記載の方法。
【請求項6】
前記少なくとも1つのチームメイトキャラクタが防御スキルを有する場合、前記第2の仮想キャラクタにより前記第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示する前に、
前記第2の仮想キャラクタにより前記少なくとも1つのチームメイトキャラクタに対して発動された少なくとも1回の攻撃スキルを表示するステップと、
前記第2の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じた前記少なくとも1つのチームメイトキャラクタの状態を表示するステップと、をさらに含む、請求項5に記載の方法。
【請求項7】
前記第2の陣営に防御スキルを有する第3の仮想キャラクタが存在する場合、前記第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する前に、
前記第3の仮想キャラクタに対して発動された連合攻撃スキルを表示し、前記連合攻撃スキルに応じた前記第3の仮想キャラクタの状態を表示するステップ、をさらに含む、請求項1乃至6の何れかに記載の方法。
【請求項8】
前記連合攻撃スキルに含まれる前記第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じて、前記第3の仮想キャラクタが死亡状態になった場合、
前記少なくとも1つのチームメイトキャラクタにより前記第2の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示するステップと、
前記少なくとも1つのチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルに応じた前記第2の仮想キャラクタの状態を表示するステップと、をさらに含む、請求項7に記載の方法。
【請求項9】
前記第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する前に、
前記仮想シーンにおける前記連合攻撃スキルのトリガ条件を満たしている少なくとも1つのチームメイトキャラクタについて、前記少なくとも1つのチームメイトキャラクタに対応するプロンプト識別子を表示するステップであって、前記プロンプト識別子は、前記少なくとも1つのチームメイトキャラクタが前記第1の仮想キャラクタと陣容連合を結成できることを示すために用いられる、ステップと、
前記少なくとも1つのチームメイトキャラクタに対する選択操作に応答して、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示するステップと、をさらに含み、
前記連合攻撃スキルは、前記第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び選択されたチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含む、請求項1乃至8の何れかに記載の方法。
【請求項10】
前記第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示するステップは、
前記第1の仮想キャラクタの攻撃範囲が範囲閾値よりも小さく、且つ前記少なくとも1つのチームメイトキャラクタの攻撃範囲が前記範囲閾値よりも大きい場合、前記第1の仮想キャラクタが少なくとも1回の攻撃スキルを発動する過程において、前記少なくとも1つのチームメイトキャラクタが前記第1の仮想キャラクタに対して固定された位置にあるように制御するステップと、
前記第1の仮想キャラクタ及び前記少なくとも1つのチームメイトキャラクタの攻撃範囲が何れも範囲閾値よりも大きい場合、前記第1の仮想キャラクタが少なくとも1回の攻撃スキルを発動する過程において、前記少なくとも1つのチームメイトキャラクタが前記仮想シーンにおける固定位置にあるように制御するステップと、を含む、請求項1乃至の何れかに記載の方法。
【請求項11】
前記第1の仮想キャラクタ及び前記少なくとも1つのチームメイトキャラクタのうちの何れかの仮想キャラクタが異常状態にある場合、連合攻撃スキルを発動できない旨のプロンプト情報を表示するステップと、をさらに含む、請求項1乃至10の何れかに記載の方法。
【請求項12】
前記連合攻撃スキルは、機械学習モデルを呼び出すことによって予測されたものであり、
前記第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、前記方法は、
前記第1の仮想キャラクタ、前記少なくとも1つのチームメイトキャラクタ及び前記第2の仮想キャラクタの特徴データを取得し、前記特徴データに基づいて機械学習モデルを呼び出して、前記連合攻撃スキルに含まれる攻撃スキルの発動回数及び発動される攻撃スキルのそれぞれのタイプを決定するステップ、をさらに含み、
前記特徴データは、状態、スキル待ち時間、及びスキル攻撃強度のうちの少なくとも1つを含む、請求項1乃至11の何れかに記載の方法。
【請求項13】
ターン制ストラテジーゲームにおける仮想キャラクタの制御装置であって、
互いに対戦する第1の陣営及び第2の陣営を含む仮想シーンを表示する表示モジュール、を含み、
前記表示モジュールは、
前記第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、前記第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示し、
前記連合攻撃スキルに応じた前記第2の仮想キャラクタの状態を表示し、
前記連合攻撃スキルの発動と同一のラウンドにおいて、前記連合攻撃スキルに応じて前記第2の仮想キャラクタが死亡していない状態にある場合、前記第2の仮想キャラクタにより前記第1の陣営における前記第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示し、前記第2の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じた前記第1の仮想キャラクタの状態を表示し、
前記連合攻撃スキルは、前記第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び前記少なくとも1つのチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含み、
前記表示モジュールは、前記連合攻撃スキルを表示する際に、
前記第1の陣営における第1の仮想キャラクタ及び複数のチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、前記複数のチームメイトキャラクタのうちの攻撃力の最も高いチームメイトキャラクタ及び前記第1の仮想キャラクタに陣容連合を結成させ、前記陣容連合により前記第2の仮想キャラクタに対して発動された連合攻撃スキルを表示し、
前記連合攻撃スキルは、前記第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び前記攻撃力の最も高いチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含む、装置。
【請求項14】
実行可能な命令が記憶されたメモリと、
前記メモリに記憶された実行可能な命令を実行する際に、請求項1乃至12の何れかに記載の仮想キャラクタの制御方法を実現するプロセッサと、を含む、電子機器。
【請求項15】
実行可能な命令が記憶されたコンピュータ読み取り可能な記憶媒体であって、
前記命令は、プロセッサにより実行される際に、請求項1乃至12の何れかに記載の仮想キャラクタの制御方法を実現する、記憶媒体。
【請求項16】
コンピュータプログラム又は命令を含むコンピュータプログラムであって、
前記コンピュータプログラム又は命令は、プロセッサにより実行される際に、請求項1乃至12の何れかに記載の仮想キャラクタの制御方法を実現する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2021年1月15日に出願した出願番号が202110052871.8である中国特許出願に基づく優先権を主張し、該中国特許出願の全ての内容を参照により本発明に援用する。
【0002】
本発明は、コンピュータのヒューマンコンピュータインタラクション技術に関し、特に仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム製品に関する。
【背景技術】
【0003】
グラフィックス処理ハードウェアに基づく仮想シーンのヒューマンコンピュータインタラクション技術は、実際の応用ニーズに応じて、ユーザ又は人工知能により制御される仮想キャラクタ間の多様なインタラクションを実現することができ、広範な実用価値を有する。例えば、ゲームの仮想シーンにおいて、仮想キャラクタ間のリアルな対戦過程をシミュレートすることができる。
【0004】
仮想シーンにおいて、ユーザは、同一の陣営における複数の仮想キャラクタが、敵対陣営におけるターゲット仮想キャラクタに対して連合攻撃スキル(連携攻撃とも称される)を発動するために、攻撃陣形を結成するように制御してもよい。
【0005】
しかし、関連技術では、連合攻撃スキルをトリガするメカニズムは、比較的に複雑であり、理解しにくいため、現在のゲーム(特にスマートフォンゲーム)の軽量化設計の需要に合わない。また、連合攻撃スキルのトリガメカニズムの複雑度により、電子機器(例えば端末装置)は、シーンデータを処理する際に大量の計算リソースを消費する必要がある。
【発明の概要】
【0006】
本発明の実施例は、効率的なリソース集約の方式で連合攻撃スキルに基づくインタラクションを実現し、インタラクションの過程における電子機器が消費する必要がある計算リソースを低減させることができる、仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム製品を提供する。
【0007】
本発明の実施例の技術的手段は、以下の通りである。
【0008】
本発明の実施例では、電子機器が実行する、仮想キャラクタの制御方法であって、互いに対戦する第1の陣営及び第2の陣営を含む仮想シーンを表示するステップと、前記第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、前記第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示するステップと、前記連合攻撃スキルに応じた前記第2の仮想キャラクタの状態を表示するステップと、を含み、前記連合攻撃スキルは、前記第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び前記少なくとも1つのチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含む、方法を提供する。
【0009】
本発明の実施例では、仮想キャラクタの制御装置であって、互いに対戦する第1の陣営及び第2の陣営を含む仮想シーンを表示する表示モジュール、を含み、前記表示モジュールは、前記第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、前記第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示し、前記連合攻撃スキルに応じた前記第2の仮想キャラクタの状態を表示し、前記連合攻撃スキルは、前記第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び前記少なくとも1つのチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含む、装置を提供する。
【0010】
本発明の実施例では、実行可能な命令が記憶されたメモリと、前記メモリに記憶された実行可能な命令を実行する際に、本発明の実施例に係る仮想キャラクタの制御方法を実現するプロセッサと、を含む、電子機器を提供する。
【0011】
本発明の実施例では、実行可能な命令が記憶されたコンピュータ読み取り可能な記憶媒体であって、前記命令は、プロセッサにより実行される際に、本発明の実施例に係る仮想キャラクタの制御方法を実現する、記憶媒体を提供する。
【0012】
本発明の実施例では、コンピュータプログラム又は命令を含むコンピュータプログラム製品であって、前記コンピュータプログラム又は命令は、プロセッサにより実行される際に、本発明の実施例に係る仮想キャラクタの制御方法を実現する、コンピュータプログラム製品を提供する。
【0013】
本発明の実施例に係る技術的手段は、以下の有利な効果を有する。
【0014】
敵対陣営にある第2の仮想キャラクタに対して攻撃を行う必要がある場合、同一の陣営にある第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの仮想シーンにおける位置を、連合攻撃スキルを発動するためのトリガ条件とすることで、連合攻撃スキルのトリガメカニズムを簡略化することができるため、連合攻撃スキルに基づいてインタラクションを行う際に電子機器が消費する必要がある計算リソースを節約することができる。
【図面の簡単な説明】
【0015】
図1A】本発明の実施例に係る仮想キャラクタの制御方法の応用モードの概略図である。
図1B】本発明の実施例に係る仮想キャラクタの制御方法の応用モードの概略図である。
図2】本発明の実施例に係る端末装置400の構成の概略図である。
図3】本発明の実施例に係る仮想キャラクタの制御方法のフローチャートである。
図4A】本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。
図4B】本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。
図4C】本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。
図5】本発明の実施例に係るニューラルネットワークモデルの訓練及び応用の概略図である。
図6】本発明の実施例に係るニューラルネットワークモデルの構成の概略図である。
図7】本発明の実施例に係るニューラルネットワークモデルが特徴データに基づいて連合攻撃スキルを決定することの概略図である。
図8】本発明の実施例に係る仮想キャラクタの制御方法のフローチャートである。
図9】本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。
図10】本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。
図11】本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。
図12】本発明の実施例に係る連携攻撃をトリガするためのルールの概略図である。
図13】本発明の実施例に係る攻撃順序の設計の概略図である。
図14】本発明の実施例に係る連携攻撃の過程におけるカメラ設計の概略図である。
【発明を実施するための形態】
【0016】
本発明の目的、技術的手段及び利点をより明確にするために、以下は、図面を参照しながら本発明の実施形態をさらに詳細に説明する。説明される実施例は、本発明を制限するものではなく、当業者は、創造的な作業を行うことなく得られる他の全ての実施例は、本発明の保護の範囲に属する。
【0017】
以下の説明では、言及される「幾つかの実施例」は、全ての可能な実施例のサブセットを説明しているが、「幾つかの実施例」は、全ての可能な実施例の同一又は異なるサブセットであってもよく、矛盾しない限り、互いに組み合わせられてもよい。
【0018】
以下の説明では、言及される用語「第1の」、「第2の」、「第3の」は、単なる類似のオブジェクトを区別するためのものであり、オブジェクトの特定の順序を表すものではない。なお、「第1の」、「第2の」、「第3の」は、許可されている場合に、記載される本発明の実施例が本明細書に図示又は記載されているもの以外の順序で実施できるように、特定の順序又は前後の順序を交換されてもよい。
【0019】
特に明記されていない限り、ここで使用される全ての技術用語及び科学用語は、当業者が通常理解できる意味と同一である。本明細書で使用される用語は、単なる本発明の実施例を説明するためのものであり、本発明を制限するものではない。
【0020】
本発明の実施例をさらに詳細に説明する前に、本発明の実施例に含まれる名詞及び用語を説明し、本発明の実施例に含まれる名詞及び用語は、以下の解釈に適している。
【0021】
(1)「に応答して」:実行された操作が依存する条件又は状態を表すために使用される。依存する条件又は状態が満たされる場合、実行される1つ又は複数の操作は、リアルタイムであってもよいし、設定された遅延を有してもよい。特に指定のない限り、実行される複数の操作の実行順序は時間順序に限定されない。
【0022】
(2)クライアント:様々なサービスを提供するために端末で実行されるアプリケーションであり、例えばビデオ再生クライアント、ゲームクライアントなどである。
【0023】
(3)仮想シーン:アプリケーションプログラムが端末で実行されている際に表示(又は提供)される仮想シーンである。該仮想シーンは、実世界に対するシミュレーション環境であってもよいし、半シミュレーション及び半架空の環境であってもよいし、純粋な架空の環境であってもよい。仮想シーンは、2次元仮想シーン、2.5次元仮想シーン、及び3次元仮想シーンのうちの何れかであってもよいが、本発明の実施例は仮想シーンの次元に限定されない。例えば、仮想シーンは、空、陸地、海などを含んでもよい。陸地は、砂漠、都市などの環境要素を含んでもよく、ユーザは、仮想オブジェクトが該仮想シーン内を移動するように制御してもよい。
【0024】
(4)仮想キャラクタ:仮想シーンにおいてインタラクションを行うことができる人間又は物の形象であってもよいし、仮想シーンにおける移動可能なオブジェクトであってもよい。該移動可能なオブジェクトは、仮想人間、仮想動物、漫画又はアニメーションのキャラクタなどであってもよく、例えば、仮想シーンに表示されるキャラクタ、動物、植物、樽、壁、石などである。該仮想キャラクタは、仮想シーンにおけるユーザを表す仮想な形象であってもよい。仮想シーンには、複数の仮想キャラクタが含まれてもよく、各仮想キャラクタは、仮想シーンにおいて独自の形状及び体積を持ち、仮想シーンにおいて空間の一部を占める。
【0025】
好ましくは、該仮想キャラクタは、クライアントでの操作により制御されるユーザキャラクタであってもよいし、トレーニングにより仮想シーンの対戦において設定された人工知能(AI:Artificial Intelligence)であってもよいし、仮想シーンのインタラクションで設定された非プレイヤキャラクタ(NPC:Non-Player Character)であってもよい。例えば、該仮想キャラクタは、仮想シーンにおいて対抗的なインタラクションを実行する仮想人間であってもよい。例えば、該仮想シーンのインタラクションに参加する仮想キャラクタの数は、事前に設定されてもよいし、インタラクションに参加するクライアントの数に応じて動的に決定されてもよい。
【0026】
(5)シーンデータ:インタラクションプロセスにおける仮想シーン内のキャラクタの様々な特徴を表すものであり、例えば、仮想シーン内の仮想キャラクタの位置を含んでもよい。なお、仮想シーンのタイプに応じて様々なタイプの特徴を含んでもよい。例えば、ゲームの仮想シーンでは、シーンデータは、仮想シーンで構成された様々な機能の待機時間(所定の期間内に同一の機能を使用可能な回数に依存する)を含んでもよいし、仮想キャラクタの様々な状態を表す属性値、例えば生命値(HP)(赤の量とも称される)や魔法値(青の量とも称される)などを含んでもよい。
【0027】
(6)連合攻撃:連携攻撃とも称され、少なくとも2つの仮想キャラクタが協力して攻撃を行い、各仮想キャラクタが少なくとも1回の攻撃スキルを発動し、連合攻撃の過程において発動された攻撃スキルを連合攻撃スキルと称する。
【0028】
仮想シーンにおいて、ユーザは、同一の陣営における複数の仮想キャラクタが、敵対陣営におけるターゲット仮想キャラクタに対して連携攻撃(上記の連合攻撃スキルに対応する)を行うために、攻撃陣形を結成するように制御してもよい。
【0029】
しかし、関連技術では、連携攻撃のトリガメカニズムは、比較的に複雑であり、理解しにくい。ゲームを一例にすると、連携攻撃のトリガメカニズムは、ゲーム(特にスマートフォンゲーム)の軽量化設計の需要に合わない。また、攻撃された仮想キャラクタが反撃を行う場合にも再度連携攻撃をトリガする可能性があるため、ゲームの複雑度がさらに向上してしまい、端末装置は、シーンデータを処理する際に大量の計算リソースを消費する必要がある。
【0030】
上述した技術的問題を鑑み、本発明の実施例は、簡単、且つ低リソース消費の方式で連合攻撃スキルをトリガし、インタラクションの過程における端末装置が消費する必要がある計算リソースを低減させることができる、仮想キャラクタの制御方法、装置、電子機器、コンピュータ読み取り可能な記憶媒体及びコンピュータプログラム製品を提供する。本発明の実施例に係る仮想キャラクタの制御方法を理解しやすくするために、まず、本発明の実施例に係る仮想キャラクタの制御方法の例示的な実装シナリオを説明する。本発明の実施例に係る仮想キャラクタの制御方法では、仮想シーンは、完全に端末装置により出力されてもよいし、端末装置とサーバとの協働により出力されてもよい。
【0031】
幾つかの実施例では、仮想シーンは、ゲームキャラクタがインタラクションを行うための環境であってもよく、例えば、ゲームキャラクタが仮想シーン内で対戦を行ってもよい。ユーザは、仮想シーン内で双方のインタラクションを行うように仮想キャラクタの動作を制御することによって、ゲーム中に生活のストレスを緩和することができる。
【0032】
図1Aは、本発明の実施例に係る仮想キャラクタの制御方法の応用モードの概略図である。1つの実装シナリオでは、図1Aに示すように、完全に端末装置400のグラフィックス処理ハードウェアの計算能力に依存して仮想シーン100の関連データの計算を完成させる幾つかの応用モードに適する。例えば、スタンドアロンバージョン/オフラインモードのゲームなどは、スマートフォン、タブレットコンピュータ及び仮想現実/拡張現実デバイスなどの端末装置400を介して仮想シーンの出力を実現する。
【0033】
一例として、画像処理ハードウェアのタイプは、中央処理装置(CPU:Central Processing Unit)及びグラフィックスプロセッサ(GPU:Graphics Processing Unit)を含む。
【0034】
仮想シーン100の視覚的知覚を実現する際に、端末装置400は、グラフィックコンピューティングハードウェアを介して必要なデータを計算して表示し、表示データのロード、解析及びレンダリングを実現し、グラフィックス出力ハードウェアで仮想シーンについて視覚的知覚を実現可能なビデオフレームを出力する。例えば、スマートフォンの表示ディスプレイに2次元の画像又はビデオを表示し、或いは拡張現実/仮想現実の眼鏡のレンズに3次元の表示効果を実現可能なビデオフレームを投影する。また、知覚効果を強化するために、端末装置400は、様々なハードウェアを使用して、聴覚的知覚、触覚的知覚、及び動きの知覚の1つ又は複数を実現してもよい。
【0035】
一例として、端末装置400では、クライアント410(例えばスタンドアロンバージョンのゲームアプリケーション)が実行されている。クライアント410の実行中にロールプレイングを含む仮想シーンを出力し、仮想シーンは、ゲームキャラクタがインタラクションを行うための環境であり、例えば、ゲームキャラクタが対戦するための平地、街道、谷などである。仮想シーンには、互いに対戦する第1の陣営と第2の陣営が含まれ、第1の陣営には第1の仮想キャラクタ110とチームメイトキャラクタ120が含まれ、第2の陣営には第2の仮想キャラクタ130が含まれる。ここで、第1の仮想キャラクタ110は、ユーザ(又はプレイヤ)により制御されるゲームキャラクタであってもよい。即ち、第1の仮想キャラクタ110は、実際のユーザにより制御され、コントローラ(タッチスクリーン、サウンドスイッチ、キーボード、マウス及びジョイスティックなどを含む)に対する実際のユーザの操作に応答して仮想シーン内を移動する。例えば、実際のユーザがジョイスティックを左に動かすと、仮想キャラクタは、仮想シーン内を左に移動し、或いは、現在地でそのまま移動せず、ジャンプし、様々な機能(スキルやアイテムなど)を使用してもよい。
【0036】
例えば、第1の陣営における第1の仮想キャラクタ110とチームメイトキャラクタ120の仮想シーン100における位置が連合攻撃スキルのトリガ条件を満たしている場合(例えば、仮想シーン100における第1の仮想キャラクタ110及びチームメイトキャラクタ120の位置が所定の位置関係に合致する場合、連合攻撃スキルのトリガ条件を満たしていると決定する)、第2の陣営の第2の仮想キャラクタ130に対して発動された連合攻撃スキル、即ち、仮想シーン100において、第1の仮想キャラクタ110により第2の仮想キャラクタ130に対して発動された少なくとも1回の攻撃スキル、及びチームメイトキャラクタ120により第2の仮想キャラクタ130に対して発動された少なくとも1回の攻撃スキルを順次表示する。同時に、仮想シーン100において、連合攻撃スキルに応じた第2の仮想キャラクタ130の状態をさらに表示してもよい。
【0037】
図1Bは、本発明の実施例に係る仮想キャラクタの制御方法の応用モードの概略図である。もう1つの実装シナリオでは、図1Bに示すように、端末装置400及びサーバ200に適用され、サーバ200の計算能力により仮想シーンの計算を実現し、且つ端末装置400で仮想シーンの応用モードを出力することに適する。
【0038】
仮想シーン100の視覚的知覚を実現することを一例として、サーバ200は、仮想シーンに関する表示データを計算してネットワーク300を介して端末装置400に送信する。端末装置400は、グラフィックコンピューティングハードウェアを用いて表示データの計算、ロード及び解析を実現し、グラフィックス出力ハードウェアを用いて仮想シーンを出力し、視覚的知覚を実現し、例えば、スマートフォンの表示スクリーンに2次元のビデオフレームを表示し、或いは拡張現実/仮想現実の眼鏡のレンズに3次元の表示効果を実現するためのビデオフレームを投影してもよい。仮想シーンの形態の知覚の場合、例えば、マイクロフォン出力を使用して聴覚的知覚を形成し、バイブレータ出力を使用して触覚知覚を形成するなど、端末の対応するハードウェア出力を使用してもよい。
【0039】
一例として、端末装置400では、クライアント410(例えばネットワークバージョンのゲームアプリケーション)が実行されている。端末装置400は、ゲームサーバ(サーバ200)に接続して他のユーザとゲームのインタラクションを行うと、クライアント410の仮想シーン100を出力する。仮想シーン100には、互いに対戦する第1の陣営と第2の陣営が含まれ、第1の陣営には第1の仮想キャラクタ110とチームメイトキャラクタ120が含まれ、第2の陣営には第2の仮想キャラクタ130が含まれる。ここで、第1の仮想キャラクタ110は、ユーザ(又はプレイヤ)により制御されるゲームキャラクタであってもよい。即ち、第1の仮想キャラクタ110は、実際のユーザにより制御され、コントローラ(タッチスクリーン、サウンドスイッチ、キーボード、マウス及びジョイスティックなどを含む)に対する実際のユーザの操作に応答して仮想シーン内を移動する。例えば、実際のユーザがジョイスティックを左に動かすと、仮想キャラクタは、仮想シーン内を左に移動し、或いは、現在地でそのまま移動せず、ジャンプし、様々な機能(スキルやアイテムなど)を使用してもよい。
【0040】
例えば、第1の陣営における第1の仮想キャラクタ110とチームメイトキャラクタ120の仮想シーン100における位置が連合攻撃スキルのトリガ条件を満たしている場合、第2の陣営の第2の仮想キャラクタ130に対して発動された連合攻撃スキル、即ち、仮想シーン100において、第1の仮想キャラクタ110により第2の仮想キャラクタ130に対して発動された少なくとも1回の攻撃スキル、及びチームメイトキャラクタ120により第2の仮想キャラクタ130に対して発動された少なくとも1回の攻撃スキルを順次表示する。同時に、仮想シーン100において、連合攻撃スキルに応じた第2の仮想キャラクタ130の状態をさらに表示してもよい。
【0041】
他の幾つかの実施例では、第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタ(例えばチームメイトキャラクタA)が何れも複数の攻撃スキルを有する場合、例えば、第1の仮想キャラクタが攻撃スキル1、攻撃スキル2及び攻撃スキル3の3つの攻撃スキルを有し、チームメイトキャラクタAが攻撃スキル4及び攻撃スキル5の2つの攻撃スキルを有する場合、上記の連合攻撃スキルの発動順序は、各仮想キャラクタがラウンドごとに1回だけ発動することであってもよく、即ち、攻撃スキルの発動順序は、第1の仮想キャラクタが攻撃スキル1を発動し、チームメイトキャラクタAが攻撃スキル4を発動し、第1の仮想キャラクタが攻撃スキル2を発動し、チームメイトキャラクタAが攻撃スキル5を発動し、第1の仮想キャラクタが攻撃スキル3を発動することであってもよい。なお、上記の連合攻撃スキルの発動順序は、各仮想キャラクタがラウンドごとに複数のスキルを一括して発動し、その後、次の仮想キャラクタが攻撃を行うことであってもよく、即ち、攻撃スキルの発動順序は、第1の仮想キャラクタが攻撃スキル1を発動し、第1の仮想キャラクタが攻撃スキル2を発動し、第1の仮想キャラクタが攻撃スキル3を発動し、チームメイトキャラクタAが攻撃スキル4を発動し、チームメイトキャラクタAが攻撃スキル5を発動することであってもよい。
【0042】
幾つかの実施例では、端末装置400は、コンピュータプログラムを実行することによって、本発明の実施例に係る仮想キャラクタの制御方法を実現してもよい。例えば、コンピュータプログラムは、オペレーティングシステム内のネイティブプログラム又はソフトウェアモジュールであってもよいし、ローカル(Native)アプリケーションプログラム(APP:APPlication)、即ちゲームアプリ(即ち、上述したクライアント410)などの実行するためにオペレーティングシステムにインストールする必要のあるプログラムであってもよい。或いは、アプレット、即ちブラウザ環境にダウンロードするだけで実行できるプログラムであってもよい。或いは、任意のアプリに組み込むことができるゲームアプレットであってもよい。要するに、上記のコンピュータプログラムは、任意の形式のアプリケーションプログラム、モジュール又はプラグインであってもよい。
【0043】
本発明の実施例は、クラウド技術(Cloud Technology)により実現されてもよい。クラウド技術とは、広域ネットワーク又はローカルエリアネットワーク内でハードウェア、ソフトウェア、ネットワークなどの一連のリソースを統合し、データの計算、保存、処理及び共有を実現するホスティング技術である。
【0044】
クラウド技術は、クラウドコンピューティングのビジネスモデル応用に基づくネットワーク技術、情報技術、統合技術、管理プラットフォーム技術、及び応用技術などの総称であり、リソースプールを構成することができ、必要に応じて使用でき、柔軟で便利である。クラウドコンピューティング技術は、重要なサポート技術となる。技術ネットワークシステムのバックエンドサービスは、大量の計算、記憶リソースを必要とする。
【0045】
一例として、図1Bにおけるサーバ200は、独立した物理サーバであってもよいし、複数の物理サーバから構成されたサーバクラスタ又は分散型システムであってもよいし、クラウドサービス、クラウドデータベース、クラウドコンピューティング、クラウド関数、クラウドストレージ、ネットワークサービス、クラウド通信、ミドルウェアサービス、ドメインネームサービス、セキュリティサービス、CDN(Content Delivery Network:コンテンツ配信ネットワーク)、並びにビッグデータ及び人工知能プラットフォームなどの基本的なクラウドコンピューティングサービスを提供するクラウドサーバであってもよい。端末装置400は、スマートフォン、タブレットコンピュータ、ノートパソコン、デスクトップパソコン、スマートスピーカ、スマートウォッチ等であってもよいが、これらに限定されない。端末装置400及びサーバ200は、有線又は無線通信方式により直接又は間接的に接続されてもよいが、本発明の実施例はこれに限定されない。
【0046】
以下は、本発明の実施例に係る電子機器の構成を説明し、電子機器は、図1A及び図1Bに示す端末装置400であってもよい。図2は、本発明の実施例に係る端末装置400の構成の概略図である。図2に示すように、端末装置400は、少なくとも1つのプロセッサ460、メモリ450、少なくとも1つのネットワークインターフェース420及びユーザインターフェース430を含む。端末装置400における各構成要素は、バスシステム440を介して接続されている。なお、バスシステム440は、これらの構成要素間の接続通信を実現するために使用される。バスシステム440は、データバスに加えて、電源バス、制御バス及び状態信号バスを含む。なお、説明の便宜上、図2における各バスをバスシステム440と総称する。
【0047】
プロセッサ460は、汎用プロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、又は他のプログラマブルロジックデバイス、ディスクリートゲート又はトランジスタロジックデバイス、ディスクリートハードウェアコンポーネントなどの信号の処理機能を備えた集積回路チップであってもよい。ここで、汎用プロセッサは、マイクロプロセッサ又は任意の従来のプロセッサなどであってもよい。
【0048】
ユーザインターフェース430は、メディア内容の表示を可能にする1つ又は複数の出力装置431を含み、該出力装置431は、1つ又は複数のスピーカ及び/又は1つ又は複数の視覚的ディスプレイを含む。ユーザインターフェース430は、1つ又は複数の入力装置432をさらに含み、該入力装置432は、例えばキーボード、マウス、マイクロフォン、タッチスクリーンディスプレイ、カメラ、及び他の入力ボタン及びウィジェットなどのユーザ入力を容易にするユーザインターフェースコンポーネントを含む。
【0049】
メモリ450は、取り外し可能なもの、取り外し不可能なもの、又はそれらの組み合わせであってもよい。例示的なハードウェアデバイスには、ソリッドステートメモリ、ハードドライブ、光学ドライブなどを含む。メモリ450は、好ましくは、プロセッサ460から物理的に離れた1つ又は複数のストレージデバイスを含む。
【0050】
メモリ450は、揮発性メモリ又は不揮発性メモリを含み、或いは揮発性及び不揮発性メモリの両方を含んでもよい。不揮発性メモリは、読み取り専用メモリ(ROM:Read Only Memory)であってもよく、揮発性メモリは、ランダムアクセスメモリ(RAM:Random Access Memory)であってもよい。本発明の実施例で説明されるメモリ450は、任意の適切なタイプのメモリを含むことを意図している。
【0051】
幾つかの実施例では、メモリ450は、様々な動作をサポートするためにデータを格納することができ、その例には、以下に例示するように、プログラム、モジュール、及びデータ構造、或いはそれらのサブセット又はスーパーセットが含まれる。
【0052】
オペレーティングシステム451は、様々な基本システムサービスを処理し、様々な基本サービスを実装し、ハードウェアベースのタスクを処理するためのフレームワーク層、コアライブラリ層、ドライバ層などのハードウェア関連タスクを実行するためのシステムプログラムを含む。
【0053】
ネットワーク通信モジュール452は、1つ又は複数の(有線又は無線)ネットワークインターフェース420を介して他の電子機器に到達する。ネットワークインターフェース420は、例えばブルートゥース、ワイヤレス互換性(WiFi)、及びユニバーサルシリアルバス(USB:Universal Serial Bus)などを含む。
【0054】
表示モジュール453は、ユーザインターフェース430を介して関連付けられた出力装置431(例えば、ディスプレイ、スピーカなど)により情報を表示する(例えば、周辺機器を操作し、内容及び情報を表示するためのユーザインターフェース)。
【0055】
入力処理モジュール454は、1つ又は複数の入力装置432のうちの1つからの1つ又は複数のユーザ入力又はインタラクションを検出し、検出された入力又はインタラクションを変換する。
【0056】
幾つかの実施例では、本発明の実施例に係る装置は、ソフトウェアで実現されてもよい。図2に示すように、メモリ450に記憶された仮想キャラクタの制御装置455は、プログラム及びプラグインなどの形態のソフトウェアであってもよく、表示モジュール4551、取得モジュール4552及び呼び出しモジュール4553を含む。これらのモジュールは、論理的であるため、実現された機能に従って任意の組み合わせ又はさらなる分割を行ってもよい。なお、図2では、表現の便宜上、上記のモジュールを一括して示しているが、仮想キャラクタの制御装置455において、表示モジュール4551のみを含むことができる態様を排除したものと解釈すべきではない。以下は、モジュールの機能を説明する。
【0057】
以下は、図面を参照しながら本発明の実施例に係る仮想キャラクタの制御方法を説明する。実際に実施する際に、本発明の実施例に係る仮想キャラクタの制御方法は、図1Aにおける端末装置400により単独して実施されてもよいし、図1Bにおける端末装置400とサーバ200とにより共同で実施されてもよい。
【0058】
以下は、図1Aにおける端末装置400により実行される本発明の実施例に係る仮想キャラクタの制御方法を一例にして説明する。図3は、本発明の実施例に係る仮想キャラクタの制御方法のフローチャートである。図3に示すステップを説明する。
【0059】
なお、図3に示す方法は、端末装置400により実行される様々な形態のコンピュータプログラムにより実現されてもよく、上述したオペレーティングシステム451、ソフトウェアモジュール及びスクリプトなどの上述したクライアント410に限定されないため、本発明の実施例はクライアントに限定されない。
【0060】
ステップS101:仮想シーンを表示する。
【0061】
ここで、端末装置のヒューマンコンピュータインタラクションのインターフェースに表示される仮想シーンには、互いに対戦する第1の陣営及び第2の陣営が含まれてもよい。ここで、第1の陣営には、第1の仮想キャラクタ(例えばユーザにより制御される仮想キャラクタ)及び少なくとも1人のチームメイトキャラクタ(他のユーザにより制御される仮想キャラクタ、又はロボットプログラムにより制御される仮想キャラクタであってもよい)が含まれている。第2の陣営には、少なくとも1つの第2の仮想キャラクタ(他のユーザにより制御される仮想キャラクタ、又はロボットプログラムにより制御される仮想キャラクタであってもよい)が含まれている。
【0062】
幾つかの実施例では、仮想シーンは、ヒューマンコンピュータインタラクションのインターフェースにおいて、一人称視点で表示されてもよいし(例えば、ユーザ自分の視点でゲーム内の第1の仮想キャラクタを演じる)、三人称視点で表示されてもよいし(例えば、ユーザはゲームにおける第1の仮想キャラクタを追いかけるようにゲームを行う)、俯瞰するような大きな視野角で表示されてもよい。ここで、上記の視点間は、任意に切り替えられてもよい。
【0063】
一例として、第1の仮想キャラクタは、ゲーム内のユーザにより制御されるオブジェクトであってもよい。なお、仮想シーンには、他の仮想キャラクタが含まれてもよく、他のユーザにより制御されてもよいし、ロボットプログラムにより制御されてもよい。第1の仮想キャラクタは、複数のチームのうちの任意の1つのチームに分類されてもよい。チーム間は、敵対関係又は協力関係を有してもよく、仮想シーンにおけるチームは、上記の関係の1つ又は全てを有してもよい。
【0064】
一人称視点で仮想シーンを表示することを一例にすると、ヒューマンコンピュータインタラクションのインターフェースに表示される仮想シーンは、完全な仮想シーンにおける第1の仮想キャラクタの視点位置及び視点角度に基づいて、第1の仮想キャラクタの視野領域を決定し、完全な仮想シーンにおいて視野領域内に位置する部分的な仮想シーンを表示することを含んでもよい。即ち、表示される仮想シーンは、パノラマ仮想シーンに対する部分的な仮想シーンであってもよい。一人称視点は、ユーザに最もインパクトを与える視角であるため、操作中にユーザに没入感を提供することができる。
【0065】
仮想シーンを俯瞰的に表示することを一例にすると、ヒューマンコンピュータインタラクションのインターフェースに表示される仮想シーンは、パノラマ仮想シーンに対するズーム操作に応答して、対応するズーム操作の部分的な仮想シーンをヒューマンコンピュータインタラクションのインターフェースに表示することを含んでもよい。即ち、表示される仮想シーンは、パノラマ仮想シーンに対する部分的な仮想シーンであってもよい。これによって、操作中のユーザの操作性を向上させることができるため、ヒューマンコンピュータインタラクションの効率を向上させることができる。
【0066】
ステップS102:第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する。
【0067】
幾つかの実施例では、連合攻撃スキルのトリガ条件は、仮想シーンにおける第2の仮想キャラクタの位置が第1の仮想キャラクタの攻撃範囲内にあり、且つ少なくとも1つのチームメイトキャラクタの攻撃範囲内にあること、及び少なくとも1つのチームメイトキャラクタに対する第1の仮想キャラクタの方位が所定の方位であり、或いは所定の方位範囲にあることのうちの少なくとも1つを含んでもよい。
【0068】
例えば、ターン制ストラテジー(TBS:Turn-Based Strategy)ゲームを一例にすると、第1の仮想キャラクタの攻撃範囲が第1の仮想キャラクタの位置を中心とする半径3マス(格子とも称され、正方形を単位とする論理セルであり、ターン制ストラテジーゲームでは、所定数の連続した格子がステージのマップを構成する)の円形領域であると仮定し、第2の仮想キャラクタが第1の仮想キャラクタから2マスだけ離れており、即ち、第2の仮想キャラクタが第1の仮想キャラクタの攻撃範囲内にあると仮定する。また、仮想シーンには第1の仮想キャラクタと同一の陣営に属するチームメイトキャラクタAが存在し、且つチームメイトキャラクタAが第2の仮想キャラクタから1マスだけ離れており、且つチームメイトキャラクタAの攻撃範囲も半径3マスの円形領域であり、即ち、第2の仮想キャラクタが同時にチームメイトキャラクタAの攻撃範囲内にあると仮定すると、端末装置は、第1の仮想キャラクタとチームメイトキャラクタAの位置が連合攻撃スキルのトリガ条件を満たしていると決定してもよい。言い換えれば、第1の仮想キャラクタとチームメイトキャラクタAとの位置が所定の位置関係に合致する場合、陣容連合を結成し、第2の陣営における第2の仮想キャラクタに対して連合攻撃スキルを発動してもよい。
【0069】
図4Aは、本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。一例として、図4Aに示すように、第1の仮想キャラクタ401の攻撃範囲は、第1の円形領域402であり、チームメイトキャラクタ403の攻撃範囲は、第2の円形領域404である。第2の仮想キャラクタ407が第1の円形領域402と第2の円形領域404との交差範囲406にある場合(この場合、第1の仮想キャラクタ401及びチームメイトキャラクタ403は、何れも第2の仮想キャラクタ407に攻撃することができる)、端末装置は、第1の仮想キャラクタとチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしていると決定する。
【0070】
一例として、仮想キャラクタの攻撃範囲が方向性を有する(即ち、方向によって攻撃範囲が異なる)場合、第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの方位をさらに考慮する必要がある。例えば、仮想シーンにおける第2の仮想キャラクタの位置が第1の仮想キャラクタの現在の方位(即ち、第1の仮想キャラクタの現在の向き)に対応する攻撃範囲内にあり、且つ、第1の仮想キャラクタと同一の陣営に属するチームメイトキャラクタBの現在の方位(即ち、チームメイトキャラクタBの現在の向き)に対応する攻撃範囲内にある場合、端末装置は、第1の仮想キャラクタとチームメイトキャラクタBの位置が連合攻撃スキルのトリガ条件を満たしていると決定する。
【0071】
一例として、攻撃範囲に加えて、上記の所定の位置関係は、仮想キャラクタの方位に関連してもよい。例えば、第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタが同時に第2の仮想キャラクタに攻撃可能であり、且つ、少なくとも1つのチームメイトキャラクタに対する第1の仮想キャラクタの方位が所定の方位であり、或いは所定の方位範囲内にある場合、端末装置は、第1の仮想キャラクタと少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしていると決定する。例えば、攻撃範囲を満たす複数のチームメイトキャラクタのうち、チームメイトキャラクタCのみが第1の仮想キャラクタの視界範囲内にある場合、端末装置は、第1の仮想キャラクタとチームメイトキャラクタCの位置が連合攻撃スキルのトリガ条件を満たしていると決定する。
【0072】
図4Bは、本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。一例として、図4Bに示すように、第1の仮想キャラクタ408の攻撃範囲は、第1の円形領域409であり、第1のチームメイトキャラクタ410の攻撃範囲は、第2の円形領域411であり、第2のチームメイトキャラクタ412の攻撃範囲は、第3の円形領域413である。第2の仮想キャラクタ414が第1の円形領域409と第2の円形領域411と第3の円形領域413との共通の交差領域415内にあり、即ち、第1の仮想キャラクタ408、第1のチームメイトキャラクタの410及び第2のチームメイトキャラクタ412がいずれも第2の仮想キャラクタ414に攻撃することができるが、第1のチームメイトキャラクタ410の方位が第1の仮想キャラクタ408に対して所定の方位範囲に属さない場合、例えば、ユーザが一人称のモードで第1の仮想キャラクタ408を制御する際に、第1のチームメイトキャラクタ410が第1の仮想キャラクタ408の視野範囲内になく、且つ第2のチームメイトキャラクタ412が第1の仮想キャラクタ408の視野範囲内にある場合、端末装置は、第1の仮想キャラクタ408と第2のチームメイトキャラクタ412の位置が連合攻撃スキルのトリガ条件を満たしていると決定し、後続の連携攻撃を参与させるように第2のチームメイトキャラクタ412を選択する。
【0073】
なお、本発明の実施例に係る第2の仮想キャラクタは、1種類のキャラクタであり、1つの仮想キャラクタに限定されず、第2の仮想キャラクタの数は複数であってもよい。例えば、第2の陣営に複数の仮想キャラクタが存在する場合、これらの仮想キャラクタは全て第2の仮想キャラクタとされてもよい。
【0074】
幾つかの実施例では、端末装置は、以下のように、上記の第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示するステップを実現してもよい。第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしており、且つ第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタのキャラクタタイプが所定の陣容連合に合致する場合、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する。ここで、所定の陣容連合は、以下の少なくとも1つを含んでもよい。第1の仮想キャラクタのレベルが少なくとも1つのチームメイトキャラクタのレベル以下である。第1の仮想キャラクタの属性と少なくとも1つのチームメイトキャラクタの属性(属性とは、仮想キャラクタが持つ機能を意味してもよく、属性の異なる仮想キャラクタは異なる機能を持つ。例えば、属性は、力、知力及び機敏性を含んでもよい。属性が力である仮想キャラクタの場合、それに対応する機能は、ダメージに耐えるものであってもよい。属性が知力である仮想キャラクタの場合、それに対応する機能は、治療を担当するものであってもよい。属性が機敏性である仮想キャラクタの場合、それに対応する機能は、攻撃を担当するものであってもよい)とが同一であり(例えば、第1の仮想キャラクタとチームメイトキャラクタとの属性は、何れも機敏性であり、攻撃を担当する)、或いは互いに適合する(例えば、第1の仮想キャラクタの属性は機敏性であり、チームメイトキャラクタの属性は知力であり、即ち1人は攻撃を担当し、もう1人は治療を担当する)。第1の仮想キャラクタのスキルと少なくとも1つのチームメイトキャラクタのスキルとが同一であり(例えば、いずれも第2の仮想キャラクタの生命値にダメージを与える)、或いは互いに適合する(例えば、第2の仮想キャラクタに生命値、移動速度の低下、スキル待ち時間の増加などの様々なダメージを与えることができる)。
【0075】
一例として、端末装置は、仮想シーンから連合攻撃スキルのトリガ条件を満たしている複数のチームメイトキャラクタを選択した後に、所定の陣容連合に基づいて、連合攻撃スキルのトリガ条件を満たしている複数のチームメイトキャラクタから、所定の陣容連合に合致するチームメイトキャラクタを、最終的に第1の仮想キャラクタと協同して連合攻撃スキルを発動するキャラクタとして選択してもよい。例えば、端末装置により仮想シーンから選択された連合攻撃スキルのトリガ条件を満たしているチームメイトキャラクタが仮想キャラクタA、仮想キャラクタB、仮想キャラクタC及び仮想キャラクタDであり、第1の仮想キャラクタの現在のレベルが60であり、仮想キャラクタAのレベルが65であり、仮想キャラクタBのレベルが70であり、仮想キャラクタCのレベルが59であり、仮想キャラクタDのレベルが62である場合、端末装置は、仮想キャラクタCを、後続の第1の仮想キャラクタと協同して連合攻撃スキルを発動するキャラクタとして決定する。
【0076】
一例として、所定の陣容連合は、仮想キャラクタの属性にさらに関連してもよい。例えば、第1の仮想キャラクタの属性が力である(それに対応する機能はダメージに耐えるものであり、高い防御能力を持つ)場合、属性が機敏性である(それに対応する機能は攻撃を与えるものであり、高い攻撃能力を持つ)キャラクタを所定の陣容連合に合致するキャラクタとして決定してもよい。このように、異なる属性を組み合わせることによって、陣容連合の持続的な戦闘能力を向上させることができ、連合攻撃スキルを繰り返して発動する操作及び計算リソースを節約することができる。
【0077】
一例として、所定の陣容連合は、仮想キャラクタのスキルにさらに関連してもよい。例えば、第1の仮想キャラクタの攻撃タイプが物理攻撃である場合、攻撃タイプが魔法攻撃であるキャラクタを所定の陣容連合に合致するキャラクタとして決定してもよい。このように、スキルを組み合わせることによって、第2の仮想キャラクタに対して様々な面のダメージを与えることができ、ダメージの最大化を達成し、連合攻撃スキルを繰り返して発動する操作及び計算リソースを節約することができる。
【0078】
幾つかの実施例では、端末装置は、所定の陣容連合に合致する上記の条件に基づいてチームメイトキャラクタを選択する際に、所定の優先順位を採用してもよい。例えば、端末装置は、第1の仮想キャラクタと陣容連合を結成するために、まず、連合攻撃スキルのトリガ条件を満たしている複数のチームメイトキャラクタから、同一又は類似のレベルのキャラクタを選択する。存在しない場合、複数のチームメイトキャラクタから、属性が同一又は適合するキャラクタを選択する。依然として存在しない場合、複数のチームメイトキャラクタから、スキルが同一又は適合するキャラクタを選択する。また、端末は、選択する際に、レベル、属性、スキルが同一のチームメイトキャラクタを優先的に選択し、存在しない場合、クラスのより高い、又は属性、スキルが近いチームメイトキャラクタを選択する。
【0079】
幾つかの実施例では、連合攻撃スキルは、仮想キャラクタの状態(例えば生命値、魔法値など)にさらに関連してもよい。例えば、第1の仮想キャラクタの現在の状態値が状態閾値に達した場合(例えば、魔法値が魔法閾値より大きく、第1の仮想キャラクタが対応するスキルを発動するのに十分である場合)にのみ、連合攻撃スキルのトリガ条件を満たし、或いは、連合攻撃スキルのトリガ条件及び所定の陣容連合の両方を満たすチームメイトキャラクタと陣容連合を結成し、連合攻撃スキルを発動してもよい。
【0080】
幾つかの実施例では、端末装置は、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する前に、以下の処理をさらに実行してもよい。仮想シーンにおける連合攻撃スキルのトリガ条件を満たしている少なくとも1つのチームメイトキャラクタについて、少なくとも1つのチームメイトキャラクタに対応するプロンプト識別子を表示する。ここで、プロンプト識別子は、例えばテキスト、特殊効果又は両方の組合せなどの様々な形態であってもよく、少なくとも1つのチームメイトキャラクタが第1の仮想キャラクタと陣容連合を結成できることを示すために用いられる。少なくとも1つのチームメイトキャラクタに対する選択操作に応答して、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する。ここで、連合攻撃スキルは、第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び選択されたチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含む。このように、少なくとも1つのチームメイトキャラクタに対応するプロンプト識別子を表示することによって、ユーザがチームメイトキャラクタを容易に選択し、ゲームの進行を加速し、サーバの待ち時間を減少することができるため、サーバが消費する必要がある計算リソースを節約することができる。
【0081】
図4Cは、本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。図4Cに示すように、ユーザが第1の仮想キャラクタ416を制御して敵対陣営に属する第2の仮想キャラクタ420に攻撃する際に、仮想シーン400における連合攻撃スキルのトリガ条件を満たすチームメイトキャラクタについて、端末装置は、対応するプロンプト識別子を表示してもよい。例えば、連合攻撃スキルのトリガ条件を満たすチームメイトキャラクタ418について、チームメイトキャラクタ418が第1の仮想キャラクタ416と陣容連合を結成することが可能な仮想キャラクタであることをユーザに提示するために、チームメイトキャラクタ418の足元において対応するプロンプト識別子を表示してもよい。また、端末装置は、ユーザにより第2の仮想キャラクタに対してトリガされた攻撃命令を受信した場合、第1の仮想キャラクタ416の足元において対応する攻撃識別子417を表示し、第2の仮想キャラクタ420の足元において対応する被攻撃識別子421を表示してもよい。
【0082】
なお、図4Cに示すプロンプト識別子の表示態様は単なる好ましい一例であり、実際の応用において、仮想キャラクタの頭部においてプロンプト識別子を表示してもよいし、対応する提示の目的を達成するように仮想キャラクタのために特殊効果を付加してもよいが、本発明の実施例はこれらに限定されない。
【0083】
幾つかの実施例では、第2の陣営における第2の仮想キャラクタが先制攻撃スキルを有する(即ち、第2の仮想キャラクタが、スキルを優先的に発動する特権を持つ)場合、端末装置は、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する前に、以下の処理をさらに実行してもよい。第2の仮想キャラクタにより第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示し、第2の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じた第1の仮想キャラクタの状態を表示する。
【0084】
一例として、第2の陣営における第2の仮想キャラクタ(即ち、ユーザが攻撃しようとする仮想キャラクタ)が先制攻撃スキルを有する場合、対応する戦闘時間軸は、第2の仮想キャラクタが第1の仮想キャラクタに対して攻撃し、第1の仮想キャラクタが第2の仮想キャラクタに対して攻撃し、チームメイトキャラクタが第2の仮想キャラクタに対して攻撃することである。即ち、端末装置は、第1の陣営における第1の仮想キャラクタと少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、まず、第2の仮想キャラクタにより第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示し、第2の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じた第1の仮想キャラクタの状態、例えば第1の仮想キャラクタが第2の仮想キャラクタにより倒されていない状態、又は第1の仮想キャラクタが第2の仮想キャラクタの攻撃を受けた後に対応する生命値が低下している状態を表示する。
【0085】
他の幾つかの実施例では、少なくとも1つのチームメイトキャラクタが防御スキルを有する(例えば、陣容連合におけるチームメイトキャラクタAが防御スキルを有し、即ち、第2の仮想キャラクタが第1の仮想キャラクタを攻撃する前に、まずチームメイトキャラクタAを倒す必要がある)場合、対応する戦闘時間軸は、第2の仮想キャラクタがチームメイトキャラクタAを攻撃し、第1の仮想キャラクタが第2の仮想キャラクタを攻撃し、チームメイトキャラクタAが第2の仮想キャラクタを攻撃することである。即ち、端末装置は、第2の仮想キャラクタにより第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示する前に、第2の仮想キャラクタにより少なくとも1つのチームメイトキャラクタに対して発動された少なくとも1回の攻撃スキルを表示し、第2の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じた少なくとも1つのチームメイトキャラクタの状態(例えば、チームメイトキャラクタの生命値が低下し、或いは、チームメイトキャラクタの防御盾が第2の仮想キャラクタにより発動されたスキルによって壊れるため、第1の仮想キャラクタを護衛する能力を喪失する場合、第2の仮想キャラクタは第1の仮想キャラクタに対して攻撃を行うことができる)を表示してもよい。
【0086】
幾つかの実施例では、第2の陣営に防御スキルを有する第3の仮想キャラクタが存在する場合、端末装置は、第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する前に、以下の処理をさらに実行してもよい。第3の仮想キャラクタに対して発動された連合攻撃スキルを表示し、連合攻撃スキルに応じた第3の仮想キャラクタの状態を表示する。
【0087】
一例として、第2の陣営には、第2の仮想キャラクタを保護するための防御スキルを有する第3の仮想キャラクタが存在する可能性もある。この場合、ユーザは、第2の仮想キャラクタを攻撃する前に、まず第3の仮想キャラクタを攻撃する必要がある。即ち、端末装置は、第1の陣営における第1の仮想キャラクタと少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、まず、第3の仮想キャラクタに対して発動された連合攻撃スキルを表示し、連合攻撃スキルに応じた第3の仮想キャラクタの状態、例えば連合攻撃スキルを受けて死亡した状態を表示する。
【0088】
なお、実際の応用では、第3の仮想キャラクタは、連合攻撃スキルに応じて、逃走状態、護衛能力を喪失した(例えば、第3の仮想キャラクタの防御盾が連合攻撃スキルを受けて壊れて、第2の仮想キャラクタをガードする能力を失った)状態、又は攻撃能力を喪失した状態等になってもよい。
【0089】
他の幾つかの実施例では、上述したように、連合攻撃スキルに含まれる第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じて、第3の仮想キャラクタが死亡状態になった場合、(或いは、逃走し、護衛能力などを喪失したことによって第2の仮想キャラクタの護衛を継続することができなくなった場合)、端末装置は、以下の処理をさらに実行してもよい。少なくとも1つのチームメイトキャラクタにより第2の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示し、少なくとも1つのチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルに応じた第2の仮想キャラクタの状態を表示する。
【0090】
一例として、第3の仮想キャラクタが連合攻撃スキルに含まれる第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキルを受けて死亡状態になった(第3の仮想キャラクタが仮想シーンから消えた)場合、第1の仮想キャラクタと陣容連合を結成している少なくとも1つのチームメイトキャラクタは、第2の仮想キャラクタを攻撃し続けてもよい。即ち、端末装置は、少なくとも1つのチームメイトキャラクタにより第2の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示し、少なくとも1つのチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルに応じた第2の仮想キャラクタの状態を表示するように切り替えてもよい。例えば、第2の仮想キャラクタが少なくとも1つのチームメイトキャラクタにより発動された攻撃スキルを回避し、或いは第2の仮想キャラクタが少なくとも1つのチームメイトキャラクタにより発動された攻撃スキルを受けて死亡した状態を表示する。
【0091】
幾つかの実施例では、端末装置は、以下のように、第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示するステップを実現してもよい。第1の陣営における第1の仮想キャラクタ及び複数のチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、複数のチームメイトキャラクタのうちの攻撃力の最も高い(又は攻撃力の降順で上位の少なくとも1つの)チームメイトキャラクタ及び第1の仮想キャラクタに陣容連合を結成させ、陣容連合により第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する。ここで、連合攻撃スキルは、第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び攻撃力の最も高いチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含む。
【0092】
一例として、仮想シーンに複数のチームメイトキャラクタが存在し、且つ待ち時間(例えば10秒)を超過しても複数のチームメイトキャラクタに対するユーザの選択操作が受け付けていない場合、端末装置は、チームメイトキャラクタの攻撃力に基づいて複数のチームメイトキャラクタを降順にソートし、攻撃力が最も高い1つ又は上位にソートされた少なくとも1つのチームメイトキャラクタと第1の仮想キャラクタとに陣容連合を結成させ、陣容連合に基づいて第2の仮想キャラクタに対して発動された連合攻撃スキルを表示してもよい。このように、攻撃力が最も高いチームメイトキャラクタと第1の仮想キャラクタとに陣容連合を結成させて第2の仮想キャラクタに対して連携攻撃を行うことによって、第2の仮想キャラクタに最大のダメージを与えることができ、ゲームの進行を加速させることができるため、端末装置が消費する必要のある計算リソースを減少させることができる。
【0093】
幾つかの実施例では、連合攻撃スキルは、機械学習モデルを読み出すことによって予測されてもよい。ここで、機械学習モデルは、端末装置でローカルに実行されてもよく、例えば、サーバは、機械学習モデルを訓練した後、訓練済みの機械学習モデルを端末装置に送信する。機械学習モデルは、サーバに構成されてもよく、例えば、端末装置は、第1の仮想キャラクタ、少なくとも1つのチームメイトキャラクタ及び第2の仮想キャラクタの特徴データを収集した後に、サーバが特徴データに基づいて機械学習モデルを呼び出して、対応する連合攻撃スキルを決定して、決定された連合攻撃スキルを端末装置に返すように、特徴データをサーバにアップロードする。このように、機械学習モデルにより連合スキルを正確に予測し、攻撃スキルの不必要な重複発動を回避し、端末装置の計算リソースを節約することができる。
【0094】
なお、上述した機械学習モデルは、ニューラルネットワークモデル(例えば畳み込みニューラルネットワーク、ディープ畳み込みニューラルネットワーク、又は全結合ニューラルネットワークなど)、決定木モデル、勾配ブースティング木、多層パーセプトロン、サポートベクトルマシン等であってもよいが、本発明の実施例は機械学習モデルの具体的な種類に限定されない。
【0095】
一例として、端末装置は、第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、以下の処理を実行してもよい。第1の仮想キャラクタ、少なくとも1つのチームメイトキャラクタ及び第2の仮想キャラクタにそれぞれ対応する特徴データを取得し、機械学習モデルを呼び出して、連合攻撃スキルに含まれる第1の仮想キャラクタ及びチームメイトキャラクタにそれぞれ対応する攻撃スキルの発動回数及び発動される攻撃スキルのそれぞれのタイプを決定する。ここで、特徴データは、状態、スキル待ち時間(クールダウン(CD:Cool Down)時間とも称され、同一のスキル(又はアイテム)を連続して使用するために必要な待機時間を意味する)、及びスキル攻撃強度のうちの少なくとも1つを含む。
【0096】
例えば、機械学習モデルがニューラルネットワークモデルであることを一例にして説明する。図5は、本発明の実施例に係るニューラルネットワークモデルの訓練及び応用の概略図であり、ニューラルネットワークモデルの訓練及び応用の2つの段階に関する。ニューラルネットワークモデルの具体的なタイプは、限定されないが、例えば畳み込みニューラルネットワークモデル、ディープニューラルネットワークなどであってもよい。
【0097】
ニューラルネットワークモデルの訓練段階では、主に以下の部分、即ち(a)訓練サンプルを収集すること、(b)訓練サンプルに対して前処理を行うこと、(c)前処理後の訓練サンプルを用いてニューラルネットワークモデルに対して訓練を行うことに関し、以下はそれぞれ説明する。
【0098】
(a)訓練サンプルの収集:本発明の幾つかの実施例では、実際のユーザは、第1の仮想キャラクタとチームメイトキャラクタとに陣容連合を結成させ、第2の陣営における第2の仮想キャラクタに対して連合攻撃スキルを発動するように制御し、攻撃プロセスにおけるゲームの基本情報(例えば、実際のユーザにより制御された陣容連合が勝利したか否か、第1の仮想キャラクタの各スキルのクールダウン時間、チームメイトキャラクタの各スキルのクールダウン時間など)、シーンのリアルタイム情報(例えば、第1の仮想キャラクタの現在の状態(例えば生命値や魔法値など)、チームメイトの現在の状態、及び第2の仮想キャラクタの現在の状態(例えば、第2の仮想キャラクタの現在の生命値、魔法値及び各スキルの待ち時間)など)、及び実際のユーザの操作データ(例えば、第1の仮想キャラクタにより発動された各スキルのタイプ、スキルを発動した回数など)サンプルなどを記録し、その後、記録されたデータを組合せたデータセットをニューラルネットワークモデルの訓練サンプルとして収集してもよい。
【0099】
(b)訓練サンプルの前処理:収集された訓練サンプルに対してスクリーニング、正規化処理、及びエンコーディング処理などの操作を含む。
【0100】
一例として、有効データのスクリーニングは、収集された訓練サンプルから最終的に取得された発動された攻撃スキルのタイプ、及び対応する発動回数を選択することを含む。
【0101】
一例として、シーン情報の正規化処理は、シーンデータを[0,1]に正規化することを含む。例えば、第1の仮想キャラクタが有するスキル1に対応するクールダウン時間について、以下のように正規化処理を行ってもよい。
【0102】
正規化された第1の仮想キャラクタのスキル1のCD=第1の仮想キャラクタのスキル1のCD/スキル1の合計CD。
【0103】
ここで、スキル1の合計CDとは、第1の仮想キャラクタのスキル1のCDとチームメイトキャラクタのスキル1のCDとの加算の和である。
【0104】
一例として、操作データは、ワンホット(One-Hot)エンコーディングにより整列化されてもよい。例えば、操作データ[第1の仮想キャラクタの現在の状態値が状態閾値より大きいか否か、チームメイトキャラクタの現在の状態値が状態閾値より大きいか否か、第2の仮想キャラクタの現在の状態値が状態閾値より大きいか否か、…、第1の仮想キャラクタがスキル1を発動するか否か、チームメイトキャラクタがスキル1を解放するか否か]について、実際のユーザにより行われた操作に対応するビットを1に設定し、他のビットを0に設定する。例えば、第2の仮想キャラクタの現在の状態値が状態閾値よりも大きい場合、[0,0,1,…,0,0]となるようにエンコーディングする。
【0105】
(c)前処理後の訓練サンプルを用いてニューラルネットワークモデルを訓練する。
【0106】
一例として、前処理後の訓練サンプルを用いてニューラルネットワークモデルを訓練する。例えば、第1の仮想キャラクタ、チームメイトキャラクタ及び第2の仮想キャラクタの特徴データ(状態、スキル待ち時間、スキル攻撃強度などを含む)を入力として、連合攻撃スキルにおける攻撃スキルの発動回数及び発動された各攻撃スキルのタイプを出力としてもよい。詳細は以下の通りである。
【0107】
入力:[第1の仮想キャラクタの特徴データ、チームメイトの特徴データ、第2の仮想キャラクタの特徴データ]
出力:[第1の仮想キャラクタの攻撃スキルの発動回数、第1の仮想キャラクタにより発動された各攻撃スキルのタイプ、チームメイトキャラクタの攻撃スキルの発動回数、チームメイトキャラクタにより発動された各攻撃スキルのタイプ]
図6は、本発明の実施例に係るニューラルネットワークモデルの構成の概略図である。一例として、図6に示すように、ニューラルネットワークモデルは、入力層、中間層(例えば、中間層1及び中間層2を含む)及び出力層を含む。ここで、ニューラルネットワークモデルの訓練は、逆伝播(BP:Back Propagation)ニューラルネットワークアルゴリズムに従って端末装置で実行されてもよい。なお、BPニューラルネットワークの他、再帰型ニューラルネットワーク(RNN:Recurrent Neural Network)などの他のタイプのニューラルネットワークを採用してもよい。
【0108】
図7は、本発明の実施例に係るニューラルネットワークモデルが特徴データに基づいて連合攻撃スキルを決定することの概略図である。他の幾つかの実施例では、図7に示すように、ニューラルネットワークモデルの応用段階では、以下の部分、即ち(a)攻撃過程におけるシーンデータをリアルタイムに取得すること、(b)シーンデータに対して前処理を行うこと、(c)訓練済みのニューラルネットワークモデルに前処理後のシーンデータを入力し、モデルにより出力された連合攻撃スキルを計算すること、及び(d)第1の仮想キャラクタとチームメイトキャラクタに連合攻撃スキルを発動させるように、モデルにより出力された連合攻撃スキルに応じて対応する操作インターフェースを呼び出すことに関する。以下は、それぞれについて説明する。
【0109】
(a)攻撃過程におけるシーンデータのリアルタイム取得
第1の仮想キャラクタとチームメイトキャラクタとが陣容連合を結成した後、ゲームプログラムは、攻撃過程におけるシーンデータ、例えば第1の仮想キャラクタの特徴データ、チームメイトキャラクタの特徴データ、第2の仮想キャラクタの特徴データなどをリアルタイムで取得する。
【0110】
(b)シーンデータの前処理
ゲームプログラムでは、シーンデータに対して前処理を行う。具体的には、訓練サンプルの前処理と同様に、シーンデータの正規化処理などを含む。
【0111】
(c)連合攻撃スキルの取得
ゲームプログラムでは、前処理後のシーンデータを入力として、訓練済みのニューラルネットワークモデルによる計算により出力、即ち連合攻撃スキルを取得する。該連合攻撃スキルは、第1の仮想キャラクタ及びチームメイトキャラクタにそれぞれ対応する攻撃スキルの発動回数、及び発動された攻撃スキルのタイプなどを含む。
【0112】
(d)連合攻撃スキルの実行
ニューラルネットワークモデルの出力は数字の集合であり、それぞれ[第1の仮想キャラクタがスキル1を発動するか否か、第1の仮想キャラクタがスキル2を発動するか否か、第1の仮想キャラクタがスキル1を発動した回数が回数閾値より大きいか否か、…、チームメイトキャラクタがスキル1を発動するか否か]に対応しており、出力結果に応じて、対応する操作インターフェースを呼び出して、出力のうちの最大値の項目に対応するゲーム操作を実行する。
【0113】
幾つかの実施例では、端末装置は、以下のように、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示してもよい。第1の仮想キャラクタの攻撃範囲が範囲閾値よりも小さく、且つ少なくとも1つのチームメイトキャラクタの攻撃範囲が範囲閾値よりも大きい場合、第1の仮想キャラクタが少なくとも1回の攻撃スキルを発動する過程において、少なくとも1つのチームメイトキャラクタが第1の仮想キャラクタに対して固定された位置にあるように制御する。第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの攻撃範囲が何れも範囲閾値よりも大きい場合、第1の仮想キャラクタが少なくとも1回の攻撃スキルを発動する過程において、少なくとも1つのチームメイトキャラクタが仮想シーンにおける固定位置にあるように制御する。
【0114】
一例として、第1の仮想キャラクタが近距離対戦のものであり(即ち、第1の仮想キャラクタの攻撃範囲は範囲閾値よりも小さく、例えば第1の仮想キャラクタは1マス以内の他の仮想キャラクタしか攻撃できない)、チームメイトキャラクタBが遠距離対戦のものである(即ち、チームメイトキャラクタBの攻撃範囲は範囲閾値よりも大きく、例えばチームメイトキャラクタBは3マス以内の他の仮想キャラクタを攻撃することができる)場合、端末装置は、第1の仮想キャラクタが少なくとも1回の攻撃スキルを発動することを表示する過程において、チームメイトキャラクタBが常に第1の仮想キャラクタに対する固定位置、例えば第1の仮想キャラクタの左前方にあるようにする。
【0115】
一例として、第1の仮想キャラクタ及びチームメイトキャラクタAが何れも遠距離対戦のものである場合、端末装置は、第1の仮想キャラクタが少なくとも1回の攻撃スキルを発動することを表示する過程において、チームメイトキャラクタBが常に仮想シーン内の固定位置にあるようにする。例えば、第1の仮想キャラクタが第2の仮想キャラクタから3マス又は1マスだけ離れた位置で攻撃を行っても、チームメイトキャラクタBの仮想シーンにおける位置はそれに伴って変化することはない。
【0116】
幾つかの実施例では、制限された状態では、連合攻撃スキルをトリガすることはできない。例えば、端末装置は、第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタのうちの何れかの仮想キャラクタが異常な状態にある(例えば、眩暈攻撃を受け、或いは睡眠状態になり、或いは状態値が状態閾値よりも小さい)と決定した場合、ヒューマンコンピュータインタラクションのインターフェースに、連合攻撃スキルを発動できない旨のプロンプト情報を表示する。
【0117】
ステップS103:連合攻撃スキルに応じた第2の仮想キャラクタの状態を表示する。
【0118】
幾つかの実施例では、第2の仮想キャラクタが回避スキルを有する場合、端末装置は、連合攻撃スキルに応じた第2の仮想キャラクタがヒットしていない(miss)状態を表示する。
【0119】
幾つかの実施例では、第2の仮想キャラクタが回避スキルを有しない場合、端末装置は、連合攻撃スキルに応じた第2の仮想キャラクタが死亡した(或いは、生命値が減少するが、0になっていない)状態を表示する。
【0120】
図8は、本発明の実施例に係る仮想キャラクタの制御方法のフローチャートである。幾つかの実施例では、図3に示すように、連合攻撃スキルに応じて第2の仮想キャラクタが死亡していない状態にある場合、端末装置は、ステップS103を実行した後、図8に示すステップS104及びステップS105をさらに実行してもよい。以下は、図8に示すステップを参照しながら説明する。
【0121】
ステップS104:第2の仮想キャラクタにより第1の陣営における第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示する。
【0122】
幾つかの実施例では、第2の仮想キャラクタが連合攻撃スキルを受けた後に死亡していない状態にある場合、第1の仮想キャラクタに対して反撃を行ってもよい。即ち、端末装置は、連合攻撃スキルに応じた第2の仮想キャラクタの状態を表示した後、第2の仮想キャラクタにより第1の陣営における第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示し続けてもよい。
【0123】
言い換えれば、上記の実施例における第2の仮想キャラクタは、反撃を行う際に、チームメイトキャラクタに対して攻撃を行わず、第1の仮想キャラクタにのみ対して攻撃を行ってもよい。これによって、ゲームの複雑性を低減させ、ゲームの進行を加速させることができるため、端末装置がゲーム中に消費する必要のある計算リソースを減少させることができる。なお、実際の応用では、第2の仮想キャラクタが反撃を行う際に、チームメイトキャラクタに対して攻撃してもよく(例えば、チームメイトキャラクタが防御スキルを有する場合、第2の仮想キャラクタは、第1の仮想キャラクタを攻撃するために、まずチームメイトキャラクタを倒す必要がある)、本発明の実施例はこれに限定されない。
【0124】
ステップS105:第2の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じた第1の仮想キャラクタの状態を表示する。
【0125】
幾つかの実施例では、第1の仮想キャラクタが回避スキルを有する場合、端末装置は、第1の仮想キャラクタが第2の仮想キャラクタにより発動された少なくとも1つの攻撃スキルに応じてヒットしていない(miss)状態、即ち、第2の仮想キャラクタが第1の仮想キャラクタへの攻撃がヒットしておらず、第1の仮想キャラクタに対応する生命値が変化していない状態を表示してもよい。
【0126】
本発明の実施例に係る仮想キャラクタの制御方法は、ユーザが第1の仮想キャラクタを制御して敵対陣営にある第2の仮想キャラクタに対して攻撃を行う必要がある場合、端末装置は、同一の陣営にある第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの仮想シーンにおける位置関係により連合攻撃スキルをトリガすることで、連合攻撃スキルのトリガメカニズムを簡略化することができるため、端末装置が消費する計算リソースを低減させることができる。
【0127】
以下は、ターン制ストラテジーゲームを一例にして、本発明の実施例の1つの実際の応用シナリオにおける例示的な応用を説明する。
【0128】
ターン制ストラテジー(戦略)ゲームとは、ターン制のロールプレイングのゲームであり、マップ上で仮想キャラクタをマスごとに移動させて戦うロールプレイング戦略ゲームである。このようなゲームは、まるでチェスをしているようなものであるため、ターン制チェスゲームとも呼ばれ、一般的にはコンピュータ側とモバイル端末側などのマルチ端末で同期して体験することをサポートしている。ゲーム中、ユーザ(又はプレイヤ)は、同一の陣営に属する2つ以上の仮想キャラクタを制御して攻撃陣形を結成し、敵対陣営におけるターゲット仮想キャラクタに対して連携攻撃を行うことができる。
【0129】
しかし、関連技術では、連携攻撃(上記の連合攻撃スキルに対応する)のトリガメカニズムは比較的に複雑であり、理解しにくく、クライアントは連携攻撃のトリガ条件を判定する過程において端末装置の大量の計算リソースを消費する必要があるため、連携攻撃の画面を表示する際にタイムラグが発生しやすく、ユーザ体験に影響を与えてしまう。また、攻撃された側が反撃している間にも連携攻撃をトリガする場合があり、ゲームの複雑度がさらに向上してしまう。
【0130】
この問題を鑑み、本発明の実施例では、1つのラウンドにおけるユーザの陣容連合及び攻撃位置を新に導入し、複数の人による攻撃の連携効果をトリガする、仮想キャラクタの制御方法を提供する。例えば、自発的に攻撃を発動したキャラクタ(上記の第1の仮想キャラクタに対応する)と連携者(上記のチームメイトのキャラクタに対応する)とが同一の陣営にあり、且つ両者の位置が所定のルールに合致する場合、連携攻撃の効果をトリガしてもよい。また、連帯攻撃をトリガする過程において、様々なインタラクションプロンプト情報(例えば、仮想シーンにおいて連携攻撃に参加可能なチームメイトキャラクタのプロンプト情報)、攻撃表現及び攻撃効果を導入する。さらに、被攻撃者(上記の第2の仮想キャラクタに対応する)が反撃した場合、ゲームの進行を加速させるために、連携攻撃をトリガしない。
【0131】
以下は、本発明の実施例に係る仮想キャラクタの制御方法を具体的に説明する。
【0132】
図9は、本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。一例として、図9に示すように、ユーザが図9に示す第1の仮想キャラクタ901を制御して、敵対陣営に属する第2の仮想キャラクタ903を攻撃する際に、仮想シーンにおいて、連携攻撃に参加可能なチームメイトキャラクタを提示してもよい(例えば、図9に示すチームメイトキャラクタ902の足元に連携攻撃に参加可能なプロンプト光円環を表示する)。ここで、第1の仮想キャラクタ901とチームメイトキャラクタ902とが同一の陣営に属し、且つ第2の仮想キャラクタ903が第1の仮想キャラクタ901及びチームメイトキャラクタ902の両方の攻撃範囲内にあり、即ち、第1の仮想キャラクタ901及びチームメイトキャラクタ902が何れも第2の仮想キャラクタ903を攻撃することができる。また、仮想シーンにおいて、連携攻撃を行うか否かを決定するためのプロンプトボックス906を表示し、プロンプトボックス906には「取消」ボタン及び「確認」ボタンが表示されている。プロンプトボックス906に表示された「確認」に対するユーザのタップ操作がクライアントにより受信された場合、その後の攻撃過程で連携攻撃を行うように、第1の仮想キャラクタ901とチームメイトキャラクタ902とに攻撃陣形(又は陣容連合)を結成させる。
【0133】
また、図9に示すように、仮想シーンにおいて、第1の仮想キャラクタ901の属性情報904、例えば第1の仮想キャラクタ901の名称、レベル、攻撃力、防御力、生命値等の情報、及び第2の仮想キャラクタ903の属性情報905、例えば第2の仮想キャラクタ903の名称、レベル、攻撃力、防御力、生命値等の情報を表示してもよい。このように、仮想シーンに味方のキャラクタ(即ち第1の仮想キャラクタ901)の属性情報及び敵のキャラクタ(即ち第2の仮想キャラクタ903)の属性情報を表示することによって、ユーザが後続の作戦戦略を調整するように容易に対比することができる。
【0134】
幾つかの実施例では、仮想シーンにおける第1の仮想キャラクタと同一の陣営に属する複数のチームメイトキャラクタが連携攻撃に参加可能な条件を同時に満たす場合、クライアントは、攻撃力が最も高い(又は防御力が最も高い)チームメイトキャラクタを連携攻撃に参加するようにデフォルトで選択し、ユーザが連携攻撃に参加するチームメイトキャラクタを手動で選択することをサポートしてもよい。即ち、クライアントは、複数のチームメイトキャラクタに対するユーザの選択操作に応答して、ユーザにより選択されたキャラクタを、後で第1の仮想キャラクタと連携攻撃を行うチームメイトキャラクタとして決定してもよい。
【0135】
他の幾つかの実施例では、第1の仮想キャラクタ又はチームメイトキャラクタの何れかが異常状態にある場合、連携攻撃を行うことができない。例えば、第1の仮想キャラクタが現在眩暈や睡眠等の異常状態にある場合、連携攻撃を行うことができなく、即ち、仮想シーンに図9に示すプロンプトボックス906を表示しない。
【0136】
図10は、本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。一例として、図10に示すように、図9に示すプロンプトボックス906における「確認」ボタンがユーザによりタップされた場合、クライアントは、それに応答して、図10に示す連帯攻撃の攻撃表現を表示する画面に移行する。第1の仮想キャラクタ1001が敵対陣営にある第2の仮想キャラクタ1003を攻撃すると、チームメイトキャラクタ1002は、連携戦闘に入り、第2の仮想キャラクタ1003を攻撃する(図10は、チームメイトキャラクタ1002が第2の仮想キャラクタ1003の位置に移動して攻撃している画面を示している)。また、仮想シーンにおいて、第1の仮想キャラクタ1001の生命値及び状態(例えば怒り値、魔法値など)1004、並びに第2の仮想キャラクタ1003の生命値及び状態(例えば怒り値、魔法値など)1005を表示してもよい。
【0137】
幾つかの実施例では、敵対陣営に防御スキルを有する仮想キャラクタが戦闘に参加している場合、防御スキルを有する仮想キャラクタを優先的に攻撃する。例えば、図10に示す第2の仮想キャラクタ1003と同一の陣営に属し、且つ防御スキルを有する第3の仮想キャラクタが戦闘に参加している場合、図10に示す第1の仮想キャラクタ1001及びチームメイトキャラクタ1002は、まず、敵対陣営に属する防御スキルを有する第3の仮想キャラクタを攻撃し、第3の仮想キャラクタが死亡した後、第2の仮想キャラクタ1003を攻撃し続けてもよい。
【0138】
他の幾つかの実施例では、第1の仮想キャラクタが近距離戦闘のものであり(即ち、第1の仮想キャラクタの攻撃範囲が範囲閾値よりも小さく、例えば1マス以内のターゲットしか攻撃できない)、且つチームメイトキャラクタが遠距離戦闘のものである(即ち、チームメイトキャラクタの攻撃範囲が範囲閾値より大きく、例えば3マス以内のターゲットを攻撃することができる)場合、クライアントは、連携攻撃の戦闘表現を表示する際に、チームメイトキャラクタは第1の仮想キャラクタに対する固定位置にある(例えばチームメイトキャラクタは、第1の仮想キャラクタの左前方の固定位置に位置してもよい)。一方、第1の仮想キャラクタ及びチームメイトキャラクタが何れも遠距離戦闘のものである場合、クライアントは、連携攻撃の戦闘表現を表示する際に、チームメイトキャラクタの位置は固定され、即ち、チームメイトキャラクタは第1の仮想キャラクタの移動に伴って移動することがない。
【0139】
図11は、本発明の実施例に係る仮想キャラクタの制御方法の応用シナリオの概略図である。一例として、図11に示すように、チームメイトキャラクタ1102は、第2の仮想キャラクタ1103に対する攻撃を完了した後、第1の仮想キャラクタ1101に対する固定位置に後退し、例えば第1の仮想キャラクタ1101の左前方の固定位置に後退する。また、第1の仮想キャラクタ1101及びチームメイトキャラクタ1102の両方が第2の仮想キャラクタ1103に対する攻撃を完了した後、第1の仮想キャラクタ1101及びチームメイトキャラクタ1102の連携攻撃に応じた第2の仮想キャラクタ1103の状態、例えば図11に示す「死亡」状態を表示する。即ち、クライアントは、第1の仮想キャラクタ1101により発動された攻撃及びチームメイトキャラクタ1102により発動された攻撃を1回の完全な攻撃として決定し、第2の仮想キャラクタ1103が第1の仮想キャラクタ1101による攻撃を受けて「死亡」状態になる場合であっても、クライアントは、第2の仮想キャラクタ1103に対するチームメイトキャラクタ1102の攻撃画面を依然として表示し続ける。即ち、本発明の実施例に係る仮想キャラクタの制御方法は、ゲームデータを処理する際に、クライアントがローカルロジックに基づいて判断する実現方式を採用しており、1つのラウンドの完了した後に連帯攻撃によるダメージ及び効果変化に対して統一的な非同期検証を行う。
【0140】
また、図11に示すように、仮想シーンにおいて、第1の仮想キャラクタ1101が攻撃を行った後の生命値及び状態(例えば怒り値、魔法値など)1105、並びに第2の仮想キャラクタ1103が第1の仮想キャラクタ1101及びチームメイトキャラクタ1102の連携攻撃を受けた後の残りの生命値及び状態(例えば怒り値、魔法値など)1104を表示してもよい。例えば、第2の仮想キャラクタ1103が死亡した場合、対応する生命値はゼロとなる。
【0141】
次に、連帯攻撃をトリガするルールについて説明する。
【0142】
一例として、ゲーム中に、ユーザが仮想キャラクタ(即ち、上記の第1の仮想キャラクタ)を制御して仮想シーン内のターゲットキャラクタ(即ち、上記の敵対陣営にある第2の仮想キャラクタ)に対して攻撃を行う場合、クライアントは、ユーザにより制御された仮想キャラクタの位置及び陣営情報に基づいて、仮想シーン内の連携攻撃に参加可能なチームメイトキャラクタを選択してもよい。図12は、本発明の実施例に係る連携攻撃をトリガするためのルールの概略図である。例えば、図12に示すように、クライアントは、ユーザにより制御された仮想キャラクタの位置(例えば、図12に示す「自発的に一般攻撃を行う」1201が所在する位置)及び被攻撃者(上記の第2の仮想キャラクタに対応する)が所在する位置(例えば、図12に示す「ターゲット」1203が所在する位置)に基づいて、仮想シーンにおける連携攻撃に参加可能な位置(例えば、図12に示す「連携攻撃可能」1203が所在する位置)を決定し、これらの位置(即ち、図12に示す複数の「連携攻撃可能」1203)にあり、且つユーザにより制御された仮想キャラクタと同一の陣営に属するキャラクタの体に、連携攻撃に参加可能であることをユーザに提示するためのプロンプト情報を表示してもよい。
【0143】
次に、異なる陣営における仮想キャラクタの攻撃順序について説明する。
【0144】
一例として、本発明の実施例に係る仮想キャラクタの制御方法の戦闘時間軸は、戦闘発動者(上記の第1の仮想キャラクタに対応する)が先に攻撃し、連携者(上記のチームメイトのキャラクタに対応する)が攻撃を行い続け、被攻撃者(上記の第2の仮想キャラクタに対応する)が反撃することであってもよい。図13は、本発明の実施例に係る攻撃順序の設計の概略図である。例えば、図13に示すように、クライアントは、連帯攻撃の画面を表示する際、まず、A側(上記の第1の仮想キャラクタに対応する)の攻撃動画、B側(上記の第2の仮想キャラクタに対応する)の被攻撃動画、A側の位置復帰動画を表示し、これでA側の攻撃が完了する。次に、クライアントは、C側(上記のチームメイトのキャラクタに対応する)の連携加入動画、C側の連携攻撃動画、B側の被攻撃動画、C側の連携退出動画を表示し、これでC側の攻撃が完了する。次に、クライアントは、B側の反撃動画、A側の被攻撃動画、B側の位置復帰動画を表示し、これでB側の反撃が完了する。
【0145】
他の幾つかの実施例では、被攻撃側(上記の第2の仮想キャラクタに対応する)が先制攻撃スキルを有する場合、即ち、反撃スキルを優先的に発動する場合、戦闘の時間軸は、被攻撃者が反撃し、戦闘発動者(上記の第1の仮想キャラクタに対応する)が攻撃し、連携者(上記のチームメイトのキャラクタに対応する)が攻撃を行い続けるように調整してもよい。
【0146】
なお、戦闘発動者の攻撃及び連携者の攻撃は1回の完全な攻撃表現とされ、即ち、戦闘発動者が攻撃を行った後、被攻撃者の生命値が空になった(死亡状態になる)場合であっても、クライアントは、連携者の被攻撃者に対する攻撃画面を表示し続ける。即ち、戦闘発動者と連携者の被攻撃者に対する攻撃画面を順次表示した後、被攻撃者の死亡状態を表示する。
【0147】
以下は、クライアントが連帯攻撃の戦闘表現を表示する際のカメラ設計の過程について説明する。
【0148】
図14は、本発明の実施例に係る連携攻撃の過程におけるカメラ設計の概略図である。一例として、図14に示すように、連携スキルの発動時のカメラ制御では、クライアントは、現在の攻撃ユニット、例えば図14に示す戦闘発動者1401(上記の第1の仮想キャラクタに対応する)又は連携者1402(上記のチームメイトのキャラクタに対応する)の位置及び動的Lookat(Lookatとは、カメラ焦点方向、即ち、カメラ1403がどの点を見ているかを意味する)焦点位置に応じて、自動的に適応を行う。例えば、戦闘発動者1401が攻撃を行う際に、カメラ1403は、戦闘発動者1401と被攻撃者(上記の第2の仮想キャラクタに対応する)との間の位置を見てもよく、一方、連携者1402が攻撃を行うように切り替えた場合、カメラ1403は、連携者1402と被攻撃者(図示せず)との間の位置を見てもよく、連携者1402が攻撃を完了した際に、カメラ1403は、戦闘発動者1401と被攻撃者との間の位置を再び見てもよい。また、戦闘発動者1401又は連携者1402が移動する際に、例えば、戦闘発動者1401が被攻撃者の位置に移動して攻撃を行う際に、カメラ1403は、戦闘発動者1401の前進及び後退に応じて、ズームイン及びズームアウトの動的効果を示すようにそれに応じて移動してもよい。さらに、カメラ1403は、戦闘発動者1401又は連携者1402の前後又は左右の移動に応じて、振動の効果を表してもよい。
【0149】
以下は、本発明の実施例に係る仮想キャラクタの制御装置455がソフトウェアモジュールとして実装される例示的な構成を引き続き説明する。幾つかの実施例では、図2に示すように、メモリ450に記憶された仮想キャラクタの制御装置455は、以下のソフトウェアモジュールを含んでもよい。
【0150】
表示モジュール4551は、互いに対戦する第1の陣営及び第2の陣営を含む仮想シーンを表示する。また、表示モジュール4551は、第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示し、連合攻撃スキルに応じた第2の仮想キャラクタの状態を表示する。ここで、連合攻撃スキルは、第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び少なくとも1つのチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含む。
【0151】
幾つかの実施例では、連合攻撃スキルのトリガ条件は、仮想シーンにおける第2の仮想キャラクタの位置が第1の仮想キャラクタの攻撃範囲内にあり、且つ少なくとも1つのチームメイトキャラクタの攻撃範囲内にあること、及び少なくとも1つのチームメイトキャラクタに対する第1の仮想キャラクタの方位が所定の方位であり、或いは所定の方位範囲にあることのうちの少なくとも1つを含む。
【0152】
幾つかの実施例では、表示モジュール4551は、第1の陣営における第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしており、且つ第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタのキャラクタタイプが所定の陣容連合に合致する場合、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する。
【0153】
幾つかの実施例では、所定の陣容連合は、第1の仮想キャラクタのレベルが少なくとも1つのチームメイトキャラクタのレベル以下であること、第1の仮想キャラクタの属性と少なくとも1つのチームメイトキャラクタの属性とが同一であり、或いは互いに適合すること、及び第1の仮想キャラクタのスキルと少なくとも1つのチームメイトキャラクタのスキルとが同一であり、或いは互いに適合することのうちの少なくとも1つを含む。
【0154】
幾つかの実施例では、第2の仮想キャラクタが先制攻撃スキルを有する場合、表示モジュール4551は、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する前に、第2の仮想キャラクタにより第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示し、第2の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じた第1の仮想キャラクタの状態を表示する。
【0155】
幾つかの実施例では、少なくとも1つのチームメイトキャラクタが防御スキルを有する場合、表示モジュール4551は、第2の仮想キャラクタにより第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示する前に、第2の仮想キャラクタにより少なくとも1つのチームメイトキャラクタに対して発動された少なくとも1回の攻撃スキルを表示し、第2の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じた少なくとも1つのチームメイトキャラクタの状態を表示する。
【0156】
幾つかの実施例では、第2の陣営に防御スキルを有する第3の仮想キャラクタが存在する場合、表示モジュール4551は、第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する前に、第3の仮想キャラクタに対して発動された連合攻撃スキルを表示し、連合攻撃スキルに応じた第3の仮想キャラクタの状態を表示する。
【0157】
幾つかの実施例では、連合攻撃スキルに含まれる第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じて、第3の仮想キャラクタが死亡状態になった場合、表示モジュール4551は、少なくとも1つのチームメイトキャラクタにより第2の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示し、少なくとも1つのチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルに応じた第2の仮想キャラクタの状態を表示する。
【0158】
幾つかの実施例では、表示モジュール4551は、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する前に、仮想シーンにおける連合攻撃スキルのトリガ条件を満たしている少なくとも1つのチームメイトキャラクタについて、少なくとも1つのチームメイトキャラクタに対応するプロンプト識別子を表示する。ここで、プロンプト識別子は、少なくとも1つのチームメイトキャラクタが第1の仮想キャラクタと陣容連合を結成できることを示すために用いられる。また、表示モジュール4551は、少なくとも1つのチームメイトキャラクタに対する選択操作に応答して、第2の陣営における第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する。ここで、連合攻撃スキルは、第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び選択されたチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含む。
【0159】
幾つかの実施例では、表示モジュール4551は、第1の陣営における第1の仮想キャラクタ及び複数のチームメイトキャラクタの位置が連合攻撃スキルのトリガ条件を満たしている場合、複数のチームメイトキャラクタのうちの攻撃力の最も高いチームメイトキャラクタ及び前記第1の仮想キャラクタに陣容連合を結成させ、前記陣容連合により前記第2の仮想キャラクタに対して発動された連合攻撃スキルを表示する。ここで、連合攻撃スキルは、第1の仮想キャラクタにより発動された少なくとも1回の攻撃スキル、及び攻撃力の最も高いチームメイトキャラクタにより発動された少なくとも1回の攻撃スキルを含む。
【0160】
幾つかの実施例では、表示モジュール4551は、第1の仮想キャラクタの攻撃範囲が範囲閾値よりも小さく、且つ少なくとも1つのチームメイトキャラクタの攻撃範囲が範囲閾値よりも大きい場合、第1の仮想キャラクタが少なくとも1回の攻撃スキルを発動する過程において、少なくとも1つのチームメイトキャラクタが第1の仮想キャラクタに対して固定された位置にあるように制御し、第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの攻撃範囲が何れも範囲閾値よりも大きい場合、第1の仮想キャラクタが少なくとも1回の攻撃スキルを発動する過程において、少なくとも1つのチームメイトキャラクタが仮想シーンにおける固定位置にあるように制御する。
【0161】
幾つかの実施例では、表示モジュール4551は、連合攻撃スキルに応じて第2の仮想キャラクタが死亡していない状態にある場合、第2の仮想キャラクタにより第1の陣営における第1の仮想キャラクタに対して発動された少なくとも1回の攻撃スキルを表示し、第2の仮想キャラクタにより発動された少なくとも1回の攻撃スキルに応じた第1の仮想キャラクタの状態を表示し、第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタのうちの何れかの仮想キャラクタが異常状態にある場合、連合攻撃スキルを発動できない旨のプロンプト情報を表示する。
【0162】
幾つかの実施例では、連合攻撃スキルは、機械学習モデルを呼び出すことによって予測されたものである。仮想キャラクタの制御装置455は、以下のモジュールをさらに含む。取得モジュール4552は、第1の仮想キャラクタ、少なくとも1つのチームメイトキャラクタ及び第2の仮想キャラクタの特徴データを取得する。呼び出しモジュール4553は、特徴データに基づいて機械学習モデルを呼び出して、連合攻撃スキルに含まれる攻撃スキルの発動回数及び発動される攻撃スキルのそれぞれのタイプを決定する。ここで、特徴データは、状態、スキル待ち時間、及びスキル攻撃強度のうちの少なくとも1つを含む。
【0163】
なお、本発明の実施例の装置の説明は、上述した方法の実施例の説明と同様であり、当該方法の実施例と同様の効果を有するため、ここでその説明を省略する。本発明の実施例に係る仮想キャラクタの制御装置の説明されていない技術的詳細は、図3又は図8の何れかの図面の説明から理解される。
【0164】
本発明の実施例は、コンピュータプログラム又は命令を含むコンピュータプログラムプロダクト又はコンピュータプログラムをさらに提供する。該コンピュータプログラムプロダクト又はコンピュータプログラムはコンピュータ命令を含み、該コンピュータ命令はコンピュータより取り可能な記憶媒体に記憶されている。コンピュータ装置のプロセッサは、コンピュータより取り可能な記憶媒体から該コンピュータ命令を読み取り、実行する際に、本発明の実施例に係る上記の仮想キャラクタの制御方法を実行する。
【0165】
本発明の実施例は、実行可能な命令が記憶されたコンピュータ読み取り可能な記憶媒体をさらに提供する。該命令は、プロセッサにより実行される際に、本発明の実施例に係る仮想キャラクタの制御方法、例えば図3又は図8に示す仮想キャラクタの制御方法を実行する。
【0166】
幾つかの実施例では、コンピュータ読み取り可能な記憶媒体は、FRAM、ROM、PROM、EPROM、EEPL、フラッシュメモリ、磁気表面メモリ、光ディスク、又はCD-ROMなどのメモリであってもよいし、上記のメモリの1つ又は任意の組み合わせを含む各種の機器であってもよい。
【0167】
幾つかの実施例では、実行可能な命令は、プログラム、ソフトウェア、ソフトウェアモジュール、スクリプト又はコードの形式で任意の形式のプログラミング言語(コンパイル若しくは解釈言語、又は宣言的又は手続き的言語を含む)で作成されてもよく、任意の形式で実装されてもよく、例えば、スタンドアロンプログラムとして実装されてもよいし、モジュール、コンポーネント、サブルーチン、又はコンピューティング環境での使用に適したその他のユニットとして実装されてもよい。
【0168】
一例として、実行可能な命令は、ファイルシステム内のファイルに対応してもよいし、他のプログラム又はデータを保持するためのファイルの一部として記憶されてもよい。例えば、ハイパーテキストマークアップ言語(HTML:Hyper Text Markup Language)のドキュメントにおける1つ又は複数のスクリプトに記憶されてもよいし、言及されるプログラム専用の単一のファイルに記憶されてもよいし、複数の協調ファイル(例えば、1つ又は複数のモジュール、サブプログラム又はコードセクションを記憶するためのファイル)に記憶されてもよい。
【0169】
一例として、実行可能な命令は、1つのコンピュータ装置に実装されて実行されてもよいし、1つの場所に配置された複数のコンピュータ装置で実行されてもよいし、複数の場所に分散され、且つ通信ネットワークを介して相互に接続された複数のコンピュータ装置で実行されてもよい。
【0170】
上述したように、本発明の実施例では、ユーザが第1の仮想キャラクタを制御して敵対陣営にある第2の仮想キャラクタに対して攻撃を行う必要がある場合、端末装置は、同一の陣営にある第1の仮想キャラクタ及び少なくとも1つのチームメイトキャラクタの仮想シーンにおける位置関係により、連合攻撃スキルを発動するようにトリガすることで、連合攻撃スキルのトリガメカニズムを簡略化することができるため、端末装置が消費する計算リソースを低減させることができる。
【0171】
以上は、単に本発明の例示的な実施例を説明し、本発明を制限するものではない。本発明の主旨及び原則の範囲内で行われる変更、均等的な置換、改良などは、本発明の保護範囲内に含まれる。
図1A
図1B
図2
図3
図4A
図4B
図4C
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14