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

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

▶ 株式会社バンダイナムコゲームスの特許一覧

特開2023-148672コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法
<>
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図1
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図2
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図3
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図4
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図5
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図6
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図7
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図8
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図9
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図10
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図11
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図12
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図13
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図14
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図15
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図16
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図17
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図18
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図19
  • 特開-コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法 図20
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023148672
(43)【公開日】2023-10-13
(54)【発明の名称】コンピュータシステム、仮想空間制御システムおよび仮想空間制御方法
(51)【国際特許分類】
   A63F 13/75 20140101AFI20231005BHJP
   A63F 13/79 20140101ALI20231005BHJP
   A63F 13/45 20140101ALI20231005BHJP
   A63F 13/533 20140101ALI20231005BHJP
【FI】
A63F13/75
A63F13/79
A63F13/45
A63F13/533
【審査請求】未請求
【請求項の数】19
【出願形態】OL
(21)【出願番号】P 2022056819
(22)【出願日】2022-03-30
(71)【出願人】
【識別番号】000134855
【氏名又は名称】株式会社バンダイナムコエンターテインメント
(74)【代理人】
【識別番号】100124682
【弁理士】
【氏名又は名称】黒田 泰
(74)【代理人】
【識別番号】100104710
【弁理士】
【氏名又は名称】竹腰 昇
(74)【代理人】
【識別番号】100090479
【弁理士】
【氏名又は名称】井上 一
(72)【発明者】
【氏名】大井 隆義
(72)【発明者】
【氏名】阿須名 孝次
(72)【発明者】
【氏名】南 清志
(72)【発明者】
【氏名】小倉 建一
(72)【発明者】
【氏名】恩田 明生
(72)【発明者】
【氏名】青木 隆
(72)【発明者】
【氏名】村井 伸太郎
(57)【要約】
【課題】共通の世界観に設定されてユーザ毎の参加仮想空間が可変である複数の仮想空間を並行に制御するシステムにおいて、ユーザが異なる仮想空間に参加して他のユーザのユーザ体験を阻害する行為を低減させることが可能な技術を提供すること。
【解決手段】共通の世界観に設定されてユーザ毎の参加仮想空間が可変である複数の仮想空間を並行に制御し、仮想空間毎に発生する或いは発生し得る事象である発生事象を管理し、対象ユーザの第1の仮想空間での参加記録を管理する。そして(a)第1の仮想空間の発生事象である第1の発生事象と第1の仮想空間以外の仮想空間の発生事象との異同と、(b)対象ユーザの第1の仮想空間での参加記録と、に基づく対象ユーザによる第1の仮想空間以外の仮想空間への参加に係る制限について管理する。
【選択図】図4
【特許請求の範囲】
【請求項1】
共通の世界観に設定されてユーザ毎の参加仮想空間が可変である複数の仮想空間を並行に制御するコンピュータシステムであって、
仮想空間毎に、発生する或いは発生し得る事象である発生事象を管理する発生事象管理手段と、
対象ユーザの第1の仮想空間での参加記録を管理する参加記録管理手段と、
(a)前記第1の仮想空間の前記発生事象である第1の発生事象と前記第1の仮想空間以外の仮想空間の前記発生事象との異同と、(b)前記対象ユーザの前記第1の仮想空間での前記参加記録と、に基づく前記対象ユーザによる前記第1の仮想空間以外の仮想空間への参加に係る制限について管理する制限管理手段と、
を備えるコンピュータシステム。
【請求項2】
前記制限管理手段は、前記第1の仮想空間以外の仮想空間について、前記対象ユーザの参加に係る制限の対象となる制限対象仮想空間か否かを判定し、当該制限対象仮想空間に対する前記対象ユーザの前記制限を管理する、
請求項1に記載のコンピュータシステム。
【請求項3】
前記制限対象仮想空間か否かに基づいて、前記第1の仮想空間以外の仮想空間の中から前記対象ユーザが参加する第2の仮想空間を選択する第2の仮想空間選択手段、
を更に備える請求項2に記載のコンピュータシステム。
【請求項4】
前記制限管理手段は、前記制限対象仮想空間に対する前記制限を、前記対象ユーザによる参加禁止として管理する、
請求項3に記載のコンピュータシステム。
【請求項5】
前記第2の仮想空間選択手段は、
前記対象ユーザの選択操作に基づいて前記第1の仮想空間以外の参加希望仮想空間を受け付けることと、
前記参加希望仮想空間が前記制限対象仮想空間でない場合に前記参加希望仮想空間を前記第2の仮想空間として選択することと、
を実行する、
請求項3又は4に記載のコンピュータシステム。
【請求項6】
前記第2の仮想空間選択手段は、
前記第1の仮想空間以外の仮想空間が前記制限対象仮想空間であるか否かを前記対象ユーザに提示することと、
前記制限対象仮想空間ではない仮想空間の中から前記第2の仮想空間として参加を希望する仮想空間を前記対象ユーザの選択操作に基づいて受け付けることと、
を実行する、
請求項3又は4に記載のコンピュータシステム。
【請求項7】
前記第1の仮想空間以外の仮想空間のうち、前記対象ユーザが参加する第2の仮想空間を選択する第2の仮想空間選択手段、
を更に備え、
前記制限管理手段は、前記第2の仮想空間が前記制限対象仮想空間である場合に、前記対象ユーザが前記第2の仮想空間に参加した際の行動に関する制限を管理する行動制限管理手段を有する、
請求項2に記載のコンピュータシステム。
【請求項8】
前記行動制限管理手段により管理される制限に基づいて、前記対象ユーザ又は前記対象ユーザが操作するキャラクタを、前記第2の仮想空間において特別扱いする所定の特別待遇制御を行う特別待遇制御手段、
を更に備える請求項7に記載のコンピュータシステム。
【請求項9】
前記行動制限管理手段は、前記第1の発生事象と前記第2の仮想空間の前記発生事象である第2の発生事象とに基づき、前記第1の仮想空間で発生済みで且つ前記第2の仮想空間で未発生の発生事象に対する前記対象ユーザの関与行動に関する制限を管理する、
請求項7又は8に記載のコンピュータシステム。
【請求項10】
前記対象ユーザが前記第2の仮想空間に参加する前に、前記第2の仮想空間において行動に関する制限を受ける旨を前記対象ユーザに通知する制御を行う行動制限通知制御手段、
を更に備える請求項7から9の何れか一項に記載のコンピュータシステム。
【請求項11】
前記第2の仮想空間選択手段は、
前記第1の仮想空間以外の仮想空間それぞれについて、前記制限対象仮想空間であるか否かを前記対象ユーザに提示することと、
前記対象ユーザによる選択操作に基づいて前記第2の仮想空間を選択することと、
を実行する、
請求項7から10の何れか一項に記載のコンピュータシステム。
【請求項12】
前記第2の仮想空間選択手段は、前記対象ユーザが参加する第2の仮想空間を自動的に選択し、且つ、前記制限対象仮想空間ではない仮想空間を優先的に選択する、
請求項7から10の何れか一項に記載のコンピュータシステム。
【請求項13】
前記制限管理手段は、前記第1の仮想空間以外の仮想空間について、前記第1の発生事象に相当する発生事象が発生していない仮想空間を前記制限対象仮想空間として判定する、
請求項2から12の何れか一項に記載のコンピュータシステム。
【請求項14】
前記制限管理手段は、前記第1の仮想空間以外の仮想空間について、前記第1の発生事象に相当する発生事象が発生していない仮想空間であって、前記参加記録に基づいて前記対象ユーザが前記第1の仮想空間において関与したと判定される発生事象が発生していない仮想空間を前記制限対象仮想空間として判定する、
請求項2から12の何れか一項に記載のコンピュータシステム。
【請求項15】
前記複数の仮想空間における同一のイベントを、非同期に実行制御する、
請求項1から14の何れか一項に記載のコンピュータシステム。
【請求項16】
前記イベントには、通常イベントと特定イベントとがあり、
前記発生事象管理手段は、前記特定イベントを前記発生事象として管理する、
請求項15に記載のコンピュータシステム。
【請求項17】
各サーバが1以上の前記仮想空間を制御する複数のサーバを具備して構成される請求項1から16の何れか一項に記載のコンピュータシステム。
【請求項18】
請求項1から17の何れか一項に記載のコンピュータシステムであるサーバシステムと、
前記ユーザのマンマシンインターフェースとなるユーザ端末と、
を具備する仮想空間制御システム。
【請求項19】
共通の世界観に設定されてユーザ毎の参加仮想空間が可変である複数の仮想空間を並行に制御する仮想空間制御方法であって、
仮想空間毎に、発生する或いは発生し得る事象である発生事象を管理することと、
対象ユーザの第1の仮想空間での参加記録を管理することと、
(a)前記第1の仮想空間の前記発生事象である第1の発生事象と前記第1の仮想空間以外の仮想空間の前記発生事象との異同と、(b)前記対象ユーザの前記第1の仮想空間での前記参加記録と、に基づく前記対象ユーザによる前記第1の仮想空間以外の仮想空間への参加に係る制限について管理することと、
を含む仮想空間制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想空間を制御するコンピュータシステム等に関する。
【背景技術】
【0002】
コンピュータの演算処理により仮想空間(例えば、メタバース、多人数参加型オンラインゲームのゲーム空間、など)を構築し、利用者であるユーザのキャラクタ(例えば、アバター、プレーヤキャラクタ、など;以下「ユーザキャラクタ」という。)を配置して、ユーザに仮想空間での仮想体験を提供する技術が知られている。例えば、特許文献1には、1つの仮想空間を共有するユーザ間でコミュニケーションをとることができる技術が開示されている。
【0003】
ユーザ数が大規模に及ぶケースでは、複数のサーバシステムそれぞれに仮想空間のデータを持たせてそれぞれで仮想空間を管理し、ユーザが使用するユーザ端末(クライアント端末)をそれらのサーバシステムに分散接続させるシステム構成が用いられる。そうしたシステム構成では、各サーバシステムの処理負荷を適当にコントロールしながら、大規模人数のユーザでもそれぞれが快適なユーザ体験を享受できるように工夫される。
【0004】
特許文献2には、ユーザが、仮想空間におけるユーザキャラクタの空間密度が適当なサーバシステムを接続先として選択できる技術が開示されている。具体的には、選択候補とされるサーバシステム毎に仮想空間におけるユーザキャラクタの密度情報(仮想世界の人口密度に相当)を取得し、密度情報をバーグラフ等でユーザに通知し、ユーザがこれを参照して接続先の仮想空間を選択できるようになっている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2001-312744号公報
【特許文献2】特開2010-213806号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
共通の世界観に設定されてユーザ毎の参加仮想空間が可変である複数の仮想空間を並行に制御するシステムにおいて、ユーザが異なる仮想空間に参加して他のユーザのユーザ体験を阻害するケースがある。
【0007】
例えば、MMORPG(Massively Multiplayer Online Role-Playing Game)の場合、複数の仮想空間それぞれにおいて、レアアイテムを獲得できるイベントが発生管理される場合がある。この場合、あるユーザが、何れかの仮想空間でイベントをクリアしてレアアイテムを獲得した後、更にレアアイテムの獲得を欲した場合、他の仮想空間に移動して同じイベントを再びクリアして同じレアアイテムを追加獲得するといった行為が可能になる。イベントの内容によっては、そうした同一ユーザによる同一イベントへの重複関与は、答えを予め知っている問題を再び解くようなチート行為に当たる。当該イベントが初見の他プレーヤが、本来であれば楽しめたであろうイベントのクリア方法を模索する興趣を削いでしまう。また、そうしたイベントをクリアしたユーザが、他の仮想空間に移動した先で、他ユーザに解決方法をチャットなどでうかつに話してしまう「ネタバレ」行為も、ユーザ体験の適切な実現を阻害するケースである。
【0008】
こうした問題は、MMORPGに限らず、共通の世界観に設定された複数の仮想空間を並行に存在させ、ユーザ毎の参加仮想空間が可変であるシステムにおいては、仮想体験の内容に係わらず同様に生じ得る。
【0009】
本発明が解決しようとする課題は、共通の世界観に設定されてユーザ毎の参加仮想空間が可変である複数の仮想空間を並行に制御するシステムにおいて、ユーザが異なる仮想空間に参加して他のユーザのユーザ体験を阻害する行為を低減させることが可能な技術を提供すること、である。
【課題を解決するための手段】
【0010】
上記した課題を解決するための第1の発明は、共通の世界観に設定されてユーザ毎の参加仮想空間が可変である複数の仮想空間を並行に制御するコンピュータシステムであって、
仮想空間毎に、発生する或いは発生し得る事象である発生事象を管理する発生事象管理手段(例えば、図12の処理部200g、発生事象管理部232、図13のイベント定義データ570、イベント管理データ605、図18のステップS58)と、
対象ユーザの第1の仮想空間での参加記録を管理する参加記録管理手段(例えば、図9の処理部200p、参加記録管理部204、図11の参加記録データ540、図18のステップS152)と、
(a)前記第1の仮想空間の前記発生事象である第1の発生事象と前記第1の仮想空間以外の仮想空間の前記発生事象との異同と、(b)前記対象ユーザの前記第1の仮想空間での前記参加記録と、に基づく前記対象ユーザによる前記第1の仮想空間以外の仮想空間への参加に係る制限について管理する制限管理手段(例えば、図9の処理部200p、制限管理部214、図17のシステムログイン処理、図12の処理部200g、制限管理部236、図19の行動制限処理、図20のワープ移動処理)と、
を備えるコンピュータシステムである。
【0011】
また、第2の発明は、前記制限管理手段が、前記第1の仮想空間以外の仮想空間について、前記対象ユーザの参加に係る制限の対象となる制限対象仮想空間か否かを判定し(例えば、図17のステップS12、図20のステップS122)、当該制限対象仮想空間に対する前記対象ユーザの前記制限を管理する、第1の発明のコンピュータシステムである。
【0012】
また、第3の発明は、前記制限対象仮想空間か否かに基づいて、前記第1の仮想空間以外の仮想空間の中から前記対象ユーザが参加する第2の仮想空間を選択する第2の仮想空間選択手段(例えば、図9の第2の仮想空間選択部216、図17のステップS20、図12の第2の仮想空間選択部234、図20のステップS130)、を更に備える第2の発明のコンピュータシステムである。
【0013】
ここで言う「コンピュータシステム」は、単数のコンピュータで構成される場合は勿論、複数のコンピュータによって連携して構成されるものでもよい。
【0014】
第1から第3の何れかの発明によれば、コンピュータシステムは、発生事象を仮想空間毎に管理し、仮想空間別のユーザの参加記録を管理できる。参加記録には、当該仮想空間の発生事象への当該ユーザの関与記録も含まれる。
そして、コンピュータシステムは、第1の仮想空間と第1の仮想空間以外の仮想空間における発生事象との異同と、ユーザの第1の仮想空間での参加記録とに基づいて、参加先の仮想空間において、同一ユーザによる同一発生事象への重複関与が起き得るか否かを判定し、参加先の変更に係る制限ができる。つまり、共通の世界観に設定されてユーザ毎の参加仮想空間が可変である複数の仮想空間を並行に制御するシステムにおいて、ユーザが異なる仮想空間に参加して他のユーザのユーザ体験を阻害する行為を低減させることが可能となる。
【0015】
第4の発明は、前記制限管理手段が、前記制限対象仮想空間に対する前記制限を、前記対象ユーザによる参加禁止として管理する、第3の発明のコンピュータシステムである。
【0016】
第4の発明によれば、コンピュータシステムは、参加先で同一ユーザによる同一発生事象への重複関与が起き得る仮想空間への参加それ自体を禁止できる。
【0017】
第5の発明は、前記第2の仮想空間選択手段が、前記対象ユーザの選択操作に基づいて前記第1の仮想空間以外の参加希望仮想空間を受け付けることと(例えば、図17のステップS12、図20のステップS126)、前記参加希望仮想空間が前記制限対象仮想空間でない場合に前記参加希望仮想空間を前記第2の仮想空間として選択することと(例えば、図17のステップS16、図20のステップS126)、を実行する、第3又は第4の発明のコンピュータシステムである。
【0018】
第5の発明によれば、ユーザは、自ら参加先の仮想空間を制限対象仮想空間以外から選択できる。
【0019】
第6の発明は、前記第2の仮想空間選択手段が、前記第1の仮想空間以外の仮想空間が前記制限対象仮想空間であるか否かを前記対象ユーザに提示することと(例えば、図7および図8の制限通知表示34、図17のステップS14、図20のステップS124)、前記制限対象仮想空間ではない仮想空間の中から前記第2の仮想空間として参加を希望する仮想空間を前記対象ユーザの選択操作に基づいて受け付けることと(例えば、図17のステップS16、図20のステップS126)、を実行する、第3又は第4の発明のコンピュータシステムである。
【0020】
第6の発明によれば、ユーザが参加先を選択する際に、どの仮想空間が制限対象仮想空間であるかをユーザに情報提供できる。
【0021】
第7の発明は、前記第1の仮想空間以外の仮想空間のうち、前記対象ユーザが参加する第2の仮想空間を選択する第2の仮想空間選択手段(例えば、図12の第2の仮想空間選択部234、図20のステップS130)、を更に備え、前記制限管理手段は、前記第2の仮想空間が前記制限対象仮想空間である場合に、前記対象ユーザが前記第2の仮想空間に参加した際の行動に関する制限を管理する行動制限管理手段(例えば、図12の行動制限管理部238、図19の行動制限処理)を有する、第2の発明のコンピュータシステムである。
【0022】
第7の発明によれば、コンピュータシステムは、ユーザが第2仮想空間に参加した際の、当該第2仮想空間での行動を制限できる。
【0023】
第8の発明は、前記行動制限管理手段により管理される制限に基づいて、前記対象ユーザ又は前記対象ユーザが操作するキャラクタを、前記第2の仮想空間において特別扱いする所定の特別待遇制御を行う特別待遇制御手段(例えば、図6の識別マーカ20、図12の特別待遇制御部242、図18のステップS70)、を更に備える第7の発明のコンピュータシステムである。
【0024】
第8の発明によれば、コンピュータシステムは、第1の仮想空間から第2の仮想空間へ参加先を変更したユーザ又はユーザのキャラクタを特別扱いすることができる。例えば、第2の仮想空間での行動を制限するといった特別扱いであったり、第2の仮想空間での表示形態を、該当ユーザのキャラクタであることを示す特別な表示形態とする、等である。
【0025】
第9の発明は、前記行動制限管理手段が、前記第1の発生事象と前記第2の仮想空間の前記発生事象である第2の発生事象とに基づき、前記第1の仮想空間で発生済みで且つ前記第2の仮想空間で未発生の発生事象に対する前記対象ユーザの関与行動に関する制限を管理する(例えば、図19のステップS82からステップS98)、第7又は第8の発明のコンピュータシステムである。
【0026】
「関与行動」は、例えば、発生事象が参加登録制のイベントの場合には、対象ユーザが当該イベントに参加登録することがこれに該当する。また、発生事象への対象ユーザのキャラクタが接近したり、接触することが必須な場合には、接近や接触を実現する操作入力、キャラクタの接近や接触の行動制御がこれに該当する。また、発生事象がレイドであれば、対象ユーザによる攻撃操作、対象ユーザによるレイドキャラクタへの攻撃行動がこれに該当する。
【0027】
第9の発明によれば、コンピュータシステムは、第1の仮想空間で発生しているが第2の仮想空間では未発生の発生事象ついての関与行動を制限できる。つまり、第2の仮想空間へ参加仮想空間が変更されたとしても、そこでの関与行動を制限することで、実質的に発生事象への対象ユーザの重複関与(第1の仮想空間で関与し、更に第2の仮想空間でも関与すること)を抑制できる。
【0028】
第10の発明は、前記対象ユーザが前記第2の仮想空間に参加する前に、前記第2の仮想空間において行動に関する制限を受ける旨を前記対象ユーザに通知する制御を行う行動制限通知制御手段(例えば、図8の制限通知表示34、図12の行動制限通知制御部244、図20のステップS124)、を更に備える第7から第9の何れかの発明のコンピュータシステムである。
【0029】
第10の発明によれば、第1の仮想空間に参加していた対象ユーザへ、第2の仮想空間へ参加仮想空間を変更する前に、変更後に適用される行動に関する制限について事前に情報を与える事ができる。つまり、参加仮想空間の選択について対象ユーザを補助できる。
【0030】
第11の発明は、前記第2の仮想空間選択手段が、前記第1の仮想空間以外の仮想空間それぞれについて、前記制限対象仮想空間であるか否かを前記対象ユーザに提示することと(例えば、図8の制限通知表示34、図20のステップS124)、前記対象ユーザによる選択操作に基づいて前記第2の仮想空間を選択することと(例えば、図20のステップS126)、を実行する、第7から第10の何れかの発明のコンピュータシステムである。
【0031】
第11の発明によれば、コンピュータシステムは、第1の仮想空間に参加している対象ユーザへ、参加仮想空間を変更する前に、第1の仮想空間以外の仮想空間のどれが制限対象仮想空間であるかを報せることができる。つまり、参加仮想空間の選択について対象ユーザを補助できる。
【0032】
第12の発明は、前記第2の仮想空間選択手段が、前記対象ユーザが参加する第2の仮想空間を自動的に選択し、且つ、前記制限対象仮想空間ではない仮想空間を優先的に選択する(例えば、図20のステップS132)、第7から第10の何れかの発明のコンピュータシステムである。
【0033】
第12の発明によれば、コンピュータシステムは、参加仮想空間を変更する際に、対象ユーザにとっての制限がない仮想空間を優先的に自動選択できる。つまり、参加仮想空間の選択について対象ユーザを補助できる。
【0034】
第13の発明は、前記制限管理手段が、前記第1の仮想空間以外の仮想空間について、前記第1の発生事象に相当する発生事象が発生していない仮想空間を前記制限対象仮想空間として判定する、第2から第12の何れかの発明のコンピュータシステムである。
【0035】
第13の発明によれば、コンピュータシステムは、第1の発生事象に相当する発生事象が発生していない仮想空間を、制限対象仮想空間とすることができる。よって、第1の仮想空間で第1の発生事象に関与済の対象ユーザは、第2の仮想空間で第1の発生事象に相当する発生事象への関与が制限される。
【0036】
第14の発明は、前記制限管理手段が、前記第1の仮想空間以外の仮想空間について、前記第1の発生事象に相当する発生事象が発生していない仮想空間であって、前記参加記録に基づいて前記対象ユーザが前記第1の仮想空間において関与したと判定される発生事象が発生していない仮想空間を前記制限対象仮想空間として判定する、第2から第12の何れか一項に記載のコンピュータシステムである。
【0037】
「相当する発生事象」とは、仮想空間内で生じる出来事が同じ又は一部の差異があるがほぼ同じと見なせることを言う。例えば、発生事象のシステム上の識別が同じ、発動要件が同じ、発生事象のシナリオが同じ、発生事象に係る初期設定情報が同じ、である場合がこれに該当する。
【0038】
第14の発明によれば、コンピュータシステムは、対象ユーザが関与済の第1の発生事象に相当する発生事象が発生していない仮想空間を、制限対象仮想空間とすることができる。
【0039】
第15の発明は、前記発生事象前記複数の仮想空間における同一のイベントを、非同期に実行制御する、第1から第14の何れかの発明のコンピュータシステムである。
【0040】
また、第16の発明は、前記イベントには、通常イベントと特定イベントとがあり、前記発生事象管理手段は、前記特定イベントを前記発生事象として管理する、第15の発明のコンピュータシステムである。
【0041】
第15又は第16の発明によれば、コンピュータシステムは、仮想空間別に非同期に実行され得るイベントについて、同一の対象ユーザが異なる仮想空間にて重複して関与できないように制限できる。
【0042】
第17の発明は、各サーバが1以上の前記仮想空間を制御する複数のサーバを具備して構成される第1から第16の何れかの発明のコンピュータシステムである。
【0043】
第17の発明によれば、複数のサーバを用意して、それらに少なくとも1以上の仮想空間を管理させる構成とすることができる。
【0044】
第18の発明は、第1から第17の何れかの発明のコンピュータシステムであるサーバシステムと、前記ユーザのマンマシンインターフェースとなるユーザ端末と、を具備する仮想空間制御システムである。
【0045】
第18の発明によれば、第1から第17の何れかの発明と同様の効果を有する仮想空間制御システムを実現できる。
【0046】
第19の発明は、共通の世界観に設定されてユーザ毎の参加仮想空間が可変である複数の仮想空間を並行に制御する仮想空間制御方法であって、仮想空間毎に、発生する或いは発生し得る事象である発生事象を管理することと、対象ユーザの第1の仮想空間での参加記録を管理することと、(a)前記第1の仮想空間の前記発生事象である第1の発生事象と前記第1の仮想空間以外の仮想空間の前記発生事象との異同と、(b)前記対象ユーザの前記第1の仮想空間での前記参加記録と、に基づく前記対象ユーザによる前記第1の仮想空間以外の仮想空間への参加に係る制限について管理することと、を含む仮想空間制御方法である。
【0047】
第19の発明によれば、第1の発明と同様の作用効果を奏する仮想空間制御方法を実現できる。
【図面の簡単な説明】
【0048】
図1】仮想空間制御システムの構成例を示す図。
図2】仮想空間制御システムが提供する仮想空間について説明するための図。
図3】イベントの分類について説明するための図。
図4】参加制限について説明するための図。
図5】行動制限について説明するための図。
図6】情報制限について説明するための図。
図7】システムログイン画面の表示例等を示す図。
図8】ワープ移動先選択画面の表示例を示す図。
図9】ポータルサーバシステムの機能構成例を示すブロック図。
図10】ポータルサーバシステムの記憶部が記憶するプログラムやデータの例を示す図。
図11】ユーザ管理データのデータ構成例を示す図。
図12】ゲームサーバシステムの機能構成例を示すブロック図。
図13】ゲームサーバシステムの記憶部が記憶するプログラムやデータの例を示す図。
図14】イベント定義データのデータ構成例を示す図。
図15】参加制限管理データのデータ構成例を示す図。
図16】ユーザ端末の機能構成例を示すブロック図。
図17】システムログイン処理の流れを説明するためのフローチャート。
図18】ゲームサーバシステムにおける処理の流れを説明するためのフローチャート。
図19】行動制限処理の流れを説明するためのフローチャート。
図20】ワープ移動処理の流れを説明するためのフローチャート。
【発明を実施するための形態】
【0049】
以下、本発明の実施形態の例を説明するが、本発明を適用可能な形態が以下の実施形態に限られないことは勿論である。
【0050】
図1は、仮想空間制御システム1000の構成例を示す図である。
仮想空間制御システム1000は、多数のユーザに対して仮想空間における仮想体験を同時に提供するシステムである。仮想空間制御システム1000は、ネットワーク9を介してデータ通信可能に接続された運用システム1010およびユーザ別のユーザ端末1500(1500a,1500b,…)を含み、ユーザ端末1500をマンマシンインターフェース(Man Machine Interface:MMIF)とするコンピュータシステムである。
【0051】
仮想空間制御システム1000は、3次元仮想空間における様々な種類の仮想体験サービスを提供する。以降では、仮想体験サービスの1つとしてオンラインゲームを提供する例を挙げて説明するが、仮想体験サービスの内容はこれに限らない。
【0052】
ネットワーク9は、データ通信が可能な通信路を意味する。すなわち、ネットワーク9とは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLAN(Local Area Network)の他、電話通信網やケーブル網、インターネットを含む。
【0053】
運用システム1010は、サービス提供者・システム運用者が管理運用するコンピュータシステムであって、ポータルサーバシステム1100Pと、複数のゲームサーバシステム1100G(1100Ga,1100Gb,…)とを有するサーバシステムである。ポータルサーバシステム1100Pと、ゲームサーバシステム1100G(1100Ga,1100Gb,…)は、ネットワーク9を介して互いにデータ通信可能に接続し、それぞれがネットワーク9を介してユーザ端末1500とデータ通信可能に接続する。
【0054】
ポータルサーバシステム1100Pは、仮想空間制御システム1000に係る各種サービスを利用するためユーザ端末1500が最初にアクセスするサーバシステムである。ポータルサーバシステム1100Pは、例えば、ユーザ登録、仮想空間で利用可能な各種アイテム等のオンライン販売の管理、ログイン後のゲームサーバへのユーザの振り分け、等に係る機能を果たす。
【0055】
ゲームサーバシステム1100G(1100Ga,1100Gb,…)は、それぞれが単数又は複数のユーザ端末1500と通信して、ユーザ端末1500をゲームクライアントとしたゲームサーバとしての機能を果たす。
【0056】
ポータルサーバシステム1100Pとゲームサーバシステム1100Gとは、コンピュータシステムとしての基本的な機能は同様に実現できる。
すなわち、ポータルサーバシステム1100Pおよびゲームサーバシステム1100Gは、本体装置、キーボード、タッチパネル、を有し、本体装置に制御基板1150を搭載する。制御基板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)により実現するとしてもよい。
【0057】
但し、ポータルサーバシステム1100Pとゲームサーバシステム1100Gとは、制御基板1150が所定のプログラムおよびデータに基づいて演算処理することによりそれぞれ別個の機能を実現する。
【0058】
図1には、ポータルサーバシステム1100Pおよびゲームサーバシステム1100Gは、それぞれ1台のサーバ装置であるかのように描いているが、複数の装置で実現する構成であってもよい。例えば、ポータルサーバシステム1100Pおよびゲームサーバシステム1100Gは、各機能を分担する複数のブレードサーバを搭載して相互に内部バスを介してデータ通信可能に接続した構成であってもよい。また、ポータルサーバシステム1100Pおよびゲームサーバシステム1100Gを構成するハードウェアの設置場所は問わない。離れた場所に設置された独立した複数のサーバを、ネットワーク9を介してデータ通信させることで、全体として運用システム1010として機能させる構成であってもよい。
【0059】
ユーザ端末1500は、ユーザが仮想空間制御システム1000を利用するために使用するコンピュータシステムである。ユーザ端末1500は、仮想空間制御システム1000におけるマンマシンインターフェース(MMIF)の機能を担っている。
【0060】
図1では、ユーザ端末1500を、いわゆるスマートフォンと呼ばれる装置として表しているが、コンピュータシステムであれば、ウェアラブルコンピュータや、携帯型ゲーム装置、家庭用ゲーム装置、タブレット型コンピュータ、パソコン、などでもよい。スマートフォンと、当該スマートフォンに通信接続されたスマートウォッチ、ヘッドマウントディスプレイなどの組み合わせといった複数の電子機器が通信可能に接続することで1つの機能を果たす場合にはこれらの複数の電子機器を1つのユーザ端末1500とみなすことができる。
【0061】
ユーザ端末1500は、操作入力デバイス(例えば、タッチパネル1506、キーボード、ゲームコントローラ、マウスなど)と、画像表示デバイス(例えば、タッチパネル1506、ヘッドマウントディスプレイ、グラス型ディスプレイなど)と、制御基板1550と、を備える。
【0062】
制御基板1550は、CPU1551や、GPU,DSPなどの各種マイクロプロセッサ、VRAMやRAM,ROM等の各種ICメモリ1552、ネットワーク9に接続する通信モジュール1553、などを搭載する。制御基板1550に搭載されているこれらの要素は、バス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。制御基板1550の一部又は全部をASICやFPGA、SoCにて構成してもよい。そして、制御基板1550は、ユーザ端末としての機能を実現させるためのプログラムや各種データをICメモリ1552に記憶する。そして、ユーザ端末1500は、所定のアプリケーションプログラムを実行することにより、仮想空間制御システム1000のマンマシンインターフェース(MMIF)として、またゲームクライアントとしての機能を実現する。
【0063】
ユーザ端末1500は、アプリケーションプログラムやその実行に必要な各種データをポータルサーバシステム1100Pからダウンロードする構成としているが、ユーザが別途入手したメモリカードなどの記憶媒体から読み出す構成としてもよい。
【0064】
図2は、仮想空間制御システム1000が提供する仮想空間3について説明するための図である。仮想空間3は、全ユーザにとって共通の世界観(共通のゲーム世界)を表現する3次元の仮想的な世界として設定されている。各仮想空間3は、現実とは異なる空間と時間の流れを有し、ユーザがログインしていなくても仮想空間制御システム1000のデータとして存在し続け、現実世界の時間経過とともに仮想空間でも時間が経過し、変化し続けるように制御される。
【0065】
仮想空間3には、同時並行的に存在する複数の仮想空間3(3a,3b,…)がある。
各ゲームサーバシステム1100G(1100Ga,1100Gb,…)は、それぞれ少なくとも1つずつ仮想空間3(3a,3b,…)のデータを記憶・管理する。各仮想空間3(3a,3b,…)は、データとしての実体は独立しているが、当該仮想空間が記述する仮想空間3の広さ、仮想空間3の構造、位置座標系、そこで適用されるルールは同じであり、共通の世界観を有する。
【0066】
ユーザは、自身のユーザ端末1500を操作して、ポータルサーバシステム1100Pに接続して仮想空間制御システム1000を利用可能にするシステムログインをする。システムログイン後、ゲームプレイのために参加するゲームサーバシステム1100G(1100Ga,1100Gb,…)の何れかに、ゲームプレイ可能に当該ゲームサーバシステム1100Gの仮想空間3へ参加するためのプレイログインをする。
【0067】
ゲームサーバシステム1100Gは、プレイログインしたユーザ端末1500のユーザキャラクタ4(4a,4b,…)を、当該ゲームサーバシステム1100Gが管理する仮想空間3(3a,3b,…)の中に配置する。そして、ゲームサーバシステム1100Gは、ユーザの操作入力に応じてユーザキャラクタ4の行動を仮想空間3内で制御し、当該行動の結果として仮想空間3(3a,3b,…)を構成するオブジェクトを出現・移動・形態変更・消去させて仮想空間3を変更する。つまり、ユーザは、ユーザ端末1500を用いてプレイログインしたゲームサーバシステム1100Gが管理する仮想空間3にユーザキャラクタ4で参加して、仮想空間3での仮想体験(本実施形態ではMMORPG)を楽しむことができる。
【0068】
各仮想空間3における時刻は個別に管理される。
例えば、対応するゲームサーバシステム1100Gが設置されている場所の現実世界における時刻に基づいて管理される。その結果、複数の仮想空間3(3a,3b,…)の中には、仮想世界の時刻が同じ仮想空間3もあれば、異なる仮想空間3もあることになる。
【0069】
また、各仮想空間3には、それぞれワープゲート6が設定されている。
ワープゲート6は、そこに入ったユーザキャラクタ4を他の仮想空間3に移動させるゲーム上の設備である。すなわち、ユーザがオンラインゲームに参加する仮想空間3(参加仮想空間)を、切り換えることができる仕組みを利用するための仮想インターフェースである。
【0070】
具体的には、ワープゲート6に入ったユーザキャラクタ4のユーザ端末1500は、当該ワープゲート6のある仮想空間3への参加が終了し、移動先の仮想空間3への参加が開始される。システム上は、ワープゲート6のある仮想空間3を管理するゲームサーバシステム1100Gとユーザ端末1500との接続が解除されて移動先の仮想空間3を管理するゲームサーバシステム1100Gと新たに接続が開始されるが、ユーザ端末1500におけるゲーム画面上ではゲームプレイが継続して見える。
【0071】
各ゲームサーバシステム1100Gは、それぞれの仮想空間3の時刻や仮想空間3の状態に応じて、独自に各種イベント7(7a,7b,…)を発生させ、その進行を管理・制御する。
【0072】
イベント7(7a,7b,…)は、仮想体験を提供するために用意され、仮想空間3内で発生するように仕込まれた事象である。例えば、図2において、仮想空間3aでは、謎の塔型ダンジョンが出現する塔イベント7aが発生し、現在進行状態にある。ユーザキャラクタ4aは、当該イベントをクリアしてレアアイテム5aを獲得した。仮想空間3cでは、塔イベント7aは終了しているが、レイドイベント7cが発生して現在進行状態にある。仮想空間3bでは、塔イベント7aは未発生であり、レイドイベント7cは終了しているが、遺跡が破壊される事件イベント7bが発生して現在進行状態にある。
【0073】
図3は、仮想空間3(3a,3b,…)で発生するイベント7の分類について説明するための図である。イベント7は、通常イベント10と特別イベント12とに大別される。
通常イベント10は、オンラインゲームにおいて高頻度に発生する普通によくあるイベントである。例えば、ユーザキャラクタ4が敵キャラクタと遭遇して発生する戦闘イベント、謎解きをしてアイテムを獲得するアイテム獲得イベント、仮想世界の住人NPC(Non Player Character)との会話イベント、仮想世界での遊技に興じるミニゲームイベント、などがこれに該当する。通常イベント10は、それに係り発生する出来事やその結果としてユーザキャラクタ4が得る報酬(例えば、経験値、スキル、ドロップアイテムなど)の性質上、何度関与してもよいと見なされる性質の「重複関与許可イベント」である。
【0074】
特別イベント12は、オンラインゲームにおいて特別な条件において発生するイベントである。例えば、先に例示した塔イベント7a、事件イベント7b、レイドイベント7c、がこれに該当する。その他、ユーザキャラクタ4にレアアイテムやレアスキルを付与し得るイベントや、ユーザキャラクタ4が大量の経験値を獲得できるイベント、など、関与したユーザキャラクタ4を有利(場合によっては不利)にする内容のイベントである。すなわち、特別イベント12で起きる内容やその結果としてユーザキャラクタ4が得る特典の性質上、複数回関与するのが好ましくないと見なされる「重複関与禁止イベント」である。
【0075】
同一ユーザによる特別イベント12への重複関与を許容しておくと「イベント荒し」や「ネタバレ」行為を生み出す可能性がある。
例えば、レアアイテムを獲得できる特別イベントがあるとして、あるユーザがレアアイテムを獲得した後、ワープゲート6を利用して他の仮想空間3に移動して同じ特別イベントを再びクリアすることでレアアイテムを追加獲得するような場合である。イベントの重複関与を狙って参加する仮想空間3を変更して移動したユーザは、イベントのクリア方法が分かっているので、最短時間でクリアするだろう。本来ならばイベントをクリアするための思考錯誤する過程があるはずであれば、これを省略することができるからである。当該イベントが初見の他プレーヤからしてみれば、イベントの重複関与を狙って他の仮想空間3から移動して来たユーザが目の前で簡単にイベントをクリアするのを目撃することになる。初見の他プレーヤが本来楽しめたであろう試行錯誤の過程の楽しさが奪われてしまうことになる。「イベント荒し」と言える行為である。また、そうしたユーザが、他ユーザにイベントの攻略方法をチャットなどでうかつに話してしまう「ネタバレ」行為も問題となり得る。「イベント荒し」や「ネタバレ」は他のユーザにとっては甚だ迷惑である。
【0076】
本実施形態の仮想空間制御システム1000には、「イベント荒し」や「ネタバレ」を抑制する仕組みが組み込まれている。仮想空間制御システム1000は、抑制するための仕組みとして(1)仮想空間3への参加の制限、(2)仮想空間3への参加後、当該仮想空間3でのユーザキャラクタ4の行動の制限、(3)重複関与禁止イベントに係る情報を移動先の仮想空間3にて漏洩することを防止する情報制限、のうちの1つ又は複数を行う。
【0077】
図4は、参加制限について説明するための図である。
仮想空間3(3a,3b,…)を管理するゲームサーバシステム1100Gは、それぞれが管理する仮想空間3で発生したイベントの状態を管理するイベント管理データ605(図13参照)を記憶・管理する。また、ポータルサーバシステム1100Pは、ユーザキャラクタ4別に、当該ユーザキャラクタ4が関与し経験したイベントについてのイベント関与履歴データ545(図11参照)を記憶・管理する。
【0078】
例えば、図4において、仮想空間3aに参加中のユーザキャラクタ4aが、現在進行状態の塔イベント7aをクリアしてレアアイテム5aを獲得した場合、「塔イベント7aをクリアして、レアアイテム5aを獲得した」ことは、ユーザキャラクタ4aのイベント関与履歴データ545として記憶・管理される。
【0079】
そして、図4に示すように、ユーザキャラクタ4aが、ワープゲート6を介して参加仮想空間を変更する際には、各仮想空間3に係るイベント管理データ605と、ユーザキャラクタ4aのイベント関与履歴データ545とが参照される。そして、ユーザキャラクタ4aが関与済のイベント(経験済みのイベント;図4の例では塔イベント7a)が発生していない仮想空間3bを制限対象仮想空間として認定し、これへの参加を禁止する。当該関与済のイベントが発生して終了している仮想空間3cについては、これへの参加を認める。つまり、イベントへの重複関与が可能な仮想空間3への参加を制限する。
【0080】
こうした参加制限は、ユーザキャラクタ4aのユーザが、ワープゲート6を利用して現在参加している仮想空間3から他の仮想空間3へ参加仮想空間を変更する場合と、システムログイン後に最初に参加仮想空間を決定する場合と、に適用される。図4で示す各仮想空間3の状態を前提としてシステムログイン後に参加仮想空間を決定する場合は、ユーザキャラクタ4aは、仮想空間3aおよび仮想空間3cへの参加(プレイログイン)は認められるが、仮想空間3bへの参加は認められないことになる。
【0081】
図5は、行動制限について説明するための図である。
例えば、仮想空間3cに参加中のユーザキャラクタ4cが、レイドイベント7cをクリアしてレアアイテム5cを獲得した場合、「レイドイベント7cをクリアして、レアアイテム5cを獲得した」ことは、ユーザキャラクタ4cのイベント関与履歴データ545として記憶・管理される。
【0082】
ユーザキャラクタ4cが、ワープゲート6を介して参加仮想空間を変更する際には、各仮想空間3に係るイベント管理データ605と、ユーザキャラクタ4cのイベント関与履歴データ545とが参照される。そして、ユーザキャラクタ4cは、仮想空間3aにも仮想空間3bにも移動できるが、関与済のイベント(経験済みのイベント;図5の例ではレイドイベント7c)が発生していない仮想空間3aへ参加する場合には、参加は認められるが参加後の行動が制限される。具体的には、仮想空間3aにて関与済のイベントと同じイベントの発生に関与することの「関与行動」が制限される。
【0083】
「関与行動」の行動制限としては、例えば、とある遺跡で仕掛けを作動させることがレイドイベント7cを発生させるための要件であればユーザキャラクタ4cは仕掛けを作動させられないようにすることが該当する。その他、(a)レイドイベント7cが発生しても、所定距離以上接近できない(実質的にイベントに関与できない)ようにユーザキャラクタ4cのイベント領域への接近を禁止すること、(b)レイドイベント7cへの参加登録手続を禁止すること、(c)レイドイベント7cで登場する敵キャラクタへの攻撃行動を禁止すること、などが該当する。その他、イベントの内容に応じてこれら以外の行動制限の種類も適宜設定可能である。
【0084】
図6は、情報制限について説明するための図である。
ユーザキャラクタ4cは、ワープゲート6を使って仮想空間3cから仮想空間3aへ移動した後に、ユーザキャラクタ4aとテキストチャットをしている(図6中の吹き出し)。チャットの中で、ユーザキャラクタ4cは、移動前の仮想空間3cにて関与(経験)したレイドイベント7cについて語っている。例えば、レイドボスの動きや弱点などについて様々な情報を語っている。つまり、レイドイベント7cについて「ネタバレ」をしている。
【0085】
イベント7別のイベント定義データ570では、当該イベントに関する情報のうち、秘匿されるべき(ネタバレされるべきでない)情報である秘匿対象キーワード579が定義されている。ゲームサーバシステム1100Gは、仮想空間3cから移動してきたユーザキャラクタ4cがテキストチャットをする場合、チャットのテキスト文に秘匿対象キーワード579が含まれるときには、これを秘匿化処理する。例えば、記号テキストに置換する、該当テキストの透明度を100%にする、該当テキストの表示色をチャット表示部の背景色と同じにする、該当テキストのフォントサイズを「0」又はそれ相当にする、などをして秘匿対象キーワード579がテキストチャット内で相手に認識されないようにする。
【0086】
また、仮想空間3cから移動してきたユーザキャラクタ4cには、移動先の仮想空間3aにて、当該キャラクタが他仮想空間から移動してきた存在であることを識別するための識別マーカ20を付加表示させる。ユーザキャラクタ4cの表示形態が変更される特別扱いがなされる。ユーザキャラクタ4aのユーザは、識別マーカ20を認識することでユーザキャラクタ4cとのチャットで「ネタバレ」が生じる可能性を考慮できる。「ネタバレ」される可能性を考えられるユーザであれば、ユーザキャラクタ4cとチャットをしない、又は適当に切り上げることで自らそれを回避できる。
【0087】
図7は、システムログイン画面の表示例等を示す図である。
ユーザが、仮想空間制御システム1000を利用する際、ユーザ端末1500でポータルサーバシステム1100Pに接続してシステムログインをする。その際、ユーザ端末1500にて表示されるシステムログイン画面W2では、ユーザアカウント入力部31、パスワード入力部32、参加希望選択肢表示33が表示される。
【0088】
参加希望選択肢表示33は、システムログインの後に接続可能なゲームサーバシステム1100Gを選択肢としてユーザに提示し、その何れかをユーザに選択させるための選択操作を受け付ける。
【0089】
参加希望選択肢表示33に表示される選択肢には、ゲームサーバシステム1100Gが管理する仮想空間3に適用される制限を通知する制限通知表示34(行動制限通知表示35,情報制限通知表示36,参加制限通知表示37)が添付表示される。
【0090】
仮想空間3に適用される制限は、ポータルサーバシステム1100Pが、ゲームサーバシステム1100Gから、それぞれが管理する仮想空間3における特別イベント12(重複関与禁止イベント)の実施状況についての情報を取得し、システムログインを希望しているユーザに対応づけて記憶されているイベント関与履歴データ545および各イベントの定義データを参照する。そして、ある選択肢の仮想空間3において、当該ユーザが関与済の特別イベント12と同じイベントの実施状況が、参加制限を適用するための要件(参加制限適用要件;例えば、未発生である場合、発生済だがクリアされていない場合、など)を満たしていれば、その仮想空間3には参加制限が適用されると判断される。また、当該ユーザが関与済の特別イベント12と同じイベントに、行動制限の適用が指定されていれば、その仮想空間3では行動制限や情報制限が適用されると判断される。制限通知表示34の添付は、この判断の結果を表す。
【0091】
行動制限通知表示35や情報制限通知表示36については、詳細表示操作アイコンを兼ねるとしてもよい。すなわち、ユーザにより選択操作された制限通知表示34の種類に対応する制限の内容、例えば行動制限通知表示35であれば、どのイベントでどのような行動制限が適用されるか、などの詳細情報をポップアップ表示すると好適である。
【0092】
参加制限が適用される仮想空間3に対応する選択肢(参加制限通知表示37が添付されている選択肢;図7の例では「サーバβ」)は、参加希望選択肢表示33に提示されるがユーザは選択操作できないように扱われる。
【0093】
ポータルサーバシステム1100Pは、参加希望選択肢表示33にてユーザが選択した選択肢に対応する仮想空間3(図7の例では「サーバα」と呼称されるゲームサーバシステム1100Gが管理する仮想空間3)を、システムログイン後に最初に参加する参加仮想空間として設定する。当該ユーザに係り、最後に参加した仮想空間3を「第1の仮想空間」とすれば、システムログイン後に最初に参加する仮想空間3は「第2の仮想空間」となる。ユーザがシステムログアウトした後に、再度システムログインした際に、システムログアウト時に参加していた仮想空間3に再び参加するケースでは、第1の仮想空間と第2の仮想空間とは同じになる。
【0094】
なお、システムログインに係る参加制限では、ユーザが前回プレイ時にシステムログアウトした仮想空間3(最後にプレイしていた仮想空間3)は対象外とされる。図7の例では、「サーバα」が管理する仮想空間3が、最後にプレイしていた仮想空間3に該当することを示している。
【0095】
図8は、ワープゲート6を利用してユーザキャラクタ4が現在参加している仮想空間3から他の仮想空間3へ移動する場合のワープ移動先選択画面W4の表示例を示す図である。
ユーザキャラクタ4をワープゲート6に進入させたユーザのユーザ端末1500では、参加仮想空間をどれに変更するか、ユーザキャラクタ4をどの仮想空間3へ移動させるかを選択するためのワープ移動先選択画面W4が表示される。
【0096】
ワープ移動先選択画面W4は、移動先選択肢表示40を有する。
移動先選択肢表示40は、移動可能な仮想空間3を管理するゲームサーバシステム1100Gを選択肢としてユーザに提示し、その何れかをユーザに選択させるための選択操作を受け付ける。
【0097】
移動先選択肢表示40に表示される選択肢には、当該選択肢のゲームサーバシステム1100Gが管理する仮想空間3に適用される制限を通知する制限通知表示34(行動制限通知表示35,情報制限通知表示36,参加制限通知表示37)が添付表示される。但し、参加制限が適用される仮想空間3に対応する選択肢(参加制限通知表示37が添付された選択肢;図8の例では「サーバβ」)は、移動先選択肢表示40に提示されるがユーザは選択操作できないように扱われる。
【0098】
ゲームサーバシステム1100Gは、移動先選択肢表示40にてユーザが選択した選択肢に対応する仮想空間3(図8の例では「サーバω」と呼称されるゲームサーバシステム1100Gが管理する仮想空間3)を、ユーザキャラクタ4の移動先の仮想空間すなわち次の参加仮想空間として設定する。当該ユーザに係り、最後に参加した仮想空間3を「第1の仮想空間」とすれば、次の参加仮想空間は「第2の仮想空間」となる。
【0099】
次に、機能構成について説明する。
図9は、ポータルサーバシステム1100Pの機能構成例を示すブロック図である。
ポータルサーバシステム1100Pは、操作入力部100pと、処理部200pと、音出力部390pと、画像表示部392pと、通信部394pと、記憶部500pとを備える。
【0100】
操作入力部100pは、ポータルサーバシステム1100Pの管理のための各種操作を入力するための手段である。例えば、キーボード、タッチパネル、マウス、などがこれに該当する。
【0101】
処理部200pは、例えばCPUやGPU、ASIC、FPGA等の演算回路となるプロセッサの他、ICメモリなどの電子部品によって実現され、操作入力部100pや記憶部500pを含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100pからの操作入力信号、ユーザ端末1500やゲームサーバシステム1100G(1100Ga,1100Gb,…)などから受信したデータ、等に基づいて各種の演算処理を実行して、ポータルサーバシステム1100Pの動作を統合的に制御する。
【0102】
処理部200pは、ユーザ管理部202と、システムログイン管理部210と、計時部280pと、音生成部290pと、画像生成部292pと、通信制御部294pとを含む。勿論、これら以外の機能部も適宜含めることができる。
【0103】
ユーザ管理部202は、ユーザ登録手続きに係る処理およびユーザアカウントに紐付けられる各種情報の記憶管理を行う。
ユーザ管理部202は、仮想空間制御システム1000の利用に係りユーザの仮想空間3への参加記録をユーザアカウントと対応づけて管理する参加記録管理部204を有する。参加記録には、ユーザが参加仮想空間で発生した事象、どのイベントに関与し、どのイベントを経験したかに関するイベント関与履歴データ545が含まれる。よって参加記録管理部204は、関与履歴管理部206としての機能を有する。
【0104】
システムログイン管理部210は、システムログインに係る各種制御を実行する。
システムログイン管理部210は、イベント実施状況把握部212と、制限管理部214と、第2の仮想空間選択部216と、制限対象提示制御部218と、を有する。
【0105】
イベント実施状況把握部212は、ゲームサーバシステム1100Gそれぞれが管理する仮想空間3において発生した発生事象(イベント)の最新の実施状況に関する情報を取得する制御を行う。
【0106】
制限管理部214は、(a)第1の仮想空間の発生事象である第1の発生事象と第1の仮想空間以外の仮想空間3の発生事象との異同と、(b)対象ユーザの第1の仮想空間での参加記録と、に基づく対象ユーザによる第1の仮想空間以外の仮想空間への参加に係る制限について管理する。具体的には、制限管理部214は、第1の仮想空間以外の仮想空間3について、対象ユーザの参加に係る制限の対象となる制限対象仮想空間か否かを判定し、当該制限対象仮想空間に対する制限を、対象ユーザによる参加禁止として管理する。システムログインを希望するユーザのユーザ端末1500がシステムログイン後に最初に参加する参加仮想空間を決定する際の制限に係る処理がこれに該当する。
【0107】
但し、制限管理部214は、ユーザが前回システムログアウトした際にプレイしていた仮想空間3(最後にプレイしていた仮想空間3)については、参加制限の対象外とする。
【0108】
第2の仮想空間選択部216は、制限対象仮想空間か否かに基づいて、第1の仮想空間以外の仮想空間3の中から対象ユーザが参加する第2の仮想空間を選択する。具体的には、第2の仮想空間選択部216は、対象ユーザの選択操作に基づいて第1の仮想空間以外の仮想空間のうち、制限対象仮想空間ではない仮想空間の中から、第2の仮想空間として参加を希望する参加仮想空間を、対象ユーザの選択操作に基づいて受け付け、参加希望仮想空間を第2の仮想空間として選択する。システムログイン画面W2(図7参照)の表示制御および参加希望選択肢表示33にて、参加制限通知表示37が添付されていない選択肢の中から選択操作された選択肢の仮想空間を、システムログイン後に最初に参加する参加仮想空間(第2の仮想空間)とすることがこれに該当する。
【0109】
制限対象提示制御部218は、第1の仮想空間以外の仮想空間3が制限対象仮想空間であるか否かを対象ユーザに提示する制御を行う。システムログイン画面W2(図7参照)の参加希望選択肢表示33にて、選択肢別に制限通知表示34を表示させる制御がこれに該当する。
【0110】
計時部280pは、システムクロックを利用して現在日時や制限時間等の各種計時を行う。
【0111】
音生成部290pは、音声データの生成やデコードをするICやソフトウェアの実行により実現される。音生成部290pは、生成した音声信号を音出力部390pへ出力する。音出力部390pは、スピーカ等により実現され、音声信号に基づいて放音する。
【0112】
画像生成部292pは、ポータルサーバシステム1100Pのシステム管理のための各種管理画面の画像生成を行い、画像データを画像表示部392pに出力する。画像表示部392pは、フラットパネルディスプレイや、ヘッドマウントディスプレイ、プロジェクターなど、画像を表示させる装置で実現される。
【0113】
通信制御部294pは、データ通信に係るデータ処理を実行し、通信部394pを介して外部装置とのデータのやりとりを実現する。通信部394pは、ネットワーク9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現される。図1の例では通信装置1153がこれに該当する。
【0114】
記憶部500pは、処理部200pにポータルサーバシステム1100Pを統合的に制御させるための諸機能を実現するためのプログラムや各種データ等を記憶する。また、記憶部500pは、処理部200pの作業領域として用いられ、処理部200pが各種プログラムに従って実行した演算結果などを一時的に記憶する。この機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD-ROMやDVDなどの光学ディスク、オンラインストレージなどによって実現される。図1の例では本体装置が搭載するICメモリ1152やハードディスクなどの記憶媒体がこれに該当する。オンラインストレージを記憶部500pに含めてもよい。
【0115】
図10は、ポータルサーバシステム1100Pの記憶部500pが記憶するプログラムやデータの例を示す図である。
記憶部500pは、ポータルサーバプログラム501と、配信用クライアントプログラム502と、ゲームサーバ登録データ510と、適用制限指定データ512と、ユーザ管理データ520と、参加制限管理データ550と、現在日時900と、を記憶する。なお、記憶部500pは、その他のプログラムやデータ(例えばタイマーや、カウンタ、各種フラグ、など)も適宜記憶する。
【0116】
ポータルサーバプログラム501は、処理部200pが読み出して実行することで、ポータルサーバシステム1100Pを、ユーザ管理部202、システムログイン管理部210、などとして機能させるためのプログラムである。
【0117】
配信用クライアントプログラム502は、ユーザ端末1500へ提供されて実行されるクライアントプログラムのオリジナルである。
【0118】
ゲームサーバ登録データ510は、ゲームサーバシステム1100G毎に用意され、固有のサーバIDと、当該ゲームサーバシステム1100Gにて管理される仮想空間IDと、当該ゲームサーバシステム1100Gへデータ通信可能に接続するために必要とされるサーバアクセス情報と、を含む。勿論、これら以外のデータも適宜含めることができる。
【0119】
適用制限指定データ512は、特別イベント12(重複関与禁止イベント)別に用意され、当該イベントに係りユーザに適用される仮想空間3への参加や仮想空間3内での行動への制限を指定するデータである。1つの適用制限指定データ512は、例えば、イベントID514と、参加制限適用要件516と、行動制限種別指定フラグ518と、を含む。
【0120】
参加制限適用要件516は、当該イベントに何れかの仮想空間3にて関与済であるユーザが、当該ゲームサーバシステム1100Gが管理する仮想空間3への参加を禁止するために満たすべき条件を記述している。
【0121】
例えば、参加制限適用要件516は、イベント実施状態についての条件を示す。例えば、「イベント未発生」「イベント実施中」「設定なし」を設定してもよい。「イベント未発生」「イベント実施中」の両方が同時に設定されていてもよい。
【0122】
「イベント未発生」に設定されている場合、過去に当該イベントへ関与済であるユーザは、当該イベントが未発生な仮想空間3への参加が禁止される。
「イベント実施中」に設定されている場合、過去に当該イベントへ関与済であるユーザは、当該イベントが発生済であるが実施中の仮想空間3への参加が禁止される。
「設定なし」に設定されている場合、過去に当該イベントへ関与済であるユーザであっても、当該イベントを根拠として仮想空間3への参加禁止は適用されず、行動制限種別指定フラグ518により指定される行動制限が適用されることで「イベント荒し」や「ネタバレ」などの迷惑行為が抑制されることとなる。
【0123】
単体のユーザキャラクタ4に対して実行されるプライベートイベントの類いの特別イベント12に対しては、「イベント未発生」「イベント実施中」を設定すると好適である。1つのイベントに複数のユーザキャラクタ4が同時に関与し得るイベント、例えば仮想空間3の全体に及ぶワールドクラスのイベントに対しては「設定なし」を設定すると好適である。
【0124】
行動制限種別指定フラグ518は、行動制限の種類別のフラグを格納して、フラグが立てられている行動制限が当該イベントに係りユーザに適用されることを示す。行動制限の種類は適宜設定可能である。例えば、接近禁止、イベント参加登録禁止、チャット禁止、掲示板書込禁止、などを設定してもよい。
【0125】
接近禁止のフラグは、イベントエリアから所定範囲への接近を禁止する行動制限を適用する場合に「1」に設定される。イベント参加登録禁止のフラグは、当該イベントへの参加登録手続ができない行動制限を適用する場合に「1」に設定される。これらのフラグが「1(フラグ立ち)」に設定されていれば、当該イベントに係る接近禁止や参加登録といった関与行為が禁止されることになる。同じ意図の禁止フラグとしては、イベント発生要件に仕掛け解除などがある場合には、仕掛け操作禁止のフラグを設定してもよい。イベント発生要件に特定アイテムの使用がある場合には、特定アイテム使用禁止のフラグを設定してもよい。
チャット禁止や掲示板書込禁止のフラグは、それぞれチャットや掲示板への書込を禁止してネタバレを防止したい場合に「1」に設定される。
【0126】
ユーザ管理データ520は、登録手続を済ませたユーザ別に用意され、当該ユーザに係る各種データを格納し、ユーザ管理部202により管理される。
1つのユーザ管理データ520は、例えば図11に示すように、ユーザ固有のユーザアカウント521と、ゲームセーブデータ530と、参加記録データ540と、を含む。勿論、これら以外のデータも適宜含めることができる。
【0127】
ゲームセーブデータ530は、ユーザキャラクタ4のセーブ時点の各種設定や状態を記述するデータを含むユーザキャラクタ設定データ531と、当該ユーザが所有するアイテムの最新の状態を記述するデータを含む所有アイテム管理データ533と、プレイ成績データ537と、前回ゲームプレイを終了したときにユーザが参加していた仮想空間3を示す前回参加仮想空間ID539と、を含む。勿論、これら以外のデータも適宜含めることができる。
【0128】
参加記録データ540は、参加仮想空間IDと参加期間とを対応付けた参加履歴データ541と、イベント関与履歴データ545と、を含む。勿論、これら以外のデータも適宜含めることができる。
【0129】
イベント関与履歴データ545は、当該ユーザがイベントに関与する毎に作成され、どのイベントに関与したかを示す関与イベントID、参加仮想空間ID、関与日時、当該イベントでユーザが得た成果等を示すイベント結果、を含む。なお、イベント関与履歴データ545は、特別イベント12に限って作成するとしてもよい。
【0130】
図10に戻って、参加制限管理データ550は、仮想空間3への参加に係る制限を管理するための各種データを格納する。ポータルサーバシステム1100Pでは、システムログイン手続を実行する毎に作成され、システムログイン後の仮想空間3への参加についての制限に関する各種データを格納する。
【0131】
1つの参加制限管理データ550は、対象ユーザアカウント551と、イベント実施状況データ552と、適用制限判定結果557と、を含む。
【0132】
イベント実施状況データ552は、参加仮想空間の候補となる仮想空間3を管理するゲームサーバシステム1100G(参加希望選択肢表示33にて選択肢とされるサーバ;図7参照)へ所定のイベント実施状況報告リクエストを送信し、これに対応して返信された情報を格納する。具体的には、イベント実施状況データ552は、ゲームサーバID553と、仮想空間ID554と、イベント管理データ(写)555と、を含む。
【0133】
イベント実施状況データ552は、当該ゲームサーバシステム1100Gの仮想空間3にて発生したイベント毎に作成され、イベントIDと、実施期間と、終了フラグと、イベント結果データと、を含む。実施期間は、イベントが発生した時点の日時と、イベントが終了してユーザが当該イベントに関与できなくなった時点の日時とを含む。
なお、イベント実施状況報告リクエストに呼応してポータルサーバシステム1100Pへ返信される情報は、特別イベント12(重複関与禁止イベント)に限っても良い。
【0134】
適用制限判定結果557は、参加仮想空間の候補別(仮想空間ID554別、参加希望選択肢表示33の選択肢別;図7参照)に用意され、当該仮想空間にユーザが参加した場合に、付帯され適用される制限の種類についての情報を格納する。
【0135】
1つの適用制限判定結果557は、参加希望選択肢表示33の選択肢に対応する仮想空間IDと、参加制限フラグと、行動制限種別指定フラグと、を含み、参加希望選択肢表示33においてどの制限通知表示34を添付表示するかの元になる。参加制限フラグと、行動制限種別指定フラグの初期値は「0」である。
【0136】
適用制限判定結果557の仮想空間IDが示す仮想空間3における、対象ユーザが関与済の特別イベント12と同じイベントのイベント管理データ(写)555を参照し、その実施状況が、当該イベントに参加制限が適用されるための条件(参加制限適用要件)を満たしていれば、参加制限フラグは「1」に設定される。
【0137】
適用制限判定結果557の行動制限種別指定フラグは、行動制限種別指定フラグ518と同じく行動制限の種類別にフラグが用意されている。適用制限判定結果557の行動制限種別指定フラグは、対象ユーザが関与済の特別イベント12と同じイベントについて行動制限種別指定フラグ518を参照して設定される。ある行動制限の種類のフラグは、何れかの行動制限種別指定フラグ518でフラグが「1」になっていれば同じく「1」に設定される。
【0138】
図12は、ゲームサーバシステム1100G(1100Ga,1100Gb,…)の機能構成例を示すブロック図である。ゲームサーバシステム1100Gは、操作入力部100gと、処理部200gと、音出力部390gと、画像表示部392gと、通信部394gと、記憶部500gとを備える。
【0139】
操作入力部100gは、ゲームサーバシステム1100Gの管理のための各種操作を入力するための手段である。例えば、キーボード、タッチパネル、マウス、などがこれに該当する。
【0140】
処理部200gは、例えばCPUやGPU、ASIC、FPGA等の演算回路となるプロセッサの他、ICメモリなどの電子部品によって実現され、操作入力部100gや記憶部500gを含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100gからの操作入力信号、ユーザ端末1500やポータルサーバシステム1100Pなどから受信したデータ、等に基づいて各種の演算処理を実行して、ゲームサーバシステム1100Gの動作を統合的に制御する。
【0141】
処理部200gは、ゲームサーバ制御部230と、計時部280gと、音生成部290gと、画像生成部292gと、通信制御部294gとを含む。勿論、これら以外の機能部も適宜含めることができる。
【0142】
ゲームサーバ制御部230は、ゲームサーバとしての各種機能を実現する。例えば、ユーザの参加登録制御(プレイログイン)、ユーザキャラクタ4の制御、ゲーム進行制御、NPCの制御、背景オブジェクトの管理、などに係る各種制御を実行する。
【0143】
ゲームサーバ制御部230は、発生事象管理部232と、第2の仮想空間選択部234と、制限管理部236と、特別待遇制御部242と、行動制限通知制御部244と、を含む。
【0144】
発生事象管理部232は、管理している仮想空間3において発生する或いは発生し得る事象である発生事象を管理する。具体的には、通常イベント10および特別イベント12(図3参照)の発生と、発生したイベントの実施状況の制御や監視、実施状況についての情報の記録管理、等を行う。
【0145】
発生事象管理部232は、当該ゲームサーバシステム1100Gでの時刻や仮想空間3の状態に応じて独自に処理を実行する。発生事象管理部232は、仮想空間制御システム1000全体で並存する複数の仮想空間3における同一のイベントを、非同期に実行制御する役割を果たしていることになる。
【0146】
第2の仮想空間選択部234は、ワープゲート6を利用したユーザキャラクタ4の仮想空間3の移動に係り(図4図5参照)、第1の仮想空間以外の仮想空間のうち、対象ユーザが新たに参加する第2の仮想空間を選択するための各種制御を行う。第1の仮想空間は、当該ゲームサーバシステム1100Gで管理している対象ユーザが参加中の仮想空間3である。次の参加仮想空間が第2の仮想空間に相当する。
【0147】
具体的には、第2の仮想空間選択部234は、(a)第1の仮想空間以外の仮想空間それぞれについて、制限対象仮想空間であるか否かを対象ユーザに提示することと(例えば、参加制限通知表示37の表示;図8参照)、(b)対象ユーザによる選択操作に基づいて第2の仮想空間を選択することと、を実行する。
【0148】
但し、第2の仮想空間選択部234は、所定の条件が満たされた場合(例えば、移動先選択肢表示40への選択操作が制限時間内に完了されなかった場合)、次に対象ユーザが参加する第2の仮想空間を、第1の仮想空間以外の仮想空間の中から自動的に選択し、且つ、制限対象仮想空間ではない仮想空間3を優先的に選択する。
【0149】
制限管理部236は、(a)第1の仮想空間の発生事象である第1の発生事象と第1の仮想空間以外の仮想空間の発生事象との異同と、(b)対象ユーザの第1の仮想空間での参加記録と、に基づく前記対象ユーザによる第1の仮想空間以外の仮想空間への参加に係る制限について管理する。
【0150】
具体的には、制限管理部236は、第1の仮想空間以外の仮想空間について、対象ユーザの参加に係る制限の対象となる制限対象仮想空間か否かを判定し、当該制限対象仮想空間に対する対象ユーザの制限を管理する。より具体的には、制限管理部236は、第1の発生事象に相当する発生事象が発生していない仮想空間であって、参加記録に基づいて対象ユーザが第1の仮想空間において関与(経験)したと判定される発生事象が発生していない仮想空間を制限対象仮想空間として判定する。そして、制限管理部236は、制限対象仮想空間に対する制限を、対象ユーザによる参加禁止として管理する。ワープゲート6を利用した仮想空間3の移動に係り、制限対象仮想空間となった仮想空間3への参加を制限することがこれに該当する(図4参照)。
【0151】
制限管理部236は、行動制限管理部238と、情報制限管理部240と、を有する。
【0152】
行動制限管理部238は、第2の仮想空間が制限対象仮想空間である場合に、対象ユーザが第2の仮想空間に参加した際の行動に関する制限を管理する(図5参照)。
具体的には、行動制限管理部238は、第1の発生事象と第2の仮想空間の発生事象である第2の発生事象とに基づき、第1の仮想空間で発生済みで且つ第2の仮想空間で未発生の発生事象に対する対象ユーザの関与行動に関する制限を管理する。
【0153】
情報制限管理部240は、対象ユーザが第2の仮想空間に参加した際の行動のうち、ユーザ間での情報伝達に係る制限をする。チャットにおける秘匿するべき情報(秘匿対象キーワード579)の秘匿化処理がこれに該当する(図6参照)。
【0154】
特別待遇制御部242は、行動制限管理部238により管理される制限に基づいて、対象ユーザ又は対象ユーザが操作するキャラクタを、第2の仮想空間において特別扱いする所定の特別待遇制御を行う。ワープゲート6を利用して他の仮想空間3から移動してきたユーザキャラクタ4へ識別マーカ20を添付表示する制御がこれに該当する(図6参照)。
【0155】
行動制限通知制御部244は、対象ユーザが第2の仮想空間に参加する前に、第2の仮想空間における行動に関する制限を受ける旨を対象ユーザに通知する制御を行う。制限通知表示34の表示制御がこれに該当する(図8参照)。
また、通知する制御として、制限管理部236により行動制限される毎に、過去に同じイベントに関与しているので行動制限が適用されている旨のポップアップ表示を表示させる制御を含めてもよい。
【0156】
計時部280gは、システムクロックを利用して現在日時や制限時間等の各種計時を行う。
【0157】
音生成部290gは、音声データの生成やデコードをするICやソフトウェアの実行により実現され、ゲームサーバシステム1100Gのシステム管理や、オンラインゲームの提供に係る操作音や効果音、BGM、音声通話、などの音声データを生成或いはデコードする。そして、システム管理に関する音声信号は音出力部390gへ出力する。音出力部390gは、スピーカ等により実現され、音声信号に基づいて放音する。
【0158】
画像生成部292gは、ゲームサーバシステム1100Gのシステム管理のための各種管理画面の画像生成を行い、生成した画像を表示させるための表示制御信号を画像表示部392gへ出力する。画像表示部392gは、フラットパネルディスプレイや、ヘッドマウントディスプレイ、プロジェクターなど、画像を表示させるデバイスで実現される。
【0159】
また、画像生成部292gは、ゲームプレイに係る画像の生成を行う。例えば、各ユーザ端末1500に表示させる仮想空間3の画像をレンダリングする。
【0160】
通信制御部294gは、通信部394gを介して外部装置とのデータのやりとりを実現する。通信部394gは、ネットワーク9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現される。図1の例では通信装置1153がこれに該当する。
【0161】
記憶部500gは、処理部200gにゲームサーバシステム1100Gを統合的に制御させるための諸機能を実現するためのプログラムや各種データ等を記憶する。また、処理部200gの作業領域として用いられ、処理部200gが各種プログラムに従って実行した演算結果などを一時的に記憶する。この機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD-ROMやDVDなどの光学ディスク、オンラインストレージなどによって実現される。図1の例では本体装置が搭載するICメモリ1152やハードディスクなどの記憶媒体がこれに該当する。オンラインストレージを記憶部500gに含めてもよい。
【0162】
図13は、ゲームサーバシステム1100Gの記憶部500gが記憶するプログラムやデータの例を示す図である。記憶部500gは、例えば、ゲームサーバプログラム503と、ゲームサーバ登録データ510と、ゲーム初期設定データ560と、仮想空間制御データ600と、参加制限管理データ550gと、当該ゲームサーバシステム1100Gが設置されている場所の現実世界における現在日時を示す標準日時901と、を記憶する。勿論、これら以外のデータを適宜格納してもよい。
【0163】
ゲームサーバプログラム503は、処理部200gが読み出して実行することで、処理部200gをゲームサーバ制御部230として機能させるためのプログラムである。
【0164】
ゲーム初期設定データ560は、オンラインゲームの各種初期設定データを格納する。例えば、イベント定義データ570を格納する。
【0165】
イベント定義データ570は、仮想空間3で発生し得る全てのイベント(発生し得る事象;通常イベント10および特別イベント12を含む。)別に用意され、当該イベントに係る各種定義データを格納する。
【0166】
図14に示すように、1つのイベント定義データ570は、例えば固有のイベントID571と、イベント分類572と、イベント発生要件573と、関与済認定条件575と、イベント内容データ577と、適用制限指定データ512gと、秘匿対象キーワード579と、を含む。
【0167】
イベント分類572は、当該イベントが、通常イベント10すなわち重複関与許可イベントであるか、特別イベント12すなわち重複関与禁止イベントであるかを示す。
【0168】
関与済認定条件575は、当該イベントへのユーザキャラクタ4の関与が終了したと見なすための条件を記述する。関与済認定条件575の内容は、イベントの内容に応じて適宜設定される。例えば、クリアするまで何度でも挑戦できる類いのイベントであれば、関与済認定条件575をイベントクリア条件として記述する。プレイ回数やプレイ時間に制限がある場合には、回数や時間の上限値として記述する。
【0169】
イベント内容データ577は、イベントを実施するための各種設定データ(例えば、クリア報酬とされるレアアイテムの種類や付与数を指定するデータなど)を含む。
【0170】
適用制限指定データ512gは、ポータルサーバシステム1100Pが記憶する適用制限指定データ512(図10参照)と同じ内容である。1つの適用制限指定データ512gは、イベントID514gと、参加制限適用要件516gと、行動制限種別指定フラグ518gと、を含む。
【0171】
図13に戻って、仮想空間制御データ600は、ゲームサーバシステム1100Gが管理する仮想空間3別に作成され、仮想空間3に係る各種データを格納する。本実施形態では1つのゲームサーバシステム1100Gは、1つの仮想空間3を制御・管理するので、仮想空間制御データ600は1つだけである。
【0172】
仮想空間制御データ600は、管理サーバID601と、仮想空間ID602と、仮想空間日時603と、発生したイベント別のイベント管理データ605と、当該仮想空間に参加しているユーザキャラクタ4別のユーザキャラクタ管理データ607と、当該仮想空間に参加しているユーザ別のイベント関与履歴データ(写)609と、を含む。勿論、これら以外のデータも適宜含めることができる。
【0173】
1つのイベント管理データ605は、イベントIDと、発生日時と、イベント制御データと、参加ユーザアカウントと、イベント結果と、終了フラグと、を含む。勿論、これら以外のデータも適宜含めることができる。適宜含めるデータを省略してもよい。作成されたイベント管理データ605が、その仮想空間3におけるイベント個別の実施状況を示していることになる。
【0174】
1つのユーザキャラクタ管理データ607は、当該仮想空間3に参加しているユーザ毎に作成され、ユーザアカウントと、キャラクタの最新状態を示すキャラクタ制御パラメータ値、位置座標、モーション制御データ、プレイ成績、などを格納する。
【0175】
1つのイベント関与履歴データ(写)609は、当該仮想空間3に参加しているユーザのイベント関与履歴データ545(図11参照)の写しであり、ユーザアカウントと、当該仮想空間3への参加中に当該ユーザが関与したイベントを示す関与イベントIDリストと、イベント結果と、を格納する。勿論、これら以外のデータも適宜格納してもよい。
【0176】
図15は、参加制限管理データ550gのデータ構成例を示す図である。
参加制限管理データ550gは、参加制限管理データ550(図10参照)と同じデータ構造を有し、仮想空間3への参加に係る制限を管理するための各種データを格納する。ゲームサーバシステム1100Gでは、ワープ移動の制御毎に作成され、ワープゲート6を使ってユーザキャラクタ4が移動する先の仮想空間3(次の参加仮想空間)への参加についての制限に関する各種データを格納する。
【0177】
図16は、ユーザ端末1500の機能構成例を示す機能ブロック図である。ユーザ端末1500は、操作入力部100と、端末処理部200と、音出力部390と、画像表示部392と、通信部394と、端末記憶部500と、を備える。
【0178】
操作入力部100は、ユーザによってなされた各種の操作入力に応じた操作入力信号を端末処理部200に出力する。例えば、プッシュスイッチや、ジョイスティック、タッチパッド、トラックボール、加速度センサ、ジャイロ、などによって実現できる。
【0179】
端末処理部200は、例えばCPUやGPU等のマイクロプロセッサや、ICメモリなどの電子部品によって実現され、操作入力部100や端末記憶部500を含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100からの操作入力信号、ポータルサーバシステム1100Pやゲームサーバシステム1100Gから受信した各種データに基づいて各種の演算処理を実行して、ユーザ端末1500の動作を制御する。
【0180】
端末処理部200は、クライアント制御部260と、計時部280と、音生成部290と、画像生成部292と、通信制御部294と、を有する。
【0181】
クライアント制御部260は、仮想空間制御システム1000におけるゲームクライアントとしての制御として、ユーザ端末1500をマンマシンインターフェース(MMIF)として機能させる各種制御を行う。具体的には、クライアント制御部260は、操作入力情報提供部261と、表示制御部262と、接続切換制御部264と、を有する。
【0182】
操作入力情報提供部261は、操作入力部100からの入力に応じて操作入力情報をゲームサーバシステム1100Gへ送信する制御を行う。
【0183】
表示制御部262は、ゲームサーバシステム1100Gから受信したデータに基づいて各種の画像を表示させるための制御を行う。
【0184】
接続切換制御部264は、参加する仮想空間3の選択、つまりゲームプレイに係り接続するゲームサーバシステム1100Gを選択する制御を行う。
【0185】
具体的には、接続切換制御部264は、システムログイン後にポータルサーバシステム1100Pから所与の参加トークンを受信すると、ポータルサーバシステム1100Pとの接続を解除して、当該参加トークンで指し示されたゲームサーバシステム1100Gへ接続する制御を自動実行する。
【0186】
また、接続切換制御部264は、ワープゲート6を介したユーザキャラクタ4の仮想空間3の移動に係り、参加中の仮想空間3のゲームサーバシステム1100Gから、所与の参加トークンを受信すると、当該参加トークンで指し示された他のゲームサーバシステム1100G(移動先の仮想空間3を管理するゲームサーバシステム1100G)へ、自動で接続を切り換えて、当該他のゲームサーバシステム1100Gへプレイログインする制御を行う。
【0187】
計時部280は、システムクロックを利用して現在日時や制限時間等の計時を行う。
【0188】
音生成部290は、例えばデジタルシグナルプロセッサ(DSP)や、音声合成ICなどのプロセッサ、音声ファイルを再生可能なオーディオコーデック等によって実現され、楽曲や効果音、各種操作音の音信号を生成し、音出力部390に出力する。音出力部390は、スピーカなど音生成部290から入力される音信号に基づいて音出力(放音)する装置によって実現される。
【0189】
画像生成部292は、クライアント制御部260の制御に基づく画像を画像表示部392へ表示させる表示制御信号を出力する。図1の例では、制御基板1550に搭載されるGPU(Graphics Processing Unit)や、グラフィックコントローラ、グラフィックボード、などがこれに該当する。画像表示部392は、フラットパネルディスプレイや、ヘッドマウントディスプレイ、プロジェクターなど、画像を表示させる装置で実現される。
【0190】
通信制御部294は、データ通信に係るデータ処理を実行し、通信部394を介して外部装置とのデータのやりとりを実現する。
【0191】
通信部394は、ネットワーク9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現される。図1の例では通信モジュール1553がこれに該当する。
【0192】
端末記憶部500は、端末処理部200に所与の機能を実現させるためのプログラムや、各種データ等を記憶する。また、端末処理部200の作業領域として用いられ、端末処理部200が各種プログラムに従って実行した演算結果や操作入力部100から入力される入力データ等を一時的に記憶する。こうした機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD-ROMやDVDなどの光学ディスクなどによって実現される。図1の例では、制御基板1550が搭載するICメモリ1552がこれに該当する。
【0193】
具体的には、端末記憶部500は、ユーザ端末1500をクライアント制御部260として機能させるためのクライアントプログラム504(アプリケーションプログラム)と、現在日時900と、を記憶する。勿論、これら以外のデータも適宜記憶できる。例えば、参加トークンや参加トークンなども記憶する。
【0194】
図17は、ポータルサーバシステム1100Pが実行するシステムログイン処理の流れを説明するためのフローチャートである。システムログイン処理は、1人のユーザについてシステムログイン後に参加する仮想空間3の設定を行う処理である。
【0195】
同処理において、ポータルサーバシステム1100Pは、各ゲームサーバシステム1100Gで管理されている各仮想空間3におけるイベント実施状況の確認を行う(ステップS10)。具体的には、ポータルサーバシステム1100Pは、各ゲームサーバシステム1100Gへ所定のイベント実施状況報告リクエストを送信する。当該リクエストを受信したゲームサーバシステム1100Gは、それぞれで管理している仮想空間別のイベント管理データ605を、管理サーバID601、仮想空間ID602とともにポータルサーバシステム1100Pへ返信する。ポータルサーバシステム1100Pは、返信されたデータに基づいてゲームサーバシステム1100G別にイベント実施状況データ552を作成する。
【0196】
次に、ポータルサーバシステム1100Pは、仮想空間3の中から制限対象仮想空間を判定し、それぞれについて参加制限・行動制限・情報制限の何れの制限種類が適用されるかを判定する(ステップS12)。具体的には、ポータルサーバシステム1100Pは、仮想空間3それぞれについて適用制限判定結果557を作成する。
【0197】
次に、ポータルサーバシステム1100Pは、システムログインを希望するユーザのユーザ端末1500にて、システムログイン画面W2(図7参照)を表示させる(ステップS14)。参加希望選択肢表示33では、仮想空間3のそれぞれを参加希望選択肢に、それぞれの適用制限判定結果557に基づいて制限通知表示34を表示させる。参加禁止フラグが「1」の仮想空間にはついては、参加希望選択肢表示33内で選択肢として提示はするが、選択操作できないようにする。
【0198】
そして、ポータルサーバシステム1100Pは、ユーザによる参加希望選択肢表示33における参加希望選択肢の選択操作の受付を開始する(ステップS16)。
【0199】
受付開始から所定の制限時間内に選択操作があれば(ステップS18のYES)、ポータルサーバシステム1100Pは、選択操作された選択肢の仮想空間を参加仮想空間に設定する(ステップS20)。
【0200】
もし、制限時間内に選択操作が無ければ(ステップS18のNO)、ポータルサーバシステム1100Pは、参加仮想空間を自動設定する(ステップS22)。具体的には、適用制限判定結果557のうち最も制限が少ない仮想空間3を参加仮想空間として選択・設定するとしてもよい。或いは、システムログインを希望するユーザの前回参加仮想空間ID539が示す仮想空間3を自動選択して参加仮想空間として設定してもよい。
【0201】
次に、ポータルサーバシステム1100Pは、参加トークンを作成して、システムログインを希望するユーザのユーザ端末1500へ送信し(ステップS26)、参加トークンを認証するための認証情報を作成して、参加仮想空間の仮想空間3を管理するゲームサーバシステム1100Gへ送信する(ステップS28)。
【0202】
「参加トークン」の内容は、適宜設定可能である。例えば、ゲームサーバシステム1100Gにアクセスするためのアクセス情報(例えば、URLなど)と、ワンタイムパスワードと、ユーザアカウントと、システムログインであることを示すフラグと、を含むとしてもよい。「参加トークンを認証するための認証情報」も適宜設定可能である。例えば、ワンタイムパスワードと、ユーザ端末1500との通信で得られるユーザ端末1500の個体識別情報、ユーザアカウント、システムログインであることを示すフラグ、などを含むとしてもよい。
【0203】
参加トークンを受信したユーザ端末1500は、自動的に参加トークンが差し示すゲームサーバシステム1100Gへアクセスし、所定の参加リクエストを送信する。
【0204】
図18は、ゲームサーバシステム1100Gにおける処理の流れを説明するためのフローチャートである。同処理において、ゲームサーバシステム1100Gは、仮想空間3を構築してその管理制御を開始する(ステップS58)。これにより、仮想空間3では、当該仮想世界での時刻の経過や、参加ユーザのユーザキャラクタ4の仮想空間3内での行動に応じた通常イベント10や特別イベント12の発生が管理される。
【0205】
ゲームサーバシステム1100Gは、ユーザ端末1500から参加リクエストを受信すると(ステップS60のYES)、参加トークンの認証を行い(ステップS62)、ポータルサーバシステム1100Pから参加リクエストしたユーザ端末1500のユーザのイベント関与履歴データ545を取得し、これを処理対象ユーザのイベント関与履歴データ(写)609として記憶する(ステップS84)。
【0206】
イベント関与履歴データ(写)609は、参加リクエストしたユーザ端末1500のユーザ(参加希望ユーザ)が過去にプレイした仮想空間3(第1の仮想空間)で関与したイベントについての情報ということになる。なお、イベント関与履歴データ545の取得については特別イベント12に限定して取得してもよい。
【0207】
次に、ゲームサーバシステム1100Gは、参加希望ユーザを仮想空間3に参加登録する(ステップS66)。具体的には、ゲームサーバシステム1100Gは、ポータルサーバシステム1100Pから参加希望ユーザのゲームセーブデータ530を取得して、仮想空間制御データ600へ、参加希望ユーザのユーザキャラクタ管理データ607を作成する。
【0208】
次に、ゲームサーバシステム1100Gは、参加希望ユーザのゲームプレイを開始させ(ステップS68)、特別待遇制御を開始する(ステップS70)。すなわち、ユーザキャラクタ4を仮想空間3に配置し、操作入力に応じたユーザキャラクタ4の動作制御を開始してゲームプレイ可能にする。特別待遇制御では、参加仮想空間を変更して参加したユーザのユーザキャラクタ4への識別マーカ20の添付表示を行う。システムログイン後、最初に参加した仮想空間3では識別マーカ20無しでゲームプレイ開始となる。
【0209】
ゲームサーバシステム1100Gは、行動制限処理を実行する(ステップS72)。
【0210】
図19は、行動制限処理の流れを説明するためのフローチャートである。
同処理において、ゲームサーバシステム1100Gは、仮想空間3に参加中のユーザ別にループBを実行する(ステップS80からステップS100)。
【0211】
ループBにおいて、対象ユーザのイベント関与履歴データ(写)609を参照して、対象ユーザが過去に関与した特別イベント12と同じイベントを行動制限の対象となるイベントとして検索し(ステップS82)、行動対象の対象イベント別にループCを実行する(ステップS84からステップS98)。
【0212】
ループCにおいて、ゲームサーバシステム1100Gは、対象イベントのイベント定義データ570の行動制限種別指定フラグ518gを参照して、対象イベントに適用される行動制限の種類を検索し(ステップS86)、適用される行動制限の種類別にループDを実行する(ステップS90からステップS96)。
【0213】
ループDにおいて、ゲームサーバシステム1100Gは、対象種類の行動が、対象ユーザに係り実行されようとしているかを判定し、肯定の場合(ステップS92のYES)、当該行動の制限を実行する(ステップS94)。
【0214】
例えば、ループDの対象種類が「接近禁止」である場合、ゲームサーバシステム1100Gは、対象イベントのイベントエリアを判定し、対象ユーザのユーザキャラクタ4の位置座標が当該イベントエリアに達している場合に肯定判定する。そして、ユーザキャラクタ4がそれ以上イベントエリア内へ進入できないように、ユーザキャラクタ4の仮想空間3での位置移動を阻止する。イベントエリアは、適宜設定可能である。例えば、レイドイベント7cであれば、レイドボスキャラクタが出現する位置を中心に所定範囲としてもよい。
【0215】
また例えば、ループDの対象種類が「イベント参加禁止」である場合、ゲームサーバシステム1100Gは、ユーザ端末1500にて対象イベントに係るイベント参加操作(例えば、冒険者ギルドでの登録手続の開始操作、など)を検出したら肯定判定する。そして、イベント参加できないように当該イベント参加操作を無効とする。具体的には、操作メニューから該当操作を除外する、操作入力を受け付けないとする。
【0216】
また例えば、ループDの対象種類が「攻撃行動禁止」である場合、ゲームサーバシステム1100Gは、ユーザ端末1500にて対象イベントに係るNPCへの攻撃操作を検出すると肯定判定する。そして、攻撃ができないように当該攻撃操作を無効とし、ユーザキャラクタ4に攻撃行動を実行させない。ループDの対象種類が、対象イベントに参加している他ユーザのユーザキャラクタ4へのアイテムの使用や魔法の使用などの支援行動の禁止であっても、同様である。
【0217】
また例えば、ループDの対象種類が「特別イベントの発動操作の禁止」である場合、ゲームサーバシステム1100Gは、ユーザ端末1500にて対象イベントに係る発動操作(例えば、所定の遺跡オブジェクトが破壊されることで特別イベントが発動する場の当該遺跡オブジェクトへの破壊操作)を検出したら肯定判定する。そして、発動操作を無効とし、発動操作による発動をさせない。
【0218】
また例えば、ループDの対象種類が「チャットの禁止」である場合、ゲームサーバシステム1100Gは、ユーザ端末1500にてチャットテキストの入力が検出されたら、ゲームサーバシステム1100Gは入力されたテキスト文から単語を切り分け、対象イベントの秘匿対象キーワード579(図14参照)に該当するかを判定する。そして、該当する場合に肯定判定し、対象イベントの秘匿対象キーワード579で指定されたテキストへの秘匿化処理(例えば、所定の伏せ字や画像などへの置き換え)を行った後に、秘匿化処理後のチャットテキストを投稿されるテキスト文とする。
【0219】
ループCおよびループDの実行により、関与済の特別イベント12(ループBの対象ユーザが過去に参加・関与した第1の仮想空間の発生事象である第1の発生事象)と、現在参加している仮想空間3で未実行或いは実行中の発生事象(第1の仮想空間以外の仮想空間の発生事象)との異同に基づき、同じ特別イベント12についての重複関与が制限される。
【0220】
よって、とある特別イベント12をクリアして得たレアアイテムが更に欲しいからといって、別の仮想空間3に移動して同じ特別イベント12に参加・関与してレアアテイムを獲得する行為を繰り返すといった「イベント荒し」はできなくなる。また、移動先の仮想空間3にて、特別イベント12の「ネタバレ」をすることもできなくなる。
【0221】
図18に移って、ゲームサーバシステム1100Gは、ワープゲート6に入ったユーザキャラクタ4があれば(ステップS110のYES)、ユーザキャラクタ4のユーザを移動希望ユーザと見なしてワープ移動処理を実行する(ステップS112)。
【0222】
図20は、ワープ移動処理の流れを説明するためのフローチャートである。
ワープ移動処理は、ワープゲート6に入ったユーザキャラクタ4の参加仮想空間の変更に係る処理であり、次の参加仮想空間を設定する処理である。
【0223】
ワープ移動処理において、ゲームサーバシステム1100Gは、他のゲームサーバシステム1100Gで管理されている各仮想空間3におけるイベント実施状況の確認を行う(ステップS120)。具体的には、ゲームサーバシステム1100Gは、他のゲームサーバシステム1100Gへ所定のイベント実施状況報告リクエストを送信する。当該リクエストを受信した他のゲームサーバシステム1100Gは、それぞれで管理している他の仮想空間3別のイベント管理データ605、管理サーバID601、仮想空間ID602をリクエスト送信元へ返信する。ゲームサーバシステム1100Gは、返信されたデータに基づいて参加制限管理データ550gにイベント実施状況データ552gを作成する。
【0224】
次に、ゲームサーバシステム1100Gは、他のゲームサーバシステム1100Gが管理する他の仮想空間3の中から制限対象仮想空間を判定し、それぞれについて参加制限・行動制限・情報制限の何れの制限種類が適用されるかを判定する(ステップS122)。具体的には、他の仮想空間3それぞれについて、適用制限判定結果557gを作成する。
【0225】
次に、ゲームサーバシステム1100Gは、移動希望ユーザのユーザ端末1500にて、ワープ移動先選択画面W4(図8参照)を表示させる(ステップS124)。ワープ移動先選択画面W4の移動先選択肢表示40では、他の仮想空間3のそれぞれを移動先選択肢とし、それぞれの適用制限判定結果557gに応じた制限通知表示34を添付表示させる。参加禁止フラグが「1」である他の仮想空間3にはついては、移動先選択肢表示40内で選択肢として提示はするが選択操作できないようにする。つまり、参加禁止フラグが「1」である他の仮想空間3へ、ワープ移動を使用して参加することを禁止する。
【0226】
そして、ゲームサーバシステム1100Gは、ワープ移動先選択画面W4での移動先選択肢のユーザによる選択操作の受付を開始する(ステップS126)。
受付開始から所定の制限時間内に選択操作があれば(ステップS128のYES)、ゲームサーバシステム1100Gは、選択操作された選択肢に対応する他の仮想空間3を、次の参加仮想空間に設定する(ステップS130)。
【0227】
もし、制限時間内に選択操作が無ければ(ステップS128のNO)、ゲームサーバシステム1100Gは、参加仮想空間を自動設定する(ステップS132)。具体的には、適用制限判定結果557gのうち最も制限が少ない或いは制限の無い他の仮想空間3を参加仮想空間として選択・設定するとしてもよい。
【0228】
次に、ゲームサーバシステム1100Gは、参加トークンを生成して移動希望ユーザのユーザ端末1500へ送信し(ステップS134)、参加トークンを認証するための認証情報を生成して参加仮想空間とされた他の仮想空間3を管理するゲームサーバシステム1100Gへ送信する(ステップS136)。
【0229】
参加トークンを受信したユーザ端末1500は、自動的に参加トークンが差し示すゲームサーバシステム1100Gへアクセスし、所定の参加リクエストを送信する。
【0230】
図18に戻って、上述したように、ゲームサーバシステム1100Gは、ステップS58により仮想空間3についての制御を実行しており、通常イベント10や特別イベント12の発生やイベントの制御が行われている。これに係り、ゲームサーバシステム1100Gは、イベント管理データ605を作成・管理している。
【0231】
ゲームサーバシステム1100Gは、発生中のイベントに係り当該イベントの関与済認定条件575を満たしたユーザキャラクタ4を検出すると(ステップS150のYES)、検出されたユーザキャラクタ4を対象として参加記録処理を実行する(ステップS152)。
【0232】
具体的には、例えば、発生中のイベントがレイドイベント7cであって、関与済認定条件575としてクリア条件(例えば、レイドボスに所定値以上のダメージを与える、など)、が設定されている場合、イベントがクリアすると、ゲームサーバシステム1100Gは、ポータルサーバシステム1100Pへ、レイドに参加していたユーザキャラクタ4別(イベント管理データ605の参加ユーザアカウント別)に参加記録リクエストを送信する。
【0233】
この参加記録リクエストには、イベント関与履歴データ545に格納される各種データが含まれている。ポータルサーバシステム1100Pは、参加記録リクエストを受信すると、リクエストされたユーザのユーザ管理データ520に参加記録データ540にイベント関与履歴データ545を追加する。つまり、当該ユーザは、当該イベントに関与済として記録されることになる。
【0234】
もし、ユーザ端末1500にて所定のログアウト操作が入力されたならば、ゲームサーバシステム1100Gは、ログアウト希望ユーザがあると判定し(ステップS154のYES)、当該ログアウト希望ユーザを対象としてゲームセーブ処理を実行して(ステップS156)、当該ログアウト希望ユーザの参加解除をする(ステップS158)。
【0235】
具体的には、ゲームサーバシステム1100Gは、ポータルサーバシステム1100Pへゲームセーブリクエストを送信する。当該リクエストには、ログアウト希望ユーザのユーザアカウントと、ゲームセーブデータ530に格納されるデータが含まれており、ポータルサーバシステム1100Pは、ログアウト希望ユーザのゲームセーブデータ530を更新する。そして、ゲームサーバシステム1100Gは、仮想空間制御データ600からログアウト希望ユーザのユーザキャラクタ管理データ607を削除し、ユーザキャラクタ4を仮想空間3から消去する。
【0236】
以上、本実施形態によれば、共通の世界観に設定されてユーザ毎の参加仮想空間が可変である複数の仮想空間を並行に制御するシステムにおいて、ユーザが異なる仮想空間に参加して他のユーザのユーザ体験を阻害する行為を低減させることが可能となる技術を提供することができる。
【0237】
すなわち、仮想空間制御システム1000は、発生事象を仮想空間毎に管理し、仮想空間別のユーザの参加記録を管理する。参加記録には、当該仮想空間の発生事象への当該ユーザの関与記録も含まれる。そして、仮想空間制御システム1000は、第1の仮想空間と第1の仮想空間以外の仮想空間における発生事象との異同と、ユーザの第1の仮想空間での参加記録と、に基づいて、参加先の仮想空間において、同一ユーザによる同一発生事象への重複関与が起き得るか否かを判定し、参加先の変更に係る制限を行う。つまり、共通の世界観に設定されてユーザ毎の参加仮想空間が可変である複数の仮想空間を並行に制御するシステムにおいて、ユーザが異なる仮想空間に参加して他のユーザのユーザ体験を阻害する行為を低減させることが可能となる。
【0238】
〔変形例〕
以上、本発明を適用した実施形態の一例について説明したが、本発明を適用可能な形態は上記形態に限定されるものではなく適宜構成要素の追加・省略・変更を施すことができる。
【0239】
(変形例その1)
例えば、上記実施形態では、運用システム1010が、ポータルサーバシステム1100Pとゲームサーバシステム1100Gとを有する構成を例示したが、ポータルサーバシステム1100Pを省略した構成としてもよい。その場合、システムログインは、ユーザ端末1500が計時する現在日時に最も近い現在日時を計時するゲームサーバシステム1100Gにて実行することとし、システムログイン処理(図17参照)を省略してもよい。上記実施形態においてポータルサーバシステム1100Pが記憶することになっているユーザ管理データ520(図10参照)は、ユーザ端末1500が計時する現在日時に最も近い現在日時を計時するゲームサーバシステム1100Gにて記憶・管理するとしてもよい。すなわち、ユーザ管理部202(図9参照)をゲームサーバシステム1100Gにて実装する構成としてもよい。
【0240】
(変形例その2)
また、上記実施形態では、ユーザ管理データ520をポータルサーバシステム1100Pにて記憶・管理する構成として説明したが、ユーザ管理データ520の一部又は全部をユーザ端末1500にて記憶・管理する構成としてもよい。その場合、ゲームサーバシステム1100Gは、ユーザ管理データ520に含まれるデータの参照が必要な場合、ポータルサーバシステム1100Pへリクエストせずユーザ端末1500へリクエストすることになる。
【0241】
(変形例その3)
また、上記実施形態では、仮想体験の例としてオンラインゲームを例示したが、ゲームジャンルはMMORPGに限らない。また、仮想体験もゲーム体験に限らない。例えば(a)仮想世界に用意された各種パピリオンを巡る博覧会体験、(b)現実では実現できないような仮想遊園地・仮想農園・仮想牧場の体験、(c)深海・空中・宇宙などを遊泳する仮想体験、(d)仮想のプラスチックモデルや家屋の組み立て体験、(e)仮想世界での恋愛体験、(f)仮想の戦場や競技場での戦闘や競技の体験、などでもよい。発生事象すなわちイベントの内容は、それら体験のテーマに応じて適宜設定すればよい。
【0242】
(変形例その4)
また、上記実施形態では、参加制限として、ユーザキャラクタ4が過去に関与した特別イベント12と同一のイベントが発生していない仮想空間3への参加を制限する例を示したが、ユーザキャラクタ4が過去に関与した特別イベント12に相当するイベントについても、同一のイベントと見なして参加を制限するとしてもよい。その場合、ゲームサーバシステム1100Gには、別途、相当イベント関係データを記憶させておく。相当イベント関係データは、厳密には同じイベントではないが、相当とみなせるイベント群のリストである。適用制限判定結果557、適用制限判定結果557gの生成に係る処理では、ユーザキャラクタ4が過去に関与した特別イベント12と同一のイベントに加え、相当イベント関係データでユーザキャラクタ4が過去に関与した特別イベント12と関連づけられた相当イベントについても処理対象とする。
【0243】
(変形例その5)
例えば、上記実施形態では、ゲームサーバシステム1100Gが各ユーザ端末1500に表示する画像(ゲーム画像)を生成することとして説明したが、画像生成は各ユーザ端末1500が実行することとしてもよい。その場合、各ユーザ端末1500がレンダリングを行うため、レンダリングのために必要なデータをゲームサーバシステム1100Gがユーザ端末1500に送信すればよい。
【符号の説明】
【0244】
3…仮想空間
4…ユーザキャラクタ
6…ワープゲート
7…イベント
10…通常イベント
12…特別イベント
20…識別マーカ
33…参加希望選択肢表示
34…制限通知表示
40…移動先選択肢表示
204…参加記録管理部
206…関与履歴管理部
210…システムログイン管理部
212…イベント実施状況把握部
214…制限管理部
216…第2の仮想空間選択部
230…ゲームサーバ制御部
232…発生事象管理部
234…第2の仮想空間選択部
236…制限管理部
238…行動制限管理部
240…情報制限管理部
242…特別待遇制御部
244…行動制限通知制御部
260…クライアント制御部
264…接続切換制御部
501…ポータルサーバプログラム
503…ゲームサーバプログラム
504…クライアントプログラム
512…適用制限指定データ
516…参加制限適用要件
518…行動制限種別指定フラグ
520…ユーザ管理データ
540…参加記録データ
545…イベント関与履歴データ
550…参加制限管理データ
552…イベント実施状況データ
557…適用制限判定結果
570…イベント定義データ
572…イベント分類
573…イベント発生要件
575…関与済認定条件
579…秘匿対象キーワード
600…仮想空間制御データ
603…仮想空間時
605…イベント管理データ
607…ユーザキャラクタ管理データ
1000…仮想空間制御システム
1010…運用システム
1100G…ゲームサーバシステム
1100P…ポータルサーバシステム
1500…ユーザ端末
W2…システムログイン画面
W4…ワープ移動先選択画面
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20