〔実施形態1〕
本開示に係るゲームシステムは、複数のユーザにゲームを提供するためのシステムである。以下、ゲームシステムについて図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
<ゲームシステム1のハードウェア構成>
図1は、ゲームシステム1のハードウェア構成を示す図である。ゲームシステム1は図示の通り、複数のユーザ端末100と、サーバ200とを含む。各ユーザ端末100は、サーバ200とネットワーク2を介して接続する。ネットワーク2は、インターネットおよび図示しない無線基地局によって構築される各種移動通信システム等で構成される。この移動通信システムとしては、例えば、所謂3G、4G移動通信システム、LTE(Long Term Evolution)、および所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(例えばWi-Fi(登録商標))等が挙げられる。
サーバ200(コンピュータ、情報処理装置)は、ワークステーションまたはパーソナルコンピュータ等の汎用コンピュータであってよい。サーバ200は、プロセッサ20と、メモリ21と、ストレージ22と、通信IF23と、入出力IF24とを備える。サーバ200が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
ユーザ端末100(コンピュータ、情報処理装置)は、スマートフォン、フィーチャーフォン、PDA(Personal Digital Assistant)、またはタブレット型コンピュータ等の携帯端末であってよい。ユーザ端末100は、ゲームプレイに適したゲーム装置であってもよい。ユーザ端末100は図示の通り、プロセッサ10と、メモリ11と、ストレージ12と、通信インターフェース(IF)13と、入出力IF14と、タッチスクリーン15(表示部)と、カメラ17と、測距センサ18とを備える。ユーザ端末100が備えるこれらの構成は、通信バスによって互いに電気的に接続される。なお、ユーザ端末100は、タッチスクリーン15に代えて、または、加えて、ユーザ端末100本体とは別に構成されたディスプレイ(表示部)を接続可能な入出力IF14を備えていてもよい。
また、図1に示すように、ユーザ端末100は、1つ以上のコントローラ1020と通信可能に構成されることとしてもよい。コントローラ1020は、例えば、Bluetooth(登録商標)等の通信規格に従って、ユーザ端末100と通信を確立する。コントローラ1020は、1つ以上のボタン等を有していてもよく、該ボタン等に対するユーザの入力操作に基づく出力値をユーザ端末100へ送信する。また、コントローラ1020は、加速度センサ、および、角速度センサ等の各種センサを有していてもよく、該各種センサの出力値をユーザ端末100へ送信する。
なお、ユーザ端末100がカメラ17および測距センサ18を備えることに代えて、または、加えて、コントローラ1020がカメラ17および測距センサ18を有していてもよい。
ユーザ端末100は、例えばゲーム開始時に、コントローラ1020を使用するユーザに、該ユーザの名前またはログインID等のユーザ識別情報を、該コントローラ1020を介して入力させることが望ましい。これにより、ユーザ端末100は、コントローラ1020とユーザとを紐付けることが可能となり、受信した出力値の送信元(コントローラ1020)に基づいて、該出力値がどのユーザのものであるかを特定することができる。
ユーザ端末100が複数のコントローラ1020と通信する場合、各コントローラ1020を各ユーザが把持することで、ネットワーク2を介してサーバ200などの他の装置と通信せずに、該1台のユーザ端末100でマルチプレイを実現することができる。また、各ユーザ端末100が無線LAN(Local Area Network)規格等の無線規格により互いに通信接続する(サーバ200を介さずに通信接続する)ことで、複数台のユーザ端末100によりローカルでマルチプレイを実現することもできる。1台のユーザ端末100によりローカルで上述のマルチプレイを実現する場合、ユーザ端末100は、さらに、サーバ200が備える後述する種々の機能の少なくとも一部を備えていてもよい。また、複数のユーザ端末100によりローカルで上述のマルチプレイを実現する場合、複数のユーザ端末100は、サーバ200が備える後述する種々の機能を分散して備えていてもよい。
なお、ローカルで上述のマルチプレイを実現する場合であっても、ユーザ端末100はサーバ200と通信を行ってもよい。例えば、あるゲームにおける成績または勝敗等のプレイ結果を示す情報と、ユーザ識別情報とを対応付けてサーバ200に送信してもよい。
また、コントローラ1020は、ユーザ端末100に着脱可能な構成であるとしてもよい。この場合、ユーザ端末100の筐体における少なくともいずれかの面に、コントローラ1020との結合部が設けられていてもよい。該結合部を介して有線によりユーザ端末100とコントローラ1020とが結合している場合は、ユーザ端末100とコントローラ1020とは、有線を介して信号を送受信する。
図1に示すように、ユーザ端末100は、外部のメモリカード等の記憶媒体1030の装着を、入出力IF14を介して受け付けてもよい。これにより、ユーザ端末100は、記憶媒体1030に記録されるプログラム及びデータを読み込むことができる。記憶媒体1030に記録されるプログラムは、例えばゲームプログラムである。
ユーザ端末100は、サーバ200等の外部の装置と通信することにより取得したゲームプログラムをユーザ端末100のメモリ11に記憶してもよいし、記憶媒体1030から読み込むことにより取得したゲームプログラムをメモリ11に記憶してもよい。
以上で説明したとおり、ユーザ端末100は、該ユーザ端末100に対して情報を入力する機構の一例として、通信IF13、入出力IF14、タッチスクリーン15、カメラ17、および、測距センサ18を備える。入力する機構としての上述の各部は、ユーザの入力操作を受け付けるように構成された操作部と捉えることができる。
例えば、操作部が、カメラ17および測距センサ18の少なくともいずれか一方で構成される場合、該操作部が、ユーザ端末100の近傍の物体1010を検出し、当該物体の検出結果から入力操作を特定する。一例として、物体1010としてのユーザの手、予め定められた形状のマーカーなどが検出され、検出結果として得られた物体1010の色、形状、動き、または、種類などに基づいて入力操作が特定される。より具体的には、ユーザ端末100は、カメラ17の撮影画像からユーザの手が検出された場合、該撮影画像に基づき検出されるジェスチャ(ユーザの手の一連の動き)を、ユーザの入力操作として特定し、受け付ける。なお、撮影画像は静止画であっても動画であってもよい。
あるいは、操作部がタッチスクリーン15で構成される場合、ユーザ端末100は、タッチスクリーン15の入力部151に対して実施されたユーザの操作をユーザの入力操作として特定し、受け付ける。あるいは、操作部が通信IF13で構成される場合、ユーザ端末100は、コントローラ1020から送信される信号(例えば、出力値)をユーザの入力操作として特定し、受け付ける。あるいは、操作部が入出力IF14で構成される場合、該入出力IF14と接続されるコントローラ1020とは異なる入力装置(図示せず)から出力される信号をユーザの入力操作として特定し、受け付ける。
<各装置のハードウェア構成要素>
プロセッサ10は、ユーザ端末100全体の動作を制御する。プロセッサ20は、サーバ200全体の動作を制御する。プロセッサ10および20は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、およびGPU(Graphics Processing Unit)を含む。
プロセッサ10は後述するストレージ12からプログラムを読み出し、後述するメモリ11に展開する。プロセッサ20は後述するストレージ22からプログラムを読み出し、後述するメモリ21に展開する。プロセッサ10およびプロセッサ20は展開したプログラムを実行する。
メモリ11および21は主記憶装置である。メモリ11および21は、ROM(Read Only Memory)およびRAM(Random Access Memory)等の記憶装置で構成される。メモリ11は、プロセッサ10が後述するストレージ12から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ10に作業領域を提供する。メモリ11は、プロセッサ10がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ21は、プロセッサ20が後述するストレージ22から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ20に作業領域を提供する。メモリ21は、プロセッサ20がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
本実施形態においてプログラムとは、ゲームをユーザ端末100により実現するためのゲームプログラムであってもよい。あるいは、該プログラムは、該ゲームをユーザ端末100とサーバ200との協働により実現するためのゲームプログラムであってもよい。なお、ユーザ端末100とサーバ200との協働により実現されるゲームは、一例として、ユーザ端末100において起動されたブラウザ上で実行されるゲームであってもよい。あるいは、該プログラムは、該ゲームを複数のユーザ端末100の協働により実現するためのゲームプログラムであってもよい。また、各種データとは、ユーザ情報およびゲーム情報などのゲームに関するデータ、ならびに、ユーザ端末100とサーバ200との間または複数のユーザ端末100間で送受信する指示または通知を含んでいる。
ストレージ12および22は補助記憶装置である。ストレージ12および22は、フラッシュメモリまたはHDD(Hard Disk Drive)等の記憶装置で構成される。ストレージ12およびストレージ22には、ゲームに関する各種データが格納される。
通信IF13は、ユーザ端末100における各種データの送受信を制御する。通信IF23は、サーバ200における各種データの送受信を制御する。通信IF13および23は例えば、無線LAN(Local Area Network)を介する通信、有線LAN、無線LAN、または携帯電話回線網を介したインターネット通信、ならびに近距離無線通信等を用いた通信を制御する。
入出力IF14は、ユーザ端末100がデータの入力を受け付けるためのインターフェースであり、またユーザ端末100がデータを出力するためのインターフェースである。入出力IF14は、USB(Universal Serial Bus)等を介してデータの入出力を行ってもよい。入出力IF14は、例えば、ユーザ端末100の物理ボタン、カメラ、マイク、または、スピーカ等を含み得る。サーバ200の入出力IF24は、サーバ200がデータの入力を受け付けるためのインターフェースであり、またサーバ200がデータを出力するためのインターフェースである。入出力IF24は、例えば、マウスまたはキーボード等の情報入力機器である入力部と、画像を表示出力する機器である表示部とを含み得る。
ユーザ端末100のタッチスクリーン15は、入力部151と表示部152とを組み合わせた電子部品である。入力部151は、例えばタッチセンシティブなデバイスであり、例えばタッチパッドによって構成される。表示部152は、例えば液晶ディスプレイ、または有機EL(Electro-Luminescence)ディスプレイ等によって構成される。
入力部151は、入力面に対しユーザの操作(主にタッチ操作、スライド操作、スワイプ操作、およびタップ操作等の物理的接触操作)が入力された位置を検知して、位置を示す情報を入力信号として送信する機能を備える。入力部151は、図示しないタッチセンシング部を備えていればよい。タッチセンシング部は、静電容量方式または抵抗膜方式等のどのような方式を採用したものであってもよい。
図示していないが、ユーザ端末100は、該ユーザ端末100の保持姿勢を特定するための1以上のセンサを備えていてもよい。このセンサは、例えば、加速度センサ、または、角速度センサ等であってもよい。ユーザ端末100がセンサを備えている場合、プロセッサ10は、センサの出力からユーザ端末100の保持姿勢を特定して、保持姿勢に応じた処理を行うことも可能になる。例えば、プロセッサ10は、ユーザ端末100が縦向きに保持されているときには、縦長の画像を表示部152に表示させる縦画面表示としてもよい。一方、ユーザ端末100が横向きに保持されているときには、横長の画像を表示部に表示させる横画面表示としてもよい。このように、プロセッサ10は、ユーザ端末100の保持姿勢に応じて縦画面表示と横画面表示とを切り替え可能であってもよい。
カメラ17は、イメージセンサ等を含み、レンズから入射する入射光を電気信号に変換することで撮影画像を生成する。
測距センサ18は、測定対象物までの距離を測定するセンサである。測距センサ18は、例えば、パルス変換した光を発する光源と、光を受ける受光素子とを含む。測距センサ18は、光源からの発光タイミングと、該光源から発せられた光が測定対象物にあたって反射されて生じる反射光の受光タイミングとにより、測定対象物までの距離を測定する。測距センサ18は、指向性を有する光を発する光源を有することとしてもよい。
ここで、ユーザ端末100が、カメラ17と測距センサ18とを用いて、ユーザ端末100の近傍の物体1010を検出した検出結果を、ユーザの入力操作として受け付ける例をさらに説明する。カメラ17および測距センサ18は、例えば、ユーザ端末100の筐体の側面に設けられてもよい。カメラ17の近傍に測距センサ18が設けられてもよい。カメラ17としては、例えば赤外線カメラを用いることができる。この場合、赤外線を照射する照明装置および可視光を遮断するフィルタ等が、カメラ17に設けられてもよい。これにより、屋外か屋内かにかかわらず、カメラ17の撮影画像に基づく物体の検出精度をいっそう向上させることができる。
プロセッサ10は、カメラ17の撮影画像に対して、例えば以下の(1)〜(5)に示す処理のうち1つ以上の処理を行ってもよい。(1)プロセッサ10は、カメラ17の撮影画像に対し画像認識処理を行うことで、該撮影画像にユーザの手が含まれているか否かを特定する。プロセッサ10は、上述の画像認識処理において採用する解析技術として、例えばパターンマッチング等の技術を用いてよい。(2)また、プロセッサ10は、ユーザの手の形状から、ユーザのジェスチャを検出する。プロセッサ10は、例えば、撮影画像から検出されるユーザの手の形状から、ユーザの指の本数(伸びている指の本数)を特定する。プロセッサ10はさらに、特定した指の本数から、ユーザが行ったジェスチャを特定する。例えば、プロセッサ10は、指の本数が5本である場合、ユーザが「パー」のジェスチャを行ったと判定する。また、プロセッサ10は、指の本数が0本である(指が検出されなかった)場合、ユーザが「グー」のジェスチャを行ったと判定する。また、プロセッサ10は、指の本数が2本である場合、ユーザが「チョキ」のジェスチャを行ったと判定する。(3)プロセッサ10は、カメラ17の撮影画像に対し、画像認識処理を行うことにより、ユーザの指が人差し指のみ立てた状態であるか、ユーザの指がはじくような動きをしたかを検出する。(4)プロセッサ10は、カメラ17の撮影画像の画像認識結果、および、測距センサ18の出力値等の少なくともいずれか1つに基づいて、ユーザ端末100の近傍の物体1010(ユーザの手など)とユーザ端末100との距離を検出する。例えば、プロセッサ10は、カメラ17の撮影画像から特定されるユーザの手の形状の大小により、ユーザの手がユーザ端末100の近傍(例えば所定値未満の距離)にあるのか、遠く(例えば所定値以上の距離)にあるのかを検出する。なお、撮影画像が動画の場合、プロセッサ10は、ユーザの手がユーザ端末100に接近しているのか遠ざかっているのかを検出してもよい。(5)カメラ17の撮影画像の画像認識結果等に基づいて、ユーザの手が検出されている状態で、ユーザ端末100とユーザの手との距離が変化していることが判明した場合、プロセッサ10は、ユーザが手をカメラ17の撮影方向において振っていると認識する。カメラ17の撮影範囲よりも指向性が強い測距センサ18において、物体が検出されたりされなかったりする場合に、プロセッサ10は、ユーザが手をカメラの撮影方向に直交する方向に振っていると認識する。
このように、プロセッサ10は、カメラ17の撮影画像に対する画像認識により、ユーザが手を握りこんでいるか否か(「グー」のジェスチャであるか、それ以外のジェスチャ(例えば「パー」)であるか)を検出する。また、プロセッサ10は、ユーザの手の形状とともに、ユーザがこの手をどのように移動させているかを検出する。また、プロセッサ10は、ユーザがこの手をユーザ端末100に対して接近させているのか遠ざけているのかを検出する。このような操作は、例えば、マウスまたはタッチパネルなどのポインティングデバイスを用いた操作に対応させることができる。ユーザ端末100は、例えば、ユーザの手の移動に応じて、タッチスクリーン15においてポインタを移動させ、ユーザのジェスチャ「グー」を検出する。この場合、ユーザ端末100は、ユーザが選択操作を継続中であると認識する。選択操作の継続とは、例えば、マウスがクリックされて押し込まれた状態が維持されること、または、タッチパネルに対してタッチダウン操作がなされた後タッチされた状態が維持されることに対応する。また、ユーザ端末100は、ユーザのジェスチャ「グー」が検出されている状態で、さらにユーザが手を移動させると、このような一連のジェスチャを、スワイプ操作(またはドラッグ操作)に対応する操作として認識することもできる。また、ユーザ端末100は、カメラ17の撮影画像によるユーザの手の検出結果に基づいて、ユーザが指をはじくようなジェスチャを検出した場合に、当該ジェスチャを、マウスのクリックまたはタッチパネルへのタップ操作に対応する操作として認識してもよい。
<アカウント>
ゲームシステム1は、ユーザに対して、ゲームシステム1が実現するゲームにログインするためのアカウントを割り当てる。以降、特段の記載が無い限り、ゲームシステム1によって実現されるゲームを、本ゲームと称する。ユーザは、割り当てられたアカウントを用いてゲームにログインすることで、本ゲームをプレイすることができる。
ゲームシステム1は、1名のユーザに対して1つ以上のアカウントを割り当てる。本実施形態では、1名のユーザに対し、1つのアカウントが割り当てられることとする。つまり、ユーザとアカウントは1対1で対応していることとする。
本ゲームのアカウントは、該アカウントでログイン可能な1台以上の装置と対応付けられていてもよい。本実施形態では、サーバ200が、1つのアカウントを1台のユーザ端末100と対応付けて記憶していることとする。したがって、本実施形態では、ユーザは、特定のユーザ端末100を介して、特定のアカウントで、本ゲームにログインする。
<ゲーム概要>
本ゲームは、ユーザが少なくとも他のユーザと交流するための機能(コミュニケーション機能)を提供するゲームである。また、本ゲームは、特定のジャンルに限らず、あらゆるジャンルのゲームであってよい。例えば、テニス、卓球、ドッジボール、野球、サッカーおよびホッケーなどのスポーツを題材としたゲーム、パズルゲーム、クイズゲーム、RPG(Role Playing Game)、アドベンチャーゲーム、シューティングゲーム、シミュレーションゲーム、育成ゲーム、アクションゲーム、ならびに、アクションロールプレイングゲームなどであってもよい。
本実施形態では、当該ゲームとして、パズルゲームを例に説明する。当該パズルゲームは、ゲームのプレイにおいてユーザが利用可能なキャラクタを用いて、画面に供給される種々のキャラクタを消していくことで得点するものである。パズルゲームで用いる前記キャラクタとして第1ユーザによって選択する対象となるキャラクタをPC(player character)とも言う。本ゲームにおいては、他のユーザのゲーム画面に第1ユーザを表示するときに併せてキャラクタを表示する態様としてもよく、その際に、PCを第1ユーザがパズルゲームにおいて利用可能なPCの中から選択して登録してもよい。
本実施形態におけるキャラクタには、希少度が設定されている。「希少度」とは、キャラクタ、アイテム等のゲームにおいて利用可能なゲーム媒体の希少価値を等級で表したものである。本ゲームでは、一例として、ゲームの進行において、ユーザに有利な効果をもたらすキャラクタ、アイテム、例えば、能力の高いキャラクタ、効果の高いアイテムほど、高ランクの希少度が設定されている。上記のパズルゲームにおけるキャラクタについては、希少度が高いほど、得点能力が高い傾向にある。
本実施形態では、希少度の高い等級から順に、「S」、「A」、「B」、および、「C」のアルファベットで示された希少度が設定される。なお、希少度は、例えば、ゲーム媒体の入手困難性、より具体的には、ゲーム媒体を抽選で当選することによりユーザに付与する場合は、抽選における当選確率、クエストまたはミッションのクリア報酬としてユーザに付与する場合は、クエストまたはミッションの難易度、有償でユーザに付与する場合の価格などと相関があってもよい。一般に、高価な、または、入手困難性が高いキャラクタほど、上級の希少度が設定されている。
(フレンド登録機能)
また、本ゲームでは、ユーザは、他のユーザをフレンド登録することができる。フレンド登録とは、本ゲームで提供されるコミュニケーション機能の一種であって、本ゲームのユーザ同士を対応付ける機能である。ユーザは、ユーザ端末100に対して所定の操作を行うことによって、自分以外の他のユーザをフレンド登録することができる。フレンド登録の処理の詳細は後述する。本ゲームにおいて、フレンド登録機能は、多数存在する自分以外の他のユーザを、ブックマークする機能として利用することができる。以下、フレンド登録するユーザを第1ユーザとも言い、フレンド登録される他のユーザを第2ユーザとも言う。
本実施形態では、各ユーザが、自分以外の他のユーザを一方的にフレンド登録することが可能である例について説明する。しかしながら、本ゲームにおいてフレンド登録を行うためには、フレンド登録される側のユーザの承認が必要であってもよい。例えば、あるユーザが他のユーザにフレンド登録の申請を行い、該他のユーザが申請を承認した場合にのみ、フレンド登録が成立することとしてもよい。
本実施形態では、あるユーザが他のユーザを一方的にフレンド登録した場合、該他のユーザは、該あるユーザのフレンドである、と称する。一方、あるユーザと、他のユーザとが相互にフレンド登録をした場合、両者は相互フレンドである、と称する。本実施形態では、相互フレンドを単なるフレンドと区別して扱ってもよい。
<ゲームシステム1の機能的構成>
図2は、ゲームシステム1に含まれるサーバ200およびユーザ端末100の機能的構成を示すブロック図である。サーバ200およびユーザ端末100のそれぞれは、図示しない、一般的なコンピュータとして機能する場合に必要な機能的構成、および、ゲームにおける公知の機能を実現するために必要な機能的構成を含み得る。
ユーザ端末100は、ユーザの入力操作を受け付ける入力装置としての機能と、ゲームの画像や音声を出力する出力装置としての機能を有する。ユーザ端末100は、プロセッサ10、メモリ11、ストレージ12、通信IF13、および入出力IF14等の協働によって、制御部110および記憶部120として機能する。
サーバ200は、各ユーザ端末100と通信して、ユーザ端末100がゲームを進行させるのを支援する機能を有する。ゲームがマルチプレイゲームである場合には、サーバ200は、ゲームに参加する各ユーザ端末100と通信して、ユーザ端末100同士のやりとりを仲介する機能を有していてもよい。サーバ200は、プロセッサ20、メモリ21、ストレージ22、通信IF23、および入出力IF24等の協働によって、制御部210および記憶部220として機能する。
記憶部120および記憶部220は、ゲームプログラム、ゲーム情報132およびユーザ情報133を格納する。ゲームプログラム131は、ユーザ端末100およびサーバ200が実行するゲームプログラムである。
ゲーム情報132は、制御部110および制御部210がゲームプログラム131を実行する際に参照するデータである。ゲーム情報は、ユーザリスト132Aを含む。ユーザリスト132Aは、本ゲームにおける全ユーザのアカウントに関する情報である。ユーザリスト132Aは少なくとも、各ユーザのアカウントを一意に特定する識別子を含んでいる。
(フレンドリスト)
ユーザ情報133には、フレンドリスト133Aが格納される。本実施形態に係るフレンドリスト133Aは、第2ユーザの識別情報と、第1ユーザと第2ユーザとの交流度合いを示す親密度とが対応付けられたデータである。例えば、本実施形態では、フレンド管理部112Aは、複数の第2ユーザの識別情報、および、各第2ユーザと第1ユーザとの親密度を、第2ユーザ毎に対応付けてフレンドリスト133Aに格納する。第2ユーザの親密度に関する情報を第2ユーザ毎に対応付けることは、特定のユーザ間での交流を深める観点から好適である。フレンドリスト133Aにおいて、第2ユーザの識別情報と、第1ユーザと第2ユーザとの交流度合いを示す親密度とが、第1ユーザの識別情報に対応付けられてもよい。図3は、フレンドリスト133Aのデータ構造の一例を示す図である。
図3の例では、フレンドリスト133Aは、ある1名のフレンドに関する情報を、データテーブルの1レコードとして保持している。図3(A)の例では、フレンドリスト133Aは、「フレンドID」列と、「フレンド名」列と、「親密度」列と、「ランク」列と、を含む。
「フレンドID」列には、フレンドである第2ユーザの識別情報が格納される。図示の例では、本列にはフレンドのユーザIDが格納されている。
「フレンド名」列には、フレンドのユーザ名を示す情報が格納される。
「親密度」列には、第1ユーザと、そのフレンドとして登録されている第2ユーザとの親密度を示す情報が格納される。親密度は、第1ユーザと第2ユーザとの交流度合いを示す情報である。本ゲームにおける「第1ユーザと第2ユーザとの交流度合い」、すなわち、親密度とは、第1ユーザから或る第2ユーザに対して何らかのアクションを行った回数と、該アクションの内容との、少なくとも一方に基づいて規定および更新される。例えば、親密度は、第1ユーザから或る第2ユーザに対して交流を試みた回数、交流が実行された回数、交流の内容、交流によりやりとりされた情報の内容等の少なくともいずれかに基づいて規定および更新される。
例えば、上述のアクションとは、所謂「あいさつ」等、所定の通知の送信であってもよい。また例えば、アクションとは、所謂「ギフト」等、アイテム、有価データ、またはゲーム内通貨等を送ることであってもよい。また例えば、アクションとは、第2ユーザへのメッセージの送信、または、第2ユーザからのメッセージの受信であってもよい。
また例えば、アクションとは、所謂「プレゼント」等、第1ユーザの所持しているアイテム、またはキャラクタもしくはカード等のゲーム媒体、有価データ、およびゲーム内通貨等を、第2ユーザに付与することであってもよい。また例えば、アクションとは、所謂「トレード」または「ユーザ間売買」等、第1ユーザの所持しているアイテム、またはキャラクタもしくはカード等のゲーム媒体、有価データ、およびゲーム内通貨等と、第2ユーザの所持しているアイテム、またはキャラクタもしくはカード等のゲーム媒体、有価データ、およびゲーム内通貨等との交換であってもよい。
また例えば、アクションとは、所謂「おねだり」または各種要請等、第1ユーザから第2ユーザに対し、何らかのアイテムまたはアクションを要求することであってもよい。また例えば、アクションとは、所謂「協力プレイ」または「対戦プレイ」等、第2ユーザとゲームのあるパートまたはあるステージ等を協力、または敵対して進めることであってもよい。
本実施形態では、親密度を0以上の整数の値で示すこととする。しかしながら、親密度の記録方法および単位は特に限定されない。例えば、親密度は第2ユーザとの交流の深さを表現する単語として表現および記録されてもよい。第1ユーザから各第2ユーザに対する親密度は、第2ユーザごとに、第1ユーザのフレンドリスト133Aに記録される。
交流によって増減する親密度の量は、例えば、交流の内容に応じて設定され得る。例えば、交流の内容に応じて、増減する親密度の値が異なっていてもよく、同じであってもよい。
なお、第1ユーザのフレンドリスト133Aから第2ユーザに対する親密度と、第2ユーザから第1ユーザに対す得る親密度は同じでもよいし、異なっていてもよい。換言すると、第1ユーザのフレンドリスト133Aに記録されている、ある第2ユーザに対する親密度は、該ある第2ユーザのフレンドリスト133Aに記録されている、第1ユーザに対す親密度と同じ値であっても、異なる値であってもよい。また、第1ユーザと第2ユーザとが相互フレンドである場合、第2ユーザから第1ユーザに対し実行した、または実行を試みた交流の内容および回数に応じて、第1ユーザ側からの第2ユーザの親密度、すなわち、第1ユーザのフレンドリスト133Aに記録された該第2ユーザの親密度が増減してもよい。
また、交流の内容によって、交流の実行とは他の処理が必要な場合は、交流の実行の処理に合わせて、当該他の処理を適宜に実行してよい。例えば、他のゲーム媒体の授受する交流によって、当該他の処理として、ユーザの保有するゲーム媒体の個数を変更する処理が必要になる場合、交流の実行の処理に合わせて、当該他の処理を適宜に実行してよい。
「ランク」列には、親密度を示す情報として、親密度に対応したランクが格納されている。当該ランクは、親密度が取り得る範囲を複数の段階に区切った場合のそれぞれの段階を表す。本実施形態では、下から、D、C、B、A、SおよびSSの六つのランクが設定されている。例えば、各ランクは、親密度10ポイントおきに、下から上記の順となるように設定されている。すなわち、親密度0〜9がDランク、親密度10〜19がCランク、親密度20〜29がBランク、親密度30〜39がAランク、親密度40〜49がSランク、そして、親密度50以上がSSランク、とされている。
記憶部120は、ユーザ端末100に対応するアカウントのユーザ情報133を記憶する。一方、記憶部220は、各ユーザ端末100から収集したユーザ情報133をまとめて記憶する。
(サーバ200の機能的構成)
制御部210は、記憶部220に格納されたゲームプログラム131を実行することにより、サーバ200を統括的に制御する。例えば、制御部210は、ユーザ端末100に各種データおよびプログラム等を送信する。制御部210は、ゲーム情報もしくはユーザ情報の一部または全部をユーザ端末100から受信する。ゲームがマルチプレイゲームである場合には、制御部210は、ユーザ端末100からマルチプレイの同期の要求を受信して、同期のためのデータをユーザ端末100に送信してもよい。
制御部210は、ゲームプログラム131の記述に応じて、送受信部211、サーバ処理部212、および、データ管理部213として機能する。制御部210は、実行するゲームの性質に応じて、ユーザ端末100におけるゲームの進行を支援するために、図示しないその他の機能ブロックとしても機能することができる。
送受信部211は、ユーザ端末100から各種データおよびリクエストを受信する。例えば、送受信部211は、ゲーム情報132もしくはユーザ情報133の一部または全部を、ユーザ端末100から受信する。また例えば、送受信部211は、ユーザ情報133の一部であるフレンドリスト133Aを、ユーザ端末100から受信してもよい。
送受信部211は、ユーザ端末100に対し各種データおよびリクエストを送信する。例えば、送受信部211は、ユーザリスト132Aをユーザ端末100に送信してもよい。また例えば、送受信部211は、特定のユーザのユーザ情報133に含まれているフレンドリスト133Aを、ユーザ端末100に送信してもよい。
サーバ処理部212は、ゲームを提供するために必要な演算処理を行う。サーバ処理部212は送受信部211に対し、各種データの送信を指示する。サーバ処理部212は、データ管理部213に対し、ゲーム情報132、およびユーザ情報133に含まれる各種情報の追加、更新、または削除を指示する。
データ管理部213は、記憶部220に格納されているデータを管理する。データ管理部213は、サーバ処理部212からの指示に応じてゲーム情報132およびユーザ情報133に含まれる各種情報の、追加、更新、または削除を実行する。データ管理部213は、サーバ処理部212の指示に従って、記憶部220からゲーム情報132およびユーザ情報133のうち少なくとも一方の情報を読み出してもよい。データ管理部213は、ゲームプログラム131のうち、あるユーザ端末100で実行する分のプログラムを記憶部220から読み出して、該ユーザ端末100に送信してもよい。
制御部210は、その他の機能ブロックとして、同期処理部として機能してもよい。当該同期処理部は、複数のユーザ端末100と通信して、ユーザ端末100同士のデータのやりとりを仲介する。例えば、同期処理部は、対戦を行うユーザのユーザ端末100同士の、該対戦に係る同期処理を仲介または実行する。
(ユーザ端末100の機能的構成)
制御部110は、記憶部120に格納されたゲームプログラム131を実行することにより、ユーザ端末100を統括的に制御する。例えば、制御部110は、ゲームプログラム131およびユーザの操作にしたがって、ゲームを進行させる。また、制御部110は、ゲームを進行させている間、必要に応じて、サーバ200と通信して、情報の送受信を行う。
制御部110は、ゲームプログラム131の記述に応じて、操作受付部111、ゲーム進行部112、オブジェクト制御部113、表示制御部114、および通信部115として機能する。制御部110は、実行するゲームの性質に応じて、ゲームを進行させるために、図示しないその他の機能ブロックとしても機能することができる。
操作受付部111は、入力部151に対するユーザの入力操作を検知し受け付ける。操作受付部111は、タッチスクリーン15およびその他の入出力IF14を介したコンソールに対してユーザが及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部110の各要素に出力する。
例えば、操作受付部111は、入力部151に対する入力操作を受け付け、該入力操作の入力位置の座標を検出し、該入力操作の種類を特定する。操作受付部111は、入力操作の種類として、例えばタッチ操作、スライド操作、スワイプ操作、およびタップ操作等を特定する。また、操作受付部111は、連続して検知されていた入力が途切れると、タッチスクリーン15から接触入力が解除されたことを検知する。
通信部115は、サーバ200に対し各種データおよびリクエストを送信する。例えば、通信部115はサーバ200に対し、ゲーム情報132もしくはユーザ情報133の一部または全部を送信する。通信部115はサーバ200に対して、ゲーム情報132の一部としてユーザリスト132Aを送信してもよい。通信部115はサーバ200に対して、ユーザ情報133の一部としてフレンドリスト133Aを送信してもよい。
通信部115は、サーバ200から各種データおよびリクエストを受信する。例えば、通信部115はサーバ200から、ゲーム情報132もしくはユーザ情報133の一部または全部を受信する。通信部115は、サーバ200からユーザリスト132Aおよびフレンドリスト133Aを受信してもよい。
ゲーム進行部112は、ゲームの進行に係る各種処理を行う。例えば、ゲーム進行部112は、操作受付部111が受け付けた入力操作の位置の座標と、操作の種類と、ゲームの進行状況とに基づいて、ユーザの指示内容を特定する。
例えば、ゲーム進行部112は、ユーザのゲームへのログインを受け付けて、ログインに係る一連の処理を実行する。例えば、操作受付部111がユーザのログインに係る一連の入力操作(ログイン操作)を受け付けると、ゲーム進行部112は、該操作に基づいて、ログイン要求を受けたと判定する。ゲーム進行部112はログイン要求を受けた場合、ログイン操作から特定可能な情報(例えば、ユーザ端末100の機種ID、ユーザID、パスワード等)に基づいて、ログイン認証を行う。
ゲーム進行部112は、ユーザIDおよびパスワードが特定のアカウントのものと一致する場合に、該アカウントについてログイン認証が成功したと判定してもよい。また、ユーザ端末100とアカウントとが対応付けされるゲームの場合、ゲーム進行部112は、特定した機種IDに対応付けされたアカウントが存在する場合に、該アカウントについてログイン認証が成功したと判定してもよい。ゲーム進行部112は、ログイン認証が成功したアカウントで、ユーザをゲームにログインさせる。
ゲーム進行部112は、ゲームの進行に係る各種判定処理を行う。また、ゲーム進行部112は、記憶部120に記憶されたゲーム情報132およびユーザ情報133に含まれる、各種情報の追加、更新、または削除を行う。ゲーム進行部112は、フレンド管理部112A、および報酬付与部112Bを含む。
フレンド管理部112Aは、ユーザのフレンドを管理する。例えば、フレンド管理部112Aは、特定のゲーム画面を表示している場合に、操作受付部111が、フレンドとして登録する対象の他のユーザを指定する操作を受け付けた場合、指定されたユーザをフレンド登録する。また、フレンド登録とは、フレンド登録の対象となるユーザの識別情報を対応付けて、記憶部120または記憶部220に記憶させることを意味する。フレンド登録において、指定されるユーザの識別情報を、指定するユーザの識別情報に対応付けて記憶部120または記憶部220に記憶させてもよい。フレンド管理部112Aは、フレンド登録の際に、第1ユーザから第2ユーザに対する親密度の初期値を設定して、フレンド登録する第2ユーザの識別情報に関連付けて記憶部120に記憶させる。なお、親密度の初期値は適宜設定されてよい。本実施形態では、親密度の初期値は0であることとする。
また、フレンド登録する第2ユーザが第1ユーザをフレンド登録済みである場合、第1ユーザから第2ユーザに対する親密度の初期値は、該第2ユーザから第1ユーザに対する親密度の値に応じて決定されてもよい。例えば、ユーザBがユーザAをフレンド登録済みであって、親密度が100であると仮定する。また、ユーザCはユーザAをフレンド登録していないこととする。この場合、ユーザAがユーザBをフレンド登録する際の親密度の初期値は、ユーザAがユーザCをフレンド登録する場合の親密度の初期値よりも高い値であってもよい。これにより、フレンド登録する相手側からの交流の回数および内容も、第1ユーザからの親密度に反映させることができる。
フレンド管理部112Aは、操作受付部111が登録解除指示を受け付けた場合に、該指示によって指定されたフレンドを、ユーザ端末100のユーザのフレンドリスト133Aから削除してもよい。例えば、フレンド管理部112Aは、ユーザ端末100のユーザの識別情報と、指定されたユーザの識別情報との対応付けを解除してもよい。
報酬付与部112Bは、上記の親密度に応じて、第1ユーザに報酬を付与する。報酬付与部112Bは、ゲームの態様に応じて、適宜のタイミングで第1ユーザに報酬を付与することができる。例えば、親密度が特定の閾値に達した場合に自動的に第1ユーザに報酬を付与してもよく、第1ユーザによって報酬を受け取ることを指示する操作を受け付けて第1ユーザに報酬を付与してもよい。
オブジェクト制御部113は、ゲーム情報132に含まれるオブジェクトの設定情報に基づき、ゲーム画面における2Dまたは3Dのオブジェクトの配置を決定する。また、オブジェクト制御部113は、ゲーム画面に配置したオブジェクトを制御する。例えば、オブジェクト制御部113は、配置したオブジェクトの位置、向き、形状、色等を変更したり、該オブジェクトに所定の一連の動作を行わせたりする。例えば、オブジェクト制御部113は、キャラクタをゲーム進行部112が決定した移動方向、移動速度、および移動距離で移動させる。
表示制御部114は、表示部152にゲーム画面の画像を表示させる。表示制御部114は、例えば、オブジェクト制御部113が制御するオブジェクトと、該オブジェクトの背景となる背景画像とを含む画像を生成して、表示部152に表示させる。
なお、オブジェクト制御部113または表示制御部114は、UI(user interface)を構築するための2Dまたは3Dのオブジェクト(UIオブジェクト)を制御してもよい。例えば、表示制御部114は、背景画像にアイコン、ボタン、リスト、メニュー画面等、ゲームの種々の操作に必要なUIオブジェクトを重畳したゲーム画面を表示させてもよい。UIオブジェクトとは、ユーザが、ゲームの進行上必要な入力をユーザ端末100に対して行うためのツールである。また、UIオブジェクトとは、ユーザが、ゲームの進行中に出力される情報をユーザ端末100から得るためのツールである。
なお、図2に示すサーバ200およびユーザ端末100の機能は一例にすぎない。サーバ200は、ユーザ端末100が備える機能の少なくとも一部を備えていてもよい。また、ユーザ端末100は、サーバ200が備える機能の少なくとも一部を備えていてもよい。さらに、ユーザ端末100およびサーバ200以外の他の装置をゲームシステム1の構成要素とし、該他の装置にゲームシステム1における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラム131を実行するコンピュータは、ユーザ端末100、サーバ200、および他の装置のいずれであってもよいし、これらの複数の装置の組み合わせにより実現されてもよい。
<処理概要>
本実施形態のゲームには、フレンド登録機能が設定されている。フレンド登録機能は、任意のユーザを選択してフレンドとして登録する機能である。本実施形態では、フレンドには親密度が設定されている。また、親密度に応じて、第1ユーザに付与され得る報酬が設定されている。親密度は、第1ユーザと第2ユーザとの交流によって変化する。
<処理フロー>
図4は、本実施形態に係るゲームプログラムに基づいて、ゲームシステムにおいて実行される処理の流れの一例を示すフローチャートである。
ステップS401において、フレンド管理部112Aは、フレンド登録指示操作を受け付ける。フレンド登録指示操作は、第1ユーザによって他のユーザをフレンドとして登録するための操作である。フレンド登録指示操作は、例えば、フレンド登録されていない他のユーザを一覧表示する画面から、フレンドとしての登録を希望する他のユーザの欄を選択するタッチ操作である。フレンド登録指示操作を受け付けるための画面の一例を図5に示す。
図5に示されるように、画面500は、欄510、520、530、540を含んでいる。それぞれの欄は、フレンド登録されていない他のユーザが表示されており、どの欄も同様に構成されている。欄510は、他のユーザに関連付けられているPCを表示するキャラクタ表示511と、他のユーザのユーザ名を表示するユーザ表示512と、他のユーザのユーザID513と、フレンドになることを申請するためのUI514と、を含んでいる。キャラクタ表示511は、第2ユーザに関連付けられたPCのレベルの表示を含んでいる。また、ユーザ表示512は、ユーザ名以外に、当該他のユーザが最終ログインした時期の表示を含んでいる。
例えば、欄510におけるUI514を第1ユーザがタッチすると、UI514に対応するユーザ「やまだ001」が第1ユーザのフレンドとして登録される。本実施形態では、第1ユーザの申請のみによって他のユーザをフレンドとして登録してもよく、あるいは、当該申請に基づく他のユーザの承認とによって当該他のユーザをフレンドとして登録してもよい。フレンドの登録は、例えば、前述したように、第2ユーザの識別情報と親密度とが図3に示したフレンドリスト133Aの1レコードとして格納されることによって実行される。
ステップS402において、フレンド管理部112Aは、第2ユーザの識別情報と親密度とを対応付けて記憶させる。これにより、ステップS401において特定した他のユーザは、フレンド登録された第2ユーザとなる。例えば、本実施形態では、フレンド管理部112Aは、第1ユーザの識別情報に、第2ユーザの識別情報、および、第2ユーザと第1ユーザとの親密度を対応付けてフレンドリスト133Aに格納する。
フレンドを登録する際には、親密度が設定されて記憶される。登録当初のフレンドの親密度(初期値)は「0」である。例えば、制御部110は、第1ユーザのユーザ端末100におけるユーザ情報133にあるフレンドリスト133Aに、第2ユーザの識別情報としてのユーザID(フレンドID)および第2ユーザに対する親密度(初期値)を記憶部120にレコードとして追加させる。
ステップS402の後、第1ユーザと第2ユーザとの親密度は、上述の通り、第2ユーザとの交流の内容に応じて高められる。より具体的には、フレンド管理部112Aは、第1ユーザの実行する交流の内容に応じてフレンドリスト133Aの親密度を更新する。
ステップS403において、報酬付与部112Bは、第2ユーザに対する親密度の高さに応じて付与する報酬を決定する。報酬付与部112Bは、フレンドリスト133Aに格納された第1ユーザと第2ユーザとの親密度が高いほど、ゲームプログラムに基づくゲームにおいて価値の高い報酬を付与する。ステップS404において、報酬付与部112Bは、決定した報酬を第1ユーザに付与する。
このように親密度が高まることでより価値の高い報酬が得られることから、第1ユーザの、他のユーザとの交流が促進される。例えば、第1ユーザは、第2ユーザとの交流をさらに深めようとするように、既にフレンド登録した第2ユーザとの交流をさらに深めて、より親密になることを第1ユーザに動機付けることができる。ひいては、親密度のより高いフレンドがいることで、ゲームをより長期にプレイすることを第1ユーザに動機付けることができる。
第1ユーザへの報酬の付与は、第1ユーザによる何らかの操作に応じて実行されてもよい。例えば、制御部110は、第1ユーザによる、第2ユーザを指定する指示を含む第1入力操作を受け付けるステップを実行させてもよい。第1入力操作は、例えば、第2ユーザを指定して当該第2ユーザとの交流を実行する操作であってもよい。この場合、ゲーム進行部112が当該操作に基づく交流を実行した結果、親密度が所定の閾値に達したときに、報酬付与部112Bは自動的に報酬の付与を実行してもよい。親密度の更新時に報酬が付与されることから、ユーザ間の交流がより強く動機付けられやすい。また、第1入力操作は、例えば、親密度を高める操作とは別の、報酬を受取るための操作であってもよい。例えば、表示制御部114は、第2ユーザを示す情報を表示している画面において、当該第2ユーザとの親密度に応じた報酬を受け取るためのUIを表示してもよい。そして、報酬付与部112Bは、当該UIに対するタッチ操作に基づいて、第1ユーザに報酬を付与してもよい。これらの場合、報酬付与部112Bは、当該第1入力操作が受け付けられた場合に、当該指示により指定された第2ユーザとの親密度に応じた報酬を第1ユーザに付与してよい。
また、例えば制御部110は、当該第1入力操作によらずに、第2ユーザとの親密度に応じた報酬を第1ユーザに付与してもよい。例えば、制御部110は、第1ユーザのログイン時の報酬として、当該ログインの時に最も親密度が高いフレンドの親密度に応じた価値を有する報酬を報酬付与部112Bによって第1ユーザへ付与してもよい。
報酬の内容は、価値の高さを設定可能なゲーム媒体であればよく、適宜に設定可能である。例えば、報酬は、第1ユーザがゲームのプレイに利用可能なゲーム媒体であってよい。報酬として設定可能なゲーム媒体としては、例えば、ゲーム内アイテム、キャラクタ等であってもよい。
例えば、報酬付与部112Bは、第1ユーザの第2ユーザに対する親密度が高いほど、ゲームにおいて利用可能なゲーム媒体であって、希少価値の高いゲーム媒体と引き換え可能な報酬を第1ユーザに付与してもよい。希少価値を有するゲーム媒体を獲得する期待感により、ユーザ間の交流をより強く動機付けることができる。ゲーム媒体は、ユーザがゲームにおいて操作可能な操作キャラクタであってもよく、あるいは、ゲーム内で消費可能な消費アイテムであってもよい。
また、当該報酬の種類は、ゲーム中に実行可能な処理に応じて適宜に決めることが可能である。例えば、制御部110が、ゲームにおいて、第1ユーザに付与された所定量の報酬と引き換えに、筐体を参照して特定した1つ以上のゲーム媒体を、第1ユーザに付与する処理を実行させる場合では、報酬付与部112Bは、前述の親密度が高いほど、ゲーム媒体を付与する際に、希少価値の高いゲーム媒体が特定される可能性が高い筐体を参照する報酬を第1ユーザに付与してよい。制御部110が筐体を参照してゲーム媒体を特定する方法としては、例えば、所定の優先度に基づいて特定する方法であってもよく、各ゲーム媒体に設定された抽選確率に基づく抽選であってもよい。このような例の場合、希少価値の高いゲーム媒体が特定される可能性を変更する方法としては、報酬の価値の高さに応じて、希少価値の高いゲーム媒体の前記優先度を上下させたり、抽選確率を上下させたりすればよい。抽選の具体的な方法は特に限定されない。例えば、抽選を実行する処理は、複数のゲーム媒体が関連付けられた筐体を参照して、1つ以上のゲーム媒体を特定する処理であってもよい。なお、筐体とは物理的構造物ではなく、例えば、抽選に用いるデータテーブル、乱数表である。親密度が高いほど、希少価値の高いゲーム媒体が特定される可能性がより高い筐体を参照する抽選に利用可能な報酬を付与することにより、希少価値が高いゲーム媒体を獲得することの期待感が高められ、また他のユーザとの交流がより強く動機付けられる。
本実施形態では、このような報酬の一例として、報酬はフレンドコインであるとする。フレンドコインには、親密度に応じて、SSフレンドコイン、Sフレンドコイン、Aフレンドコイン、Bフレンドコイン、Cフレンドコインがある。より高いランクに対応するフレンドコインであるほど、希少度Sのゲーム媒体の抽選確率がより高く設定された筐体を参照する抽選に使用することができる。第1ユーザは、獲得したフレンドコインの消費と引き換えに、ランクに応じて、希少度Sのゲーム媒体の抽選確率が設定された筐体を参照する抽選を実行させることができる。
ここで、親密度を更新する処理のフローの一例について図6を用いて説明する。ステップS601において、フレンド管理部112Aは、交流指示操作を受け付ける。交流指示操作は、例えば、ゲーム画面に表示された交流を指示するためのUIを用いて行われてもよい。例えば、当該UIはフレンドを一覧表示するためのゲーム画面に表示されてもよい。つまり、本実施形態では、ゲーム画面の一つとして、第1ユーザが登録したフレンドを一覧できる画面があってよい。当該画面は、第1ユーザが操作する第1ユーザ端末の表示部152において、フレンドに登録した第2ユーザを、該第2ユーザ毎の親密度を示す情報とともに表示するものであってよい。制御部110は、表示部152に、親密度を示す情報として親密度のランクと、当該ランクをより高い次の段階に上げるために必要な条件とを第2ユーザ毎に表示させてもよい。このように第2ユーザをその親密度と関連付けて表示することにより、第1ユーザが交流相手としての第2ユーザを決定する際の利便性が高められる。ここで、親密度のランクとは、親密度が取り得る範囲を複数の段階に区切った各段階である。
図7(A)は、本実施形態における、第2ユーザ毎に親密度を表示する画面の一例を示す図である。図7(A)に示されるように、画面700は、欄710〜740を含む。それぞれの欄には、フレンド登録された第2ユーザそれぞれに係る情報が表示されており、これらの欄は、表示されている第2ユーザ以外はいずれも同様に構成されている。
欄710は、第2ユーザのPCのキャラクタ表示711、その第2ユーザのユーザ名を表示するユーザ表示712、当該第2ユーザとの親密度713、当該親密度に対応するランク714、より上位の次のランクに到達するまでの親密度の残りポイント数715、および、第2ユーザにあいさつするためのUI716、を含んでいる。ユーザ表示712には、その第2ユーザの最終ログインの時期が合わせて表示されている。UI716は、フレンドとの交流を指示するためのUIオブジェクトである。
ステップS602において、フレンド管理部112Aは、ステップS601において受け付けた交流指示操作に応じた交流処理を行なう。図7に示す例では、ステップS601において、フレンド管理部112AがUI716に対するタップを受け付けると、フレンド管理部112Aは、「こよーて」にあいさつを送信する。「あいさつ」は、第2ユーザに対する通知の一種である。フレンド管理部112Aは、あいさつと共に、第2ユーザに対して例えば、第1ユーザによって予め登録されたメッセージ、ゲームプログラムが予め設定したメッセージ等を送信してもよい。予め登録されたメッセージは、例えば、第1ユーザによって作成された文章、複数の定型文の中から第1ユーザによって選択されたもの等が挙げられる。
ステップS603において、フレンド管理部112Aは、交流の内容に応じてフレンドリストに記憶された第2ユーザに対する親密度の値を更新する。ここで、親密度の更新量(本実施形態では、増加量)は、交流内容に応じて予め設定されており、交流内容に応じて異なってもよく、同じであってもよい。交流内容に応じて異なる場合、第2ユーザにとって有利な交流であるほど、増加する親密度が多くてもよい。例えば、交流があいさつ等のメッセージの送信である場合に親密度を10増加させ、プレゼントを送る場合に親密度を20増加させてもよい。
図7(B)は、画面700において第1ユーザが第2ユーザへの交流を指示したときに示される画面の一例を示す図である。図7(B)に示されるように、操作受付部111がUI716への入力操作(タッチ操作)を受け付けると、制御部110は、表示部152に、画面700にウインドウ750を重畳表示させる。ウインドウ750には、第1ユーザが交流した相手、交流の形態、および、第1ユーザが獲得した親密度の値、が表示される。
また、第1ユーザの当該第2ユーザに対するランクに変更が生じた場合、ウインドウ750には、ランクが変更された旨の通知と、変更後のランクに応じて第1ユーザに付与された報酬と、を合わせて表示してもよい。第1ユーザに当該報酬を付与する処理はステップS404と同じである。例えば、図3に示したフレンドリスト133Aの例と、図7の例とによれば、第1ユーザによる「こよーて」への「あいさつ」によって、第1ユーザから「こよーて」に対する親密度は、10ポイント上昇し、総計で36ポイントとなる。したがって、第1ユーザの親密度のランクは「B」から「A」に昇格し、第1ユーザは、親密度のランクAに対応する報酬として、Aフレンドコインを獲得する。第1ユーザは、Aフレンドコインをゲームにおいて消費して抽選を実行すると、Aフレンドコインに応じた抽選確率で、希少度Sのゲーム媒体(キャラクタ)を獲得し得る。このように、本実施形態では、第1ユーザは第2ユーザとの親密度を高くすることにより、より高いランクのフレンドコインを獲得できる。より高いランクのフレンドコインを消費して抽選を実行すると、高い希少度のゲーム媒体の抽選確率が、当該ランクに応じて高くなる。したがって、親密度のランクの高い第2ユーザを作ることに対する動機付けがより高くなる。
〔実施形態2〕
本実施形態では、ゲーム進行部112は、さらに、第1ユーザと、1人以上の第2ユーザと参加する対戦を実行する。本実施形態では、交流の一形態として、第1ユーザと第2ユーザとを含む対戦を実行する形態について説明する。第2ユーザと共にゲームプレイすることによって、第2ユーザに対する親密度を高めることができる。これにより、第2ユーザとより有利にゲームを進めることができる。
本実施形態では、ゲーム進行部112は、実行するゲームの性質に応じて、ユーザ端末100におけるゲームの進行を支援するために、図示しないその他の機能ブロックとしても機能することができる。例えば、ゲームが対戦パートを含む場合には、ゲーム進行部112は、マッチング部および対戦実行部として機能してもよい。
マッチング部は、マッチングに係る処理を実行する。本実施形態において、マッチングとは、第1ユーザに対し、1名以上の参加ユーザを対応付けることを示す。なお、ここで述べる「対戦相手」とは、第1ユーザの敵とは限らず、第1ユーザの味方、または第1ユーザと中立関係になるユーザも含まれ得る。
マッチング部は、操作受付部111が対戦パートのための入力操作を受け付けると、第1ユーザと、1人以上の参加ユーザとをマッチングする。本実施形態において、マッチング部は、1度に第1ユーザと1人の参加ユーザとをマッチングすることとする。したがって、複数の参加ユーザを交えて対戦する場合は、マッチング部は第1ユーザと参加ユーザとのマッチングを複数回行うこととする。しかしながら、マッチング部は1度に第1ユーザと複数の参加ユーザとをマッチングしてもよい。
対戦実行部は、第1ユーザおよび第2ユーザが参加する対戦を実行する。対戦に係る処理の詳細は後述する。例えば、対戦実行部は、第1ユーザと、他の1名の参加ユーザとの1対1のPvP(Player vs Player)対戦を実行してもよい。この場合、対戦実行部は、第1ユーザと、第2ユーザとの1対1での対戦を実行させてもよい。また、対戦実行部は、第1ユーザと、1名以上の参加ユーザとから成る味方陣営と、ゲームプログラム131で規定された動作を行う1名以上のNPC(non player character)から成る敵陣営とのCOM(computer)対戦を実行してもよい。また、対戦実行部は、第1ユーザと1名以上の参加ユーザとから成る味方陣営と、味方陣営以外の参加ユーザを含む敵陣営との対戦を実行してもよい。また、対戦実行部は、第1ユーザ及び第2ユーザそれぞれに関連付けられたPC(player character)を、第1ユーザ及び第2ユーザの操作に基づいて動作させて対戦を進行させればよい。
本実施形態では、本ゲームが、対戦パートを含むテニスゲームである例について説明する。テニスゲームでは、ユーザはユーザ端末100に対し入力操作を行うことで、ゲーム内のキャラクタを操作してテニスをプレイする。以降の説明では「入力操作に基づいて動作する操作可能なキャラクタ」を「操作キャラクタ」と称する。
各ユーザは、それぞれの操作キャラクタを動かして、テニスの試合に参加する。つまり、テニスゲームにおけるマルチプレイ対戦とは、例えばユーザ対ユーザのシングルスの試合、および、複数のユーザを少なくとも含む、ダブルスの試合を意味する。ダブルスの試合とは、対戦への参加者を募集したホストユーザ(第1ユーザ)と、対戦相手となる該ユーザ以外の1名以上のユーザである参加ユーザ(第2ユーザ)とのペアと、ペア以外の他のユーザ、およびNPC(non player character)の少なくとも一方を含むペアとの、試合である。このようにペア対ペアの試合を提供することで、対戦の戦略性をより高めることができるため、本ゲームの興趣性を向上させることができる。
ゲームシステム1は、実際のテニスのルールに基づく所定のルールに則ったテニスの試合を進行させる。以降の説明では、実際のテニスのルールについて詳細な説明は省略する。
本実施形態では、対戦報酬が第1ユーザに付与されてもよい。対戦報酬は、第1ユーザがフレンド登録されている第2ユーザと対戦した場合に付与される。本実施形態において、対戦報酬は、第1ユーザと、対戦に参加する1人以上の第2ユーザとの親密度に応じた報酬とすることがであってもよい。このような親密度に応じた対戦報酬は、第1ユーザの対戦相手に1人以上のフレンド登録された第2ユーザが含まれていた場合に、第1ユーザに付与される。なお、対戦相手に複数のフレンドまたは相互フレンドが含まれていた場合、これらのフレンドの人数に応じて付与する対戦報酬の質または量が変化してもよい。対戦報酬は、例えば、前述した親密度に応じた報酬で例示した中から選ぶことができ、前述した親密度に応じた報酬と同じであってもよく、異なっていてもよい。
また、対戦結果に応じて親密度を変更してもよく、この変更された親密度に応じて対戦報酬を上記のように選ぶことができてもよい。例えば、両ユーザの親密度を、対戦が接戦であるほどに両ユーザの親密度がより高めるように変更し、これらの高められた親密度に応じた対戦報酬が第1ユーザに付与されてもよい。さらに、対戦報酬は、第1ユーザと第2ユーザとの両方に付与されてもよい。
本実施形態によれば、第1ユーザに対して、第2ユーザとの親密度を高めることと、第2ユーザと対戦を行うこととの動機をより強く与えることができる。そのため、第1ユーザにとって、対戦を含むゲームにおける対戦の面白さを体感する機会が増える。したがって、このようなゲームにおいて、他のユーザとの交流を深めることと、ゲームの興趣性との両方がより一層高められる。
(変形例)
以上の説明では、交流の実行によって親密度が増加する例を中心に説明したが、所定の条件に応じて、制御部110は、親密度が減少する処理を実行してもよい。所定の条件としては、例えば、所定期間、交流が実行されないこと等が挙げられる。これにより、第1ユーザは、定期的に第2ユーザと交流することを動機付けられる。
また、親密度の初期値を親密度の下限値としてもよいし、親密度が初期値以下まで減少するように設計してもよい。例えば、上述の親密度が減少する処理が実行された場合、親密度が0からマイナスの数値に減少し得ることとしてもよい。
〔ソフトウェアによる実現例〕
制御部210の制御ブロック、ならびに、制御部110の制御ブロック(特に、フレンド管理部112Aおよび報酬付与部112B)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
後者の場合、制御部210または制御部110、もしくはその両方を備えた情報処理装置は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
〔付記事項〕
本発明の一側面に係る内容を列記すると以下のとおりである。
(項目1) ゲームプログラム(131)について説明した。本開示のある局面によると、ゲームプログラムは、プロセッサ(10、20)およびメモリ(11、21)を備えるコンピュータ(ユーザ端末100およびサーバ200の少なくとも一方)により実行される。ゲームプログラムは、プロセッサに、第1ユーザ以外のユーザである第2ユーザの識別情報と、第1ユーザと第2ユーザとの交流度合いを示す親密度とを対応付けて記憶部に記憶させるステップと、第1ユーザに、第1ユーザと第2ユーザとの親密度に応じた報酬を付与するステップと、を実行させる。また、報酬を付与するステップでは、記憶部に記憶された第1ユーザと第2ユーザとの親密度が高いほど、ゲームプログラムに基づくゲームにおいて価値の高い報酬を付与する。これにより、ユーザは、親密度の高い第2ユーザを有する第1ユーザほど、価値の高い報酬を獲得することができる。よって、他のユーザとの交流をさらに深めるように動機付ける効果を奏する。
(項目2) (項目1)において、記憶させるステップでは、複数の第2ユーザの識別情報、および、各第2ユーザと第1ユーザとの親密度を、第2ユーザ毎に対応付けて記憶部に記憶させてもよい。このような構成によれば、第2ユーザごとの親密度を管理することができる。よって、第1ユーザは、特定の第2ユーザとより深く交流することによってより価値の高い報酬を獲得することができ、他のユーザとの交流を深める観点からより一層効果的である。
(項目3) (項目2)において、ゲームプログラムは、プロセッサに、さらに、第1ユーザによる、第2ユーザを指定する指示を含む第1入力操作を受け付けるステップを実行させ、報酬を付与するステップでは、当該第1入力操作が受け付けられた場合に、第1ユーザと、当該指示により指定された第2ユーザとの親密度に応じた報酬を付与してもよい。このような構成によれば、第1ユーザの、第2ユーザを指定する指示を含む何らかの入力操作に応じて、第1ユーザに報酬が付与される。付与される報酬の価値は、指定された第2ユーザとの親密度に応じて変化する。よって、第1ユーザは、第2ユーザと交流することが動機付けられやすく、他のユーザとの交流を深める観点からより一層効果的である。
(項目4) (項目1)から(項目3)のいずれか1項目において、報酬を付与するステップでは、第1ユーザと第2ユーザとの親密度が高いほど、ゲームにおいて利用可能なゲーム媒体であって、希少価値の高いゲーム媒体と引き換え可能な報酬を第1ユーザに付与してもよい。このような構成によれば、ユーザは、報酬の獲得により、親密度が高いほどより高い希少価値を有するゲーム媒体を獲得することが可能になる。よって、他のユーザとの交流をより強く動機付ける観点からより効果的である。
(項目5) または(項目1)から(項目3)のいずれか1項目において、ゲームプログラムは、プロセッサに、さらに、ゲームにおいて、第1ユーザに付与された所定量の報酬と引き換えに、筐体を参照して特定した1つ以上のゲーム媒体を第1ユーザに付与するステップを実行させ、報酬を付与するステップでは、親密度が高いほど、ゲーム媒体を付与するステップにおいて、希少価値の高い前記ゲーム媒体が特定される可能性が高い前記筐体を参照する報酬を第1ユーザに付与してもよい。このような構成によれば、ユーザは、報酬の獲得により、ゲーム媒体を獲得することが可能となり、このゲーム媒体として、当該親密度が高いほどより高い希少価値を有するものが特定される可能性が高まる。よって、他のユーザとの交流をより強く動機付けることができ、また、希少価値が高いゲーム媒体が特定されることへの期待感を有することができ、ゲームの興趣性をより一層高めることができる。
(項目6) (項目2)において、ゲームプログラムは、プロセッサに、さらに、記憶させるステップにおいて記憶された複数の第2ユーザの識別情報を、各第2ユーザの親密度を示す情報とともに、第1ユーザが操作する第1ユーザ端末の表示部に表示させるステップを実行させてもよい。このような構成によれば、第2ユーザを表示する画面で、第2ユーザ毎の親密度も一緒に表示されるので、第1ユーザが交流の機会ごとに交流相手としての第2ユーザを決定する利便性をより高めることができる。
(項目7) (項目6)において、表示させるステップでは、第2ユーザの親密度を示す情報として、親密度が取り得る範囲を区切った複数の段階のうちの、第二ユーザの親密度が対応する段階を表示させるとともに、親密度を示す情報を当該段階より親密度が次に高い段階に上げるために必要な条件を表示させてもよい。このような構成によれば、親密度の次の段階に至る条件が第2ユーザ毎の親密度とともに表示される。よって、第1ユーザが交流相手としての第2ユーザを決定する利便性をより一層高めることができる。
(項目8) (項目1)から(項目7)までのいずれか1項目において、ゲームプログラムは、プロセッサに、さらに、第1ユーザと、1人以上の第2ユーザと参加する対戦を実行するステップを実行させ、報酬を付与するステップでは、対戦を実行するステップの実行後に、第1ユーザに、対戦に参加していた1人以上の第2ユーザとの各親密度に応じた報酬を付与してもよい。このような構成によれば、第1ユーザは、第2ユーザと対戦を行うことの動機がより強く与えられ、対戦の面白さをより強く体感することができるので、他のユーザとの交流を深めることと共にゲームの興趣性をより高めることができる。
(項目9) ゲームプログラムを実行する方法を説明した。本開示のある局面によると、ゲームプログラムは、プロセッサおよびメモリを備えるコンピュータにより実行される。該方法は、プロセッサが(項目1)に記載の各ステップを実行する方法である。(項目9)に係る方法は、(項目1)に係るゲームプログラムと同様の作用効果を奏する。
(項目10) 情報処理装置を説明した。本開示のある局面によると、該情報処理装置は、(項目1)に係るゲームプログラムを記憶する記憶部(120)と、該ゲームプログラムを実行することにより、情報処理装置(ユーザ端末100)の動作を制御する制御部(110)とを備える。(項目10)に係る情報処理装置は、(項目1)に係るゲームプログラムと同様の作用効果を奏する。