以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
図1は、ゲームシステム1の全体的な構成を示す模式図である。本実施形態では、ゲームシステム1は、役の成立により特典(例えば点数等)を付与するゲームを提供する。ゲームの種類としては、ユーザが他のプレイヤ(PC、NPCを含む)と対戦可能な麻雀ゲームを例示する。麻雀ゲームでは、部屋の麻雀卓に積まれた136枚あまりの牌(識別情報)の山から牌をプレイヤ毎に1つずつ引き、14枚〜18枚の手牌(当該ユーザが所有する牌)の組合せからなる役の成立を目指す。なお、ゲームの種類は、役の成立により特典(例えば点数等)を付与するゲームであればこれに限らず、例えば、トランプを用いたゲーム(例えばポーカー)などであってもよい。
図1に示すように、ゲームシステム1は、複数のユーザ端末100と、ゲームサーバ200とを含む。各ユーザ端末100とゲームサーバ200とは、ネットワーク2を介して接続されている。ネットワーク2は、インターネット、図示しない無線基地局によって構築される各種移動通信システム(たとえば、所謂3G、4G移動通信システム、LTE(Long Term Evolution))、または所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(たとえばWi-Fi(登録商標))を含み得る。
(ユーザ端末およびゲームサーバの構成)
ユーザ端末100は、スマートフォン、フィーチャーフォン、PDA(Personal Digital Assistant)、またはタブレット型コンピュータ等の携帯端末であることがより好ましい。図1に示すように、ユーザ端末100は、通信バスによって互いに電気的に接続されたプロセッサ10と、メモリ11と、ストレージ12と、通信インターフェース(IF)13と、入出力IF14と、タッチスクリーン15とを備える。
入出力IF14は、USB(Universal Serial Bus)等を介した各種データ入出力機能、および音声入出力機能を備える。
タッチスクリーン15は、入力部151と表示部152とを組合せた電子部品である。入力部151は、タッチセンシティブなデバイスであり、たとえばタッチパッド等によって構成される。表示部152は、たとえば液晶ディスプレイ、または有機EL(Electro-Luminescence)ディスプレイ等によって構成される。入力部151は、タッチスクリーン15に対するユーザの指やスタイラスといった物体の接触または近接を検知し、操作入力として受け付ける。入力部151は、当該操作入力に含まれるユーザの作用(主に、タッチ操作、スワイプ操作、フリック操作、およびタップ操作等の物理的接触操作)が入力された画面位置の情報を検知して、該情報を外部へ情報信号として出力する機能を備える。タッチスクリーン15は、タッチセンシティブであればよい。タッチセンシティブなデバイスは、静電容量方式、抵抗膜方式等のどのような方式を採用したものであってもよい。
ゲームサーバ200は、ゲームに関する各種サービスを各ユーザ端末100に提供する。ゲームサーバ200は、ワークステーションまたはパーソナルコンピュータ等の汎用コンピュータであることが、より好ましい。図1に示すように、ゲームサーバ200は、通信バスによって互いに電気的に接続されたプロセッサ20と、メモリ21と、ストレージ22と、通信インターフェース(IF)23と、入出力IF24とを備える。
プロセッサ10、20は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等を含んで構成される。プロセッサ10は、ユーザ端末100全体の動作を制御する。プロセッサ20は、ゲームサーバ200全体の動作を制御する。
メモリ11、21は、ROM(Read Only Memory)およびRAM(Random Access Memory)等の揮発性記憶装置で構成され得る主記憶装置を含んで構成される。
ストレージ12、22は、フラッシュメモリまたはHDD(Hard Disk Drive)などの不揮発性記憶装置によって構成され得る補助記憶装置を含んで構成される。メモリ11には、プロセッサ10がストレージ12からロードした各種プログラムおよびデータが一時的に記憶される。メモリ21には、プロセッサ20がストレージ22からロードした各種プログラムおよびデータが一時的に記憶される。これによりメモリ11は、プロセッサ10に対して作業領域を提供する。メモリ21は、プロセッサ20に対して作業領域を提供する。
ゲームサーバ200のストレージ22には、ゲームプログラム等のゲームデータが格納される。ユーザ端末100のストレージ12には、ゲームサーバ200からダウンロードされるゲームプログラム等のゲームデータが格納される。当該ゲームプログラムは、メモリ11、21に展開される。プロセッサ10は、メモリ11に展開されるゲームプログラムを実行する。プロセッサ20は、メモリ21に展開されるゲームプログラムを実行する。メモリ11には、プロセッサ10が当該ゲームプログラムに従って動作している間に生成した各種ゲームデータも一時的に格納される。メモリ21には、プロセッサ20が当該ゲームプログラムに従って動作している間に生成した各種ゲームデータも一時的に格納される。
通信IF13、23は、ユーザ端末100とゲームサーバ200との間で各種データを送受信するための通信制御機能を備える。通信制御機能には、たとえば、無線LAN(Local Area Network)接続機能、有線LAN、無線LAN、携帯電話回線網を介したインターネット接続機能、近距離無線通信機能等が含まれる。
本実施形態では、各種データは、所定のゲームプログラム、ユーザ情報、ゲーム情報等のゲームデータ、それらをユーザ端末100とゲームサーバ200との間に送受信させる指示、および、ゲームを進行させるための指示を含む。
たとえばプロセッサ10は、通信IF13を介してユーザIDをゲームサーバ200に送信することによって、当該ユーザIDに関連付けられたオブジェクト(キャラクタ、配牌スキル、ツモスキル、配牌、ツモ牌、捨て牌等)に関する情報をゲームサーバ200から受信する。また、プロセッサ10は、ユーザ作用に基づいて麻雀卓に牌を配置し、ゲームの結果として取得されたゲームポイント(点棒)を、通信IF13を介してゲームサーバ200に送信する。
ゲームサーバ200の入出力IF24は、マウス、キーボード等の情報入力機器である入力部、および、液晶ディスプレイ等の出力部を備えており、コンピュータの情報をモニタリングするために用いられる。
(ユーザ端末の機能的構成)
図2は、ユーザ端末100の機能的構成を示す図である。ユーザ端末100は、プロセッサ10、メモリ11、ストレージ12、通信IF13、および入出力IF14等の協働によって、制御部110および記憶部120として機能し得る。記憶部120にはゲームプログラムが格納されている。このゲームプログラムは、主記憶上に展開されかつ制御部110において実行される。また、本実施形態では、このゲームプログラムは、プロセッサ10およびメモリ11を備えるユーザ端末100に対し、麻雀ゲームを進行させる制御部110および記憶部120としてユーザ端末100を機能させるプログラムである。
制御部110は、当該ゲームプログラムによって、作用受付部111、端末処理部112、タイマー部113、端末判定部114、表示制御部115、報酬計算部116、および送受信部117として機能し得る。制御部110が当該ゲームプログラムに従って動作している間に生成した各種ゲームデータ、および制御部110によって利用される各種ゲームデータも、主記憶上に一時的に格納される。
作用受付部111は、タッチスクリーン15の入力部151に対するユーザの作用を検知する。作用受付部111は、タッチスクリーン15およびその他の入出力IF14を介したコンソールによる操作指示等から、いかなる入力がなされたかを判別し、その結果を端末処理部112等の必要な要素に出力する。作用受付部111は、タッチスクリーン15に対する作用入力がなされた場合には、入力位置の座標情報および作用の種類(タッチ操作、スライド動作等)を検知する。また、作用受付部111は、連続して検知されていた入力が途切れることを検知することによって、タッチスクリーン15から接触入力が解除されたことを検知する。
端末処理部112は、ユーザ端末100全体の動作を制御し、各要素間におけるデータの送受信、およびゲームの実行に必要な演算処理その他の処理を行う。端末処理部112は、たとえば、作用受付部111によって検知された作用に基づいて、ゲームプログラムに従ったゲームを展開させ、その結果を示すゲーム画像を描画するよう、表示制御部115に指示する。また、端末処理部112は、タッチスクリーン15に対する操作入力に基づいて仮想空間内におけるゲームオブジェクトを操作する。また、端末処理部112は、タッチスクリーン15に対する操作入力および演算処理の結果等に基づいて、記憶部120に記憶されている各種データの更新等の処理を行う。なお、端末処理部112は、ゲームの進行状態に応じて、ゲーム空間の視野を指定するための仮想カメラの位置を制御してもよい。
タイマー部113は、麻雀部屋内の時間の経過を計測する。タイマー部113は、たとえば、牌がツモられた時刻を記憶部120に記憶させ、その後に経過した時間を測定する。タイマー部113は、測定することによって得られる時間情報を端末判定部114に提供する。端末判定部114は、タイマー部113および記憶部120を参照して、今回のツモから所定時間が経過したか否かなどを判定できる。
表示制御部115は、ゲームサーバ200から受信したユーザ情報、ゲームプログラムによる演算結果、およびユーザの入力部151に対する作用に基づいて、表示部152に表示される画像を生成する。本実施形態では、ユーザ端末100は、配牌、牌山、ツモ牌、捨て牌、ポン、チー、カン、ロンあがり、ツモあがり、流局等などの対局の開始から終了までに刻々と変化するゲーム情報をゲームサーバ200から取得し、この情報を用いて対局画面の画像を生成する。なお、これらのゲーム情報は、ユーザ端末100側においても記憶しているものであってもよい。表示制御部115は、端末処理部112によるゲーム進行制御に応じて表示画像を更新する。
報酬計算部116は、作用受付部111から受信した操作に基づいて、各ユーザに提供される報酬を算出して、ユーザに付与する。たとえば報酬計算部116は、ユーザに付与される点棒を算出し、ユーザに付与する。
送受信部117は、ゲームサーバ200から各種情報を受信したり、ゲームサーバ200に各種情報を送信したりする。送受信部117は、制御部110の制御によって各種情報をゲームサーバ200に対して送信する。ゲームサーバ200は、ネットワーク2および通信IF23を介して当該情報を受信し、送受信部211が情報の内容を識別して受け付ける。送受信部117は、たとえば、ユーザ端末100上で動作可能なゲームプログラム、ユーザ情報、ゲーム画面等のゲーム空間情報、自ユーザの配牌、牌山、他のユーザの捨て牌、他のユーザによるポン、チー、カン、ロンあがり、ツモあがり等のゲーム情報を、ゲームサーバ200から受信することができる。なお、これらの情報は、ユーザ端末100側においても記憶しているものであってもよい。一方、送受信部117は、ユーザ情報、自ユーザの捨て牌、自ユーザによるポン、チー、カン、ロンあがり、ツモあがり等のゲーム情報を、ゲームサーバ200に送信することができる。
記憶部120には、制御部110が前述の各部として機能するために必要なデータが記憶されている。当該データとしては、たとえば、ゲームプログラム、ゲーム情報、およびユーザ情報が含まれる。ゲーム情報としては、オブジェクト管理テーブル等が挙げられる。ユーザ情報としては、ユーザ管理テーブル等が挙げられる。
本実施形態では、ゲームプログラムは、ユーザの立場で麻雀ゲームを進めるユーザ側プログラムと、管理者の立場で当該麻雀ゲームを取り仕切る管理者側プログラムとによって構成されている。また、本実施形態では、複数のプレイヤのうちのいずれかがホストとして部屋を作り、他のプレイヤがゲストとして当該部屋に入ることで、対局が開始される。管理者側プログラムは、ホスト役のユーザによって操作されるユーザ端末100においてのみ起動される。
また、本実施形態では、麻雀ゲームを管理するために、図4〜図7に示す配牌スキル管理テーブル300、ツモスキル管理テーブル301、キャラクタ選択状態管理テーブル302、配牌スキル選択状態管理テーブル303、ツモスキル選択状態管理テーブル304、およびスキル発動条件管理テーブル305が、記憶部120に設けられている。
(ゲームサーバの機能的構成)
図3は、ゲームサーバ200の機能的構成を示すブロック図である。ゲームサーバ200は、各ユーザ端末100にゲーム進行に必要な情報を提供するゲーム提供機能を有している。ゲームサーバ200は、ユーザ端末100からゲーム情報を受信し、ユーザ端末100上で動作可能なゲームプログラム、Webページ(ゲーム画面等)、ユーザ情報およびゲームパラメータ等の各種ゲームデータ、各種通知等を送信する。ゲームサーバ200は、プロセッサ20、メモリ21、ストレージ22、通信IF23、入出力IF24等の協働によって、制御部210および記憶部220として機能し得る。
図3に示すように、制御部210は、記憶部220に格納されたゲームプログラムによって、送受信部211、サーバ処理部212、データ管理部213、マッチング部214、計測部215として機能し得る。本実施形態では、このゲームプログラムは、プロセッサ20およびメモリ21を備えるゲームサーバ200に対し、麻雀ゲームを進行させる制御部210および記憶部220としてゲームサーバ200を機能させるプログラムであり、管理者の立場で当該麻雀ゲームを取り仕切る上述の管理者側プログラムも含んでいる。
送受信部211は、各ユーザ端末100から送信される各種情報を受信したり、各ユーザ端末100に各種情報を送信したりする。
各ユーザ端末100は、制御部110の制御に基づいて各種情報をゲームサーバ200に対して送信する。ゲームサーバ200は、ネットワーク2および通信IF23を介して当該情報を受信し、送受信部211が情報の内容を識別して受け付ける。
送受信部211は、記憶部220に格納されている各種管理テーブルを参照する。送受信部211は、必要に応じてデータ管理部213によって更新された各種管理テーブルを参照して、必要な処理を実行する。当該情報には、各ユーザに配られる牌の組合せを特定するための配牌情報、配牌の後に残った牌を特定するための牌山情報、各ユーザによるポン、チー、カンなどの情報が含まれる。
また、送受信部211は、ユーザ端末100上で動作可能なゲームプログラム、ユーザ情報、ゲーム画面等のゲーム空間情報、各ユーザの配牌、牌山、各ユーザの捨て牌、各ユーザによるポン、チー、カン、ロンあがり、ツモあがり等のゲーム情報をユーザ端末100に送信する。
サーバ処理部212は、ゲームサーバ200全体の動作を制御し、各要素間におけるデータの送受信、および、ゲームの進行に必要な演算処理を行う。サーバ処理部212は、たとえば、送受信部211が受信したユーザ端末100からの情報または要求に基づいて、ゲームプログラムに従った演算処理を実行する。そして、その結果としての各種ユーザ情報、ゲーム情報等のゲームデータ、およびゲームプログラム等を、通信IF13を介してユーザ端末100に送信することによって、ユーザ端末100においてさらにゲームを進行させる。
データ管理部213は、サーバ処理部212における各種演算結果に基づいて、記憶部220に格納されている各種ゲームデータ、およびデータベースのレコードを、追加、更新、または削除することによって、必要な処理を実行する。
送受信部211は、例えば、ユーザが麻雀卓に牌を晒すようにユーザ端末100に作用を与えると、その結果としてユーザが保有するオブジェクト情報およびゲームポイントに関する情報をユーザ端末100から受信する。サーバ処理部212は、受信された情報に基づいて必要な処理を実行し、一方、データ管理部213はユーザ情報およびゲーム情報を更新する。
また、例えば、送受信部211がユーザ端末100から捨て牌を実行する要求を受信した場合、データ管理部213は、捨て牌の情報を、ユーザ情報と、捨て牌の配置位置等に関するゲーム情報とに関連付けて記憶する。
マッチング部214は、複数のユーザを所定のゲーム空間に関連付ける。たとえばマッチング部214は、ユーザがホストとして部屋を作る操作を行った場合、当該ユーザをホストとし、他のプレイヤをゲストとするグループをマッチングによって組成し、当該グループに属する複数のプレイヤを同じ麻雀部屋に一時的に関連付ける。
計測部215は、タイマー部113と同様に、麻雀部屋内の時間を計測する機能を有する。計測部215は、例えば、対局開始時に発動させたいスキルを選択するための画面が表示された時刻からの経過時間を計測する。計測部215は、麻雀部屋の時間情報を生成し、タイマー部113で生成された麻雀部屋の時間情報と照合する。これにより、ユーザ端末100とゲームサーバ200において麻雀部屋の時間情報が同期され、各種時間情報の計測および判定を円滑に実施し得る。
記憶部220には、ゲームプログラムおよびユーザの認証プログラム等が格納されている。また、記憶部220には、ユーザ管理テーブル等のユーザ情報、オブジェクト管理テーブル等のゲーム情報を管理するデータベースが構築されていてもよい。記憶部220には、図4〜図7に示す配牌スキル管理テーブル300、ツモスキル管理テーブル301、キャラクタ選択状態管理テーブル302、配牌スキル選択状態管理テーブル303、ツモスキル選択状態管理テーブル304、およびスキル発動条件管理テーブル305を設けるようにしてもよい。
(配牌スキル管理テーブル)
図4は、配牌スキル管理テーブル300の一例を示す図である。配牌スキル管理テーブル300には、筒子マスター、索子マスター、萬子マスター、字牌マスター、断ヤオマスター、三元メイカー、四喜メイカー、暗刻爆弾、順子爆弾、対子爆弾および槓子爆弾が、配牌スキルとして登録されている。配牌スキルは、対局開始時の配牌の組合せに関するスキルであり、図4に示す組合せが定められている。
図4を参照して、筒子マスターは8枚以上の筒子を配牌に含めるスキルであり、索子マスターは8枚以上の索子を配牌に含めるスキルであり、萬子マスターは8枚以上の萬子を配牌に含めるスキルであり、字牌マスターは9枚以上の字牌を配牌に含めるスキルであり、断ヤオマスターは10枚以上の断ヤオ牌を配牌に含めるスキルである。
三元メイカーは大三元のタネを6枚以上配牌に含めるスキルであり、四喜メイカーは小四喜のタネを7枚以上配牌に含めるスキルであり、暗刻爆弾は2組以上の暗刻を配牌に含めるスキルであり、順子爆弾は2組以上の順子を配牌に含めるスキルであり、対子爆弾は4組以上の対子を配牌に含めるスキルであり、槓子爆弾は1組以上の槓子を配牌に含めるスキルである。
なお、配牌スキル管理テーブル300に登録された配牌スキルは、対局毎に変更されることはなく、ゲームプログラムが更新されない限り、同じ登録状態が維持される。
(ツモスキル管理テーブル)
図5は、ツモスキル管理テーブル301の一例を示す図である。ツモスキル管理テーブル301には、筒子無双、索子無双、萬子無双、字牌無双、断ヤオ無双、ヤオ九無双、ないものねだり、強欲な右手、無難な左手、未来予知、危機察知能力、ぶっこ抜き、秘技ツバメ返し、怒涛のスリカエ、必殺河拾い、爆速街道、気合い乗せ、危機感知能力が、ツモスキルとして登録される。ツモスキルは、消費により効果を発生させるアイテムであり、より具体的には、対局中のツモ牌の引き等に関するスキルである。
図5を参照して、筒子無双は3巡連続で筒子を引き寄せるスキルであり、索子無双は3巡連続で索子を引き寄せるスキルである。萬子無双は3巡連続で萬子を引き寄せるスキルであり、字牌無双は3巡連続で字牌を引き寄せるスキルである。断ヤオ無双は3巡連続で断ヤオ牌を引き寄せるスキルであり、ヤオ九無双は3巡連続でヤオ九牌を引き寄せるスキルである。
ないものねだりは、3巡連続でこれまでに一度も引いていない牌を引き寄せるスキルである。強欲な右手は、3巡連続で既に手牌に持っている牌を引き寄せるスキルである。無難な左手は、3巡連続でまだ一度も捨てていない牌を引き寄せるスキルである。未来予知は、3回分の未来のツモ牌を予知するスキルである。危機察知能力は、捨てようとした牌が誰かの当たり牌だった場合、危機を察知して捨てないようにナビゲーションをしてくれるスキルである。ぶっこ抜きは、指定した4牌を山の4牌と入れ替えるスキルである。
秘技ツバメ返しは、手牌全てを山牌と入れ替えるスキルである。怒涛のスリカエは、ツモった牌が気に入らなければ、次の牌とすり替えることができるスキルである。必殺河拾いは、捨て牌を河から拾い、代わりに手牌1枚を河に置くスキルである。爆速街道は、3シャンテン以上あるときに限り、シャンテン数が1つ下がるツモをするスキルである。気合い乗せは、裏ドラが必ず乗るようにするスキルである。危機感知能力は、指定した種類の牌が危険牌かどうかわかるスキルである。
危機察知能力では、捨てようとする牌の指定が求められるのに対して、危機感知能力では、牌の種類の指定が求められるに留まる。このため、危機の到来を予知する能力としては、危機察知能力の方が危機感知能力よりも精度が高いと言える。
なお、シャンテンとは、最短で何回ツモればテンパイ可能かを示す用語である。また、ツモスキル管理テーブル301に登録されたツモスキルは、対局毎に変更されることはなく、ゲームプログラムが更新されない限り、同じ登録状態が維持される。
(キャラクタ/配牌スキル/ツモスキル選択状態管理テーブル)
図6(A)はキャラクタ選択状態管理テーブル302の一例を示す図であり、図6(B)は配牌スキル選択状態管理テーブル303の一例を示す図であり、図6(C)はツモスキル選択状態管理テーブル304の一例を示す図である。
キャラクタ選択状態管理テーブル302は、予め準備された複数のキャラクタのうち、各ユーザの操作により選択されたキャラクタを管理するためのテーブルである。図6(A)によれば、ユーザ1にはキャラクタAが関連付けられており、ユーザ2にはキャラクタBが関連付けられており、ユーザ3にはキャラクタCが関連付けられており、ユーザ4にはキャラクタDが関連付けられている。複数のキャラクタ各々には、選択可能となる配牌スキルとツモスキルとが対応付けられている。このため、ユーザは、いずれのキャラクタを関連付けるかによって、その後に選択可能となる配牌スキルとツモスキルとが異なることになる。
配牌スキル選択状態管理テーブル303は、各ユーザが選択したキャラクタに割り当てられている複数の配牌スキルのうち、対局に用いることができる配牌スキルとして予め定められた数(3個)の配牌スキルを管理するためのテーブルである。対局に用いることができる配牌スキルは、キャラクタ選択時においてはキャラクタに対応して定められているデフォルトの配牌スキルとなり、ユーザ操作により使用可能な配牌スキルを入れ替えることができる。図6(B)では、デフォルトの配牌スキルが関連付けられている例について説明する。ユーザ1により選択されているキャラクタAには、デフォルトの配牌スキルとして、三元メイカー、四喜メイカー、暗刻爆弾が定められている。また、ユーザ2により選択されているキャラクタBには、デフォルトの配牌スキルとして、四喜メイカー、字牌マスター、対子爆弾が定められている。ユーザ3により選択されているキャラクタCには、デフォルトの配牌スキルとして、三元メイカー、断ヤオマスター、暗刻爆弾が定められている。ユーザ4により選択されているキャラクタには、デフォルトの配牌スキルとして、三元メイカー、字牌マスター、対子爆弾により選択されている。このため、図6(B)に示すように、ユーザ1の配牌スキルとして、三元メイカー、四喜メイカー、暗刻爆弾が関連付けられ、ユーザ2の配牌スキルとして、四喜メイカー、字牌マスター、対子爆弾が関連付けられ、ユーザ3の配牌スキルとして、三元メイカー、断ヤオマスター、暗刻爆弾が関連付けられ、ユーザ4の配牌スキルとして、三元メイカー、字牌マスター、対子爆弾が関連付けられている。
ツモスキル選択状態管理テーブル304は、各ユーザが選択したキャラクタに割り当てられている複数のツモスキルのうち、ユーザ操作により各ユーザが自分のキャラクタに関連付けた予め定められた数(10個)のツモスキルを管理するためのテーブルである。図6(C)によれば、ユーザ1のキャラクタには、デフォルトのツモスキルとして、ヤオ九無双、無難な左手、強欲な右手を含む10個の配牌スキルが関連付けられている。ユーザ2のキャラクタには、デフォルトのツモスキルとして、必殺河拾い、字牌無双、怒涛のスリカエを含む10個の配牌スキルが関連付けられている。ユーザ3のキャラクタには、デフォルトのツモスキルとして、爆速街道、断ヤオ無双、危機感知能力を含む10個の配牌スキルが関連付けられている。ユーザ4のキャラクタには、デフォルトのツモスキルとして、ヤオ九無双、気合い乗せ、ないものねだりを含む10個の配牌スキルが関連付けられている。なお、ツモスキルについては、使用可能回数が設定されており、ツモスキルは、当該使用可能回数だけ発動させることができる。
キャラクタ選択状態管理テーブル302、配牌スキル選択状態管理テーブル303、およびツモスキル選択状態管理テーブル304の登録状態は、ユーザ操作によって以下のようにして変更される。
つまり、図8(A)に示すキャラクタ詳細画面がユーザ端末100の表示部152に表示されている状態で、ユーザがキャラクタCHをタッチすると、図8(B)に示すキャラクタ選択画面に更新される。キャラクタ選択画面では、キャラクタA〜キャラクタDが表示され、ユーザが所望のキャラクタにタッチすると、当該ユーザに関連付けてキャラクタ選択状態管理テーブル302に登録されているキャラクタが、タッチされたキャラクタに変更される。
また、図8(A)に示すキャラクタ詳細画面がユーザ端末100の表示部152に表示されている状態でユーザが配牌スキル一覧HSをタッチすると、図8(C)に示す配牌スキル選択画面に更新される。配牌スキル選択画面では、選択中のキャラクタに対応付けられている配牌スキルが表示され、ユーザが所望の配牌スキルにタッチすると、当該ユーザのキャラクタに関連付けて配牌スキル選択状態管理テーブル303に登録されている配牌スキルが、タッチされた配牌スキルに変更される。
さらに、図8(A)に示すキャラクタ詳細画面上でユーザがツモスキル一覧TSをタッチすると、当該キャラクタ詳細画面は、図8(D)に示すツモスキル選択画面に更新される。ツモスキル選択画面では、選択中のキャラクタに対応付けられているツモスキルが表示され、ユーザが所望のツモスキルにタッチすると、当該ユーザのキャラクタに関連付けてツモスキル選択状態管理テーブル304に登録されているツモスキルが、タッチされたツモスキルに変更される。
(スキル発動条件管理テーブル)
図7は、スキル発動条件管理テーブル305の一例を示す図である。スキル発動条件管理テーブル305は、配牌スキル選択状態管理テーブル303に登録された配牌スキルの発動条件を、ユーザ毎に設定するためのテーブルである。
同じ配牌スキルを複数のユーザが発動させると、当該複数のユーザのいずれも役を成立させることができない可能性や、役を成立させる割合を極端に低下させてしまう可能性がある。例えば、三元メイカーが目指す大三元のタネは、白、發および中の3種類であり、麻雀牌の中には12枚しか含まれない。このため、2人のユーザが三元メイカーを発動させた場合には、当該タネが6枚ずつ各ユーザに配られ、結果的にいずれのユーザも役を成立させることができない可能性がある。
そこで、同じ配牌スキルが複数のユーザに関連付けられている場合には、いずれか1人のユーザに対してだけ当該配牌スキルが発動されるように、スキル発動条件が設定される。具体的には、2〜12のいずれかを示すサイコロの出目の和のうち、当該複数のユーザ間で重複しない出目の和が、当該複数のユーザの各々に対して割り当てられる。
また、配牌スキルが発動される確率は、当該複数のユーザ間で同じ確率とされる。具体的には、割り当てる出目の和を構成する2つの出目の組合せの数が、当該複数のユーザ間で同じ数とされる。例えば、全部で7通りの組合せのいずれかにより構成される2つの出目の和を当該複数のユーザの1人に対して割り当てた場合は、当該複数のユーザのうちの他のユーザに対しても、全部で7通りの組合せのいずれかにより構成される2つの出目の和が割り当てられる。
より具体的に例えると、出目の和が4となる2つの出目の組合せは、(1,3)、(2,2)、(3,1)の3通りであり、出目の和が5となる2つの出目の組合せは、(1,4)、(2,3)、(3,2)、(4,1)の4通りである。また、出目の和が2となる2つの出目の組合せは、(1,1)の1通りであり、出目の和が7となる2つの出目の組合せは、(1,6)、(2,5)、(3,4)、(4,3)、(5,2)、(6,1)の6通りである。さらに、出目の和が9となる2つの出目の組合せは、(3,6)、(4,5)、(5,4)、(6,3)の4通りであり、出目の和が10となる2つの出目の組合せは、(4,6)、(5,5)、(6,4)の3通りである。このため、例えば、同じ配牌スキルが3人のユーザに関連付けられている場合には、例えば、出目の和として4および5が1人目のユーザに割り当てられ、出目の和として2および7が2人目のユーザに割り当てられ、出目の和として9および10が3人目のユーザに割り当てられる。また、例えば、同じ配牌スキルが2人のユーザに関連付けられている場合には、例えば、出目の和として2〜5が1人目のユーザに割り当てられ、出目の和として9〜12が2人目のユーザに割り当てられる。こうして割り当てられた出目の和は、スキル発動条件に相当する。この結果、スキル発動条件管理テーブル305には、例えば図7に示すようにスキル発動条件が設定される。
図7によれば、ユーザ1にとっては、サイコロの出目の和が4または5であることが三元メイカーの発動条件となり、サイコロの出目の和が2〜5のいずれかであることが四喜メイカーの発動条件となり、サイコロの出目の和が3または4または6であることが暗刻爆弾の発動条件となる。ユーザ2にとっては、サイコロの出目の和が9〜12のいずれかであることが四喜メイカーの発動条件となり、サイコロの出目の和が2または5または6であることが字牌マスターの発動条件となり、サイコロの出目の和が8または9または12であることが対子爆弾の発動条件となる。
ユーザ3にとっては、サイコロの出目の和が2または7であることが三元メイカーの発動条件となり、サイコロの出目の和が5以上であることが断ヤオマスターの発動条件となり、サイコロの出目の和が8または10または11であることが暗刻爆弾の発動条件となる。ユーザ4にとっては、サイコロの出目の和が9または10であることが三元メイカーの発動条件となり、サイコロの出目の和が8または9または12であることが字牌マスターの発動条件となり、サイコロの出目の和が2または5または6であることが対子爆弾の発動条件となる。
図7によれば、三元メイカーが発動されるサイコロの出目の組合せは、ユーザ1、3および4のいずれについても7通りであり、四喜メイカーが発動されるサイコロの出目の組合せは、ユーザ1および2のいずれについても10通りである。また、字牌マスターが発動されるサイコロの出目の組合せは、ユーザ2および4のいずれについても10通りであり、ユーザ3に対して断ヤオマスターが発動されるサイコロの出目の組合せは、30通りである。さらに、暗刻爆弾が発動されるサイコロの出目の組合せは、ユーザ1および3のいずれについても10通りであり、対子爆弾が発動されるサイコロの出目の組合せは、ユーザ2および4のいずれについても10通りである。
このように、配牌スキルの発動条件は、当該配牌スキルが関連付けられるユーザの数に応じて異なる。具体的には、当該ユーザの数が少なくなるほど、発動確率が比較的高くなるように設定される。これによって、当該ユーザの数にかかわらず予め定められた発動条件が設定されるものと比較して、配牌スキルが発動される可能性を極力高めることができ、ゲームの興趣を向上させることができる。
図9(A)に示す発動スキル選択画面は、配牌スキル選択状態管理テーブル303上でユーザに関連付けられた配牌スキルと、スキル発動条件管理テーブル305上でユーザに設定されたスキル発動条件とに基づいて、ユーザ端末100の表示部152に表示される。発動スキル選択画面では、ユーザに関連付けられている3個の配牌スキルのうちから、開始する対局に用いる配牌スキルをタッチ操作により選択する。発動スキル選択画面は、対局開始毎に表示される。このため、対局に用いる配牌スキルは、対局毎に選択可能となる。発動スキル選択画面において配牌スキルが選択されると対局が開始される。
対局が開始されると、まず、図9(B)に示すサイコロ演出画面がユーザ端末100の表示部152に表示される。ユーザがタッチした配牌スキルは、当該サイコロ演出画面に現れた出目の和が当該配牌スキルの発動条件に合致した場合に発動される。
例えば、ユーザ1が発動スキル選択画面上で四喜メイカーを選択していた場合、サイコロ演出画面に現れたサイコロの出目の和が6を示せば、四喜メイカーがユーザ1に対して発動される。この結果、ユーザ1に対しては、小四喜のタネが7枚以上含まれるように配牌が実行される。
(対局画面)
麻雀では、家(自家または他家)、副露、晒すなどの専門用語が用いられる。ここで、家はユーザ(プレイヤ)を意味し、自家は自ユーザを意味し、他家は他ユーザ(他プレイヤ)を意味する。また、副露は、ポン、チー、大明槓、暗槓、小明槓の総称であり、晒すは牌の模様を他ユーザに見せることを意味する。
図9(C)は、縦長に表示された対局画面の一例を示す図である。対局画面としては、麻雀卓を自家の視点(斜め上)から眺めた画面が表示される。麻雀卓の中央には、自家および他家の捨て牌を表示するための河エリアRVが割り当てられており、河エリアRVの下側には、自家の手牌を表示するための手牌エリアHAが割り当てられている。また、手牌エリアHAの下側には、自家に関連付けられたツモスキルを表示するためのツモスキルエリアTAが割り当てられている。
対局が始まると、各家は、牌山からのツモ牌、河エリアRVへの捨て牌、他家の捨て牌に対する副露(ポン、チー、大明槓)、自家の手牌に対する副露(暗槓、小明槓)などを繰り返しながら、対局を進める。
手牌エリアHAに表示されたいずれかの手牌がタッチ(図9(D)の対局画面中におけるD字状の図形はタッチ操作の位置を示す)されると、図9(D)に示すように、河エリアRVの下端近傍にガイド枠(所定の目安画像)GFが表示されるとともに、タッチされた手牌が手牌エリアHAの上側つまり河エリアRV側に拡大表示される。当該拡大表示は、内部処理的には、牌の3Dモデルを垂直上向き方向に移動させることで、当該牌を大きく見せる処理であり、表示位置はタッチ操作位置よりも上方の位置とされる。これにより、牌を捨てるための操作を直感的にわかりやすく遊技者に認識させることができる。
手牌エリアHA内で開始されたタッチ操作の位置を、手牌エリアHA内において横方向に移動させると(水平方向への操作)、移動前にタッチされていた手牌の表示が通常表示に戻され、現時点でタッチされている手牌が手牌エリアHAの上側つまり河エリアRV側に拡大表示される(図9(E)参照)。また、手牌エリアHA内で開始されたタッチ操作の位置を、手牌エリアHAよりも下方のエリア(ツモスキルエリアTAを含む)内に移動させて横方向に移動させることによっても、当該タッチ位置の鉛直方向に位置する手牌が特定されて、当該牌が手牌エリアHAの上側つまり河エリアRV側に拡大表示される。なお、拡大表示の段階は、捨て牌の候補を選んでいる段階とし、この段階では牌を捨てる意思があるとはみなさない。このように、手牌は、縦長の表示画面うち短い辺に沿った水平方向に整列表示されている。このため、例えば右手でユーザ端末100を把持した状態で、右手の親指でタッチ操作して水平方向に移動させることにより、片手で捨て牌の候補を選択することができ、操作性を向上させることができる。
捨て牌の候補を選択した状態で、タッチ操作の位置を河エリアRVに移動させて当該タッチ操作を解除するドラッグ&ドロップ操作が行われると(垂直方向への操作)、当該捨て牌の候補が捨てられる。これにより、拡大表示されていた手牌は、手牌から除外され、河エリアRVに移動して縮小表示される。このように、捨て牌の候補を捨てる操作と、捨て牌の候補を選択(特定)する操作とを異ならせている。また、手牌エリアHAの上端よりも上側にタッチ操作の位置が移動されると、牌を捨てる意思があるとみなされ、手牌エリアHAの上端よりも上側のエリア(河エリアRV、手牌エリアHAの上端から河エリアRVの下端に達するまでのエリア)においてタッチ操作の位置を横方向に移動させても(左右にぶれても)捨て牌の候補は変更されない。これにより、タッチ操作の位置を誤って移動させることにより所望の手牌と異なる手牌が捨てられる懸念が軽減される。また、河エリアRVは、手牌エリアHAの上方に設けられている。このため、例えば右手でユーザ端末100を把持した状態で、右手の親指によるタッチ操作を垂直方向に移動させることにより、片手で捨て牌の候補を捨てることができ、操作性を向上させることができる。
ツモスキルは、ツモスキルエリアTAに表示された所望のツモスキルをタッチし、かつタッチ操作の位置を対局画面の中央のツモスキル発動エリアTH内に移動させることにより発動する。ツモスキルを発動させると、当該ツモスキルに対応して牌山における牌の入れ替えの実行など、当該ツモスキルに対応する処理が実行される。対局は、自家または他家のツモあがり、自家または他家のロンあがり、あるいは流局によって終了する。また、ツモスキルエリアTAは、手牌エリアHAの下方に設けられている。このため、例えば右手でユーザ端末100を把持した状態で、右手の親指によるタッチ操作をツモスキルエリアTAからツモスキル発動エリアTHに垂直方向に移動させることにより、片手でツモスキルを発動させることができ、操作性を向上させることができる。
(動作について)
ユーザ端末100の制御部110は、記憶部120に記憶されたユーザ側プログラムに従って、図10に示すキャラクタ/スキル選択処理を実行する。
まずステップS1で、図8(A)に示すキャラクタ/スキル詳細画面をタッチスクリーン15の表示部152に表示する。ステップS2では、キャラクタ/スキル詳細画面上のキャラクタCHに対するタッチ操作が行われたか否かを判定する。キャラクタCHに対するタッチ操作が行われたと判定されたときは、ステップS3に進み、図8(B)に示すキャラクタ選択画面をタッチスクリーン15の表示部152に表示する。
ステップS4では、キャラクタ選択画面上の所望のキャラクタに対するタッチ操作が行われたか否かを判定する。ステップS4において所望のキャラクタに対するタッチ操作が行われたと判定されたときには、ステップS1へ進み、タッチ操作されたキャラクタに対応するキャラクタ/スキル詳細画面をタッチスクリーン15の表示部152に表示する。これにより、ユーザに関連付けられているキャラクタをタッチ操作されたキャラクタに変更できる。
ステップS4において所望のキャラクタに対するタッチ操作が行われたと判定されなかったときには、ステップS5において、キャラクタ選択画面上の「戻る」に対するタッチ操作が行われたか否かを判定する。ステップS5において「戻る」に対するタッチ操作が行われたと判定されなかったときには、ステップS4へ進む。一方、ステップS5において「戻る」に対するタッチ操作が行われたと判定されたときには、キャラクタを変更せずにステップS1へ戻る。
ステップS2でキャラクタCHに対するタッチ操作が行われたと判定されなかったときは、ステップS6に進み、キャラクタ詳細画面上の配牌スキル一覧HSに対するタッチ操作が行われたか否かを判定する。配牌スキル一覧HSに対するタッチ操作が行われたと判定されたときは、ステップS7に進み、図8(C)に示す配牌スキル選択画面をタッチスクリーン15の表示部152に表示する。
ステップS8では、配牌スキル選択画面上の所望の配牌スキルに対するタッチ操作が行われたか否かを判定する。ステップS8において所望の配牌スキルに対するタッチ操作が行われたと判定されたときには、ステップS1へ進み、タッチ操作された配牌スキルが配牌スキル一覧HSに現れたキャラクタ/スキル詳細画面をタッチスクリーン15の表示部152に表示する。これにより、ユーザに関連付けられている配牌スキルをタッチ操作された配牌スキルに変更できる。
ステップS8において所望の配牌スキルに対するタッチ操作が行われたと判定されなかったときには、ステップS9において、配牌スキル選択画面上の「戻る」に対するタッチ操作が行われたか否かを判定する。ステップS9において「戻る」に対するタッチ操作が行われたと判定されなかったときには、ステップS8へ進む。一方、ステップS9において「戻る」をタッチするタッチ操作が行われたと判定されたときには、配牌スキルを変更せずにステップS1へ戻る。
ステップS6で配牌スキル一覧HSに対するタッチ操作が行われたと判定されなかったときは、ステップS10に進み、キャラクタ詳細画面上のツモスキル一覧TSに対するタッチ操作が行われたか否かを判定する。ツモスキル一覧TSに対するタッチ操作が行われたと判定されたときは、ステップS11に進み、図8(D)に示すツモスキル選択画面をタッチスクリーン15の表示部152に表示する。
ステップS12では、ツモスキル選択画面上の所望のツモスキルに対するタッチ操作が行われたか否かを判定する。ステップS12において所望のツモスキルに対するタッチ操作が行われたと判定されたときには、ステップS1へ進み、タッチ操作されたツモスキルがツモスキル一覧TSに現れたキャラクタ/スキル詳細画面をタッチスクリーン15の表示部152に表示する。これにより、ユーザに関連付けられているツモスキルをタッチ操作されたツモスキルに変更できる。
ステップS12において所望のツモスキルに対するタッチ操作が行われたと判定されなかったときには、ステップS13において、ツモスキル選択画面上の「戻る」に対するタッチ操作が行われたか否かを判定する。ステップS13において「戻る」に対するタッチ操作が行われたと判定されなかったときには、ステップS12へ進む。一方、ステップS13において「戻る」をタッチするタッチ操作が行われたと判定されたときには、ツモスキルを変更せずにステップS1へ戻る。
ステップS10でツモスキル一覧TSに対するタッチ操作が行われたと判定されなかったときは、ステップS14に進み、キャラクタ/スキル詳細画面上の「部屋を作る」または「部屋に入る」に対するタッチ操作が行われたか否かを判定する。「部屋を作る」をタッチする操作は、自分がホストとなって対局を開始する操作に相当し、「部屋に入る」をタッチする操作は、ホストが作成した部屋にゲストとして入って対局を開始する操作に相当する。
キャラクタ/スキル詳細画面上の「部屋を作る」または「部屋に入る」に対するタッチ操作が行われたと判定されると、ステップS15に進む。ステップS15では、ユーザの仕様情報を生成し、当該仕様情報をゲームサーバ200に通知する。通知する仕様情報には、通知元のユーザを識別するユーザ識別情報、自分がホストおよびゲストのいずれであるかを識別するホスト/ゲスト識別情報、キャラクタ/スキル詳細画面に表示されたキャラクタ、キャラクタ/スキル詳細画面上の配牌スキル一覧HSに表示された配牌スキル(選択した配牌スキル)、およびキャラクタ/スキル詳細画面上のツモスキル一覧TSに表示されたツモスキル(選択したツモスキル)が含まれる。キャラクタ/スキル選択処理は、仕様情報の通知の後に終了する。
ゲームサーバ200は、1人のホストと3人のゲストからなるグループをマッチングによって組成し、当該グループに属する4人分の仕様情報を当該グループにおけるホスト役のユーザが操作するユーザ端末100に対して通知する。つまり、ゲームサーバ200は、「部屋を作る」をタッチした1人のユーザと「部屋に入る」をタッチした3人のユーザとをマッチングして1つのグループを組成し、当該グループに属する4人のユーザから受け取った仕様情報を「部屋を作る」をタッチした1人のユーザのユーザ端末100に通知する。
図10に示すキャラクタ/スキル選択処理が終了すると、ホスト役のユーザが操作するユーザ端末100の制御部110は、管理者側プログラムに従って、図11に示す配牌スキル発動条件設定処理を実行する。
ステップS21では、ゲームサーバ200によって組成されたグループに属する4人のユーザの仕様情報がゲームサーバ200から通知されたか否かを判定する。4人のユーザの仕様情報が通知されたと判定されると、ステップS22に進む。ステップS22では、当該仕様情報に含まれるキャラクタを図6(A)に示すキャラクタ選択状態管理テーブル302に登録し、当該仕様情報に含まれる配牌スキルを図6(B)に示す配牌スキル選択状態管理テーブル303に登録し、当該仕様情報に含まれるツモスキルを図6(C)に示すツモスキル選択状態管理テーブル304に登録する。キャラクタ、配牌スキルおよびツモスキルはいずれも、当該仕様情報に含まれるユーザ識別情報が示すユーザに関連付けられる。
ステップS23では、いずれかのユーザを指定する。例えば、図6(A)に示すキャラクタ選択状態管理テーブル302に登録されたユーザ順に指定する。ステップS24では、指定したユーザに関連付けられた配牌スキルを配牌スキル選択状態管理テーブル303上で特定し、特定した配牌スキルのいずれかを指定する。例えば、図6(B)に示す配牌スキル選択状態管理テーブル303に登録された配牌スキルのうち左側の配牌スキルから順に指定する。
ステップS25では、指定した配牌スキルの発動条件は設定済であるか否かを、図7に示すスキル発動条件管理テーブル305の登録状態に基づいて判定する。指定した配牌スキルの発動条件は設定済みであると判定されなかったときは、ステップS26およびS27の処理を行ってからステップS28に進む。一方、指定した配牌スキルの発動条件は設定済みであると判定されたときは、ステップS26およびS27の処理を行うことなくステップS28に進む。
ステップS26では、指定した配牌スキルと同じ配牌スキルを配牌スキル選択画面上で選択したユーザを、配牌スキル選択状態管理テーブル303の登録状態に基づいて特定する。ステップS27では、ステップS26で特定したユーザに対する当該配牌スキルの発動条件を、ステップS26で特定したユーザの総数に基づいて決定する。
ステップS27の処理を具体的に説明すると、まず、ステップS26で特定したユーザの間で重複しないサイコロの出目の和であって、当該和を構成する2つの出目の組合せの数がステップS26で特定したユーザの間で同じとなる和を、2〜12の中から選択する。次に、選択された出目の和を、スキル発動条件として、ステップS26で特定したユーザの各々に設定する。この結果、スキル発動条件管理テーブル305上では、ステップS24で指定した配牌スキルに対応して、当該スキル発動条件が各ユーザに関連付けられる。
例えば、図6(B)に示す登録状態において、ステップS24で三元メイカーが指定されかつステップS25でNOと判定されると、ステップS26ではユーザ1、3および4が特定される。ステップS27では、「サイコロの出目の和が4または5」がスキル発動条件管理テーブル305上でユーザ1に関連付けられ、「サイコロの出目の和が2または7」がスキル発動条件管理テーブル305上でユーザ3に関連付けられ、「サイコロの出目の和が9または10」がスキル発動条件管理テーブル305上でユーザ4に関連付けられる。これらのスキル発動条件の間では、サイコロの出目の和に重複が生じることはなく、サイコロの出目の和を構成する2つの出目の組合せの数が同じになる。
この結果、複数のユーザが同じ配牌スキルを選択した場合であっても、いずれか1人のユーザに対してだけ当該配牌スキルを発動させることができる。また、配牌スキルが発動される確率は、当該複数のユーザ間で同じ確率とされる。
ステップS28では、指定したユーザによって選択された全ての配牌スキルがステップS24で指定されたか否かを判定する。指定したユーザによって選択された全ての配牌スキルがステップS24で指定されたと判定されなかったときは、ステップS24に戻る。ステップS24では、指定したユーザによって選択された配牌スキルのうち未だ指定されていない配牌スキルが指定される。
これに対して、指定したユーザによって選択された全ての配牌スキルがステップS24で指定されたと判定されたときは、全ユーザがステップS23で指定されたか否かをステップS29で判定する。全ユーザがステップS23で指定されたと判定されなかったときは、ステップS23に戻る。ステップS23では、未だ指定されていないユーザが指定される。
全ユーザがステップS23で指定されたと判定されると、ステップS30に進み、スキル発動条件管理テーブル305に設定されたスキル発動条件をゲームサーバ200に通知する。配牌スキル発動条件設定処理は、スキル発動条件の通知の後に終了する。
ゲームサーバ200は、ホスト役のユーザが操作するユーザ端末100から受け取ったスキル発動条件を、4人のユーザがそれぞれ操作する4つのユーザ端末100に対して、一部ずつ通知する。当該一部のスキル発動条件とは、通知先のユーザ端末100を操作するユーザに関連付けられたスキル発動条件である。
図11に示す配牌スキル発動条件設定処理が終了した後、各ユーザが操作するユーザ端末100の制御部110は、ユーザ側プログラムに従って図12に示す発動スキル選択処理を実行する。また、ホスト役のユーザが操作するユーザ端末100の制御部110は、管理者側プログラムに従って図13に示す配牌制御処理を実行する。
まず図12を参照して、ステップS41では、配牌スキルの発動条件がゲームサーバ200から通知されたか否かを判定する。配牌スキルの発動条件が通知されたと判定されると、ステップS42に進み、図9(A)に示す発動スキル選択画面をタッチスクリーン15の表示部152に表示する。図9(A)によれば、発動スキル選択画面には、配牌スキル選択画面上でタッチされた配牌スキルが列挙されるとともに、「スキルを使わない」が表示される。また、列挙された配牌スキルには、当該配牌スキルの効果に加えて、通知された発動条件が付記される。さらに、発動スキル選択画面の右下には、所望の配牌スキルを選択できる残り時間が表示される。
ステップS43では所望の配牌スキルに対するタッチ操作が行われたか否かを判定する。また、ステップS44では、発動スキル選択画面上の「スキルを使わない」に対するタッチ操作が行われたか否かを判定するとともに、いずれのタッチ操作も行われることなく時間切れとなったか否かを判定する。
所望の配牌スキルに対するタッチ操作が行われたと判定されると、ステップS43からステップS45に進む。これに対して、発動スキル選択画面上の「スキルを使わない」に対するタッチ操作が行われたと判定されるか、あるいはいずれのタッチ操作も行われることなく時間切れとなったと判定されると、ステップS44からステップS46に進む。
ステップS45では、タッチされた配牌スキルをゲームサーバ200に通知する。一方、ステップS46では、いずれの配牌スキルも選択されなかったことをゲームサーバ200に通知する。ゲームサーバ200は、ステップS45またはS46で発せられた配牌スキルに関する通知を全ユーザから受け取ったとき、当該通知をホスト役のユーザが操作するユーザ端末100に通知する。
図13に遷り、ホスト役のユーザが操作するユーザ端末100においては、ステップS61では、ゲームサーバ200から配牌スキルに関する通知があったか否かを判定する。配牌スキルに関する通知があったと判定されると、ステップS62に進む。ステップS62では、サイコロの出目を決定し、決定した出目をゲームサーバ200に通知する。ゲームサーバ200は、決定されたサイコロの出目を各ユーザが操作するユーザ端末100に通知する。
ステップS63では、いずれかのユーザを指定し、ステップS64では、指定したユーザからの通知がタッチされた配牌スキルの通知(ステップS45で発せられた通知)であるか否かを判定する。指定されたユーザからの通知はタッチされた配牌スキルの通知であると判定されると、ステップS65に進み、タッチされた配牌スキルの発動条件をスキル発動条件管理テーブル305上で特定する。
ステップS66では、ステップS62で決定したサイコロの出目がステップS65で特定した発動条件に合致するか否かを判定する。ステップS62で決定したサイコロの出目がステップS65で特定した発動条件に合致すると判定されたときは、ステップS67に進む。ステップS67では、タッチされた配牌スキルに対応する配牌(図4において説明した内容を満たす配牌)を決定し、当該配牌を指定したユーザに対して設定する。なお、配牌の決定方法の一例として、配牌スキルの1つである筒子マスターが発動した場合を説明する。まず、8枚の牌を筒子牌のうちから選定し、残りの5枚または6枚の牌を無作為に選定する。こうして選定された13枚または14枚の牌が、筒子マスターに対応する配牌となる。
これに対して、指定したユーザからの通知がタッチされた配牌スキルの通知であるとステップS64で判定されなかったとき、あるいはステップS62で決定したサイコロの出目がステップS65で特定した発動条件に合致するとステップS66で判定されなかったときは、ステップS68に進み、無作為な配牌を指定したユーザに対して設定する。
ステップS69では全てのユーザが指定されたか否かを判定する。全てのユーザが指定されたと判定されなかったときは、ステップS63に戻って、未だ指定していないユーザのいずれかを指定する。全てのユーザが指定されたとステップS69で判定されると、ステップS70に進む。
ステップS70では、ステップS67で設定された配牌スキルに従って選定した牌の組合せとステップS67における設定対象のユーザとを特定するための配牌情報をゲームサーバ200に通知する。ここで通知される配牌情報は、ステップS67の処理が実行されたユーザの配牌情報である。複数のユーザに対してステップS67の処理が実行されたとき(ユーザ毎に異なる配牌マスターが発動したときなど)には、当該複数のユーザ各々の配牌情報がゲームサーバ200に通知される。例えば萬子マスターがユーザ1に対して設定されている場合は、8枚以上の萬子を含む牌の組合せとユーザ1とを特定するための配牌情報がゲームサーバ200に通知される。なお、いずれのユーザに対してもステップS67の処理が実行されなかった場合は、ステップS70の処理が実行されない。
ステップS71では、無作為に選定した牌の組合せとステップS68における設定対象のユーザとを特定するための配牌情報をゲームサーバ200に通知する。ここで通知される配牌情報は、ステップS68の処理が実行されたユーザの配牌情報である。ステップS67の処理が実行されず、4人のユーザ各々の配牌がステップS68の処理により設定されたときには、4人分の配牌情報となる。
ステップS71では、ステップS70で選定された牌を除く120枚あまりの牌のうちから、牌が選定される。また、当該3人のために選定可能な牌の母数は、選定する順番が後になるほど少なくなる。
なお、ステップS70およびS71の各々で選定される牌の数は、東家に対しては14枚であり、南家、西家または北家に対しては13枚である。
ステップS72では、残りの牌を使って牌山を構築し、構築した牌山における牌の並びを示す牌山情報をゲームサーバ200に通知する。配牌制御処理は、牌山情報を通知した後に終了する。ゲームサーバ200は、ステップS70またはS71の処理により受け取った配牌情報を、当該配牌情報から特定されるユーザのユーザ端末100に対して通知する。また、ゲームサーバ200は、ステップS72の処理により受け取った牌山情報を、全てのユーザのユーザ端末100に対して通知する。
図12に戻って、ステップS47ではサイコロの出目がゲームサーバ200から通知されたか否かを判定し、サイコロの出目が通知されたと判定されると、ステップS48でサイコロ演出を実行する。タッチスクリーン15の表示部152には、図9(B)に示すサイコロ演出画面が表示される。また、当該サイコロ演出画面では、サイコロが振られた後、通知されたサイコロの出目が表示される。
ステップS50では、ステップS47の処理によって受け取ったサイコロの出目がステップS41の処理によって受け取ったスキル発動条件に合致するか否かを判定する。サイコロの出目がスキル発動条件に合致すると判定されると、ステップS51に進み、配牌スキルが発動されたことをユーザに向けて報知する。
ステップS52では、ゲームサーバ200から配牌情報が通知されたか否かを判定する。配牌情報が通知されたと判定されると、ステップS53に進み、当該配牌情報から特定される牌の組合せに従って14枚または13枚の手牌を対局画面に表示する(図9(C)参照)。ステップS54では、ゲームサーバ200から牌山情報が通知されたか否かを判定し、牌山情報が通知されたと判定されると発動スキル選択処理を終了する。
発動スキル選択処理が終了すると、各ユーザが操作するユーザ端末100の制御部110は、ユーザ側プログラムに従って、図14に示す対局処理を実行する。なお、対局が始まると、各ユーザ端末100は、ゲームサーバ200を介して互いに同期する。捨て牌、ポン、チー、カン、ツモあがり、ロンあがりなどの操作がいずれかのユーザ端末100に対して行われると、当該操作の内容を示す操作情報が、ゲームサーバ200を介して他のユーザ端末100に通知される。この結果、対局画面の間で整合が取られる。
ステップS81では、自家(自ユーザ)の番が到来したか否かを判定する。自家の番が到来したと判定されると、自家がチーを宣言したか否かをステップS82で判定する。自家がチーを宣言したと判定されなかったときは、ステップS83に進み、牌山から牌を取得する。ステップS84では、自家が暗槓または小明槓を宣言したか否かを判定する。自家が暗槓または小明槓を宣言したと判定されなかったときは、自家が牌を捨てたか否かをステップS85で判定し、手牌について役が成立しかつ自家がツモあがりを宣言したか否かをステップS86で判定する。自家が牌を捨てたと判定されたときは、ステップS85からステップS81に戻る。手牌について役が成立しかつ自家がツモあがりを宣言したと判定されたときは、ステップS86からステップS87に進み、清算を行う。今回の対局処理は、清算の後に終了する。
自家の番が到来したとステップS81で判定されなかったときは、自家がポンまたは大明槓を宣言したか否かをステップS88で判定する。ステップS82で自家がチーを宣言したと判定されるか、ステップS88で自家がポン、チーまたは大明槓を宣言したと判定されると、ステップS89に進み、他家から牌を取得する。取得する牌は、宣言した副露を構成する牌である。
ステップS84で自家が暗槓または小明槓を宣言したと判定されるか、あるいはステップS89の処理によって他家から牌が取得されると、ステップS90に進み、宣言した副露を構成する牌を手牌エリアHAの右上に晒す。ステップS91では、カンによって牌が晒されたか否かを判定する。カンによって牌が晒されたと判定されるとステップS83に進む一方、カンによって牌が晒されたと判定されなければステップS92に進む。ステップS92では自家が牌を捨てたか否かを判定し、自家が牌を捨てたと判定されるとステップS81に戻る。
ステップS88で自家がポンまたは大明槓を宣言したと判定されなかったときは、手牌について役が成立しかつ自家がロンあがりを宣言したか否か、他家がロンあがりまたはツモあがりを宣言したか否か、ならびに対局が流れたか否かを、ステップS93で判定する。
手牌について役が成立しかつ自家がロンあがりを宣言したと判定されず、他家がロンあがりまたはツモあがりを宣言したと判定されず、対局が流れたと判定されなかったときは、ステップS81に戻る。これに対して、手牌について役が成立しかつ自家がロンあがりを宣言したと判定されるか、他家がロンあがりまたはツモあがりを宣言したと判定されるか、あるいは対局が流れたと判定されたときは、ステップS87で清算を行い、その後に今回の対局処理を終了する。なお、次回の対局については、例えば、図12に示すステップS42から処理が開始される。これにより、対局毎に配牌スキルを選択し、サイコロ演出により配牌スキルの発動条件の成否が報知された後に、発動条件の成否に応じた配牌が表示される。
図14に示す対局処理と並列して、各ユーザのユーザ端末100の制御部110は、ユーザ側プログラムに従って、図15に示す手牌表示制御処理を繰り返し実行するとともに、図16に示すツモスキル制御処理を繰り返し実行する。
まず図15を参照して、ステップS101では、図9(C)〜図9(E)に示す対局画面上の手牌エリアHAに表示された所望の牌に対するタッチ操作が行われたか否かを判定する。所望の牌に対するタッチ操作が行われたと判定されなかったときは、今回のツモから所定時間が経過したか否かをステップS102で判定する。
今回のツモから所定時間が経過したと判定されると、ステップS103に進み、ツモ牌を捨てる。具体的には、ツモ牌を河エリアRVに移動させて縮小表示する。また、捨て牌が実行されると、図14に示すステップS85またはS92で自家が牌を捨てたと判定される。今回の手牌表示制御処理は、ステップS103の後に終了する。
一方、所望の牌に対するタッチ操作が行われたと判定されたときは、ステップS101からステップS104に進み、ガイド枠GFをタッチスクリーン15の表示部152に表示する。ステップS105ではタッチされた牌を捨て牌候補として選定する。ステップS106では選定された牌を河エリアRV側に拡大表示する。
したがって、図9(D)に示す一萬牌がタッチされると、当該牌がタッチ位置よりも上側の位置に拡大表示される。また、図9(E)に示す一索牌がタッチされると、当該牌がタッチ位置よりも上側の位置に拡大表示される。
ステップS107では、入力部151に対するタッチ位置が移動したか否かを判定する。タッチ位置が移動したと判定されたときは、ステップS108に進み、現在のタッチ位置は手牌エリアHAを含んで画面下部に広がる下部エリア内の位置であるか否かを判定する。現在のタッチ位置は当該下部エリア内の位置であると判定されると、ステップS109に進み、捨て牌候補を当該タッチ位置の鉛直方向に位置する牌に変更する。ステップS110では、拡大表示する牌を当該タッチ位置の鉛直方向に位置する牌に変更し、その後にステップS107に戻る。
したがって、図9(D)に示す一萬牌が拡大表示されている状態でタッチ位置が右側に移動されると、一萬牌が元の位置に通常表示され、右隣りの一索牌がタッチ位置よりも上側の位置に拡大表示される。また、図9(E)に示す一索牌が拡大表示されている状態でタッチ位置が左側に移動されると、一索牌が元の位置に通常表示され、左隣りの一萬牌がタッチ位置よりも上側の位置に拡大表示される。なお、タッチ位置が河エリアRVに移動すると、ガイド枠GFは強調表示される。
タッチ位置が移動したと判定されなかったときは、入力部151に対するタッチ操作が解除されたか否かをステップS111で判定する。タッチ操作が解除されたとステップS111で判定されなかったときは、今回のツモから所定時間が経過したか否かをステップS116で判定する。
タッチ操作が解除されたとステップS111で判定されたときは、ステップS112に進み、ガイド枠GFを非表示とする。ステップS113では、直前のタッチ位置は河エリアRV内の位置であるか否かを判定する。直前のタッチ位置は河エリアRV内の位置であると判定されなかったときは、ステップS114で捨て牌候補をクリアし、ステップS115で牌の拡大表示を終了する。この結果、拡大表示されていた牌は、元の位置に通常表示される。
今回のツモから所定時間が経過したとステップS116で判定されたときは、ステップS117でガイド枠GFを非表示とし、その後にステップS118に進む。ステップS118へは、直前のタッチ位置が河エリアRV内の位置であるとステップS113で判定されたときにも進む。ステップS117からステップS118に進んだ場合、当該ステップS118では、捨て牌候補の牌ではなくツモ牌を捨てる。具体的には、ツモ牌を河エリアRVに移動させて縮小表示する。一方、ステップS113からステップS118に進んだ場合は、直前にタッチされていた捨て牌候補の牌を捨てる。具体的には、拡大表示された牌を河エリアRVに移動させて縮小表示する。また、捨て牌が実行されると、図14に示すステップS85またはS92で自家が牌を捨てたと判定される。今回の手牌表示制御処理は、ステップS115またはS118の後に終了する。
図16を参照して、ステップS121では、ツモスキルエリアTAに表示されたツモスキルのうち、現時点で使用可能なツモスキルをハイライト表示する。また、ステップS122では、ツモスキルエリアTAに表示されたツモスキルのうち、現時点で使用不能なツモスキルを通常表示する。ここで、ツモスキルが使用可能となる状況の一例を説明する。例えば、ユーザがツモスキルとして「爆速街道」を選択している場合、当該ツモスキルは、手牌が3シャンテン以上のときに使用可能となる。このため、「爆速街道」は、手牌が3シャンテン以上のときにハイライト表示され、手牌が2シャンテン以内となったときに通常表示に変更される。
ステップS123では、使用可能なツモスキルに対するタッチ操作が行われたか否かを判定する。使用可能なツモスキルに対するタッチ操作が行われたと判定されなかったときは、今回のツモスキル制御処理を終了する。使用可能なツモスキルに対するタッチ操作が行われたと判定されたときは、ステップS124に進み、入力部151に対するタッチ操作が解除されたか否かを判定する。
入力部151に対するタッチ操作が解除されたと判定されたときは、ステップS125に進み、直前のタッチ位置はツモスキル発動エリアTH内の位置であるか否かを判定する。直前のタッチ位置はツモスキル発動エリアTH内の位置であると判定されなかったときは、今回のツモスキル制御処理を終了する。一方、直前のタッチ位置はツモスキル発動エリアTH内の位置であると判定されたときは、ステップS126で操作対象のツモスキルを発動し、ステップS127で操作対象のツモスキルの使用可能回数を減らす。今回のツモスキル制御処理は、使用可能回数が減らされた後に終了する。
したがって、例えば筒子無双が発動されると、3巡連続で筒子を引き寄せるように牌山内の牌が並び替えられる。ツモの順序は自家または他家がチー、ポンまたはカンを宣言したときに変更されるため、牌の並び替えは、チー、ポンまたはカンが宣言されたときにも実行される。なお、ツモスキルが発動されたときに、牌山の牌を並べ替える代わりに、当該ツモスキルに対応する牌を牌山から抜き取り、抜き取った牌を当該ツモスキルを発動させたユーザにツモらせるようにしてもよい。これにより、チー、ポンまたはカンが宣言されたときに牌を並び替える必要がなくなる。
<本実施形態の効果>
本実施形態によれば、ユーザに関連付けられた配牌スキルが発動されると、当該配牌スキルに対応する役の成立条件に合致する牌が多く含まれるように、配牌が実行される。ただし、配牌スキルは、当該配牌スキルについて設定された発動条件が成立した場合に限って発動される。これによって、麻雀ゲームをプレイする面白さを向上させることができる。また、役の成立条件に合致する牌が重複する配牌スキルを複数のユーザに関連付けるときには、同時に成立することがない条件が当該配牌スキルの発動条件として設定される。これによって、当該配牌スキルが関連付けられたユーザのいずれも役を成立させることができないという懸念を軽減することができる。
さらに、当該配牌スキルの発動条件の成立確率は、当該配牌スキルが関連付けられるユーザ間で同じ確率とされる。これによって、ゲームの公平性を担保することができる。
さらにまた、当該配牌スキルの発動条件は、当該配牌スキルが関連付けられるユーザの数に応じて異なり、発動確率が比較的高くなるように設定される。これによって、当該ユーザの数にかかわらず予め定められた発動条件が設定されるものと比較して、配牌スキルが発動される可能性を極力高めることができ、ゲームの興趣を向上させることができる。
また、当該配牌スキルの発動条件は、サイコロの出目の和が示し得る2〜12の範囲のうちから決定された数値に基づいて成立し、役の成立条件に合致する牌が重複する配牌スキルを複数のユーザに関連付けるときには、2〜12の範囲の数値のうちから当該複数のユーザ間において重複しない数値を割り当てることにより、当該配牌スキルの発動条件として同時に成立することがない条件が設定される。当該配牌スキルが関連付けられたユーザのいずれも役を成立させることができないという懸念は、麻雀ゲームの進行において用いられるサイコロの出目を利用することで違和感を生じさせることなく軽減される。
さらに、ユーザに関連付けられた配牌スキルの発動条件と当該発動条件が成立することにより付与される効果とは、発動スキル選択画面上で報知される。サイコロの出目が描かれたサイコロ演出画面は、発動スキル選択画面において対局に用いる配牌スキルが選択された後に表示される。当該配牌スキルに対応する役が成立する条件に合致する牌を多く含む配牌は、当該配牌スキルの発動条件が成立した後における対局画面において表示される。これによって、当該配牌スキルに関する報知から配牌の表示までの流れに連続性を持たせることができる。
さらにまた、対局が始まると、対局中に発動可能なツモスキルが対局画面の下部に表示される。当該ツモスキルは、これを発動可能なゲーム状況であるときにハイライト表示される。これによって、ゲームを有利に進めるための操作性を向上させることができる。
また、対局画面上の手牌エリアHAに表示された牌は、当該牌に対するタッチ操作が維持されたまま、当該タッチ操作の位置が河エリアRVに移動されることにより、河エリアに捨てられる。これによって、誤ったタッチ操作によりプレイヤが意図せぬゲーム展開となることを極力回避することができる。
さらに、捨て牌候補は、タッチ操作が維持されたまま少なくとも手牌エリアHA内でタッチ操作の位置が移動されることにより、別の牌に変更される。これによって、捨て牌候補の選定を誤った場合でも、タッチ操作の位置を移動させることで、捨て牌候補を正しく選定することができる。
また、捨て牌候補は、タッチ操作が維持されたまま手牌エリアHAに対して河エリアRVと反対側の所定エリア内で当該タッチ操作の位置が移動されることによっても、変更される。これによって、手牌のすべてを見ながら、捨て牌候補を決めることができる。つまり、手牌エリアHA内でのタッチ位置の移動でしか捨て牌候補を変更しない場合に、タッチ位置の近傍の牌が指で見えなくなるという不便さを解消することができる。
タッチ操作が維持されたまま当該タッチ操作の位置が移動されたときであっても、手牌エリアHAよりも河エリアRV側のエリア内での移動であるときには、捨て牌候補は変更されない。この結果、誤ったタッチ操作によって所望の手牌と異なる手牌が捨てられる懸念が軽減される。
また、捨て牌は、タッチ操作が河エリアRV内で解除されたときに実行される。換言すれば、タッチ操作の位置を河エリアRVまで移動させてからタッチ操作を解除しなければ、捨て牌は実行されない。このように、捨て牌候補を捨てる操作(ドラッグ&ドロップ)と、捨て牌候補を特定する操作(タッチ操作)とを異ならせることで、誤操作により牌が捨てられることを極力回避することができる。さらにまた、タッチされている牌は、タッチ操作の位置よりも河エリアRV側に表示される。これによって、ユーザはタッチ操作されてた捨て牌候補の牌そのものを確認して捨てるか否かを判断することができる。
また、ツモスキルは、手牌エリアHAに対して河エリアRVと反対側の位置に表示される。ツモスキルは、当該ツモスキルに対するタッチ操作を維持したまま当該タッチ操作の位置を河エリアRV内のツモスキル発動エリアTHに移動させることによって発動される。ツモスキルを発動させるための操作は、手牌を捨てるための操作と略同じであるため、操作の簡略化が図られる。
さらに、手牌に対するタッチ操作が行われると、河エリアRV内にガイド枠GFが表示される。これによって、ユーザは、タッチ操作の位置をどこに移動させれば捨て牌が実行されるかを容易に理解することができる。また、捨て牌は河エリアRVに表示されるため、ユーザは捨て牌が実行されたことを容易に理解することができる。
<変形例>
以上説明した実施形態の変形例などを以下に列挙する。
(1) 上記実施形態においては、当該配牌スキルの発動条件の成立確率は、当該配牌スキルが関連付けられるユーザ間で同じ確率にするようにしている。しかし、当該成立確率は、親ユーザに有利または不利となるように設定したり、持ち点が基準点(=25000点)から所定値以上離れた上位のユーザに不利となるように設定したり、持ち点が基準点から所定値以上離れた下位のユーザに有利となるように設定したりしてもよい。また、オーラスでは、最下位のユーザに対して、当該成立確率を100%に設定するようにしてもよい。さらに、ポン、チー、大明槓を宣言した回数が多いユーザほど、当該成立確率を低く設定したり、ツモスキルを発動させた回数が多いユーザほど、当該成立確率が高くなるように設定してもよい。
(2) 上記実施形態においては、ユーザに関連付けられた配牌スキルが発動されると、当該配牌スキルに対応する役の成立条件に合致する牌が多く含まれるように配牌が決定される。しかし、配牌スキルが発動した場合における配牌は、必ずしも役を成立させる牌のみで構成されるものではなく、役を成立させる牌以外の牌を含む。そこで、例えば、ユーザの誕生日など当該ユーザが他のユーザと区別可能な特別な日において、当該ユーザが配牌スキルを発動させる対局では、役を成立させる牌の占める割合が高くなる配牌としてもよく、例えば、役を成立させる牌のみで構成される配牌としてもよい。なお、14枚の牌が配られる東家のときに配牌スキルが発動したときには、役が成立する(つまり天和となる)14枚の牌を当該ユーザに配るようにしてもよい。あるいは、役を成立させる牌の占める割合が通常の配牌スキルよりも高くなる特別な配牌スキルを設け、当該特別な配牌スキルを選択できるようにしてもよい。
(3) 上記実施形態においては、複数のユーザが同じ配牌スキルを選択した場合に、同時に成立することがない条件を当該配牌スキルの発動条件として設定するようにしている。しかし、例えば、2人のユーザが萬子マスターを選択した場合と、2人のユーザが四喜メイカーを選択した場合とでは、役に対応する牌の枚数の違いから、いずれのユーザも役を成立させることができない可能性に違いが生じる。つまり、萬子マスターについては、萬子牌の枚数が36枚と多いため、いずれのユーザも役を成立させることができない可能性は低い。これに対して、四喜メイカーについては、風牌の枚数が16枚と少ないため、いずれのユーザも役を成立させることができない可能性は高い。そこで、複数のユーザが同じ配牌スキルを選択した場合には、当該配牌スキルが特定の配牌スキル(役に対応する牌の枚数が所定値以下の配牌スキル、例えば、四喜メイカー、字牌マスター、三元メイカー)である場合に限って、同時に成立することがない条件を当該配牌スキルの発動条件として設定するようにしてもよい。
(4) 上記実施形態においては、複数のユーザが同じ配牌スキルを選択した場合に限り、同時に成立することがない条件を当該配牌スキルの発動条件として設定するようにしている。しかし、例えば、2人のユーザに対して字牌マスターおよび三元メイカーをそれぞれ発動させた場合でも、両ユーザが役を成立させることができない可能性がある。両ユーザが役を成立させることができない主な原因は、役に対応する牌の枚数の少なさにある。そこで、複数のユーザが特定の関係にある配牌スキル(役に対応する牌の枚数が所定値以下の配牌スキル、例えば、四喜メイカー、字牌マスター、三元メイカー)を選択した場合に、異なる配牌スキルであっても、同時に成立することがない条件を当該配牌スキルの発動条件として設定するようにしてもよい。あるいは、複数のユーザの各々が配牌スキルを発動させて成立させようとする役のタネの重複度に注目し、当該重複度が所定の基準を上回る配牌スキルについては、同時に成立することがない条件を当該配牌スキルの発動条件として設定するようにしてもよい。
(5) 上記実施形態においては、ユーザ端末100間の同期は、ゲームサーバ200を介して確立するようにしている。しかし、例えばローカルエリア・ネットワーク環境化において、ユーザ端末100同士で通信を行うことで、ユーザ端末100間の同期を確立するようにしてもよい。
(6) 上記実施形態においては、管理者側プログラムに従う処理(図11に示す配牌スキル発動条件設定処理および図13に示す配牌制御処理)は、ホスト役のユーザのユーザ端末100によって実行される。しかし、当該処理は、ゲームサーバ200に担わせるようにしてもよい。つまり、配牌スキルの発動条件の設定や配牌制御については、ホスト役のユーザのユーザ端末100によって実行されるものに限らず、ゲームサーバ200により実行されるものであってもよい。この場合、図11に示すステップS21では、図10に示すステップS15で発せられた仕様情報が通知されたか否かを判定する。また、図11に示すステップS30では、配牌スキルの発動条件を各ユーザのユーザ端末100に通知する。さらに、図13に示すステップS61では、図12に示すステップS45またはS46で発せられた通知が各ユーザのユーザ端末100からあったか否かを判定する。また、図13に示すステップS70またはS71では、配牌情報から特定されるユーザ端末100に対して当該配牌情報を通知し、図13に示すステップS73では、牌山情報を全てのユーザのユーザ端末100に対して通知する。この場合、図11のステップS23〜S29における発動条件を設定する処理および図13のステップS63〜S72における配牌制御は、図10のステップS15によりユーザの仕様情報が通知されることにより行われる。よって、図10のステップS15によりユーザの仕様情報を通知する処理は、対応する役が成立する条件に合致する識別情報が重複するスキルを複数のプレイヤに関連付けるときには、当該スキルの発動条件として同時に成立することがない条件を設定するステップ、および、スキルの発動条件が成立しているときには、当該スキルの発動条件が成立していないときよりも、当該スキルに対応する役が成立する条件に合致する識別情報を多く含む識別情報の組合せを特定するステップに相当するといえる。
(7) 上記実施形態においては、麻雀をプレイする4人のユーザが必ず揃うことを前提としているが、実際には、4人全員が揃わない可能性もある。そこで、4人全員が揃わない場合には、不足するユーザを仮想ユーザによって補うようにしてもよい。この場合、例えば、各仮想ユーザに対応するユーザ側プログラムは、通信回線への接続が可能な環境ではゲームサーバ200において起動され、通信回線への接続が不可能な環境ではホスト役のユーザ端末100において起動される。また、仮想ユーザ用のキャラクタ、配牌スキル、ツモスキルは、例えば乱数抽選等で決定される。さらに、ホスト役のユーザ端末100の管理者側プログラムは、当該ユーザ側プログラムとの間でやり取りを行いながら対局を行う(通信回線への接続が不可能な環境では、当該ユーザ側プログラムとのやり取りは、ホスト役のユーザ端末100内で行われる)。
(8) 上記実施形態においては、捨て牌は、河エリアRV内でタッチ操作が解除されたときに実行される。しかし、手牌に対するタッチ操作を維持したまま当該タッチ操作の位置が河エリアRVに移動されると、その時点で、牌を捨てる意思は既に表明されていると判断することができる。したがって、当該タッチ操作の位置が河エリアRVに移動されたときに捨て牌を実行するようにしてもよい。
(9) 上記実施形態においては、配牌スキル一覧HSから選択した配牌スキルは、2局目以降の対局の開始時においても発動スキル選択画面に表示されて選択可能となる。しかし、発動された配牌スキルは、以降の対局における発動スキル選択画面において表示せずに選択できないようにしてもよく、この場合に別の配牌スキルを選択可能となるように発動スキル選択画面において表示するようにしてもよい。
(10) 上記実施形態においては、キャラクタに割り当てられた複数の配牌スキルは固定的(つまり変更や追加は不可能)であることを想定している。しかし、キャラクタに割り当てられる配牌スキルは、例えば課金によって追加・変更できるようにしてもよい。
(11) 上記実施形態においては、各ユーザが選択したキャラクタに割り当てられている複数の配牌スキルのうちから所定数(3個)の配牌スキルを対局に用いることができる配牌スキルとして絞り込み、対局開始前に当該所定数の配牌スキル各々の発動条件を設定した後に、対局毎に当該対局に使用する配牌スキルを選択させる例について説明した。これにより、ユーザ間において関連付けられている配牌スキルが重複してしまう割合を抑えることができ、その結果、配牌スキルの発動条件の成立確率が低くなり過ぎることを防止することができる。しかし、これに限らず、例えば、対局毎に、当該対局に使用する配牌スキルを選択した後、他のプレイヤが選択した配牌スキルとの関係で発動条件を設定するようにしてもよい。これにより、ユーザ間において関連付けられている配牌スキルが重複してしまう割合をより低く抑えることができ、その結果、配牌スキルの発動条件の成立確率が低くなり過ぎることをより一層防止することができる。
(12) 上記実施形態においては、麻雀ゲームを想定しているが、これに代えてポーカー等のカードゲームや、こいこい等の花札ゲームを想定するようにしてもよい。ポーカーを想定する場合、カードに描かれたスペードのジャック等の模様が識別情報に相当し、フルハウスやストレートフラッシュ等が役に相当する。また、こいこいを想定する場合、猪鹿蝶や月見で一杯等が役に相当する。なお、発動条件の成否は、サイコロ演出の出目により決定される例について説明したが、重複する配牌スキルについて一のプレイヤのみに発動させるものであればこれに限らず、例えば、プレイヤ同士によるじゃんけん演出などを実行し、その結果、勝利したプレイヤのみが配牌スキルを発動するようにしてもよい。
<付記>
以上の各実施形態で説明した事項を、以下に付記する。
(付記1):
本開示に示す一実施形態のある局面によれば、プロセッサ、メモリ、および入力部を備えるコンピュータ(図1のユーザ端末100)において実行されるゲームプログラムであって、前記ゲームプログラムは、前記プロセッサに、予め定められた複数の識別情報のうちからユーザが所有する識別情報の組合せを特定する第1ステップ(図13のS64〜S68、S70、S71、図12のS52、S53)と、前記第1ステップにより特定された識別情報の組合せに基づいて、予め定められた複数種類の役のうちから成立している役を特定する第2ステップ(図14のS86、S93)と、前記複数種類の役のうち異なる役が各々に対応付けられている複数種類のスキルのうちから発動可能となるスキルをユーザに関連付けるとともに、当該スキルの発動条件を設定する第3ステップ(図10のS7〜S9、S15、図11のS23〜S30)とを実行させ、前記第1ステップは、スキルの発動条件が成立しているときには、当該スキルの発動条件が成立していないときよりも、当該スキルに対応する役が成立する条件に合致する識別情報を多く含む識別情報の組合せを特定するステップ(図13のS66、S67、S70、図12のS52、S53)を含む。
(付記2):
(付記1)において、ゲームはユーザを含む複数のプレイヤによってプレイ可能であり、前記第3ステップは、対応する役が成立する条件に合致する識別情報が重複するスキルを複数のプレイヤに関連付けるときには、当該スキルの発動条件として同時に成立することがない条件を設定するステップ(図10のS15、図11のS26、S27)を含む。
(付記3)
(付記2)において、前記設定するステップは、対応する役が成立する条件に合致する識別情報が重複するスキルが関連付けられるプレイヤ間において当該スキルの発動条件の成立確率が同じとなるように、当該スキルの発動条件として同時に成立することがない条件を設定する。
(付記4)
(付記2)または(付記3)において、前記設定するステップは、当該スキルの発動条件として同時に成立することがない条件を、対応する役が成立する条件に合致する識別情報が重複するスキルが関連付けられるプレイヤの数に応じて異ならせる。
(付記5)
(付記2)から(付記4)のいずれかにおいて、前記ゲームプログラムは、前記プロセッサに、ゲームの進行において所定範囲の数値のうちから数値を決定する第4ステップ(図13のS62)を実行させ、前記スキルの発動条件は、前記第4ステップにより決定された数値に基づいて成立し、前記設定するステップは、対応する役が成立する条件に合致する識別情報が重複するスキルを複数のプレイヤに関連付けるときには、前記所定範囲の数値のうちから前記複数のプレイヤ間において重複しない数値を割り当てることにより、当該スキルの発動条件として同時に成立することがない条件を設定する。
(付記6)
(付記1)から(付記5)のいずれかにおいて、前記ゲームプログラムは、前記プロセッサに、前記ユーザに関連付けられたスキルの発動条件と当該発動条件が成立することにより付与される効果とを報知する第5ステップ(図12のS41、S42)と、前記第5ステップによる報知の後に当該スキルの発動条件の成否にかかわる事象を発生させて成否結果を報知する第6ステップ(図13のS62、図12のS47〜S51)と、前記第6ステップにより成否結果が報知された後に、前記第1ステップにより特定された識別情報の組合せを表示部に表示する第7ステップ(図12のS53)とを実行させる。
(付記7)
(付記1)から(付記6)のいずれかにおいて、前記ゲームプログラムは、前記プロセッサに、ゲームの進行において発動可能な所定スキルを表示部に表示する第8ステップ(図16のS121、S122)を実行させ、前記第8ステップは、所定スキルを発動可能なゲーム状況であるときに、当該所定スキルを特定態様で表示部に表示する。
(付記8)
一実施形態のある局面によれば、プロセッサ、メモリ、および入力部を備えるコンピュータ(図1のユーザ端末100)により実行される方法であって、前記方法は、前記コンピュータが、予め定められた複数の識別情報のうちからユーザが所有する識別情報の組合せを特定する第1ステップ(図13のS64〜S68、S70、S71、図12のS52、S53)と、前記第1ステップにより特定された識別情報の組合せに基づいて、予め定められた複数種類の役のうちから成立している役を特定する第2ステップ(図14のS86、S93)と、前記複数種類の役のうち異なる役が各々に対応付けられている複数種類のスキルのうちから発動可能となるスキルをユーザに関連付けるとともに、当該スキルの発動条件を設定する第3ステップ(図10のS7〜S9、S15、図11のS23〜S30)とを備え、前記第1ステップは、スキルの発動条件が成立しているときには、当該スキルの発動条件が成立していないときよりも、当該スキルに対応する役が成立する条件に合致する識別情報を多く含む識別情報の組合せを特定するステップ(図13のS66、S67、S70、図12のS52、S53)を含む。
(付記9)
一実施形態のある局面によれば、情報処理装置(図1のユーザ端末100)であって、ゲームプログラムを記憶する記憶部(図2の120)と、前記ゲームプログラムを実行することにより、前記情報処理装置の動作を制御する制御部(図2の110)とを備え、前記制御部は、予め定められた複数の識別情報のうちからユーザが所有する識別情報の組合せを特定する第1ステップ(図13のS64〜S68、S70、S71、図12のS52、S53)と、前記第1ステップにより特定された識別情報の組合せに基づいて、予め定められた複数種類の役のうちから成立している役を特定する第2ステップ(図14のS86、S93)と、前記複数種類の役のうち異なる役が各々に対応付けられている複数種類のスキルのうちから発動可能となるスキルをユーザに関連付けるとともに、当該スキルの発動条件を設定する第3ステップ(図10のS7〜S9、S15、図11のS23〜S30)とを実行し、前記第1ステップは、スキルの発動条件が成立しているときには、当該スキルの発動条件が成立していないときよりも、当該スキルに対応する役が成立する条件に合致する識別情報を多く含む識別情報の組合せを特定するステップ(図13のS66、S67、S70、図12のS52、S53)を含む。
(付記10)
一実施形態のある局面によれば、ゲームをプレイするための端末(図1のユーザ端末100)を操作する各ユーザをマッチングさせて対戦プレイを実行させる処理を行うためのサーバ(図1のゲームサーバ200)であって、前記サーバは、記憶部(図3の220)と、前記サーバの動作を制御するように構成された制御部(図3の210)とを備え、予め定められた複数の識別情報のうちからユーザを含む複数のプレイヤの各々が所有する識別情報の組合せであって、予め定められた複数種類の役のうちから成立している役を特定するための識別情報の組合せを特定するステップ(変形例(6)における図13のS64〜S68、S70、S71)と、前記複数種類の役のうち異なる役が各々に対応付けられている複数種類のスキルのうちから発動可能となるスキルをプレイヤに関連付けるとともに、当該スキルの発動条件を設定するステップ(変形例(6)における図11のS23〜S30)とを備え、前記特定するステップは、プレイヤに関連付けられているスキルの発動条件が成立しているときには、当該スキルの発動条件が成立していないときよりも、当該スキルに対応する役が成立する条件に合致する識別情報を多く含む識別情報の組合せを特定する(変形例(6)における図13のS66、S67、S70、図12のS52、S53)。
〔ソフトウェアによる実現例〕
制御部110の制御ブロック(特に、作用受付部111、端末処理部112、タイマー部113、端末判定部114、表示制御部115、報酬計算部116、および送受信部117)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
後者の場合、制御部110を備えた情報処理装置は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
今回開示された実施の形態はすべての点で例示であって制限的なものでないと考えられるべきである。この発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。