以下、本発明を適用した実施形態として、オンラインゲームのゲームプレイ動画をプレーヤ間で共有する例を挙げて説明する。
[全体構成]
図1は、本実施形態におけるゲームシステムの全体構成例を示す図である。本実施形態のゲームシステムは、サーバシステム1000と、ユーザ端末5000とを含み、これらが通信回線Nを介して通信接続される。
通信回線Nは、データ通信が可能な通信路を意味する。すなわち、通信回線Nとは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLAN(Local Area Network)の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線/無線を問わない。
サーバシステム1000は、CPU(Central Processing Unit)1151やGPU(Graphics Processing Unit)、DSP(Digital Signal Processor)等の各種マイクロプロセッサ、VRAMやRAM、ROM等の各種ICメモリ1153、通信装置1155等の電子部品が搭載された制御基板1100を内蔵している。なお、制御基板1100の一部又は全部は、ASIC(Application Specific Integrated Circuit)やFPGA(field-programmable gate array)、SoC(System on a Chip)により実現するとしてもよい。
このサーバシステム1000は、制御基板1100が所定のプログラム及びデータに基づいて演算処理をすることにより、ユーザ登録等のユーザ管理機能と、ユーザであるプレーヤがユーザ端末5000にてゲームをプレイするのに必要なデータを提供するゲーム管理機能とを実現する。つまり、本実施形態におけるビデオゲームは、一種のクライアント・サーバ型のオンラインゲームとして実現される。
また、サーバシステム1000は、プレーヤ(投稿者)によって投稿され、プレーヤやその他のユーザ(閲覧者)によって閲覧されるゲームプレイ動画を投稿動画データセット300(図2を参照)として管理する動画データベース30を備えており、ゲームプレイ動画を投稿し、閲覧して共有するための「動画サイト」を公開する。そのために、サーバシステム1000は、サーバシステム1000が提供するオンラインゲームに関するゲームプレイ動画を動画データベース30に投稿する動画投稿機能と、動画データベース30のゲームプレイ動画を配信する動画配信機能と、配信対象のゲームプレイ動画に既に付けられている入力コメントに基づき配信先のユーザ端末5000での当該ゲームプレイ動画の閲覧態様を設定する閲覧態様設定機能とを実現する。
図2は、動画データベース30が管理する投稿動画データセット300のデータ構成例を示す図である。1個の投稿動画データセット300が1つのゲームプレイ動画に対応しており、サーバシステム1000によって生成され、随時更新される。個々の投稿動画データセット300は、例えば、アクセス情報301と、動画ID302と、動画データ303と、ゲームプレイ情報305と、実況音声情報307と、実況属性情報309と、付随情報(メタデータ)313と、当該ゲームプレイ動画の閲覧回数315と、コメントデータ323と、動画ポイント327と、動画更新情報329とを含む。コメントデータ323は、肯定コメントデータ324と、否定コメントデータ325とを含む。データの中身については後述するが、アクセス情報301〜付随情報313の各データは当該ゲームプレイ動画の投稿に際し設定され、閲覧回数315〜動画更新情報329の各データは当該ゲームプレイ動画の配信に際し設定・更新される。
なお、サーバシステム1000は単体として記しているが、各機能を分担する複数のブレードサーバを搭載し、それらを相互に内部バスを介してデータ通信可能に接続した構成であってもよい。或いは、離れた場所に設置された独立した複数のサーバを相互に通信回線Nを介してデータ通信させることで、全体としてサーバシステム1000として機能させる構成であってもよい。また、動画データベース30は、通信回線Nを介してサーバシステム1000とデータ通信可能に接続された構成であってもよい。この場合、動画データベース30は、サーバシステム1000の一機能として実現された専用データベースとする構成でもよい。
ユーザ端末5000は、ユーザが使用するコンピュータであり、通信回線Nを介してサーバシステム1000とデータ通信し、オンラインゲームを実行することができる。また、ユーザ端末5000は、専用又は汎用のブラウザプログラムを実行することでサーバシステム1000が公開する動画サイトにアクセスすることができ、ゲームプレイ動画の投稿や閲覧が行える。このユーザ端末5000の形態は特に限定されるものではなく、例えば、図1に示したパソコン5000aやスマートフォン5000bの他、携帯電話機、携帯型ゲーム装置、据置型家庭用ゲーム装置、据置型家庭用ゲーム装置のコントローラ、業務用ゲーム装置、タブレット型コンピュータ、ウェアラブルコンピュータ等の形態を取り得る。
(1)ゲームプレイ動画の投稿
プレーヤは、自身のユーザ端末5000を使用し、予め取得したユーザIDでオンラインゲームをプレイする。ゲームプレイ中は、サーバシステム1000は、当該ゲームプレイ後にそのプレイ内容を再現できるように、リプレイデータを生成し記憶している。例えば、プレーヤによるプレーヤキャラクタの操作入力の履歴や、コンピュータによるNPC(ノンプレイヤブルキャラクタ)の自動操作入力の履歴に関するデータがこれに含まれる。本実施形態では、サーバシステム1000は、各プレーヤについて、ゲームプレイ中の過去所定時間分(例えば15分)のリプレイデータを自動的に記憶することとして説明するが、時間制限を無くしてもよいことは勿論である。
そして、サーバシステム1000は、プレーヤである投稿者がユーザ端末5000で所定の投稿要求操作をしたことを検出すると、記憶していたリプレイデータを参照し、当該投稿要求操作のときから遡って所定時間分のプレイ内容を再現した動画(リプレイ動画)を自動生成し、動画データ303とする。また、動画を生成するのに用いた所定時間分のリプレイデータをゲームプレイ情報305とする。動画の時間的な長さは、記憶しているリプレイデータの長さの範囲内で適宜設定してよい。なお、動画データ303は、自動生成したものに限らず、投稿者が適宜演出表示や効果音を含める等の加工を施したものであってもよい。これにより、プレーヤは、ゲームプレイの過程で例えばボスキャラクタを倒したとき、レアアイテムを発見したとき、特殊な技を発動できたとき、といった所望の時機に投稿要求操作を行うことで、そのシーンをゲームプレイ動画として投稿することができる。
このゲームプレイ動画の投稿に際しては、サーバシステム1000は、ユーザ端末5000から送信された投稿者の操作入力情報に基づいて、又は自動的にゲームプレイ動画を編集する。投稿者は、ユーザ端末5000に表示される編集画面(不図示)から必要な操作入力を行う。その1つとして、サーバシステム1000は、ユーザ端末5000からの操作入力情報に基づき投稿対象のゲームプレイ動画に実況音声情報307を付加することができる。実況音声情報307は、投稿者が別途録音したり、文字を読み上げる公知の音声合成プログラムを用いて作成した実況音声の音声データである。この実況音声情報307を付加する場合には、サーバシステム1000は、ユーザ端末5000からの操作入力情報に基づき実況属性情報309の設定を併せて行う。
実況属性情報309は、実況音声の内容を分類・識別するための設定データであり、実況カテゴリ311(図2を参照)がこれに含まれる。本実施形態では、前述の編集画面において実況カテゴリの選択メニューとして例えば「攻略実況」「解説実況」「ネタ見せの実況」の3つの選択肢を提示する。そして、サーバシステム1000は、ユーザ端末5000におけるその選択操作についての操作入力情報を受け付けてこれを設定する。投稿者は、付加する実況音声がゲームをクリアするための攻略情報や裏技、ゲームテクニック等を内容とするのであれば「攻略実況」、ゲームのストーリーやゲームに登場するキャラクタ、ステージ等の紹介を内容とするのであれば「解説実況」、投稿者によるネタを披露する内容であれば「ネタ見せ実況」といった要領で適当な実況カテゴリを選択肢から選ぶ。
また、2つ目として、サーバシステム1000は、投稿対象のゲームプレイ動画をインデックスするための情報群(メタデータ)を手動編集モード又は自動編集モードで生成し、付随情報313とする。図3は、付随情報313の手動編集を説明する図であり、投稿者であるプレーヤ1aがゲーム画面W1を見ながらゲームをプレイしている途中で投稿要求操作を行った場合を示している。投稿要求操作を行うと、ゲームの進行は、ゲームプレイ動画の投稿が完了するまで停止される。
上記したように、サーバシステム1000は、ユーザ端末5000での投稿要求操作を検出するとゲームプレイ動画とする動画データ303を自動生成するが、投稿者1aは、その付随情報を自身で編集したい場合は投稿要求操作の後で手動編集モードの選択操作を行い、編集画面内の所定の入力欄に付随情報を手入力する。そして、サーバシステム1000は、ユーザ端末5000からその入力欄に入力された入力情報を付随情報313として取得する。
ここで、付随情報313は、具体的には、ゲームプレイ動画の出自や内容に関する情報、すなわち、誰が、いつ、どのような条件で、どのような内容でゲームプレイした動画なのかを表す情報である。項目としては、1)ゲームタイトル、2)ゲームカテゴリ、3)投稿者のユーザID等である投稿者アカウント、4)当該ゲームプレイをした日時、5)プレイ状況(例えば、プレイしているゲームステージのステージID、出現する敵キャラクタの種類や出現数等)、6)プレイ内容(動画内容ともいえる)(例えば、使用した装備アイテムや消費アイテム等の各種アイテムの種類、使用したプレーヤキャラクタの種類、発動した技名やコンボ数等)、7)勝敗や技の成否等のプレイ結果情報等を含む。勿論、これら以外でも、例えばプレーヤの心情を表すコメント(感想)等を適宜含めることができる。
なお、この付随情報313の手動編集は、公知の動画共有サービスでの動画投稿時に一般的に行われているのと同じようにして実現することができる。すなわち、投稿者1aは、動画タイトルや投稿者アカウント、タグ、動画内容の説明や感想といったコメント等を自由に入力するが、それらに上記した各項目の内容を埋め込むことで付随情報を入力(手動編集)する。
図4は、付随情報313の自動編集を説明する図である。手動編集モードの場合と異なり、投稿者1aが自動編集モードの選択操作を行った場合は、サーバシステム1000は、投稿者1aの登録情報(ユーザ管理データ180:図16を参照)や、動画データ303を自動生成するのに用いたリプレイデータ等を適宜参照し、上記した各項目を含む付随情報313を自動生成する。
以上のゲームプレイ動画の編集に関する操作を経てユーザ端末5000の投稿者1aにより投稿内容の確定操作が行われると、サーバシステム1000は、当該ゲームプレイ動画に動画ID302を付与し、固有のアクセス情報301(図2参照)、例えばURLやIPアドレス、ルート情報等を付与して投稿動画データセット300を生成し、動画データベース30に投稿(保存)する。
(2)ゲームプレイ動画の配信(閲覧)
動画データベース30に投稿されたゲームプレイ動画は、アクセス情報をもとに動画サイトにアクセスしたユーザ端末5000に随時配信され、これによって当該ユーザ端末5000で閲覧者により閲覧される。閲覧者は、閲覧に先立って希望するゲームプレイ動画へのアクセス情報を問い合わせる。
図5は、ゲームプレイ動画の配信を説明する図である。サーバシステム1000は、ユーザ端末5000における検索要求操作や閲覧要求操作についての閲覧指示情報を受け付け、ゲームプレイ動画をユーザ端末5000に配信する。例えば先ず、サーバシステム1000は、ユーザ端末5000からの検索要求に応答してゲームプレイ動画へのアクセス情報301(図2参照)を提供する。例えば、ユーザ端末5000にてゲームプレイ中のプレーヤである閲覧者1bが所定の検索要求操作を行うと、ユーザ端末5000は、画面例W21に示すように、ゲーム画面上に検索ワードの入力バーA21を表示する。閲覧者1bがこの入力バーA21に検索ワードを入力すると、ユーザ端末5000は、当該検索ワードとともにゲームプレイ動画の検索要求をサーバシステム1000に送信する。
そして、サーバシステム1000では、ユーザ端末5000から検索要求が送信されると、付随情報313や実況属性情報309を対象に動画データベース30を検索し、検索条件に適合するゲームプレイ動画のアクセス情報301を返信・回答する。本実施形態では、付随情報313又は実況属性情報309が検索ワードの一部又は全部を含むゲームプレイ動画のアクセス情報301を検索結果として回答する。
すると、画面例W23に示すように、ユーザ端末5000は、受信したアクセス情報の回答をアクセス情報一覧A23として表示する。そして、ユーザ端末5000は、閲覧者1bがアクセス情報一覧A23から何れかを選択する閲覧要求操作を行うと、画面例W25に示すように、ゲーム画面上で動画プレーヤ画面W27を起動する。これを受けてサーバシステム1000は、選択されたアクセス情報301と紐付けられた投稿動画データセット300を読み出し、そのゲームプレイ動画をユーザ端末5000にストリーミング配信する。
この結果、選択したゲームプレイ動画が動画プレーヤ画面W27に表示され、適宜詳細を後述する肯定コメント又は否定コメントである入力コメント(図5では肯定コメント)Eの表示がされることとなる。また、ゲームプレイ動画の表示と並行して実況音声が音出力される。これによれば、プレーヤは、ゲームプレイ中に検索要求操作をし、例えば自身のプレイ状況や実況カテゴリ等を検索ワードとして入力することで、希望するゲームプレイ動画を簡単に検索し閲覧することができる。
なお、図5は、ゲームプレイ中のプレーヤが閲覧者1bとして検索要求操作を行い、閲覧要求操作を行う場合を図示したが、動画データベース30に投稿されたゲームプレイ動画は、ゲームをプレイしていないユーザによってもゲームプレイとは無関係に閲覧され得る。その場合は、ユーザ端末5000は、ウェブブラウザを起動して動画サイトにアクセスすることで動画プレーヤ画面W27と同様の画面構成の閲覧画面W3を表示し、ゲームプレイ動画を表示することができる。図6は、閲覧画面W3の画面例を示す図である。
さて、以上のようにしてゲームプレイ動画をユーザ端末5000に配信するに際しては、サーバシステム1000は、当該ゲームプレイ動画の投稿動画データセット300において閲覧回数315を「1」アップして更新する。
また、サーバシステム1000は、配信先のユーザ端末5000において当該ゲームプレイ動画の閲覧中に入力されたコメントを受け付ける。そのために、ゲームプレイ動画を閲覧するための動画プレーヤ画面W27には、肯定コメントボタンD−1と、否定コメントボタンD−2とが配置されている(図6に示す閲覧画面W3も同様である)。これらの各ボタンD−1,D−2は、ゲームプレイ動画の閲覧中に閲覧者1bがその内容、例えばプレイ内容や実況内容に対する評価や感想を入力するために使用される。
何れのボタンD−1,D−2を選択操作した場合もコメント(テキスト)を入力する入力バーが表示され、閲覧中のゲームプレイ動画の動画時間軸上の任意の動画時間(入力タイミング)に対してコメントを付けることができるが、閲覧者1bは、肯定的なコメントを付けるのか否定的なコメントを付けるのかによってこれらを使い分ける。すなわち、例えば、同じ「いいね」というコメントを入力する場合でも、肯定的な意味で入力する場合は肯定コメントボタンD−1を、否定的な意味(例えば嫌味を込めた意味)で入力する場合は否定コメントボタンD−2を選択操作し、その上で入力する。このようにして閲覧者1bが肯定コメントボタンD−1の選択操作を伴う肯定コメントの入力を行うと、その操作入力情報が入力タイミングとともにサーバシステム1000に送信され、サーバシステム1000は、当該ゲームプレイ動画の投稿動画データセット300において肯定コメントデータ324を更新する。一方、閲覧者1bが否定コメントボタンD−2の選択操作を伴う否定コメントの入力を行うと、その操作入力情報が入力タイミングとともにサーバシステム1000に送信され、サーバシステム1000は、当該ゲームプレイ動画の投稿動画データセット300において否定コメントデータ325を更新する。
図7は肯定コメントデータ324のデータ構成例を示す図であり、図8は否定コメントデータ325のデータ構成例を示す図である。肯定コメントデータ324は、コメントIDと、入力日時と、閲覧者アカウントと、入力タイミングである入力動画時間と、入力コメント(肯定コメント)とを対応付けたデータテーブルである。また、否定コメントデータ325は、コメントIDと、入力日時と、投稿者アカウントと、入力動画時間と、入力コメント(否定コメント)とを対応付けたデータテーブルである。入力動画時間は、つまり、当該コメントの入力時点でその閲覧者が閲覧していた当該ゲームプレイ動画の動画時間(動画再生の時間軸上のタイミング)である。
そして、サーバシステム1000は、以上の要領で受け付けた入力コメントを、ユーザ端末5000における当該ゲームプレイ動画の閲覧時に合わせてその入力動画時間に基づき表示制御する。図5の画面例W27では、肯定コメントとして過去に付けられた1つの入力コメントEが表示されている。入力コメントは、その表示形態は閲覧態様設定機能により変更される場合があるが、入力コメントの表示制御は、例えば、入力動画時間を含む所定時間の間(例えば5秒間)当該入力コメントを動画プレーヤ画面W27又は閲覧画面W3の動画画面内の所定位置に固定的に表示制御するのでもよいし、当該所定時間の間動画画面内を横切るように移動表示する制御としてもよい。入力動画時間が同じ複数の入力コメントがある場合には、それらを例えば画面上部から縦に並べて固定表示又は移動表示する制御を行うとしてもよい。
また、サーバシステム1000は、ゲームプレイ動画の配信を終了すると、当該ゲームプレイ動画の投稿動画データセット300において動画ポイント327(図2参照)を更新する。この動画ポイント327は、当該ゲームプレイ動画に対する閲覧者の関心の度合いを示す。
ここで、ユーザ登録が済んだユーザには、所定の基準で更新されるランク情報(ユーザランク183:図16を参照)が設定されている。例えば、ユーザランク183は、ゲームプレイ歴の長さとか、プレイしているゲームの攻略レベルの高さ等に応じて上がっていく。本実施形態では、動画ポイント327は、配信を終えたゲームプレイ動画のコメントデータ323を参照し、入力コメントの数を計数することで求めるが、その際に、入力した閲覧者のユーザランク183に応じた加点を行う。例えば、基本的に1つの入力コメントを1点とするが、ユーザランク183が予め設定される所定ランク以上である高ランクユーザによって付けられた入力コメントについては、1つにつき3点等として加算ポイントを変更し、動画ポイント327を算出する。これによれば、高ランクユーザが付けた入力コメントに重みをもたせて動画ポイント327を算出できる。
また、入力コメントの意味内容がゲームプレイ動画の内容に不適合であるかどうかを判定し、不適合であると検出された場合には、当該入力コメントに係るポイントは加算しないこととする。不適合であるかどうかは、例えば、付随情報313に設定された勝敗結果等に明らかに反する言葉であるかどうか、そもそも適合可能性のない、誹謗中傷するような倫理違反の言葉であるかどうか等を判定することで実現される。語彙データベースを用いた言語分析処理によって実現することができる。
本実施形態では、動画ポイント327は、ゲームプレイ動画を順位付けするために用いられる。例えば、サーバシステム1000は、ユーザ端末5000で行われた所定のランキング表示要求操作を検出すると、動画データベース30に投稿されているゲームプレイ動画を動画ポイント327が高い順に並べて順位付けを行い、順位付け結果を表示したランキング画面をユーザ端末5000に表示させる。図9は、閲覧画面上で表示させたランキング画面例を示す図である。ランキング画面における順位付け結果の表示のさせ方は特に限定されるものではないが、例えば、上位所定数個のゲームプレイ動画のアクセス情報301を順位付けに従い並べたランキング一覧W4として表示することができる。
なお、サーバシステム1000は、ゲームプレイ動画の配信に際し、その他にも、次に説明する閲覧態様設定機能によりその投稿動画データセット300において動画データ303や動画更新情報329を適宜更新する。
(3)入力コメントに基づくゲームプレイ動画の閲覧態様の変更
サーバシステム1000は、ゲームプレイ動画の配信に際し、1)所定の場合に、当該ゲームプレイ動画と重ねて表示する入力コメントの表示形態を変更・決定する。先ず、入力コメントは、肯定コメント及び否定コメントの何れの場合も、例えば所定フォント、所定文字サイズで表示することを前提とする。ただし、肯定コメントと否定コメントとは、両者を識別可能に表示するために、例えば文字色や背景色等が異なる表示形態とされる。その上で、以下説明するように、条件を満たす入力コメントの表示形態を通常時とは変えた表示形態として決定する。
表示形態の決定に当たり、サーバシステム1000は、肯定コメントデータ324と否定コメントデータ325とをそれぞれ別個に動画時間軸を基準に集計する。肯定コメントデータ324を例に挙げると、先ず、肯定コメントデータ324から、入力動画時間が所与の同時期条件を満たす肯定コメントのコメント群を抽出する。例えば、数秒間等の短い時間で幅をもたせた同時期条件を予め定めておくことで、その時間幅単位でコメント群を抽出する。勿論、入力動画時間が完全に同じことを同時期条件としてもよい。
そして、抽出した同時期条件を満たす各入力動画時間でのコメント群毎に、コメント内容が所与の同内容条件の1つである同一条件を満たす同等コメント(同一コメント)の数を計数する。例えば、「その文字列が完全に一致すること」を同一条件として、同一コメント数を計数する。同一の単語でその表記(ひらがなやカタカナ、漢字、英語表記等)が異なるものは、同一コメントとしてもよいし、同一コメントとはせずに後述する類語コメントとしてもよい。勿論、類語コメントを同一コメントに含めることとしてもよい。
図10は、あるゲームプレイ動画について計数された肯定コメント及び否定コメントの同一コメント数を示す模式図である。図10の例では、同時期条件を満たす入力動画時間T53において同一の肯定コメントが10個以上入力されている一方、入力動画時間T54では、同一の否定コメントが10個以上入力されている。
なお、同一コメント数の計数に際し、動画ポイント327を求めるときと同様に、ユーザランク183に応じた加点を行ってもよい。これによれば、高ランクユーザによる入力コメントに重みを持たせて同一コメント数を計数することができる。
さて、図10に例示する計数の結果同一コメント数が予め設定される所定の第1基準コメント数以上の場合は、それら第1基準コメント数以上の同一コメントの表示形態を通常時と変更することを決定する。例えば、10個以上の場合に変更するのであれば、入力動画時間T53の17個の同一肯定コメントと、入力動画時間T54の12個の同一否定コメントの表示形態を変更決定する。
図11は、同一コメントの表示形態の変更例を説明する図である。なお、図11等では、肯定コメントを黒字とし、否定コメントを黒地を背景とする白文字としてそれらを識別表示している。サーバシステム1000は、同時期条件を満たすとされる短い時間内に複数の同一肯定コメントE61,E62,E63が付けられている場合でも、その同一コメント数が第1基準コメント数に満たない場合は通常通り別個に表示する(図11(a))。これに対し、同一コメント数が第1基準コメント数以上の場合はそれらを1つの入力コメント(肯定コメント)E64とし、例えば文字サイズを大きく変更する(図11(b))。表記違いの単語を同一コメントとする場合は、何れかの表記(例えばひらがな)に統一して1つにまとめることができる。
どの程度の文字サイズとするのかは適宜設定してよい。また、同一コメント数が第1基準コメント数以上の場合に一律で文字サイズを大きく変更するとしてもよいし、通常時の文字サイズを小サイズとするならば、同一コメント数が多くなるにつれて中サイズ、大サイズ、特大サイズといった具合に段階的に大きくしてもよい。
次に、抽出した同時期条件を満たす各入力動画時間でのコメント群毎に、コメント内容が別の同内容条件である類語条件を満たす同等コメント(類語コメント)の数を計数する。その際、第1基準コメント数以上の同一肯定コメント又は同一否定コメントであるとして1つにまとめた入力コメントは計数の対象から除外する。例えば、「予め類語(同義語)として分類されていること」を類語条件として、類語コメント数を計数する。類語の分類については、予め類語データベース210(図15を参照)に登録しておく。
そして、計数の結果類語コメント数が予め設定される所定の第2基準コメント数以上の場合は、それら第2基準コメント数以上の類語コメントの表示形態を通常時と変更決定する。第2基準コメント数は、第1基準コメント数と同数であってもよいし、異なる数として設定しても構わない。
図12は、類語コメントの表示形態の変更例を説明する図である。サーバシステム1000は、同じようなタイミングで似たような複数の類語肯定コメントE71,E72が付けられている場合でも、その類語コメント数が少なければ通常通りの表示となる(図12(a))。これに対し、類語コメント数が第2基準コメント数以上の場合は、同一コメントの場合と異なり個々の類語コメントE71〜E76はまとめずにそのまま表示するが、例えばそれらを点滅表示させる(図12(b))。これによれば、同時期に多数入力された似たような肯定コメント群や似たような否定コメント群を他と識別可能に表示することができる。
また、サーバシステム1000は、2)所定の場合に、当該ゲームプレイ動画を更新する。そのために先ず、サーバシステム1000は、コメントデータ323を参照して肯定コメントデータ324の肯定コメント数を計数し、否定コメントデータ325の否定コメント数を計数して入力コメント総数を集計する。そして、入力コメント総数が所与の多数条件を満たすか否かを判定する。例えば、「入力コメント総数が予め設定される第1基準総数以上となったこと」を多数条件としてこれを満たすか否かを判定する。
なお、ここでの肯定コメント数及び否定コメント数の計数に際しても、動画ポイント327を求めるときと同様に、ユーザランク183に応じた加点を行ってもよい。これによれば、高ランクユーザによる入力コメントに重みを持たせて入力コメント総数を集計できる。
多数条件を満たす場合は、サーバシステム1000は、予め用意される複数の演出手法(演出手法一覧220:図18を参照)の中から1つを選択する。本実施形態では、段階的な複数の演出レベル毎に適用するエフェクト、背景素材、及び画面装飾の異なる演出手法が定められている。演出手法は、これら以外にも、例えば、画像生成の視点(仮想カメラ)の設定(位置や画角)を変更する等の方法を採用してもよい。何れの演出手法も、ゲームプレイの内容そのものが変わるわけではなく、見た目が変わるだけである。また、演出レベルは、ゲームプレイ動画に付けられたコメントの総数や、肯定コメントや否定コメントといったコメントの種類別の総数等に応じて決定される。そして、選択した演出手法を用いてゲームプレイ情報305に基づく動画生成を行い、動画データ303を書き換えることで当該ゲームプレイ動画の更新を行う。
これによれば、ゲームプレイ動画に付けられたコメントが一定数以上に増えた場合に、ゲームプレイ動画自体を、演出を施したものに更新することとされる。例えば、適用されるエフェクトが異なったり、適用される画面装飾が異なったりといった演出手法が様々に変化し得る。また、演出手法が変化する基準も、コメントの総数であったり、コメントの種類別の総数であったりと、ゲームプレイ動画に付けられたコメントによって変化し得る。このため、ゲームプレイ動画に付けられているコメントに基づく興趣溢れる演出表示が可能となる。
以上のようにしてゲームプレイ動画を更新した場合は、サーバシステム1000は、動画更新情報329を設定・更新する。動画更新情報329は、動画更新を行った更新日時と、当該動画更新に用いた演出手法の演出レベルとを対応付けたデータテーブルである。投稿時は動画更新情報329は空のデータとされ、動画データ303が更新されない間は、動画更新情報329には何も設定されない。この動画更新情報329を参照すれば、最新の更新日時と対応付けられた演出レベルを読み出すことで、動画データ303の動画生成に用いた演出手法を判別できる。実際の処理では、入力コメント総数に基づき演出手法を選択した時点で、その演出レベルを動画更新情報329に設定されている更新日時が最新の演出レベルと比較する。そして、比較の結果両者が一致し、選択した演出手法を用いた動画更新が既に行われている場合は、改めて更新する必要はないため動画生成は行わない。
また、サーバシステム1000は、入力コメント総数が多数条件を満たさない場合であっても、多数条件を満たす数(第1基準総数)に近づいたことを示す所与の多数接近条件を満たす場合には、その旨の予告表示を行う。例えば、「入力コメント総数が、予め設定される第2基準総数以上となったこと」を多数接近条件として動画更新するか否かを判定する。第2基準総数は、第1基準総数よりも少ない数とされる。予告表示のタイミングは特に限定されないが、例えば、配信対象のゲームプレイ動画の配信に先立ち行う。
図13は、動画プレーヤ画面W81にてゲームプレイ動画を閲覧する場合に表示される予告表示画面例を示す図である。図13に示すように、予告表示画面W83には、動画更新による演出表示を予告するメッセージが表示される。
また、サーバシステム1000は、3)当該ゲームプレイ動画にコメントが付けられているか否かに応じて動画プレーヤ画面W27等や閲覧画面W3に表示する再生バーCの表示設定を行う。図14は、再生バーCの表示設定例を示す図である。再生バーCは、ゲームプレイ動画の全体時間に対する再生位置(配信位置)を指示する動画再生用コントロールバーであり、閲覧者は、再生バーC上でスライダーFをスライドすることにより再生位置を操作することができる。
サーバシステム1000は、配信対象のゲームプレイ動画にコメントが1つも付いていない場合は、例えば、再生バーCの全域を同一色として表示設定する(図14(a))。一方、コメントが付いているのであれば、その入力コメントの入力動画時間付近に対応するバー部分C91,C93,C95の色を変更して表示設定する(図14(b))。本実施形態では、入力コメントが肯定コメントなのか否定コメントなのかにより変更するバー部分の色を分ける。加えて、肯定コメントと否定コメントとが両方付いている入力動画時間に対応するバー部分については、さらに色を分ける。これによれば、閲覧者にとっては、閲覧しているゲームプレイ動画のどの部分にコメントが付けられているのか、つまり、そのゲームプレイ動画において関心が高い動画部分が一目でわかる。そして、このような動画部分を優先して閲覧したい場合は、色分けを目安にスライダーFを操作することで、簡単にその部分を閲覧することができる。なお、コメント数(肯定コメントのみ、否定コメントのみ、或いは両者のコメントの数)が一定数以上になった入力動画時間に対応する部分のみを色分け表示としてもよい。
[機能構成]
図15は、本実施形態におけるサーバシステム1000の機能構成例を示すブロック図である。本実施形態におけるサーバシステム1000は、操作入力部110と、サーバ処理部120と、画像表示部150と、通信部160と、サーバ記憶部170とを備える。また、サーバシステム1000は、ゲームプレイ動画毎に投稿動画データセット300を管理する動画データベース30を備える。
操作入力部110は、サーバシステム1000の管理のための各種操作を入力するための手段である。キーボード等がこれに該当する。
サーバ処理部120は、例えばCPU、GPU等のマイクロプロセッサやICメモリ等の電子部品によって実現され、操作入力部110やサーバ記憶部170を含む各機能部との間でデータの入出力制御を行う。そして、サーバ記憶部170に格納されるプログラムやデータ、操作入力部110からの操作入力信号、ユーザ端末5000から受信したデータ等に基づいて各種の演算処理を実行し、サーバシステム1000の動作を統合的に制御する。図1の例では、制御基板1100がこれに該当する。
このサーバ処理部120は、ユーザ管理部121と、ゲーム管理部122と、動画データ生成部123と、実況音声受付部124と、付随情報生成部125と、投稿制御部126と、検索要求受付部127と、検索実行部128と、配信制御部129と、閲覧処理部133と、コメント受付部134と、コメント集計部136と、コメント表示形態決定部137と、動画更新部138と、ランキング処理部141と、画像生成部142と、通信制御部143とを含む。
ユーザ管理部121は、ユーザ登録手続きに係る処理と、登録済みユーザに関連付けされる各種データの登録管理処理とを行う。例えば、所定の登録手続きを経たユーザへ固有のユーザIDを発給する処理を行う。他にも、適宜、電子決済用媒体の紐付け処理や、電子決済用の口座の設定、現金或いはクレジットカードを用いた口座への入金処理、プレイ対価の支払い等の決済処理、決済履歴の記憶管理等を行うことができるとしてもよい。
ゲーム管理部122は、ゲームプレイに係る各種処理を行う。本実施形態のゲームはクライアント・サーバ型のオンラインゲームとするので、ゲーム管理部122は、ユーザ端末5000からの実行リクエストを受信してオンラインゲームを開始させ、当該ユーザ端末5000と通信を行いながらゲームプレイに必要なデータを提供する制御を行う。つまり、ゲームの準備及びゲームの進行制御を行う。そして、それらに伴いゲームプレイの制御に必要な各種データをプレイデータ190としてサーバ記憶部170に記憶させる。PvP(Player versus Player)形式でゲームを実行する場合には、ゲーム管理部122に対戦者のマッチング機能を含めるとしてもよい。
動画データ生成部123は、ユーザ端末5000でのゲームプレイ或いはそのリプレイデータに基づいて、ゲームプレイ動画として投稿するリプレイ動画の動画データ303を生成するための処理を行う。また、併せて、キャラクタ位置データ305を生成するための処理を行う。
実況音声受付部124は、ユーザ端末5000から投稿対象のゲームプレイ動画に付加する実況音声情報307を受け付けるための処理を行う。また、併せて、実況属性情報309を設定するための処理を行う。
付随情報生成部125は、投稿対象のゲームプレイ動画の付随情報313を手動モード又は自動モードで生成するための処理を実行する。
投稿制御部126は、投稿内容が確定したゲームプレイ動画に動画ID302及びアクセス情報301を付与し、当該ゲームプレイ動画についての投稿動画データセット300を動画データベース30に投稿する制御を行う。
検索要求受付部127は、ユーザ端末5000からのゲームプレイ動画の検索要求を受け付けるための処理を行う。本実施形態では、ユーザ端末5000での検索要求操作を検出し、検索条件の入力画面、すなわち図5の入力バーA21をユーザ端末5000に表示させて検索ワードを取得する。
検索実行部128は、動画データベース30を参照し、検索ワードに適合するゲームプレイ動画を検索する。本実施形態では、付随情報313又は実況属性情報309が検索ワードの一部又は全部を含むゲームプレイ動画を選出することによって、閲覧者が見たいと考えている条件に適合するゲームプレイ動画を検索する。そして、検索要求したユーザ端末5000に検索結果のゲームプレイ動画を閲覧するためのアクセス情報301を回答する制御を行う。本実施形態では、図5のアクセス情報一覧A23にて選択操作可能に表示する。
配信制御部129は、検索要求したユーザ端末5000にてアクセス情報一覧A23から1つのアクセス情報を選択する閲覧要求操作が行われるとこれを検出し、該当するアクセス情報301が紐付けられたゲームプレイ動画をストリーミング配信する制御を行う。この配信制御部129は、再生バー表示設定部130と、ダイジェスト再生制御部131と、コメント表示制御部132とを含む。
再生バー表示設定部130は、配信対象のゲームプレイ動画のコメントデータ323から動画時間内の入力コメントの表示時間帯(コメント表示時間帯)を特定し、再生バーCの色分け表示設定を行う。
ダイジェスト再生制御部131は、コメント表示時間帯データ240に従い、配信対象のゲームプレイ動画のうちのコメント表示時間帯の動画部分のみを配信し、それ以外の期間をスキップ再生する制御を行うことで、配信対象のゲームプレイ動画のダイジェスト再生の制御を行う。
コメント表示制御部132は、配信対象のゲームプレイ動画のコメント表示形態データ230に従い、ユーザ端末5000における当該ゲームプレイ動画の閲覧時に合わせて入力コメントを表示する制御を行う。具体的には、コメント表示形態データ230に設定されている入力コメントの各々を、その入力動画時間に応じた表示時間においてゲームプレイ動画上の所定位置に配置して固定表示する制御、或いは移動表示する制御を行う。
閲覧処理部133は、配信制御部129によりゲームプレイ動画の配信制御が開始されると、閲覧回数315を更新する。また、閲覧処理部133は、当該ゲームプレイ動画の配信制御の終了に伴い、動画ポイント327を更新する。
コメント受付部134は、配信制御部129によるゲームプレイ動画の配信制御に伴い、ユーザ端末5000から当該ゲームプレイ動画の閲覧中に入力されたコメントを受け付けるための処理を行う。このコメント受付部134は、コメント内容判定部135を含む。コメント内容判定部135は、肯定コメントボタンD−1の選択操作を伴うコメントの入力を受け付けた場合は、入力コメントを肯定コメントと判定して肯定コメントデータ324を更新する一方、否定コメントボタンD−2の選択操作を伴うコメントの入力を受け付けた場合は、入力コメントを否定コメントと判定して否定コメントデータ325を更新する。
コメント集計部136は、肯定コメントデータ324を動画時間軸を基準に集計し、同時期条件を満たす各入力動画時間の同一肯定コメント数及び類語肯定コメント数を計数するとともに、否定コメントデータ325を動画時間軸を基準に集計し、同時期条件を満たす各入力動画時間の同一否定コメント数及び類語否定コメント数を計数する。また、コメント集計部136は、肯定コメントデータ324の肯定コメント数と否定コメントデータ325の否定コメント数とを計数して入力コメント総数を集計する。
コメント表示形態決定部137は、同時期条件を満たし、且つ同一条件を満たす第1基準コメント数以上の同一肯定コメント及び同一否定コメントの表示形態を変更決定するとともに、同時期条件を満たし、且つ類語条件を満たす第2基準コメント数以上の類語肯定コメント及び類語否定コメントの表示形態を変更決定する。
動画更新部138は、配信対象のゲームプレイ動画の投稿時において動画データ生成部123が動画データ303を生成するのに用いたリプレイデータであるゲームプレイ情報305を参照し、リプレイ動画を新たに生成して動画データ303を更新する。この動画更新部138は、演出手法選択部139を含み、入力コメント総数が多数条件を満たした場合に、演出手法選択部139が選択した演出手法を用いてゲームプレイ情報305に基づく動画生成を行う。演出手法選択部139は、入力コメント総数に基づいて、演出手法一覧220から演出手法を選択する。また、動画更新部138は、予告表示制御部140を含む。予告表示制御部140は、入力コメント総数が多数接近条件を満たした場合に、その旨を予告表示する制御を行う。
ランキング処理部141は、ユーザ端末5000でのゲームプレイ動画のランキング表示要求操作を検出すると、動画データベース30に投稿されているゲームプレイ動画を動画ポイント327で順位付けする。そして、ランキング表示を要求したユーザ端末5000に順位付け結果を図9のランキング一覧W4として表示させる。
画像生成部142は、例えば、GPU、デジタルシグナルプロセッサ(DSP)等のプロセッサ、ビデオ信号IC、ビデオコーデック等のプログラム、フレームバッファ等の描画フレーム用ICメモリ等によって実現される。この画像生成部142は、ゲーム管理部122による処理結果に基づいてユーザ端末5000にてゲーム画面の画像を表示させるためのデータを生成する。また、その他システム管理に必要な画像を生成して画像信号を画像表示部150に出力する。
通信制御部143は、データ通信に係るデータ処理を実行し、通信部160を介して外部装置(主にユーザ端末5000)とのデータのやりとりを実現する。
画像表示部150は、画像生成部142から入力される画像信号に基づいて各種ゲーム画面を表示する。画像表示部150の機能は、例えば、フラットパネルディスプレイ、ブラウン管(CRT)、プロジェクター、ヘッドマウントディスプレイといった表示装置によって実現できる。
通信部160は、通信回線Nと接続して通信を実現する。通信部160の機能は、例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現できる。図1の例では、通信装置1155がこれに該当する。
サーバ記憶部170は、サーバ処理部120にサーバシステム1000を統合的に制御させて諸機能を実現するのに必要な各種プログラムやデータ等を記憶する。また、サーバ記憶部170は、サーバ処理部120の作業領域として用いられ、サーバ処理部120が各種プログラムに従って実行した演算結果等を一時的に記憶する。こうした機能は、例えばRAMやROM等のICメモリ、ハードディスク等の磁気ディスク、CD−ROMやDVD等の光学ディスク、オンラインストレージ等によって実現される。図1の例では、ICメモリ1153がこれに含まれる。
このサーバ記憶部170には、システムプログラム171と、サーバプログラム172と、配信用クライアントプログラム173と、ステージ別ゲーム初期設定データ174と、ユーザ管理データ180と、プレイデータ190と、類語データベース210と、演出手法一覧220と、コメント表示形態データ230と、コメント表示時間帯データ240と、ランキングデータ250とが格納される。また、その他、計時用のタイマやカウンタ、各種フラグ等の情報を適宜記憶できる。
システムプログラム171は、コンピュータとしての基本機能を実現するためのプログラムである。
サーバプログラム172は、サーバ処理部120をユーザ管理部121〜ランキング処理部141の各機能部として機能させるためのプログラムである。
配信用クライアントプログラム173は、ゲームを実行するためにユーザ端末5000で実行されるプログラムである。この配信用クライアントプログラム173は、例えば、専用のプログラムとして実現される。或いは、本実施形態のゲームをウェブゲームとして実現するならば、ウェブブラウザをベースとしてHTMLとともにJava(登録商標)やCSS(Cascading Style Sheets)等を利用して能動的に画面表示を制御するウェブ技術や、Adobe(登録商標)Flash等のプラグインを用いて実現するとしてもよい。勿論、その他の方法でもかまわない。
ステージ別ゲーム初期設定データ174は、ゲームステージ別に用意され、それぞれのステージにおけるゲームを実行するために必要な各種初期設定データを格納する。その一部は、ユーザ端末5000への配信に用いるとしてもよい。
ユーザ管理データ180は、サーバシステム1000が提供するオンラインゲームのプレーヤとして登録されたユーザ毎に用意される。図16は、ユーザ管理データ180のデータ構成例を示す図である。図16に示すように、個々のユーザ管理データ180は、該当するユーザのユーザID181と、最新のプレイまでのゲームの進行状況を記述するデータを格納するセーブデータ182と、ユーザランク183とを含む。勿論、これら以外のデータも適宜格納することができる。
図15に戻る。プレイデータ190は、プレイ中のゲーム別に用意されてその進行状況を記述する各種データを格納する。図17は、プレイデータ190のデータ構成例を示す図である。図17に示すように、個々のプレイデータ190は、例えば、プレーヤを識別するためのユーザID191と、ログイン日時192と、ゲームタイトル193と、プレイ中のゲームステージを示すステージID194と、プレーヤキャラクタとして使用されているキャラクタ種類を示すプレーヤキャラクタ種類195と、装備されているアイテム種類を示すアイテム種類196と、プレーヤの操作入力の情報を時系列に格納する操作入力履歴データ197と、コンピュータが自動制御するNPC別にその制御情報を時系列に格納するNPC制御履歴データ198と、ゲーム空間制御データ199と、プレーヤキャラクタ制御データ200と、NPC制御データ201と、プレイ成績データ202とを格納する。勿論、これら以外のデータも適宜格納することができる。
リプレイデータを、ゲームプレイの進行状況をプレイ後に再構築するためのデータという意味とするならば、ステージID194、プレーヤキャラクタ種類195、操作入力履歴データ197、NPC制御履歴データ198、ゲーム空間制御データ199、プレーヤキャラクタ制御データ200、NPC制御データ201等がリプレイデータに相当する。
図15に戻る。類語データベース210は、一群の類語を類語群211として登録したデータベースである。この類語データベース210には、例えば、「すごい」「すごーい」「すごっ」といった表記が微妙に違う単語や、「すごい」「すばらしい」「おみごと」等のような似た意味の単語が同じ類語群211に含めて登録される。表記違いの単語を類語コメントとする場合は、それらも同じ類語群211に含めて登録される。
演出手法一覧220は、演出手法選択部139によって選択可能な複数の演出手法を格納する。図18(1)は、演出手法一覧220のデータ構成例を示す図であり、図18(2)〜(8)は演出手法の具体例を示している。図18(1)に示すように、演出手法一覧220には、複数段階の演出レベルと対応付けて、選択条件と、エフェクト、背景素材及び画面装飾に関する演出手法とが設定されている。選択条件は、例えば、段階的に増加する入力コメント総数の値幅であったり、肯定コメントや否定コメントといったコメントの種類別の総数が設定される。ここで、値幅は適宜設定してよいが、図18(1)中のN1は第1基準総数とされ、第1基準総数以上の入力コメント総数の値幅が選択条件とされる。また、演出手法は特に限定されるものではないが、例えば、演出レベルが高くなるにつれて(選択条件とされる入力コメント総数が多い程)より派手なエフェクトや背景素材、画面装飾が設定される。
図18(2)〜(4)は、演出手法の1つであるエフェクトの例を示している。攻撃がヒットした場合に発生させるエフェクトの例を示している。これらのエフェクトを演出レベルに応じて切り替えることができる。
図18(5)〜(6)は、演出手法の1つである背景素材の例を示している。敵キャラクタに遭遇したエンカウントの場面に使用されるゲーム画面の背景素材の例を示している。これらの背景素材を演出レベルに応じて切り替えて使用することができる。
図18(7)〜(8)は、演出手法の1つである画面装飾の例を示している。敵キャラクタが攻撃不能となりプレーヤキャラクタが勝利のポーズをする際に画面枠として設定される画面装飾の例を示している。これらの画面装飾を演出レベルに応じて切り替えて使用することができる。
図15に戻る。コメント表示形態データ230は、配信対象として確定されたゲームプレイ動画別に生成・更新されて設定される。このコメント表示形態データ230は、該当するゲームプレイ動画の配信制御を終えるまで保持され、その再生制御中は、コメント表示形態決定部137によって参照されて入力コメントを表示制御するのに用いられる。個々のコメント表示形態データ230は、肯定コメント用のコメント表示形態データ231と、否定コメント用のコメント表示形態データ233とを格納する。また、コメント表示形態データ230は、併せて動画IDを格納しており、この動画IDによりゲームプレイ動画と紐付けられている。
図19は、肯定コメント用のコメント表示形態データ231のデータ構成例を示す図である。図19に示すように、肯定コメント用のコメント表示形態データ231は、コメントカテゴリと、コメントIDと、入力動画時間と、入力コメント(肯定コメント)と、表示形態とが設定されたデータテーブルである。コメントカテゴリには「肯定コメント」が設定される。表示形態は、文字サイズと、表示設定とを含む。コメントIDと、入力動画時間と、入力コメント(肯定コメント)とは、前述のように動画IDによって紐付けられるコメントデータ323の肯定コメントデータ324に基づき設定される。すなわち、コメント表示形態データ231は、コメント表示形態決定部137によって生成・更新されるが、当初の生成時は、コメントID、入力動画時間、及び入力コメント(肯定コメント)の各項目は肯定コメントデータ324の内容がそのままコピーされる。また、表示形態には、文字サイズ及び表示設定の双方とも全てに「通常」が設定される。
このコメント表示形態データ231が更新される場合の1つは、コメント表示形態決定部137が同一肯定コメントを1つにまとめて表示形態の変更決定を行った場合である。同一肯定コメントがまとめられると、例えば、レコードG101に示すように、該当する肯定コメントのレコードはそれらのコメントIDを設定した1つのレコードに置き換えられ、文字サイズが「大」等と書き換えられる。もう1つの場合は、コメント表示形態決定部137が類語肯定コメントの表示形態を変更決定した場合である。例えば、レコードG103等に示すように、表示設定が「点滅表示」等と書き換えられる。
なお、否定コメント用のコメント表示形態データ233については図示しないが、コメント表示形態決定部137により、コメント表示形態データ231と同様に生成・更新されて設定される。こちらは否定コメントデータ325がもとにされ、コメントカテゴリの設定は、「否定コメント」となる。
図15に戻る。コメント表示時間帯データ240は、配信対象として確定されたゲームプレイ動画別に設定される。このコメント表示時間帯データ240は、再生バー表示設定部130が色分け表示設定を行う過程で生成され、該当するゲームプレイ動画の配信制御を終えるまで保持される。そして、その再生制御中は、ダイジェスト再生制御部131によって適宜参照され、ダイジェスト再生の制御に用いられる。個々のコメント表示時間帯データ240は、肯定コメントの表示時間帯と、否定コメントの表示時間帯を格納する。また、コメント表示時間帯データ240は、併せて動画IDを格納しており、この動画IDによりゲームプレイ動画と紐付けられている。
ランキングデータ250は、ランキング処理部141が行ったゲームプレイ動画の最新の順位付け結果を格納する。
[処理の流れ]
図20は、サーバシステム1000が行う処理の流れを示すフローチャートである。なお、ここで説明する処理は、サーバ処理部120がサーバプログラム172を読み出して実行することによって実現される。なお、前提として、プレーヤは既にユーザ登録を済ませているものとする。すなわち、ユーザ管理データ180は既に作成されている。また、そのユーザ端末5000は配信用クライアントプログラム173をダウンロードして実行し、サーバシステム1000との間でデータ通信を確立しているものとする。
はじめに、サーバ処理部120は、ログイン処理を行う(ステップa1)。そして、ユーザ端末5000でのゲーム開始操作を検出すると(ステップa3:YES)、ゲーム管理処理に移る(ステップa5)。ログイン処理の以降にユーザ端末5000にて行われた検索要求操作を検出すると(ステップa7:YES)、配信処理に移る(ステップa9)。ログイン処理の以降にユーザ端末5000にて行われたランキング表示要求操作を検出すると(ステップa11:YES)、ランキング処理に移る(ステップa13)。そして、ログアウトする場合は(ステップa15:YES)、処理を終える。以下、ゲーム管理処理と、配信処理と、ランキング処理について順番に説明する。
先ず、ゲーム管理処理について説明する。図21は、ゲーム管理処理の流れを示すフローチャートである。このゲーム管理処理は、サーバシステム1000がユーザ端末5000にてオンラインゲームを実行させるための処理である。
ゲーム管理処理では、ゲーム管理部122は先ず、プレイ準備処理を実行する(ステップb1)。プレイ準備としては、例えばプレイデータ190の記憶領域を確保して、プレーヤの選択操作入力に応じたゲームステージの設定やプレーヤキャラクタの設定に関する処理を行う。ゲームタイトルも選択できる場合には、当該選択の受付とゲームタイトルの設定処理も行う。
次に、サーバシステム1000はゲーム進行制御を開始する(ステップb3)。ここで開始されるゲーム進行に応じて、プレイデータ190では、操作入力履歴データ197と、NPC制御履歴データ198と、ゲーム空間制御データ199と、プレーヤキャラクタ制御データ200と、NPC制御データ201とが生成・逐次更新される。つまり、リプレイデータが貯まってゆく。
そして、ゲーム進行を開始して以降にユーザ端末5000にて行われた投稿要求操作を検出すると(ステップb5:YES)、ゲーム管理部122はゲーム進行制御を一時停止し(ステップb7)、投稿処理に移る(ステップb9)。図22は、投稿処理の流れを示すフローチャートである。
投稿処理では先ず、動画データ生成部123が、投稿対象のゲームプレイ動画の動画データ303を自動生成する(ステップc1)。例えば、動画データ生成部123は、リプレイデータ194〜201を参照して過去所定時間分のリプレイ動画を生成し、動画データ303とする。また、このとき、動画データ303を生成するのに用いた過去所定時間分のリプレイデータを、ゲームプレイ情報305とする(ステップc3)。
続いて、実況音声受付部124が、ユーザ端末5000に音声データのデータ選択画面を表示させて、実況音声情報307の受付処理を行う(ステップc5)。ここでの処理により、実況音声受付部124は、投稿者が用意した実況音声の音声データを投稿対象のゲームプレイ動画に付加する。また、実況音声受付部124は、実況属性情報309の受付処理を行う(ステップc7)。例えば、ユーザ端末5000に実況カテゴリの選択メニューとして「攻略実況」「解説実況」「ネタ見せの実況」の3つの選択肢を表示させ、当該選択メニューの選択結果を受け付ける。
続いて、付随情報生成部125が、ユーザ端末5000に手動編集モード又は自動編集モードの選択画面を表示させて、選択結果の受付処理を行う(ステップc8)。そして、受け付けた選択結果を判別し(ステップc9)、手動編集モードが選択された場合には、さらに、付随情報313の受付処理を行う(ステップc11)。ここでの処理により、付随情報生成部125は、ユーザ端末5000における操作入力欄への操作入力情報を付随情報313として取得する。
一方、自動編集モードが選択された場合は、付随情報生成部125は、付随情報313を自動生成する(ステップc13)。例えば、ゲームカテゴリ及びゲームタイトルにはプレイ中のオンラインゲームに係る所定のジャンル及びゲームタイトルを設定し、投稿者アカウントにはプレイデータ190のユーザID191を設定する。プレイ日時には、現在日時を設定する。プレイ状況や動画内容に関する付随情報は、プレイデータ190に含まれるプレイ状況を示すパラメータ値に基づき設定する。例えば、使用アイテムには、アイテム種類196や、その他当該ゲームプレイで使用したアイテムがあればそれを設定する。使用キャラクタには、プレーヤキャラクタ種類195を設定する。その他にも、ステージID194に基づくゲームステージの番号や呼称、NPC制御履歴データ198に基づく敵キャラクタ種類等を設定することができる。勿論、設定内容はゲーム内容に応じて適宜設定可能である。
その後、投稿制御部126が、投稿対象のゲームプレイ動画に動画ID302及びアクセス情報301を付与し、投稿動画データセット300として動画データベースに投稿する(ステップc15)。投稿処理を終えたならば図21のステップb9にリターンし、その後ステップb11に移行する。そして、ステップb11では、ゲーム管理部122が、ステップb7で一時停止させていたゲーム進行制御を再開する。
また、ゲーム進行を開始して以降にユーザ端末5000にて行われた閲覧要求操作を検出すると(ステップb13:YES)、ゲーム管理部122はゲーム進行制御を一時停止し(ステップb15)、配信処理に移る(ステップb17)。配信処理を終えたならばステップb19に移行し、ゲーム管理部122は、ステップb15で一時停止させていたゲーム進行制御を再開する。
また、ゲーム進行を開始して以降にユーザ端末5000にて行われたランキング表示要求操作を検出すると(ステップb21:YES)、ゲーム管理部122はゲーム進行制御を一時停止し(ステップb23)、ランキング処理に移る(ステップb25)。ランキング処理を終えたならばステップb27に移行し、ゲーム管理部122は、ステップb23で一時停止させていたゲーム進行制御を再開する。
そして、ゲーム管理部122は、所定のプレイ終了条件が満たされるまでの間は(ステップb29:NO)、ステップb5に戻って上記した処理を繰り返す。プレイ終了条件が満たされたならば(ステップb29:YES)、ゲーム管理部122は、プレイデータ190に基づいてセーブデータ182を保存する(ステップb31)。
次に、配信処理について説明する。図23は、配信処理の流れを示すフローチャートである。配信処理では先ず、検索要求受付部127が、検索条件の受付処理を行う(ステップd1)。ここでは、検索要求受付部127は、ユーザ端末5000にてゲーム画面内に検索ワードの入力バーA21を表示させ、当該入力バーA21への操作入力情報の受付処理を行う。続いて、検索実行部128が、検索条件の入力結果に基づいてアクセス情報の検索処理を行う(ステップd3)。例えば、検索実行部128は、検索ワードを含んだ付随情報313及び実況属性情報309を有するゲームプレイ動画を検索する。そして、検索実行部128は、該当するゲームプレイ動画のアクセス情報301を検索結果として回答し、ユーザ端末5000にてアクセス情報一覧A23として表示させる(ステップd5)。
回答後にユーザ端末5000にてアクセス情報一覧A23から何れかを選択する閲覧要求操作を検出すると(ステップd7:YES)、選択されたアクセス情報のゲームプレイ動画を配信対象として確定し、コメント表示形態決定処理(ステップd9)と、動画更新処理(ステップd11)とを順次行う。
図24は、コメント表示形態決定処理の流れを示すフローチャートである。コメント表示形態決定処理では先ず、コメント表示形態決定部137が、配信対象のゲームプレイ動画の肯定コメントデータ324を参照し、入力コメント(肯定コメント)の表示形態をすべて通常として設定した肯定コメント用のコメント表示形態データ231を生成するとともに、否定コメントデータ325を参照し、入力コメント(否定コメント)の表示形態をすべて通常として設定した否定コメント用のコメント表示形態データ233を生成する(ステップe1)。
一方で、コメント集計部136が、肯定コメントデータ324を動画時間軸を基準に集計して同時期条件を満たす肯定コメントのコメント群を抽出し(ステップe3)、コメント群毎に同一条件を満たす同一肯定コメント数を計数する(ステップe5)。また、コメント集計部136は、否定コメントデータ325を動画時間軸を基準に集計して同時期条件を満たす否定コメントのコメント群を抽出し(ステップe7)、コメント群毎に同一条件を満たす同一否定コメント数を計数する(ステップe9)。
そして、コメント表示形態決定部137は、これら肯定コメントのコメント群及び否定コメントのコメント群の中から、その同一肯定コメント数又は同一否定コメント数が第1基準コメント数以上のコメント群を抽出し(ステップe11)、抽出したコメント群を順次処理対象としてループAの処理を行う(ステップe13〜ステップe19)。ループAでは、コメント表示形態決定部137は、処理対象のコメント群に含まれる同一コメントを1つにまとめ(ステップe15)、その表示形態を変更決定する(ステップe17)。
このループAの処理は、処理対象のコメント群が肯定コメントのコメント群であれば肯定コメント用のコメント表示形態データ231を更新し、否定コメントのコメント群であれば否定コメント用のコメント表示形態データ233を更新することで行う。例えば、処理対象のコメント群が肯定コメントのコメント群の場合、これに含まれる第1基準コメント数以上の各同一肯定コメントのレコードを図19のレコードG101のように1つのレコードに置き換え、その表示形態の文字サイズを「大」とする。その場合の入力動画時間については、1つにまとめた同一肯定コメントの入力動画時間のうち最先のものを採用する等、適宜設定してよい。処理対象のコメント群が否定コメントのコメント群の場合も同様である。
続くステップe21では、コメント集計部136が、ステップe3で抽出したコメント群毎に類語条件を満たす類語肯定コメント数を計数する(ステップe21)。また、コメント集計部136は、ステップe7で抽出したコメント群毎に類語条件を満たす類語肯定コメント数を計数する(ステップe23)。
そして、コメント表示形態決定部137が、類語肯定コメント数又は類語否定コメント数が第2基準コメント数以上のコメント群を抽出し(ステップe25)、抽出したコメント群を順次処理対象としてループBの処理を行う(ステップe27〜ステップe31)。ループBでは、コメント表示形態決定部137は、処理対象のコメント群に含まれる類語コメントの表示形態を変更決定する(ステップe29)。例えば、処理対象のコメント群が肯定コメントのコメント群の場合であれば、これに含まれる第2基準コメント数以上の各類語肯定コメントのレコードにおいて、その表示形態の表示設定を「点滅表示」とする。
図25は、動画更新処理の流れを示すフローチャートである。先ず、コメント集計部136が、入力コメント総数を集計する(ステップf1)。そして、入力コメント総数が第1基準総数以上であり多数条件を満たす場合は(ステップf3:YES)、演出手法選択部139が、入力コメント総数に応じた演出レベルの演出手法を演出手法一覧220から選択する(ステップf5)。
続いて、動画更新部138が、配信対象のゲームプレイ動画の動画更新情報329から更新日時が最新の演出レベルを読み出し、これとステップf5で演出手法選択部139が選択した演出手法の演出レベルを比較する。そして、比較の結果両者が一致せず、選択した演出手法を用いた画像更新が済んでいない場合は(ステップf7:NO)、動画更新部138は、ステップf5で選択した演出手法を用いてゲームプレイ情報305に基づく動画生成を行い、リプレイ動画を新たに生成して動画データ303を更新する(ステップf9)。また、動画更新部138は、現在日時と、ステップf5で選択した演出手法の演出レベルとを対応付けて動画更新情報329を更新する(ステップf11)。
また、入力コメント総数が多数条件を満たさない一方で(ステップf3:NO)、第2基準総数以上であり多数接近条件を満たすか場合は(ステップf13:YES)、動画更新部138は、図13の予告表示画面W83を表示させてその旨の予告表示を制御する(ステップf15)。動画更新処理を終えると、図23のステップd13に移行する。
続くステップd13では、再生バー表示設定部130が、配信対象のゲームプレイ動画のコメントデータ323を参照して入力コメントが表示される動画時間内のコメント表示時間帯を特定する。具体的には、肯定コメントデータ324に設定されている各肯定コメントの入力動画時間に基づき動画時間内の肯定コメントの表示時間帯を特定するとともに、否定コメントデータ325に設定されている各否定コメントの入力動画時間に基づき動画時間内の否定コメントの表示時間帯を特定し、コメント表示時間帯データ240を生成する。
そして、再生バー表示設定部130は、コメント表示時間帯データ240に基づき再生バーCの色分け表示設定を行う(ステップd15)。先ず、肯定コメントの表示時間帯に対応する再生バーCのバー部分と、否定コメントの表示時間帯に対応する再生バーCのバー部分とをそれぞれ予め設定される所定色に変更して色分けする。そして、肯定コメントの表示時間帯と否定コメントの表示時間帯とに重複する時間帯があれば、対応するバー部分をその場合の表示色として予め設定される所定色に変更してさらに色を分ける。
次に、配信制御部129が、ユーザ端末5000に通常再生モード又はダイジェスト再生モードの選択画面を表示させて選択結果の受付処理を行う(ステップd16)。そして、受け付けた選択結果を判別し(ステップd17)、通常再生モードが選択された場合は、配信制御部129は、配信対象のゲームプレイ動画の配信制御を開始する(ステップd19)。ここでの処理により、動画データ303及び実況音声情報307の通常再生モードでの再生が実現され、当該ユーザ端末5000のユーザにより配信対象のゲームプレイ動画が閲覧される。また、その際、再生バーCの色分け表示が実現され、再生バーC上でコメント表示時間帯が識別可能に表示される。
一方、ダイジェスト再生モードが選択された場合は、ダイジェスト再生制御部131が、コメント表示時間帯データ240に従ってコメント表示時間帯以外の期間をスキップ再生する制御を行い、配信対象のゲームプレイ動画のダイジェスト再生の制御を行う(ステップd21)。ここでの処理により、動画データ303及び実況音声情報307のダイジェスト再生モードでの再生が実現され、当該ユーザ端末5000のユーザにより、配信対象のゲームプレイ動画のコメント表示時間帯が閲覧される。なお、スキップ再生する制御に限らず、コメント表示時間帯以外の期間を早送りして再生する制御等であってもよい。
また、ステップd19又はステップd21で開始したゲームプレイ動画の配信制御と同期してコメント表示制御部132がコメント表示制御処理を開始し、配信先のユーザ端末5000にてゲームプレイ動画上にコメントを表示させる(ステップd23)。ここで開始されるコメント表示制御処理では、コメント表示制御部132は、ゲームプレイ動画の配信状況を監視しながら、コメント表示形態データ230を用いて入力コメントの表示を制御する。
続いて、閲覧処理部133が、ステップd19又はステップd21で配信制御を開始した配信対象のゲームプレイ動画の投稿動画データセット300において閲覧回数315を更新(「1」アップ)する(ステップd25)。
また、コメント受付部134が、コメントの入力を受け付ける処理を行う(ステップd27)。ここでの処理により、コメント受付部134は、配信先のユーザ端末5000から随時送信されるコメントの操作入力情報に従ってコメントデータ323を更新する。その際、コメント内容判定部135が肯定コメントボタンD−1の選択操作を伴う入力コメントを肯定コメントと判定し、その場合は肯定コメントデータ324を更新する。一方、コメント内容判定部135は、否定コメントボタンD−2の選択操作を伴う入力コメントは否定コメントと判定し、その場合は否定コメントデータ325を更新する。
そして、配信制御部129は、ユーザ端末5000にて行われた所定の閲覧終了操作を検出した場合は(ステップd29)、ゲームプレイ動画の閲覧を終了させる(ステップd31)。その後は、閲覧処理部133がコメントデータ323を参照して動画ポイント327を算出し(ステップd33)、配信処理を終える。
次に、ランキング処理について説明する。図26は、ランキング処理の流れを示すフローチャートである。ランキング処理では、ランキング処理部141は先ず、動画データベース30に投稿されているゲームプレイ動画の動画ポイント327を参照し、各ゲームプレイ動画を動画ポイント327の高い順に順位付ける(ステップg1)。その際、順位付け結果に従いランキングデータ250を更新する。そして、ランキング処理部141は、ユーザ端末5000にて順位付け結果をランキング一覧W4(図9を参照)として表示させる(ステップg3)。
その後は、ユーザ端末5000にて行われた所定のランキング表示終了操作をすると(ステップg5:YES)、ランキング処理を終える。一方、ユーザ端末5000にてランキング一覧W4から何れかを選択する閲覧要求操作を検出した場合は(ステップg7)、図23のステップd9に移行してステップd33までの処理を行い、ステップd33の処理の後、ランキング処理を終える。
以上説明したように、本実施形態によれば、ゲームプレイ動画の閲覧時における興趣性を高める技術を実現することができる。
なお、上記した実施形態では、肯定コメント及び否定コメントの入力を受け付ける場合を説明した。これに対し、例えば、動画画面内に肯定意思表示操作ボタン(いわゆる「いいね」ボタン)と、これと反対の否定意思表示操作ボタンとを表示し、その選択操作を受け付けることとしてもよい。図27に、本変形例における動画プレーヤ画面例を示す。
図27に示す動画プレーヤ画面W111において閲覧者が肯定ボタンD−11を選択操作すると、サーバシステム1000は、当該選択操作を肯定入力と判定し、入力動画時間と対応付けて記憶・管理する。否定ボタンD−12を選択操作した場合は、サーバシステム1000は、当該選択操作を否定入力と判定し、入力動画時間と対応付けて記憶・管理する。また、ゲームプレイ動画上には、その入力動画時間に応じて肯定ボタンD−11の選択操作がされたことを示すアイコンH111や、否定ボタンD−12の選択操作がされたことを示すアイコンH113を表示させる。その場合、各ボタンD−11,D−12の選択操作の回数を同時期条件を満たす入力動画時間毎に集計し、所定数を超える場合にアイコンH111,H113の表示色を変更したりサイズを拡大する等してその表示形態を変更したり、各ボタンD−11,D−12の選択操作の回数に応じて動画更新を行ったり、或いは、その入力動画時間に基づき再生バーCの表示設定を行ってもよい。
また、肯定ボタンD−11及び否定ボタンD−12の2種類の操作ボタンを表示する場合に限らず、1つの操作ボタンを表示する構成としてもよい。そして、これを選択操作することでアイコン一覧を呼び出し、アイコン一覧から1つを選んで入力する構成でもよい。その場合は、サーバシステム1000は、選ばれたアイコンの種類に応じて肯定入力なのか否定入力なのかを判定するとしてもよい。
また、コメントの入力を受け付ける場合においても、1つのコメント入力欄を表示する構成としてもよい。そして、サーバシステム1000においてコメントの意味内容を解析し、そのコメント内容が肯定的な内容なのか否定的な内容なのかを判定することとしてもよい。判定は、例えば、コメントとして入力され得る単語を想定し、各単語を肯定的な意味か否定的な意味かで分類した語彙データベースを予め用意しておくことで実現できる。
また、上記した実施形態では、入力コメント総数に応じて段階的に、異なる演出手法を選択して動画生成を行うこととした。これに対し、入力コメント総数に応じて演出手法を選択するのではなく、演出表示する動画部分を選択するとしてもよい。例えば、4段階で演出レベルを設定する場合であれば、ゲームプレイ動画の動画時間を序盤・中盤・終盤に3等分して3つの動画期間に分割する。そして、最初の演出レベルに到達した場合は、序盤の動画期間分のゲームプレイ情報305を参照し、所定の演出手法を用いて部分的に動画生成する。その後は、次の演出レベルに到達するたびに、中盤・終盤について、順次、当該動画期間について動画生成する。その際、動画生成に用いる演出手法は全演出レベルで同じとしてもよいし、その演出レベル毎に異なる演出手法を選択するのでもよい。
また、上記した実施形態では、第2基準総数を固定として多数接近条件を満たすか否かを判定することとした。これに対し、次の演出レベルに応じた基準値を規定した多数接近条件を適用するようにしてもよい。この場合は、各演出レベル毎の多数接近条件の基準値を、演出手法一覧220において対応する演出手法の選択条件として設定される値幅の下限値に対応させて設定しておく。そして、動画更新情報329から次の演出レベルを判別して多数接近条件を適用することで、入力コメント総数が次の演出レベルの値幅下限値に接近した場合に、別の演出表示に変わることの演出表示を行うとしてもよい。
また、上記した実施形態では、ゲームプレイ動画を更新することとしたが、この更新したゲームプレイ動画を新たな別の動画として動画データベース30にアップロードすることとしてもよい。また、他の動画投稿サイトに投稿(アップロード)することとしてもよい。
また、上記した実施形態の動画ポイントに、一般的なプレーヤでは再現することができないいわゆるスーパープレイの程度(或いは該当するか否か)を示す「スーパープレイポイント(再現難易度ポイント)」、誰もが予想だにしなかった裏技的なプレイの程度(或いは該当するか否か)を示す「裏技プレイポイント」、綺麗な情景や珍しい情景をゲーム画面に捉えることができるいわゆるビュースポットの程度(或いは該当するか否か)を示す「ビュースポットポイント」などの種類別のポイントを定めることとしてもよい。
これらの種類別のポイントは、閲覧ユーザがコメントを入力する際に併せて採点入力可能とすることができる。また、サーバシステム1000側に各種類に応じた評価条件を定めて採点処理を行い、採点したポイントを初期ポイントとして、自動的に付加することとしてもよい。
また、動画ポイント327の算出に当たっては、各種類のポイントに軽重異なる値の係数を設定して、当該係数を乗算・集計することで総合ポイントとして算出することができる。また、この係数を、動画が公開(閲覧可能)となってからの経過時間に応じて変化させることとしてもよい。公開当初は再現難易度ポイントの係数を高くしておき、時間経過に従って低くすることができる。