以下、本発明の実施形態の例を説明するが、本発明を適用可能な形態が以下の実施形態に限られないことは勿論である。
図1は、本実施形態におけるゲームシステムの構成の一例を示す図である。本実施形態のゲームシステム1000は、ネットワーク9に接続することで相互にデータ通信が可能なサーバシステム1100及び複数のプレーヤ端末1500(1500a,1500b,…)を含むコンピュータシステムであり、ゲームコンテンツ(或いはゲームアプリケーションとも呼ばれる)を提供するコンテンツ提供システムである。
ネットワーク9は、データ通信が可能な通信路を意味する。すなわち、ネットワーク9とは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLAN(Local Area Network)の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線/無線を問わない。
サーバシステム1100は、本体装置1101と、キーボード1106と、タッチパネル1108と、ストレージ1140とを有し、本体装置1101には制御基板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)により実現するとしてもよい。
そして、サーバシステム1100は、制御基板1150が所定のプログラム及びデータに基づいて演算処理することにより、1)ユーザ登録等に係るユーザ管理機能と、2)登録ユーザであるプレーヤ2(2a,2b,…)がプレーヤ端末1500(1500a,1500b,…)でゲームプレイするのに必要なデータを提供してプレーヤ端末1500(1500a,1500b,…)でのゲームの実行制御を管理するゲーム管理機能と、3)ゲームで利用可能な様々なアイテムをオンラインでユーザに販売するオンラインショッピング機能と、を実現する。つまり、本実施形態におけるゲームは、一種のクライアント・サーバ型のオンラインゲームとして実現される。
なお、サーバシステム1100は単体として記しているが、各機能を分担する複数のブレードサーバを搭載して相互に内部バスを介してデータ通信可能に接続した構成であっても良い。或いは、離れた場所に設置された独立した複数のサーバを、ネットワーク9を介してデータ通信させることで、全体としてサーバシステム1100として機能させる構成であっても良い。
プレーヤ端末1500(1500a,1500b,…)は、登録ユーザであるプレーヤ2(2a,2b,…)がゲームプレイのために個別に使用するコンピュータシステムであって、ネットワーク9を介してサーバシステム1100にアクセスしてオンラインゲームを実行できる電子装置(電子機器)である。機能的に言えばゲーム装置となるものである。本実施形態のプレーヤ端末1500は、ハードウェアとしてはいわゆるスマートフォンと呼ばれる装置であるが、携帯型ゲーム装置や、ゲームコントローラ、パソコン、タブレット型コンピュータ、ウェアラブルコンピュータ、家庭用ゲーム装置、業務用ゲーム装置などでもよい。
図2は、本実施形態におけるプレーヤ端末1500の構成例を示す正面図である。
プレーヤ端末1500は、方向入力キー1502と、ボタンスイッチ1504と、画像表示デバイス兼接触位置入力デバイスとして機能するタッチパネル1506と、スピーカ1510と、内蔵バッテリー1509と、マイク1512と、カメラ1520と、制御基板1550と、コンピュータ読み出し可能な記憶媒体であるメモリカード1540からデータを読み書きできるメモリカード読取装置1542と、を備える。その他、図示されていない電源ボタン、音量調節ボタン等が設けられている。また、ゲームプレイの対価の支払いが可能なICカード型のクレジットカードやプリペイドカードに対して非接触にデータの読み書きが行えるICカード読取装置などを設けるとしてもよい。
制御基板1550は、CPU1551やGPU,DSPなどの各種マイクロプロセッサ、VRAMやRAM,ROM等の各種ICメモリ1552、ネットワーク9に接続する携帯電話基地局や無線LAN基地局などと無線通信するための無線通信モジュール1553、インターフェース回路1557などを搭載する。
インターフェース回路1557には、タッチパネル1506のドライバ回路、方向入力キー1502及びボタンスイッチ1504からの信号を受信する回路、スピーカ1510へ音声信号を出力する出力アンプ回路、マイク1512で集音した音声の信号を生成する入力信号生成回路、カメラ1520で撮影された画像の画像データを入力する回路、メモリカード読取装置1542への信号入出力回路、などが含まれている。
制御基板1550に搭載されているこれらの要素は、バス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。なお、制御基板1550の一部又は全部をASICやFPGA、SoCにて構成してもよい。そして、制御基板1550は、本実施形態のゲームのプレーヤ端末としての機能を実現させるためのプログラムや各種データをICメモリ1552に記憶する。
なお、本実施形態では、プレーヤ端末1500はクライアントプログラムや各種設定データをサーバシステム1100からダウンロードする構成としているが、別途入手したメモリカード1540などの記憶媒体から読み出す構成としても良い。
図3~図5は、ハラスメントプレーヤへの対策としての差替表示について説明するための図である。本実施形態で実行されるゲームは、複数のプレーヤ2(2a,2b,…)がマッチングされ、それぞれプレーヤキャラクタ4(4a,4b,…)を操作して仮想3次元空間に設定された共通のゲーム空間で対戦するマルチプレイ型のオンラインゲームである。また、本実施形態のゲームは、マッチング処理を行ってマッチングされた複数のプレーヤがゲームプレイを開始し、所定の終了条件を満たすと当該1回分のゲームプレイが終わるゲームである。
図3に示すように、とある第nゲームプレイにおいて、第1プレーヤ2aと、第2プレーヤ2bとが含まれるようにマッチングが行われている。なお、図3の例では、理解を容易にするために、第1プレーヤ2aのプレーヤ端末1500aで表示されるゲーム画面W1と、第2プレーヤ2bのプレーヤ端末1500bで表示されるゲーム画面W2とを、同じに描いているが、実際には、各プレーヤ別の仮想カメラが用意され、それぞれの仮想カメラで仮想3次元空間を撮影した画像がゲーム画面の元になるので、ゲーム画面W1とゲーム画面W2とは、それぞれ異なる視点位置・異なるアングルによる画像となる。
さて、図3において、第2プレーヤ2bがプレーヤキャラクタ4bで、第1プレーヤ2aのプレーヤキャラクタ4aに対して、不当に迷惑行為をしている。この状態を、「第2プレーヤが第1プレーヤに迷惑行為をしている」「第2プレーヤは第1プレーヤにとってのハラスメントプレーヤである」と言うこととする。
「迷惑行為」の定義は、適宜設定可能である。例えば、プレーヤキャラクタの移動を邪魔する、プレーヤキャラクタの周囲で無意味な動作を繰り返す、同士討ちの攻撃をする、チャット機能を用いて攻撃的・不穏当・性的・威嚇的な用語を多用する、不必要にフレンド登録の承認要請(相互の交遊関係の設定登録の承認要請)を繰り返す、などである。
ハラスメントプレーヤ(この場合、第2プレーヤ2b)のせいで、被害者である第1プレーヤ2aは楽しくプレイできない。また、第1プレーヤ2a以外のプレーヤ(例えば、第1プレーヤ2aと集ってプレイしている第1プレーヤ2aの友人である交遊プレーヤ)も迷惑行為を見せられることで、不快になるであろう。
第2プレーヤ2bが、誰彼構わず迷惑行為を行うのであれば、当該プレーヤのアカウントを停止して、ゲームから追放すれば問題は解決する。しかし、第2プレーヤ2bが、第1プレーヤ2aのみに対して迷惑行為する場合、アカウントを停止して追放する処理を単純に適用するわけにはいかない。また、プレーヤ別にブラックリストを作成し、ブラックリストに登録されている他プレーヤとのマッチングを行わないようなサービスを提供しても、プレーヤ数が多くなると、マッチングの成立が困難になる。
そこで、本実施形態では、プレーヤの自己申告による自プレーヤをハラスメントプレーヤからの保護の対象として欲しい旨の設定に基づいて、ハラスメントプレーヤのプレーヤ端末1500における保護対象プレーヤに係る表示の差し替えを行う。
自分が迷惑行為を受けていると感じた第1プレーヤ2aは、自身のプレーヤキャラクタ4aに迷惑行為をしているプレーヤキャラクタ4bに添付されているプレーヤ識別情報表示5bを確認して、ハラスメントプレーヤ(第2プレーヤ2b)のプレーヤ識別情報(プレーヤアカウントや、ハンドルネーム;本実施形態ではプレーヤアカウントとする。)を認識する。
第1プレーヤ2aは、ゲーム終了後に、プレーヤ端末1500aで、ハラスメントプレーヤ(第2プレーヤ2b)のプレーヤ識別情報(プレーヤアカウント)を指定した所定の保護対象登録を要求する操作を入力する。プレーヤ端末1500aは、当該操作入力を検出するとサーバシステム1100へ所定の保護対象設定リクエストを送信する。サーバシステム1100は、当該リクエストの送信元であるプレーヤ端末1500aのプレーヤ(第1プレーヤ2a)のプレーヤ識別情報(プレーヤアカウント)を判別することで保護対象プレーヤを判別して、指摘されたハラスメントプレーヤと対応付けた保護対象設定を受け付けて、保護対象設定データ630を生成・保存する。
保護対象設定データ630は、固有の保護対象設定ID631と、保護対象プレーヤアカウント633と、ハラスメントプレーヤアカウント635と、の情報が対応づけて格納される。
そして、サーバシステム1100は、この保護対象設定データ630に基づいて、差替表示制御を行う。具体的には、マッチングを行った後に、マッチングされたプレーヤの中に、保護対象設定データ630で、保護対象プレーヤアカウント633に設定されているプレーヤと、ハラスメントプレーヤアカウント635に設定されているプレーヤとが、存在するかを検出する。言い換えると、ハラスメントプレーヤを検出する。そして、ハラスメントプレーヤを検出すると、サーバシステム1100は、当該ハラスメントプレーヤのプレーヤ端末1500に対して差替表示制御を行う。
例えば、図4の例では、図3で保護対象設定データ630を登録した第1プレーヤ2aが、前回(図3の第nゲームプレイ)とは別のゲーム(図4の第n+1ゲームプレイ)において、再び第2プレーヤ2bとがマッチングされている。
保護対象設定データ630により、第2プレーヤ2bがハラスメントプレーヤとして登録されているので、サーバシステム1100は、第2プレーヤ2bのプレーヤ端末1500bで表示されるゲーム画面W2では、第1プレーヤ2aに関する表示を、予め用意されている第三者プレーヤ2zの設定に基づいて差替表示する。第2プレーヤ2b以外のプレーヤのプレーヤ端末1500では、差し替えは行わない。
差替表示の実現方法は、適宜選択可能である。本実施形態では、ハラスメントプレーヤ用と非ハラスメントプレーヤ用とで、別々に仮想3次元空間を用意する。両空間は、配置されるオブジェクトの差替表示を除いて区別なく同じにように制御される。これにより、共通のゲーム空間でゲームプレイを行うことが担保される。そして、ハラスメントプレーヤ用の仮想3次元空間には、ハラスメントプレーヤ(第2プレーヤ2b)のプレーヤキャラクタ4bを撮影する仮想カメラを配置・制御し、非ハラスメントプレーヤ用の仮想3次元空間には、ハラスメントプレーヤ以外のプレーヤ別の視点となる複数の仮想カメラを配置・制御する、ことで差替表示を実現する。
第三者プレーヤ2zは、キャラクタとの対応関係が固定された実在するプレーヤが存在しない架空のプレーヤであってもよいし、例えばゲーム提供事業者のスタッフなどの実在プレーヤで、予め本明細書で言うところの差し替えに使用されることを承諾したプレーヤであってもよい。本実施形態では、前者として説明する。
第三者プレーヤ2zの設定は、ゲーム提供事業者が様々なパターンを何種類も用意しておき、同じ保護対象プレーヤについて、同じ設定が連続して使用されないようにしつつ、ランダムに選択して使用される。なお、第三者プレーヤ2zの設定は、予め用意しておくのではなく、サーバシステム1100が、プレーヤ識別情報、プレーヤキャラクタのモデル、プレーヤキャラクタの性別、プレーヤキャラクタのカラー設定、などをランダムに生成するとしてもよい。
差替表示により、ハラスメントプレーヤ(第2プレーヤ2b)のプレーヤ端末1500bでは、第1プレーヤ2aのプレーヤキャラクタ4aは、第三者プレーヤ2zのプレーヤキャラクタ4zに差し替えて表示される。また、プレーヤキャラクタ4zに添付されるプレーヤ識別情報表示5zは、第1プレーヤ2aのプレーヤアカウントに代えて、第三者プレーヤ2zのプレーヤアカウントが表示される。プレーヤ識別情報表示5をタッチ操作すると、当該プレーヤキャラクタのプレーヤについての詳細情報(例えば、プレーヤが事前登録した個人情報(真偽は問わない;年齢、性別、出身地、所属チーム、プレイ時間、所持アイテム、プレイ履歴、ゲーム進行度、フレンド情報、など)や、プレーヤレベル、プレーヤキャラクタの属性・職種・カテゴリー、など)をポップアップ表示させることができる。このポップアップがハラスメントプレーヤ(第2プレーヤ2b)のプレーヤ端末1500bで表示される際、サーバシステム1100は、第1プレーヤ2aの本来の詳細情報を、第三者プレーヤ2zの詳細情報に差し替えて表示させる。
また、差替表示制御を開始すると、サーバシステム1100は、第1プレーヤ2aのプレーヤ端末1500に表示されているゲーム画面W1に、差替表示制御を行っている旨(又は行う旨)の差替発動通知10を表示させる。そして、差替発動通知10へのタッチ操作を検出すると、サーバシステム1100は、第1プレーヤ2aのプレーヤキャラクタ4aが変更されて第2プレーヤ2bのプレーヤ端末1500bに表示制御されているキャラクタの画像を含む変更キャラクタ通知12をポップアップ表示させる。
こうした差替表示制御を行うことで、ハラスメントプレーヤ(第2プレーヤ2b)は、第1プレーヤ2aの存在を認識できなくなるので、第1プレーヤ2aへの迷惑行為を起こさない。第1プレーヤ2aは、いつも通りに自身のプレーヤキャラクタ4aでゲームプレイを楽しむことができる。他プレーヤも迷惑行為を目にすることもなく、気持ちよくゲームプレイできる。勿論、第2プレーヤ2bもまた、迷惑行為を行わない分、気持ち良くゲームプレイできる。
また、差替表示制御であるため、マッチングが困難になるような事態も起きえない。すなわち、本実施形態ではマッチングの時点では、ハラスメントプレーヤについては考慮する必要がない。従って、マッチングの困難が生じることが無い。
なお、マッチングされた複数のプレーヤの中に、保護対象プレーヤと交遊関係が設定されたプレーヤ(第1交遊プレーヤ、いわゆるフレンドプレーヤ)が含まれる場合には、サーバシステム1100は、当該交遊プレーヤも、保護対象プレーヤに準じた「連鎖保護対象プレーヤ」「見なし保護対象プレーヤ」として扱う。また、マッチングされた複数のプレーヤの中に、ハラスメントプレーヤと交遊関係が設定されたプレーヤ(第2交遊プレーヤ)が含まれる場合には、サーバシステム1100は、当該交遊プレーヤをハラスメントプレーヤに準じた「連鎖ハラスメントプレーヤ」「見なしハラスメントプレーヤ」として扱う。
例えば、図5の例では、図4と同様の保護対象設定データ630が適用されるものとする。そして、第1プレーヤ2aと、第1プレーヤ2aの友人である第1交遊プレーヤ2cと、第2プレーヤ2bと、第2プレーヤ2bの友人である第2交遊プレーヤ2dとが、マッチングされているものとする。
なお、図5の例では、理解を容易にするために、第1プレーヤ2aのプレーヤ端末1500aで表示されるゲーム画面W1と、第1交遊プレーヤ2cのプレーヤ端末1500cで表示されるゲーム画面W3とを、同じに描いているが、実際には、各プレーヤキャラクタ4(4a,4c)を中心に撮影するプレーヤ別の仮想カメラが用意され、それぞれの仮想カメラで仮想3次元空間を撮影した画像がゲーム画面の元になるので、ゲーム画面W1とゲーム画面W3とは異なる視点位置・異なるアングルによる画像となる。同様にして、第2プレーヤ2bのプレーヤ端末1500bで表示されるゲーム画面W2と、第2交遊プレーヤ2dのプレーヤ端末1500dで表示されるゲーム画面W4とを、同じに描いているが、実際にはゲーム画面W2とゲーム画面W4とは異なる視点位置・異なるアングルによる画像となる。
この例では、本来、ハラスメントプレーヤは第2プレーヤ2bのみであるが、サーバシステム1100は、その第2交遊プレーヤ2dもハラスメントプレーヤに準ずる扱いとし、第2交遊プレーヤ2dのプレーヤ端末1500dにおける表示も、差替表示の対象とされる。そして、第1プレーヤ2aは保護対象プレーヤに設定されているので、その第1交遊プレーヤ2cの表示は、第三者プレーヤ2x(第1プレーヤ2aに使用された第三者プレーヤ2zとは別)の表示に差し替えられる。
その結果、第1プレーヤ2aのプレーヤ端末1500aで表示されるゲーム画面W1と、第1交遊プレーヤ2cのプレーヤ端末1500cで表示されるゲーム画面W3とでは、第1プレーヤ2aのプレーヤキャラクタ4aも、第1交遊プレーヤ2cのプレーヤキャラクタ4cも、本来の姿で表示される。それぞれのプレーヤ識別情報表示5(5a,5c)では、本来のプレーヤ識別情報が表示されている。
しかし、第2プレーヤ2bのプレーヤ端末1500bで表示されるゲーム画面W2と、第2交遊プレーヤ2dのプレーヤ端末1500dで表示されるゲーム画面W4とでは、第1プレーヤ2aのプレーヤキャラクタ4aに替えて第三者のプレーヤキャラクタ4zが、第1交遊プレーヤ2cのプレーヤキャラクタ4cに替えて第三者のプレーヤキャラクタ4xが、それぞれ表示される。それぞれのプレーヤ識別情報表示5(5a,5c)には、本来の表示に代えて第三者のプレーヤ識別情報が表示されている。
なお、差替発動通知10や、変更キャラクタ通知12、プレーヤについての詳細情報の表示については、図5のケースでも図4と同様とする。
図6は、本実施形態におけるサーバシステム1100の機能構成例を示す機能ブロック図である。本実施形態におけるサーバシステム1100は、操作入力部100sと、サーバ処理部200sと、音出力部390sと、画像表示部392sと、通信部394sと、サーバ記憶部500sとを備える。
操作入力部100sは、サーバの管理のための各種操作を入力するための手段である。図1のキーボード1106がこれに該当する。
サーバ処理部200sは、例えばCPUやGPU等のマイクロプロセッサや、ASIC、ICメモリなどの電子部品によって実現され、操作入力部100sやサーバ記憶部500sを含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100sからの操作入力信号、プレーヤ端末1500から受信したデータ、等に基づいて各種の演算処理を実行して、サーバシステム1100の動作を統合的に制御する。
そして、本実施形態のサーバ処理部200sは、ユーザ管理部202と、ゲーム管理部210と、計時部280sと、音生成部290sと、画像生成部292sと、通信制御部294sとを含む。勿論、これら以外の機能部も適宜含めることができる。
ユーザ管理部202は、ユーザ登録手続きに係る処理及びユーザアカウントに紐付けられる各ユーザのデータの管理を行う。本実施形態では、ユーザ管理部202は、1)登録ユーザへの固有のユーザアカウントやハンドルネームの付与と、2)ユーザアカウント別に個人情報を登録管理する登録情報管理と、3)課金要素(本実施形態ではオンラインショッピングとプレイ対価など)の支払いで消費される電子決済媒体の帳簿管理と、4)ログイン及びログアウトの履歴等を管理するプレイ履歴管理と、5)セーブデータ等の管理と、の各機能を有する。勿論、これら以外のアカウントに紐付けられる他のデータの管理機能も適宜含めることができる。
ゲーム管理部210は、ゲームの実行管理に係る各種処理と、プレーヤ間のチャット機能を実現する処理と、プレーヤ間の交遊関係設定に係る処理と、プレーヤキル行為の検出処理と、を行う。本実施形態のゲームは、クライアント・サーバ型のオンラインゲームなので、本実施形態のゲーム管理部210は、プレーヤ端末1500と通信を行いながらゲームプレイに必要なデータを提供する制御を行う。
そして、本実施形態のゲーム管理部210は、マッチング処理部212と、ハラスメントプレーヤ登録部214と、ハラスメントプレーヤ検出部216と、差替表示制御部220と、変更キャラクタ通知制御部230と、発動通知制御部232と、を有する。勿論、これら以外の機能部も適宜含むとしてもよい。
マッチング処理部212は、ゲームに同時参加する所定人数のプレーヤの組み合わせを決定する。つまり、いわゆるマッチングを行う。
ハラスメントプレーヤ登録部214は、第1プレーヤの登録操作に基づいて、当該第1プレーヤに対するハラスメントプレーヤを登録する制御を行う。具体的には、プレーヤによる所定の保護対象登録操作の入力に応じて保護対象設定データ630を生成し保存するする制御を行う(図3参照)。
ハラスメントプレーヤ検出部216は、第1プレーヤに対する所与のハラスメント条件を満たす第2プレーヤを検出する。具体的には、ハラスメントプレーヤ登録部214による登録に基づいて、ハラスメント条件を満たす第2プレーヤを検出する。また、ハラスメントプレーヤ検出部216は、予め設定されたハラスメント行為を第1プレーヤに対して行ったプレーヤか否かに基づいて、ハラスメント条件を満たす第2プレーヤを検出する。
差替表示制御部220は、マッチング処理によって第1プレーヤと第2プレーヤとがマッチングされた場合に、第1プレーヤに関する表示を所与の第三者プレーヤに関する表示に差し替えて第2プレーヤのプレーヤ端末に表示させる差替表示制御を行う。また、差替表示制御部220は、第1プレーヤと第2プレーヤとが前回マッチングされたときの前回の差替表示制御とは異なる差し替え内容で今回の差替表示制御を行う。
そして、差替表示制御部220は、プレーヤ識別情報変更部222と、キャラクタ変更部224と、プレーヤ詳細情報変更部226と、を有する。
プレーヤ識別情報変更部222は、第2プレーヤのプレーヤ端末に表示させる第1プレーヤのプレーヤ識別情報を変更することで、第1プレーヤに関する表示を第三者プレーヤに関する表示に差し替える。
キャラクタ変更部224は、第2プレーヤのプレーヤ端末に表示させる第1プレーヤのプレーヤキャラクタを変更することで、第1プレーヤに関する表示を第三者プレーヤに関する表示に差し替える。
プレーヤ詳細情報変更部226は、第2プレーヤのプレーヤ端末に表示させる第1プレーヤに関する詳細情報を変更することで、第1プレーヤに関する表示を第三者プレーヤに関する表示に差し替える。
そして、差替表示制御部220は、第1プレーヤと所定の交遊関係が設定された第1交遊プレーヤに関する表示を、第1プレーヤに係る差替表示と合わせて、第1プレーヤとは異なる所与の第三者プレーヤの表示に差し替えて表示させる。具体的には、差替表示制御部220は、第1プレーヤと、第1プレーヤと所定の交遊関係が設定された第1交遊プレーヤと、第2プレーヤとがマッチング処理によってマッチングされた場合に、第1プレーヤおよび第1交遊プレーヤに関する表示を異なる第三者プレーヤに関する表示に差し替えて第2プレーヤのプレーヤ端末に表示させる。
また。差替表示制御部220は、第2プレーヤのプレーヤ端末に対して差替表示するのに合わせて、第2プレーヤと所定の交遊関係が設定された第2交遊プレーヤのプレーヤ端末に対しても差替表示する。具体的には、差替表示制御部220は、第1プレーヤと、第2プレーヤと、第2プレーヤと所定の交遊関係が設定された第2交遊プレーヤとがマッチング処理によってマッチングされた場合に、第1プレーヤに関する表示を第三者プレーヤに関する表示に差し替えて第2プレーヤのプレーヤ端末および第2交遊プレーヤのプレーヤ端末に表示させる。
変更キャラクタ通知制御部230は、キャラクタ変更部224によって第1プレーヤのプレーヤキャラクタが変更されて第2プレーヤのプレーヤ端末に表示制御されているキャラクタの画像を、第1プレーヤのプレーヤ端末に表示させる制御を行う。
発動通知制御部232は、差替表示制御を行う旨、又は行っている旨を、第1プレーヤに通知する。
計時部280sは、システムクロックを利用して現在日時や制限時間等の計時を行う。
音生成部290sは、音声データの生成やデコードをするICやソフトウェアの実行により実現され、サーバシステム1100のシステム管理やゲームプレイに係る操作音やBGMなどの音声データを生成或いはデコードする。そして、システム管理に関する音声信号は音出力部390sへ出力する。
音出力部390sは、音声信号を放音する。図1の例では本体装置1101やタッチパネル1108が備えるスピーカ(不図示)がこれに該当する。
画像生成部292sは、サーバシステム1100のシステム管理に関する画像や、ゲーム画像(又はゲーム画像をプレーヤ端末1500で表示させるためのデータ)等を生成することができる。そして、システム管理に関する画像は画像表示部392sへ出力することができる。
画像表示部392sは、画像生成部292sから入力される画像信号に基づいてシステム管理のための各種画像を表示する。例えば、フラットパネルディスプレイ、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。図1の例ではタッチパネル1108が該当する。
通信制御部294sは、データ通信に係るデータ処理を実行し、通信部394sを介して外部装置とのデータのやりとりを実現する。
通信部394sは、ネットワーク9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現される。図1の例では通信装置1153が該当する。
サーバ記憶部500sは、サーバ処理部200sにサーバシステム1100を統合的に制御させるための諸機能を実現するためのプログラムや各種データ等を記憶する。また、サーバ処理部200sの作業領域として用いられ、サーバ処理部200sが各種プログラムに従って実行した演算結果などを一時的に記憶する。この機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD-ROMやDVDなどの光学ディスク、オンラインストレージなどによって実現される。図1の例では本体装置1101が搭載するICメモリ1152やハードディスクなどの記憶媒体、及びストレージ1140がこれに該当する。
図7は、本実施形態におけるサーバ記憶部500sが記憶するプログラムやデータの例を示す図である。本実施形態におけるサーバ記憶部500sは、サーバプログラム501と、配信用クライアントプログラム503と、ゲーム初期設定データ510と、ハラスメント条件定義データ540と、を記憶する。また、サーバ記憶部500sは、逐次生成・管理されるデータとして、ユーザ管理データ600と、保護対象設定データ630と、プレイデータ700と、現在日時800と、を記憶する。サーバ記憶部500sは、その他のプログラムやデータ(例えばタイマや、カウンタ、各種フラグなど)も適宜記憶できる。
サーバプログラム501は、サーバ処理部200sが読み出して実行することで、ユーザ管理部202、ゲーム管理部210としての機能を実現させるためのプログラムである。
配信用クライアントプログラム503は、プレーヤ端末1500へ提供されるクライアントプログラムのオリジナルである。
ゲーム初期設定データ510は、ゲームの実行に必要な各種初期設定データを含む。具体的には、ゲーム初期設定データ510は、キャラクタ初期設定データ512と、第三者プレーヤ設定データ520と、を含む。勿論、これら以外のデータも適宜含めることができる。
キャラクタ初期設定データ512は、プレーヤキャラクタ4として使用できるキャラクタの種類毎に用意される。1つのキャラクタ初期設定データ512は、例えばキャラクタ種類と、モデルデータと、初期能力パラメータ値と、カラー設定データと、を含む。
第三者プレーヤ設定データ520は、第三者プレーヤの設定毎に用意される(図4参照)。1つの第三者プレーヤ設定データ520は、固有の第三者設定ID521と、差替用プレーヤ識別情報523と、差し替え後のキャラクタを定義する差替用キャラクタ設定データ525(差替用キャラクタにとってのキャラクタ初期設定データ512に相当)と、差替用詳細情報527と、を含む。
ハラスメント条件定義データ540は、交遊プレーヤに対して適用されるデータと、非交遊プレーヤに対して適用されるデータと、の2つが用意されており、それぞれがハラスメント行為と認定するための条件を1つまたは複数含んでいる。なお、交遊プレーヤに対して適用されるハラスメント条件は、非交遊プレーヤに対して適用されるハラスメント条件よりも、ハラスメント行為として認定し易い条件として設定されている。
ハラスメント行為認定条件は、適宜設定可能であるが、本実施形態では、ハラスメントワードリスト542と、ハラスメントワード使用頻度限度値543と、交遊関係申請拒否限度回数544と、プレーヤキル限度回数545と、の少なくとも何れかを含む。勿論、これら以外の認定条件を含めることもできる。
ハラスメントワードリスト542と、ハラスメントワード使用頻度限度値543と、はセットで運用される。
ハラスメントワードリスト542は、ゲームプレイに係る第2プレーヤ2bから第1プレーヤ2aへの会話に用いられた文言のうち、ハラスメント行為と認定される文言のリストである。当該リストは、会話機能がテキストチャットで実現される構成であれば、テキストデータのリストとなる。会話機能が音声チャットで実現される場合は、音声認識用の辞書データのリストとなる。なお、後者の場合、ハラスメントプレーヤ検出部216は、音声認識機能を有するものとする。
ハラスメントワード使用頻度限度値543は、ハラスメントワードリスト542に登録されている文言を使用した頻度の閾値であり、当該限度値を超えるとハラスメント行為と認定される。当該限度値を適切に設定することで、仲間同士のじゃれ合いと、本格的なハラスメント行為とを適切に識別できる。
交遊関係申請拒否限度回数544は、ある特定のプレーヤ宛てに交遊関係の設定登録の申請(いわゆるフレンド申請)とその拒否とが連続して行われた回数の上限値である。当該限度回数を超えると、交遊関係の設定登録を悪用したハラスメント行為として認定される。
プレーヤキル限度回数545は、ある特定のプレーヤを対象とするプレーヤキル行為の上限回数である。当該限度回数を超えると、偶発的なプレーヤキルではなく、意図的なプレーヤキルでありハラスメント行為に相当すると認定する。なお、プレーヤキルを、「戦闘中以外の攻撃」「味方攻撃」などに読み替えることもできる。
ユーザ管理データ600は、登録ユーザ毎に用意され、固有の識別情報であるアカウントと紐付けられる各種データを格納する。本実施形態では、例えば図8に示すように、1つのユーザ管理データ600には、プレーヤ識別情報として利用される固有のユーザアカウント601と、交遊プレーヤアカウントリスト603と、プレーヤキャラクタ設定データ605と、詳細情報607と、保護対象設定IDリスト609と、第三者プレーヤ設定使用履歴610と、チャット履歴データ612と、交遊関係申請履歴データ614と、プレーヤキル履歴データ616と、を含む。勿論、これら以外のデータも適宜含めることができる。
交遊プレーヤアカウントリスト603は、当該ユーザと交遊関係が設定登録されているユーザのユーザアカウントを格納する。
保護対象設定IDリスト609は、当該ユーザが設定登録した保護対象設定データ630(図3参照)の識別情報のリストである。
第三者プレーヤ設定使用履歴610は、当該ユーザに係り差替表示制御を行う際に使用された第三者プレーヤの設定の識別情報を時系列に格納する。当該ユーザに同じ第三者プレーヤの設定が連続的に或いは時間的に近接して使用されないようにするために参照される。
チャット履歴データ612は、当該ユーザがチャット機能で他ユーザと行った会話毎に作成される。1つのチャット履歴データ612は、チャット日時、チャット相手を示す情報、使用ワード、などの情報を格納する。
交遊関係申請履歴データ614は、当該ユーザが他ユーザに交遊関係の申請を行う毎に作成される。1つの交遊関係申請履歴データ614は、申請日時と、申請相手を示す情報と、認否結果と、を格納する。
プレーヤキル履歴データ616は、当該ユーザがプレーヤキルに該当する行為を行う毎に作成され、PK(プレーヤキル)日時と、行為を行った対象を示すPK相手と、を含む。
図7に戻って、プレイデータ700は、ゲームプレイ毎に作成され、当該ゲームプレイに係る各種データを格納する。
1つのプレイデータ700は、例えば図9に示すように、固有のプレイID701と、マッチングデータ703と、ハラスメントプレーヤ検出結果705と、適用保護対象設定IDリスト707と、非ハラスメントプレーヤ用仮想3次元空間管理データ710と、ハラスメントプレーヤ用仮想3次元空間管理データ720と、発動通知制御データ730と、変更キャラクタ通知制御データ732と、を含む。勿論、これら以外のデータも適宜含めることができる。例えば、仮想3次元空間の制御データなども含まれる。
ハラスメントプレーヤ検出結果705は、初期設定が「検出無し」を示す所定値であるが、マッチングデータ703に示されるマッチングされたプレーヤアカウントの中に、保護対象設定データ630(図3参照)のハラスメントプレーヤアカウント635が含まれている場合、当該アカウントが格納される。
適用保護対象設定IDリスト707は、初期設定が「検出無し」を示す所定値であるが、ハラスメントプレーヤが検出されると、当該ハラスメントプレーヤを設定している保護対象設定データ630(図3参照)の保護対象設定ID631が格納される。
非ハラスメントプレーヤ用仮想3次元空間管理データ710は、マッチングされたプレーヤのうち、検出されたハラスメントプレーヤ以外のプレーヤ向けのゲーム画面を生成するための仮想3次元空間の管理データである。非ハラスメントプレーヤ用仮想3次元空間管理データ710は、プレーヤキャラクタ制御データ712と、非ハラスメントプレーヤ用仮想カメラ制御データ714と、を含む。
ハラスメントプレーヤ用仮想3次元空間管理データ720は、マッチングされたプレーヤのうち、検出されたハラスメントプレーヤ向けのゲーム画面を生成するための仮想3次元空間の管理データである。ハラスメントプレーヤ用仮想3次元空間管理データ720は、
1)当該管理データの適用先を示す適用ハラスメントプレーヤアカウント721と、
2)当該仮想3次元空間に適用される保護対象設定データ630を示す適用保護対象設定ID722と、
3)連鎖保護対象プレーヤアカウントリスト723と、
4)保護対象プレーヤのプレーヤキャラクタ4を除く各プレーヤキャラクタ分のプレーヤキャラクタ制御データ724と、
5)第三者プレーヤキャラクタ制御データ725と、
6)ハラスメントプレーヤ用仮想カメラ制御データ726と、を含む。
発動通知制御データ730は、差替発動通知10(図4参照)毎に用意され、その表示制御に係るデータを格納する。
変更キャラクタ通知制御データ732は、変更キャラクタ通知12(図4参照)毎に用意され、その表示制御に係るデータを格納する。
図10は、本実施形態におけるプレーヤ端末1500の機能構成の一例を示す機能ブロック図である。本実施形態のプレーヤ端末1500は、操作入力部100と、端末処理部200と、音出力部390と、画像表示部392と、通信部394と、端末記憶部500とを備える。
操作入力部100は、プレーヤによってなされた各種の操作入力に応じた操作入力信号を端末処理部200に出力する。例えば、プッシュスイッチや、ジョイスティック、タッチパッド、トラックボール、加速度センサ、ジャイロ、CCDモジュール、などによって実現できる。図2の方向入力キー1502や、ボタンスイッチ1504、タッチパネル1506、カメラ1520、がこれに該当する。
端末処理部200は、例えばCPUやGPU等のマイクロプロセッサや、ICメモリなどの電子部品によって実現され、操作入力部100や端末記憶部500を含む各機能部との間でデータの入出力制御を行う。そして、所定のプログラムやデータ、操作入力部100からの操作入力信号、サーバシステム1100から受信した各種データに基づいて各種の演算処理を実行して、プレーヤ端末1500の動作を制御する。図2の制御基板1550がこれに該当する。そして、本実施形態における端末処理部200は、プレーヤ端末演算部260と、計時部280と、音生成部290と、通信制御部294と、を備える。
プレーヤ端末演算部260は、操作信号送信制御部261と、表示制御部262とを含む。
操作信号送信制御部261は、操作入力部100へなされた操作に応じて、各種データやリクエストをサーバシステム1100へ送信するための処理を実行する。
表示制御部262は、サーバシステム1100から受信した各種データに基づいてゲーム画面を表示するための制御を行う。本実施形態では、ゲーム空間画像(ゲーム空間を仮想カメラで撮影した画像;例えば、3DCG画像など)をサーバシステム1100にて生成する構成とするが、ゲーム空間画像をプレーヤ端末1500で生成する構成も可能である。その場合、表示制御部262は、例えば3DCGを生成するための仮想3次元空間に配置されたオブジェクトの制御を含むこととなる。
音生成部290は、例えばデジタルシグナルプロセッサ(DSP)や、音声合成ICなどのプロセッサ、音声ファイル再生可能なオーディオコーデック等によって実現され、効果音や、BGM、各種操作音の音信号を生成し、音出力部390に出力する。
音出力部390は、音生成部290から入力される音信号に基づいて効果音やBGM等を音出力する装置によって実現される。図2のスピーカ1510がこれに該当する。
画像表示部392は、表示制御部262から入力される画像信号に基づいて各種画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管(CRT)、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。本実施形態では、図2のタッチパネル1506がこれに該当する。
通信制御部294は、データ通信に係るデータ処理を実行し、通信部394を介して外部装置とのデータのやりとりを実現する。通信部394は、ネットワーク9と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現され、図2の無線通信モジュール1553がこれに該当する。
端末記憶部500は、端末処理部200にプレーヤ端末1500を統合的に制御させるための諸機能を実現するためのプログラムや、各種データ等を記憶する。また、端末処理部200の作業領域として用いられ、端末処理部200が各種プログラムに従って実行した演算結果や操作入力部100から入力される入力データ等を一時的に記憶する。こうした機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD-ROMやDVDなどの光学ディスクなどによって実現される。図2の制御基板1550が搭載するICメモリ1552やメモリカード1540がこれに該当する。オンラインストレージを利用する構成の可能である。
本実施形態の端末記憶部500は、クライアントプログラム504を記憶する。勿論、これら以外のプログラムやデータも適宜記憶することができる。
クライアントプログラム504は、端末処理部200が読み出して実行することによってプレーヤ端末演算部260としての機能を実現させるためのアプリケーションソフトウェアである。本実施形態では、サーバシステム1100から提供される配信用クライアントプログラム503(図7参照)のコピーである。
なお、クライアントプログラム504は、オンラインゲームを実現する技術手法に応じて専用のクライアントプログラムであっても良いし、ウェブブラウザプログラム及びインタラクティブな画像表示を実現するプラグインなどにより構成するとしても良い。
次に、本実施形態のゲームシステム1000の動作について説明する。
図11は、1つのゲームプレイに係るサーバシステム1100による処理の流れについて説明するためのフローチャートである。ここで説明する処理の流れは、サーバ処理部200sがサーバプログラム501を実行することにより実現される。なお、サーバシステム1100は、第1プレーヤ2aによる保護対象登録操作に応じた保護対象設定データ630の設定登録を別途行っているものとする(図3参照)。
サーバシステム1100は、先ず、マッチングを行い(ステップS10)、マッチングしたプレーヤ毎に自動ハラスメントプレーヤ検出処理を実行して、マッチングしたプレーヤの中のハラスメントプレーヤを検出する(ステップS12)。
図12は、自動ハラスメントプレーヤ検出処理の流れを説明するためのフローチャートである。サーバシステム1100は、処理対象プレーヤのチャット履歴データ612(図8参照)から、チャット相手別に使用ワードを抽出し、ハラスメント条件定義データ540(図7参照)のハラスメントワードリスト542と照合する。
その結果、ハラスメントワードを、特定プレーヤ宛てに使用した頻度が、ハラスメントワード使用頻度限度値543(図7参照)を超過する場合(ステップS30のYES)、サーバシステム1100は、特定プレーヤを保護対象プレーヤとし、処理対象プレーヤをハラスメントプレーヤとする保護対象設定データ630を自動生成して(ステップS32)、自動ハラスメントプレーヤ検出処理を終了する。
また、サーバシステム1100は、処理対象プレーヤの交遊関係申請履歴データ614(図8参照)から、申請先別に申請が拒否された連続回数を抽出し、交遊関係申請拒否限度回数544(図7参照)と比較する。その結果、特定プレーヤに限度回数を超過して申請が拒否されている場合(ステップS34のYES)、サーバシステム1100は、申請先のプレーヤを保護対象プレーヤとし、処理対象プレーヤをハラスメントプレーヤとする保護対象設定データ630を自動生成して(ステップS36)、自動ハラスメントプレーヤ検出処理を終了する。
また、サーバシステム1100は、処理対象プレーヤのプレーヤキル履歴データ616(図8参照)から、PK相手別にPKの連続回数を抽出し、プレーヤキル限度回数545(図7参照)と比較する。そして、その結果、処理対象プレーヤが、特定プレーヤに対して限度回数を超えてプレーヤキル行為を行っている場合(ステップS38のYES)、サーバシステム1100は、PK相手のプレーヤを保護対象プレーヤとし、処理対象プレーヤをハラスメントプレーヤとする保護対象設定データ630を自動生成して(ステップS40)、自動ハラスメントプレーヤ検出処理を終了する。
図11に戻って、サーバシステム1100は、非ハラスメントプレーヤ用仮想3次元空間管理データ710(図9参照)を用意する(ステップS56)。
次いで、サーバシステム1100は、今回のゲームプレイに適用する保護対象設定データ630を検索する(ステップS58)。具体的には、マッチングされたプレーヤがハラスメントプレーヤに設定されている保護対象設定データ630の保護対象設定ID631(図3参照)を適用保護対象設定IDリスト707(図9参照)へ格納する。
そして、サーバシステム1100は、適用する保護対象設定データ630毎に、ループAを実行する(ステップS60~S72)。
ループAにおいて、サーバシステム1100は、処理対象とする保護対象設定におけるハラスメントプレーヤ向けと、その交遊プレーヤ向けに、ハラスメントプレーヤ用仮想3次元空間管理データ720(図9参照)を準備する(ステップS62)。つまり、処理対象とする保護対象設定におけるハラスメントプレーヤの交遊プレーヤを、連鎖的に「見なしハラスメントプレーヤ」として扱う。どちらのハラスメントプレーヤ用仮想3次元空間管理データ720の適用保護対象設定ID722も、ループAの処理対象としている保護対象設定のIDが設定される。
次に、サーバシステム1100は、ステップS62で準備したハラスメントプレーヤ用仮想3次元空間管理データ720において、処理対象とする保護対象設定における保護対象プレーヤの交遊プレーヤを、連鎖保護対象プレーヤアカウントリスト723へ追加する(ステップS64)。つまり、処理対象とする保護対象プレーヤの交遊プレーヤを、連鎖的に「見なし保護対象プレーヤ」として扱う。
次に、サーバシステム1100は、ステップS62で準備したハラスメントプレーヤ用仮想3次元空間管理データ720に、非ハラスメントプレーヤ用仮想3次元空間管理データ710のプレーヤキャラクタ制御データ712から、適用保護対象設定ID722の保護対象設定における保護対象プレーヤおよび連鎖保護対象プレーヤアカウントリスト723に登録されているプレーヤのプレーヤキャラクタ4の分を除いてプレーヤキャラクタ制御データ724としてコピーする(ステップS66)。
次いで、サーバシステム1100は、適用保護対象設定ID722の保護対象設定における保護対象プレーヤおよび連鎖保護対象プレーヤアカウントリスト723に登録されているプレーヤへの第三者プレーヤ設定を割り当てする(ステップS68)。
具体的には、サーバシステム1100は、当該保護対象プレーヤについては、第三者プレーヤ設定使用履歴610(図8参照)を参照して、前回使用された第三者プレーヤ設定以外の第三者プレーヤ設定を選択し、これに基づいて第三者プレーヤキャラクタ制御データ725を用意する。この選択の結果は、新たな第三者プレーヤ設定使用履歴610として残される。また、サーバシステム1100は、連鎖保護対象プレーヤアカウントリスト723に登録されているプレーヤについては、当該プレーヤの第三者プレーヤ設定使用履歴610を参照して、前回使用された第三者プレーヤ設定以外で、且つ、当該保護対象プレーヤに今回使用される第三者プレーヤ設定とは異なる設定、を選択して、第三者プレーヤキャラクタ制御データ725を用意する。勿論、選択の結果は、新たな第三者プレーヤ設定使用履歴610として残される。
第三者プレーヤの設定割り当てを済ませると、当該処理対象としている保護対象設定についてのループAは終了となる(ステップS72)。
適用保護対象設定IDリスト707に登録されている全ての保護対象設定についてループAを実行したならば、サーバシステム1100は、マッチングされた各プレーヤのプレーヤ端末1500にゲーム画面を表示させる制御を開始する(ステップS80)。
これに伴い、非ハラスメントプレーヤのプレーヤ端末1500では、非ハラスメントプレーヤ用仮想3次元空間管理データ710に基づくゲーム画面の表示が開始される(図4,図5のゲーム画面W1、図5のゲーム画面W3参照)。ハラスメントプレーヤのプレーヤ端末1500では、ハラスメントプレーヤ用仮想3次元空間管理データ720に基づくゲーム画面の表示が開始される(図4,図5のゲーム画面W2、図5のゲーム画面W4)。よって、当該ステップは、実質的に差替表示制御の開始に相当する。
次いで、サーバシステム1100は、ゲームプレイを開始する(ステップS82)。これに伴い、サーバシステム1100は、チャット履歴や、交遊関係の申請履歴、プレーヤキル履歴の記録も開始する。
ゲームプレイ開始以降も、ゲーム終了まで(ステップS86のNO)、サーバシステム1100は、所定周期で、自動ハラスメントプレーヤ検出処理を実行し(ステップS88)、今回のゲームプレイで新たなハラスメントプレーヤが生じた場合には、当該ハラスメントプレーヤに係り、新たな保護対象設定データ630を自動生成する。
ゲームが終了したら(ステップS86のYES)、サーバシステム1100は一連の処理を終了する。
以上、本実施形態によれば、マッチングされた各プレーヤが共通のゲーム空間でゲームプレイを行うゲームにおけるハラスメントプレーヤに関する新たな対策を実現する技術を提供することができる。
〔変形例〕
以上、本発明を適用した実施形態について説明したが、本発明を適用可能な形態は上記形態に限定されるものではなく適宜構成要素の追加・省略・変更を施すことができる。
[変形例その1]
例えば、上記実施形態では、クライアント・サーバ型のコンピュータシステムにてオンラインゲームを実現する例を挙げたが、ゲーム装置とも言える複数のプレーヤ端末1500をピアツーピア接続したコンピュータシステムにおいて実現するとしてもよい。その場合、何れかのプレーヤ端末1500に上記実施形態のサーバシステム1100としての機能を担わせる。或いは、複数のプレーヤ端末1500でゲーム管理部210が有する機能を分担して担う構成としてもよい。
[変形例その2]
また、上記実施形態では、ゲーム管理部210を全てサーバシステム1100にて担う構成としているが、その一部をプレーヤ端末1500にて担わせる構成も可能である。
例えば、ゲーム画面の元になる仮想3次元空間の管理と、仮想3次元空間を仮想カメラで撮影した画像のレンダリングを各プレーヤ端末1500で行う構成では、サーバシステム1100が、各プレーヤ端末1500へ当該端末を使用するプレーヤがハラスメントプレーヤであるかの検出結果をゲームプレイ開始前に送信する。そして、自機を使用するプレーヤがハラスメントプレーヤであるプレーヤ端末1500が、差替表示制御部220を実行するとともに、使用した第三者プレーヤの第三者設定ID521を、サーバシステム1100へ送信する。サーバシステム1100は、受信した第三者設定ID521を、保護対象プレーヤのプレーヤ端末1500へ送信し、これを受信したプレーヤ端末1500が、変更キャラクタ通知制御部230と、発動通知制御部232と、しての機能を発揮する、としてもよい。