(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023087059
(43)【公開日】2023-06-22
(54)【発明の名称】コンピュータシステム、ゲームシステム、ゲーム実行制御方法及びプログラム
(51)【国際特許分類】
A63F 13/67 20140101AFI20230615BHJP
A63F 13/55 20140101ALI20230615BHJP
A63F 13/79 20140101ALI20230615BHJP
A63F 13/69 20140101ALI20230615BHJP
A63F 13/35 20140101ALI20230615BHJP
【FI】
A63F13/67
A63F13/55
A63F13/79
A63F13/69 510
A63F13/35
【審査請求】有
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2023076155
(22)【出願日】2023-05-02
(62)【分割の表示】P 2018173718の分割
【原出願日】2018-09-18
(71)【出願人】
【識別番号】000134855
【氏名又は名称】株式会社バンダイナムコエンターテインメント
(74)【代理人】
【識別番号】100124682
【弁理士】
【氏名又は名称】黒田 泰
(74)【代理人】
【識別番号】100104710
【弁理士】
【氏名又は名称】竹腰 昇
(74)【代理人】
【識別番号】100090479
【弁理士】
【氏名又は名称】井上 一
(72)【発明者】
【氏名】倉田 大光
(57)【要約】
【課題】マルチプレイゲームにおけるプレーヤ間の技量の差に起因する問題を低減させるための新しい技術の提供。
【解決手段】各プレーヤが自身の操作対象のキャラクタに基づくゲーム画像を見ながら当該キャラクタを操作してキャラクタ間で戦い、所与のゲーム終了条件を満たすまで繰り広げられた戦いの結果に基づき最終的な勝者を決するゲームを実行するにあたり、今までのプレイ成果に基づいて、各プレーヤの操作対象キャラクタ4の中から選択キャラクタ8を選択し、プレイ成果に影響を与え得るNPC6を出現させ、選択キャラクタ8に近づける制御を行う。
【選択図】
図6
【特許請求の範囲】
【請求項1】
各プレーヤが自身の操作対象のキャラクタに基づくゲーム画像を見ながら当該キャラクタを操作してキャラクタ間で戦い、所与のゲーム終了条件を満たすまで繰り広げられた戦いの結果に基づき最終的な勝者を決するゲームを実行するためのコンピュータシステムであって、
各プレーヤの操作対象のキャラクタには、誘引度を示す情報および誘引範囲が設定されており、
今までのプレイ成果及び前記誘引度に基づいて、各プレーヤの操作対象のキャラクタの中から選択キャラクタを選択するキャラクタ選択手段と、
今後の前記プレイ成果に影響を与え得るNPC(ノンプレイヤブルキャラクタ)を出現させる制御を行うNPC出現制御手段と、
前記選択キャラクタの前記誘引範囲内にいる前記NPCを前記選択キャラクタに近づけるように移動制御するNPC移動制御手段と、
を備えるコンピュータシステム。
【請求項2】
各プレーヤが自身の操作対象のキャラクタに基づくゲーム画像を見ながら当該キャラクタを操作してキャラクタ間で戦い、所与のゲーム終了条件を満たすまで繰り広げられた戦いの結果に基づき最終的な勝者を決するゲームを実行するためのコンピュータシステムであって、
各プレーヤの操作対象のキャラクタには、視界が設定されており、
今までのプレイ成果に基づいて、各プレーヤの操作対象のキャラクタの中から選択キャラクタを選択するキャラクタ選択手段と、
今後の前記プレイ成果に影響を与え得るNPC(ノンプレイヤブルキャラクタ)を出現させる制御を行うNPC出現制御手段と、
前記選択キャラクタの視界の外にいる前記NPCを前記選択キャラクタに近づけるように移動制御するNPC移動制御手段と、
を備えるコンピュータシステム。
【請求項3】
前記戦いは、前記プレーヤが操作対象のキャラクタを操作して他のキャラクタにダメージを与えて撃破することが可能な戦闘であり、
前記ゲームは、撃破された回数が最も少ないキャラクタ、ダメージ量が最も少ないキャラクタ、および、所与のゲーム終了時間まで撃破されなかったキャラクタ、のうちの何れかのキャラクタを前記最終的な勝者とするゲームである、
請求項1又は2に記載のコンピュータシステム。
【請求項4】
前記NPC出現制御手段は、出現させる前記NPCを、前記選択キャラクタに比べて戦闘能力及び/又は移動能力の低いキャラクタとする、
請求項3に記載のコンピュータシステム。
【請求項5】
前記プレイ成果を更新するプレイ成果更新手段であって、前記NPCの撃破に対する前記プレイ成果の更新量を、前記プレイ成果が所与の優等条件を満たすプレーヤに比べて、前記優等条件を満たさないプレーヤの方を大きくして前記プレイ成果を更新するプレイ成果更新手段、
を更に備えた請求項3又は4に記載のコンピュータシステム。
【請求項6】
前記キャラクタ選択手段は、前記選択キャラクタの選択をゲーム中に複数回行い、
前記NPC出現制御手段は、前記キャラクタ選択手段によって前記選択キャラクタが選択される度に、新たな前記NPCを出現させる制御を行う、
請求項1~5の何れか一項に記載のコンピュータシステム。
【請求項7】
前記プレイ成果は、1)過去のゲームプレイのプレイ成果、2)今回のゲームプレイにおける今までのプレイ成果、3)過去のゲームプレイのプレイ成果と今回のゲームプレイにおける今までのプレイ成果との合計、の何れかである、
請求項1~6の何れか一項に記載のコンピュータシステム。
【請求項8】
前記キャラクタ選択手段は、前記プレイ成果に基づいて、今回のゲームに参加しているプレーヤの優劣を判定し、a)所与の劣等条件を満たすプレーヤの操作対象のキャラクタを前記選択キャラクタとして選択する、或いは、b)前記劣等条件を満たすプレーヤの操作対象のキャラクタを選択する選択確率を、前記劣等条件を満たさないプレーヤの操作対象のキャラクタに比べて高確率とした抽選を行って前記選択キャラクタを選択する、
請求項1~7の何れか一項に記載のコンピュータシステム。
【請求項9】
前記コンピュータシステムは、前記プレーヤのプレーヤ端末と通信接続されるサーバシステムである、
請求項1~8の何れか一項に記載のコンピュータシステム。
【請求項10】
請求項9に記載のコンピュータシステムである前記サーバシステムと、
前記プレーヤ端末と、
を具備するゲームシステム。
【請求項11】
各プレーヤが自身の操作対象のキャラクタに基づくゲーム画像を見ながら当該キャラクタを操作してキャラクタ間で戦い、所与のゲーム終了条件を満たすまで繰り広げられた戦いの結果に基づき最終的な勝者を決するゲームの実行をコンピュータシステムが制御するためのゲーム実行制御方法であって、
各プレーヤの操作対象のキャラクタには、誘引度を示す情報および誘引範囲が設定されており、
今までのプレイ成果及び前記誘引度に基づいて、各プレーヤの操作対象のキャラクタの中から選択キャラクタを選択するキャラクタ選択ステップと、
今後の前記プレイ成果に影響を与え得るNPC(ノンプレイヤブルキャラクタ)を出現させる制御を行うNPC出現制御ステップと、
前記選択キャラクタの前記誘引範囲内にいる前記NPCを前記選択キャラクタに近づけるように移動制御するNPC移動制御ステップと、
を含むゲーム実行制御方法。
【請求項12】
各プレーヤが自身の操作対象のキャラクタに基づくゲーム画像を見ながら当該キャラクタを操作してキャラクタ間で戦い、所与のゲーム終了条件を満たすまで繰り広げられた戦いの結果に基づき最終的な勝者を決するゲームの実行をコンピュータシステムが制御するためのゲーム実行制御方法であって、
各プレーヤの操作対象のキャラクタには、視界が設定されており、
今までのプレイ成果に基づいて、各プレーヤの操作対象のキャラクタの中から選択キャラクタを選択するキャラクタ選択ステップと、
今後の前記プレイ成果に影響を与え得るNPC(ノンプレイヤブルキャラクタ)を出現させる制御を行うNPC出現制御ステップと、
前記選択キャラクタの視界の外にいる前記NPCを前記選択キャラクタに近づけるように移動制御するNPC移動制御ステップと、
を含むゲーム実行制御方法。
【請求項13】
各プレーヤが自身の操作対象のキャラクタに基づくゲーム画像を見ながら当該キャラクタを操作してキャラクタ間で戦い、所与のゲーム終了条件を満たすまで繰り広げられた戦いの結果に基づき最終的な勝者を決するゲームの実行制御をコンピュータシステムに行わせるためのプログラムであって、
各プレーヤの操作対象のキャラクタには、誘引度を示す情報および誘引範囲が設定されており、
今までのプレイ成果及び前記誘引度に基づいて、各プレーヤの操作対象のキャラクタの中から選択キャラクタを選択するキャラクタ選択手段、
今後の前記プレイ成果に影響を与え得るNPC(ノンプレイヤブルキャラクタ)を出現させる制御を行うNPC出現制御手段、
前記選択キャラクタの前記誘引範囲内にいる前記NPCを前記選択キャラクタに近づけるように移動制御するNPC移動制御手段、
として前記コンピュータシステムを機能させるためのプログラム。
【請求項14】
各プレーヤが自身の操作対象のキャラクタに基づくゲーム画像を見ながら当該キャラクタを操作してキャラクタ間で戦い、所与のゲーム終了条件を満たすまで繰り広げられた戦いの結果に基づき最終的な勝者を決するゲームの実行制御をコンピュータシステムに行わせるためのプログラムであって、
各プレーヤの操作対象のキャラクタには、視界が設定されており、
今までのプレイ成果に基づいて、各プレーヤの操作対象のキャラクタの中から選択キャラクタを選択するキャラクタ選択手段、
今後の前記プレイ成果に影響を与え得るNPC(ノンプレイヤブルキャラクタ)を出現させる制御を行うNPC出現制御手段、
前記選択キャラクタの視界の外にいる前記NPCを前記選択キャラクタに近づけるように移動制御するNPC移動制御手段、
として前記コンピュータシステムを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゲームを実行するためのコンピュータシステム等に関する。
【背景技術】
【0002】
各プレーヤが自身の操作対象のキャラクタに基づくゲーム画像を見ながら当該キャラクタを操作してキャラクタ間で戦い、所与のゲーム終了条件を満たすまで繰り広げられた戦いの結果に基づき最終的な勝者を決するゲームジャンルが知られている。例えば、レースゲームや、バトルロイヤルゲームと呼ばれるゲームがその良い例である(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
こうしたゲームでは、プレーヤの技量の差が如実にプレイ成果に表れる。それ故に、低技量のプレーヤのゲーム離れという問題を抱えやすい。例えば、バトルロイヤルゲームであれば、高技量のプレーヤは他のプレーヤを大勢倒し、多くのプレイ成果を獲得し、バトルロイヤルの醍醐味を文字通り味わい尽くすことができる。しかし、低技量のプレーヤは、高技量のプレーヤの餌食となることの方が多い。低技量のプレーヤは、満足なプレイ成果を得ることもできずゲーム体験も乏しいものとなる傾向にある。故に、何度かプレイするものの、乏しいプレイ成果や、不満足なゲーム体験しか得られないことが続くと、低技量のプレーヤは、バトルロイヤルの面白さを感じることができる前に嫌になってプレイしなくなってしまう。
【0005】
プレーヤの技量の差に起因するプレイ成果の差を無くす究極的な方法は、技量が同じプレーヤ同士のみしかマッチングしないことである。しかし、マッチングは出来る限り短時間で行うことが求められ、技量が同じプレーヤ同士が所定人数揃うことは稀である。そのため、技量の差がありながらも許容する差であればマッチングをしてしまう手法が一般的に採用されている。つまり、マルチプレイゲームにおいてプレーヤ間に技量の差が生じることはやむを得ないと言える。
【0006】
また、低技量のプレーヤをどのようにサポートするかは、ゲームの種類によって種々の技術が考えられる。例えば、バトルロイヤルゲームのように、プレーヤ自らが攻撃対象を見つけ出す必要があるゲームでは、攻撃対象を見つけるコツを掴むことが重要となるが、低技量のプレーヤはそのコツを掴めていない場合が多く、これを如何にサポートできるかが重要となる。
【0007】
本発明は、こうした背景に基づいて考案されたものであり、マルチプレイゲームにおけるプレーヤ間の技量の差に起因する問題を低減させるための新しい技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
上述した課題を解決するための第1の発明は、各プレーヤが自身の操作対象のキャラクタに基づくゲーム画像を見ながら当該キャラクタを操作してキャラクタ間で戦い、所与のゲーム終了条件を満たすまで繰り広げられた戦いの結果に基づき最終的な勝者を決するゲームを実行するためのコンピュータシステムであって、
今までのプレイ成果に基づいて、各プレーヤの操作対象のキャラクタの中から選択キャラクタを選択するキャラクタ選択手段(例えば、
図1の制御基板1150、
図11のサーバ処理部200s、ゲーム管理部210、キャラクタ選択部222、
図18のステップS50、
図19のステップS108)と、
今後の前記プレイ成果に影響を与え得るNPC(ノンプレイヤブルキャラクタ)を出現させる制御を行うNPC制御手段(例えば、
図1の制御基板1150、
図11のサーバ処理部200s、ゲーム管理部210、NPC制御部224、
図16のステップS42、
図17のステップS72)と、を備えたコンピュータシステムである。
【0009】
ここで言う「コンピュータシステム」とは、単数のコンピュータは勿論、複数のコンピュータが連携して実現されるものでもよい。
【0010】
第1の発明によれば、今までのプレイ成果に基づいて各プレーヤの操作対象のキャラクタの中から選択キャラクタを選択することと、今後のプレイ成果に影響を与え得るNPCを出現させることができる。プレーヤは、出現されたNPCを攻撃したり、NPCと競うことで、高技量のプレーヤと競う場合に比べて、比較的容易にプレイ成果を獲得し、高技量のプレーヤと競うときよりもプレイしている実感のあるゲーム体験を得ることができる可能性が高くなる。第1の発明に係る技術は従来にない新しい技術である。
【0011】
第2の発明は、前記戦いは、前記プレーヤが操作対象のキャラクタを操作して他のキャラクタにダメージを与えて撃破することが可能な戦闘であり、前記ゲームは、撃破された回数が最も少ないキャラクタ、ダメージ量が最も少ないキャラクタ、および、所与のゲーム終了時間まで撃破されなかったキャラクタ、のうちの何れかのキャラクタを前記最終的な勝者とするゲームである、第1の発明のコンピュータシステムである。
【0012】
ここで言う「撃破」とは、ダメージ量に基づいて、当該キャラクタが倒された、破壊された、消去された、無効化された、などと見なされ、当該キャラクタがそれ以降のゲーム内での行動を不能になることである。
第2の発明によれば、第1の発明と同様の効果を、例えばバトルロイヤルのゲームに好適に発揮させることができる。
【0013】
第3の発明は、前記NPC制御手段が、前記NPCを、前記選択キャラクタに比べて戦闘能力及び/又は移動能力の低いキャラクタとする、第2の発明のコンピュータシステムである。
【0014】
第3の発明によれば、NPCを相対的に弱いキャラクタとすることで、選択キャラクタが当該NPCを撃破し易くなる。
【0015】
第4の発明は、前記プレイ成果を更新するプレイ成果更新手段であって、前記NPCの撃破に対する前記プレイ成果の更新量を、前記プレイ成果が所与の優等条件を満たすプレーヤに比べて、前記優等条件を満たさないプレーヤの方を大きくして前記プレイ成果を更新するプレイ成果更新手段(例えば、
図1の制御基板1150、
図11のサーバ処理部200s、ゲーム管理部210、プレイ成果更新部226、
図14のプレイ成果ポイント735、
図16のステップS22)、を更に備えた第2又は第3の発明のコンピュータシステムである。
【0016】
ここで言う「優等条件」とは、例えば、高技量のプレーヤと見なす条件である。
第4の発明によれば、プレイ成果を算定する際に、同じ結果に応じたプレイ成果の更新量を、優等条件を満たすプレーヤの更新量よりも、優等条件を満たさないプレーヤの方を大きくすることで、低技量のプレーヤでも、プレイ成果を獲得し易くできる。
【0017】
第5の発明は、前記キャラクタ選択手段が、前記選択キャラクタの選択をゲーム中に複数回行い、前記NPC制御手段は、前記キャラクタ選択手段によって前記選択キャラクタが選択される度に、新たな前記NPCを出現させる制御を行う、第1~第4の何れかの発明のコンピュータシステムである。
【0018】
また、第6の発明は、前記キャラクタ選択手段が、各プレーヤの操作対象のキャラクタのうち、撃破されていないキャラクタの中から前記選択キャラクタを選択することを、ゲーム中に複数回行い、前記NPC制御手段は、前記キャラクタ選択手段によって前記選択キャラクタが選択される度に、新たな前記NPCを出現させる制御を行う、第2~第4の何れかの発明のコンピュータシステムである。
【0019】
第5又は第6の発明によれば、選択キャラクタがゲーム中に複数回選択される都度に、NPCを出現させることができる。よって、ゲーム開始以降、何度も本願発明の効果を発揮させることができる。
【0020】
第7の発明は、前記NPC制御手段が、新たな前記NPCをゲーム空間に新たに配置することで前記ゲーム空間に出現させる制御を行うことと、前記ゲームの開始時の参加プレーヤの人数と、今回のゲームにおける今までに前記ゲーム空間に出現させた前記NPCの数との合計が所与の数的条件を満たした場合には、新たな前記NPCを前記ゲーム空間に出現させることを停止することと、を行う、第6の発明のコンピュータシステムである。
【0021】
第7の発明によれば、ゲームの開始時の参加プレーヤの人数と、今回のゲームにおける今までにゲーム空間に出現させたNPCの数との合計が所与の数的条件を満たすようにNPCを出現させる数を管理できる。従って、例えば、NPCの出現によりゲームバランスが崩れるのを防ぎ、NPCが出現していることをプレーヤに気付き難くすることができる。
【0022】
第8の発明は、前記ゲームが、時間の経過とともにキャラクタの移動可能範囲が狭まるゲームであり、前記NPC制御手段は、前記移動可能範囲が所与のサイズ条件を満たした場合には、新たな前記NPCを出現させることを停止すること、を行う、第6の発明のコンピュータシステムである。
【0023】
第8の発明によれば、移動可能範囲内におけるNPCの面積当たりの密度を適切に調整し、NPCが出現していることをプレーヤに気付き難くすることができる。
【0024】
第9の発明は、前記NPC制御手段が、前記選択キャラクタの視界外から視界内に前記NPCを移動させることで、前記選択キャラクタの視界内に前記NPCを出現させる、第1~第8の何れかの発明のコンピュータシステムである。
【0025】
第9の発明によれば、NPCを選択キャラクタの視界内に入れるように移動させることで、NPCを出現させることができる。
【0026】
第10の発明は、前記プレイ成果が、1)過去のゲームプレイのプレイ成果、2)今回のゲームプレイにおける今までのプレイ成果、3)過去のゲームプレイのプレイ成果と今回のゲームプレイにおける今までのプレイ成果との合計、の何れかである、第1~第9の何れかの発明のコンピュータシステムである。
【0027】
第10の発明によれば、過去のゲームプレイのプレイ成果に基づけば、過去の実績重視で選択キャラクタを選択できる。今回のゲームプレイにおける今までのプレイ成果に基づけば、その時々のゲームプレイにおけるゲームの進行状況に応じて適切な選択キャラクタを選択できる。過去のゲームプレイのプレイ成果と今回のゲームプレイにおける今までのプレイ成果との合計に基づけば、それら両方のメリットを得られる。
【0028】
低技量のプレーヤを推定する方法は、適宜採用することができる。
例えば、第11の発明として、前記プレイ成果には、操作対象のキャラクタの移動距離の情報を少なくとも含む、第1~第10の何れかの発明のコンピュータシステムを構成することができる。
【0029】
第11の発明によれば、操作対象の移動距離の情報がプレイ成果に含まれることから、この移動距離の情報に基づいて選択キャラクタを選択することができる。詳細は後述するが、低技量のプレーヤは、高技量のプレーヤに比べて、操作対象のキャラクタを移動させる距離が短いという知見が得られた。この知見に基づいて選択キャラクタを選択することで、低技量のプレーヤが操作しているキャラクタを選択キャラクタとして選択できる確度を向上させることができる。
【0030】
第12の発明は、前記キャラクタ選択手段が、前記プレイ成果に基づいて、今回のゲームに参加しているプレーヤの優劣を判定し、a)所与の劣等条件を満たすプレーヤの操作対象のキャラクタを前記選択キャラクタとして選択する、或いは、b)前記劣等条件を満たすプレーヤの操作対象のキャラクタを選択する選択確率を、前記劣等条件を満たさないプレーヤの操作対象のキャラクタに比べて高確率とした抽選を行って前記選択キャラクタを選択する、第1~第11の何れかの発明のコンピュータシステムである。
【0031】
劣等条件を満たすプレーヤは、言うなれば相対的に低技量と見なせるプレーヤである。
第12の発明によれば、所与の劣等条件を満たすプレーヤの操作対象のキャラクタを選択キャラクタとして選択すること、操作対象のキャラクタを選択する選択確率を、劣等条件を満たさないプレーヤの操作対象のキャラクタに比べて高確率とした抽選を行って選択キャラクタを選択すること、を実現できる。
【0032】
第13の発明は、前記キャラクタ選択手段が、所定の非選択条件を満たすキャラクタを除き、前記非選択条件を満たさないキャラクタの中から前記選択キャラクタを選択する、第1~第12の何れかの発明のコンピュータシステムである。
【0033】
第13の発明によれば、選択キャラクタの選択に関し、選択キャラクタとして選ばれない条件すなわち非選択条件を適宜設定することで、NPCの出現を適切に調整できるようになる。
【0034】
第14の発明は、前記NPC制御手段が、出現させる前記NPCを、前記選択キャラクタに基づいて変更する、第1~第13の何れかの発明のコンピュータシステムである。
【0035】
第14の発明によれば、出現させるNPCに多様性を持たせることができる。
【0036】
第15の発明は、前記NPC制御手段が、前記NPCの制御内容を、前記選択キャラクタに基づいて変更する、第1~第14の何れかの発明のコンピュータシステムである。
【0037】
第15の発明によれば、出現されたNPCの行動に多様性を持たせることができる。
【0038】
第16の発明は、前記NPC制御手段が、前記選択キャラクタを操作するプレーヤの前記プレイ成果、及び/又は、前記選択キャラクタの種類、に基づいて前記NPCの制御内容を変更する、第15の発明のコンピュータシステムである。
【0039】
第16の発明によれば、NPCの制御内容を、選択キャラクタを操作するプレーヤのプレイ成果や、選択キャラクタの種類、に応じて変えることで多様性を持たせることができる。例えば、選択キャラクタを操作するプレーヤのプレイ成果が低ければ、NPCを比較的弱いキャラクタのように制御する制御内容とすることで、プレーヤの技量に合わせたNPCの制御を実現できる。
【0040】
第17の発明は、前記コンピュータシステムは、前記プレーヤのプレーヤ端末と通信接続されるサーバシステムである、第1~第16の何れかの発明のコンピュータシステムである。
【0041】
第17の発明によれば、第1~第16の何れかの発明と同様の効果が得られるサーバシステムを実現できる。
【0042】
第18の発明は、第17の発明のコンピュータシステムである前記サーバシステムと、
前記プレーヤ端末と、を具備するゲームシステムである。
【0043】
第18の発明によれば、第1~第16の何れかの発明と同様の効果が得られるゲームシステムを実現できる。
【図面の簡単な説明】
【0044】
【
図3】NPCをゲーム空間に配置する数と配置するタイミングを説明するための図。
【
図4】NPCの配置と制御係る重要なパラメータについて説明するための図。
【
図5】作キャラクタに設定される範囲の例を説明するための図。
【
図6】NPCの移動制御について説明するための図(その1)。
【
図7】NPCの移動制御について説明するための図(その2)。
【
図8】NPCの移動制御について説明するための図(その3)。
【
図9】NPCの移動制御について説明するための図(その4)。
【
図10】NPCの攻撃行動の制御について説明するための図。
【
図11】サーバシステムの機能構成例を示す機能ブロック図。
【
図12】サーバ記憶部が記憶するプログラムやデータの例を示す図。
【
図14】操作対象キャラクタ管理データのデータ構成例を示す図。
【
図15】ユーザ端末の機能構成の一例を示す機能ブロック図。
【
図16】1ゲームプレイに係るサーバシステムにおける処理の流れについて説明するためのフローチャート。
【
図18】NPC配置制御処理の流れを説明するためのフローチャート。
【
図19】NPC行動制御処理の流れを説明するためのフローチャート。
【発明を実施するための形態】
【0045】
以下、本発明の実施形態の例を説明するが、本発明を適用可能な形態が以下の実施形態に限られないことは勿論である。
【0046】
図1は、本実施形態におけるゲームシステムの構成の一例を示す図である。本実施形態のゲームシステム1000は、通信回線9に接続することで相互にデータ通信が可能なサーバシステム1100及び複数のユーザ端末1500(1500a,1500b,…)を含むコンピュータシステムであり、ゲームコンテンツ(或いはゲームアプリケーションとも呼ばれる)を提供するコンテンツ提供システムである。
【0047】
通信回線9は、データ通信が可能な通信路を意味する。すなわち、通信回線9とは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLAN(Local Area Network)の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線/無線を問わない。
【0048】
サーバシステム1100は、本体装置1101と、キーボード1106と、タッチパネル1108と、ストレージ1140とを有し、本体装置1101には制御基板1150を搭載する。
【0049】
制御基板1150には、CPU(Central Processing Unit)1151やGPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などの各種マイクロプロセッサ、VRAMやRAM,ROM等の各種ICメモリ1152、通信装置1153が搭載されている。なお、制御基板1150の一部又は全部は、ASIC(Application Specific Integrated Circuit)や、FPGA(Field-Programmable Gate Array)、SoC(System on a Chip)により実現するとしてもよい。
【0050】
そして、サーバシステム1100は、制御基板1150が所定のプログラム及びデータに基づいて演算処理することにより、1)ユーザ登録等に係るユーザ管理機能と、2)登録ユーザであるプレーヤ2(2a,2b,…)がユーザ端末1500(1500a,1500b,…)でゲームプレイするのに必要なデータを提供してユーザ端末1500(1500a,1500b,…)でのゲームの実行制御を管理するゲーム管理機能と、3)ゲームで利用可能な様々なアイテムをオンラインでユーザに販売するオンラインショッピング機能と、を実現する。つまり、本実施形態におけるゲームは、一種のクライアント・サーバ型のオンラインゲームとして実現される。
【0051】
なお、サーバシステム1100は単体として記しているが、各機能を分担する複数のブレードサーバを搭載して相互に内部バスを介してデータ通信可能に接続した構成であっても良い。或いは、離れた場所に設置された独立した複数のサーバを、通信回線9を介してデータ通信させることで、全体としてサーバシステム1100として機能させる構成であっても良い。
【0052】
ユーザ端末1500(1500a,1500b,…)は、プレーヤ2(2a,2b,…)がゲームプレイのために個別に使用するコンピュータシステムであって、通信回線9を介してサーバシステム1100にアクセスしてオンラインゲームを実行できる電子装置(電子機器)であり、機能的に言えばゲーム装置となるものである。本実施形態のユーザ端末1500は、いわゆるスマートフォンと呼ばれる装置であるが、携帯型ゲーム装置や、ゲームコントローラ、パソコン、タブレット型コンピュータ、ウェアラブルコンピュータ、家庭用ゲーム装置、業務用ゲーム装置などでもよい。
【0053】
図2は、本実施形態におけるユーザ端末1500の構成例を示す正面図である。
ユーザ端末1500は、方向入力キー1502と、ボタンスイッチ1504と、画像表示デバイス兼接触位置入力デバイスとして機能するタッチパネル1506と、スピーカ1510と、内蔵バッテリー1509と、マイク1512と、イメージセンサユニット1520と、制御基板1550と、コンピュータ読み出し可能な記憶媒体であるメモリカード1540からデータを読み書きできるメモリカード読取装置1542と、を備える。その他、図示されていない電源ボタン、音量調節ボタン等が設けられている。また、ゲームプレイの対価の支払いが可能なICカード型のクレジットカードやプリペイドカードに対して非接触にデータの読み書きが行えるICカード読取装置などを設けるとしてもよい。
【0054】
制御基板1550は、CPU1551やGPU,DSPなどの各種マイクロプロセッサ、VRAMやRAM,ROM等の各種ICメモリ1552、通信回線9に接続する携帯電話基地局や無線LAN基地局などと無線通信するための無線通信モジュール1553、インターフェース回路1557などを搭載する。
【0055】
インターフェース回路1557には、タッチパネル1506のドライバ回路、方向入力キー1502及びボタンスイッチ1504からの信号を受信する回路、スピーカ1510へ音声信号を出力する出力アンプ回路、マイク1512で集音した音声の信号を生成する入力信号生成回路、イメージセンサユニット1520で撮影された画像の画像データを入力する回路、メモリカード読取装置1542への信号入出力回路、などが含まれている。
【0056】
制御基板1550に搭載されているこれらの要素は、バス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。なお、制御基板1550の一部又は全部をASICやFPGA、SoCにて構成してもよい。そして、制御基板1550は、本実施形態のゲームのユーザ端末としての機能を実現させるためのプログラムや各種データをICメモリ1552に記憶する。
【0057】
なお、本実施形態では、ユーザ端末1500はクライアントプログラムや各種設定データをサーバシステム1100からダウンロードする構成としているが、別途入手したメモリカード1540などの記憶媒体から読み出す構成としても良い。
【0058】
[ゲームの説明]
本実施形態は、多人数同時参加型のオンライン対戦ゲームであって、各プレーヤが自身の操作対象のキャラクタに基づくゲーム画像を見ながら当該キャラクタを操作してキャラクタ間で戦い、所与のゲーム終了条件を満たすまで繰り広げられた戦いの結果に基づき最終的な勝者を決するゲームである。戦いは、プレーヤが操作対象のキャラクタを操作して他のキャラクタを攻撃して撃破することが可能な戦闘とし、撃破された回数が最も少ないキャラクタを最終的な勝者とするゲームとする。
【0059】
具体的には、1つの仮想3次元空間に構成されたゲーム空間に、最大参加人数X人(Xは、例えば100以上の整数)のプレーヤ別に操作対象キャラクタを登場させる。そして、ゲーム空間内に既に配置されている、或いはゲーム進行に応じて新たに配置される武器や防具を入手しつつ、最後の1人になるまで戦うゲーム、いわゆるバトルロイヤルゲームである。操作対象キャラクタは、1度撃破されるとゲーム終了までプレイできないゲームルールとする。
【0060】
なお、ここで言う「撃破」とは、キャラクタが受けたダメージ量に基づいて、それ以降のゲーム内での行動を不能になった、無効化されたなどと見なされることである。よって、ゲーム内容や行動不能な状態の表現によっては、「破壊」「消去」「無効化」「帰還」「沈没」「コースアウト」などと同義となる。
【0061】
さて、ゲーム空間には、操作対象キャラクタを含む全キャラクタがゲームプレイとして使用可能な範囲である「移動可能範囲」が設定されている。
「移動可能範囲」は、ゲーム空間内でその境界が明示される。移動可能範囲の中は、操作対象キャラクタを含む全キャラクタが移動可能であるが、移動可能範囲の外には出られない。又は、範囲外に居るキャラクタは、自動的且つ強制的に範囲内に移動される、又は範囲外に居ると、時間と共にキャラクタがダメージを負うように設定されている。
【0062】
そして、移動可能範囲は、ゲーム空間に散らばっている操作対象キャラクタを強制的に集めるために用いられる。すなわち、プレイ開始当初の移動可能範囲は、ゲーム空間と略同じ大きさであるが時間経過とともに徐々に或いは段階的に狭められる。これにより、プレイ開始から時間経過ともに数が減ってゆく操作対象キャラクタの密度が適切に調整され、交戦の機会が確保される。なお、ゲーム空間と移動可能範囲とを別々に管理することとして説明するが、同一として、時間経過とともにゲーム空間が徐々に或いは段階的に狭められることとしてもよい。プレーヤにとっては、ゲーム空間と移動可能範囲とは実質同一の概念と考えられるからである。
【0063】
さて、バトルロイヤルのゲームでは、参加プレーヤは、いつでもどこでも直ぐにプレイできるのが望ましい。また、過去にプレイしたことのあるプレーヤも初心者プレーヤも一緒くたに参加することで、文字通り混沌のシチュエーションでサバイバルを仮想体験できることもバトルロイヤルのゲームの魅力である。本実施形態のバトルロイヤルのゲームの同様の仕組みとする。
【0064】
よって、本実施形態では、プレーヤ間の技量をマッチング処理で調整することはしない。しかし、それ故にプレイが進むにつれてプレーヤ間のプレイ成果には差がつきやすく、またそれに伴いゲーム体験の質にも差がつきやすい。
【0065】
相対的に低技量と推定されるプレーヤ(以下、低技量プレーヤと言う。)は、相対的に高技量と推定されるプレーヤ(以下、高技量プレーヤと言う。)の餌食となり、プレイ成果を得ることなく、或いは微々たるプレイ成果しか得られないことが多いであろう。当然、それに伴い得られるゲーム体験も不十分なものとなりやすい。
【0066】
そこで、本実施形態では、プレイに参加するキャラクタとして、プレーヤ毎の操作対象キャラクタに加えて、低技量プレーヤでも倒し易い、操作対象キャラクタを装ったNPC(ノン・プレイアブル・キャラクタ)を加える。これにより、低技量プレーヤに対してプレイ成果とゲーム体験が得られる機会を増やす、一種のサポートを行う。
【0067】
[NPCの配置と自動制御]
図3は、NPCをゲーム空間に配置する数と配置するタイミングを説明するための図である。プレイ開始前に参加者が募られる。募集人数は、公称される最大参加人数X人(Xは、例えば100以上の整数)に所定割合(例えば、0.8)を乗じた人数とされる。そして、例えば、参加プレーヤの人数がY人(Y<X)で操作対象キャラクタ4がY体となる場合、NPC6は最大で(X-Y)体配置される。言い換えると、ゲームの開始時の参加プレーヤの人数と、今回のゲームにおける今までにゲーム空間に出現させたNPC6の数との合計が所与の数的条件を満たした場合には、新たなNPC6のゲーム空間への配置は停止される。
【0068】
なお、サポート効果をより高めるために、実際には最大で(X-Y)+αだけNPC6を出現させ、プレーヤに提供される残キャラクタ数などの情報提供に当たっては、+αのNPCはそもそも含めないこととしてもよい。
【0069】
NPCがゲーム空間に新たに配置される配置タイミングは、プレイ開始以降に分散設定される。プレイ開始から所定時間t1(例えば、10分程度)が経過した後、所定のインターバル(例えば、2分)毎に、所定数(例えば、2体程度)のNPC6を新たにゲーム空間に配置することとする。そして、ゲームの後半に相当するプレイ開始から所定時間t2以降は、ランダムに設定されるインターバル(例えば、8~12分)毎に、ランダム数(例えば、1~3体)のNPC6を新たにゲーム空間に配置することとする。
【0070】
配置タイミングを分散し、且つそのインターバルを変更することで、NPC6がゲーム空間に新たに配置されていることをプレーヤに気付き難くさせる。また、ゲーム開始から所定時間t1までのインターバルを所定時間t2以降のそれよりも短くすることで、プレイ開始当初の低技量プレーヤの操作対象キャラクタ4がまだ多数残存している間には、十分な数のNPC6をゲーム空間に投入することができる。
【0071】
なお、前述のように、ゲーム空間には移動可能範囲が設定されており、プレイ開始以降、時間経過ともに自動的に狭められる。そこで、配置タイミングが到来しても、移動可能範囲が所与のサイズ条件を満たした場合には、新たなNPCを出現させることを停止する。これにより、NPC6の新たな配置をプレーヤに気づき難くさせる。
【0072】
次に、NPCの配置に係るパラメータの説明をする。
図4は、NPCを新たにゲーム空間に配置し、配置後に当該NPCをどのように制御するかに係るパラメータである、「順位」と「誘引度」について説明するための図である。NPCを新たにゲーム空間に配置し、配置後に当該NPCをどのように制御するかに係るパラメータとして、「順位」と「誘引度」を設定する。
【0073】
「順位」は、各プレーヤのプレイ成果が優れているほど上位とされる順番である。従ってプレーヤ中、最も優れたプレイ成果を上げているプレーヤが順位第1位となる。
【0074】
「プレイ成果」とするパラメータと参照期間は、適宜設定可能であるが、そのプレーヤの技量を的確に推定することができる内容を採用すると良い。本実施形態では、各プレーヤの操作対象キャラクタ4に係るパラメータのうち、他キャラクタを撃破すると付与されるポイント、ゲーム空間内における総移動距離、総付与ダメージ量、総撃破数、総操作量、を採用する。勿論、プレイ成果は、これらに限らない。これらのうち1つ又は複数に絞ってもよいし、これら以外に追加してもよい。例えば、ゲーム空間内で入手したアイテム数、アイテムの種類、被弾率、攻撃成功率、などを、プレイ成果のパラメータに追加することができる。
【0075】
プレイ成果の参照期間は、本実施形態では、今回のゲームプレイにおける今までのプレイ成果、具体的には、プレイ開始から所定時間t1(
図3参照)経過までとする。
【0076】
勿論、プレイ成果の参照期間は、これに限らず適宜設定可能である。例えば、プレイ中に順位を更新する構成では、プレイ開始から所定時間t1までと、所定時間t1から所定時間t2までの2つの参照期間を設けるとしてもよい。或いは、残存する操作対象キャラクタ4の総数が所定数に減るまでを参照期間としてもよい。
【0077】
また、過去のゲームプレイのプレイ成果を今回のゲームプレイにおける今までのプレイ成果の代わりに用いたり、過去のゲームプレイのプレイ成果と今回のゲームプレイにおける今までのプレイ成果とを合計して用いるとしてもよい。
【0078】
「誘引度」は、プレイ成果に基づいて各プレーヤの操作対象キャラクタ4に付与されるランクである。例えば、順位第1位の操作対象キャラクタ4には、誘引度「1」が付与され、順位第2位から第5位までの操作対象キャラクタ4には、誘引度「2」が付与される。以下、順位が下がる毎に誘引度の値は上がる。
【0079】
図5は、各操作対象キャラクタ4に設定される範囲の例を説明するための図である。
各操作対象キャラクタ4には、視認可能範囲10(10c,10e,…)と、視界12(12c,12e,…)と、誘引範囲14(14c,14e,…)とが設定される。
【0080】
視認可能範囲10は、操作対象キャラクタ4が他キャラクタを視認可能な範囲である。本実施形態では操作対象キャラクタ4は、仮想の人とするので、無限水平で障害物のない空間で操作対象キャラクタ4が目視できる範囲に相当する。別の言い方をすると、視認可能範囲10は、目視による索敵範囲ということができる。勿論、プレイ時には、ゲーム空間の環境条件(例えば、地形の起伏、植生、障害物(建物等)の有無、霧や煙の有無、など)によって、視認可能範囲10としての実効範囲はずっと狭くなる。
【0081】
視界12は、視認可能範囲10のうち操作対象キャラクタ4の正面を基準とした所定視野角に納まる範囲である。
【0082】
誘引範囲14は、誘引度の影響範囲である。誘引範囲14は、視認可能範囲10よりも広く設定されている。
【0083】
なお、例えば、本実施形態では視認可能範囲10と誘引範囲14は、全キャラクタで共通の所定値とする。勿論、キャラクタ毎に、例えばキャラクタの種類やアイテムの使用に応じて視認可能範囲10と誘引範囲14を可変とする構成も可能である。
【0084】
次に、新たなNPC6のゲーム空間への配置について説明する。
新たなNPC6をゲーム空間に配置する配置制御を行うには、先ず、誘引度に基づいて各プレーヤの操作対象キャラクタ4のうち、撃破されていないキャラクタの中から選択キャラクタ8を選択する。具体的には、最も誘引度の値が高い操作対象キャラクタ4のなかから選択キャラクタ8をランダムに1体選択する。
図5の例では、操作対象キャラクタ4eと操作対象キャラクタ4fは同じ誘引度を有しているが、ランダム抽選の結果、操作対象キャラクタ4eが選択キャラクタ8に選択されている。言い換えると、プレイ成果に基づいて、今回のゲームに参加しているプレーヤの優劣を判定し、所与の劣等条件を満たすプレーヤの操作対象のキャラクタを選択キャラクタとして選択する。
【0085】
或いは、選択キャラクタを選択する方法としては、劣等条件を満たすプレーヤの操作対象キャラクタ4を選択する選択確率を、劣等条件を満たさないプレーヤの操作対象キャラクタ4に比べて高確率とした抽選を行って選択キャラクタを選択するとしてもよい。
【0086】
但し、選択キャラクタ8は、所定の「非選択条件」を満たすキャラクタを除き、非選択条件を満たさないキャラクタの中から選択する。ここで言う「非選択条件」とは、別のプレーヤが操作する操作対象キャラクタ4が視界12の内に存在するキャラクタであって、別のプレーヤとの間でプレイ成果(順位でも可。)が所与の近似条件を満たすキャラクタである。
【0087】
つまり、ある操作対象キャラクタ4の視界12の内に別のプレーヤが操作するキャラクタが存在すると言うことは、当該操作対象キャラクタ4のプレーヤは、この別のプレーヤが操作するキャラクタを見つけて交戦できる可能性は高い状況にあることになる。この状況は、低技量プレーヤであっても、攻撃相手を見つけて撃破しプレイ成果を得てゲーム体験を得ることができる自然発生的な好状況である。
図5の例では、操作対象キャラクタ4fがこの好状況にある。
【0088】
よって、こうした好状況にある操作対象キャラクタ4fを選択キャラクタ8として、新たなNPC6を配置し、近づけると、むしろ好状況を崩し兼ねない。よって、こうした好状況にある操作対象キャラクタ4fは選択キャラクタ8として選択しない。
【0089】
そして、選択キャラクタ8が選択される度に、新たなNPC6をゲーム空間に配置する。
新たな配置に際しては、先ず、選択キャラクタ8の現在位置を基準として、新たなNPC6の配置位置を決定する。具体的には、選択キャラクタ8の誘引範囲14の中であるが、視認可能範囲10の外に設定する。これにより、新たなNPC6がゲーム空間に配置される瞬間をプレーヤに見られないようにする。なお、視認可能範囲10の内側でも、障害物に阻まれて選択キャラクタ8からは見えないと言った具合に、環境状況によって実効として視認できない場所は、配置位置とすることも可能である。
【0090】
次いで、新たに配置するNPC6を、選択キャラクタ8に基づいて設定する。
具体的には、選択キャラクタ8は、幾種類かのベースキャラクタをカスタマイズして作成される。新たに配置するNPC6は、選択キャラクタ8と類似しない外観を有するように設定される。より具体的には、選択キャラクタ8に用いられているベースキャラクタとは異なるベースキャラクタをランダムに選択し、性別・髪の色・髪型・肌の色などの外観的特徴がベースキャラクタとは異なるように変更して設定する。これにより、NPC6の外観に自然な外観の違いをつけて多様性を持たせるとともに、選択キャラクタ8のプレーヤが当該NPCを見つけ易くする。
【0091】
そして、設定した新たなNPC6を、先に設定した配置位置に配置する。
【0092】
次に、配置されたNPC6の自動制御について説明する。
新たに配置されたNPC6は、配置済の他のNPCと同様に自動制御される。自動制御では、視界12に存在する他キャラクタに攻撃する攻撃制御が優先され、視界12に他キャラクタが存在しなければ索敵のために移動制御される。
【0093】
そして、この移動制御において、NPC6は、移動しながら常に当該NPC6にとっての選択キャラクタ8になり得る操作対象キャラクタ4を検索する。そして、該当があれば、選択キャラクタ8に近づくように移動制御される。
【0094】
具体的には、配置済のNPC6毎に、
(1)現在位置が誘引範囲14の内にある操作対象キャラクタ4(撃破されずに残っている操作対象キャラクタ4)を検索し、
(2)検索された操作対象キャラクタ4から、当該キャラクタを選択キャラクタ8として対応づけられているNPC6の数が所定の上限数(例えば、2~3体)に達しているキャラクタを1次除外し(第1の非選択条件を満たすキャラクタを除外し)、
(3)1次除外されずに残っている検索された操作対象キャラクタ4の中から、別のプレーヤが操作するキャラクタが視界内に存在するキャラクタであり、且つ、別のプレーヤとの間でプレイ成果が所与の近似条件を満たすキャラクタを、2次除外し(第2の非選択条件を満たすキャラクタを除外し)、
(4)2次除外されずに残っている検索された操作対象キャラクタ4の中から誘引度が最も高いキャラクタを抽出し、
(5)抽出された操作対象キャラクタ4のうち最寄りのキャラクタを、選択キャラクタ8として設定し、
(6)選択キャラクタ8に近づくように移動制御する。
【0095】
言い換えると、配置済のNPC6の周囲に存在する操作対象キャラクタ4のうち、最も近く、最も誘引度が高い(大きい)(つまりは、プレーヤの推定される技量が低い)操作対象キャラクタ4を選択キャラクタ8と見なし、当該選択キャラクタ8の視界外から視界内にNPC6を移動させることで、選択キャラクタ8の視界内にNPC6を出現させる。
【0096】
従って、
図6に示すように、配置済のNPC6が、複数の操作対象キャラクタ4の誘引範囲14(14a、14c)の範囲内に位置する状況においては、相対的に誘引度が高い操作対象キャラクタ4(4c)に向かって移動制御される。
図6の例では、操作対象キャラクタ4cに向かって移動制御される。
【0097】
また、
図7に示すように、配置済のNPC6が、複数の操作対象キャラクタ4の誘引範囲14(14a、14d)の範囲内に位置する状況であって、且つその複数の操作対象キャラクタ4の誘引度が同じである状況では、最寄りの操作対象キャラクタ4(4c)に向かって移動制御される。
図7の例では、操作対象キャラクタ4cに向かって移動制御される。
【0098】
また、
図8に示すように、選択キャラクタ8の候補となる操作対象キャラクタ4(4c、4d)のうち、当該キャラクタを選択キャラクタ8として対応づけられているNPC6の数が所定の上限数(
図8の例では上限数「3」)に達している場合には、当該キャラクタ4の誘引度が最も高く、最寄りの操作対象キャラクタ4であっても、新たに選択キャラクタ8として選択されることはない。
図8の例では、制御対象とされるNPC6aの選択キャラクタ8の候補を検索する段階で、操作対象キャラクタ4cに向かって移動制御されている3体のNPC6(6b、6c、6d)が存在するので、制御対象とされるNPC6aは、次点の操作対象キャラクタ4dを選択キャラクタ8として移動制御されることとなる。
【0099】
また、
図9に示すように、別のプレーヤが操作するキャラクタ4(4c)が視界内に存在する操作対象キャラクタ4(4f)であり、且つ、別のプレーヤとの間でプレイ成果が所与の近似条件を満たすキャラクタである操作対象キャラクタ4(4f)は、選択キャラクタ8とはされない。
図9の例では、自動制御されるNPC6aの選択キャラクタ8は、最も誘引度が高く最寄りのキャラクタである操作対象キャラクタ4fとなりそうであるが、視界12fに別の操作対象キャラクタ4cが存在するので、次点の操作対象キャラクタ4dが選択キャラクタ8として選ばれている。
【0100】
そして、NPC6(
図9のNPC6a)が移動制御されている間に、当該NPC6(
図9のNPC6a)の視界12に他キャラクタ(
図9では、キャラクタ4d)が入ると、当該他キャラクタが攻撃対象として設定され、移動制御から攻撃制御に制御内容が変更されてNPC6(
図9のNPC6a)が自動制御される。
【0101】
攻撃制御においては、NPC6は、攻撃対象とされた選択キャラクタ8を含む操作対象キャラクタ4に応じて制御内容が変更される。具体的には、攻撃対象が選択キャラクタ8である場合には、当該選択キャラクタ8に比べて戦闘能力及び/又は移動能力の低いキャラクタとして制御される。
【0102】
図10は、自動制御のうち攻撃行動に関する制御内容の変更について説明するための図である。適用される誘引度と対応づけられた戦闘能力及び/又は移動能力の違いで複数の攻撃行動パターン(攻撃行動に係る制御内容の定形)が予め用意されていて、攻撃対象とされた選択キャラクタ8を含む操作対象キャラクタ4の誘引度(当該キャラクタのプレイ成果が反映されたパラメータ値)に応じた攻撃行動パターンが選択されて、自動制御に用いられる。或いは、NPC6に設定されている初期の戦闘能力及び/又は移動能力を、攻撃対象とされた選択キャラクタ8を含む操作対象キャラクタ4の誘引度に応じて増減調整した後に、攻撃行動するように自動制御するとしてもよい。
【0103】
図10(1)の例では、NPC6の選択キャラクタ8は、誘引度「1」の操作対象キャラクタ4aである。その誘引度から、プレーヤが高技量であると推定されるので、NPC6には攻撃行動パターンのうち、強敵としての戦闘能力や移動能力を発揮し得る「強敵パターン」が選択・適用される。
【0104】
一方、
図10(2)の例では、NPC6の選択キャラクタ8は、誘引度Am(>1)の操作対象キャラクタ4cである。その誘引度から、プレーヤが低技量であると推定されるので、NPC6には攻撃行動パターンのうち、弱い敵としての戦闘能力や移動能力しか発揮できない「弱敵パターン」が選択・適用される。
よって、NPC6と交戦するプレーヤの技量に応じた戦いごたえを体験できる。
【0105】
なお、NPC6に適用される攻撃行動パターンの選択は、誘引度に基づく以外にも考えられる。各攻撃行動パターンに、適用される選択キャラクタ8の種類についての条件を設定しておけば、誘引度に加えて選択キャラクタ8の種類に応じてNPC6の制御内容を変更することができる。こうした構成は、操作対象キャラクタ4やNPC6のベースキャラクタに複数種類があり、それぞれに設定されている初期戦闘能力の関係に有利不利に係る相性が生じるように設定されている場合に好適である。
【0106】
そして、操作対象キャラクタ4がNPC6を撃破した場合、当該操作対象キャラクタ4に係るプレイ成果が更新されるが、その更新量は、当該操作対象キャラクタ4のプレーヤが所与の優等条件を満たす高技量プレーヤである場合よりも、優等条件を満たさない低技量プレーヤである場合の方が大きくなるように設定されている。つまり、NPC6は、プレイ成果に影響を与え得る存在であるが、高技量プレーヤよりも低技量プレーヤにより有利な影響を与える存在として機能する。
【0107】
[機能構成の説明]
図11は、本実施形態におけるサーバシステム1100の機能構成例を示す機能ブロック図である。本実施形態におけるサーバシステム1100は、操作入力部100sと、サーバ処理部200sと、音出力部390sと、画像表示部392sと、通信部394sと、サーバ記憶部500sとを備える。
【0108】
操作入力部100sは、サーバの管理のための各種操作を入力するための手段である。
図1のキーボード1106がこれに該当する。
【0109】
サーバ処理部200sは、例えばCPUやGPU等のマイクロプロセッサや、ASIC、ICメモリなどの電子部品によって実現され、操作入力部100sやサーバ記憶部500sを含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100sからの操作入力信号、ユーザ端末1500から受信したデータ、等に基づいて各種の演算処理を実行して、サーバシステム1100の動作を統合的に制御する。
【0110】
そして、本実施形態のサーバ処理部200sは、ユーザ管理部202と、参加者受付部204と、ゲーム管理部210と、計時部288sと、音生成部290sと、画像生成部292sと、通信制御部294sとを含む。勿論、これら以外の機能部も適宜含めることができる。
【0111】
ユーザ管理部202は、ユーザ登録手続きに係る処理及びユーザアカウントに紐付けられる各ユーザのデータの管理を行う。本実施形態では、ユーザ管理部202は、
(1)登録ユーザへの固有のユーザアカウントの付与と、
(2)ユーザアカウント別に個人情報を登録管理する登録情報管理と、
(3)課金要素(本実施形態ではプレイ対価など)の支払いで消費される電子決済媒体の帳簿管理と、
(4)ゲームプレイするためのログイン及びログアウトの履歴等を管理するプレイ履歴管理と、
の各機能を有する。勿論、これら以外のアカウントに紐付けられる他のデータの管理機能、例えば、過去のプレイ成果に関するデータなども適宜含めることができる。
【0112】
参加者受付部204は、ゲーム参加者を設定する。具体的には、所定の受付時間を設け、受付期間内に所定の参加手続きをしたユーザをプレーヤとして設定する。
【0113】
ゲーム管理部210は、ゲームの実行管理に係る各種処理を行う。本実施形態のゲームは、クライアント・サーバ型のオンラインゲームなので、本実施形態のゲーム管理部210は、ユーザ端末1500と通信を行いながらゲームプレイに必要なデータを提供する制御を行う。そして、本実施形態のゲーム管理部210は、操作対象キャラクタ設定部212と、順位設定部214と、範囲設定部218と、配置タイミング決定部220と、キャラクタ選択部222と、NPC制御部224と、プレイ成果更新部226と、を有する。勿論、これら以外の機能部も適宜含むとしてもよい。
【0114】
操作対象キャラクタ設定部212は、プレーヤ別に、操作対象キャラクタ4の設定に関する処理を行う。
【0115】
順位設定部214は、操作対象キャラクタ4別に、つまりはプレーヤ別に、今までプレイしたプレイ成果に基づいて順位を設定する。具体的には、プレイ成果を表すパラメータ値(例えば、プレイ開始からの操作対象キャラクタ4の総移動距離、総付与ダメージ量、総撃破数、総操作量、など)を合計し、合計の値の大きい方から順に順位を設定する(
図4参照)。
【0116】
範囲設定部218は、移動可能範囲の制御と、操作対象キャラクタ4別に視認可能範囲10、視界12、誘引範囲14を設定し(
図5参照)、操作対象キャラクタ4の移動や姿勢に応じてそれらの範囲を逐一更新する制御と、を行う。移動可能範囲については、時間の経過とともにキャラクタの移動可能範囲が狭まるように移動可能範囲を変更する。
【0117】
配置タイミング決定部220は、新しいNPC6をゲーム空間に配置する配置タイミングを決定する(
図3参照)。
【0118】
キャラクタ選択部222は、今までプレイしたプレイ成果に基づいて、選択キャラクタ8を選択する。選択キャラクタ8の選択は、配置タイミングが到来する都度に、またNPC6の自動制御の都度に行われる。つまり、ゲーム中に複数回行われる。
【0119】
具合的には、各プレーヤの操作対象のキャラクタのうち、撃破されていないキャラクタで、且つ、非選択条件を満たさないキャラクタの中から選択キャラクタ8を選択する。非選択条件は、少なくとも、別のプレーヤが操作するキャラクタが視界内に存在するキャラクタであり、別のプレーヤとの間でプレイ成果が所与の近似条件を満たすキャラクタであること、を含む。勿論、非選択条件はゲーム内容、ゲーム演出、ゲームシステムのデザイン等に応じて適宜変更可能である。
【0120】
より具体的には、キャラクタ選択部222は、誘引度設定部223を有する。誘引度設定部223は、操作対象キャラクタ4別の順位に基づいて誘引度を設定する(
図4参照)。そして、キャラクタ選択部222は、各キャラクタの誘引度に基づいて選択キャラクタ8を選択する。言い換えると、プレイ成果に基づいて、今回のゲームに参加しているプレーヤの優劣を判定し、所与の劣等条件を満たすプレーヤの操作対象キャラクタ4を選択キャラクタ8として選択する。
【0121】
勿論、選択キャラクタ8の選択に当たっては、劣等条件を満たすプレーヤの操作対象キャラクタ4を選択する選択確率を、劣等条件を満たさないプレーヤの操作対象キャラクタ4に比べて高確率とした抽選を行って選択キャラクタ8を選択する、としてもよい。
【0122】
NPC制御部224は、NPC6に係る各種の自動制御を行う。本実施形態では、自動制御には、(1)プレイ成果に影響を与え得るNPC6をゲーム空間に配置し出現させる配置制御、(2)選択キャラクタ8に近づける移動制御、(3)出現されたNPC6に他キャラクタを攻撃させる攻撃制御、が含まれる。
【0123】
具体的には、配置制御の実行に際してNPC制御部224は、配置タイミングが到来して選択キャラクタ8が選択される度に、新たなNPCをゲーム空間に新たに配置することでゲーム空間に出現させる。そして、出現させるNPC6を、新たな配置に伴い選択された選択キャラクタ8に基づいて変更することができる。
【0124】
但し、ゲームの開始時の参加プレーヤの人数と、今回のゲームにおける今までに前記ゲーム空間に出現させたNPC6の数との合計が所与の数的条件を満たした場合には、新たなNPC6をゲーム空間に出現させることを停止する。また、移動可能範囲が所与のサイズ条件を満たした場合には、新たなNPC6を出現させることを停止する。
【0125】
移動制御の実行に際して、NPC制御部224は、選択キャラクタ8の視界外から視界内にNPC6を移動させることで、当該選択キャラクタ8の視界内に当該NPC6を出現させるようにして当該選択キャラクタ8に近づける。
【0126】
そして、攻撃制御の実行に際して、NPC制御部224は、攻撃対象とされた選択キャラクタ8を操作するプレーヤのプレイ成果、及び/又は、当該選択キャラクタ8の種類、に基づいて制御内容、例えばどのように行動するかの行動内容や行動パターンを変更する。その際、NPC6を、選択キャラクタ8に比べて戦闘能力及び/又は移動能力の低いキャラクタとして制御する。
【0127】
プレイ成果更新部226は、ゲーム進行に応じて、操作対象キャラクタ4の戦果に応じて、プレイ成果を更新する。特に、NPC6の撃破に対するプレイ成果の更新量については、プレイ成果が所与の優等条件を満たすプレーヤに比べて、当該優等条件を満たさないプレーヤの方を大きくしてプレイ成果を更新する。
【0128】
計時部288sは、システムクロックを利用して現在日時や制限時間等の計時を行う。
【0129】
音生成部290sは、音声データの生成やデコードをするICやソフトウェアの実行により実現され、サーバシステム1100のシステム管理やゲームプレイに係る操作音やBGMなどの音声データを生成或いはデコードする。そして、システム管理に関する音声信号は音出力部390sへ出力する。
【0130】
音出力部390sは、音声信号を放音する。
図1の例では本体装置1101やタッチパネル1108が備えるスピーカ(不図示)がこれに該当する。
【0131】
画像生成部292sは、サーバシステム1100のシステム管理に関する画像や、ゲーム画像(又はゲーム画像をユーザ端末1500で表示させるためのデータ)等を生成することができる。そして、システム管理に関する画像は画像表示部392sへ出力することができる。
【0132】
画像表示部392sは、画像生成部292sから入力される画像信号に基づいてシステム管理のための各種画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管(CRT)、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。
図1の例ではタッチパネル1108が該当する。
【0133】
通信制御部294sは、データ通信に係るデータ処理を実行し、通信部394sを介して外部装置とのデータのやりとりを実現する。
【0134】
通信部394sは、通信回線9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現される。
図1の例では通信装置1153が該当する。
【0135】
サーバ記憶部500sは、サーバ処理部200sにサーバシステム1100を統合的に制御させるための諸機能を実現するためのプログラムや各種データ等を記憶する。また、サーバ処理部200sの作業領域として用いられ、サーバ処理部200sが各種プログラムに従って実行した演算結果などを一時的に記憶する。この機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD-ROMやDVDなどの光学ディスク、オンラインストレージなどによって実現される。
図1の例では本体装置1101が搭載するICメモリ1152やハードディスクなどの記憶媒体、及びストレージ1140がこれに該当する。
【0136】
図12は、本実施形態におけるサーバ記憶部500sが記憶するプログラムやデータの例を示す図である。本実施形態におけるサーバ記憶部500sは、サーバプログラム501と、配信用ゲームクライアントプログラム502と、ゲーム空間初期設定データ510と、ベースキャラクタ初期設定データ520と、カスタマイズ選択肢データ522と、誘引度定義データ524と、攻撃行動パターン定義データ526と、プレイ成果更新量定義データ528と、を記憶する。
【0137】
また、サーバ記憶部500sは、ゲームに係り逐次生成・管理されるデータとして、ユーザ管理データ600と、プレイデータ700と、現在日時800と、を記憶する。サーバ記憶部500sは、その他のプログラムやデータ(例えばタイマや、カウンタ、各種フラグなど)も適宜記憶できる。
【0138】
サーバプログラム501は、サーバ処理部200sが読み出して実行することで、ユーザ管理部202と、参加者受付部204と、ゲーム管理部210としての機能を実現させるためのプログラムである(
図11参照)。
【0139】
配信用ゲームクライアントプログラム502は、ユーザ端末1500へ提供されるゲームクライアントプログラムのオリジナルである。
【0140】
ゲーム空間初期設定データ510は、ゲーム空間に係る各種初期設定データを格納する。マップデータ、背景オブジェクトのモデルデータ、アイテム初期配置データ512などを含む。アイテム初期配置データ512は、当該ゲーム空間に操作対象キャラクタ4やNPC6が使用可能なアイテムを配置する位置座標や配置数、出現条件などを定義している。プレイ開始時及びプレイ中に当該初期配置データに基づいて様々なアイテムがゲーム空間内に配置される。
【0141】
ベースキャラクタ初期設定データ520は、操作対象キャラクタ4やNPC6のベースになるキャラクタの種類毎に用意されている。
【0142】
カスタマイズ選択肢データ522は、ベースキャラクタをカスタマイズするための選択肢及びカスタマイズの結果をキャラクタの外観に反映するためのデータ、例えば、モデルデータ、テクスチャ、配色テーブルなどが含まれる。
【0143】
誘引度定義データ524は、プレイ成果に基づいて誘引度を決定するための定義データである。本実施形態では、順位の範囲と誘引度の値とを対応づけて格納するが、関数などでもよい。
【0144】
攻撃行動パターン定義データ526は、攻撃行動の内容を定めたパターン毎に用意され、当該攻撃行動を定義する各種データを格納する。1つの攻撃行動パターン定義データ526は、パターン種類、適用条件、戦闘能力値、移動能力値、パターン内容データ、などを含む。
【0145】
適用条件は、当該定義データが適用される要件を定義するデータである。少なくとも、NPC6が攻撃対象とする操作対象キャラクタ4に係る順位についての条件が含まれる。NPC6が攻撃対象とする操作対象キャラクタ4の種類(本実施形態では、カスタマイズのベースとされたベースキャラクタの種類)についての条件も含めることができる。
【0146】
プレイ成果更新量定義データ528は、プレイ成果の更新量を決定するためのデータである。例えば、プレイ成果の内容毎に、プレイ成果を上げた対象が操作対象キャラクタ4である場合に適用される第1の更新量と、プレイ成果を上げた対象がNPC6である場合に適用される第2の更新量と、を対応づけて格納する。
【0147】
ユーザ管理データ600は、登録ユーザ毎に用意され、固有の識別情報であるアカウントと紐付けられる各種データを格納する。例えば、1つのユーザ管理データ600には、固有のユーザアカウント601と、プレイ履歴データ610と、を含む。勿論、これら以外のデータも適宜含めることができる。例えば、操作対象キャラクタ4のセーブデータなどを含めることもできる。
【0148】
プレイ履歴データ610は、何時ゲームプレイをしたか、どのようなプレイ成績であったか、などを記述するデータを、プレイした時系列に格納するデータであって、ログイン/ログアウトのタイミングで自動的に更新される。過去のプレイ成果が格納されていることになる。
【0149】
プレイデータ700は、ゲームプレイ毎に用意され、そのゲーム進行状況を記述する各種データや、各キャラクタ毎の制御データなどゲーム画面の表示等に関する各種情報を格納する。1つのみ図示しているが、同時並行的に複数のプレイを管理できる構成では、同時に複数のプレイデータ700が記憶・管理されることになる。
【0150】
一つのプレイデータ700は、例えば
図13に示すように、
(1)プレイ開始からの時間経過701と、
(2)ゲーム空間のうち実質的なプレイ可能領域である移動可能範囲を定義する移動可能範囲定義データ703と、
(4)NPC6の新たな配置制御に用いるインターバルカウンタ705と、
(5)今回のプレイにおいて配置可能なNPC6の総数である総NPC配置数707と、(6)NPC配置用選択キャラクタID709と、
(7)操作対象キャラクタ管理データ710と、
(8)NPC管理データ750と、
を含む。勿論、これら以外のデータも適宜含めることができる。
【0151】
操作対象キャラクタ管理データ710は、操作対象キャラクタ4毎に用意され、当該キャラクタの最新状態を記述する各種データを格納する。1つの操作対象キャラクタ管理データ710は、例えば
図14に示すように、
(1)固有のキャラクタID711と、
(2)プレーヤアカウント712と、
(3)操作対象キャラクタ種類714と、
(4)操作対象キャラクタモデルデータ716と、
(5)位置座標720と、
(6)姿勢制御データ721と、
(7)所有アイテムリスト722と、
(8)残ヒットポイント723と、
(9)戦闘能力を定義する各種パラメータ値を格納する戦闘能力値724と、
(10)移動能力を定義する各種パラメータ値を格納する移動能力値725と、
(11)今回プレイ成果データ730と、
(12)順位740と、
(13)誘引度742と、
(14)当該キャラクタが撃破された日時を時系列に格納する被撃破日時744と、
(15)視認可能範囲10・視界12・誘引範囲14の各範囲を定義する範囲設定データ746と、
を含む。勿論、これら以外のデータも適宜含めることができる。例えば、当該操作対象キャラクタ4のプレーヤ別のユーザ端末1500にアクセスするためのユーザ端末アクセス情報なども含めることができる。
【0152】
今回プレイ成果データ730は、例えば、順位決定要素パラメータ値リスト731と、行動ログ733と、プレイ成果ポイント735と、を含み、ゲーム進行が開始されると自動的に更新される。
【0153】
順位決定要素パラメータ値リスト731は、当該選択対象キャラクの順位を決定するために参照されるパラメータ値を格納する。本実施形態では、総移動距離、総付与ダメージ量、総撃破数、総操作量、などを格納する。
【0154】
行動ログ733は、当該操作対象キャラクタ4の行動についてのログである。少なくとも、攻撃を行った場合には、攻撃対象とするキャラクタのキャラクタIDと、当該キャラクタがNPC6の場合に設定されるNPC識別フラグと、を含む。
【0155】
プレイ成果ポイント735は、プレイ開始時は「0」に初期化され、他キャラクタにダメージを与える毎、撃破する毎に、プレイ成果更新量定義データ528(
図12参照)で定義された更新量のポイントが加算される。
【0156】
図13に戻って、NPC管理データ750は、ゲーム空間に配置されるNPC6毎に用意され、当該キャラクタの最新状態を記述する各種データを格納する。1つのNPC管理データ750は、例えば、固有のキャラクタID751と、NPC6の新規作成にともない自動的に付与される偽装アカウント752と、キャラクタデータ753と、位置座標754と、姿勢制御データ755と、所有アイテムリスト756と、残ヒットポイント757と、範囲設定データ760と、戦闘能力値761と、移動能力値762と、選択キャラクタID763と、適用行動パターン種類764と、被撃破日時768と、を含む。勿論、これら以外のデータも適宜含めることができる。
【0157】
図15は、本実施形態におけるユーザ端末1500の機能構成の一例を示す機能ブロック図である。本実施形態のユーザ端末1500は、操作入力部100と、端末処理部200と、音出力部390と、画像表示部392と、通信部394と、端末記憶部500とを備える。
【0158】
操作入力部100は、プレーヤによってなされた各種の操作入力に応じた操作入力信号を端末処理部200に出力する。例えば、プッシュスイッチや、ジョイスティック、タッチパッド、トラックボール、加速度センサ、ジャイロ、CCDモジュール、などによって実現できる。
図2の方向入力キー1502や、ボタンスイッチ1504、タッチパネル1506がこれに該当する。
【0159】
端末処理部200は、例えばCPUやGPU等のマイクロプロセッサや、ICメモリなどの電子部品によって実現され、操作入力部100や端末記憶部500を含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100からの操作入力信号、サーバシステム1100から受信した各種データに基づいて各種の演算処理を実行して、ユーザ端末1500の動作を制御する。
図2の制御基板1550がこれに該当する。そして、本実施形態における端末処理部200は、ユーザ端末演算部280と、計時部288と、音生成部290と、通信制御部294と、を備える。
【0160】
ユーザ端末演算部280は、操作信号送信制御部281と、ゲーム画面表示制御部282とを含む。
【0161】
操作信号送信制御部281は、操作入力部100へなされた操作に応じて、各種データやリクエストをサーバシステム1100へ送信するための処理を実行する。
【0162】
ゲーム画面表示制御部282は、サーバシステム1100から受信した各種データに基づいてゲーム画面を表示するための制御を行う。本実施形態では、ゲーム空間画像(例えば、3DCG画像など)をサーバシステム1100にて生成する構成とするが、ゲーム空間画像をユーザ端末1500で生成する構成も可能である。その場合、ゲーム画面表示制御部282は、例えば3DCGを生成するための仮想3次元空間に配置されたオブジェクトの制御を含むこととなる。
【0163】
音生成部290は、例えばデジタルシグナルプロセッサ(DSP)や、音声合成ICなどのプロセッサ、音声ファイルを再生可能なオーディオコーデック等によって実現され、ゲーム画面表示制御部282による処理結果に基づいてゲームに係る効果音やBGM、各種操作音の音信号を生成し、音出力部390に出力する。
【0164】
音出力部390は、音生成部290から入力される音信号に基づいて効果音やBGM等を音出力する装置によって実現される。
図2のスピーカ1510がこれに該当する。
【0165】
画像表示部392は、ゲーム画面表示制御部282から入力される画像信号に基づいて各種ゲーム画像を表示する。例えば、フラットパネルディスプレイ、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。本実施形態では、
図2のタッチパネル1506がこれに該当する。
【0166】
通信制御部294は、データ通信に係るデータ処理を実行し、通信部394を介して外部装置とのデータのやりとりを実現する。通信部394は、通信回線9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現され、
図2の無線通信モジュール1553がこれに該当する。
【0167】
端末記憶部500は、端末処理部200にユーザ端末1500を統合的に制御させるための諸機能を実現するためのプログラムや、各種データ等を記憶する。また、端末処理部200の作業領域として用いられ、端末処理部200が各種プログラムに従って実行した演算結果や操作入力部100から入力される入力データ等を一時的に記憶する。こうした機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD-ROMやDVDなどの光学ディスクなどによって実現される。
図2の制御基板1550が搭載するICメモリ1552やメモリカード1540がこれに該当する。
【0168】
本実施形態の端末記憶部500は、ゲームクライアントプログラム504、を記憶する。勿論、これら以外のプログラムやデータも適宜記憶することができる。
【0169】
ゲームクライアントプログラム504は、端末処理部200が読み出して実行することによってユーザ端末演算部280としての機能を実現させるためのアプリケーションソフトウェアである。本実施形態では、サーバシステム1100から提供される配信用ゲームクライアントプログラム502(
図12参照)のコピーとする。
【0170】
なお、ゲームクライアントプログラム504は、オンラインゲームを実現する技術手法に応じて専用のクライアントプログラムであっても良いし、ウェブブラウザプログラム及びインタラクティブな画像表示を実現するプラグインなどにより構成するとしても良い。
【0171】
[動作の説明]
次に、サーバシステム1100における処理の流れについて説明する。ここで説明する処理の流れは、サーバ処理部200sがサーバプログラム501を実行することにより実現される。
【0172】
図16~
図17は、1ゲームプレイに係るサーバシステム1100における処理の流れについて説明するためのフローチャートである。
サーバシステム1100は、ゲームに参加するプレーヤを受け付け、プレーヤ別の操作対象キャラクタ4のカスタマイズを行う(ステップS10)。受け付けたプレーヤ別に、操作対象キャラクタ管理データ710が作成される。
【0173】
プレーヤの受け付けは、受付時間の終了、又は参加人数の所定数への到達により締め切られ、締め切り時における参加人数に応じて所定の数的条件を満たすように総NPC配置数707(
図13参照)を決定する(ステップS12)。例えば、数的条件として、最大参加人数X=100に対して、受付参加人数を最大95名とし、NPC6を最大5体配置するとしてもよい。この場合、受付時間終了前でも参加人数が95名に達すれば締め切りとなる。受付時間終了時でも参加人数が95名未満のY名であれば、総NPC配置数707の最大を(100-Y)に設定する。なお、サポート効果をより高めるために、実際には最大で(X-Y)+αだけNPC6を出現させ、プレーヤに提供する残キャラクタ数などの情報については、+αのNPCは含めないこととしてもよい。
【0174】
次に、サーバシステム1100は、操作対象キャラクタ4をゲーム空間に配置するとともに、それぞれの操作対象キャラクタ4に対応するユーザ端末1500からの操作入力に応じて、各操作対象キャラクタ4の動作制御を開始することで、ゲームプレイを開始させる(ステップS20)。そして、移動可能範囲の自動縮小処理と、プレイ成果の更新も開始する(ステップS22)。
【0175】
これらに伴い、プレイデータ700(
図13参照)では、時間経過701の計時が開始され、移動可能範囲定義データ703は、ゲーム空間と同サイズに設定された後に、時間経過に応じて縮小する方向へ自動更新される。また、範囲設定データ746の視界12に関する定義データも、各操作対象キャラクタ4の正面方向の変化に応じて適宜変更される。また、ゲーム空間内でアイテムを入手すれば、所有アイテムリスト722が変更され、入手したアイテムの設定によって、適宜戦闘能力値724や移動能力値725が変更される。
【0176】
また、各操作対象キャラクタ4の操作対象キャラクタ管理データ710(
図14参照)は、プレイ開始時に初期化された今回プレイ成果データ730が、例えば交戦に伴うダメージの反映処理などによって、ゲーム進行に応じた自動更新がなされる。交戦の結果、ダメージを受けたキャラクタの残ヒットポイント723は、プレイ開始時に設定された所定値からダメージ量だけ減算され、「0」になると撃破認定される。撃破認定されたキャラクタの被撃破日時744は初期設定される未定値(例えばNULL)から撃破された現在日時に変更される。
【0177】
プレイ開始以降、サーバシステム1100は、順位設定が可能になったかを監視している(ステップS30)。本実施形態では、今回のゲームプレイにおける今までのプレイ成果、具体的には、プレイ開始から所定時間t1(
図3参照)経過を監視する。
【0178】
そして、順位設定が可能になったならば(ステップS30のYES)、サーバシステム1100は、操作対象キャラクタ4別に、その時点における今回プレイ成果データ730(
図14参照)に基づいて順位740を設定し(ステップS32)、誘引度定義データ524に従って、設定された順位740に応じた誘引度742(
図14参照)を設定する(ステップS34)。そして、サーバシステム1100は、新たなNPC6の配置タイミング(
図3参照)の計時を開始する(ステップS36)。
【0179】
また、サーバシステム1100は、プレイ開始以降、新たなNPC6の配置タイミングの到来を監視している。本実施形態では、インターバルカウンタ705の計時完了をもって配置タイミング到来と判定する。そして、配置タイミングが到来し(ステップS38のYES)、且つ、新たなNPC6を配置しても、残存する操作対象キャラクタ4とNPC6とが所定の数的条件を満たすか判定する(ステップS40)。
【0180】
ここで言う「数的条件」とは、残存する操作対象キャラクタ4と、新たに配置するNPC6と、配置済で残存しているNPC6との合計とが、ある比率以上にNPC6の方が多くならないようにする第1の条件を適宜設定する。また、時間経過とともに自動縮小される移動可能範囲の単位面積当たりのNPC密度が所定の基準値を超えないようにする第2の条件を適宜設定する。勿論、これらのうち何れか一方又は両方を省略しても良いし、これら以外の条件も適宜設定することができる。
【0181】
そして、ステップS40が肯定であれば(ステップS40のYES)、サーバシステム1100はNPC配置制御処理を実行する(ステップS42)。
【0182】
図18は、NPC配置制御処理の流れを説明するためのフローチャートである。
同処理において、先ず、サーバシステム1100は、撃破されずに残存している操作対象キャラクタ4のなかから1体、選択キャラクタ8を選択し(
図4、
図5参照)、当該キャラクタのキャラクタIDをNPC配置用選択キャラクタID709(
図13参照)に設定する(ステップS50)。
【0183】
次いで、サーバシステム1100は、NPC配置用の選択キャラクタ8の視認可能範囲10の外に、新たなNPC6の配置位置を決定する(ステップS52)。これに伴い、プレイデータ700(
図13参照)には、新たなNPC管理データ750が用意される。当該ステップで決定した配置位置は、位置座標754に初期位置として設定される。
【0184】
次に、サーバシステム1100は、新たに配置するNPC6をNPC配置用の選択キャラクタ8に基づいて設定する(ステップS54)。すなわち、新たに配置するNPC6が、配置後に当該選択キャラクタ8のプレーヤに発見される可能性が高いと予想されるので、当該選択キャラクタ8とは外観的差異が目立つように、ベースキャラクタの選択と、カスタマイズの内容を決定する。例えば、選択キャラクタ8が金髪ならば赤毛、短髪ならば長髪、と言った具合である。なお、NPC配置用の選択キャラクタ8のみならず、配置位置から近い順に操作対象キャラクタ4を所定数(例えば、2~3体)選択して、それらとの差異が目立つように、決定するとしてもよい。
【0185】
そして、サーバシステム1100は、新たなNPC6を、先に決定した配置位置に配置制御し(ステップS56)、NPC配置制御処理を終了する。
【0186】
これ以降、新たに配置されたNPC6は、操作対象キャラクタ4と同様にして、交戦に伴ったダメージの反映制御や撃破認定の対象とされる。
【0187】
図17に移って、プレイ開始以降、サーバシステム1100は、配置済のNPC6が撃破されずに残存していれば、それぞれについてループAを実行して自動制御する(ステップS70~S74)。
【0188】
図19は、NPC行動制御処理の流れを説明するためのフローチャートである。
同処理において、サーバシステム1100は、先ず、処理対象とするNPC6に対応づけられている選択キャラクタ(
図13の選択キャラクタID763が示す操作対象キャラクタ4)が撃破されているかを判定し、撃破されていれば(ステップS100のYES)、対応づけをリセットする(ステップS102)。つまり、選択キャラクタID763を、未定の意味を有する所定値(例えば、NULL)に更新する。
【0189】
次に、サーバシステム1100は、処理対象とするNPC6に対応付けられている選択キャラクタ8の設定がなければ(ステップS104のNO)、処理対象とするNPC6が誘引範囲14に入っている操作対象キャラクタ4を検索する。つまり、処理対象とするNPC6を誘引する誘引キャラクタを検索する。そして、誘引キャラクタに該当する操作対象キャラクタ4が有れば(ステップS106のYES)、サーバシステム1100は、誘引キャラクタに該当する操作対象キャラクタ4の何れかから選択キャラクタ8を新たに選択して対応づけする(ステップS108;
図6~
図10参照)。しかし、誘引キャラクタに該当する操作対象キャラクタ4が無ければ(ステップS106のNO)、選択キャラクタ8の対応づけは無い状態のままとなる。
【0190】
次に、処理対象とするNPC6の視界12に他キャラクタが有れば(ステップS120のYES)、攻撃行動パターンを選択して(ステップS122)、攻撃行動させる(ステップS124)。
【0191】
具体的には、当該他キャラクタを攻撃対象と見なし、攻撃対象が選択キャラクタ8である場合には、攻撃行動パターン定義データ526(
図12参照)の中から、適用条件を満たす定義データを選択し、その戦闘能力値や移動能力値の設定、及びパターン内容データで定義されている行動パターンを適用して、攻撃対象を攻撃するように自動制御する。
【0192】
もし、攻撃対象が選択キャラクタ8でない場合は、NPC6に共通の所定の戦闘能力や移動能力値、攻撃行動パターンが採用されて攻撃行動を制御するとしてもよい。或いは、攻撃対象が選択キャラクタ8でない場合でも、攻撃行動パターン定義データ526(
図12参照)の中から、適用条件を満たす定義データを選択するとしてもよい。
【0193】
そもそも、配置済のNPC6は、選択キャラクタ8の視界12に入るように移動制御されるので、ここで言う「他キャラクタ」は、処理対象とするNPC6にとっての選択キャラクタ8である可能性が高い。よって、ステップS122~ステップS124は、制御対象とするNPC6を、その選択キャラクタ8に比べて戦闘能力及び/又は移動能力の低いキャラクタとするように自動制御することになる。
【0194】
一方、処理対象とするNPC6の視界12に他キャラクタが存在しないが(ステップS120のNO)、選択キャラクタ8の対応づけが有れば(ステップS126のYES)、サーバシステム1100は、当該NPC6に索敵移動をさせるが、対応づけられている選択キャラクタ8の視界内へ向かうように移動制御する(ステップS118)。つまり、選択キャラクタ8の視界外から視界内にNPC6を移動させることで、当該選択キャラクタ8の視界内に当該NPC6を出現させるように制御する。
【0195】
一方、処理対象とするNPC6の視界12に他キャラクタが存在せず(ステップS120のNO)、選択キャラクタ8の対応づけも無ければ(ステップS126のNO)、サーバシステム1100は、移動方向をランダムに決定して、当該方向へ所定距離或いは所定時間移動するように移動制御する(ステップS130)。
【0196】
図17に戻って、サーバシステム1100は、ステップS38~S74を所定のゲーム終了条件が満たされるまで繰り返し実行する(ステップS200のNO)。本実施形態のゲーム終了条件は、撃破されずに残存するキャラクタが1体になった場合、又は相打ちにより同時又は略同時に残存するキャラクタが0体になった場合、とする。
【0197】
そして、ゲーム終了条件が満たされたならば(ステップS200のYES)、サーバシステム1100は、撃破された回数が最も少ないキャラクタを最終的な勝者とする(ステップS202)。本実施形態では、1度の撃破によりプレイ不能となるため、撃破された回数がゼロ、すなわち撃破されていないキャラクタが最終的な勝者となる。また、被撃破日時744に基づいて、撃破される日時が遅いほど上位とするようにプレーヤにプレイ成績の序列を決定し、序列第1位を最終的な勝者とすることとしてもよい。もし、撃破された後、一定時間経過後にリスポーンするゲームルールの場合は、被撃破日時744に登録されている日時の数(=撃破された回数)に基づいて序列を決定すればよい。
【0198】
次いで、サーバシステム1100は、各ユーザ端末1500にて、それぞれの操作対象キャラクタ4のプレイ中の行動履歴を表示させて(ステップS204)、プレイ履歴データ610(
図12参照)を更新して(ステップS206)、一連の処理を終了する。
【0199】
なお、行動履歴の表示に当たっては、サーバシステム1100は、撃破についての表示ついては、撃破したキャラクタが操作対象キャラクタ4であったかNPC6であったかの識別表示を行うこととする。
【0200】
以上、本実施形態によれば、マルチプレイゲームにおいて低技量プレーヤでも十分なプレイ成果やゲーム体験を提供できる新しい技術を提供することができる。
【0201】
具体的には、プレイ成果に基づいて、低技量プレーヤにより操作されていると推定される操作対象キャラクタ4を選択キャラクタ8と見なし、NPC6をこれの視界外から視界内に入るように制御できる。
【0202】
プレーヤ自らが攻撃対象を見つけ出す必要があるゲームでは、当該相手を見つけるコツを掴むことが重要となるが、低技量プレーヤはそのコツをまだ掴めていない場合が多く、これを如何にサポートできるかが問題となる。しかし、本実施形態によれば、選択キャラクタ8よりも戦闘能力や移動能力が劣るNPC6自らが、低技量プレーヤの前に現れるので、コツを掴む前であっても、プレイ成果を上げ、ゲーム体験をする機会を得やすくなる。
【0203】
〔変形例〕
以上、本発明を適用した実施形態の一例について説明したが、本発明を適用可能な形態は上記形態に限定されるものではなく適宜構成要素の追加・省略・変更を施すことができる。
【0204】
例えば、上記実施形態では、ゲームジャンルをバトルロイヤルゲームとしたが、これに限らない。参加者のキャラクタ(プレーヤキャラクタ)のダメージ量が積算される多人数が同時参加する対戦ゲームであれば、本発明を同様に適用できる。例えば、プレーヤキャラクタは幾らダメージを受けても行動不能になることはないが、受けたダメージの積算が管理されているとして、ゲームプレイ時間終了時点において、各プレーヤキャラクタが受けたダメージの積算値に基づいて順位が決定するゲームであっても、本発明を同様に適用できる。
【0205】
また、上記実施形態では、プレイ成果として今回のゲームプレイにおける今までのプレイ成果を用いることとしたが、代わりに過去のゲームプレイのプレイ成果を用いる構成や、過去のゲームプレイのプレイ成果と今回のゲームプレイにおける今までのプレイ成果との合計、とする構成も可能である。その場合、各プレーヤのユーザ管理データ600(
図12参照)のプレイ履歴データ610に格納されているプレイ成果の情報を参照すればよい。
【符号の説明】
【0206】
2…プレーヤ
4(4a,4b,…)…操作対象キャラクタ
6…NPC
8…選択キャラクタ
10…視認可能範囲
12…視界
14…誘引範囲
200s…サーバ処理部
210…ゲーム管理部
212…操作対象キャラクタ設定部
214…順位設定部
218…範囲設定部
220…配置タイミング決定部
222…キャラクタ選択部
223…誘引度設定部
224…NPC制御部
226…プレイ成果更新部
500s…サーバ記憶部
501…サーバプログラム
502…配信用ゲームクライアントプログラム
520…ベースキャラクタ初期設定データ
522…カスタマイズ選択肢データ
524…誘引度定義データ
526…攻撃行動パターン定義データ
528…プレイ成果更新量定義データ
700…プレイデータ
703…移動可能範囲定義データ
707…総NPC配置数
709…NPC配置用選択キャラクタID
710…操作対象キャラクタ管理データ
724…戦闘能力値
725…移動能力値
730…プレイ成果データ
731…順位決定要素パラメータ値リスト
735…プレイ成果ポイント
740…順位
742…誘引度
744…被撃破日時
746…範囲設定データ
750…NPC管理データ
784…適用行動パターン種類
1000…ゲームシステム
1100…サーバシステム
1150…制御基板
1500…ユーザ端末