(57)【要約】【課題】ユーザに関連付けられる選択対象のバリエーションを増やす。【解決手段】ゲームプログラムは、プロセッサに、複数のレア度に個別に設定される各優先度が互いに比較されることによって、複数の優先度の中から第１優先度を決定するステップ（Ｓ２）と、複数のレア度の中から、第１優先度が設定されたＳレアを選択するステップ（Ｓ３）と、選択されたＳレアをユーザに関連付けるステップ（Ｓ４）と、Ｓレアに設定される優先度を再設定するステップ（Ｓ８）とを実行させる。【選択図】図５
2020000732.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサを備えたコンピュータによって実行されるプログラムであって、
前記プログラムは、前記プロセッサに、
複数の選択対象に個別に設定される各優先度が互いに比較されることによって、複数の優先度の中から第１優先度を決定するステップと、
前記複数の選択対象の中から、前記第１優先度が設定された第１選択対象を選択するステップと、
前記第１選択対象をユーザに関連付けるステップと、
前記第１選択対象に設定される前記優先度を再設定するステップとを実行させる、プログラム。
【請求項２】
前記複数の選択対象は、ゲームに使用される要素である、請求項１に記載のプログラム。
【請求項３】
前記複数の選択対象に、それぞれ第１パラメータが設定されており、
前記優先度を再設定するステップにおいて、前記第１選択対象に設定される前記第１パラメータに基づいて、前記第１選択対象に設定される前記優先度を再設定する、請求項１または２に記載のプログラム。
【請求項４】
前記第１パラメータは、前記複数の選択対象の中から前記選択対象が選択される確率でり、
前記再設定するステップにおいて、前記第１選択対象に設定される前記確率が小さいほど、前記第１選択対象に設定される前記優先度を低くする、請求項３に記載のプログラム。
【請求項５】
前記再設定するステップにおいて、前記第１パラメータに応じて値が定まる第２パラメータを基準値とした確率分布に従う乱数を生成し、生成した乱数に基づいて前記優先度を再設定する、請求項３に記載のプログラム。
【請求項６】
前記第１パラメータの値が小さいほど、前記第２パラメータの値が大きくなり、
前記確率分布は、前記第２パラメータを中央値とする正規分布である、請求項５に記載のプログラム。
【請求項７】
前記第１パラメータは、前記複数の選択対象の中から前記選択対象が選択される確率でり、
前記第２パラメータは、前記確率の逆数である、請求項６に記載のプログラム。
【請求項８】
前記プログラムは、前記プロセッサに、前記複数の選択対象に設定される各前記優先度を、同一の第３パラメータだけ一律に変更するステップをさらに実行させる、請求項２〜７のいずれか１項に記載のプログラム。
【請求項９】
前記複数の選択対象は、それぞれが前記ゲームにおけるアイテムの希少性を表す複数のレア度であり、
前記第１選択対象を選択するステップにおいて、前記複数のレア度の中から、前記第１優先度が設定される第１レア度を選択し、
前記プログラムは、前記プロセッサに、
複数のアイテムの中から、前記第１レア度に応じた第１アイテムを選択するステップと、
前記第１アイテムを前記ユーザに関連付けるステップとを実行させる、請求項２に記載のプログラム。
【請求項１０】
コンピュータがプログラムを実行する方法であって、
前記コンピュータは、プロセッサを備え、
前記方法は、前記プロセッサが、
複数の選択対象に個別に設定される各優先度が互いに比較されることによって、複数の優先度の中から第１優先度を決定するステップと、
前記複数の選択対象の中から、前記第１優先度が設定された第１選択対象を選択するステップと、
前記第１選択対象をユーザに関連付けるステップと、
前記第１選択対象に設定される前記優先度を再設定するステップとを含む、方法。
【請求項１１】
情報処理装置であって、
前記情報処理装置は、
プログラムを記憶する記憶部と、
該プログラムを実行することにより、情報処理装置の動作を制御する制御部とを備えており、
前記制御部は、
複数の選択対象に個別に設定される各優先度が互いに比較されることによって、複数の優先度の中から第１優先度を決定し、
前記複数の選択対象の中から、前記第１優先度が設定された第１選択対象を選択し、
前記第１選択対象をユーザに関連付け、
前記第１選択対象に設定される前記優先度を再設定する、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、プログラム、プログラムを実行する方法、及び情報処理装置に関する。
【背景技術】
【０００２】
特許文献１に、プレイヤによって操作される通信端末から通信によってアクセス可能に構成され、前記通信端末によるプレイヤのゲームの実行を、プレイヤを一意に特定するためのプレイヤ識別情報に基づいて制御するゲーム制御装置であって、前記通信端末によるプレイヤ識別情報に対応した抽選操作に応じて、抽選対象となる複数のアイテムの中からいずれかのアイテムを選択するアイテム抽選手段と、プレイヤ識別情報と、少なくとも前記アイテム抽選手段により選択されたアイテムとを関連付けて記憶装置に記憶させる記憶手段と、プレイヤ識別情報に対応する所定の条件を満足する場合には、当該プレイヤ識別情報と関連付けて前記記憶装置が記憶するアイテムと一致するアイテムが選択される確率が、前記所定の条件を満足しない場合に当該アイテムが選択される確率よりも低くなるように、前記アイテム抽選手段を制御する抽選制御手段とを備えたゲーム制御装置が開示される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−７５１４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１の技術には、ユーザに関連付けられるアイテムなどの選択対象のバリエーションを増やせる余地がある。
【０００５】
本開示の一態様は、ユーザに関連付けられる選択対象のバリエーションを増やすことを目的とする。
【課題を解決するための手段】
【０００６】
本開示に係るプログラムは、プロセッサを備えるコンピュータにより実行される。ゲームプログラムは、プロセッサに、複数の選択対象に個別に設定される各優先度が互いに比較されることによって、複数の優先度の中から第１優先度を決定するステップと、複数の選択対象の中から、第１優先度が設定された第１選択対象を選択するステップと、第１選択対象をユーザに関連付けるステップと、第１選択対象に設定される優先度を再設定するステップとを実行させる。
【発明の効果】
【０００７】
本開示の一態様によれば、ユーザに関連付けられる選択対象のバリエーションを増やすことができる効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】ゲームシステムのハードウェア構成を示す図である。
【図２】ゲームシステムに含まれるサーバ及びユーザ端末の機能的構成を示すブロック図である。
【図３】ある実施の形態に係るゲーム画面を示す図である。
【図４】ある実施の形態に係るゲーム画面を示す図である。
【図５】ある実施の形態に係るサーバが、ゲームプログラムに基づいて実行する処理の流れを示すフローチャートである。
【図６】ある実施の形態に係るテーブルを示す図である。
【図７】ある実施の形態に係るゲーム画面を示す図である。
【図８】ある実施の形態に係るテーブルを示す図である。
【図９】ある実施の形態に係るテーブルを示す図である。
【図１０】ある実施の形態に係るテーブルを示す図である。
【図１１】ある実施の形態に係るヒストグラムを示す図である。
【発明を実施するための形態】
【０００９】
本開示に係るゲームシステムは、ユーザにゲームを提供するためのシステムである。以下、ゲームシステムについて図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
【００１０】
（ゲームシステム１のハードウェア構成）
図１は、ゲームシステム１のハードウェア構成を示す図である。ゲームシステム１は図示の通り、複数のユーザ端末１００と、サーバ２００とを含む。各ユーザ端末１００は、サーバ２００とネットワーク２を介して接続する。ネットワーク２は、インターネット及び図示しない無線基地局によって構築される各種移動通信システム等で構成される。この移動通信システムとしては、例えば、所謂３Ｇ、４Ｇ移動通信システム、ＬＴＥ（Long Term Evolution）、及び所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク（例えばWi-Fi（登録商標））等が挙げられる。
【００１１】
サーバ２００（コンピュータ、情報処理装置）は、ワークステーション又はパーソナルコンピュータ等の汎用コンピュータであってよい。サーバ２００は、プロセッサ２０と、メモリ２１と、ストレージ２２と、通信ＩＦ２３と、入出力ＩＦ２４とを備える。サーバ２００が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
【００１２】
ユーザ端末１００（コンピュータ、情報処理装置）は、スマートフォン、フィーチャーフォン、ＰＤＡ（Personal Digital Assistant）、又はタブレット型コンピュータ等の携帯端末であってよい。ユーザ端末１００は、ゲームプレイに適したゲーム装置であってもよい。ユーザ端末１００は図示の通り、プロセッサ１０と、メモリ１１と、ストレージ１２と、通信インターフェース（ＩＦ）１３と、入出力ＩＦ１４と、タッチスクリーン１５（表示部１５２）と、カメラ１７と、測距センサ１８とを備える。ユーザ端末１００が備えるこれらの構成は、通信バスによって互いに電気的に接続される。なお、ユーザ端末１００は、タッチスクリーン１５に代えて、又は、加えて、ユーザ端末１００本体とは別に構成されたディスプレイ（表示部１５２）を接続可能な入出力ＩＦ１４を備えていてもよい。
【００１３】
また、図１に示すように、ユーザ端末１００は、１つ以上のコントローラ１０２０と通信可能に構成されることとしてもよい。コントローラ１０２０は、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の通信規格に従って、ユーザ端末１００と通信を確立する。コントローラ１０２０は、１つ以上のボタン等を有していてもよく、該ボタン等に対するユーザの入力操作に基づく出力値をユーザ端末１００へ送信する。また、コントローラ１０２０は、加速度センサ、及び、角速度センサ等の各種センサを有していてもよく、該各種センサの出力値をユーザ端末１００へ送信する。
【００１４】
なお、ユーザ端末１００がカメラ１７及び測距センサ１８を備えることに代えて、又は、加えて、コントローラ１０２０がカメラ１７及び測距センサ１８を有していてもよい。
【００１５】
ユーザ端末１００は、例えばゲーム開始時に、コントローラ１０２０を使用するユーザに、該ユーザの名前又はログインＩＤ等のユーザ識別情報を、該コントローラ１０２０を介して入力させることが望ましい。これにより、ユーザ端末１００は、コントローラ１０２０とユーザとを紐付けることが可能となり、受信した出力値の送信元（コントローラ１０２０）に基づいて、該出力値がどのユーザのものであるかを特定することができる。
【００１６】
ユーザ端末１００が複数のコントローラ１０２０と通信する場合、各コントローラ１０２０を各ユーザが把持することで、ネットワーク２を介してサーバ２００などの他の装置と通信せずに、該１台のユーザ端末１００でマルチプレイを実現することができる。また、各ユーザ端末１００が無線ＬＡＮ（Local Area Network）規格等の無線規格により互いに通信接続する（サーバ２００を介さずに通信接続する）ことで、複数台のユーザ端末１００によりローカルでマルチプレイを実現することもできる。１台のユーザ端末１００によりローカルで上述のマルチプレイを実現する場合、ユーザ端末１００は、さらに、サーバ２００が備える後述する種々の機能の少なくとも一部を備えていてもよい。また、複数のユーザ端末１００によりローカルで上述のマルチプレイを実現する場合、複数のユーザ端末１００は、サーバ２００が備える後述する種々の機能を分散して備えていてもよい。
【００１７】
なお、ローカルで上述のマルチプレイを実現する場合であっても、ユーザ端末１００はサーバ２００と通信を行ってもよい。例えば、あるゲームにおける成績又は勝敗等のプレイ結果を示す情報と、ユーザ識別情報とを対応付けてサーバ２００に送信してもよい。
【００１８】
また、コントローラ１０２０は、ユーザ端末１００に着脱可能な構成であるとしてもよい。この場合、ユーザ端末１００の筐体における少なくとも何れかの面に、コントローラ１０２０との結合部が設けられていてもよい。該結合部を介して有線によりユーザ端末１００とコントローラ１０２０とが結合している場合は、ユーザ端末１００とコントローラ１０２０とは、有線を介して信号を送受信する。
【００１９】
図１に示すように、ユーザ端末１００は、外部のメモリカード等の記憶媒体１０３０の装着を、入出力ＩＦ１４を介して受け付けてもよい。これにより、ユーザ端末１００は、記憶媒体１０３０に記録されるプログラム及びデータを読み込むことができる。記憶媒体１０３０に記録されるプログラムは、例えばゲームプログラムである。
【００２０】
ユーザ端末１００は、サーバ２００等の外部の装置と通信することにより取得したゲームプログラムをユーザ端末１００のメモリ１１に記憶してもよいし、記憶媒体１０３０から読み込むことにより取得したゲームプログラムをメモリ１１に記憶してもよい。
【００２１】
以上で説明した通り、ユーザ端末１００は、該ユーザ端末１００に対して情報を入力する機構の一例として、通信ＩＦ１３、入出力ＩＦ１４、タッチスクリーン１５、カメラ１７、及び、測距センサ１８を備える。入力する機構としての上述の各部は、ユーザの入力操作を受け付けるように構成された操作部と捉えることができる。
【００２２】
例えば、操作部が、カメラ１７及び測距センサ１８の少なくとも何れか一方で構成される場合、該操作部が、ユーザ端末１００の近傍の物体１０１０を検出し、当該物体の検出結果から入力操作を特定する。一例として、物体１０１０としてのユーザの手、予め定められた形状のマーカーなどが検出され、検出結果として得られた物体１０１０の色、形状、動き、又は、種類などに基づいて入力操作が特定される。より具体的には、ユーザ端末１００は、カメラ１７の撮影画像からユーザの手が検出された場合、該撮影画像に基づき検出されるジェスチャ（ユーザの手の一連の動き）を、ユーザの入力操作として特定し、受け付ける。なお、撮影画像は静止画であっても動画であってもよい。
【００２３】
あるいは、操作部がタッチスクリーン１５で構成される場合、ユーザ端末１００は、タッチスクリーン１５の入力部１５１に対して実施されたユーザの操作をユーザの入力操作として特定し、受け付ける。あるいは、操作部が通信ＩＦ１３で構成される場合、ユーザ端末１００は、コントローラ１０２０から送信される信号（例えば、出力値）をユーザの入力操作として特定し、受け付ける。あるいは、操作部が入出力ＩＦ１４で構成される場合、該入出力ＩＦ１４と接続されるコントローラ１０２０とは異なる入力装置（図示せず）から出力される信号をユーザの入力操作として特定し、受け付ける。
【００２４】
（各装置のハードウェア構成要素）
プロセッサ１０は、ユーザ端末１００全体の動作を制御する。プロセッサ２０は、サーバ２００全体の動作を制御する。プロセッサ１０及び２０は、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、及びＧＰＵ（Graphics Processing Unit）を含む。
【００２５】
プロセッサ１０は後述するストレージ１２からプログラムを読み出し、後述するメモリ１１に展開する。プロセッサ２０は後述するストレージ２２からプログラムを読み出し、後述するメモリ２１に展開する。プロセッサ１０及びプロセッサ２０は展開したプログラムを実行する。
【００２６】
メモリ１１及び２１は主記憶装置である。メモリ１１及び２１は、ＲＯＭ（Read Only Memory）及びＲＡＭ（Random Access Memory）等の記憶装置で構成される。メモリ１１は、プロセッサ１０が後述するストレージ１２から読み出したプログラム及び各種データを一時的に記憶することにより、プロセッサ１０に作業領域を提供する。メモリ１１は、プロセッサ１０がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ２１は、プロセッサ２０が後述するストレージ２２から読み出した各種プログラム及びデータを一時的に記憶することにより、プロセッサ２０に作業領域を提供する。メモリ２１は、プロセッサ２０がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
【００２７】
本実施形態においてプログラムとは、ゲームをユーザ端末１００により実現するためのゲームプログラムであってもよい。あるいは、該プログラムは、該ゲームをユーザ端末１００とサーバ２００との協働により実現するためのゲームプログラムであってもよい。あるいは、該プログラムは、該ゲームを複数のユーザ端末１００の協働により実現するためのゲームプログラムであってもよい。また、各種データとは、ユーザ情報及びゲーム情報などのゲームに関するデータ、ならびに、ユーザ端末１００とサーバ２００との間又は複数のユーザ端末１００間で送受信する指示又は通知を含んでいる。
【００２８】
ストレージ１２及び２２は補助記憶装置である。ストレージ１２及び２２は、フラッシュメモリ又はＨＤＤ（Hard Disk Drive）等の記憶装置で構成される。ストレージ１２及びストレージ２２には、ゲームに関する各種データが格納される。
【００２９】
通信ＩＦ１３は、ユーザ端末１００における各種データの送受信を制御する。通信ＩＦ２３は、サーバ２００における各種データの送受信を制御する。通信ＩＦ１３及び２３は例えば、無線ＬＡＮ（Local Area Network）を介する通信、有線ＬＡＮ、無線ＬＡＮ、又は携帯電話回線網を介したインターネット通信、ならびに近距離無線通信等を用いた通信を制御する。
【００３０】
入出力ＩＦ１４は、ユーザ端末１００がデータの入力を受け付けるためのインターフェースであり、またユーザ端末１００がデータを出力するためのインターフェースである。入出力ＩＦ１４は、ＵＳＢ（Universal Serial Bus）等を介してデータの入出力を行ってもよい。入出力ＩＦ１４は、例えば、ユーザ端末１００の物理ボタン、カメラ、マイク、又は、スピーカ等を含み得る。サーバ２００の入出力ＩＦ２４は、サーバ２００がデータの入力を受け付けるためのインターフェースであり、またサーバ２００がデータを出力するためのインターフェースである。入出力ＩＦ２４は、例えば、マウス又はキーボード等の情報入力機器である入力部と、画像を表示出力する機器である表示部とを含み得る。
【００３１】
ユーザ端末１００のタッチスクリーン１５は、入力部１５１と表示部１５２とを組み合わせた電子部品である。入力部１５１は、例えばタッチセンシティブなデバイスであり、例えばタッチパッドによって構成される。表示部１５２は、例えば液晶ディスプレイ、又は有機ＥＬ（Electro-Luminescence）ディスプレイ等によって構成される。
【００３２】
入力部１５１は、入力面に対しユーザの操作（主にタッチ操作、スライド操作、スワイプ操作、及びタップ操作等の物理的接触操作）が入力された位置を検知して、位置を示す情報を入力信号として送信する機能を備える。入力部１５１は、図示しないタッチセンシング部を備えていればよい。タッチセンシング部は、静電容量方式又は抵抗膜方式等のどのような方式を採用したものであってもよい。
【００３３】
図示していないが、ユーザ端末１００は、該ユーザ端末１００の保持姿勢を特定するための１以上のセンサを備えていてもよい。このセンサは、例えば、加速度センサ、又は、角速度センサ等であってもよい。ユーザ端末１００がセンサを備えている場合、プロセッサ１０は、センサの出力からユーザ端末１００の保持姿勢を特定して、保持姿勢に応じた処理を行うことも可能になる。例えば、プロセッサ１０は、ユーザ端末１００が縦向きに保持されているときには、縦長の画像を表示部１５２に表示させる縦画面表示としてもよい。一方、ユーザ端末１００が横向きに保持されているときには、横長の画像を表示部１５２に表示させる横画面表示としてもよい。このように、プロセッサ１０は、ユーザ端末１００の保持姿勢に応じて縦画面表示と横画面表示とを切り替え可能であってもよい。
【００３４】
カメラ１７は、イメージセンサ等を含み、レンズから入射する入射光を電気信号に変換することで撮影画像を生成する。
【００３５】
測距センサ１８は、測定対象物までの距離を測定するセンサである。測距センサ１８は、例えば、パルス変換した光を発する光源と、光を受ける受光素子とを含む。測距センサ１８は、光源からの発光タイミングと、該光源から発せられた光が測定対象物にあたって反射されて生じる反射光の受光タイミングとにより、測定対象物までの距離を測定する。測距センサ１８は、指向性を有する光を発する光源を有することとしてもよい。
【００３６】
ここで、ユーザ端末１００が、カメラ１７と測距センサ１８とを用いて、ユーザ端末１００の近傍の物体１０１０を検出した検出結果を、ユーザの入力操作として受け付ける例をさらに説明する。カメラ１７及び測距センサ１８は、例えば、ユーザ端末１００の筐体の側面に設けられてもよい。カメラ１７の近傍に測距センサ１８が設けられてもよい。カメラ１７としては、例えば赤外線カメラを用いることができる。この場合、赤外線を照射する照明装置及び可視光を遮断するフィルタ等が、カメラ１７に設けられてもよい。これにより、屋外か屋内かにかかわらず、カメラ１７の撮影画像に基づく物体の検出精度をいっそう向上させることができる。
【００３７】
プロセッサ１０は、カメラ１７の撮影画像に対して、例えば以下の（１）〜（５）に示す処理のうち１つ以上の処理を行ってもよい。（１）プロセッサ１０は、カメラ１７の撮影画像に対し画像認識処理を行うことで、該撮影画像にユーザの手が含まれているか否かを特定する。プロセッサ１０は、上述の画像認識処理において採用する解析技術として、例えばパターンマッチング等の技術を用いてよい。（２）また、プロセッサ１０は、ユーザの手の形状から、ユーザのジェスチャを検出する。プロセッサ１０は、例えば、撮影画像から検出されるユーザの手の形状から、ユーザの指の本数（伸びている指の本数）を特定する。プロセッサ１０はさらに、特定した指の本数から、ユーザが行ったジェスチャを特定する。例えば、プロセッサ１０は、指の本数が５本である場合、ユーザが「パー」のジェスチャを行ったと判定する。また、プロセッサ１０は、指の本数が０本である（指が検出されなかった）場合、ユーザが「グー」のジェスチャを行ったと判定する。また、プロセッサ１０は、指の本数が２本である場合、ユーザが「チョキ」のジェスチャを行ったと判定する。（３）プロセッサ１０は、カメラ１７の撮影画像に対し、画像認識処理を行うことにより、ユーザの指が人差し指のみ立てた状態であるか、ユーザの指がはじくような動きをしたかを検出する。（４）プロセッサ１０は、カメラ１７の撮影画像の画像認識結果、及び、測距センサ１８の出力値等の少なくとも何れか１つに基づいて、ユーザ端末１００の近傍の物体１０１０（ユーザの手など）とユーザ端末１００との距離を検出する。例えば、プロセッサ１０は、カメラ１７の撮影画像から特定されるユーザの手の形状の大小により、ユーザの手がユーザ端末１００の近傍（例えば所定値未満の距離）にあるのか、遠く（例えば所定値以上の距離）にあるのかを検出する。なお、撮影画像が動画の場合、プロセッサ１０は、ユーザの手がユーザ端末１００に接近しているのか遠ざかっているのかを検出してもよい。（５）カメラ１７の撮影画像の画像認識結果等に基づいて、ユーザの手が検出されている状態で、ユーザ端末１００とユーザの手との距離が変化していることが判明した場合、プロセッサ１０は、ユーザが手をカメラ１７の撮影方向において振っていると認識する。カメラ１７の撮影範囲よりも指向性が強い測距センサ１８において、物体が検出されたりされなかったりする場合に、プロセッサ１０は、ユーザが手をカメラの撮影方向に直交する方向に振っていると認識する。
【００３８】
このように、プロセッサ１０は、カメラ１７の撮影画像に対する画像認識により、ユーザが手を握りこんでいるか否か（「グー」のジェスチャであるか、それ以外のジェスチャ（例えば「パー」）であるか）を検出する。また、プロセッサ１０は、ユーザの手の形状とともに、ユーザがこの手をどのように移動させているかを検出する。また、プロセッサ１０は、ユーザがこの手をユーザ端末１００に対して接近させているのか遠ざけているのかを検出する。このような操作は、例えば、マウス又はタッチスクリーンなどのポインティングデバイスを用いた操作に対応させることができる。ユーザ端末１００は、例えば、ユーザの手の移動に応じて、タッチスクリーン１５においてポインタを移動させ、ユーザのジェスチャ「グー」を検出する。この場合、ユーザ端末１００は、ユーザが選択操作を継続中であると認識する。選択操作の継続とは、例えば、マウスがクリックされて押し込まれた状態が維持されること、又は、タッチスクリーンに対してタッチダウン操作がなされた後タッチされた状態が維持されることに対応する。また、ユーザ端末１００は、ユーザのジェスチャ「グー」が検出されている状態で、さらにユーザが手を移動させると、このような一連のジェスチャを、スワイプ操作（またはドラッグ操作）に対応する操作として認識することもできる。また、ユーザ端末１００は、カメラ１７の撮影画像によるユーザの手の検出結果に基づいて、ユーザが指をはじくようなジェスチャを検出した場合に、当該ジェスチャを、マウスのクリック又はタッチスクリーンへのタップ操作に対応する操作として認識してもよい。
【００３９】
＜ゲームシステム１の機能的構成＞
図２は、ゲームシステム１に含まれるサーバ２００及びユーザ端末１００の機能的構成を示すブロック図である。サーバ２００及びユーザ端末１００のそれぞれは、図示しない、一般的なコンピュータとして機能する場合に必要な機能的構成、及び、ゲームにおける公知の機能を実現するために必要な機能的構成を含み得る。
【００４０】
ユーザ端末１００は、ユーザの入力操作を受け付ける入力装置としての機能と、ゲームの画像や音声を出力する出力装置としての機能を有する。ユーザ端末１００は、プロセッサ１０、メモリ１１、ストレージ１２、通信ＩＦ１３、及び入出力ＩＦ１４等の協働によって、制御部１１０及び記憶部１２０として機能する。
【００４１】
サーバ２００は、各ユーザ端末１００と通信して、ユーザ端末１００がゲームを進行させるのを支援する機能を有する。例えば、有価データの販売、サービスの提供などを実行する。ゲームがマルチプレイゲームである場合には、サーバ２００は、ゲームに参加する各ユーザ端末１００と通信して、ユーザ端末１００同士のやりとりを仲介する機能を有していてもよい。サーバ２００は、プロセッサ２０、メモリ２１、ストレージ２２、通信ＩＦ２３、及び入出力ＩＦ２４等の協働によって、制御部２１０及び記憶部２２０として機能する。
【００４２】
記憶部１２０及び記憶部２２０は、ゲームプログラム１３１、ゲーム情報１３２及びユーザ情報１３３を格納する。ゲームプログラム１３１は、ユーザ端末１００及びサーバ２００で実行するゲームプログラムである。ゲーム情報１３２は、制御部１１０及び制御部２１０がゲームプログラム１３１を実行する際に参照するデータである。ユーザ情報１３３は、ユーザのアカウントに関するデータである。記憶部２２０において、ゲーム情報１３２及びユーザ情報１３３は、ユーザ端末１００ごとに格納されている。
【００４３】
（サーバ２００の機能的構成）
制御部２１０は、記憶部２２０に格納されたゲームプログラム１３１を実行することにより、サーバ２００を統括的に制御する。例えば、制御部２１０は、ユーザ端末１００に各種データ及びプログラム等を送信する。制御部２１０は、ゲーム情報もしくはユーザ情報の一部又は全部をユーザ端末１００から受信する。ゲームがマルチプレイゲームである場合には、制御部２１０は、ユーザ端末１００からマルチプレイの同期の要求を受信して、同期のためのデータをユーザ端末１００に送信してもよい。
【００４４】
制御部２１０は、ゲームプログラム１３１の記述に応じて、レア度選択部２１１、キャラクタ提供部２１２、優先度設定部２１３、および通信部２１４として機能する。制御部２１０は、実行するゲームの性質に応じて、ユーザ端末１００におけるゲームの進行を支援するために、図示しないその他の機能ブロックとしても機能する。
【００４５】
レア度選択部２１１は、複数のレア度の中からいずれかのレア度を選択し、ユーザに関連付ける。レア度の詳細は後述する。キャラクタ提供部２１２は、選択されたレア度のキャラクタを選択し、ユーザに提供する。優先度設定部２１３は、ユーザに関連付けられたレア度に設定される優先度を再設定する。優先度の詳細は後述する。通信部２１４は、ユーザ端末１００との間で各種のデータ、信号、および情報を送受信する。
【００４６】
（ユーザ端末１００の機能的構成）
制御部１１０は、記憶部１２０に格納されたゲームプログラム１３１を実行することにより、ユーザ端末１００を統括的に制御する。例えば、制御部１１０は、ゲームプログラム１３１およびユーザの操作にしたがって、ゲームを進行させる。また、制御部１１０は、ゲームを進行させている間、必要に応じて、サーバ２００と通信して、情報の送受信を行う。
【００４７】
制御部１１０は、ゲームプログラム１３１の記述に応じて、操作受付部１１１、表示制御部１１２、および通信部１１３として機能する。制御部１１０は、実行するゲームの性質に応じて、ゲームを進行させるために、図示しないその他の機能ブロックとしても機能することができる。
【００４８】
操作受付部１１１は、タッチスクリーン１５（入力部１５１）の出力に基づいて、ユーザの入力操作を受け付ける。具体的には、操作受付部１１１は、ユーザの指などがタッチスクリーン１５に接近したことを、タッチスクリーン１５を構成する面の横軸及び縦軸からなる座標系の座標として検出する。例えば、操作受付部１１１は、入力部１５１に対する入力操作を受け付け、該入力操作の入力位置の座標を検出し、該入力操作の種類を特定する。操作受付部１１１は、入力操作の種類として、例えばタッチ操作、スライド操作、スワイプ操作、およびタップ操作等を特定する。また、操作受付部１１１は、連続して検知されていた入力が途切れると、タッチスクリーン１５から接触入力が解除されたことを検知する。
【００４９】
操作受付部１１１は、タッチスクリーン１５に対するユーザの操作を判別する。操作受付部１１１は、例えば、（１）「接近操作」、（２）「リリース操作」、（３）「タップ操作」、（４）「ダブルタップ操作」、（５）「長押し操作（ロングタッチ操作）」、（６）「ドラッグ操作（スワイプ操作）」、（７）「ムーブ操作」、（８）「フリック操作」、その他のユーザの操作を判別する。操作受付部１１１が判別するユーザの操作は、上記に限られない。例えば、タッチスクリーン１５が、ユーザがタッチスクリーン１５に対して押下する圧力の大きさを検出可能な機構を有する場合、操作受付部１１１は、ユーザにより押下された圧力の大きさを判別する。
【００５０】
（１）「接近操作」とは、ユーザが指などをタッチスクリーン１５に接近させる操作である。タッチスクリーン１５は、ユーザの指などが接近したこと（ユーザの指などがタッチスクリーン１５に接触したことを含む）をタッチスクリーン１５により検出し、検出したタッチスクリーン１５の座標に応じた信号を制御部１１０へ出力する。制御部１１０は、タッチスクリーン１５へのユーザの指などの接近を検出しない状態から、接近を検出したときに、状態が「タッチオン状態」になったと判別する。
【００５１】
（２）「リリース操作」とは、ユーザがタッチスクリーン１５を接近操作している状態を止める操作である。操作受付部１１１は、例えば、ユーザが指などをタッチスクリーン１５に接触させている状態から、指を離す操作をしたときに、ユーザの操作を「リリース操作」と判別する。制御部１１０は、タッチスクリーン１５へのユーザの指などの接近を検出している状態から、接近を検出しない状態になったときに、状態が「タッチオン状態」から「タッチオフ状態」になったと判別する。
【００５２】
（３）「タップ操作」とは、ユーザがタッチスクリーン１５に対して指などを接近させる接近操作をした後に、接近操作をした位置でリリース操作を行うことである。操作受付部１１１は、接近操作が検出されない状態（ユーザの指などがタッチスクリーン１５から離れており、タッチスクリーン１５がユーザの指などの接近を検出していない状態）から、タッチスクリーン１５の出力に基づいて、ユーザの指などが接近したことを検出した場合に、その検出した座標を「初期タッチ位置」として保持する。操作受付部１１１は、初期タッチ位置の座標と、リリース操作をした座標とがほぼ同一である場合（接近操作が検出された座標から一定範囲内の座標においてリリース操作の座標が検出された場合）に、ユーザの操作を「タップ操作」と判別する。
【００５３】
（４）「ダブルタップ操作」とは、ユーザがタップ操作を一定時間内に２回行う操作である。操作受付部１１１は、例えば、ユーザの操作をタップ操作と判別してから一定時間内に、タップ操作にかかる座標で再びタップ操作を判別した場合に、ユーザの操作を「ダブルタップ操作」と判別する。
【００５４】
（５）「長押し操作」とは、ユーザがタッチスクリーン１５を押し続ける操作である。タッチスクリーン１５は、ユーザの操作を検出して接近操作を判別してから、接近操作が検出された座標において接近操作が継続している時間が一定時間を超えた場合に、ユーザの操作を「長押し操作」（「長押し操作」を、「ロングタッチ操作」と称することもある）と判別する。
【００５５】
（６）「ドラッグ操作」とは、ユーザがタッチスクリーン１５に指などを接近させた接近状態を維持したまま、指をスライドさせる操作である。
【００５６】
（７）「ムーブ操作」とは、ユーザがタッチスクリーン１５において、接近操作を維持しつつ、タッチスクリーン１５に指などを接近させている位置を移動させてリリース操作を行う一連の操作をいう。
【００５７】
（８）「フリック操作」は、ユーザがムーブ操作を予め定められた時間よりも短い時間で行う操作をいう。フリック操作は、ユーザがタッチスクリーン１５で指を弾くような操作である。
【００５８】
表示制御部１１２は、タッチスクリーン１５の表示部１５２に対して、上述の各要素によって実行された処理結果が反映されたゲーム画面を出力する。表示制御部１１２は、各種オブジェクトのモーションを示すアニメーションを含むゲーム画面を、表示部１５２に表示してもよい。また、表示制御部１１２は、ＵＩ（User  Interface）オブジェクトを、ゲーム画面に重畳して描画してもよい。
【００５９】
通信部１１３は、サーバ２００との間で各種のデータ、信号、および情報を送受信する。
【００６０】
図２に示すサーバ２００およびユーザ端末１００の機能は、一例にすぎない。サーバ２００は、ユーザ端末１００が備える機能の少なくとも一部を備えていてもよい。また、ユーザ端末１００は、サーバ２００が備える機能の少なくとも一部を備えていてもよい。さらに、ユーザ端末１００およびサーバ２００以外の他の装置をゲームシステム１の構成要素とし、該他の装置にゲームシステム１における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラムを実行するコンピュータは、ユーザ端末１００、サーバ２００、および他の装置の何れであってもよいし、これらの複数の装置の組み合わせにより実現されてもよい。
【００６１】
（ゲーム概要）
ゲームシステム１に基づくゲームは、ユーザによって操作されるキャラクタ（第１キャラクタ、味方キャラクタ）が登場する任意のゲームである。このゲームは、例えば、ユーザによって操作されるキャラクタと、ゲームシステム１によって制御される他のキャラクタ（第２キャラクタ、敵キャラクタ）とが戦闘するゲームである。ユーザは、複数の異なるキャラクタを保有することができる。ユーザは、保有するキャラクタ群のうち少なくとも１つのキャラクタを選択して、ゲーム中に利用することができる。
【００６２】
図３は、ある実施の形態に係るゲーム画面３０１を示す図である。表示制御部１１２は、ゲームのプレイ中に、味方キャラクタ３１が敵キャラクタ４１と戦闘するゲーム画面３０１を、例えば図３に示すように表示部１５２に表示する。ゲーム画面３０１は、味方キャラクタ３１、および敵キャラクタ４１を少なくとも含む。ユーザは、味方キャラクタ３１を操作することによって、敵キャラクタ４１と戦闘させる。
【００６３】
ゲームシステム１に基づくゲームは、特定のジャンルのゲームに限らず、あらゆるジャンルのゲームであり得る。ゲームシステム１に基づくゲームは、例えば、テニス、卓球、ドッジボール、野球、サッカー、およびホッケーなどのスポーツを題材としたスポーツゲームであってもよい。あるいは、パズルゲーム、クイズゲーム、ＲＰＧ、アドベンチャーゲーム、シューティングゲーム、シミュレーションゲーム、育成ゲーム、およびアクションゲームなどであってもよい。
【００６４】
ゲームシステム１に基づくゲームは、特定のプレイ形態に対応したゲームに限らず、あらゆるプレイ形態に対応したゲームであり得る。ゲームシステム１に基づくゲームは、例えば、単一のユーザがプレイするシングルプレイゲーム、および、複数のユーザがプレイするマルチプレイゲームであり得る。ゲームシステム１に基づくゲームは、複数のユーザが対戦する対戦ゲーム、および、複数のユーザが協力する協力プレイゲームなどでもあり得る。
【００６５】
ユーザは、有償または無償の手段によって、ゲームにおいて利用可能な味方キャラクタを取得することができる。有償の手段の一例として、ゲームにおいて利用可能な味方キャラクタの何れかを決定し、ユーザに付与するキャラクタ提供が挙げられる。ユーザは、ゲームにおいて利用可能なキャラクタを、キャラクタ提供によって取得することができる。キャラクタ提供とは、ゲームシステム１が、複数のキャラクタの中から少なくとも１つのキャラクタを選択し、選択されたキャラクタをユーザに提供する処理を意味する。ゲームシステム１は、キャラクタ提供時に、ゲームに規定される規則に従ってキャラクタを選択したり、抽選によってキャラクタをランダムに選択したりすることができる。ゲームシステム１は、例えば、ユーザがゲームアイテムまたは仮想通貨を消費した場合、キャラクタ提供を実行することによって、選択されたキャラクタをユーザに提供する。
【００６６】
ゲームにおいて利用可能な各味方キャラクタは、複数のレア度（希少度、選択対象）のうちそのキャラクタに固有のレア度を有する。複数のレア度は、ゲームにおいて利用される要素である。レア度は、ゲームにおけるキャラクタの希少性を表す一種のゲームパラメータである。味方キャラクタのレア度が高いほど、ゲームにおけるその味方キャラクタの希少性が高いことを意味する。複数のレア度は、Ｓレア（第１希少度）、Ａレア（第２希少度）、およびＢレア（第３希少度）のいずれかに分類される。ＡレアはＢレアよりも高いレア度であり、ＳレアはＡレアよりも高いレア度である。キャラクタのレア度がより高いほど、ゲームにおける味方キャラクタの価値はより高い。例えば、味方キャラクタのレア度がより高いほど、味方キャラクタの性能はより高い。
【００６７】
ゲームにおいて、Ｓレア、Ａレア、およびＢレアに、固有の確率が設定されている。あるレア度に設定される確率は、１回のキャラクタ提供時に、そのレア度の味方キャラクタがユーザに提供される確率である。味方キャラクタのレア度が高いほど、キャラクタ提供時にそのキャラクタがユーザに提供される確率は低い。言い換えれば、味方キャラクタのレア度が高いほど、その味方キャラクタをユーザが取得できる可能性は低い。
【００６８】
本開示では、各レア度に設定される確率は、０以上かつ１未満のいずれかの値を取る。本開示では、一例として、Ｓレア、Ａレア、およびＢレアに０．１、０．４、および０．５の確率がそれぞれ設定される。各レア度に設定される確率に１００を掛けた値は、その確率に対応する百分率に一致する。したがって、Ｓレア、Ａレア、およびＢレアの各味方キャラクタは、１回のキャラクタ提供時に、それぞれ１０％、４０％、および５０％の確率でユーザに提供される。
【００６９】
（味方キャラクタの提供）
図４は、ある実施の形態に係るゲーム画面３０２を示す図である。表示制御部１１２は、ユーザによる所定の操作が受け付けられた場合、ユーザに提供される味方キャラクタの数をユーザに選択させるゲーム画面３０２を、例えば図４に示すように表示部１５２に表示する。ゲーム画面３０２は、メッセージ５１、ボタン５２、ボタン５３、およびパネル５４を含む。
【００７０】
メッセージ５１は、ゲーム画面３０２に対するユーザの操作を通じてユーザが味方キャラクタを取得するできることをユーザに説明するテキストを含む。ボタン５２には、ユーザに１つの味方キャラクタを提供する機能が設定されている。サーバ２００は、ボタン５２に対するタップ操作が受け付けられた場合、ユーザに１つの味方キャラクタを提供するためのキャラクタ提供処理を開始する。ボタン５３には、ユーザに３つの味方キャラクタを提供する機能が設定されている。ゲームシステム１は、ボタン５３に対するタップ操作が受け付けられた場合、ユーザに３つの味方キャラクタを提供するためのキャラクタ提供処理を開始する。
【００７１】
パネル５４は、キャラクタ提供に関する情報をユーザに通知するための領域である。パネル５４を通じて通知される情報は、例えば、規定回数のキャラクタ提供処理が実行された場合に、あるレア度のキャラクタがユーザに提供される回数の期待値である。図４では、表示制御部１１２は、１０回のキャラクタ提供処理が実行された場合に、各レア度のキャラクタがユーザに提供される回数の期待値を、各レア度に関連付けてパネル５４に表示する。表示制御部１１２は、詳細には、キャラクタ提供処理が１０回実行された場合にＳレア、Ａレア、およびＢレアの各キャラクタがユーザに提供される回数の期待値として、それぞれ１回、４回、および５回をパネル５４に表示する。これらの期待値は、レア度に設定される確率に応じた値である。
【００７２】
以下の例では、ユーザは、ボタン５２に対するタップ操作を入力する。表示制御部１１２は、ボタン５２に対するタップ操作が受け付けられた場合、ユーザに１つの味方キャラクタが提供されることをユーザに通知する特別な演出をゲーム画面３０２において実行することができる。通信部１１３は、ボタン５２に対するタップ操作が受け付けられた場合、１つの味方キャラクタをユーザに提供するためのキャラクタ提供処理の実行をサーバ２００に要求する要求情報をサーバ２００に送信する。サーバ２００において、通信部２１４は、ユーザ端末１００から送信された要求情報を受信する。サーバ２００は、要求情報が受信された場合、ユーザに１つの味方キャラクタを提供するためのキャラクタ提供処理を実行する。
【００７３】
（確率および優先度）
本開示において、Ｓレア、Ａレア、およびＢレアには、優先度がさらに設定される。サーバ２００は、複数のレア度に設定される優先度および確率に基づいて、キャラクタ提供処理を実行する。優先度は、１回のキャラクタ提供時にどのレア度の味方キャラクタをユーザに提供するのかを決定する際に用いられるパラメータである。本開示では、キャラクタ提供時に、最も小さい優先度が設定されるレア度の味方キャラクタが、ユーザに提供される。詳しくは後述するが、各レア度に設定される優先度は、キャラクタ提供処理が実行されるたびに、更新される。
【００７４】
図５は、ある実施の形態に係るサーバ２００が、ゲームプログラム１３１に基づいて実行する処理の流れを示すフローチャートである。図６は、ある実施の形態に係るテーブル６１を示す図である。テーブル６１は、複数のレア度に設定される各優先度を格納している。テーブル６１は、ゲーム情報１３２の一種として、記憶部２２０に記憶されている。
【００７５】
ステップＳ１において、レア度選択部２１１は、Ｓレア、Ａレア、およびＢレアにそれぞれ設定される各優先度を、テーブル６１から取得する。ステップＳ２において、レア度選択部２１１は、取得した各優先度を比較することによって、複数の優先度の中から最も小さい優先度（第１優先度）を決定する。ここでは−２が決定される。このように、ステップＳ２では、複数の優先度が比較されることによって、第１優先度が決定される。
【００７６】
ステップＳ３において、レア度選択部２１１は、複数のレア度の中から、決定された−２が設定されるＳレア（第１選択対象、第１レア度）を選択する。ステップＳ４において、キャラクタ提供部２１２は、選択されたＳレアをユーザに関連付ける。ステップＳ５において、キャラクタ提供部２１２は、複数の味方キャラクタ（アイテム）の中から、ユーザに関連付けられたＳレアに対応する１つの味方キャラクタ（第１アイテム）を選択し、ユーザに提供する。味方キャラタクの選択手法は、任意の手法でよい。ここでは、Ｓレアの味方キャラクタ３２が提供されたものとする。通信部２１４は、ユーザに提供された味方キャラクタ３２に関する情報を、ユーザ端末１００に送信する。ユーザ端末１００の通信部１１３は、送信された情報を受信する。
【００７７】
図７は、ある実施の形態に係るゲーム画面３０３を示す図である。表示制御部１１２は、味方キャラクタ３２に関する情報をサーバ２００から受信した場合、ユーザに提供された味方キャラクタ３２をユーザに通知するためのゲーム画面３０３を、例えば図７に示すように表示部に表示する。ゲーム画面３０３は、メッセージ５５および味方キャラクタ３２を含む。メッセージ５５は、ユーザに提供された味方キャラクタ３２が有するレア度をユーザに説明するテキストを含む。ユーザは、ゲーム画面３０３を視認することによって、１回のキャラクタ提供によってＳレアの味方キャラクタ３２を入手したことを認識する。
【００７８】
（優先度の再設定）
ステップＳ６において、優先度設定部２１３は、Ｓレアに設定される確率の逆数を特定する。Ｓレアに設定される確率は０．１であるため、逆数として１０が特定される。ステップＳ７において、優先度設定部２１３は、特定した逆数である１０を中央値とした正規分布に従う乱数（正規乱数）を生成する。優先度設定部２１３は、詳細には、Ｓレアに設定される確率の逆数を中央値として含む複数のパラメータの中からいずれかのパラメータが選択される確率が、Ｓレアに設定される確率の逆数が選択される確率を最大値として正規分布するように、複数のパラメータの中からいずれか１つを選択する。ここでは１２が生成されたものとする。ステップＳ８において、優先度設定部２１３は、Ｓレアに設定される優先度に、生成された１２を加算することによって、Ｓレアに設定される優先度を１０に再設定する。
【００７９】
ステップＳ９において、優先度設定部２１３は、複数のレア度に設定される各優先度を、同一の減算値だけ一律に減算する。ここでは減算値は１であるとする。優先度設定部２１３は、Ｂレアに設定される優先度から１を減算することによって、Ｂレアに設定される優先度を−１．４に再設定する。優先度設定部２１３は、Ａレアに設定される優先度から１を減算することによって、Ａレアに設定される優先度を−０．３に再設定する。優先度設定部２１３は、Ｓレアに設定される優先度から１を減算することによって、Ｓレアに設定される優先度を９に再設定する。優先度設定部２１３は、再設定後の各優先度をテーブル６１に書き込むことによって、テーブル６１を更新する。
【００８０】
図８は、ある実施の形態に係るテーブル６１を示す図である。優先度設定部２１３は、味方キャラクタ３２がユーザに提供された場合、テーブル６１に格納されるＳレア、Ａレア、およびＢレアの各優先度を、図８に示すように更新する。
【００８１】
ゲームシステム１は、味方キャラクタ３２がユーザに提供された後、ボタン５２に対するユーザのタップ操作が再び受け付けられた場合、１つの味方キャラクタをユーザに提供するためのキャラクタ提供処理を、再び実行する。この場合、レア度選択部２１１は、図８に示す更新後のテーブル６１に格納される各優先度を比較することによって、複数の優先度の中から最も小さい−１．４を決定する。レア度選択部２１１は、選択した−１．４が設定されたＢレアを、ユーザに関連付ける。これにより、キャラクタ提供部２１２は、複数の味方キャラクタの中から、ユーザに関連付けられたＢレアに対応する１つの味方キャラクタを選択し、ユーザに提供する。ここでは、Ｂレアの味方キャラクタ３３が提供されたものとする。
【００８２】
優先度設定部２１３は、ユーザに関連付けられたＢレアに設定される確率の逆数を特定する。Ｂレアに設定される確率は０．５であるため、逆数として２が特定される。優先度設定部２１３は、特定した逆数である２を中央値とした正規分布に従う乱数（正規乱数）を生成する。ここでは乱数として１が生成されたものとする。優先度設定部２１３は、Ｂレアに設定される優先度に、生成された１を加算することによって、Ｂレアに設定される優先度を０．４に再設定する。優先度設定部２１３は、乱数の加算後、複数のレア度に設定される各優先度から同一の減算値を減算する。これにより、優先度設定部２１３は、Ｓレア、Ａレア、およびＢレアの各優先度を再設定する。優先度設定部２１３は、再設定後の優先度をテーブル６１に書き込むことによって、テーブル６１を更新する。
【００８３】
図９は、ある実施の形態に係るテーブル６１を示す図である。優先度設定部２１３は、味方キャラクタ３３がユーザに提供された場合、テーブル６１に格納されるＳレア、Ａレア、およびＢレアの各優先度を、図９に示すように更新する。
【００８４】
ゲームシステム１は、味方キャラクタ３３がユーザに提供された後、ボタン５２に対するユーザのタップ操作が再び検出された場合、キャラクタ提供処理をさらに実行する。この場合、図９に示す更新後のテーブルに格納される各優先度を比較することによって、複数の優先度の中から最も小さい−１．３を決定する。レア度選択部２１１は、決定した優先度が設定されたＡレアを、ユーザに関連付ける。これにより、キャラクタ提供部２１２は、複数のＡレアの味方キャラクタの中から１つの味方キャラクタを選択し、ユーザに提供する。ここでは、味方キャラクタ３４が選択されたものとする。
【００８５】
優先度設定部２１３は、ユーザに関連付けられたＡレアに設定される確率の逆数を特定する。Ａレアに設定される確率は０．４であるため、逆数として２．５が特定される。優先度設定部２１３は、特定した逆数である２．５を中央値とした正規分布に従う乱数（正規乱数）を生成する。ここでは４が生成されたものとする。優先度設定部２１３は、Ａレアの優先度に、生成された４を加算することによって、Ａレアの優先度を２．７に再設定する。優先度設定部２１３は、乱数の加算後、複数のレア度に設定される各優先度から同一の減算値を減算することによって、レア、Ａレア、およびＢレアの各優先度を再設定する。優先度設定部２１３は、再設定後の優先度をテーブル６１に書き込むことによって、テーブル６１を更新する。
【００８６】
図１０は、ある実施の形態に係るテーブル６１を示す図である。優先度設定部２１３は、Ａレアの味方キャラクタ３４がユーザに提供された場合、テーブル６１に格納されるＳレア、Ａレア、およびＢレアの各優先度を、図１０に示すように更新する。レア度選択部２１１は、ゲームシステム１が次にキャラクタ提供処理を実行する場合、図９に示すテーブルに格納される各優先度を比較することによって、複数のレア度の中からユーザに関連付けられるレア度を選択する。従って、次のキャラクタ提供時には、最も小さい−１．６が設定されるＢレアが選択され、その結果、Ｂレアの味方キャラクタがユーザに提供される。
【００８７】
以上のように、サーバ２００は、複数のレア度に設定される確率に基づく単純な抽選によっていずれかのレア度を選択するのではなく、各優先度を比較することによっていずれかのレア度を選択する。選択されたレア度に設定される優先度は、選択されたレア度がユーザに関連付けられるたびに、確率とは異なり再設定される。これにより、サーバ２００は、ユーザに関連付けられるレア度のバリエーションを増やすことができる。
【００８８】
図７〜図１０に示すように、キャラクタ提供処理が実行されるたびに、Ｓレア、Ａレア、およびＢレアに設定される各優先度が、再設定される。多くの場合、各優先度は、キャラクタ提供処理の前の値とは異なる値に更新される。あるレア度に設定される確率が小さいほど、そのレア度が選択された場合に、そのレア度に設定される優先度が低くなる。再設定時に優先度に加算される値は、一定範囲に含まれる複数の値から抽選によってランダムに選択される乱数であるため、再設定される優先度はランダム性を有する。したがって、本実施形態のある局面において、レア度選択部２１１は、複数のレア度の中からいずれかのレア度を抽選によってランダムに選択していると言える。
【００８９】
（Ｓレアの味方キャラクタの提供間隔）
図１１は、ある実施の形態に係るヒストグラムを示す図である。図１１に示すヒストグラムは、本開示の手法によってＳレア、Ａレア、およびＢレアからいずれかを選択する処理を１０万回実行した場合に、Ｓレアが選択されてから次にＳレアが選択されるまでに必要な処理の実行回数（以下、間隔）と、１０万回の処理中に出現する各間隔の出現回数との関係を示す。ヒストグラムの横軸は間隔を示し、縦軸は出願回数を示す。図１１に示すように、本開示の手法によれば、Ｓレアが一度選択されてから次に選択されるまでの間に実行される選択処理の回数は、９回を中心として、ほぼ釣り鐘状に分布する。したがって、１回Ｓレアが選択された後、次にＳレアが選択されるのは、それから９回後の選択処理時の場合である可能性が最も高い。本開示によれば、Ｓレアが選択される際の間隔は、９回が最も多く、間隔がより小さくまたはより大きくなるほど、その出現回数はより少なくなる。これにより、同一のユーザにＳレアの味方キャラクタを連続して提供されにくくすることができる。
【００９０】
ユーザは、Ｓレアの提供確率が１０％の場合、Ｓレアの味方キャラクタが提供されるのは、１０回のキャラクタ提供のうち１回であると理解する。ユーザは、この理解に基づいて、一度Ｓレアの味方キャラクタが提供された場合、次にＳレアの味方キャラクタが提供されるのは９回後になることを直感的に期待する。本開示の手法によれば、このようなユーザの直感的な期待に合致した周期で、Ｓレアの味方キャラクタをユーザに提供することができる。言い換えれば、Ｓレアが選択される確率に応じた適切な周期で、Ｓレアの味方キャラクタをユーザに提供することができる。これにより、ゲームシステム１は、キャラクタ提供の不公平感を各ユーザに与えずに済むので、ゲームに対する各ユーザの満足感を向上させることができる。さらに、ゲームの運営者は、ゲームを通じて各ユーザが享受するゲーム体験をユーザごとに統一化しやすいので、ゲームをより適切に運営することができる。
【００９１】
最も低い確率が設定されるＳレアの優先度は、キャラクタ提供処理が実行されるたびに、一定の減算値だけ必ず減少される。したがって、キャラクタ提供を繰り返した場合、例えそれぞれのキャラクタ提供時にＳレアのキャラクタがユーザに提供されなくても、Ｓレアに設定される優先度の値は確実に低下してゆく。これにより、ある程度の回数のキャラクタ提供を繰り返せば、いずれはＳレアの優先度が最も小さくなって、Ｓレアが選択される結果となる。このように、ゲームシステム１に基づくゲームでは、キャラクタ提供をいくら繰り返してもＳレアのキャラクタがユーザに提供されない事態を、避けることができる。したがって、ユーザに不満を与えずに済むので、ゲームに対するユーザの満足度を高められる。
【００９２】
（変形例）
レア度選択部２１１は、複数のレア度に設定される各優先度の中に、最も小さい優先度が複数存在する場合、最も小さい優先度に設定される複数のレア度をまず選択する。レア度選択部２１１は、選択された複数のレア度の中から、いずれか１つのレア度を、所定の規則に従って選択するか、または抽選によってランダムに選択する。レア度選択部２１１は、例えば、いずれか１つのレア度を同一の確率でランダムに選択する。レア度選択部２１１は、あるいは、選択された複数のレア度に設定される各確率の比率でいずれかのレア度が選択されるように、いずれかのレア度を選択する。
【００９３】
例えば、Ｓレア、Ａレア、およびＢレアの優先度が、それぞれ１０、−１、および−１であったとする。この場合、レア度選択部２１１は、−１が設定されるＡレアおよびＢレアを両方とも選択する。レア度選択部２１１は、次に、例えばＡレアまたはＢレアがいずれも５０％の確率で選択されるように、抽選によってＡレアまたはＢレアをランダムに選択する。レア度選択部２１１は、あるいは、Ａレアが選択される確率とＢレアが選択される確率とが０．４：０．５になるように、抽選によってＡレアまたはＢレアをランダムに選択する。
【００９４】
優先度設定部２１３は、複数のレア度に設定される各優先度を初期化することができる。初期化のタイミングは、例えば、ゲームシステム１がキャラクタ提供処理によってユーザに味方キャラクタを初めて提供する前の、任意の時点である。優先度設定部２１３は、例えば、Ｓレア、Ａレア、およびＢレアの各優先度としていずれもゼロをテーブル６１に格納することによって、各優先度を初期化する。この場合、優先度設定部２１３は、最初のキャラクタ提供処理が実行される場合、Ｓレア、Ａレア、およびＢレアのうちいずれかを、抽選によって例えば同一の確率でランダムに選択する。この場合、Ｓレア、Ａレア、およびＢレアが実際に選択される確率は、それぞれに設定される確率とは異なり、いずれも３３％である。優先度設定部２１３は、あるいは、Ｓレア、Ａレア、およびＢレアのうちいずれかを、それぞれに設定される確率通りに選択されるように、抽選によってランダムに選択する。この場合、Ｓレア、Ａレア、およびＢレアが実際に選択される確率は、各レア度に設定される確率に等しく、それぞれ１０％、４０％、および５０％である。
【００９５】
キャラクタ提供部２１２は、複数の味方キャラクタの中から、抽選によって、ユーザに関連付けられたレア度数に対応する１つの味方キャラクタを、ランダムに選択することができる。キャラクタ提供部２１２は、複数の味方キャラクタの中から１つの味方キャラクタを選択する処理に、上述したレア度の選択処理と同一の処理を適用することもできる。
【００９６】
優先度設定部２１３は、上述したレア度の選択処理および優先度の再設定処理を、２回以上実行することによって、各優先度を初期化することもできる。この場合、優先度設定部２１３は、まずＳレア、Ａレア、およびＢレアの各優先度としていずれもゼロを設定する。レア度選択部２１１は、次に、Ｓレア、Ａレア、およびＢレアのうちいずれかを、それぞれに設定される確率通りに選択されるように、ランダムに選択する。優先度設定部２１３は、いずれかのレア度が選択された後、各優先度を再設定する。レア度選択部２１１は、再設定された各優先度に基づいて、いずれかのレア度を再び選択する。優先度設定部２１３は、いずれかのレア度が選択された後、各優先度を再設定する。キャラクタ提供部２１２は、優先度の初期化時には、選択されたレア度をユーザに関連付けない。したがって、選択されたレア度の味方キャラクタを選択したりユーザに提供したりすることもない。
【００９７】
優先度設定部２１３は、各優先度の比較に基づくレア度の選択および各優先度の再設定を２回以上続けて実行することによって、優先度を初期化する。これにより、Ｓレア、Ａレア、およびＢレアの優先度をランダムに初期化することができる。キャラクタ提供部２１２は、初期化後の各優先度を比較することによって、初回のキャラクタ提供時にユーザに関連付けられるレア度を選択する。これにより、初回のキャラクタ提供時にレア度がランダムに選択されるので、特定のレア度の味方キャラクタが初回のキャラクタ提供時に必ずユーザに提供されることを、防止できる。
【００９８】
複数のレア度には、確率を含む各種の第１パラメータが設定され得る。優先度設定部２１３は、選択されたレア度に設定される少なくともいずれかの第１パラメータに基づいて、選択されたレア度に設定される優先度を再設定することもできる。上述した確率は、第１パラメータの一例である。確率を含む様々な第１パラメータの少なくともいずれかに基づいて優先度が再設定されるので、ユーザに対するレア度の関連づけパターンのバリエーションを増やすことができる。
【００９９】
優先度設定部２１３は、選択された優先度に設定される確率に対応する任意の第２パラメータに基づいて、選択された優先度を再設定することもできる。上述した確率の逆数は、第２パラメータの一例である。
【０１００】
優先度設定部２１３は、選択されたレア度に設定される第１パラメータが小さいほど、選択されたレア度に設定される優先度を低くすることによって、優先度を再設定することもできる。優先度を低くすることは、優先度の値を大きくすることと同義である。これにより、一度選択されたレア度が続けて選択される可能性を下げることができる。確率の逆数に基づいて優先度を再設定することは、第１パラメータが小さいほど、選択されたレア度に設定される優先度を低くすることの一例である。
【０１０１】
優先度設定部２１３は、第１パラメータに応じて値が定まる第２パラメータを基準値とした確率分布に従う乱数を生成し、生成した乱数に基づいて優先度を再設定することもできる。第１パラメータの値が小さいほど、第２パラメータの値が大きくなってもよい。上述した確率の逆数は、第２パラメータの一例である。上述した逆数を中央値とした正規分布は、第２パラメータを基準値とした確率分布の一例である。上述した乱数を優先度に加算することは、乱数に基づいて優先度を再設定することの一例である。
【０１０２】
優先度設定部２１３は、複数のレア度に設定される各優先度を、同一の第３パラメータだけ一律に変更することもできる。優先度設定部２１３は、例えば、複数のレア度に設定される各優先度を、同一の第３パラメータだけ一律に増加させてもよい。上述した減算値は、第３パラメータの一例である。上述した減算値を各優先度から一律に減算することは、各優先度を同一の第３パラメータだけ変更することの一例である。
【０１０３】
レア度選択部２１１は、複数の優先度の中から、第１条件を満たす優先度を決定することもできる。レア度選択部２１１は、例えば、複数の優先度のうち最も大きい優先度を、複数の優先度の中から決定することもできる。
【０１０４】
レア度選択部２１１は、任意の複数の選択対象の中から第１選択対象を選択することもできる。上述した複数のレア度は、複数の選択対象の一例である。複数の選択対象は、例えば、ゲームにおいて利用可能な複数のキャラクタ、または、ゲームにおいて利用可能な複数のアイテムでもあり得る。レア度選択部２１１は、例えば、ゲームにおいて利用可能な複数の味方キャラクタ３１〜３４に設定される各優先度を比較することによって、いずれか１つの優先度を決定する。レア度選択部２１１は、味方キャラクタ３２〜３４の中から、決定された優先度が設定される味方キャラクタ３３を選択し、ユーザに関連付ける。キャラクタ提供部２１２は、ユーザに関連付けられた味方キャラクタ３３をユーザに提供する。
【０１０５】
選択対象は、選択対象に応じた報酬をユーザが後で獲得できる権利であってもよい。この場合、サーバ２００は、複数の権利の中からいずれかの権利を選択し、選択された権利をユーザに関連付けることによってユーザに提供する。ユーザ端末１００は、ユーザが例えば規定のステージをクリアした場合、ユーザに提供された権利に対応する報酬を、ユーザに提供する。
【０１０６】
選択対象は、ゲームにおいてユーザが味方キャラクタと戦闘させる敵キャラクタが有するレア度であってもよい。この場合、キャラクタ提供部２１２は、選択されたレア度を有する複数の敵キャラクタの中から、１つの敵キャラクタを選択し、ユーザに関連付ける。ユーザ端末１００は、ユーザに関連付けられた敵キャラクタが登場するステージを、ユーザにプレイさせる。
【０１０７】
選択対象は、ユーザがプレイ可能なゲームステージ、または、敵キャラクタ４１が戦闘時点で有する状態でもよい。
【０１０８】
本開示に係るプログラムは、ゲームプログラム１３１以外の任意のプログラムとしても実現される。本開示に係る複数の選択対象は、ゲームプログラム１３１に基づくゲーム以外に使用される要素であってもよい。複数のレア度は、複数の選択対象の一例である。
【０１０９】
〔ソフトウェアによる実現例〕
制御部１１０および２１０の制御ブロックは、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェアによって実現してもよい。
【０１１０】
後者の場合、制御部１１０、もしくはその両方を備えた情報処理装置は、各機能を実現するソフトウェアであるプログラムの命令を実行するＣＰＵ、上記プログラム及び各種データがコンピュータ（またはＣＰＵ）で読み取り可能に記録されたＲＯＭ（Read Only Memory）又は記憶装置（これらを「記録媒体」と称する）、上記プログラムを展開するＲＡＭ（Random Access Memory）などを備えている。そして、コンピュータ（またはＣＰＵ）が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【０１１１】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【０１１２】
〔付記事項〕
本発明の一側面に係る内容を列記すると以下の通りである。
【０１１３】
（項目１）  ゲームプログラム（１３１）について説明した。本開示のある局面によると、ゲームプログラムは、プロセッサ（２０）を備えるコンピュータ（サーバ２００）により実行される。ゲームプログラムは、プロセッサに、複数の選択対象（複数のレア度）に個別に設定される各優先度が互いに比較されることによって、複数の優先度の中から第１優先度を決定するステップ（Ｓ２）と、複数の選択対象の中から、第１優先度が設定された第１選択対象を選択するステップ（Ｓ３）と、第１選択対象をユーザに関連付けるステップ（Ｓ４）と、第１選択対象に設定される優先度を再設定するステップ（Ｓ８）とを実行させる、プログラム。
（項目２）  （項目１）において、複数の選択対象は、ゲームに使用される要素である。
（項目３）  （項目１）または（項目２）において、複数の選択対象に、それぞれ第１パラメータが設定されており、優先度を再設定するステップにおいて、第１選択対象に設定される第１パラメータに基づいて、第１選択対象に設定される優先度を再設定する。
（項目４）  （項目３）において、第１パラメータは、複数の選択対象の中から選択対象が選択される確率でり、再設定するステップにおいて、第１選択対象に設定される確率が小さいほど、第１選択対象に設定される優先度を低くする。
（項目５）  （項目３）において、再設定するステップにおいて、第１パラメータに応じて値が定まる第２パラメータを基準値とした確率分布に従う乱数を生成し、生成した乱数に基づいて優先度を再設定する。
（項目６）  （項目５）において、第１パラメータの値が小さいほど、第２パラメータの値が大きくなり、確率分布は、第２パラメータを中央値とする正規分布である。
（項目７）  （項目６）において、第１パラメータは、複数の選択対象の中から選択対象が選択される確率でり、第２パラメータは、確率の逆数である。
（項目８）  （項目２）〜（項目７）のいずれかにおいて、プログラムは、プロセッサに、複数の選択対象に設定される各優先度を、同一の第３パラメータだけ一律に変更するステップをさらに実行させる。
（項目９）  （項目２）において、複数の選択対象は、それぞれがゲームにおけるアイテムの希少性を表す複数のレア度であり、第１選択対象を選択するステップにおいて、複数のレア度の中から、第１優先度が設定される第１レア度を選択し、プログラムは、プロセッサに、複数のアイテムの中から、第１レア度に応じた第１アイテムを選択するステップと、第１アイテムをユーザに関連付けるステップとを実行させる。
【０１１４】
（項目１０）  ゲームプログラム（１３１）を実行する方法を説明した。本開示のある局面によると、ゲームプログラムは、プロセッサ（２０）を備えるコンピュータ（サーバ２００）により実行される。方法は、プロセッサが、複数の選択対象に個別に設定される各優先度が互いに比較されることによって、複数の優先度の中から第１優先度を決定するステップ（Ｓ２）と、複数の選択対象の中から、第１優先度が設定された第１選択対象を選択するステップ（Ｓ３）と、第１選択対象をユーザに関連付けるステップ（Ｓ４）と、第１選択対象に設定される優先度を再設定するステップ（Ｓ８）とを含む。
【０１１５】
（項目１１）  情報処理装置を説明した。本開示のある局面によると、該情報処理装置は、ゲームプログラム（１３１）を記憶する記憶部（２２０）と、ゲームプログラムを実行することにより、情報処理装置（サーバ２００）の動作を制御する制御部（２１０）とを備える。制御部は、複数の選択対象に個別に設定される各優先度が互いに比較されることによって、複数の優先度の中から第１優先度を決定し、複数の選択対象の中から、第１優先度が設定された第１選択対象を選択し、第１選択対象をユーザに関連付け、第１選択対象に設定される優先度を再設定する。
【符号の説明】
【０１１６】
１  ゲームシステム、２  ネットワーク、１０，２０  プロセッサ、１１，２１  メモリ、１２，２２  ストレージ、１３，２３  通信ＩＦ（操作部）、１４，２４  入出力ＩＦ（操作部）、１５  タッチスクリーン（表示部、操作部）、１７  カメラ（操作部）、１８  測距センサ（操作部）、３１〜３４  キャラクタ  ４１  敵キャラクタ、５１，５５  メッセージ、５２，５３  ボタン、５４  パネル、１００  ユーザ端末（情報処理装置）、１１０，２１０  制御部、１１１  操作受付部、１１２  表示制御部、１１３  通信部、１２０，２２０  記憶部、１３１  ゲームプログラム、１３２  ゲーム情報、１３３  ユーザ情報、１５１  入力部（操作部）、１５２  表示部、２００  サーバ、２１１  レア度選択部、２１２  キャラクタ提供部、２１３  優先度設定部、２１４  通信部、３０１〜３０３  ゲーム画面、１０１０  物体、１０２０  コントローラ（操作部）、１０３０  記憶媒体
【図１】
2020000732.tif 000003
【図２】
2020000732.tif 000004
【図３】
2020000732.tif 000005
【図４】
2020000732.tif 000006
【図５】
2020000732.tif 000007
【図６】
2020000732.tif 000008
【図７】
2020000732.tif 000009
【図８】
2020000732.tif 000010
【図９】
2020000732.tif 000011
【図１０】
2020000732.tif 000012
【図１１】
2020000732.tif 000013