(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-01-31
(45)【発行日】2024-02-08
(54)【発明の名称】プログラム、会話表示方法、及び情報処理装置
(51)【国際特許分類】
A63F 13/53 20140101AFI20240201BHJP
G06F 3/0481 20220101ALI20240201BHJP
A63F 13/533 20140101ALI20240201BHJP
A63F 13/55 20140101ALI20240201BHJP
A63F 13/45 20140101ALI20240201BHJP
【FI】
A63F13/53
G06F3/0481
A63F13/533
A63F13/55
A63F13/45
(21)【出願番号】P 2022211204
(22)【出願日】2022-12-28
【審査請求日】2023-05-22
【新規性喪失の例外の表示】特許法第30条第2項適用 (証明書1)令和4年4月1日公開 https://granbluefantasy.jp/pages/?p=41065 (証明書2)令和4年4月14日公開 http://game.granbluefantasy.jp/ https://dmm.granbluefantasy.jp/ https://apps.apple.com/jp/app/guranburufantaji/id852882903 https://play.google.com/store/apps/details?id=jp.mbga.a12016007.lite&hl=ja https://www.andapp.jp/apps/12016007?from=www_mbga_intro
【早期審査対象出願】
(73)【特許権者】
【識別番号】511249637
【氏名又は名称】株式会社Cygames
(74)【代理人】
【識別番号】110000925
【氏名又は名称】弁理士法人信友国際特許事務所
(72)【発明者】
【氏名】西村 涼佑
(72)【発明者】
【氏名】倉持 友喜
【審査官】関口 英樹
(56)【参考文献】
【文献】特許第6467012(JP,B1)
【文献】ゲームアプリのUIデザイン,「聖剣伝説 ECHOES of MANA」会話シーンをスキップするときに会話ログを全部見るか選べる確認ダイアログ,[online],[検索日:2023年06月28日],2022年07月12日,全文全図,<URL:https://web.archive.org/web/20220712144121/https://appgameui.hatenablog.com/entry/2022/07/12/233753>
(58)【調査した分野】(Int.Cl.,DB名)
A63F9/24
13/00-13/98
(57)【特許請求の範囲】
【請求項1】
入力部を介して入力される指示により、ゲームの進行に合わせて表示部に表示されるテキストデータの表示形態を制御するプログラムであって、
前記ゲームで表示部に表示される会話シーンの表示モードが、前記会話シーンに含まれるオブジェクト及び会話の少なくとも一つが表示される順表示モードである場合に、前記会話シーンをスキップする指示が入力されることにより、前記会話シーンの表示モードを、前記会話シーンのシナリオに規定される順序で
、前記会話に含まれる選択肢の一部を除く全ての前記会話が
シナリオ表示領域に一覧表示されるシナリオ表示モードに変更する手順と、
前記順表示モードから前記シナリオ表示モードに変更されると、前記順表示モードで表示されていた前記会話が表示されるように、一覧表示される複数の前記会話の表示位置を調整して、前記ゲームの進行に合わせた順序で複数の前記会話を一覧表示する手順と、
前記シナリオ表示モードで一覧表示される複数の前記会話から一部の前記会話を選択する指示が入力されることにより、前記会話シーンの表示モードを前記順表示モードに変更する手順と、を
コンピューターに実行させるためのプログラム。
【請求項2】
前記シナリオ表示モードから前記順表示モードに変更されると、前記シナリオ表示モードで選択された前記会話から前記順表示モードで表示する手順を
含む
請求項1に記載のプログラム。
【請求項3】
前記順表示モードで表示される前記会話シーンには、前記会話シーンをスキップする指示を入力するための第1スキップ指示部を表示する手順と、
前記第1スキップ指示部から会話シーンをスキップする指示が入力されると、前記表示モードを前記シナリオ表示モードに変更する手順とを
含む
請求項2に記載のプログラム。
【請求項4】
前記第1スキップ指示部から会話シーンをスキップする指示が入力されると、前記シナリオのあらすじと、前記表示モードを前記シナリオ表示モードに変更する指示を入力するための表示モード変更指示部とを表示する手順と、
前記表示モード変更指示部から前記シナリオ表示モードに変更する指示が入力されると、前記表示モードを前記シナリオ表示モードに変更する手順とを
含む
請求項3に記載のプログラム。
【請求項5】
前記第1スキップ指示部から会話シーンをスキップする指示が入力されると、前記会話シーンのスキップを指示するための第2スキップ指示部を表示する手順と、
前記第2スキップ指示部から前記会話シーンのスキップの指示が入力されると、前記会話シーンをスキップする手順とを
含む
請求項4に記載のプログラム。
【請求項6】
前記順表示モードで表示される前記会話シーンには、オブジェクトが表示されるオブジェクト表示領域と、会話が表示される会話表示領域とを有する表示領域が表示され、
前記順表示モードでは、前記オブジェクトのオブジェクトデータと、前記会話のテキストデータとが紐付けられた会話データ群を前記シナリオに規定される順序で読み出し、前記オブジェクト表示領域に前記オブジェクトを表示し、前記会話表示領域に前記会話を表示する手順を
含む
請求項4に記載のプログラム。
【請求項7】
前記シナリオ表示モードで前記テキストデータから読み出された前記会話を、前記会話データ群の順序にしたがって一覧表示する手順を
含む
請求項6に記載のプログラム。
【請求項8】
前記順表示モードで前記会話シーンをスキップする指示が入力されたタイミングで前記会話シーンに表示されていた前記会話が、前
記シナリオ表示領域に表示されるように表示位置を調整して前記会話を表示する手順を
含む
請求項7に記載のプログラム。
【請求項9】
前記オブジェクトには、前記会話に合わせて表示されるキャラクタの画像データが含まれ、前記画像データは、前記オブジェクトデータ及び前記テキストデータに紐づけられ、
前記順表示モードで前記テキストデータが表示されるタイミングに合わせて、前記画像データから読み込まれた前記キャラクタの画像を出力する手順を
含む
請求項7に記載のプログラム。
【請求項10】
前記画像データは、二次元のキャラクタ、及び三次元のキャラクタのうち、少なくともいずれか一つである
請求項9に記載のプログラム。
【請求項11】
前
記選択肢から選択可能な複数の選択項目のうち、いずれかの前記選択項目が前記順表示モードで表示される前記会話で選択済みである場合に、前記シナリオ表示モードでは、選択済みの選択肢から辿る順序で前記会話を一覧表示し、いずれの前記選択項目も未選択である場合には、自動的に選択された前記選択項目から辿る順序で複数の前記会話を一覧表示する手順を
含む
請求項4に記載のプログラム。
【請求項12】
自動的に選択された前記選択項目から辿る順序は、前記選択肢を含む前記会話よりも後である
請求項11に記載のプログラム。
【請求項13】
前記順表示モードで表示される前記会話シーンには、前記順表示モードで表示された前記会話までのログが表示されるログ表示モードに変更する指示を入力するためのログ表示指示部が設けられ、
前記ログ表示指示部から前記ログ表示モードに変更する指示が入力されると、前記表示モードを前記ログ表示モードに変更し、前記ログを表示する手順を
含む
請求項4に記載のプログラム。
【請求項14】
前記シナリオ表示モードで表示される前記会話シーンには、前記シナリオ表示モードを終了して、前記会話シーンをスキップする指示を入力するための第2スキップ指示部が設けられ、
前記第2スキップ指示部から入力された指示に基づいて、前記会話シーンをスキップする手順を
含む
請求項13に記載のプログラム。
【請求項15】
前記順表示モードで会話シーンをスキップする指示が入力されたタイミングで前記会話シーンに表示されていた前記会話は、前記シナリオ表示モードで強調して表示する手順を
含む
請求項4に記載のプログラム。
【請求項16】
前記シナリオ表示モードで表示される前記会話の発話者を抽出し、又はソートして、抽出され、又はソートされた前記発話者ごとに前記会話をまとめて一覧表示する手順を
含む
請求項4に記載のプログラム。
【請求項17】
前記シナリオ表示モードで前記会話の言語設定が変更されると、設定変更前の言語で表示されていた前記会話の表示位置と、設定変更後の言語で表示される前記会話の表示位置とを同じ位置に調整して表示する手順を
含む
請求項4に記載のプログラム。
【請求項18】
入力部を介して入力される指示により、ゲームの進行に合わせて表示部に表示されるテキストデータの表示形態を制御するプログラムであって、
前記ゲームで表示部に表示される会話シーンの表示モードが、前記会話シーンに含まれるオブジェクト及び会話の少なくとも一つが表示される順表示モードである場合に、前記会話シーンをスキップする指示が入力されることにより、前記会話シーンの表示モードを、前記会話シーンのシナリオに規定される順序で
、前記会話に含まれる選択肢の一部を除く全ての前記会話が
シナリオ表示領域に一覧表示されるシナリオ表示モードに変更するステップと、
前記順表示モードから前記シナリオ表示モードに変更されると、前記順表示モードで表示されていた前記会話が表示されるように、一覧表示される複数の前記会話の表示位置を調整して、前記ゲームの進行に合わせた順序で複数の前記会話を一覧表示する複数の前記会話を一覧表示するステップと、
前記シナリオ表示モードで一覧表示される複数の前記会話から一部の前記会話を選択する指示が入力されることにより、前記会話シーンの表示モードを前記順表示モードに変更するステップと、を含む
会話表示方法。
【請求項19】
入力部を介して入力される指示により、ゲームの進行に合わせて表示部に表示されるテキストデータの表示形態を制御する情報処理装置であって、
前記ゲームで表示部に表示される会話シーンの表示モードを変更する表示モード変更部と、
変更された前記表示モードにしたがって前記会話シーンを前記表示部に表示する制御を行う会話制御部と、を備え、
前記表示モード変更部は、前記会話シーンの表示モードが、前記会話シーンに含まれるオブジェクト及び会話の少なくとも一つが表示される順表示モードである場合に、前記会話シーンをスキップする指示が入力されることにより、前記会話シーンの表示モードを、
前記会話シーンのシナリオに規定される順序で
、前記会話に含まれる選択肢の一部を除く全ての前記会話が
シナリオ表示領域に一覧表示されるシナリオ表示モードに変更し、
前記会話制御部は、前記順表示モードから前記シナリオ表示モードに変更されると、前記順表示モードで表示されていた前記会話が表示されるように、一覧表示される複数の前記会話の表示位置を調整して、前記ゲームの進行に合わせた順序で複数の前記会話を一覧表示する複数の前記会話を一覧表示し、
前記表示モード変更部は、前記シナリオ表示モードで一覧表示される複数の前記会話から一部の前記会話を選択する指示が入力されることにより、前記会話シーンの表示モードを前記順表示モードに変更する
情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、会話表示方法、及び情報処理装置に関する。
【背景技術】
【0002】
コンピューターゲーム(以下、「ゲーム」と略称する)のユーザは、会話シーンに表示される、プレイヤキャラクタが発する会話を読むことで、ゲームのストーリーに没入したり、プレイヤキャラクタに愛着を感じたりしていた。このため、会話がどのように表示されるかという、会話の表示形態はゲームに重要な要素であった。以下の説明では、ゲームのプレイヤキャラクタやその他のキャラクタがセリフを発して会話するシーンを「会話シーン」と呼ぶ。会話シーンでは、発話するキャラクタと、そのキャラクタの会話とが一つの画面内に表示されることが多い。会話シーンでは、キャラクタの会話以外にも、ゲームの背景を説明する地の文が表示されることもある。このため、本明細書では、キャラクタの会話だけでなく、ゲームの背景説明である地の文も含めて「会話」と呼ぶ。
【0003】
従来のゲームでは、ユーザが操作しなくても会話が進むオート再生機能、不要な会話シーンをスキップして別の会話を表示させるスキップ機能、会話シーンで再生される会話のあらすじを表示させるあらすじ機能等が搭載されることがあった。これらの機能は、ユーザがプレイヤキャラクタの会話を手軽に読めるように工夫されたものである。ここで、情報処理分野では、例えば、ループ処理を抜けたり、後続の処理を飛ばしたりすることをスキップと呼ぶ。一方、本明細書では、例えば、ある会話シーンで会話が表示されている時に、この会話シーンを終了することをスキップと呼ぶ。スキップにより会話シーンが終了した後は、例えば、別の会話シーンが表示されたり、戦闘シーンが表示されたりする。
【0004】
プレイヤキャラクタの会話が表示されるゲームとして、例えば、特許文献1に開示された技術が知られている。特許文献1には、「キャラクタを動作させる処理を行うキャラクタ処理部と、注文対象のリストであるメニューの情報を、キャラクタに対応づけて記憶する記憶部と、キャラクタが行った質問に対するユーザの回答を受け付け、ユーザの回答結果に基づき決定された注文対象を、キャラクタを用いてユーザに提示するための処理を行う提示処理部」を備えるゲームシステムが開示されている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
ユーザは、ゲーム内のあるシナリオを最初にプレイする時は、会話シーンで表示される会話を全て読むことが多い。ただし、会話を進めるには、ユーザが画面を何度もタップしなくてはならず、手間がかかる。このため、ユーザは、オート設定を利用して、会話を自動的に進めることがあった。
【0007】
しかし、ユーザが過去にプレイしたシナリオを再びプレイする時は、既に会話を知っているので、特定の会話だけを読みたいと考えることがある。このような場合、オート設定では、特定の会話で止めることができない。また、ユーザが、会話シーンにおける会話を最初から進めて特定の会話が表示されるようになるまでは時間がかかっていた。このため、ユーザがより快適にゲームを進行できるようにする必要であった。
【0008】
本発明はこのような状況に鑑みて成されたものであり、会話シーンに含まれる複数の会話を、ユーザが読みやすくなるように表示することを目的とする。
【課題を解決するための手段】
【0009】
本発明に係るプログラムは、入力部を介して入力される指示により、ゲームの進行に合わせて表示部に表示されるテキストデータの表示形態を制御するプログラムであって、ゲームで表示部に表示される会話シーンの表示モードが、会話シーンに含まれるオブジェクト及び会話の少なくとも一つが表示される順表示モードである場合に、会話シーンをスキップする指示が入力されることにより、会話シーンの表示モードを、会話シーンのシナリオに規定される順序で、会話に含まれる選択肢の一部を除く全ての会話がシナリオ表示領域に一覧表示されるシナリオ表示モードに変更する手順と、順表示モードからシナリオ表示モードに変更されると、順表示モードで表示されていた会話が表示されるように、一覧表示される複数の会話の表示位置を調整して、ゲームの進行に合わせた順序で複数の会話を一覧表示する手順と、シナリオ表示モードで一覧表示される複数の会話から一部の会話を選択する指示が入力されることにより、会話シーンの表示モードを順表示モードに変更する手順と、をコンピューターに実行させる。
【発明の効果】
【0010】
本発明によれば、会話シーンの表示モードがシナリオ表示モードである場合に、ゲームの進行に合わせた順序で複数の会話が一覧表示されるため、ユーザが複数の会話を読みやすくなる。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0011】
【
図1】本発明の一実施形態に係るコンテンツ配信システムの概要を示す全体構成図である。
【
図2】本発明の一実施形態に係るコンテンツ配信システムのハードウェア構成例を示すブロック図である。
【
図3】本発明の一実施形態に係るコンテンツ配信システムの機能構成例を示すブロック図である。
【
図4】本発明の一実施形態に係る会話シーンごとのセリフデータの構成例を示す図である。
【
図5】本発明の一実施形態に係る順表示画面の表示例を示す図である。
【
図6】本発明の一実施形態に係るログ表示画面の表示例を示す図である。
【
図7】本発明の一実施形態に係るあらすじ表示画面の表示例を示す図である。
【
図8】本発明の一実施形態に係るシナリオ表示画面の表示例を示す図である。
【
図9】本発明の一実施形態に係る各画面が遷移する様子を示す図である。
【
図10】本発明の一実施形態に係る会話表示制御処理の例を示すフローチャートである。
【
図11】本発明の一実施形態に係る選択肢の選択処理の例を示すフローチャートである。
【
図12】本発明の一実施形態に係る選択肢の自動選択処理の例を示すフローチャートである。
【
図13】本発明の一実施形態に係るログ表示処理の例を示すフローチャートである。
【
図14】本発明の一実施形態に係るシナリオ表示処理の例を示すフローチャートである。
【発明を実施するための形態】
【0012】
以下、本発明を実施するための形態について、添付図面を参照して説明する。本明細書及び図面において、実質的に同一の機能又は構成を有する構成要素については、同一の符号を付することにより重複する説明を省略する。
【0013】
[一実施形態]
<画像描画システムの全体構成例>
始めに、本発明の一実施形態に係るコンテンツ配信システムの構成例について説明する。このコンテンツ配信システムは、コンテンツを配信するコンテンツ配信サーバと情報処理端末と組み合わせて構成される。
【0014】
<コンテンツ配信システムの概要>
図1は、一実施の形態に係るコンテンツ配信システム10の概要を示す全体構成図である。
コンテンツ配信システム10は、コンテンツ配信サーバ1、スマートフォン2A及びPC2Bを備える。スマートフォン2A及びPC2Bは、インターネット等のネットワークNを介してコンテンツ配信サーバ1に接続可能である。以下の説明では、スマートフォン2A及びPC2Bを情報処理端末2と総称する。情報処理端末2として、例えば、ゲーム専用端末が用いられてもよい。
【0015】
コンテンツ配信サーバ1は、コンテンツ配信システム10を構成する第1情報処理装置の一例である。コンテンツ配信サーバ1は、ゲームのプログラムであるコンテンツを管理しており、認証した情報処理端末2からのコンテンツ取得要求に基づいて、情報処理端末2にコンテンツのデータを配信する。本明細書では、テキスト、静止画、動画、音楽、音声、及びそれらを組み合わせた情報をコンテンツと称する。コンテンツ特有の動作は、コンテンツ自体のプログラムによって制御される。このため、以下の説明では、プログラムとコンテンツを同じ意味として用いることがある。
【0016】
本実施の形態では、情報処理端末2が処理するプログラムがゲームプログラムであるとする。そして、本実施形態に係るプログラムは、入力装置28(入力部の一例)を介して入力される指示により、ゲームの進行に合わせて表示装置29(表示部の一例)に表示されるテキストデータの表示形態を制御するものである。
【0017】
情報処理端末2は、後述する
図2に示す不揮発性ストレージ30に記録されたプログラムを読み込んで、所定の処理を行うことで、表示装置29に処理結果としてのゲーム画面を表示する。なお、スマートフォン2Aでは、入力装置28と表示装置29が一体化されたタッチパネルディスプレイ装置が用いられる。また、PC2Bでは、入力装置28と表示装置29が別体とされている。なお、PC2Bとして、入力装置28と表示装置29を外部接続した構成としてもよい。
【0018】
情報処理端末2は、コンテンツ配信システム10を構成する第2情報処理装置の一例である。情報処理端末2は、コンテンツ配信サーバ1からダウンロードしたコンテンツの元となるプログラムを含むデータを記録媒体(後述する
図2に示す不揮発性ストレージ30等)に保存可能である。そして、情報処理端末2は、記録媒体から読み出したプログラムを実行することでコンテンツが表現される。
【0019】
情報処理端末2は、ユーザが行った操作により入力装置28から入力される操作信号に基づいてプログラムを選択し、表示装置29の画面に合わせた映像信号を表示装置29に出力する。表示装置29は、映像信号に基づいて、映像を表示する。入力装置28から入力される操作信号は、例えば、コントローラの操作スティック、操作ボタンごとに対応する信号である。ユーザは、入力装置28を通じてゲームに指示を与えたり、キャラクタを操作したりすることができる。
【0020】
情報処理端末2は、コンテンツ配信サーバ1からダウンロードしたコンテンツを、後述する
図2に示す不揮発性ストレージ30に記録する。また、情報処理端末2は、コンテンツを不揮発性ストレージ30から読み出してプログラムを実行する処理、入力装置28から入力される操作信号に合わせて画面を描画する処理、及び表示装置29により画面を表示する処理等を行う。例えば、情報処理端末2は、ユーザによる入力装置28を通じた操作に伴い、2次元又は3次元のキャラクタを含む様々なシーンが描画された画面を表示装置29に表示する。
【0021】
入力装置28から入力される、キャラクタに対する操作として、例えば、キャラクタが発する会話への応答、キャラクタに対する指示等の、各種のコマンド入力がある。また、入力装置28から行われる操作の一例としては、表示装置29の画面を指又はペンでタッチするタップ操作、選択肢を決定する操作等もある。入力装置28で行われる操作により、表示装置29に表示されるキャラクタ及びシーンが変化する。
【0022】
ゲームには、ゲームの進行に応じて様々なシーンにおけるシナリオが作成される。また、キャラクタが会話することでゲームが進行する会話シナリオは会話シーンごとに作成される。そこで、ある会話シーンに含まれる会話全体を会話シナリオと呼ぶ。なお、本明細書では、会話シナリオに注目するため、以下の説明では、会話シナリオを「シナリオ」と略称する。
【0023】
<コンテンツ配信システムのハードウェア構成例>
次に、一実施形態に係るコンテンツ配信システム10のハードウェア構成例について説明する。
図2は、コンテンツ配信システム10のハードウェア構成例を示すブロック図である。
【0024】
(コンテンツ配信サーバの構成例)
コンテンツ配信サーバ1は、コンピューターとして動作する計算機の一例である。このコンテンツ配信サーバ1は、バス15にそれぞれ接続されたCPU(Central Processing Unit)11、GPU(Graphics Processing Unit)12、ROM(Read Only Memory)13、RAM(Random Access Memory)14、不揮発性ストレージ16及びネットワークインターフェイス17を備える。
【0025】
CPU11は、本実施の形態に係る各機能を実現するソフトウェアのプログラムコードをROM13から読み出してRAM14にロードし、実行する。GPU12は、例えば、3次元オブジェクトを画面に描画するために必要な処理を行う。RAM14には、CPU11又はGPU12の演算処理の途中で発生した変数やパラメーター等が一時的に書き込まれ、これらの変数やパラメーター等がCPU11又はGPU12によって適宜読み出される。
【0026】
不揮発性ストレージ16としては、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、フレキシブルディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、磁気テープ又は不揮発性のメモリ等が用いられる。この不揮発性ストレージ16には、OS、各種のパラメーターの他に、コンテンツ配信サーバ1を機能させるためのプログラムが記録されている。ROM13及び不揮発性ストレージ16は、CPU11が動作するために必要なプログラムやデータ等を記録しており、コンテンツ配信サーバ1によって実行されるプログラムを格納したコンピューター読取可能な非一過性の記録媒体の一例として用いられる。
【0027】
ネットワークインターフェイス17には、例えば、NIC(Network Interface Card)等が用いられ、NICの端子に接続された専用線等を介し、ネットワークNを経由して各種のデータを、情報処理端末2との間で送受信することが可能である。
【0028】
(情報処理端末の構成例)
情報処理端末2は、各種のプログラムを実行可能なコンピューターとして動作する計算機の一例である。この情報処理端末2は、バス25にそれぞれ接続されたCPU21、GPU22、ROM23、RAM24、ネットワークインターフェイス26、入出力インターフェイス27、入力装置28、表示装置29、及び不揮発性ストレージ30を備える。
【0029】
CPU21は、本実施の形態に係る各機能を実現するソフトウェアのプログラムコードをROM23から読み出してRAM24にロードし、実行する。RAM24には、CPU21又はGPU22の演算処理の途中で発生した変数やパラメーター等が一時的に書き込まれ、これらの変数やパラメーター等がCPU21又はGPU22によって適宜読み出される。CPU21は、情報処理端末2のOS(Operating System)の処理、情報処理端末2内の各部で行われるデータの入出力の管理等の処理を行う。
【0030】
GPU22は、例えば、キャラクタ又は背景を構成する、2次元オブジェクト又は3次元オブジェクトを表示装置29の画面に描画するために必要な処理を行う。以下の説明で、描画処理とは、CPU21の指示によりGPU22によって行われる処理を指す。
図2に示すようにGPU22とCPU21とは別体で構成されてもよいし、CPU21の内部にGPU22が組み込まれた構成としてもよい。
【0031】
ネットワークインターフェイス26には、例えば、NIC等が用いられ、NICの端子に接続されたLAN、専用線等を介して各種のデータを取得したり、他の情報処理端末2との間で通信を行ったりすることが可能である。
【0032】
入出力インターフェイス27は、入力装置28から受け取った操作信号を所定の形式のデータに変換し、CPU21に渡す。また、入出力インターフェイス27は、GPU22で描画された画面のデータを映像信号に変換し、表示装置29に出力する。表示装置29は、入出力インターフェイス27から受け取った映像信号に基づいた映像を画面に表示する。なお、入出力インターフェイス27は、音声信号を表示装置29に出力することもできる。表示装置29は、入出力インターフェイス27から受け取った音声信号に基づいて、表示装置29に設けられる不図示のスピーカから音声を放音することができる。
【0033】
不揮発性ストレージ30としては、例えば、HDD、SSD、フレキシブルディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R又は不揮発性のメモリ等が用いられる。この不揮発性ストレージ30には、OS、各種のパラメーターの他に、情報処理端末2を機能させるためのプログラムが記録されている。ROM23及び不揮発性ストレージ30は、CPU21が動作するために必要なプログラムやデータ等を記録しており、情報処理端末2によって実行されるプログラムを格納したコンピューター読取可能な非一過性の記録媒体の一例として用いられる。
【0034】
不揮発性ストレージ30が光ディスク等で構成された外部記録媒体である場合、不図示の光学ドライブが不揮発性ストレージ30を読み込んで、データを取り出す。光学ドライブが取り出したデータは、CPU21又はGPU22による所定の演算処理に用いられる。
【0035】
<コンテンツ配信システムの機能構成例>
次に、コンテンツ配信システム10の機能構成例について、
図3を参照して説明する。
図3は、コンテンツ配信システム10の機能構成例を示すブロック図である。ここで、通信ネットワークNの記載は省略する。
【0036】
(コンテンツ配信サーバの機能構成例)
コンテンツ配信サーバ1は、通信部31、コンテンツ選択部32、及び記憶部33を備える。
【0037】
通信部31は、情報処理端末2との間の通信を制御する。例えば、通信部31は、情報処理端末2から送信されるコンテンツ取得要求等を受信すると、コンテンツ選択部32にコンテンツ取得要求を出力し、コンテンツ選択部32が選択したコンテンツのデータを情報処理端末2に送信する。通信部31の機能は、
図2に示したネットワークインターフェイス17等により実現される。
【0038】
コンテンツ選択部32は、通信部31から入力されるコンテンツ取得要求に基づいて、情報処理端末2で利用されるコンテンツのデータを記憶部33から選択して読み出す。そして、コンテンツ選択部32は、読み出したコンテンツのデータを通信部31に出力する。コンテンツ選択部32の機能は、
図2に示したCPU11、GPU12、ROM13、RAM14等により実現される。
【0039】
記憶部33は、コンテンツのデータを記憶する。記憶部33の機能は、
図2に示した不揮発性ストレージ16等により実現される。
【0040】
(情報処理端末の機能構成例)
情報処理端末2は、通信部41、入力部42、入力受付部43、表示モード変更部44、会話制御部45、描画部46、画像出力部47、表示部48及び記憶部49を備える。
【0041】
通信部41は、ユーザがプレイするゲームのコンテンツが取得要求するデータ等をコンテンツ取得要求としてコンテンツ配信サーバ1に送信する。そして、通信部41は、コンテンツ配信サーバ1から配信されるコンテンツのデータを記憶部49に書き込む。通信部41の機能は、
図2に示したネットワークインターフェイス26により実現される。
【0042】
入力部42は、ユーザが入力した操作に基づいて生成する操作信号を入力受付部43に出力する。ユーザが入力した操作とは、例えば、入力装置28の画面をタップする操作、画面内の特定のアイコンをマウス等でクリックする操作等である。そして、ユーザは、表示部48に表示される会話シーンをスキップする指示を、タップ又はクリックすることで入力することができる。入力部42の機能は、
図2に示した入力装置28により実現される。以下の説明では、入力部42で行われる操作はタップであるとする。クリックによる操作は、タップによる操作を読み替えればよい。
【0043】
入力受付部43は、入力部42から操作信号を受付ける。入力受付部43は、操作信号として、例えば、入力部42から会話シーンをスキップする指示を受付ける。入力受付部43の機能は、
図2に示した入出力インターフェイス27により実現される。
【0044】
表示モード変更部44は、ゲームで表示装置に表示される会話シーンの表示モードを変更する。例えば、会話シーンの表示モードが、会話シーンに含まれるオブジェクト及び会話の少なくとも一つが表示される順表示モードである場合に、会話シーンをスキップする指示が入力されると、表示モード変更部44は、会話シーンの表示モードをシナリオ表示モードに変更する。ここで、シナリオ表示モードとは、会話シーンのシナリオに規定される順序で複数の会話が一覧表示される表示モードである。また、シナリオ表示モードで一覧表示される複数の会話から一部の会話を選択する指示が入力されると、表示モード変更部44は、会話シーンの表示モードを順表示モードに変更する。
【0045】
会話制御部45は、表示モード変更部44により変更された表示モードにしたがって会話シーンを表示部48に表示する制御を行う。例えば、会話制御部45は、順表示モードからシナリオ表示モードに変更されると、順表示モードで表示されていた会話が表示部48に表示されるように、一覧表示される複数の会話の表示位置を調整する。そして、会話制御部45は、ゲームの進行に合わせた順序で複数の会話を一覧表示する。このため、ユーザは、シナリオとして一覧表示された会話の流れを確認しやすくなる。
【0046】
また、会話制御部45は、表示モード変更部44により表示モードがシナリオ表示モードから順表示モードに変更されると、シナリオ表示モードで選択された会話を順表示モードで表示する。このため、ユーザは、シナリオ表示モードで選択された会話をすぐに聴くことができる。
【0047】
描画部46は、入力受付部43が受け付けた操作信号に基づいて、表示部48に表示する画像を描画する。描画される画像には、例えば、会話シーンで表示されるテキストデータの他、会話シーンで表示されるプレイヤキャラクタやその他のキャラクタの2次元画像又は3次元画像が含まれる。描画部46の機能は、
図2に示したGPU22により実現されるが、情報処理端末2がGPU22を有さない構成であれば、CPU21により実現されるようにしてもよい。描画部46により描画される会話シーンの詳細については後述する。
【0048】
画像出力部47は、描画部46により描画された画像を表示部48に出力する。例えば、後述する
図5~
図9に示す各画面の画像が表示部48に出力される。画像出力部47の機能は、
図2に示した入出力インターフェイス27により実現される。
【0049】
表示部48は、画像出力部47により出力された画像を表示する。表示部48の機能は、
図2に示した表示装置29により実現される。
以上説明したように、会話制御部45が表示モードに応じて会話シーンの表示形態を制御し、描画部46が画像を描画し、画像出力部47が画像を出力し、表示部48が画像を表示する処理を行っている。以下の説明では、これらの処理をまとめて、会話制御部45による表示処理として説明する。
【0050】
記憶部49は、通信部41がコンテンツ配信サーバ1から受信したコンテンツのデータを記憶する。記憶部49の機能は、
図2に示した不揮発性ストレージ30により実現される。
【0051】
<セリフデータの構成例>
ここでは、会話シーンを構成する会話、オブジェクト等について説明する。
図4は、会話シーンごとのセリフデータの構成例を示す図である。セリフデータは、コンテンツ配信サーバ1から情報処理端末2に配信されるコンテンツの一部である。セリフデータは、例えば、情報処理端末2の記憶部49に記憶される。
【0052】
セリフデータは、会話シーンごとに構成される。会話シーンテーブルは、シーンID、セリフID、表示オブジェクトデータ、テキストデータ、音声データの各項目を有する。
【0053】
シーンID項目51には、会話シーンを識別するためのシーンIDが、会話シーンごとに一意に割り振られて格納される。
セリフID項目52には、各キャラクタが発するセリフを識別するためのセリフIDが格納される。セリフIDによって識別されるセリフには、地の文等も含まれる。セリフIDには、会話の進行順に昇順の数字が振られている。ただし、会話の進行順が分かるものであれば、セリフIDが英数字の組み合わせ等であってもよく、連番でなくてもよい。
【0054】
表示オブジェクトデータ項目53には、キャラクタを表す表示オブジェクトデータが格納される。
図4では、一つのセリフIDに対応して一つの表示オブジェクトデータが格納されている。このため、あるキャラクタが会話する時には、そのキャラクタの表示オブジェクトが画面に表示される。
【0055】
画面に表示されるオブジェクトには、会話に合わせて表示されるキャラクタの画像データが含まれる。画像データは、会話制御部45が出力可能な、少なくとも二次元のキャラクタ及び三次元のキャラクタのうちのいずれか一つのデータである。キャラクタの画像データは、オブジェクトデータ及びテキストデータに紐づけられてもよい。会話制御部45は、順表示モードでテキストデータが表示されるタイミングに合わせて、画像データから読み込まれたキャラクタの画像とテキストデータが表示装置29に表示されるように制御する。このようにキャラクタの画像が出力されることで、会話に合わせてキャラクタの画像が表示装置29に表示される。
【0056】
背景とキャラクタが同時に表示装置29に表示される場合、背景とキャラクタのそれぞれの表示オブジェクトデータが一つのセリフIDに紐付けられて表示オブジェクトデータ項目53に格納される。このように、一つのセリフIDに対して、複数の表示オブジェクトデータが紐づけられることもある。
【0057】
また、地の文が続き、背景が変わらない場合には、複数のセリフIDに対して背景の表示オブジェクトデータが一つだけ表示オブジェクトデータ項目53に格納されてもよい。また、会話シーンで表示すべきキャラクタや背景が存在しない場合には、表示オブジェクトデータが表示オブジェクトデータ項目53に格納されなくてもよい。この場合、例えば、黒色の背景が画面に表示される。
【0058】
テキストデータ項目54には、セリフIDに紐づけられた会話がテキストデータとして格納される。上述したようにテキストデータには、キャラクタの会話の他、地の文も含まれる。
音声データ項目55には、キャラクタの会話に合わせて収録された音声データが格納される。音声データには、BGM、効果音等も含まれる。複数の会話が表示される間、同じBGMが流れることがある。このため、複数のセリフIDに対して、同じ音声データが紐づけられることもある。
【0059】
以下の説明では、セリフID項目52のセリフIDに紐づけられた、表示オブジェクトデータ項目53、テキストデータ項目54、及び音声データ項目55の各データを「セリフデータ」と呼ぶ。また、図中に「選択肢」と表記したセリフID「005」のセリフデータは、テキストデータ「text005」に選択肢が含まれることを表す。また、図中に「C1」~「C3」が付された各セリフデータは、選択肢の移動先を表す。選択肢に関する処理は、
図12の選択肢の自動選択処理の説明で後述する。
【0060】
<順表示画面の表示例>
次に、会話シーンの表示例について、
図5~
図8を参照して説明する。この会話シーンは、
図1に示した情報処理端末2の表示装置29に表示される。
図5は、順表示画面60の表示例を示す図である。順表示画面60は、順表示モードで表示される会話シーンの一例である。
【0061】
順表示モードでは、ある会話シーンにおける会話とキャラクタが順表示画面60に表示される。順表示モードは、ユーザが順表示画面60をタップすることで、画面内に表示されるキャラクタや会話が、セリフIDの順に表示される表示モードである。本実施の形態では、セリフIDの順とは、セリフIDが大きくなる順とする。
【0062】
順表示画面60は、放音切替ボタン61、ログ表示ボタン62、オブジェクト表示領域63、キャラクタ64、設定切替ボタン65、発話キャラクタ名表示領域66、会話表示領域67、及びスキップボタン68を備える。
【0063】
会話制御部45は、順表示モードで、表示オブジェクトデータと、会話のテキストデータとが紐付けられた会話データ群(
図4に示すセリフデータ)をシナリオに規定される順序で読み出す。そして、会話制御部45は、表示オブジェクトデータに基づいてオブジェクトをオブジェクト表示領域63に表示し、テキストデータに基づいて会話を会話表示領域67に表示する制御を行う。このため、順表示モードで表示される会話シーンでは、オブジェクトが表示されるオブジェクト表示領域63と、会話が表示される会話表示領域67とを有する順表示画面60(表示領域の一例)が表示される。
【0064】
放音切替ボタン61は、ユーザが放音のON又はOFFを切り替える指示を行うためのボタンである。音声は、
図4に示した音声データが読み込まれて放音される。放音切替ボタン61に「ON」が表示されていれば、会話や音楽が不図示のスピーカから放音される。一方、図示しないものの、放音切替ボタン61に「OFF」が表示され、音符マークに斜線が表示されていれば、会話や音楽はスピーカから放音されない。
【0065】
順表示画面60には、ユーザが順表示モードからログ表示モードに変更する指示を入力するためのログ表示ボタン62(ログ表示指示部の一例)が設けられる。ログ表示ボタン62からログ表示モードに変更する指示が入力されると、表示モード変更部44が表示モードをログ表示モードに変更する。そして、会話制御部45は、順表示モードで順表示画面60に表示された会話までのログをログ表示画面70に表示する。ログ表示画面70の構成例は、後述する
図6を参照して説明する。
【0066】
オブジェクト表示領域63は、キャラクタ64、背景等を表示するエリアである。キャラクタ64は、
図4に示した表示オブジェクトデータにより表現される。例えば、キャラクタ64は3次元オブジェクト、背景は2次元オブジェクトのように、3次元オブジェクトと2次元オブジェクトが混在した状態で、オブジェクト表示領域63に表示されてもよい。
【0067】
設定切替ボタン65は、ユーザがマニュアル設定又はオート設定を切り替える指示を行うためのボタンである。設定切替ボタン65が表示されている時は、マニュアル設定の状態である。マニュアル設定では、ユーザがキャラクタ64、発話キャラクタ名表示領域66、又は会話表示領域67のいずれかをタップすることで、次の会話IDに移行し、移行した会話IDに紐づけられたテキストデータにより会話が表示される。
【0068】
ユーザが設定切替ボタン65をタップすると、オート設定に切り替わる。オート設定がONされた状態では、ユーザが順表示画面60のキャラクタ64、発話キャラクタ名表示領域66、又は会話表示領域67のいずれかをタップしなくても、画面内に表示されるキャラクタや会話がセリフIDの順に表示される。また、オート設定がONされた状態では、設定切替ボタン65が非表示となる。ユーザは、設定切替ボタン65が表示されていた箇所をタップすることで、オート設定がOFFされ、マニュアル設定に戻すことができる。
【0069】
発話キャラクタ名表示領域66には、会話しているキャラクタのキャラクタ名が表示される。会話表示領域67には、キャラクタの会話が表示される。
【0070】
スキップボタン68(第1スキップ指示部の一例)は、ユーザが会話シーンをスキップする指示を入力するためのボタンである。スキップボタン68がタップされると、会話制御部45は、順表示モードで表示される会話シーンを順表示画面60に表示する。ここで、ユーザが会話シーンをスキップする指示を入力する操作は、ユーザがスキップボタン68をタップすることで行われる。
【0071】
すなわち、ユーザは、スキップボタン68をタップすることで、会話シーンのあらすじを確認するためのあらすじ表示画面80(後述する
図7を参照)を表示する指示を行うことができる。なお、会話シーンのあらすじが存在しない場合には、あらすじ表示画面80の表示を経ずに、会話シーンをスキップしてもよい。そして、表示モード変更部44は、スキップボタン68から会話シーンをスキップする指示が入力されると、表示モードをシナリオ表示モードに変更する。
【0072】
<ログ表示画面の表示例>
図6は、ログ表示画面70の表示例を示す図である。ログ表示画面70は、ログ表示モードで表示される会話シーンの一例である。
【0073】
ログ表示画面70は、放音切替ボタン71、クローズボタン72、ログ表示領域73を備える。
放音切替ボタン71の機能は、
図5に示した放音切替ボタン61と同じなので、詳細な説明を省略する。放音切替ボタン71は、順表示画面60の放音切替ボタン61と同じ位置に設けられる。
クローズボタン72は、ユーザがログ表示画面70を閉じて、順表示画面60に切り替える指示を行うためのボタンである。クローズボタン72は、順表示画面60のログ表示ボタン62と同じ位置に設けられる。
【0074】
ログ表示領域73には、ユーザが順表示画面60に表示させた会話までの、全ての会話がログとして、会話表示領域74に一覧表示される。会話表示領域74には、
図4に示したセリフIDごとに読み出されたテキストデータにより会話が表示される。ここでは、
図4に示したテキストデータのうち、
図5に示した順表示画面60に表示されていたテキストデータ「text004」までの、text001~text004のテキストデータに基づく会話が表示される。また、会話表示領域74の左上に2つの三角形が表示される位置には、会話の発話者であるキャラクタの名前が表示される。表示領域74の左上に2つの三角形が表示されていない会話表示領域74は、地の文が表示されていることを表す。
【0075】
ユーザが
図5に示すログ表示ボタン62をタップした時に順表示画面60に表示されていた会話が、
図7の会話表示領域74に表示されているテキストデータ「text004」である。このテキストデータ「text004」が表示される会話表示領域74は、ログ表示領域73の最上部に表示される。ユーザが会話表示領域74をタッチして上下に移動させることで、ログ表示領域73に表示される会話表示領域74のテキストデータをスクロールすることができる。ただし、ログ表示画面70では、
図5に示した順表示画面60に表示されていたテキストデータ「text004」より後の会話のテキストデータは表示されない。
【0076】
なお、順表示画面60に表示されていたテキストデータ「text004」がログ表示領域73に表示される会話表示領域74の位置は、最下部であってもよい。また、会話制御部45は、順表示モードで会話シーンをスキップする指示が入力されたタイミングで会話シーンに表示されていた会話を、ログ表示モードで強調して表示してもよい。
【0077】
また、ログ表示画面70に表示されるテキストデータに対応するキャラクタの音声データを有する会話表示領域74の右側には、スピーカボタン75が表示される。スピーカボタン75は、キャラクタの音声データの有無をトリガとした表示制御が行われる。ユーザがスピーカボタン75をタップすると、キャラクタの会話の音声が放音される。
【0078】
<あらすじ表示画面の表示例>
図7は、あらすじ表示画面80の表示例を示す図である。あらすじ表示画面80は、ログ表示モードで表示される会話シーンの一例である。
【0079】
会話制御部45は、
図5に示した順表示画面60のスキップボタン68がタップされて、会話シーンをスキップする指示が入力されると、あらすじ表示画面80に、シナリオのあらすじと、表示モードをシナリオ表示モードに変更する指示を入力するためのシナリオ表示ボタン82(表示モード変更指示部の一例)とを表示する。すなわち、あらすじ表示画面80は、あらすじ表示領域81、シナリオ表示ボタン82、スキップボタン83及びキャンセルボタン84を備える。
【0080】
あらすじ表示領域81には、会話シーンのタイトル、あらすじが表示される。
シナリオ表示ボタン82は、ユーザが、後述する
図8に示すシナリオ表示画面90を表示する指示を行うためのボタンである。表示モード変更部44は、シナリオ表示ボタン82からシナリオ表示モードに変更する指示が入力されると、表示モードをシナリオ表示モードに変更する。
【0081】
スキップボタン83は、ユーザが会話シーンをスキップする指示を行うためのボタンである。会話制御部45は、
図5に示すスキップボタン68から会話シーンをスキップする指示が入力されると、会話シーンのスキップを指示するためのスキップボタン83(第2スキップ指示部の一例)を表示する。そして、会話制御部45は、スキップボタン83から会話シーンのスキップの指示が入力されると、会話シーンをスキップする。
【0082】
キャンセルボタン84は、ユーザがシナリオ表示画面90への遷移、又は会話シーンのスキップのいずれをもキャンセルする指示を行うためのボタンである。キャンセルボタン84が選択されると、
図5に示した順表示画面60に戻る。
【0083】
<シナリオ表示画面の表示例>
図8は、シナリオ表示画面90の表示例を示す図である。
【0084】
会話制御部45は、シナリオ表示モードでテキストデータから読み出された会話を、会話データ群(
図4に示すセリフデータ)の順序にしたがってシナリオ表示画面90に一覧表示する。シナリオ表示画面90は、放音切替ボタン91、スキップボタン92、シナリオ表示領域93を備える。
【0085】
放音切替ボタン91の機能は、
図6に示したログ表示画面70の放音切替ボタン71と同じなので、詳細な説明を省略する。放音切替ボタン91は、順表示画面60の放音切替ボタン61と同じ位置に設けられる。
【0086】
シナリオ表示モードで表示される会話シーンには、シナリオ表示モードを終了して、ユーザが会話シーンをスキップする指示を入力するためのスキップボタン92(第2スキップ指示部の一例)が設けられる。そして、会話制御部45は、スキップボタン92から入力された指示に基づいて、会話シーンをスキップする。なお、スキップボタン92の機能は、
図7に示したスキップボタン83の機能と同じであり、スキップボタン92がタップされると、あらすじ表示画面80を表示することなく、会話シーンがスキップされる。また、スキップボタン92は、順表示画面60のログ表示ボタン62と同じ位置に設けられる。
【0087】
シナリオ表示領域93には、ユーザが順表示画面60に表示させた会話に加えて、会話シーンにおける全ての会話(選択肢の一部を除く)がシナリオとして、シナリオ表示領域93に一覧表示される。
【0088】
会話表示領域94には、
図4に示したセリフIDごとに読み出されたテキストデータの会話が表示される。シナリオ表示モードでは、
図4に示したテキストデータのうち、
図5に示した順表示画面60に表示されていたテキストデータ「text004」以降のtext005,text006を含むテキストデータの会話が、それぞれ会話表示領域94に表示される。会話制御部45は、順表示モードで会話シーンをスキップする指示が入力されたタイミングで会話シーン(順表示画面60)に表示されていた会話を、シナリオ表示モードで表示されるシナリオ表示領域93に初期表示されるように表示位置を調整して表示する。
【0089】
このため、シナリオ表示画面90においても、直前まで順表示画面60に表示されていたテキストデータ「text004」がシナリオ表示領域93の最上部に表示される。ユーザは、会話表示領域94をタップして上下に移動させることで、シナリオ表示領域93に表示される会話のテキストデータをスクロールして表示することができる。ただし、シナリオ表示画面90では、ログ表示画面70とは異なり、
図5に示した順表示画面60に表示されていたテキストデータ「text004」より後の会話のテキストデータ「text005」、「text006」も表示することができる。
【0090】
ここで、会話表示領域94に表示されるテキストデータ「text005」の会話は、複数の選択肢から選択された内容を表している。例えば、順表示画面60の会話に「A」又は「B」のいずれかの選択肢が表示され、ユーザが選択肢「A」を選択した場合には、左上に「選択肢」と表示された会話表示領域94に、ユーザが選択した選択肢「A」のテキストデータが表示される。なお、オート設定がONされていれば、自動選択された選択肢が会話表示領域94に表示される。ここで、順表示モードにおける選択肢の表示処理と、シナリオ表示モードにおける選択肢の表示処理の概要を説明する。
【0091】
(順表示モード)
順表示モードでは、ユーザが会話シーンで選択肢を選択すると、ユーザが選択した選択肢の内容が表示される。
順表示モードでオート設定がONされている場合、後述する選択肢の自動選択処理で自動的に選択された選択肢の内容が表示される。
【0092】
(シナリオ表示モード)
順表示モードにおいてユーザが選択肢を選択した場合であって、例えば、ユーザが選択した選択肢より後の会話でスキップ指示が入力された場合には、順表示モードで選択済みの選択肢に基づく内容が表示される。
順表示モードにおいてユーザが選択肢を選択していない場合であって、例えば、その選択肢より前の会話でスキップ指示が入力された場合には、順表示モードでオート設定がONされている場合と同様に、後述する選択肢の自動選択処理で自動的に選択された選択肢の内容が表示される。
【0093】
なお、順表示画面60に表示されていたテキストデータ「text004」がシナリオ表示領域93に表示される位置は、最下部であってもよい。また、会話制御部45は、順表示モードで会話シーンをスキップする指示が入力されたタイミングで会話シーンに表示されていた会話は、シナリオ表示モードで強調して表示してもよい。例えば、順表示画面60に表示されていたテキストデータ「text004」の会話が、シナリオ表示領域93では強調して表示されてもよい。この場合、テキストデータ「text004」の会話に着色されたり、点滅表示されたりすることで、ユーザは、順表示画面60に表示されていた会話が、シナリオ表示領域93のどの位置にあるかを探しやすくなる。
【0094】
また、キャラクタの会話が表示される会話表示領域94の右側には、スピーカボタン95が表示される。ユーザがスピーカボタン95をタップすると、キャラクタの会話の音声が放音される。
【0095】
<各画面の遷移例>
ここで、各画面の遷移例について、
図9を参照して説明する。
図9は、各画面が遷移する様子を示す図である。
【0096】
図9に示すように、会話シーンの開始時点では、
図5に示した順表示画面60が表示される。順表示画面60には、
図5に示したログ表示ボタン62と、スキップボタン68が表示される。ユーザがログ表示ボタン62をタップすると、
図6に示したログ表示画面70が表示される。
【0097】
ログ表示画面70が表示されている時に、ユーザがログ表示画面70のクローズボタン72のタップ、又は会話表示領域74をタップして会話を選択すると、順表示画面60に戻って、選択された会話が表示される。
【0098】
順表示画面60が表示されている時に、ユーザがスキップボタン68をタップすると、
図7に示したあらすじ表示画面80が表示される。あらすじ表示画面80が表示されている時に、ユーザがスキップボタン83をタップすると、会話シーンがスキップされる。また、あらすじ表示画面80が表示されている時に、ユーザがキャンセルボタン84をタップすると、順表示画面60に戻る。また、あらすじ表示画面80が表示されている時に、ユーザがシナリオ表示ボタン82をタップすると、
図8に示したシナリオ表示画面90が表示される。
【0099】
シナリオ表示画面90が表示されている時に、ユーザがスキップボタン92をタップすると、会話シーンがスキップされる。また、シナリオ表示画面90が表示されている時に、ユーザが会話表示領域94をタップして会話を選択すると、順表示画面60に戻って、タップされた会話が表示される。
【0100】
会話シーンが終了するのは、会話シーンがスキップされる時に限らない。例えば、
図4に示したシーンIDが「AA1」である会話シーンは、順表示画面60で、最後のセリフID(例えば、「m」)に紐づけられたテキストデータ「textm」の会話が表示された後、終了する。会話シーンが終了した後、別の会話シーン(例えば、シーンIDが「AA2」)が開始されたり、不図示の戦闘シーンが始まったりする。
【0101】
<会話シーンの表示処理の例>
次に、会話シーンの表示処理の例について、
図10~
図14を参照して説明する。
図10は、会話表示制御処理の例を示すフローチャートである。
図10に示す会話表示制御処理は、本実施形態に係るプログラムで行われる会話表示方法を表したものである。
【0102】
始めに、会話制御部45は、会話表示制御処理のループを始める。ここでは、セリフIDをカウントアップする処理が行われる。例えば、
図4に示したシーンIDが「AA1」であれば、セリフIDが「001」にカウントアップされる。そして、表示モード変更部44は、順表示モードを選択する(S1)。順表示モードは、順表示画面60を表示する表示モードである。
【0103】
次に、会話制御部45は、会話シーンにおけるセリフデータを選択する(S2)。例えば、会話制御部45は、シーンIDが「AA1」であって、セリフIDが「001」であるセリフデータを選択する。
【0104】
次に、会話制御部45は、会話シーンに選択肢を含む会話があるか否かを判定する(S3)。ある会話シーンに複数の会話が含まれていても、会話シーンに選択肢を含む会話がなければ(S3のNO)、ステップS5に進む。一方、会話シーンに選択肢を含む会話があれば(S3のYES)、
図11に示す選択肢の選択処理に進む(S4)。
【0105】
ここで、ステップS4における選択肢の選択処理について、
図11を参照して説明する。
図11は、選択肢の選択処理の例を示すフローチャートである。
【0106】
始めに、会話制御部45は、オート設定がONされているか否かを判定する(S21)。順表示画面60(
図5を参照)で設定切替ボタン65がタップされると、オート設定がONされる。設定切替ボタン65がタップされていなければ、オート設定がONではない(S21のNO)であるため、ステップS23に進む。
【0107】
オート設定がONされていれば(S21のYES)、会話制御部45は、ユーザによる選択肢を選択する指示入力がないまま所定期間(例えば、3秒間)が経過したか否かを判定する(S22)。選択肢を選択する指示入力がないまま所定期間が経過していない場合(S22のNO)、すなわち、所定期間内に、ユーザが選択肢を選択する指示入力を行った場合には、ステップS23に進む。そして、ユーザの指示入力により選択肢が選択されて(S23)、
図10のステップS5に進む。
【0108】
一方、選択肢を選択する指示入力がないまま所定期間が経過した場合には(S22のYES)、会話制御部45は、
図12に示す自動選択処理を行い(S24)、
図10のステップS5に進む。
【0109】
ここで、ステップS24における選択肢の自動選択処理について、
図12を参照して説明する。
図12は、選択肢の自動選択処理の例を示すフローチャートである。
選択肢の自動選択処理とは、会話制御部45が、選択肢が表示される会話の会話IDよりも大きい会話IDに移動する選択肢を自動的に選択する処理である。
【0110】
始めに、会話制御部45は、会話シーンに未選択の選択肢があるか否かを判定する(S31)。会話シーンに未選択の選択肢がなければ(S31のNO)、
図10のステップS5に進む。会話に含まれる選択肢から選択可能な複数の選択項目のうち、いずれかの選択項目が順表示モードで表示される会話で選択済みであれば、シナリオ表示モードでは、会話制御部45が、選択済みの選択肢から辿る順序で会話を一覧表示する。このため、ユーザは、自分で選択した選択肢の内容を確認しながら会話シナリオの流れを追いやすくなる。
【0111】
一方、会話シーンに未選択の選択肢があれば(S31のYES)、選択肢の移動先のセリフIDが、未選択の選択肢を含む会話のセリフIDより大きい選択肢を選択して(S32)、
図10のステップS5に進む。ステップS32では、会話制御部45が、会話IDの大きさに基づいて選択肢を選択する。例えば、会話制御部45は、選択肢の会話IDより大きい会話IDに移動する選択肢を選ぶ。このため、選択肢の会話IDより小さい会話IDが選択されて、会話がループすることを避けられる。また、会話制御部45は、自動的に選択された選択項目から辿る順序で複数の会話を一覧表示するので、ユーザは自分で選択肢を選択しなかったとしても、会話シナリオの流れを追いやすくなる。
【0112】
なお、ユーザが、前回、自動選択された選択肢と同じ選択肢の会話をもう一度辿る操作を行った場合、会話制御部45は、前回、自動選択された選択肢の下に表示されている選択肢を選択する。前回、自動選択された選択肢の下に表示される選択肢とは、例えば、前回、自動選択された選択肢のIDを「+1」だけ加算した選択肢である。ある会話シーンに複数の選択肢が並んで表示される場合に、前回、自動選択された選択肢が一番上に表示されているのであれば、前回、自動選択された選択肢の下に表示されている選択肢が、会話制御部45により今回選択される選択肢となる。ユーザが手動で選択肢を選択する操作を繰り返すパターンも想定されるので、会話制御部45により自動で選択された選択肢のIDのみがRAM24等の記録媒体に記録される。
【0113】
また、ユーザが会話シナリオを戻る場合がある。会話シナリオを戻るとは、例えば、ログ表示モード又はシナリオ表示モードで表示される会話のうち、順表示モードで表示されていた会話よりも会話IDが小さい会話をユーザが選択した場合に、選択された会話から順表示モードで表示することである。この場合、ログ表示モード又はシナリオ表示モードで表示されていた時に記録媒体に記録されていた、選択済みの選択肢のIDは初期化される。このため、会話シナリオが戻り、順表示モードで会話が表示された後に再び行われる選択肢の自動選択処理では、1番目の選択肢が選び直される。
【0114】
<会話の自動選択処理の変形例>
図12で説明した会話の自動選択処理には、以下のような変形例が考えられる。
上述したように、会話制御部45は、自動的に選択された選択項目から辿る順序を、選択肢を含む会話のセリフIDよりも後とする。例えば、セリフIDが「005」の会話に選択肢が2つ含まれる場合、ユーザ又はプログラムが選択肢を選択して移動するセリフIDには、以下の2つのパターンが想定される。ここで、
図4を適宜参照して、2つのパターンの選択肢とセリフIDについて説明する。
【0115】
第1のパターンは、選択肢の移動先のセリフIDが、移動元のセリフIDより大きい場合である。例えば、選択肢C1の移動先のセリフIDが「010」であり、選択肢C2の移動先のセリフIDが「003」であるとする。
この場合、会話制御部45が自動選択する選択肢は、最初の選択肢C1としてよい。そして、選択肢C1のセリフIDが「010」なので、以降の順表示画面60では、セリフIDが「011」、「012」、…の順に会話が進行する。このため、前回、自動選択された選択肢が無い場合であっても、会話制御部45は、最初の選択肢を選択するだけで、適切な移動先の会話を表示することができる。
【0116】
第2のパターンは、選択肢の移動先のセリフIDが、移動元のセリフIDより小さい場合である。例えば、選択肢C2の移動先のセリフIDが「003」であり、選択肢C3の移動先のセリフIDが「020」であるとする。
この場合、会話制御部45が自動選択する選択肢を最初の選択肢C2にすると、移動先のセリフID「003」が移動元のセリフID「005」より小さくなり、セリフID「003」とセリフID「005」でループする。そこで、会話制御部45はループを避けるため、次の選択肢C3を自動選択する。選択肢C3のセリフIDは、「020」なので、以降の順表示画面60では、セリフIDが「021」、「022」、…の順に会話が進行する。このため、前回、自動選択された選択肢が無い場合であっても、会話制御部45は、移動元のセリフIDより大きいセリフIDである選択肢を選択して表示することができる。
【0117】
会話に表示される選択肢を、上から順に1番目、2番目の選択肢とした場合、会話制御部45は、上からN番目の選択肢を選択する。ここで、N番目とは、初期値が「1」であり、パターン1の場合は1番目の選択肢C1が選択されるが、パターン2の場合は、N+1番目になる2番目の選択肢C3が選択される。なお、一つの会話に3つ以上の選択肢C1、C2、C3が含まれる場合、自動選択される選択肢は、選択肢C1、C3のいずれでもよい。
【0118】
再び
図10に戻って説明を続ける。
ステップS3で選択肢を含まないと判定された場合(S3のNO)、又はステップS4で選択肢が選択された後、会話制御部45は、順表示画面60に会話を表示する(S5)。次に、会話制御部45は、ログ表示ボタン62がタップされたか否かを判定する(S6)。ログ表示ボタン62がタップされた場合(S6のYES)、
図13に示すログ表示処理を行う(S7)。
【0119】
ここで、ステップS7におけるログ表示処理について、
図13を参照して説明する。
図13は、ログ表示処理の例を示すフローチャートである。
【0120】
始めに、表示モード変更部44は、表示モードを順表示モードからログ表示モードに変更する(S41)。次に、会話制御部45は、順表示モードで順表示画面60に表示された会話までのログをログ表示画面70に表示する(S42)。
【0121】
次に、会話制御部45は、ログ表示画面70のクローズボタン72がタップされたか否か判定する(S43)。クローズボタン72がタップされた場合(S43のYES)、会話制御部45は、ログ表示モードに変更する直前の会話のセリフデータを選択し(S44)、
図10のステップS16に進む。
【0122】
なお、ステップS43に至るまでに、ユーザによりログがスクロールされたり、スピーカボタン95がタップされて音声の放音が行われたりすることがあるが、
図13ではこれらの操作の記載は省略する。
【0123】
ステップS43にて、クローズボタン72がタップされていない場合(S43のNO)、会話制御部45は、ログから選択された会話のセリフデータを選択し(S45)、
図10のステップS16に進む。
【0124】
再び
図10に戻って説明を続ける。
ステップS6でログ表示ボタン62がタップされていなければ(S6のNO)、会話制御部45は、会話シーンをスキップできるか否かを判定する(S8)。会話シーンをスキップできない場合(S8のNO)、会話制御部45は、ループSTARTに戻って、セリフIDをカウントアップし、次の会話を表示する処理を続ける。次の会話は、例えば、順表示画面60のキャラクタ64又は会話表示領域67がタップされることで表示される(S18)。
【0125】
会話シーンをスキップできる場合(S8のYES)、会話制御部45は、順表示画面60の第1スキップボタン(スキップボタン68)がタップされたか否かを判定する(S9)。ここで、順表示画面60のスキップボタン68を、
図8に示したシナリオ表示画面90のスキップボタン92と区別するため、
図10では「第1スキップボタン」と表記する。スキップボタン68がタップされていなければ(S9のNO)、ステップS18に進む。
【0126】
一方、スキップボタン68がタップされていれば(S9のYES)、会話制御部45は、会話シーンにあらすじがあるか否かを判定する(S10)。会話シーンにあらすじがなければ(S10のNO)、会話制御部45は、現在の会話シーンをスキップして(S19)、本処理を終了する。すなわち、現在の会話シーンをスキップすることで、現在の会話シーンが終了する。その後は、次の会話シーンの表示制御処理が行われたり、別のシーン(例えば、戦闘シーン)が表示されたりする。
【0127】
会話シーンにあらすじがあれば(S10のYES)、接続子Aにより接続される処理に進む。そして、会話制御部45は、あらすじ表示画面80に会話シーンのあらすじを表示する(S11)。
【0128】
次に、会話制御部45は、あらすじ表示画面80のシナリオ表示ボタン82がタップされたか否かを判定する(S12)。シナリオ表示ボタン82がタップされていなければ(S12のNO)、ステップS14に進む。一方、シナリオ表示ボタン82がタップされていれば(S12のYES)、
図14に示すシナリオ表示処理を行う(S13)。
【0129】
ここで、ステップS13におけるシナリオ表示処理について、
図14を参照して説明する。
図14は、シナリオ表示処理の例を示すフローチャートである。
【0130】
始めに、表示モード変更部44は、表示モードを順表示モードからシナリオ表示モードに変更する(S51)。次に、会話制御部45は、未選択の選択肢で選択可能な全てのセリフIDを取得する(S52)。
【0131】
次に、会話制御部45は、
図12を参照して説明した、選択肢の自動選択処理を行う(S53)。そして、会話制御部45は、選択された選択肢を含む会話シーンにおける全ての会話を含むシナリオを表示し(S54)、
図10のステップS14に進む。
【0132】
再び
図10に戻って説明を続ける。
ステップS12のNO判定、又はステップS13の処理の後、会話制御部45は、あらすじ表示画面80の第2スキップボタン(スキップボタン83)がタップされたか否かを判定する(S14)。スキップボタン83がタップされていれば(S14のYES)、会話制御部45は、現在の会話シーンをスキップして(S19)、本処理を終了する。
【0133】
一方、スキップボタン83がタップされていなければ(S14のNO)、会話制御部45は、ユーザによりシナリオから選択された会話のセリフデータを選択する(S15)。なお、ステップS15に至るまでに、ユーザによりシナリオがスクロールされたり、スピーカボタン95がタップされて音声の放音が行われたりすることがあるが、
図10ではこれらの操作の記載は省略している。また、特殊な演出を含む会話であれば、例外的に画面がタップされても、会話の移動を弾く処理が行われる。例えば、曲と組み合わせた演出が含まれている会話シーンでは、曲と演出がずれることを避けるため、ユーザが画面をタップしても会話を移動させない処理が行われる。
【0134】
ステップS15の後、表示モード変更部44は、表示モードをシナリオ表示モードから順表示モードに変更する(S16)。順表示モードに変更された時、会話制御部45は、ユーザがシナリオ表示モードで選択した会話の会話シーンで表示または再生されているべきである画像、背景、エフェクト、BGMなどを、その選択した会話までに辿ってきたであろう会話シーンの情報から算出し、適用する。このため、シナリオ表示モードから順表示モードに変更されても、表示される会話、画像等に違和感が生じにくくなる。
【0135】
次に、会話制御部45は、ユーザにより選択された会話を順表示画面60に再表示する(S17)。次に、会話制御部45は、画面内がタップされたことを検知すると(S18)、再び、ループSTARTに戻り、セリフIDをカウントアップして、ステップS1以降の処理を続ける。そして、会話制御部45は、会話シーンで表示可能な全ての会話のセリフIDがカウントアップされるまで会話表示制御処理を続ける。
【0136】
以上説明した一実施の形態に係るコンテンツ配信システム10では、順表示モードで順表示画面60に表示される会話の会話シーンをスキップする操作(スキップボタン68のタップ)により、一旦、あらすじ表示画面80が表示される。その後、シナリオ表示ボタン82をタップする操作により、シナリオ表示画面90が表示される。シナリオ表示画面90では、シナリオとして、会話シーンにおける会話がほぼ全て表示される。このため、ユーザは、会話シーンにおける会話の流れを一括して確認することが容易となる。また、ユーザは、順表示画面60に表示される会話より後の会話をシナリオ表示画面90で確認することができる。
【0137】
また、ユーザは、シナリオ表示画面90に表示される会話がどのような場面で行われたのかを確認する際には、該当の会話が表示される会話表示領域94をタップすることで、その会話が行われる順表示画面60に戻る。このため、ユーザは、会話が行われている場面(キャラクタの動き、背景画面等)を容易に確認することができる。
【0138】
また、シナリオ表示画面90に表示される会話にスピーカボタン95が付加されていれば、ユーザがスピーカボタン95をタップすることで、その会話をキャラクタが発話する音声が放音される。このため、ユーザは、その会話の雰囲気を確かめやすくなる。
【0139】
また、会話に選択肢がある場合、ユーザが選択肢を選択済みであれば、選択済みの選択肢がシナリオ表示画面90に表示される。一方、ユーザが選択肢を未選択であれば、自動選択された選択肢がシナリオ表示画面90に表示される。このため、シナリオ表示画面90に一覧表示される会話の流れが不自然になりにくくなる。
【0140】
また、
図8に示すシナリオ表示画面90のスキップボタン92の表示位置は、
図5に示す順表示画面60のログ表示ボタン62の表示位置と同じである。このため、シナリオ表示画面90内に余計なボタンを配置する必要がなく、順表示画面60とシナリオ表示画面90の上側の画面構成を単純化することができる。また、表示領域が小さい、スマートフォン等の携帯端末であっても、各種のボタンを整理して配置することができる。
【0141】
また、順表示画面60で表示されていた会話がシナリオ表示画面90におけるシナリオ表示領域93の最上部に表示される。このため、ユーザは、順表示画面60からシナリオ表示画面90に画面が切り替わった後でも、順表示画面60で表示されていた会話を探しやすい。なお、順表示画面60で表示されていた会話は、シナリオ表示領域93の最下部に表示されてもよい。このように、シナリオ表示画面90では、表示される会話のスクロール位置が細かく制御されることで、ユーザが会話を認識しやすくなる。
【0142】
[変形例]
なお、会話制御部45は、シナリオ表示モードで表示される会話の発話者(例えば、キャラクタ)を抽出して、抽出した発話者ごとに会話をまとめて一覧表示する制御を行ってもよい。あるいは、会話制御部45は、シナリオ表示モードで表示される会話の発話者をソートして、ソートした発話者ごとに会話をまとめて一覧表示する制御を行ってもよい。このように特定の発話者による発話が一覧表示されることで、ユーザは、好みに合わせて、特定の発話者による会話を確認しやすくなる。
【0143】
また、順表示画面60から、あらすじ表示画面80が表示されることなく、シナリオ表示画面90が表示されるようにしてもよい。この場合、順表示画面60に、シナリオ表示画面90に進むためのシナリオ表示ボタンを設けておくとよい。そして、スキップボタン68は、あらすじ表示画面80の表示処理を経ずに会話シーンをスキップする機能を有するように構成すればよい。
【0144】
また、会話は、予め設定された言語で表示される。このため、シナリオ表示モードで会話の言語設定が変更されると、会話制御部45は、設定変更前の言語で表示されていた会話の表示位置と、設定変更後の言語で表示される会話の表示位置とを同じ位置に調整して表示する制御を行ってもよい。このように会話の表示位置が表示される制御が行われることで、ユーザは、設定変更前の言語の会話と、設定変更後の言語の会話とを見比べることが容易となる。
【0145】
なお、本発明は上述した実施形態に限られるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りその他種々の応用例、変形例を取り得ることは勿論である。
例えば、上述した実施形態は本発明を分かりやすく説明するためにシステム及び装置の構成を詳細かつ具体的に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されない。また、本実施形態の構成の一部について、他の構成の追加、削除、置換をすることも可能である。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【0146】
1…コンテンツ配信サーバ、2…情報処理端末、10…コンテンツ配信システム、42…入力部、43…入力受付部、44…表示モード変更部、45…会話制御部、46…描画部、47…画像出力部、48…表示部、49…記憶部、60…順表示画面、70…ログ表示画面、80…あらすじ表示画面、90…シナリオ表示画面
【要約】
【課題】ユーザが、ゲームの会話シーンで行われる会話を素早く知ることが可能なプログラムを提供する。
【解決手段】ゲームで表示部に表示される会話シーンの表示モードが、会話シーンに含まれるオブジェクト及び会話の少なくとも一つが表示される順表示モードである場合に、会話シーンをスキップする指示が入力されることにより、会話シーンの表示モードを、会話シーンのシナリオに規定される順序で複数の会話が一覧表示されるシナリオ表示モードに変更し、順表示モードからシナリオ表示モードに変更されると、順表示モードで表示されていた会話が表示されるように、一覧表示される複数の会話の表示位置を調整して、ゲームの進行に合わせた順序で複数の会話を一覧表示し、シナリオ表示モードで一覧表示される複数の会話から一部の会話を選択する指示が入力されることにより、会話シーンの表示モードを順表示モードに変更する。
【選択図】
図3