以下、図面を参照して本発明に係る実施の形態を以下に説明する。
<パチンコ機の構成>
まず、図1を参照して、本実施の形態に係るパチンコ機の構成を説明する。遊技場(ホール)内に複数配置されている各遊技島(図示略)には、遊技機の一例の封入循環式パチンコ機(以下、遊技機、パチンコ機またはP台と略称する)2が併設されている。なお、パチンコ機2の所定側の側方位置には、該パチンコ機2に対してカードユニット(以下CUと略称することもある)3が1対1に対応設置されている。
パチンコ機2は、内部に遊技媒体の一例のパチンコ玉を封入しており、遊技者が打球操作ハンドル25を操作することにより、発射モータ18(図2参照)を駆動させて封入玉を1発ずつ遊技盤26前面の遊技領域27に打込んで遊技ができるように構成されている。具体的には、打球操作ハンドル25の周囲にタッチセンサが設けられており、遊技者が打球操作ハンドル25を操作している状態でその遊技者の手がタッチセンサに触れ、その遊技者の手の接触をタッチセンサで検知して発射モータ18が駆動される。この状態で、遊技者による打球操作ハンドル25の回動操作量に応じて打球発射勢いが調整されて玉が遊技領域27内に発射される。
図1に示すパチンコ機2は、いわゆる第1種のパチンコ機であって、遊技領域27の中央に可変表示装置(特別図柄とも言う)278が設けられている。また、遊技領域27には、打込まれたパチンコ玉が入賞可能な複数種類の入賞口が設けられている。図1に示す遊技領域27には、1つの大入賞口(可変入賞球装置)271と、3つの普通入賞口272,273,274と、3つの始動入賞口275,276,277とが示されている。特に、始動入賞口276は、遊技者にとって有利な第1の状態(たとえば開成状態)と遊技者にとって不利な第2の状態(たとえば閉成状態)とに変化可能な電動チューリップで構成されている。
可変表示装置278は、複数種類の識別情報(図柄)を可変表示可能な可変表示部を備えており、各始動入賞口275,276,277に入賞した始動入賞玉の検出信号に基づいてそれらの複数種類の識別情報の可変表示を開始させる。可変表示装置の表示結果が特定の識別情報の組合せ(たとえばぞろ目)になると、大当り状態となり、大入賞口271が開放する。
また、可変表示装置278の表示結果が大当り図柄の組合せ(ぞろ目)のうちの予め定められた特別の識別情報の組合せ(たとえば777等の確変図柄の組合せ)となることにより、確変大当り状態が発生し、それに伴う大当り状態の終了後大当りの発生確率が向上した確率変動状態(確変状態)が発生する。
遊技領域27内に打込まれたパチンコ玉はいずれかの入賞口に入賞するかあるいは入賞することなくアウト口154に回収される。いずれかの入賞口に入賞したパチンコ玉およびアウト口154に回収されたパチンコ玉は再度パチンコ機2内の回収経路を通って打球発射位置にまで還元される。そして、遊技者が打球操作ハンドル25を操作することにより再びその打球発射位置のパチンコ玉が遊技領域27内に打込まれる。
パチンコ機2における遊技領域27の下方位置には、表示器54が設けられている。表示器54は、液晶表示装置で構成されており、持点やカード残額、あるいは可変表示装置278の表示と連動した様々な演出画像を遊技者に表示する。
さらに、パチンコ機2における打球操作ハンドル25の左方位置には、遊技玉から持玉への計数処理をするための計数ボタン28が設けられている。本実施の形態では、計数ボタン28を押下し続けた時間に応じて計数動作が繰返し実行される。なお、押下継続時間に関わらず、1度押下すると、所定数(たとえば100玉)だけ遊技玉から持玉への計数が行なわれるようにしてもよく、あるいは、計数ボタン28を1度押下した場合には、その押下時間にかかわらず(長押しか否かにかかわらず)、現在遊技者が所有している遊技玉のすべてが計数されるようにしてもよい。
このように、計数ボタン28をパチンコ機(P台)2側に設けているため、計数ボタン28をカードユニット(CU)3側に設ける場合に比較して、パチンコ機2に正対して座っている遊技者の操作性を向上できる。
計数ボタン28の右上方には、遊技玉数を表示するための遊技玉数表示器29が設けられている。遊技玉数表示器29は、7セグメント式のディスプレイである。なお、遊技玉数表示器29は、液晶表示器や有機EL表示器、その他の表示器で構成してもよい。
本実施の形態に係るパチンコ機2は、遊技盤26とそれ以外の遊技枠(前枠)6とに分けることができる。特に、遊技盤26は、各社が開発するパチンコ機の機種毎に異なるものである一方、遊技機枠6は、機種に関わらず共通の共通枠とされている。このため、遊技店は新台入れ替えの際には遊技盤26のみの交換で事足りる。
<カードユニットの構成>
次に、引続き図1を参照して、本実施の形態に係るカードユニット3の構成を説明する。このカードユニット3は、会員登録をしていない一般の遊技者に対して発行される遊技用記録媒体であるプリペイド機能を備えるビジターカード(一般カードとも言う)や、該遊技場に会員登録した会員遊技者に対して発行される遊技用記録媒体である会員カードを受付ける。ビジターカードや会員カードはICカードで構成されている。
それらのカードを受付けたカードユニット3は、カードの記録情報により特定される遊技者所有の遊技価値(たとえばカード残額、持玉数、あるいは貯玉数等)を“遊技玉のデータ”に変換する機能を有する。パチンコ機2では、遊技玉のデータによって特定される玉数相当の弾球遊技が可能とされる。つまり、“遊技玉のデータ”とは、発射可能な玉の発射残数を示すデータである。以下の説明では、“遊技玉のデータ”を貯玉や持玉と同様に、単に“遊技玉”と称する。
カードユニット3の前面側には、紙幣を挿入するための紙幣挿入口302、装置前面より装置前方方向に突出形成された突出部305、会員カードやビジターカードを挿入するためのカード挿入/排出口309などが設けられている。このカード挿入/排出口309に挿入された会員カードやビジターカードがカードリーダライタ(図示省略)に受付けられ、そのカードに記録されている情報が読取られる。
前述の突出部305において、遊技者と対向する面には、表示器312と、会員カードを受付けた場合において、該会員カードに記録された会員カードID(単に、カードID、C-IDとも言う)ならびに会員カードIDにより特定される貯玉数を用いた再プレイ遊技を実施するための再プレイボタン319とが設けられている。
表示器312は、挿入された遊技用記録媒体(カード)に記録されているプリペイド残額(カード残額または単に残額とも言う)を表示するものであるが、遊技玉数やその他の各種情報を表示可能であるとともに、表面が透明タッチパネルで構成されており、表示器312の表示部に表示された各種表示項目を指でタッチすることにより各種操作が入力可能となるように構成されている。
再プレイボタン319を操作した場合に、挿入されたカードに遊技者が獲得した持玉数が記録されているときにはその持玉数の一部を引落として遊技玉に変換し、変換した遊技玉に基づいてパチンコ機2による遊技を行なうことが可能となる。一方、挿入されたカードが会員カードであり持玉数が記録されておらずかつ貯玉がホール用管理コンピュータ等に記録されている場合には、その貯玉の一部が引落とされて遊技玉に変換され、パチンコ機2による遊技が可能となる。つまり、挿入されたカードに対応付けて貯玉と持玉との双方が記憶されている場合には、持玉が優先的に引落とされる。なお、再プレイボタン319とは別に、持玉を引落とすための専用の持玉払出ボタンを設け、再プレイボタン319は貯玉引落とし専用のボタンとしてもよい。
ここで、「貯玉」とは、前日以前に獲得した玉でホールに預けている玉であり、貯玉払出により遊技玉となる。また、貯玉は、遊技場に預入れられた遊技媒体であり、一般的に当該遊技場に設置されたホール用管理コンピュータやその他の管理コンピュータにより管理される。
「持玉」とは、当日獲得した玉であり、持玉払出により遊技玉となる。また、持玉数は、遊技者が遊技機により遊技を行なった結果遊技者の所有となった遊技玉数をカードに記録したものであって、未だに遊技場に預入れられていない玉数のことである。一般的には、遊技場において当日遊技者が獲得した玉数を「持玉」と言い、前日以前に遊技者が獲得した玉数であって遊技場に預入れられた玉数を「貯玉」と言う。
「遊技玉」とは、遊技機で発射可能な玉である。遊技玉数のデータは、既に説明したとおり、プリペイドカードの残額、持玉、あるいは貯玉を引落とすことと引き換えにして生成される。
なお、持玉数を遊技場に設定された持玉数管理用の管理装置で管理してもよい。要するに、「貯玉」と「持玉」との違いは、遊技場に預入れるための貯玉操作が行なわれて遊技場に預入れられた玉数であるか、あるいは、未だに遊技場に預入れられていない段階の玉数であるかの点である。
本実施形態では、貯玉データは会員カードに直接記録させずホール用管理コンピュータ等の遊技場に設置されたホールサーバ801(上位サーバ)801(図4参照)に会員カード番号と対応付けて記憶させ、会員カード番号に基づいて対応する貯玉を検索できるように構成されている。一方、持玉は、カードに直接記録している。しかし、それに限定されるものではなく、両者ともにホール内に設置されたホールサーバ801にカード番号と対応付けて記憶させてもよい。ビジターカードの場合も、持玉は、ビジターカードに直接記録している。しかし、それに限定されるものではなく、持玉をホールサーバ801にカード番号と対応させて記憶させてもよい。このホールサーバ801にカード番号と対応させて記憶させる際に、ホールサーバ801に記憶させた時刻を特定できるデータをカード(会員カード、ビジターカード)に書込んで排出してもよい。また、プリペイド残額についてはカード(会員カード、ビジターカード)に直接書込んで排出する。
なお、持玉を、カード(会員カード、ビジターカード)、またはホールサーバ801に記憶させるタイミングは、たとえば、計数ボタン28が操作されて計数処理が行なわれる度にリアルタイムに記憶させる、一定周期ごとに記憶させる、またはカードを返却するときに一括して記憶させるなどのタイミングとすることが考えられる。
また、遊技者が遊技を終えてカードユニット3からカードを返却したときには、カードユニット3に記憶していた持玉が一旦貯玉としてホールサーバ801に記憶されるようにし、その遊技者がカードの返却を受けた日と同じ日に再び同じまたは別のカードユニット3にカードを挿入したときには、一旦貯玉として記憶された当日分の持玉のみが再びそのカードユニット3に記憶され、その持玉の範囲で遊技玉を加算し、遊技できるようにしてもよい。
紙幣挿入口302に挿入された紙幣は、貨幣識別器(図示省略)により取込まれてその真贋や紙幣種別の識別がなされる。
カードユニット3の前面側には、さらに、IR(Infrared)感光ユニット(IR受光ユニットとも言う)320と、玉貸ボタン(貸出ボタンとも言う)321と、カード返却ボタン322とが設けられている。IR感光ユニット320は、遊技場の係員が所持するリモコン(図示略)から赤外線信号を受信して電子信号に変換して出力するIR感光ユニット320である。玉貸ボタン321は、挿入されたカードに記録されている残額を引落としてパチンコ機2による遊技に用いるための操作(遊技玉への変換操作)を行なうボタンである。カード返却ボタン322は、遊技者が遊技を終了するときに操作され、挿入されているカードに遊技終了時の確定した遊技玉数(カード挿入時の持玉数−遊技玉への変換数+計数操作によって計数された持玉数)を記憶させて排出するための操作ボタンである。
<カードユニットとパチンコ機との構成>
図2は、カードユニット3とパチンコ機2との構成を示すブロック図である。図2を参照して、カードユニット3とパチンコ機2との制御回路の概略を説明する。
カードユニット3には、マイクロコンピュータ等から構成されたCU制御部323が設けられている。このCU制御部323は、カードユニット3の主制御機能部であり、制御中枢としてのCPU(Central Processing Unit)、CPUが動作するためのプログラムや制御データ等を記憶しているROM(Read Only Member)、CPUのワークエリアとして機能するRAM(Random Access Memory)、周辺機器との信号の整合性を保つための入出力インターフェイス等が設けられている。
CU制御部323には、ホール用管理コンピュータやセキュリティ上の管理を行なうホールサーバ801(図4参照)と通信を行なうための外部通信部(図示省略)が設けられている。CU制御部323には、パチンコ機2の払出制御基板17とセキュリティを確保しながら通信を行なうためのセキュリティ基板(SC基板)325が接続される。セキュリティ基板325は、カードユニット3のセキュリティ監視機能部である。なお、セキュリティ基板325上にCU制御部323を設けてもよく、あるいは、セキュリティ基板325とは別の基板にCU制御部323を設けてもよい。カードユニット3にはパチンコ機2側への接続部(図示省略)が設けられており、パチンコ機2にはカードユニット3側への接続部(図示省略)が設けられている。これら接続部は、たとえばコネクタ等で構成されている。
カードユニット3側のセキュリティ基板325とパチンコ機2側の払出制御基板17とは、このコネクタと接続配線とを介して通信可能に接続される。セキュリティ基板325には、セキュリティ基板325と払出制御基板17との通信を制御するための通信制御IC325aと、パチンコ機2のセキュリティを監視するためのセキュリティチップ(SC)325bが設けられている。さらに、SC325bは、不正検知部1325を備え、不正検知部1325がCU制御部323からパチンコ機2に通知される遊技玉の加算要求情報を監視することにより不正検知を行ない、不正検知時に鍵管理サーバ800(図4参照)に通知する。また、不正検知用の設定値(定数)は鍵管理サーバ800から基板制御情報として通知される。
CU制御部323には、前述した貨幣識別器により紙幣の真贋および種類が識別されて、その識別結果信号が入力される。また、CU制御部323には、遊技場の係員が所持しているリモコンから発せられた赤外線をIR感光ユニット320が受光すれば、その受光信号が入力される。CU制御部323には、挿入されたカードの記録情報をカードリーダライタが読取って、その読取り情報が入力されるとともに、CU制御部323からカードリーダライタに対し、挿入されているカードに書込むデータが伝送されたときに、カードリーダライタはそのデータを挿入されているカードに書込む。カードの記録情報には、カードIDが含まれる。CU制御部323は、カードリーダライタが読み取ったカードIDを遊技終了まで記憶する。
CU制御部323は、遊技者が遊技している際、遊技者の持玉を管理・記憶する。CU制御部323から残額あるいは遊技玉数等のデータが表示制御部350に出力され、表示制御部350で表示用データに変換される。パチンコ機2に対し、表示制御部350で変換した表示用データが送信される。パチンコ機2に送信された表示用データは、中継基板14を介して表示器312に入力される。表示器312には、その表示用データに応じた画像が表示される。また、表示器312の表面に設けられているタッチパネルを遊技者が操作すれば、その操作信号が表示制御部350を介してCU制御部323に入力される。遊技者が玉貸ボタン321を操作することにより、その操作信号がCU制御部323に入力される。なお、玉貸ボタン321は、CU3に設ける構成に限定されるものではなく、パチンコ機2に設けて操作信号をCU制御部323に入力する構成であっても良い。遊技者が再プレイボタン319を操作することによりその操作信号がCU制御部323に入力される。遊技者がカード返却ボタン322を操作することによりその操作信号がCU制御部323に入力される。
パチンコ機2には、パチンコ機2の遊技の進行制御を行なう主制御基板16と、遊技玉を管理・記憶する払出制御基板17と、払出制御基板17の指令に基づいて発射モータ18を駆動制御する発射制御基板31と、可変表示装置278と、主制御基板16から送信されてくるコマンドに基づいて可変表示装置278を表示制御する演出制御基板15とが備えられている。
主制御基板16および演出制御基板15は、遊技盤26に設けてある。主制御基板16には主制御部161である遊技制御用マイクロコンピュータが搭載されている。主制御部161は、遊技機の主制御機能部である。遊技機制御用マイクロコンピュータは、制御中枢としてのCPU(Central Processing Unit)、CPUが動作するためのプログラムや制御データ等を記憶しているROM(Read Only Member)、CPUのワークエリアとして機能するRAM(Random Access Memory)、周辺機器との信号の整合性を保つための入出力インターフェイス等が設けられている。主制御部161は、遊技盤26に設けられている入賞センサ162、および電波センサ163と接続してある。
主制御部161は、各始動入賞口275,276,277に玉が入賞すると、大当り(あるいはさらに小当りを含む)/外れを決定するための乱数を抽選し、その乱数を記憶する。これを保留記憶という。保留記憶数の最大値は、たとえば、4である。主制御部161は、可変表示装置278で新たな可変表示を開始できる状態になれば、保留記憶を1つ消化してその保留記憶に基づいた大当り判定を行なうとともに可変開始から表示結果の導出に至るまでの可変表示時間を複数種類の中から決定する。また、大当りを決定したときには、確率変動を生じさせるか否かも併せて決定する。主制御部161は、その大当り判定の結果(確変にするか否かを含む)、および可変表示時間に関する情報をコマンドとして演出制御基板15に搭載された演出制御部151へ送信する。
主制御部161から演出制御部151へ送信される可変表示に関するコマンドには、可変表示の開始を示す可変開始コマンド、可変表示の結果を示す表示結果コマンド(大当り/外れ)、可変表示パターンを特定可能な可変表示時間コマンド、可変表示結果を導出表示させるタイミングを示す可変停止コマンドなどが含まれる。さらに、主制御部161から演出制御部151へ送信されるコマンドには、大当り中に大当りの進行状況を特定可能なコマンドや、新たな保留記憶の発生を示すコマンド、遊技状態のエラーの発生を示すコマンドなどがある。
演出制御部151は、主制御部161から送信されてくるこれらのコマンドに基づいて可変表示装置278の可変表示内容を決定する。たとえば、演出制御部151は、主制御部161から送信されてくるコマンドに基づいて可変表示結果および可変表示時間を特定し、停止図柄を決定するとともに可変表示パターン(リーチの有無、リーチの種類)を決定し、さらには大当りやリーチに関する予告演出の演出パターンを決定する。演出制御部151は、決定した可変表示内容に従って可変表示装置278を表示制御する。
演出制御基板15は、遊技機枠6側の中継基板14を介して、表示器54とも接続されている。演出制御部151は、可変表示装置278に対して可変表示等のための表示制御信号を送信するとともに、可変表示装置278の表示と連動する表示を行なうための表示制御信号を表示器54へ送信可能である。なお、中継基板14および表示器54は、CU3側に設けるようにしてもよい。この場合、P台2側の演出制御基板15は、CU3に設けた中継基板14と接続される。
払出制御基板17は、前枠6(遊技枠)に設けてある。払出制御基板17には、払出制御部171である払出制御用マイクロコンピュータが搭載されている。払出制御部171は、遊技機の払出制御機能部である。払出制御用マイクロコンピュータは、制御中枢としてのCPU(Central Processing Unit)、CPUが動作するためのプログラムや制御データ等を記憶しているROM(Read Only Member)、CPUのワークエリアとして機能するRAM(Random Access Memory)、周辺機器との信号の整合性を保つための入出力インターフェイス等が設けられている。
また、払出制御基板17に対し、発射玉検出スイッチ903、アウト玉検出スイッチ701、ファール玉検出スイッチ33、計数ボタン28、電波センサ173が電気的に接続された状態で設けられている。この電波センサ173は、電波を不正に発信して主に玉上げスイッチ(上)41aを常時オン状態にする不正行為を検知するためのものである。この電波センサ173の検出信号が払出制御基板17の入力ポート(図示省略)を介して払出制御部171へ入力される。玉上げスイッチ(上)41aは、オンからオフに変化したことにより遊技玉の発射を検出し、その検知に基づいて、払出制御部171が、遊技玉数を「1」減算する。
したがって、不正電波によりこの玉上げスイッチ(上)41aが常時オン状態になると、いくら玉を発射しても遊技玉数が減算されない状態となる。このような電波による不正を電波センサ173により検知する。
主制御基板16から払出制御基板17に対し、主制御チップID、入賞口情報、ラウンド情報、接続確認信号、入賞検出信号、始動入賞口入賞情報、エラー情報、図柄確定回数、大当り情報、メーカ固有大当りの情報が送信される。
主制御チップID(メインチップIDとも言う)は、パチンコ機2の主制御基板16に記録されているチップIDのことであり、パチンコ機2の電源投入時に払出制御基板17に対して送信される情報である。入賞口情報は、入賞口の種類(始動入賞口、普通入賞口、大入賞口)と、賞球数(入賞口に遊技玉が入ったときの払出玉数)とを含む情報であり、パチンコ機2の電源投入時に払出制御基板17に対して送信される。ラウンド情報は、大当りしたときのラウンド数の情報であり、パチンコ機2の電源投入時に払出制御基板17に対して送信される。
接続確認信号は、主制御基板16と払出制御基板17とが接続されていることを確認するための信号であり、主制御基板16から払出制御基板17へ所定の電圧の信号が常時供給されており、払出制御基板17がその所定電圧信号を受信していることを条件として払出制御基板17が動作制御するように構成されている。入賞検出信号は、始動入賞口以外の入賞口に入賞したパチンコ玉の検出信号である。この検出信号を受けた払出制御基板17は、その入賞玉1個に対して付与すべき玉数を、遊技玉数と加算玉数とに加算する制御を行なう。
始動入賞口入賞情報とは、始動入賞口のいずれかにパチンコ玉が入賞したことを示す情報である。エラー情報とは、主制御基板16が遊技制御を行なっている最中にエラーが発生した場合にその旨を払出制御基板17へ通知するための情報である。
図柄確定回数とは、各始動入賞口への入賞に対する可変表示装置の表示結果として確定した図柄の情報である。
大当り情報とは、大当りが発生したことを示す情報であり、その内訳は、各メーカ共通の大当りを示す共通大当り情報とメーカ固有の大当りを示すメーカ固有大当り情報とがある。共通大当り情報は、たとえば15ラウンド大当り等のように、各遊技機メーカが共通に採用している大当りであり、その大当りに伴って確変が発生する場合には確変情報を含み、その大当りに伴って時短状態(可変表示装置の可変表示時間を短縮する制御状態)が発生する場合にはその時短情報を含んでいる。メーカ固有大当りとは、たとえば突然確変(突確)のような、或る遊技機メーカのみが採用している大当り状態のことである。
払出制御基板17から主制御基板16へ、ヘルスチェックコマンドと賞球個数受付コマンドとが送信される。ヘルスチェックコマンドとは、主制御基板16が正常に動作しているか否かをチェックするためのコマンドである。賞球個数受付コマンドとは、加算玉数を受付けた旨を示すコマンドである。
アウト玉検出スイッチ701から払出制御基板17へアウト玉検出信号が入力される。このアウト玉検出信号が入力された払出制御基板17は、後述するように遊技中玉数(遊技領域27に浮遊している浮遊玉の玉数)を減算更新する。ファール玉検出スイッチ33からファール玉検出信号が入力された払出制御基板17では、後述するように、加算玉数と遊技玉数とを加算更新するとともに、遊技中玉数を減算更新する。発射玉検出スイッチ903から払出制御基板17へ発射玉検出信号が入力される。この発射玉検出信号が入力された払出制御基板17は、遊技中玉数を減算更新する。
カードユニット3のセキュリティ基板325とパチンコ機2の払出制御基板17とが電気的に接続されており、セキュリティ基板325から払出制御基板17へ、後述するように各種コマンドが送信される。逆に、払出制御基板17からセキュリティ基板325へ、後述するように各種レスポンスが送信される。
前枠6(遊技枠)には、払出制御基板17の他、中継基板14、発射制御基板31、発射モータ18、遊技玉数表示器29が設けられている。なお、遊技玉数表示器29は前枠6に直接取り付けてもよいが、玉が払い出される通常のパチンコ機の前面側に設けられた上皿や下皿のように、前枠6に対して回動可能な態様で設けるようにしてもよい。この点は、表示器54についても同様である。払出制御基板17の払出制御部171は遊技玉数表示器29に遊技者が現在所有している遊技玉数を表示する。
払出制御基板17から発射制御基板31へ、発射制御信号と発射許可信号とが出力される。それを受けた発射制御基板31は、発射モータ18を励磁するための信号を出力する。これにより、パチンコ玉が遊技領域27へ弾発発射される状態となる。発射制御基板31は、遊技者が打球操作ハンドル25に触れていることを検出するタッチリングの入力信号が入力されているときに発射モータ励磁出力を発し、発射モータ18を駆動させる。
前枠6(遊技枠)には、表示器54が設けられている。表示器54は、中継基板14を介してカードユニット3の表示制御部350からの表示データ(表示制御信号)を受信する。さらに、表示器54は、中継基板14を介して演出制御基板15からの表示データ(表示制御信号)を受信する。
中継基板14には演出制御基板15および表示制御部350のうち一方からの表示制御信号を表示器54へ出力して表示器54に演出制御基板15または表示制御部350からの表示制御信号に基づく画像を表示するための切換回路141が搭載されている。
なお、本実施の形態では、パチンコ機2側の表示器54がCU側で制御されるように構成されているが、これに代えて、パチンコ機2側に表示器54を表示制御するための表示制御用基板を設けてもよい。この場合、表示制御用基板は、払出制御部171の指令に基づいて表示器54を表示制御する。
RAMクリアスイッチ293は、P台2のRAMに記憶している遊技台情報や遊技情報を消去するためのスイッチであり、P台がエラー状態となった後当該スイッチを店員が操作することで初期状態に戻すことが可能となる。このRAMクリアスイッチ293は、たとえばカードが排出された後に店員により操作される。
<パチンコ玉の循環経路>
ここでは、図1および図2を参照して、パチンコ機2におけるパチンコ玉の循環経路を概説する。
遊技者が打球操作ハンドル25を操作すると、発射モータ18が駆動する。これにより、発射位置にまで供給されてきた1個のパチンコ玉が打球ハンマーにより弾発されてそのパチンコ玉が遊技領域27に打込まれる。
遊技玉の発射検出は、玉上げスイッチ(上)41aがオンからオフに変化したことにより検出される。この検出は、払出制御部171が設けられている払出制御基板17(図2参照)でのポート入力により検知され、その検知に基づいて、払出制御部171が、遊技玉数を「1」減算する。
遊技領域27に打込まれた玉のうち、アウト口154(図1参照)に進入したアウト玉は、アウト玉流下経路を流下し、その途中に設けられたアウト玉検出スイッチ701によって検出される。ファール玉は、ファール玉戻り経路を通って流下し、その途中に設けられたファール玉検出スイッチ33によって検出される。
入賞口や可変入賞球装置に入賞したすべての入賞玉は、遊技機背面で集められて回収玉通過経路に誘導される。同様に、アウト玉およびファール玉も回収玉通過経路に誘導される。回収玉通過経路には発射玉検出スイッチ903が設けられている。このため、入賞玉、アウト玉、およびファール玉のすべてが発射玉検出スイッチ903によって検出される。つまり、発射玉検出スイッチ903は、弾発されたパチンコ玉のすべてを検出するスイッチである。このスイッチの検出数と、発射モータ18により弾発されたパチンコ玉の弾発数とが等しくなったときに、打込まれたパチンコ玉がすべて回収されたと判定できる。
そこで、本実施の形態では、発射玉検出スイッチ903の検出数と弾発数との差を演算しており、この差数が0でないときには、遊技領域27に打込まれた玉の回収が済んでいないと判定している。この判定をすることによって、遊技領域27を転動中であるか、遊技領域の釘等の間に引っ掛かって落下していないような浮遊玉が存在していないかどうかを判断できる。
<表示器(タッチパネル)の表示制御>
図3は、遊技玉数表示器29および表示器54の表示制御を説明するためのブロック図である。この図3では、図2に示したCU3およびP台2の各種構成のうち、遊技玉数表示器29および表示器54の表示制御に関わる主要な構成のみを図示している。
主制御基板16に搭載されている主制御部161は、遊技制御に伴い変化する各種の遊技情報を払出制御基板17の払出制御部171へ送信する。払出制御部171は、主制御部161から送信されてくる遊技情報に基づいて玉数情報等をCU制御部323へ送信するとともに、遊技玉数表示器29を表示制御する。その結果、遊技玉数表示器29には、遊技者が現在所有している遊技玉数が表示され、玉の発射あるいは計数操作に基づいて遊技玉数の表示が減算更新され、入賞の発生あるいは貸玉操作等に基づいて遊技玉数の表示が加算更新される。
CU制御部323は、払出制御部171から送信されてくる玉数情報等に基づいて自ら記憶している遊技玉数等の遊技情報を更新する。また、CU制御部323はカード残額や遊技者の持玉を記憶しており、P台2側の表示器54にそれら記憶している遊技情報に基づいた表示をするための情報を表示制御部350へ送信する。表示制御部350は、その情報に基づいた表示制御信号をP台2側の中継基板14へ送信する。
一方、中継基板14には、演出制御基板15の演出制御部151からの表示制御信号も入力される。演出制御部151は、主制御部161から受信する各種の可変表示コマンドに基づいて可変表示装置278を表示制御するための表示制御信号を可変表示装置278へ送信するとともに、表示器54を表示制御するための表示制御信号を中継基板14へも送信する。
中継基板14には、通常、CU3の表示制御部350側のみから表示制御信号が送信されており、演出制御部151からは表示制御信号は送信されない。その結果、通常は、表示器54にはCU3の表示制御部350からの表示制御信号に基づいた持点やカード残額などの情報が表示される。ところが、演出制御部151は、主制御部161から送信されてくるコマンドに基づいて遊技機の遊技状態の変化を検出すると、その遊技状態の変化に応じた表示制御信号を中継基板14へ送信する。
切換回路141は、演出制御部151からの表示制御信号の入力があると、表示制御部350から入力される表示制御信号ではなく、演出制御部151から入力される表示制御信号を表示器54へ送信するように回路を切換える。その結果、表示器54には通常時はCU3側の表示制御に基づいた持点等の表示がなされ、たとえば、可変表示装置278に大当り表示がなされるなどして遊技状態が変化すると、表示器54の表示が大当り表示などの可変表示装置278の表示と連動するものに切換えられる。また、その後、演出制御部151から中継基板14への表示制御信号の送信が停止すると、切換回路141は、信号の入力元を切換え元に戻す。その結果、表示器54には、再び、CU3側の表示制御に基づいた情報が表示される。
つまり、上記の例は、切換回路141は、演出制御部151および表示制御部350のうち、演出制御部151から入力される表示制御信号を優先して表示器54へ送信する構成である。通常時は表示制御部350のみから表示制御信号が切換回路141へと入力されるので、表示器54にはCU3側の表示制御に基づいた情報が表示され、大当り発生などの切換条件が成立して演出制御部151から表示制御信号が入力されると、その表示制御信号が優先されて表示器54へ送信され、表示器54の表示が切換えられる。
しかしながら、これに代えて、切換回路141は、演出制御部151および表示制御部350のうち、表示制御部350から入力される表示制御信号を優先して表示器54へ送信する構成を採用してもよい。
すなわち、切換回路141は、通常時は演出制御部151から常時受信する表示制御信号に基づいて表示器54に可変表示装置278の表示と連動する演出表示を行ない、遊技点や持点が残り少なくなどの所定の切換条件が成立してCU3側からその旨を表示するための表示制御信号が入力されると、信号の入力元を演出制御部151から表示制御部359に切換えることにより、表示器54が遊技演出画面から遊技点や持点が残り少ない旨等を報知する画面に変化するようにしてもよい。
本実施の形態では、遊技玉数を表示する遊技玉数表示器29の表示制御はCU3ではなく、遊技玉数の変動に直接的に関わるP台2によって行なわれるため、遊技玉数が遊技で使用されて減算され、あるいは遊技によって加算された場合に、その更新後の遊技玉数を即座に遊技玉数表示器29に反映させることができる。
仮に、遊技玉数表示器29の表示制御をCU3が行なうものとした場合には、P台2からCU3に対して送信する遊技玉数の情報に基づいてCU3から遊技玉数表示器29へと表示制御信号が送られるものとなる、しかし、その場合、CU3とP台2との通信状況等によって、実際には遊技玉数が変化しているものの、その変化が遊技玉数表示器29にすぐに反映されないものとなるという不都合が生じるおそれがある。本実施の形態によれば、このような不都合が生じることを防止できる。
一方、表示器54はCU3側で表示制御するために、遊技玉数表示器29を表示制御するP台2がさらに表示器54をも表示制御する場合と比較して、P台2の表示制御負担を軽減できる。
ここで、表示器54の表示を切り替える具体例を挙げる。たとえば、通常時は表示器(タッチパネル)54にCU3の表示制御部350の表示制御に基づいたカード残額等の表示をし、大当り発生等の遊技状態の変化に応じて表示器54の表示を可変表示装置278の表示と連動したものに切換える例を挙げることができる。
あるいは、通常時は表示器(タッチパネル)54に可変表示装置278の表示と連動した表示(演出制御部151の表示制御に基づく)をし、遊技点の減少に応じて表示器54に遊技点が残り少ないことを報知する画像を表示する例を挙げることができる。
なお、演出制御部151から中継基板14に送信される表示制御信号で表示器54が表示動作する場合には、中継基板14は単に演出制御部151から送信されてきた信号を中継してそのまま表示器54に送信する機能を備えておけばよい。これに対して、表示器54を表示動作させるための表示制御信号の信号形態と、演出制御部151から送信される表示制御信号との信号形態とが異なる場合も考えられ、この場合には、中継基板14に切換回路141に加えて信号形態を変換する変換回路を設ければよい。
さらに、切換え条件成立時に演出制御部151から送信される表示制御信号によって表示器54に表示される演出画像と、同じく演出制御部151から送信される表示制御信号によって可変表示装置278に表示される画像とが同じものであってもよく、異なるものであってもよい。異なるものとした場合には、演出制御部151には可変表示装置278用の画像データと表示器54用の画像データとの2種類の画像データを記憶させておく必要がある。
また、遊技玉数表示器29は、主制御部161が表示制御する構成としてもよく、あるいは、主制御部161から演出制御部151へ遊技玉数に関するコマンドを送信することによって演出制御部151が表示制御する構成としてもよい。
以上、説明した本実施の形態によれば、P台2の表示器54には可変表示に関する演出情報を表示可能であるために、可変表示装置278と併せて演出効果の高い遊技を提供できる。しかも、表示器54にCU3側から送られてくる遊技情報を表示する条件が成立したときには、CU3によってその遊技情報を表示器54に表示するための表示制御が実行されるため、その条件の成立の際には表示器54を遊技演出ばかりでなくCU3による遊技情報の表示にも活用でき、しかも遊技情報の表示に伴うP台2の表示制御負担も軽減できる。
<カードユニットおよびパチンコ機に発生した異常の通知処理>
図4は、相互認証の結果、異常を検知した場合の通知処理を説明するための説明図である。
図4を参照して、CU制御部323、セキュリティ基板325、払出制御部171、あるいは主制御基板16において異常が発生した場合には、図4の矢印で示す方向に対して通知が行なわれる。ここで言う異常には、CU制御部323、セキュリティ基板325、払出制御部171、あるいは主制御基板16を、不正に製造された他のものに差し替えるとか、あるいはノイズ等により誤作動したり故障したりした場合や、断線等によるオフライン状態などが含まれる。図4に示される鍵管理サーバ800は、カードユニット3内部の電子部品のシリアルID(SIDとも言う)毎に対応付けて、CU制御部323のSIDと認証鍵とを記憶している鍵の管理サーバである。また、鍵管理サーバ800は、主制御基板16と互いに通信可能なサーバである。鍵管理サーバ800は、全国の複数のホールのホールサーバ801と通信可能に接続されている。
まず、カードユニット3のセキュリティ基板325により異常が発生した場合には、前述したCU制御部323とセキュリティ基板325との間で行なわれる相互認証の結果、CU制御部323が異常を検知する。この相互認証では、後述するシリアルID認証と基板認証鍵認証の他に、セッション鍵による認証も含まれている。
シリアルIDは、セキュリティ基板325のシリアルID(基板シリアルID)であり、セキュリティ基板325のSC325bを製造する段階において、該SC325bのROMに記憶されている。また、CU3が遊技場に搬入された後、ホールサーバ801に接続されたときに、鍵管理センタの鍵管理サーバ800からホールサーバ801経由で基板シリアルIDがダウンロードされてCU制御部323に記憶される。
CU制御部323がセキュリティ基板325の異常を検知した場合、CU制御部323はホールサーバ801にその旨を通知するとともに、カードユニット3の表示制御部350に異常報知コマンドを送信する。CU制御部323は、表示器312に異常発生した旨の表示を行なう制御を表示制御部350に行なわせるとともに、異常報知ランプ(図示せず)を点灯または点滅させて異常報知を行なう。さらに、CU制御部323は、外部通信部からホール用管理コンピュータへ異常が発生した旨の信号を送信する。
カードユニット3のCU制御部323により異常が発生した場合には、前述した相互認証によりセキュリティ基板325が異常発生を検知し、その旨を示す信号(異常通知信号)を払出制御部171に通知する。払出制御部171はそれを受けて異常発生した旨を主制御基板16へ通知する。主制御基板16は、前述と同様に、異常報知ランプを作動させる制御を行なうとともにホール用管理コンピュータへ異常が発生した旨の信号を送信する。
セキュリティ基板325が払出制御部171の異常を検知した場合には、その旨をCU制御部323へ通知し、CU制御部323がその旨をホールサーバ801へ通知する。
このように、セキュリティ基板325は、CU制御部323の異常を検知したときにはその旨を払出制御部171へ通知する一方、払出制御部171の異常を検知したときには、その旨をCU制御部323へ通知するものであり、セキュリティ基板325による異常発生の通知先がそれぞれ異なる。その理由は、異常が発生した制御部に対して異常が発生した旨を通知しても、何ら異常報知のための制御が行なわれず、異常防止対策にはならないためである。しかも、セキュリティ基板325は、通信制御の機能は有しているものの異常報知制御の機能は有していない。よって、自ら異常報知の制御が行なえず、そのために必ず異常が発生した制御部とは反対側の制御部の方向に異常発生した旨の通知を行なうのである。なお、セキュリティ基板325からの異常発生の通知を受けた払出制御部171は、その旨を主制御基板16へ通知する。主制御基板16はその通知を受けて、前述と同様の異常報知のための制御を行なう。
払出制御部171に異常が発生した場合には、その旨がセキュリティ基板325により検知され、異常が発生した旨がCU制御部323へ通知され、CU制御部323は前述した異常報知制御を行なうとともにホールサーバ801へ異常が発生した旨を通知する。また、払出制御部171に異常が発生した場合には、主制御基板16が異常発生した旨を検知し、その通知を受けて前述した異常発生報知用の制御を行なう。
払出制御基板17は、前述したように、セキュリティ基板325に異常が発生した場合にはそれを検知して主制御基板16へ通知する一方、主制御基板16に異常が発生した場合にはそれを検知してセキュリティ基板325へ異常が発生した旨を通知する。この払出制御基板17も、前述したセキュリティ基板325と同様に、異常が発生した旨を検知した場合にはその異常が発生した制御部に対して通知を行なっても異常報知用の制御が行なわれないために、異常が発生した制御部とは反対側の制御部あるいは制御基板に通知を行なう。なお、セキュリティ基板325と払出制御基板17とは、異常報知ランプや異常報知用表示器等の異常報知手段が接続されておらず、異常を検知しても自ら異常報知制御する機能を有していない。なお、上記の説明では、セキュリティ基板325と払出制御基板17とは、異常報知ランプや異常報知用表示器等の異常報知手段が接続されておらず、異常を検知しても自ら異常報知制御する機能を有していないこととして説明したが、セキュリティ基板325と払出制御基板17とに異常報知の機能を設け、直接異常を発生した旨を通知させてもよい。
<鍵管理サーバから通信制御ICまでの間の通信に使用される暗号鍵>
次に、鍵管理サーバから通信制御ICまでの間の通信に使用される暗号鍵について説明する。図5は、鍵管理サーバから通信制御IC325aまでの間の通信に使用される暗号鍵を説明するための図である。まず、鍵管理サーバから通信制御IC325aまでの間の通信に使用される暗号鍵には、主に基板出荷鍵、基板初期鍵、基板認証鍵、本認証鍵、仮認証鍵、有効鍵(商用)、通信鍵1(セッション鍵)および通信鍵2(セッション鍵)がある。
基板出荷鍵は、CU制御部−SCの間の通信に利用され、出荷以前での通信テスト電文の暗号にのみ使用される。基板初期鍵は、CU制御部−SCの通信に利用され、ホールサーバ801との最初の通信時にCU制御部323が受信し、CU制御部323のRAMに記憶される。SC325bは、製造時の埋め込み情報から基板初期鍵を生成してRAMに記憶する。基板初期鍵を用いた認証用通信(基板初期鍵モード)は限られた期間のみ許容(時限的運用)される。ここで、基板初期鍵モードは、前述したように、ホールサーバ801と少なくとも1回は正常に通信して、基板初期鍵を取得する必要があるため、セキュリティ性は担保されている。
ここで、「限られた期間」とは、たとえば、2日間という限定的期間である。このように、時限的運用を可能にすることによって、ホールにシステムを導入した段階ですぐに鍵管理サーバとの鍵交換ができない場合であっても、システムの導入直後からホールは営業を開始することが可能となる。なお、限定的期間としては、たとえば、毎朝9時〜17時までの間という具合に、1日の中での定めた期間を設定してもよい。
なお、前述の基板初期鍵モードは、基板初期鍵を用いた認証用通信を限られた期間可能にする制限を設けているが、本発明はこれに限定されるものではなく、使用できる金額(カード残額、あるいは現金)を制限してもよい。あるいは、可変表示装置における図柄の変動回数が一定回数に達した場合にゲームを強制終了させて遊技機を不能動化状態に制御してもよい。または、大当たりの累積回数が一定回数に達した場合にゲームを強制終了させて遊技機を不能動化状態に制御してもよい。その他、現金を投入することによる遊技のみを許容してカード残額を使用した遊技ができないようにしてもよく、持玉を使用した遊技のみに制限するようにしてもよい。
基板認証鍵は、CU制御部−SCの間の通信に利用され、鍵管理サーバより基板セキュリティ情報の一部として受信する暗号鍵である。基板認証鍵を用いた認証用通信を行なうことで、基板初期鍵を用いた時限的運用から恒久的運用(通常運用)に通信モード(基板認証鍵モード)が切換わる。この基板認証鍵は、CU制御部のRAMとSCのRAMとに記憶される。
基板初期鍵を用いた時限的運用および基板認証鍵を用いた恒久的運用のいずれについても、ホールサーバ801に記憶された有効鍵をCU制御部323が受信し、SC325bがその有効鍵を通信制御IC325aに対して設定することによりP台とCUとの間の通信が可能となることで実現される。
本認証鍵は、SC−通信制御ICの間の通信に利用され、鍵管理サーバから受信した更新情報から、SC325bにより生成されてSC325bのRAMに記憶されるとともに、通信制御IC325aにおいてもSC325bと同様に更新情報から生成されて通信制御IC325aのRAMに記憶される。なお、この本認証鍵は、鍵管理サーバなどから本認証鍵そのものを取得するようにしてもよい。また、鍵管理サーバなどから更新情報を受信することなくCU制御部323と通信制御IC325aとが自ら生成してもよい。さらに、鍵管理サーバなどから所定の第1データを取得するとともにCU制御部323と通信制御IC325aとが自ら所定の第2データを生成し、それら第1データと第2データとから本認証鍵を生成するようにしてもよい。
仮認証鍵は、SC−通信制御ICの間の通信に利用され、本認証鍵が生成されるまでの間(又は設定された許容時間(たとえば2日)が経過するまでの間)、SC325bと通信制御IC325aとの間での暗号通信に使用される。この仮認証鍵による暗号通信(仮認証鍵モード)は限られた期間(たとえば2日)のみ許容(時限的運用)される。SC325bおよび通信制御IC325aは、製造段階から仮認証鍵をそれぞれのROMに記憶している。有効鍵(商用)は、ホールサーバ801との最初の通信時にCU制御部323経由でSC325bが受信し、通信制御IC325aに対して送信(設定)する鍵である。有効鍵が設定されることによってP台との通信が可能になる。なお、有効鍵は、通信制御IC325a活性化用のデータである。換言すると、有効鍵は、CUとP台との間の通信を許可するための許可情報である。
通信鍵1(セッション鍵)は、CU制御部−SCの間の通信に利用され、対遊技機用の業務電文通信に用いられ、SC325bが何らかの変数を用いて、毎営業日作成している。該変数として、たとえば、カウンタ値(乱数)や日時情報などを用いてもよい。通信鍵2(セッション鍵)は、SC−通信制御ICの間の通信に利用され、対遊技機用の業務電文通信に用いられる。
なお、前述に説明した鍵は、鍵のデータがそれぞれの部分にそのまま埋込まれている構成であっても、鍵のデータを生成するための情報がそれぞれの部分に記憶されていて、該情報を利用いて鍵のデータを生成する構成であってもよい。
次に、暗号鍵の取得方法と、取得した暗号鍵を用いて暗号通信を行なう方法について説明する。まず、SC325bは、ホールサーバ801との最初の通信時にCU制御部323経由で有効鍵を取得する。SC325bは、取得した有効鍵を通信制御IC325aに対して送信(設定)することで、P台との通信が可能になる。CU制御部323はホールサーバ801との最初の通信時に基板初期鍵を受信し、CU制御部323のRAMに記憶される。このCU制御部323のRAM内の記憶エリアによって鍵を記憶する鍵記憶エリアが構成されている。SC325bは、製造時の埋め込み情報から基板初期鍵を生成してRAMに記憶する。このSC325bのRAM内の記憶エリアによって鍵を記憶する鍵記憶エリアが構成されている。SC325bは、取得した基板初期鍵を用いてCU制御部323と暗号認証を行ない、該基板初期鍵を用いて時限的にCU制御部323と暗号通信を行なう。
また、電源投入時にCU制御部323から送られてきた接続要求を受信したホールサーバ801は、当該ホールサーバ801が設置されている遊技場を識別するための統一店舗コードをCU制御部323へ返信する。具体的には、ホールサーバ801のCPUの制御にしたがってホールサーバ801の入出力インターフェイスからCU制御部323へ統一店舗コードが送信される。
一方、CU制御部323とSC325bとの間では、両者に初期情報として記憶されている基板メーカコードを用いた認証が行なわれる。基板メーカコードとは、セキュリティ基板325を製造したメーカを特定するコードのことである。基板メーカコードを用いた認証に成功したことを条件として、基板接続要求と基板接続応答とのやり取りが行なわれる(図52参照)。CU制御部323からSC325bへ送信される基板接続要求の中に上記統一店舗コードが含まれており、基板接続要求を受信することによりSC325bが統一店舗コードを取得する。
次に、CU制御部323は、鍵管理サーバに対して基板セキュリティ情報を要求し、鍵管理サーバがホールサーバ801を介して送信してきた基板セキュリティ情報を受信することで、該基板セキュリティ情報に含まれる基板認証鍵を取得する。CU制御部は、取得した基板認証鍵を用いてSCと暗号認証を行ない、該基板認証鍵を用いてSCと暗号通信を行なう。なお、CU制御部323は、基板認証鍵を取得後すぐに基板初期鍵から基板認証鍵に鍵を変更するのではなく、後述するように遊技機が非稼動状態になっていることを条件にして鍵を変更する。
この基板認証鍵は、鍵管理サーバなどから取得する代わりに、CU制御部323が自ら生成してもよく、また、鍵管理サーバなどから所定の第1データを取得するとともにCU制御部323が自ら所定の第2データを生成し、それら第1データと第2データとから基板認証鍵を生成するようにしてもよい。
次に、SC325bは、記憶してある仮認証鍵を用いて通信制御IC325aと暗号通信を行なう。そして、SCは、基板認証鍵を用いてCU制御部と暗号通信を行なうことで鍵管理サーバから取得した更新情報を仮認証鍵で復号し、基板問合せ番号を照会する。SCは、照会した基板問合せ番号が一致した場合、更新情報から本認証鍵を生成し、生成した本認証鍵を用いて通信制御IC325aと暗号通信を行なう。なお、本認証鍵は、通信制御IC325aにおいても出荷時から記憶されているものではなく、SC325bと同様に更新情報から生成される。
次に、SCは、CU制御部に対して通信鍵1を通知し、以降のCU制御部との間の通信を通信鍵1を用いて行なうことで、遊技機との業務電文通信が可能となる。また、SCは、通信制御ICに対して有効鍵を設定することで、通信制御ICから通信鍵2の通知を受け、以降の通信制御ICとの間の通信を通信鍵2を用いて行なうことで、遊技機との業務電文通信が可能となる。
<カードユニット側とパチンコ機側との送受信態様>
次に、図6は、カードユニット3側とパチンコ機2側とのそれぞれで記憶している各種データの内の主なものおよびその送受信態様を示す模式図である。図6を参照して、カードユニット3側(CU側)とパチンコ機2側(P台側)とのそれぞれで記憶している各種データの内の主なものおよびその送受信態様を説明する。
本実施の形態においては、P台2側において遊技玉数の変動を算出して現在の最新の遊技玉数を記憶・管理している。CU3側においても現在の遊技玉数の算出・記憶を行なっているが、その遊技玉数はP台2側から送信されてきた情報に基づいたものである。一方、持玉(カード持玉数)や貯玉数、カード残額(残額)は、CU3側において管理・記憶している。
図6では、CU3側のCU制御部323に設けられているRAMの記憶データと、P台2側の払出制御基板17に搭載されているRAMの記憶データとを示している。まず、P台2(パチンコ機2)とCU3(カードユニット3)とが遊技場に設置されて初めて電気的に接続された状態で電源を立上げたときに、P台2側の払出制御基板17は、主制御基板16からメインチップID(主制御チップID)を送信してもらい、そのメインチップIDをCU3側に送信するとともに、払出制御基板17自体が記憶している払出チップID(払出制御チップID)をCU3側へ送信する。
CU3側では、それら送信されてきたメインチップIDと払出チップIDとを記憶する。次に、接続時刻すなわちCU3側とP台2側とが接続されて通信が開始された時刻のデータがCU3側からP台2側へ送信され、P台2側ではその送信されてきた接続時刻を記憶する。
この状態で、メインチップID、払出チップIDおよびCU3側で識別された接続時刻の3つの情報がCU3側とP台2側とに記憶されることとなる。それ以降の電源投入時においては、P台2側からCU3側へそれら3つの情報、すなわち、メインチップIDと払出チップIDと前回の接続時刻データとが送信される。
CU3側では、それら送信されてきたデータと既に記憶しているデータとを照合し、前回と同じP台2が接続されているか否かを判別する。なお、接続時刻のデータは、電源が立上げられる度にCU3側とP台2側との通信が開始された新たな接続時刻データがCU3側からP台2側へ送信されてその新たな接続時刻データをP台2側において記憶することとなる。
CUおよびP台の双方は、電文に「通番」を付加して送信する。また、CUおよびP台の双方は、相手から受信した「通番」を記憶する。「通番」には、「通常通番」、「加算通番」および「計数通番」の3種類がある。「通常通番」は、電文のシーケンス番号を示す。「通常通番」は、CU3側(一次局側)が初期値を「1」として送信時に受信した通番をカウントアップ(+1)して送信する。ただし、再送時は、「通常通番」をカウントアップしない。P台2側(二次局側)は受信した通番をそのまま送信する。なお、通番の連続性が成立しない場合は無応答となる。「加算通番」はCU3がP台2に対して遊技玉の加算を要求する際に用いられる通番である。「計数通番」は、P台2がCU3に対して遊技玉の計数を要求する際に用いられる通番である。
通常通番の更新権はCU3のみが有する。CU3は、送信した通常通番と同じ通常通番が返信されてきたときに、通常通番をバックアップ記憶した上で、更新した通常通番を送信する。加算通番の加算更新権はCU3のみが有する。CU3は、加算要求をする場合には、それまで通信に用いていた加算通番に+1した加算通番をP台2へ送信する。P台2は、要求を承諾するときには、同じ加算通番を返信する。要求を拒否するときには、前回、受信した加算通番(今回受信した加算通番−1)を返信する。計数通番の加算更新権はP台2のみが有する。P台2は、計数要求をする場合には、それまで通信に用いていた計数通番に+1した計数通番をCU3へ送信する。CU3は、要求を承諾するときには、同じ計数通番を返信する。要求を拒否するときには、受信した計数通番(今回受信した計数通番−1)を返信する。
以下では、「通常通番」について、CU3が送信時に受信した通番をカウントアップ(+1)して送信する構成について説明する。しかし、本発明は当該構成に限定されるものではなく、P台2およびCU3のそれぞれが、またはP台2が送信時に受信した通番をカウントアップ(+1)して送信し、他方は受信した通番をそのまま送信する構成であってもよい。
また、「加算通番」および「計数通番」は、それぞれ、加算要求の処理および計数要求の処理においてカウントアップされる特別な通番である。以下では、この「加算通番」および「計数通番」がカウントアップされる際、「通常通番」もカウントアップする構成について説明する。しかし、本発明は当該構成に限定されるものではなく、「加算通番」および「計数通番」がカウントアップされる際に「通常通番」のカウントアップを停止する構成であってもよい。なお、以下では、「通常通番」を単に「通番」と称する。また、「加算通番」および「計数通番」を併せて「要求通番」とも称する。
P台2側からCU3側へは、最新遊技台情報(カウント中の遊技台情報)が送信される。この最新遊技台情報は、P台2側の払出制御部171(図2参照)のRAMの最新遊技台情報記憶領域に記憶されている。具体的には、加算玉数カウンタの情報と、減算玉数カウンタの情報と、計数玉数カウンタの情報とが含まれる。なお、遊技玉数は、最新遊技台情報に含まれず、後述するように遊技玉数カウンタのカウント値としてP台2側からCU3側へ送信している。しかし、これに代えて、あるいは遊技玉数カウンタに加えて、遊技玉数も最新遊技台情報に含めてもよい。
これらのカウンタの情報が、まとめてレスポンスとしてCU側へ送信される。加算玉数カウンタは、加算玉数をカウントするカウンタである。加算玉は、「賞球玉数×入賞個数」と「バック玉数」との和である。なお、バック玉とはファール玉のことである。つまり、加算玉とは、加算玉カウンタが遊技玉に加算すべき数を示す。減算玉数カウンタは、減算玉数をカウントするカウンタである。減算玉は、「発射玉数」である。つまり、玉上げスイッチ(上)41aのオンからオフへの出力変化により検出された玉数である。なお、「減算玉数」には、「計数玉数」は含まれない。計数玉数カウンタは、計数玉数をカウントするカウンタである。計数玉は、「計数操作によって遊技玉から持玉に変換された玉数」である。ここで、「賞球玉」は、入賞口へ玉が入賞することにより払出される玉であり、セーフ玉である。「発射玉」は、遊技機が発射した玉であり、バック玉がある場合はバック玉を減算した玉数が発射玉数となる。「バック玉」は、発射玉が盤面上に跳出せずに戻ってきた玉である。「アウト口通過玉」は、アウト口154を通過した玉であり、アウト玉とセーフ玉の合計玉数がアウト口通過玉数を意味する。
たとえば、遊技領域27に打込まれたパチンコ玉が入賞して主制御基板16から入賞情報が払出制御基板17へ送信されてきたときに、その入賞情報に基づいて遊技玉を加算すべき加算玉数を加算玉数カウンタがカウントし、その加算玉数カウンタの値(加算玉数)をP台2側からCU3側へ送信する。また、パチンコ玉が遊技領域27内に発射されていることによる玉上げスイッチ(上)41aのオンからオフへの出力変化に基づいて減算玉数カウンタが発射玉数を減算玉数としてカウントし、その減算玉数カウンタの値(減算玉数)をP台2側からCU3側へ送信する。
あるいは、払出制御部171は、計数ボタン28の押下により、遊技玉数を計数玉数としてカウントし、その計数玉数カウンタの値(計数玉数)をP台2側からCU3側へ送信する。
P台2側においては、加算玉数カウンタ、減算玉数カウンタ、および計数玉数カウンタの値をCU3側へ送信する毎に、それらカウント値を前回遊技台情報記憶領域(払出制御部171のRAM等)にバックアップデータとして記憶(書換え)した後、最新遊技台情報としての加算玉数カウンタ、減算玉数カウンタ、および計数玉数カウンタの値を0クリアする(遊技玉数カウンタを除く)。なお、本実施の形態において「クリア」とは「初期化」と同じ意味である。
その結果、前回遊技台情報(直前に送信した遊技台情報)の記憶エリアに、直前にCU3側に送信した遊技台情報である、加算玉数、減算玉数、および計数玉数のデータがバックアップデータとして記憶される。このバックアップデータは、P台2側からCU3側へ最新遊技台情報が送信されなかった場合に、次の送信に際して今回の各カウンタの値ばかりでなくその送信されなかった前回の各カウンタの値をも送信できるようにするためのものである。この前回遊技台情報に、直前に送信した遊技玉数をさらに加えて記憶するようにしてもよい。
また、払出制御基板17は、入賞の発生、玉の発射、バック玉の発生、および計数玉の発生(遊技玉から持玉への変換)に応じて、遊技玉数カウンタの値を更新し、その更新後の遊技玉数カウンタの値を遊技玉数としてCU3側に送信する。
CU3側においては、RAM内の累計データ記憶領域に、遊技玉数、カード持玉数(単に、持玉数とも言う)、貯玉数、残額、総加算玉数(加算玉数累計)、総減算玉数(減算玉数累計)、およびカード挿入時持玉数を記憶している。なお、カード持玉数は、カード挿入時持玉数から持玉払出数(カード持玉数から遊技玉数に変換した玉数)を減算し、計数玉数を加算した玉数である。つまり、カード持玉数は、現時点で遊技者が所有している持玉数である。
P台2側から送信されてきた加算玉数カウンタの値(加算玉数)に基づいて総加算玉数を加算して玉数を更新する。また、P台2側から送信されてきた減算玉数カウンタの値(減算玉数)に基づいて総減算玉数を減算して玉数を更新する。さらに、P台2から送信されてきた計数玉数カウンタの値に基づいてカード持玉数を加算して更新する。このように、CU3は、P台2より逐一送信されてくる最新遊技台情報によって総加算玉数、総減算玉数、カード持玉数を更新することで最新のそれらの情報を管理することが可能となる。
CU3は、図示のとおり、遊技玉を記憶する領域を備えているとともに、P台2側から遊技玉数カウンタのカウント値(遊技玉数または遊技玉トータル個数情報とも言う)も受信している。CU3は、遊技玉を記憶する領域を以下の手順で更新する。すなわち、CU3は、P台側から送信されてきた加算玉数カウンタの値(加算玉数)、減算玉数カウンタの値(減算玉数)、および計数玉数カウンタの値に基づいて、記憶している遊技玉数を更新するとともに、同じタイミングでP台側から送信されてきた遊技玉数カウンタのカウント値と、更新後の遊技玉数とが一致しているか否かを判定する。一致していれば、遊技の続行を許容するが、一致していなければ、エラー状態に移行する制御を行なう。
その結果、たとえば、異常報知ランプや表示器312によりエラー報知が行なわれ、あるいは、ホール用管理コンピュータやホールサーバ801にエラーが発生した旨のエラー通知信号が送信される(この場合、ホール用管理コンピュータやホールサーバ801によるエラー報知が行なわれるようにしてもよい)。その結果、係員による人為的な対応を促す所定の報知が行なわれる。
なお、エラー状態に移行して遊技を停止させることに代えて、CU3側で記憶している遊技玉数をP台2側から送信されてきた遊技玉数カウンタのカウント値に置き換えるようにしてもよい。または、それに代えて、CU3側で管理している遊技玉数と、P台2側で記憶している遊技玉数との平均値に補正してもよい。
このように、本実施の形態では、CU3側にも遊技玉数を記憶させているが、その遊技玉数がP台2側で管理記憶している遊技玉数と整合するか否かの判定を行なえるようにしている(CU3側機能)。そのため、仮に不正行為その他の事情で、P台2側で記憶している遊技玉数がCU3側で記憶している遊技玉数と一致しない状況が発生しても、その旨をチェックできる。なお、ここでは、CU3側にその判定機能を設けたが、たとえば、CU3と接続されるホールサーバ801またはホール用管理コンピュータによって、CU3側で記憶している遊技玉数とP台2側で記憶している遊技玉数とを受信し、両者が整合しているか否かの判定を行なうものとしてもよい。
図6に示すように、CU3は、カード持玉数、貯玉数を記憶する記憶領域と、受付けた(挿入された)カードのカード残額を記憶する記憶領域と、総加算玉数(加算玉数累計)、総減算玉数(減算玉数累計)およびカード挿入時持玉を記憶する記憶領域をさらに有する。CU制御部323(図2参照)は、貯玉の使用を要求する入力(たとえば、CU3に設けられた再プレイボタン319の押圧入力(ただし、持玉無しのとき))に応じて貯玉を記憶する記憶領域から所定数の貯玉を減算する。
CU制御部323(図2参照)は、持玉の使用を要求する入力(たとえば、持玉有のときのCU3に設けられた再プレイボタン319の押圧入力(ただし、持玉有のとき))に応じて持玉を記憶する記憶領域から所定数の持玉を減算する。さらに、CU制御部323(図2参照)は、カード残額の使用を要求する入力(たとえば、玉貸ボタン321の押圧入力)に応じてカード残額を記憶する記憶領域から所定値を減算する。
遊技者所有の遊技用価値(たとえばプリペイド残額、持玉数、あるいは貯玉数)から価値を引落として遊技に使用する操作を遊技者が行なった場合に、その引落とし分の玉数を遊技玉数カウンタに加算するための加算玉数がCU3側からP台2側へ送信される。P台2側では、それを受けて、遊技玉数カウンタを加算更新する。
本実施の形態に係る遊技システムでは、一方、遊技者所有の遊技用価値を引落としてドリンク等に交換するといういわゆるワゴンサービスのオーダ等を受付けることが可能である。ただし、遊技玉でワゴンサービスを受けることが制限されており、持玉でしかワゴンサービスを受けることができない。これは、各台計数機が配備された従来の封入式のパチンコ機において、皿に残っている計数前の玉を手で掴み出してワゴンサービスに用いることを禁止するようなイメージである。
このため、本実施の形態では、ワゴンサービスを行なう操作が実行されたときに、持玉数がワゴンサービスの希望メニューに対応する玉数に満たない場合、遊技者に計数操作を促すように構成されている。その際に遊技者が計数操作を実行すると、その操作に基づく計数玉数がP台2側からCU3側へ送信される。CU3側では、それを受けて、遊技玉数を減算し、カード持玉数を加算して更新する。
<通信で用いられるフレーム構成(CU制御部−SC間)>
次に、本実施の形態に係るCU制御部323とSC325bとの間での通信について詳しく説明する。当該通信で用いられる電文は、所定のフォーマットからなるフレームで構成されている。送信データ(電文)は、必ず1フレーム単位で送信される。つまり、電文の分割送信は行なわない。また、連続で電文を送信する場合は、1ミリ秒以上の間隔をあける。
CU制御部323とSC325bとの間でやりとりされる電文のフレームには、送信データのデータ長と通番と電文種別を示すコマンドコードと業務電文データが格納されたデータ部とMAC(Message Authentication Code)とCRC(Cyclic Redundancy Check)とが含まれる。MACはメッセージ認証コードであり、その対象範囲はデータ部である。MACは暗号化時のみ付加される。
<CU制御部とSCとの間で送受信するコマンドおよびレスポンス>
次に、CU制御部323とSC325bとの間で送受信されるコマンドおよびレスポンスの概略を説明する。CU制御部323がSC325bに対して電文を送信すると、SC325bはこれに対して応答する電文を送信する。このため、CU制御部323からSC325bに送信される電文がコマンドであり、逆方向の電文がレスポンスである。コマンドおよびレスポンスの双方の電文には、通番および電文名のデータが含まれている。通番は、シーケンス番号で、1から255(サイクリック)まで値である。SC325bは、送信時に受信した通番をカウントアップ(+1)して送信する。ただし、再送時は、通番をカウントアップしない。
<<1.基板接続要求、2.基板接続応答>>
CU制御部323からSC325bに対して基板接続要求という名称のコマンドが送信される。この基板接続要求のコマンドは、SC325bに対して遊技機(P台2)との接続を要求するもの(カードユニット情報を通知して接続要求するもの)である。この基板接続要求の具体的データには、通番、コマンド、統一店舗コード、台番号、および現在時刻データが含まれている。SC325bからCU制御部323に対して基板接続応答という名称のレスポンスが送信される。この基板接続応答のレスポンスは、CU制御部323に対して基板接続要求の応答を通知するもの(接続結果を通知するもの)である。基板接続応答のタイムアウトは3秒である。
<<3.基板出荷鍵要求、4.基板出荷鍵応答>>
CU制御部323からSC325bに対して基板出荷鍵要求のコマンドが送信される。この基板出荷鍵要求のコマンドは、SC325bに対してセキュリティ基板の基板出荷鍵を要求するものである。SC325bからCU制御部323に対して基板出荷鍵応答のレスポンスが送信される。この基板出荷鍵応答のレスポンスは、CU制御部323に対して基板出荷鍵を通知するものであり、基板出荷鍵と基板出荷用MAC鍵とが含まれる。
<<5.基板メーカコード認証要求1、6.基板メーカコード認証応答1>>
CU制御部323からSC325bに対して基板メーカコード認証要求1のコマンドが送信される。基板メーカコードとは、セキュリティ基板325を製造したメーカを特定するコードであり、CU制御部323とSC325bとに記憶されている。この基板メーカコード認証要求1のコマンドは、SC325bに対して基板メーカコードの認証を要求するものである。SC325bからCU制御部323に対して基板メーカコード認証応答1のレスポンスが送信される。この基板メーカコード認証応答1のレスポンスは、CU制御部323に対して基板メーカコードの認証情報を応答するものであり、チャレンジコード(検証側の乱数値)が含まれる。
<<7.基板メーカコード認証要求2、8.基板メーカコード認証応答2>>
CU制御部323からSC325bに対して基板メーカコード認証要求2のコマンドが送信される。この基板メーカコード認証要求2のコマンドは、SC325bに対して基板メーカコードの認証を要求するものであり、レスポンスコード(レスポンス計算結果)、レスポンス計算データ(レスポンス計算に使用した乱数値)が含まれる。
SC325bからCU制御部323に対して基板メーカコード認証応答2のレスポンスが送信される。この基板メーカコード認証応答2のレスポンスは、CU制御部323に対してレスポンスコードのチェック結果を通知するものであり、認証結果、および認証ログ情報(秘匿情報)が含まれる。
<<9.基板シリアルID認証要求1、10.基板シリアルID認証応答1>>
CU制御部323からSC325bに対して基板シリアルID認証要求1のコマンドが送信される。この基板シリアルID認証要求1のコマンドは、SC325bに対して基板シリアルIDの認証を要求するものである。SC325bからCU制御部323に対して基板シリアルID認証応答1のレスポンスが送信される。この基板シリアルID認証応答1のレスポンスは、CU制御部323に対して基板シリアルIDの認証情報を応答するものであり、チャレンジコード(検証側の乱数値)が含まれる。
<<11.基板シリアルID認証要求2、12.基板シリアルID認証応答2>>
CU制御部323からSC325bに対して基板シリアルID認証要求2のコマンドが送信される。この基板シリアルID認証要求2のコマンドは、SC325bに対して基板シリアルIDの認証を要求するものであり、レスポンスコード(レスポンス計算結果)、およびレスポンス計算データ(レスポンス計算に使用した乱数値)が含まれる。
SC325bからCU制御部323に対して基板シリアルID認証応答2のレスポンスが送信される。この基板シリアルID認証応答2のレスポンスは、CU制御部323に対してレスポンスコードのチェック結果を通知するものであり、認証結果、および認証ログ情報(秘匿情報)が含まれる。
<<13.基板初期鍵認証要求1、14.基板初期鍵認証応答1>>
CU制御部323からSC325bに対して基板初期鍵認証要求1のコマンドが送信される。この基板初期鍵認証要求1のコマンドは、SC325bに対して基板初期鍵の認証を要求するものである。SC325bからCU制御部323に対して基板初期鍵認証応答1のレスポンスが送信される。この基板初期鍵認証応答1のレスポンスは、CU制御部323に対して認証情報を通知するものである。
この基板初期鍵認証応答1の具体的データには、認証情報および乱数のデータが含まれている。認証情報は、乱数Aである。乱数は、暗号用パディング文字である。暗号用パディング文字とは、暗号対象となる電文(平文)をデータ長16バイトの暗号鍵で暗号化できるようにするべく、電文(平文)に所定のデータ長の暗号用パディング文字を追加して暗号鍵のデータ長に合わせるためのものである。MACは、メッセージ認証コードである。たとえば、生成した乱数Aを所定のハッシュ関数を利用して演算した値をMACとする。つまり生成した乱数Aのメッセージ・ダイジェストがMACとなる。なお、基板初期鍵認証応答1の通信には、後述する第1セキュリティーモード(以下、SE1モードと称する)で基板初期鍵、基板認証鍵または基板出荷鍵(以下、基板初期鍵/認証鍵/出荷鍵と称する)を用いて暗号化された暗号文が送信される。
<<15.基板初期鍵認証要求2、16.基板初期鍵認証応答2>>
CU制御部323からSC325bに対して基板初期鍵認証要求2のコマンドが送信される。この基板初期鍵認証要求2のコマンドは、SC325bに対して基板初期鍵の認証結果と認証情報を要求するものであり、認証結果、認証情報(乱数B)、乱数(暗号用パディング文字)が含まれる。
SC325bからCU制御部323に対して基板初期鍵認証応答2のレスポンスが送信される。この基板初期鍵認証応答2のレスポンスは、CU制御部323に対して基板初期鍵の認証結果を通知するものであり、認証結果、認証ログ情報(秘匿情報)、乱数(暗号用パディング文字)が含まれる。
<<17.基板認証鍵認証要求1、18.基板認証鍵認証応答1>>
CU制御部323からSC325bに対して基板認証鍵認証要求1のコマンドが送信される。この基板認証鍵認証要求1のコマンドは、SC325bに対して基板認証鍵の認証を要求するものである。SC325bからCU制御部323に対して基板認証鍵認証応答1のレスポンスが送信される。この基板認証鍵認証応答1のレスポンスは、CU制御部323に対して基板認証鍵の認証結果を通知するものであり、認証情報(乱数A)、乱数(暗号用パディング文字)が含まれる。
<<19.基板認証鍵認証要求2、20.基板認証鍵認証応答2>>
CU制御部323からSC325bに対して基板認証鍵認証要求2のコマンドが送信される。この基板認証鍵認証要求2のコマンドは、SC325bに対して基板認証鍵の認証結果と認証情報を通知するものであり、認証結果、認証情報(乱数B)、乱数(暗号用パディング文字)が含まれる。
SC325bからCU制御部323に対して基板認証鍵認証応答2のレスポンスが送信される。この基板認証鍵認証応答2のレスポンスは、CU制御部323に対して基板認証鍵の認証結果を通知するものであり、認証結果、認証ログ情報(秘匿情報)、乱数(暗号用パディング文字)が含まれる。
<<21.基板出荷鍵認証要求1、22.基板出荷鍵認証応答1>>
CU制御部323からSC325bに対して基板出荷鍵認証要求1のコマンドが送信される。この基板出荷鍵認証要求1のコマンドは、SC325bに対して基板出荷鍵の認証情報を要求するものである。SC325bからCU制御部323に対して基板認証鍵認証応答1のレスポンスが送信される。この基板出荷鍵認証応答1のレスポンスは、CU制御部323に対して基板出荷鍵の認証情報を通知するものであり、認証情報(乱数A)、乱数(暗号用パディング文字)が含まれる。
る。
<<23.基板出荷鍵認証要求2、24.基板出荷鍵認証応答2>>
CU制御部323からSC325bに対して基板出荷鍵認証要求2のコマンドが送信される。この基板出荷鍵認証要求2のコマンドは、SC325bに対して基板出荷鍵の認証結果と認証情報を通知するものであり、認証結果、認証情報(乱数B)、乱数(暗号用パディング文字)が含まれる。SC325bからCU制御部323に対して基板出荷鍵認証応答2のレスポンスが送信される。この基板出荷鍵認証応答2のレスポンスは、CU制御部323に対して基板出荷鍵の認証結果を通知するものであり、認証結果、認証ログ情報(秘匿情報)、乱数(暗号用パディング文字)が含まれる。
<<25.基板バージョン情報通知、26.基板バージョン情報応答>>
CU制御部323からSC325bに対して基板バージョン情報通知のコマンドが送信される。この基板バージョン情報通知のコマンドは、SC325bに対して基板認証鍵のバージョンを通知するものであり、基板バージョン(基板認証鍵のバージョン)、乱数(パディング文字)が含まれる。SC325bからCU制御部323に対して基板バージョン情報応答のレスポンスが送信される。この基板バージョン情報応答のレスポンスは、CU制御部323に対してバージョン情報を受信したことを通知するものである。
<<27.基板認証結果通知、28.基板認証結果応答>>
CU制御部323からSC325bに対して基板認証結果通知のコマンドが送信される。この基板認証結果通知のコマンドは、SC325bに対してCU制御部323とSC325bとの間の認証結果を通知するものであり、認証結果、乱数(暗号用パディング文字)が含まれる。SC325bからCU制御部323に対して基板認証結果応答のレスポンスが送信される。この基板認証結果応答のレスポンスは、CU制御部323に対してCU制御部323とSC325bとの間の認証結果を通知するものであり、認証結果、認証ログ情報(秘匿情報)、乱数(暗号用パディング文字)が含まれる。
<<29.セキュリティ基板問合せ指示通知、30.セキュリティ基板問合せ結果>>
CU制御部323からSC325bに対してセキュリティ基板問合せ指示通知のコマンドが送信される。このセキュリティ基板問合せ指示通知のコマンドは、SC325bに対して鍵管理サーバから取得するセキュリティ基板情報の問合せデータを要求するものであり、有効鍵(通信制御IC有効鍵)を含む。SC325bからCU制御部323に対してセキュリティ基板問合せ結果のレスポンスが送信される。このセキュリティ基板問合せ結果のレスポンスは、CU制御部323に対してセキュリティ基板問合せ情報の問合せデータを通知するものであり、問合せ種別(ホールサーバ801問合せ無、鍵管理センター問合せ有)、基板種別(セキュリティ基板情報の種別)、基板シリアル番号、問合せ情報(セキュリティ基板問合せ情報)、乱数(暗号用パディング文字)を含む。
以上のうち、基板初期鍵認証要求2、基板初期鍵認証応答2、基板認証鍵認証応答1、基板認証鍵認証要求2、基板認証鍵認証応答2、基板出荷鍵認証要求2、基板出荷鍵認証応答2、基板バージョン情報通知、基板バージョン情報応答、基板認証結果通知、基板認証結果応答、セキュリティ基板問合せ指示通知、セキュリティ基板問合せ結果は、後述するSE1モードで通信される。
<<31.セキュリティ基板情報通知、32.セキュリティ基板情報結果>>
CU制御部323からSC325bに対してセキュリティ基板情報通知のコマンドが送信される。このセキュリティ基板情報通知のコマンドは、SC325bに対して鍵管理サーバから取得したセキュリティ基板情報を通知するものであり、問合せ結果、基板情報が含まれている。問合せ結果は、基板情報の問合せ結果を示すもので、応答有(基板情報有)と応答有(基板情報無)と応答無(管理サーバ〜CU制御部オフライン)との3種類のいずれかである。基板情報は、セキュリティ基板情報である。この情報は、上記問合せ結果が基板情報有時のみ有効である。なお、この情報は秘匿情報とされる。
SC325bからCU制御部323に対してセキュリティ基板情報結果のレスポンスが送信される。このセキュリティ基板情報結果のレスポンスは、CU制御部323に対してセキュリティ基板情報を受信したことを通知するものであり、受信結果(OK(鍵更新有)、OK(鍵更新無)、NG)、認証ログ情報(秘匿情報)が含まれる。
なお、セキュリティ基板情報通知およびセキュリティ基板情報結果の通信には、後述する第2セキュリティモード(SE2モード)で通信鍵(セッション鍵)を用いて暗号化された暗号文が送信される。通信鍵は、CU制御部323とSC325bとの間の通信に用いる暗号鍵である。
<<33.カウンタ情報要求、34.カウンタ情報応答>>
CU制御部323からSC325bに対してカウンタ情報要求のコマンドが送信される。このカウンタ情報要求のコマンドは、SC325bに対してカウンタ情報を要求するものである。ここで、カウンタ情報とは、後述する第2セキュリティモード(以下、SE2モードと称する)のカウンタ(初期ベクタ)値である。
SC325bからCU制御部323に対してカウンタ情報応答のレスポンスが送信される。このカウンタ情報応答のレスポンスは、CU制御部323に対してカウンタ情報を通知するものである。
カウンタ情報応答には、処理結果と、カウンタ値と、認証ログ情報と乱数(暗号用パディング文字)とが含まれ、後述するSE1モードで通信される。処理結果は処理完了または処理中を示すデータである。カウンタ値は上記のとおり、初期ベクタ値である。ここで、カウンタ値としては、上り方向(SC325bからCU制御部323に向かう方向)と下り方向(CU制御部323からSC325bに向かう方向)とで別のカウンタ値が設定されている。
SC325bは、通信制御ICとの認証処理完了後にカウンタ値を通知する。一方、CU制御部323は処理結果が処理完了となるまで待ち合せする。なお、カウンタ値、認証ログ情報は、処理結果が処理完了時のみ有効である。
<<35.通信鍵要求、36.通信鍵応答>>
CU制御部323からSC325bに対して通信鍵要求のコマンドが送信される。この通信鍵要求のコマンドは、SC325bに対して通信鍵を要求するものである。SC325bからCU制御部323に対して通信鍵応答のレスポンスが送信される。この通信鍵応答のレスポンスは、CU制御部323に対して通信鍵を通知するものであり、通信鍵と認証ログ情報(秘匿情報)とが含まれる。なお、通信鍵応答は後述するSE2モードで通信される。
<<37.遊技機チップ問合せ指示通知、38.遊技機チップ問合せ結果>>
CU制御部323からSC325bに対して遊技機チップ問合せ指示通知のコマンドが送信される。この遊技機チップ問合せ指示通知のコマンドは、SC325bに対して鍵管理サーバに問合せする遊技機チップの情報を要求するものである。SC325bからCU制御部323に対して遊技機チップ問合せ結果のレスポンスが送信される。この遊技機チップ問合せ結果のレスポンスは、CU制御部323に対して鍵管理サーバに問合せする遊技機チップの情報を通知するものである。
遊技機チップ問合せ結果のデータには、通番、取得結果、メーカコード、型式コード、問合せ種別、基板種別、基板シリアル番号、主制御チップID、主制御問合せ情報、払出制御チップID、払出制御問合せ情報が含まれる。
取得結果は、遊技機チップ情報取得結果であり、取得OK、取得NG、取得処理中のいずれかである。メーカーコードは主制御チップメーカコードであり、型式コードは主制御チップ型式コードである。問合せ種別は遊技機チップ情報問合せ種別であり、ホールサーバ801問合せ無、ホールサーバ801問合せ有、鍵管理サーバ問合せ有のいずれかである。なお、遊技機チップ問合せ結果は後述するSE2モードで通信される。
<<39.遊技機チップ情報通知、40.遊技機チップ情報結果>>
CU制御部323からSC325bに対して遊技機チップ情報通知のコマンドが送信される。この遊技機チップ情報通知のコマンドは、SC325bに対して鍵管理サーバから取得した遊技機チップ情報の照合結果を通知するものである。遊技機チップ情報通知のデータには、通番、照合結果、主制御照合結果、払出制御照合結果が含まれる。照合結果は、チップ情報照合結果であり、応答有または応答無(ホールサーバ801〜CU制御部323オフライン)である。主制御照合結果は遊技機主制御チップ照合結果情報であり、払出制御照合結果は遊技機払出制御チップ照合結果情報である。なお、遊技機チップ情報通知は後述するSE2モードで通信される。
SC325bからCU制御部323に対して遊技機チップ情報結果のレスポンスが送信される。この遊技機チップ情報結果のレスポンスは、CU制御部323に対して遊技機チップ照合結果を受信したことを通知するものである。遊技機チップ情報結果のデータには、通番、遊技機チップ情報通知結果が含まれる。なお、遊技機チップ情報結果は後述するSE2モードで通信される。
<<41.基板状態要求、42.基板状態応答>>
CU制御部323からSC325bに対して基板状態要求のコマンドが送信される。この基板状態要求のコマンドは、SC325bに対してセキュリティ基板及び、遊技機の状態を要求するものである。基板状態要求のコマンドには、基板状態要求(付加情報無)と、ヘルスチェックを要求する基板状態要求(ヘルスチェック要求)、動作停止通知をするための基板状態要求(動作停止通知)との3種類がある。いずれも後述するSE2モードで通信される。
SC325bからCU制御部323に対して基板状態応答のレスポンスが送信される。この基板状態応答のレスポンスは、CU制御部323に対してセキュリティ基板及び遊技機の状態を通知するものであり、基板状態応答(付加情報無)と、基板状態要求(ヘルスチェック応答)と、アラーム情報を通知するための基板状態応答(アラーム情報通知)と、セキュリティ基板問合せ結果を通知する基板状態応答(セキュリティ基板問合せ結果)の4種類がある。また、いずれも後述するSE2モードで通信される。
<CU制御部とSCとの通信における主なシーケンス>
<<コマンド、レスポンスの送信>>
まず、CU制御部323とSC325bとの間でのコマンドおよびレスポンスの送信について説明する。CU制御部323(1次局)からSC325b(2次局)に対してコマンドが送信され、SC325bはそのコマンドに応答してレスポンスをCU制御部323に返信する。つまり、業務電文の送信は、CU制御部323を1次局、SC325bを2次局としたコマンド/レスポンス方式である。
CU制御部323からSC325bへのコマンドの送信から次のコマンドの送信までの期間が、200msすなわち0.2秒に制御される。またSC325bからCU制御部323へのレスポンスの送信を行なった後次のレスポンスの送信までの期間が200msすなわち0.2秒に制御される。
なお、ここでは、コマンドおよびレスポンスの送信間隔を200msにしたが、送信間隔をこれよりも長い間隔としても、また、より短い間隔としてもよく、たとえば、その送信間隔をSC325bの発射時間間隔と一致させることも考えられる。
また、CU制御部323は、鍵管理サーバへ問合せ情報を送信し、その応答をSC325bに通知する制御も可能である。すなわち、CU制御部323からSC325bに対して問合せ・通知情報要求を送信し、これに対するSC325bからの問合せ・通知情報の応答を受け、その応答に基づいてCU制御部323は鍵管理サーバに問合せを行なう。問合せ結果が得られると、CU制御部323は、問合せ・通知結果通知をSC325bに送信し、その応答である問合せ・通知結果応答をSC325bから受信する。
<<CU制御部側の通信回線断検知>>
次に、CU制御部323側で通信断が検知された場合の処理について説明する。CU制御部323がSC325bに対してコマンドを送信してから200ms間にレスポンスを受信できなかった場合、再度同じコマンドをSC325bに送信する。さらにその200ms後までの間にレスポンスを受信できなかった場合には、同じコマンドをSC325bに送信するという2回目の再送を行なう。同じコマンドを最大2回までSC325bに再送する。2回目の再送を行なってもSC325bからレスポンスを受信できなかった場合、CU制御部323は「通信断」と判断する。なお、再送時の通番はカウントアップしない。
<<基板状態要求の送信>>
CU制御部323はSC325bとの認証完了後、P台と通信中に応答が受信できない場合、基板状態要求をSC325bに送信することにより、SC325bから基板状態応答(エラー状態)を受信することでP台の通信状態を取得できる。ただし、CU制御部323とSC325bとの間に通信断等が発生している場合はこの限りではない。
<<暗号モード>>
本実施の形態では、セキュリティの高さの異なる複数種類の暗号方式が利用される。ひとつは、第1セキュリティーモード(SE1モード)である。SE1モードは、鍵を加算更新せず、常に固定の鍵を用いて暗号化する低セキュリティーモードの暗号方式である。もうひとつは第2セキュリティモード(SE2モード)である。SE2モードは、平文に対してエクスクルーシブオア(排他的論理和)を行なうデータの元となるカウント値(鍵)を加算更新する高セキュリティーモードである。
SE2モードは、たとえば、カウンタを使った暗号方式であり、そのカウンタは、初期ベクタ値と、電文カウンタ部と暗号ブロックカウンタ部とで構成される。初期ベクタ値は後述のカウンタ情報応答電文で通知する。電文カウンタ部は初期ベクタ値受信時に初期化される。暗号ブロックカウンタ部は電文フレーム作成時に初期化され、ブロック暗号処理完了後に更新される。
電文カウンタ部は送信カウンタと受信カウンタ(上り用カウンタと下り用カウンタ)との2つのカウンタで構成されている。この場合、送信カウンタ(電文カウンタ部)は、電文送信時に更新(+1)されるが、再送時には更新されない。受信カウンタ(電文カウンタ部)は、電文受信時に更新されるが、電文受信時にデータ長NG等が発生した場合には更新されない。また、電文受信時にMAC異常が発生した場合は、カウンタを更新して復号する(カウンタの自動修復)が、それでも復号できない場合はMAC異常とする。なお、MAC異常判定した場合はカウンタを−2する。
<通信で用いられるフレーム構成(CU−P台間)>
次に、本実施の形態に係るCU3とP台2との間での通信について、詳しく説明する。当該通信で用いられる電文は、所定のフォーマットからなるフレームで構成されている。送信データ(電文)は、必ず1フレーム単位で送信される。つまり、電文の分割送信は行なわない。また、連続で電文を送信する場合は、1ミリ秒以上の間隔をあける。
1フレームの送信データは、データ長、通常通番、加算通番、計数通番、コマンド、データ部を含む。「データ長」は、送信データのデータ長(通番〜データ部(業務電文範囲))を示す。「コマンド」は、電文のコマンドコードである。「データ部」は、電文のデータである。
<CUとP台との間で送受信するコマンドおよびレスポンス>
次に図7を参照して、カードユニット(CU)3とパチンコ機(P台)2との間で送受信されるコマンドおよびレスポンスの概略を説明する。図7には、送信方向および送信されるデータがコマンドかレスポンスかの別と送信情報の名称とその概略が示されている。
<<1.リカバリ要求、2.リカバリ応答>>
まず、CU3からP台2に対してリカバリ要求という名称のコマンドが送信される。このリカバリ要求のコマンドは、P台2に対してリカバリ情報を要求するものである。このリカバリ要求に対応して、P台2からCU3に対してリカバリ応答という名称のレスポンスが送信される。このリカバリ応答のレスポンスは、CU3に対してリカバリ情報を通知するものである。
リカバリ要求のコマンドは、CU3が認証を完了をした後にCU3からP台2に対して送信される。リカバリ要求のコマンドは、CU3からP台2に対してリカバリ情報を要求し、CU3が認証完了後、最初に同コマンドを送信する。リカバリ要求は、「通番」、「コマンド」、「前回最終送信通番」および「前回最終送信計数通番」が含まれている。「通番」は、シーケンス番号(1〜255)である。「コマンド」は、状態情報要求のコマンドコードであり、16進表現のバイナリデータで示してある。
「前回最終送信通番」は、前回接続時にP台2に対して最後に送信した状態情報要求のコマンドの通番である。「前回最終送信通番」が“0”の場合、記憶している通番が無い状態を示している。なお、「前回最終送信通番」は、P台2において状態情報応答を送信時に、CU3において状態情報応答受信時に「通番」をP台2、CU3側ともに前回最終送信通番(通番)として記憶する通番である。
「前回最終送信計数通番」は、前回接続時にP台2に対して最後に送信した状態情報要求のレスポンスの計数通番である。「前回最終送信計数通番」は、“0”の場合、記憶している通番が無い状態を示している。なお、「前回最終送信計数通番」は、P台2において状態情報応答を送信時に、CU3に状態情報応答受信時に計数通番をP台2、CU3側ともに前回最終送信計数通番として記憶する通番である。
P台2のリカバリ処理(計数玉数)において、P台2はCU3より通知された「前回最終送信計数通番」を参照して、CU3が計数要求に対する計数処理を実施していなかった場合は計数要求がなかったものとする。この場合、P台2は自らCU3に通知した計数要求に対応する遊技玉の減算処理を実行しない。一方、P台2はCU3より通知された「前回最終送信計数通番」を参照して、CU3が計数処理を実施済と判定したときには計数前の遊技玉数から計数玉数を減算して遊技玉を確定する。
リカバリ応答のレスポンスは、CU3に対してP台2で保持しているリカバリ情報を応答するものである。リカバリ情報は、「通番」、「コマンド」、「前回最終送信通番」、「前回挿入中カードID」、「前回カード挿入時刻」、「前回最終送信加算通番」、「遊技情報格納有無」、「前回遊技台情報」および「前回遊技情報」を含んでいる。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
「前回最終送信通番」は、前回接続時にCU3に対して最後に送信した状態情報応答のレスポンスに含まれる通番のデータであり、“0”のときは保持している通番がない場合である。「前回挿入中カードID」は、前回接続時に挿入中だったカードのカードIDのデータであり、“0”のときは挿入中のカードがない場合である。P台2の払出制御部171は、CU3から送信される情報に基づいて挿入中であったカードIDを記憶保持している。
「前回カード挿入時刻」は、前回接続時に挿入中だったカードの挿入時刻のデータであり、“0”のときは挿入中のカードがない場合である。このデータも、年情報を2桁YY、月情報を2桁MM、日情報を2桁DD、時間情報を2桁hh、分情報を2桁mm、秒情報を2桁ssで表されるデータである。「前回最終送信加算通番」は、前回接続時にCU3に対して最後に送信した状態情報応答のレスポンスに含まれる加算通番であり、“0”のときは当該加算通番がない場合である。「遊技情報格納有無」は、遊技情報を格納していない場合“0x00”、遊技情報を格納している場合“0x01”である。
「前回遊技台情報」は、CU3に前回通知した遊技台情報であり、「遊技玉数」、「発射玉数」、「アウト口通過玉数」、「総賞球玉数」、「計数玉数」および「計数通番」の情報を含んでいる。「遊技玉数」は、CU3に前回通知した遊技玉数である。「発射玉数」は、CU3に前回通知した発射玉数である。「アウト口通過玉数」は、CU3に前回通知したアウト口通過玉数である。「総賞球玉数」は、CU3に前回通知した総賞球玉数である。「計数玉数」は、CU3に前回通知した計数玉数である。「計数通番」は、CU3に前回通知した計数通番である。
「前回遊技情報」は、CU3に前回通知した遊技情報であり、「遊技情報数」、「種別情報1」〜「種別情報n」、「賞球情報1」〜「賞球情報n」の情報を含んでいる。「遊技情報数」は、CU3に前回通知した遊技情報の個数(0〜n)である。なお、n=0〜22で可変長である。「種別情報1」は、CU3に前回通知した遊技種別情報1である。「種別情報n」は、CU3に前回通知した遊技種別情報nである。「賞球情報1」は、CU3に前回通知した遊技賞球情報1である。「賞球情報n」は、CU3に前回通知した遊技賞球情報nである。
なお、「前回最終送信加算通番」は、CU3において状態情報要求を送信時、P台2において状態情報要求受信時に、CU3側、P台2ともに前回最終送信加算通番として記憶する通番である。
P台2はCU3から先に受信するリカバリ要求に含まれる「前回最終送信通番」と、P台2が記憶している前回最終送信通番とを比較して、両者が一致しているか否かを判定する。一致している場合にはリカバリ情報の送信の必要無と判断し、不一致の場合にはリカバリ情報の送信の必要有と判断する。前者の場合には、リカバリ応答内の情報を「遊技情報格納無」としてリカバリデータ(遊技情報)を含まないリカバリ応答をCU3へ返信する。一方、後者の場合には、リカバリ応答内の情報を「遊技情報格納有」としてリカバリデータ(遊技情報)を含むリカバリ応答をCU3へ返信する。
なお、遊技情報のリカバリデータがない時または前回最終送信通番が0の時は「遊技情報格納有無」を格納無“0x00”にし、「前回遊技台情報」および「前回遊技情報」をALL“0”をセットする。また、CU3は、P台2より通知された「前回最終送信通番」の処理を実施していなかった場合、前回遊技台情報を使用してリカバリ処理を行なう。なお、「前回最終送信通番」の処理を実施している場合は、CU3は、前回遊技台情報のみ使用してリカバリ処理を行なう。ただし、計数玉数のリカバリは実施しない。
また、通信相手の不一致等(たとえばCU3またはP台2の交換等)でリカバリ処理が実施できない場合、P台2の表示情報を元にPOSで手補正することが考えられる。たとえば、P台2の表示情報は、可変表示装置278の液晶表示画面を利用して表示することが考えられる。あるいは、P台2に対して、払出制御部171が制御する表示器をさらに設けておき、その表示器に対して手補正のための情報を表示することも考えられる。なお、POSとは、景品管理システムのことであり、景品交換や景品の管理を行なうものである。また、POSは、景品交換や景品の管理を行なうものに限定されず、店舗で商品を販売するごとに商品の販売情報を記録し、集計結果を在庫管理やマーケティング材料として用いる一般的な販売時点管理(Point Of Sales system)であってもよい。
<<3.リカバリ要求2、4.リカバリ応答2>>
CU3からP台2に対してリカバリ要求2という名称のコマンドが送信される。このリカバリ要求2のコマンドは、P台2に対して加算リカバリ情報を通知するものである。このリカバリ要求2に対応して、P台2からCU3に対してリカバリ応答2という名称のレスポンスが送信される。このリカバリ応答2のレスポンスは、CU3に対して加算リカバリ情報の処理結果を通知するものである。
リカバリ要求2のコマンドは、P台2に対して加算リカバリ情報を通知するものであり、「通番」、「コマンド」、「前回最終送信加算通番」および「加算玉数」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。リカバリ要求2は、P台2において加算玉リカバリ処理を実施する必要有とCU3が判定したときに送信される。CU3は、P台2より受信したリカバリ応答に含まれる「前回最終送信加算通番」と自身で記憶している「前回最終送信加算通番」とを比較して一致している場合には加算玉リカバリ処理の必要無と判定し、不一致の場合には加算玉リカバリ処理の必要有と判定する。加算玉リカバリ処理の必要有と判定したときにはリカバリ要求2を送信する。
リカバリ要求2に含まれる「前回最終送信加算通番」は、前回接続時にP台2に対して最後に送信した状態情報要求のコマンドの加算通番のデータであり、「加算玉数」は、遊技玉の加算玉数のデータである。
次に、P台2のリカバリ処理について詳しく説明する。P台2のリカバリ処理は、P台2がリカバリ要求2に基づいて、CU3より通知された「前回最終送信通番」の処理を実施していなかった場合、加算玉数を参照して遊技玉に対して加算を行なう処理である。
リカバリ応答2のレスポンスは、CU3に対してP台2で加算リカバリ情報の処理結果を通知するもので、「通番」、「コマンド」および「リカバリ結果」を含んでいる。「リカバリ結果」は、“0x00”の場合リカバリ結果OK、“0x01”の場合リカバリ結果NGである。なお、P台2が加算玉数を受けられない状態の場合はリカバリ結果として処理NGを応答する。
<<5.通信開始要求、6.通信開始応答>>
CU3からP台2に対して通信開始要求のコマンドが送信される。この通信開始要求のコマンドは、P台2に対して通信開始を要求するものである。この通信開始要求に対応して、P台2からCU3に対して通信開始応答のレスポンスが送信される。この通信開始応答のレスポンスは、CU3に対して通信開始を応答するものである。
通信開始要求のコマンドは、P台2に対して正常に通信開始したことを通知するものである。通信開始要求を受信したP台2は、それまで記憶していたリカバリ情報をクリアする。通信開始要求のコマンドは、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。なお、CU3は、通信開始要求後、計数通番を“0”(初期値)に、P台2も通信開始要求受信後、計数通番を“0”(初期値)にする。
通信開始応答のレスポンスは、CU3に対して、正常に通信開始したことを通知するものであり、CU3が、リカバリ情報をクリアする。通信開始応答のレスポンスは、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
<<7.通信終了要求、8.通信終了応答>>
CU3からP台2に対して通信終了要求のコマンドが送信される。この通信終了要求のコマンドは、P台2に対して通信終了を要求するものである。この通信終了要求に対応して、P台2からCU3に対して通信終了応答のレスポンスが送信される。この通信終了応答のレスポンスは、CU3に対して通信終了を応答するものである。
通信終了要求のコマンドは、P台2に対して正常に通信終了したことを通知するものであり、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
通信終了応答のレスポンスは、CU3に対して、正常に通信終了したことを通知するものであり、CU3およびP台2が、該通知以降、通信を停止し再起動待ちとする。通信終了応答のレスポンスは、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
<<9.状態情報要求>>
CU3からP台2に対して状態情報要求のコマンドが送信される。この状態情報要求のコマンドは、P台2に対してCU3の状態を要求するものである。CU3はこのコマンドを使用して、P台2の状態を定期的に確認する。また、状態情報要求のコマンドには、図6に示したCU3側からP台2側へ向かう加算玉数が含まれている。
この状態情報要求の具体的データには、「通番」、「コマンド」、「CU状態」、「加算玉数」、「加算通番」および「計数通番」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
「CU状態」は、P台2に対して通知するCU3の状態を表わし、Bit0が“1”のときにカード挿入中を、“0”のときカード未挿入をそれぞれ示している。つまり、Bit0は、CU3にカード(一般カード/会員カード)が挿入されている状態を表わしている。また、CU3のカードストック部に予めストックされているストックカード(一般0円0玉カード)への入金により一般カード挿入中となる。
Bit1が“1”のときカードユニット開店中を、“0”のときカードユニット閉店中をそれぞれ示している。つまり、Bit1は、CU3の状態により、P台2に対してカードユニット開店状態を通知する。カードユニット開店中を通知するタイミングは、たとえば、開店完了時である。カードユニット閉店中を通知するタイミングは、たとえば、閉店時である。なお、P台2は同状態が開店中から閉店中に変化時、保持している遊技玉を全て計数玉数として状態情報応答にてCU3に通知する。
Bit2が“1”のときカード返却準備中を、“0”のときカード返却準備中以外をそれぞれ示している。CU3は、カード返却、簡易離席、および食事休憩のそれぞれの操作時に、このビットを立てることによって、P台2に対して「カード返却準備中」を一定時間(10秒)通知する。P台2は、計数ボタン28の操作が検出されたときに、このカード返却準備中のビットがオンの状態情報要求を受信していれば、計数ボタンを1回操作したか複数回操作したかに関わらず、あるいは操作継続時間に関わらず、記憶している遊技玉を全て計数玉数として状態情報応答にてCU3に通知する。
Bit3が“1”のとき遊技玉加算要求を、“0”のとき遊技玉加算要求無をそれぞれ示している。つまり、Bit3は、玉貸、持玉払出、および貯玉払出の操作時に遊技玉の加算(加算玉数)を要求する。
Bit4が“1”のとき計数玉受領完了を、“0”は計数玉未受領をそれぞれ示している。Bit4は、計数玉受領時に受領完了したことをP台2に通知する。つまり、状態情報応答のレスポンス「計数玉数」の送達を確認するために用いている。なお、Bit5〜Bit7は未使用である。
「加算玉数」は、遊技玉の加算玉数であり、CU状態のBit3が“1”のときにのみ加算玉数のデータが有効となる。「加算通番」は、加算用シーケンス番号(0〜255)であり、遊技玉加算要求時にシーケンス番号を更新(+1)して通知する。「計数通番」は、計数用シーケンス番号(0〜255)であり、計数要求時に受信した計数通番をそのまま通知する。ただし、計数通番の連続性が成立しない場合は計数受領を出さない。
<<10.状態情報応答>>
状態情報要求に対応して、P台2からCU3に対して状態情報応答のレスポンスが送信される。この状態情報応答のレスポンスは、CU3に対してP台2の情報・状態を通知するものである。状態情報応答のレスポンスには、図6に示した最新遊技台情報や遊技玉数が含まれている。
この状態情報要求の具体的データには、「通番」、「コマンド」、「遊技玉数」、「発射玉数」、「アウトロ通過玉数」、「総賞球玉数」、「計数要求玉数」「計数通番」、「発射強度」、「遊技台状態」、「不正検知情報」および「遊技情報」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
「遊技玉数」は、現在の遊技玉数(加算・減算を演算した結果の遊技玉数)である。「遊技玉数」は、CU3が後述する「総賞球玉数」「発射玉数」および「計数玉数」を使用してCU3の保持している遊技玉数を計算する。その後、CU3は、計算したCU3の遊技玉数と、P台2の遊技玉数とが一致するかをチェックする。
「発射玉数」は、発射個数(送信時に複数発射された玉がある場合は合算する)である。ただし、バック玉数がある場合はバック玉数分を減算する。つまり、「発射玉数」(減算)は、CU3が保持している遊技玉数から減算するデータである。カードを保持してない状態で該データを受信した場合、CU3は遊技玉数の減算を行なわない。また、CU3は、CU3自体の保持している遊技玉数が0玉の場合、減算を行なわない。
「アウト口通過玉数」は、アウト口154を通過した玉の個数(送信時に複数の通過玉がある場合は合算する)である。
「総賞球玉数」は、賞球情報1−nの賞球玉数の合計である。この賞球情報1−nとは、たとえば始動口、大入賞口、入賞口(普通入賞口)等の入賞口種別毎の賞球玉数のことである。なお、「総賞球玉数」(加算)は、CU3より送信する「加算要求玉数」は含まない。また、CU3は保持している遊技玉数に総賞球玉数のデータを加算する。カードを保持していない状態で総賞球玉数のデータを受信した場合、CU3は遊技玉数の加算は行なわない。
「計数要求玉数」は、計数要求した遊技玉の個数である。つまり「計数玉数」(減算)は、CU3が保持している遊技玉数から減算し、カード持玉数に加算するデータである。なお、P台2からCU3に送信する減算玉数のデータに計数玉数は利用しない。また、カードを保持してない状態で該データを受信した場合、CU3は遊技玉数の減算を行なわない。また、CU3は、CU3自体の保持している遊技玉数が0玉の場合、減算を行なわない。
ただし、カードユニット開店状態が開店中から閉店中に変化した場合は、遊技機が保持している遊技玉を計数して計数玉数として設定する。カードユニット開店状態が開店中のときには計数ボタン28の操作が行なわれたことにより遊技玉を計数して計数玉数として設定する。しかし、カードユニット開店状態が開店中から閉店中に変化した場合は、計数ボタン28の操作を待つことなく自動的に遊技玉を計数して計数玉数として設定する。
「計数通番」は、計数用シーケンス番号(0〜255)であり、計数要求時にシーケンス番号を更新(+1)して通知する。
「発射強度」は、遊技玉の発射するための強度である。
「遊技台状態」は、CU3からP台2に対して状態情報要求のコマンドが送信された時点の、P台2の状態を示し、「遊技台状態1」、「遊技台状態2」、「遊技台状態3」、および「遊技台エラー状態」の情報を含んでいる。
「遊技台状態1」のBit0は、遊技を許可しているか、禁止しているかを示しており、“0”のときに遊技許可中であり、“1”のとき遊技禁止中である。Bit1は、ファン(遊技者)がプレイ中(玉を発射している)か否かを示しており、0”のとき待機中(ファンが球を発射してない状態)、“1”のとき遊技中(ファンが球を発射している状態)である。ただし、遊技玉が有り、発射ハンドル(打球操作ハンドル25)をタッチした状態(タッチセンサに触れた状態)で遊技中となる。
Bit2は、遊技玉の有無(遊技玉無の検知)を示している。“0”のとき遊技玉数有、“1”のとき遊技玉数無である。Bit3は、玉の発射が停止している状態で、全ての発射した玉の行方が確定しているか否かを示している。つまり、遊技領域27内の浮遊玉が全て回収されたか否か示している。ただし、発射停止スイッチ(単発打ちスイッチとも言う)による玉の発射停止は除く。“0”のとき遊技未完了(全ての玉の行方が未確定の状態)、“1”のとき遊技完了(全ての玉の行方が確定している状態)である。なお、P台2は、玉の発射を停止してから15秒以上遊技の完了を確認できなかった場合、タイムアウトし、遊技完了とする。
Bit4は、遊技玉の計数要求の有無(計数ボタン押下の有無)を示しており、“0”のとき要求無、“1”のとき計数開始時の計数受付要求有または計数玉の払出要求有である。P台は、計数操作が検出されたときに、この計数要求ONの状態情報応答をCUへ送信し、計数要求が受領されたか否かを確認する。“1”のとき計数要求である。Bit5は、遊技玉加算の処理結果を示しており、“0”のとき加算OK、“1”のとき加算NGである。Bit6〜Bit7は予備である。
「遊技台状態2」のBit0は、大当り情報の大当り1(全ての大当り)を表わし、全ての大当り中“1”をセットする。Bit1は、大当り情報の大当り2(大当り+小当り)を表わし、全ての大当り中および小当り中“1”をセットする。Bit2は、大当り情報の大当り3(出玉大の大当り)を表わし、出玉が大きい大当り中“1”をセットする。Bit3は、大当り情報の大当り4(出玉小の大当り)を表わし、出玉が小さい大当り中“1”をセットする。Bit4は、大当り情報の大当り5(出玉中の大当り)を表わし、出玉が中間の大当り中“1”をセットする。Bit5〜Bit7は予備である。
「遊技台状態3」のBit0は、遊技状態情報の大当り中+時短中を表わし、大当り中および時短中“1”をセットする。Bit1は、遊技状態情報の確変中を表わし、確変中“1”をセットする。Bit2は、遊技状態情報の時短中を表わし、時短中“1”をセットする。Bit3〜Bit7は予備である。
「遊技台エラー状態」は、P台2で発生中のエラーコードを示し、Bit0〜Bit5を用いて各エラーコードを表現している。なお、Bit0〜Bit5が全て“0”のときにはエラー無である。Bit6は、エラーが発生している場所を特定する情報であり、“0”のとき払出制御、“1”のとき主制御をそれぞれ表わしている。Bit7は、エラーの出力方法を示し、“0”のとき発報のみ、“1”のとき発報+ホールサーバ801への出力を表わしている。
「不正検知情報」は、CU3からP台2に対して状態情報要求のコマンドが送信された時点の、P台2で検知した情報であり、「不正検知状態1」、「不正検知状態2」、「不正検知情報1」〜「不正検知情報4」および「加算通番」の情報を含んでいる。
「不正検知状態1」は、主制御基板16の不正検知情報である。「不正検知状態1」のBit0は、“1”のとき電波センサ検知の不正検知情報であることを表わしている。Bit1は、“1”のとき磁気センサ検知不の正検知情報であることを表わしている。Bit2は、“1”のとき不正入賞検知の不正検知情報であることを表わしている。Bit3〜Bit7は予備である。
「不正検知状態2」は、払出制御基板17の不正検知情報である。「不正検知状態2」のBit0は、“1”のときガラス板開放の不正検知情報であることを表わしている。Bit1は、“1”のとき枠本体開放の不正検知情報であることを表わしている。Bit2は、“1”のとき電波センサ検知の不正検知情報であることを表わしている。Bit3は、“1”のとき近接センサ異常の不正検知情報であることを表わしている。Bit4は、“1”のとき賞球ゴト検知の不正検知情報であることを表わしている。ここで、「ゴト」とは、パチンコやスロットマシンにおいて不正な方法で出玉を獲得する不正行為のことである。Bit5は、“1”のとき複合ゴト検知の不正検知情報であることを表わしている。Bit6は、“1”のとき不正加算検知の不正検知情報であることを表わしている。Bit7は、“1”のとき扉・枠開放検知(夜間)の不正検知情報であることを表わしている。
「不正検知情報1」は、賞球センサゴト検知(入賞不整合玉数)の情報を示すデータである。「不正検知情報1」は、「不正検知状態2」のBit4が“1”のとき有効となる。「不正検知情報2」は、複合センサゴト検知(発射/OUT不整合玉数)の情報を示すデータである。つまり、発射玉数とアウト玉数(アウト口通過玉数)との不整合を検知したときの情報を示すデータである。「不正検知情報2」は、「不正検知状態2」のBit5が“1”のとき有効となる。「不正検知情報3」は、不正加算検知(不正加算玉数)の情報を示すデータである。「不正検知情報3」は、「不正検知状態2」のBit6が“1”のとき有効となる。「不正検知情報4」は、夜間、枠本体開放回数の情報を示すデータである。「不正検知情報4」は、「不正検知状態2」のBit7が“1”のとき有効となる。
「加算通番」は、加算用シーケンス番号であり、加算要求時に受信した加算通番をそのまま通知する。ただし、加算通番の連続性が成立しない場合は無応答となる。
「遊技情報」は、CU3からP台2に対して状態情報要求のコマンドが送信された時点の、P台2の情報であり、「遊技情報数」、「種別情報1」〜「種別情報n」、「賞球情報1」〜「賞球情報n」を含んでいる。
「遊技情報数」は、種別情報・賞球情報の個数(n)であり、n=0〜22(可変長)である。種別情報は、Bit4からBit7までがデータ種別の情報で、遊技情報のデータ種別を示しており、“0”のとき情報無、“1”のとき始動口、“2”のとき大入賞口、“3”のとき入賞口、“4”のとき図柄停止回数である。Bit0からBit3までがデータ番号の情報で、遊技情報のデータ種別毎のデータ番号を示しており、“0”のとき情報無、“1”〜“15”のときそれぞれのデータ番号を表わしている。
「種別情報1」〜「種別情報n」は、遊技種別情報1〜遊技種別情報nをそれぞれ示し、「賞球情報1」〜「賞球情報n」は、遊技賞球情報1〜遊技賞球情報nをそれぞれ示している。
ここで、賞球情報は、Bit0からBit3までが賞球玉数の情報で、遊技情報のデータ種別毎に入賞時の賞球玉数を示しており、“0”のとき情報無、“1”〜“15”のとき賞球玉数のデータをそれぞれ表わしている。Bit4からBit7までが入賞個数の情報で、遊技情報のデータ種別毎に入賞個数(累計)を示しており、“0”のとき情報無、“1”〜“15”のとき入賞個数のデータをそれぞれ表わしている。
<<11.カード挿入通知、12.カード挿入応答>>
CU3からP台2に対してカード挿入通知のコマンドが送信される。このカード挿入通知のコマンドは、P台2に対してカード挿入を通知するものである。このカード挿入通知に対応して、P台2からCU3に対してカード挿入応答のレスポンスが送信される。このカード挿入応答のレスポンスは、CU3に対してカード挿入通知を受信した旨の応答である。
カード挿入通知のコマンドは、カード挿入時に、P台2に対して挿入されたカードのカードIDと挿入時刻を通知し、「通番」、「コマンド」、「カードID」、「カード挿入時刻」、「店舗コード」および「SC基板ID」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
「カードID」は、CU3に挿入されたICカードの識別ID情報であり、P台2が保持している遊技玉との紐付に使用する。「カード挿入時刻」は、CU3のカード挿入/排出口309(図1参照)にICカードが挿入された時刻であり、年情報を2桁YY、月情報を2桁MM、日情報を2桁DD、時間情報を2桁hh、分情報を2桁mm、秒情報を2桁ssで表されるデータである。カード挿入時刻は、P台2保持の遊技玉が当日玉か過去玉かの判断に使用する。
「店舗コード」は、CU3が設置されている店舗識別コードであり、P台2が保持している遊技玉との紐付に使用する。また、CU3が店舗移動されたか否かを判定するためにも使用する。CU3は、自らが設置されている店舗コードを記憶している。なお、店舗コードは、セキュリティ基板325より情報付加してP台に通知する。「SC基板ID」は、CU3を識別するためのSC基板IDであり、CU3が交換されたか否かを判定するために使用する。SC基板IDは、セキュリティ基板325より情報付加してP台2に通知する。P台2の払出制御部171は、これらのカードID(C-ID)やカード挿入時刻等のカード挿入通知コマンドで通知される情報を記憶する。
カード挿入応答のレスポンスは、CU3に対して正常にカード挿入通知を受信したことを通知するもので、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
<<13.カード返却通知、14.カード返却応答>>
CU3からP台2に対してカード返却通知のコマンドが送信される。このカード返却通知のコマンドは、P台2に対してカード返却を通知するものである。このカード返却通知に対応して、P台2からCU3に対してカード返却応答のレスポンスが送信される。このカード返却応答のレスポンスは、CU3に対してカード返却を応答するものである。
カード返却通知のコマンドは、P台2に対してカード返却を通知するもので、CU3が、「カード返却」ボタン押下時に同通知を送信する。カード返却通知には、「通番」、「コマンド」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。
カード返却応答のレスポンスは、CU3に対してカード返却通知の応答を送信するもので、「通番」、「コマンド」、「カードID」、「カード挿入時刻」のデータが含まれている。「通番」、「コマンド」、「カードID」および「カード挿入時刻」は、前述と同じであるので説明を繰返さない。なお、CU3は、カード返却応答の際、コマンドに含まれるカードIDと現在挿入中のカードのIDとが一致しない場合や、コマンドに含まれるカード挿入時刻に問題がある場合、カード返却を行なわない、持玉のカードへの書込みを禁止するなどの処理を行なう。
ここで、カード挿入通知時またはカード返却通知時のP台2の動作について説明する。カード挿入通知時に、CU3で会員カード挿入、一般カード挿入、または一般0円0玉カードへの入金の操作を行なうと、P台2はカードIDおよびカード挿入時刻のバックアップを行なう。カード返却通知時に、CU3で「カード返却」ボタンの押下の操作を行なうと、P台2はカードIDおよびカード挿入時刻のクリアを行なう。
<<15.通信テスト要求、16.通信テスト応答>>
CU3からP台2に対して、通信テスト要求のコマンドが送信される。この通信テスト要求のコマンドは、P台2に対してテストデータを通知するものである。この通信テスト要求に対応して、P台2からCU3に対して、通信テスト応答のレスポンスが送信される。このカード返却応答のレスポンスは、CU3に対してテストデータを応答するものである。
通信テスト要求のコマンドは、P台2に対してテストデータを通知するものである。なお、P台2に対して通知するテストデータは暗号化していない。通信テスト要求のコマンドは、「通番」、「コマンド」、および「テストデータ」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。「テストデータ」は、P台2に対して通知するテスト用のデータで任意のデータである。
通信テスト応答のレスポンスは、CU3に対してテストデータを通知するものである。なお、CU3に対して通知するテストデータも暗号化していない。通信テスト応答のレスポンスは、「通番」、「コマンド」、および「テストデータ」のデータが含まれている。「通番」および「コマンド」は、前述と同じであるので説明を繰返さない。「テストデータ」は、CU3に対して通知するテスト用のデータで任意のデータである。
<CUとP台との通信における主なシーケンス>
<<コマンド、レスポンスの送信>>
まず、CU3とP台2との間でのコマンドおよびレスポンスの送信について説明する。CU3(1次局)からP台2(2次局)に対してコマンドが送信され、P台2はそのコマンドに応答してレスポンスをCU3に返信する。つまり、業務電文の送信は、CU3を1次局、P台2を2次局としたコマンド/レスポンス方式である。
CU3からP台2への最初のコマンドの送信から次のコマンドの送信までの期間が、200msすなわち0.2秒に制御される。またP台2からCU3へのレスポンスの送信を行なった後次のレスポンスの送信までの期間が200msすなわち0.2秒に制御される。
このように、CU3とP台2との間で200msの間隔でコマンドおよびレスポンスの双方が送信される。一方、P台2は、打球操作ハンドル25を操作することによって、1分間に100発のパチンコ玉が遊技領域27内に打込まれるから、打球発射時間間隔は、0.6秒である。その結果、玉を1発発射する間に複数のコマンドおよびレスポンスが送受信されることになる。
それゆえ、P台2からCU3へは、遊技玉数の変化量を通知するためのレスポンスが玉の発射時間間隔よりも短い間隔で次々と送信されることになる。その結果、P台2は、遊技玉数の変化量を細やかにCU3に対して通知可能となる。
なお、ここでは、コマンドおよびレスポンスの送信間隔を200msにしたが、送信間隔をこれよりも長い間隔としても、また、より短い間隔としてもよく、たとえば、その送信間隔をP台2の発射時間間隔と一致させることも考えられる。
<<CU側の通信回線断検知>>
次に、CU3側で通信断が検知された場合の処理について説明する。CU3がP台2に対してコマンドを送信してから200ms間にレスポンスを受信できなかった場合、再度同じコマンドをP台2に送信する。さらにその200ms後までの間にレスポンスを受信できなかった場合には、同じコマンドをP台2に送信するという2回目の再送を行なう。同じコマンドを最大14回までP台2に再送する。14回目の再送を行なってもP台2からレスポンスを受信できなかった場合、CU3は3秒後に通信異常と判断して「通信断」とする。この通信異常は、CU3のコネクタとP台2のコネクタとが離脱している場合あるいは接続配線の断線さらにはP台2の電源断などの原因が考えられる。CU3は、コマンドの再送時に通番のカウントアップを行なわない。
<<P台側の通信回線断検知>>
P台2側で通信断を検知した場合の処理について説明する。CU3からP台2へコマンドが送信され、P台2ではそのコマンドに応答してレスポンスをCU3に返信する。その後CU3からのコマンドがP台2に送信されてこない状態が3秒間継続した場合、P台2は通信断と判断し、発射モータ18の駆動を停止させて遊技を停止する。この通信断の発生原因も、CU3のコネクタとP台2のコネクタとの離脱、接続配線の断線、あるいはCU3の電源断などが考えられる。
なお、P台2側で通信断を検知するコマンド、レスポンスには、リカバリ要求/リカバリ応答、リカバリ要求2/リカバリ応答2、通信開始要求/通信開始応答、通知終了要求/通信終了応答、および通信テスト要求/通信テスト応答のコマンド、レスポンスを含まない。
<<電源投入>>
次に、電源投入時の接続シーケンスの処理について説明する。図8に示すシーケンス処理は、CU3とP台2との通信が正常に終了した後の通信再開時に実行される処理である。具体的には、カードが挿入されていない待機中において、CU3の電源をOFFにした後の通信再開時に実行される。典型例は、遊技場において1日の営業が終了して電源を立下げ、翌日営業開始時に電源を立上げる場合である。
まず、電源を投入する。電源投入時においては、P台2では発射モータ18を停止させて遊技を停止させてから通信を開始する。その後、認証シーケンスが開始され、P台2からCU3に対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3は、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、CU3は、前回最終送信通番および前回最終送信計数通番を含むリカバリ要求をP台2へ送信し、P台2に対してリカバリ情報を要求する。P台2は、CU3より通知された前回最終送信計数通番を参照して、計数リカバリ処理を実行する。具体的に、P台2は、前回最終送信計数通番を参照して、CU3が計数処理を実施していなかった場合、計数要求をなかったものとし、CU3が計数処理を実施済の場合、計数前の遊技玉数から計数玉数を減算して遊技玉を確定する。
計数リカバリ処理の実行後、P台2は、P台2内部(具体的には払出制御基板17)でバックアップしている遊技情報リカバリデータをレスポンスとしてCU3へ返信する(リカバリ応答)。リカバリ情報としては、前回最終送信通番、前回挿入中カードID、前回カード挿入時刻、前回最終送信加算通番および前回遊技台情報などが含まれている。
リカバリ応答を受けたCU3では、リカバリ情報に含まれる前回最終送信加算通番の処理を実行していなかった場合、リカバリ情報に含まれる前回遊技台情報を使用してCU3の加算リカバリ処理を実施する。CU3は、加算玉リカバリ処理を実施する場合、P台2に対して、リカバリ要求2をP台2へ送信し、P台2に対してリカバリデータを送信する。このリカバリデータには、前回最終送信通番、および加算玉数が含まれている。
それを受けたP台2では、受信したリカバリデータに基づいて加算リカバリ処理を実行し、その結果をレスポンスとしてCU3へ返信する(リカバリ応答2)。なお、P台2が加算玉数を受けられない状態の場合はリカバリ結果としてリカバリ処理NGを応答する。
このリカバリ処理は、CU3とP台2との間での互いのデータの整合性を回復するための処理であり、電源起動時に実行されるばかりでなく、トラブルが発生し復旧したときにも、実行される。
CU3は、リカバリ要求などのコマンドを送信する度に通番をカウントアップする。ただし、コマンドの再送時の際にはカウントアップしない。P台2は、前回受信した通番と同じ通番のコマンドを受信した場合には、通信不良が発生してCU3がコマンドを再送したと判断する。CU3はコマンドの送信し、同じ通番のレスポンスがP台2から通知された時に通番をバックアップする。P台2は、受信したコマンドに対応するレスポンスを送信する際に、受信した通番をそのままCU3に通知する。P台2はレスポンスの送信時に通番をバックアップする。
CU3は、認証シーケンスが終了した後、通番を“1”としてリカバリ要求のコマンドをP台2に送信する。P台2は、受信した通番“1”をそのままリカバリ応答のレスポンスとしてCU3に返信する。さらに、CU3は、通番を“2”としてリカバリ要求2のコマンドをP台2に送信する。P台2は、受信した通番“2”をそのままリカバリ応答2のレスポンスをCU3に返信する。
その後、CU3は、通番をカウントアップして“3”として、通信開始要求のコマンドをP台2へ送信する。なお、CU3は、リカバリ要求2を送信しなかった場合、通番は1カウントダウン(−1)した“2”となる。P台2では、それを受けて、リカバリデータをクリアする。そして、P台2は、受信した通番“3”のまま、通信開始応答のレスポンスをCU3へ返信する。これ以降、CU3とP台2との間で、状態情報要求のコマンドと状態情報応答のレスポンスとの送受信が行なわれる。
CU3は、通番をカウントアップして“4”として、状態情報要求のコマンドをP台2へ送信する。P台2は、それを受けて、遊技台情報、遊技情報および前回最終送信通番を更新し、更新したデータを状態情報応答のレスポンスの送信毎にバックアップする。そして、P台2は、受信した通番“4”のまま、状態情報応答のレスポンスをCU3に返信する。
CU3は、それを受けて、前回最終送信通番を更新し、更新したデータを状態情報応答のレスポンスの受信毎にバックアップする。
その後、CU3は、通番をカウントアップして“5”として、状態情報要求のコマンドをP台2へ送信し、P台2は、受信した通番“5”のまま、状態情報応答のレスポンスをCU3に返信する。
<<カード挿入>>
カードが挿入されたときのCU3およびP台2の処理について説明する。図9に示すCU3は、カード挿入前、通番=n、カード挿入状態=OFFを含む状態情報要求のコマンドをP台2へ送信する。P台2では、それを受けて、通番=n、遊技禁止を含む状態情報応答のレスポンスをCU3に返信する。
その後、CU3では、カードが挿入されると、カードリーダライタにカードを取込む指令信号を出力するとともに、取込んだカードに記録されている情報(カードID等)をカードリーダライタが読取って、その読取り情報を受信する等の、カード挿入時処理が実行される。
CU3は、カードの挿入が行なわれた後の所定期間、カード情報問合せ中の状態になる。これは、挿入されたカードの適否や当該遊技場で登録されている会員カードであるか否か、あるいは持玉、貯玉やカード残額等をたとえばホールサーバ801に問合せて認証している最中であることを表示器312に表示するとともにP台2側の表示器54に表示させる処理を実行している最中であることを意味している。
CU3は、表示器312に挿入されたカードの問合せ中であることを表示している間、挿入されたカードを認証していないので、通番=n+1、カード挿入状態=OFFを含む状態情報要求のコマンドをP台2へ送信する。P台2では、それを受けて、通番=n+1、遊技禁止を含む状態情報応答のレスポンスをCU3に返信する。なお、P台2側の表示器54は、CU3の表示制御部350により表示制御が行なわれ、カードの問合せ中である旨の表示がなされる。
その後、CU3は、挿入されたカードが認証されると、そのカードのカードIDとカード挿入時刻とをCU制御部323のRAMに記憶させるとともに、通番=n+2、カードID、カード挿入時刻を含むカード挿入通知のコマンドをP台2へ送信する。なお、カード挿入通知のコマンドには、セキュリティ基板325で付加した店舗コードおよびSC基板IDも含まれている。P台2では、それを受けて、受信したカードID、カード挿入時刻、店舗コードおよびSC基板IDのデータを払出制御部171のRAM等にバックアップするとともに、通番=n+2を含むカード挿入応答のレスポンスをCU3に返信する。なお、CU3においても、挿入されたカードのカードIDをCU制御部323のRAM等に記憶する。
CU3は、それを受けて、通番=n+3、カード挿入状態=ONを含む状態情報要求のコマンドをP台2へ送信することで、カード挿入中である状態をP台2に対して通知する。P台2は、カード挿入中である状態の通知を受けて遊技を許可し、通番=n+3、遊技許可を含む状態情報応答のレスポンスをCU3に返信することで、遊技許可中である状態をCU3に対して通知する。
カード挿入中、CU3は、通番=n+4、カード挿入状態=ONを含む状態情報要求のコマンドをP台2へ送信し、P台2は、通番=n+4、遊技許可を含む状態情報応答のレスポンスをCU3に返信する。
<<プリペイド貸出>>
次に、挿入されたカードのプリペイド残額から遊技玉を貸出すときの処理について説明する。図10に示すシーケンス処理では、挿入されたカードに記録されているプリペイド残額が500円で、遊技玉数が50玉である。まず、CU3は、通番=n、遊技玉加算要求=OFF、加算通番=mを含む状態情報要求のコマンドをP台2へ送信する。それを受けて、P台2は、通番=n、遊技玉数=50、加算通番=mを含む状態情報応答のレスポンスをCU3に返信する。このように、加算要求が発生していない間は、加算通番が更新されることはない。
その後、遊技者が1回「貸出」ボタンを押下する貸出操作(玉貸操作)を行なうことにより、CU3は、後述する図78のステップS516またはステップS527で設定されたレートを判定して、判定されたレートが1玉4円である場合は、残額の500円分すなわち125玉の貸出を行なう。他のレートである場合は、レートに応じた玉数の貸出を行なう。CU3は、玉貸ボタン(貸出ボタン)321が押下操作された場合、500円分のプリペイド消費を確定させるとともに、加算玉数=125のデータをバックアップする。このように、残額消費は、貸出操作が行なわれた段階でCU3側単独で確定する。その後、CU3は加算表示中となる。この加算表示中では、残額から125玉分引落して遊技玉に加算している最中であることを表示器54に表示させる。
次に、CU3は、P台2に対して遊技玉の加算要求を行なう。そのため、CU3は、通番=n+1、遊技玉加算要求=ON、加算玉数=125および加算通番=m+1を含む状態情報要求のコマンドをP台2へ送信する。通番をカウントアップして“n+1”とするとともに、遊技玉の加算要求を行なうため、加算通番もカウントアップして“m+1”とする。CU3は、加算通番を“m+1”にカウントアップするとともに、前回最終送信加算通番を“m+1”に更新して、そのデータをバックアップする。それを受けて、P台2は、遊技玉数=50(現在の遊技玉数)+125(加算玉数)=175に遊技玉数を更新し、前回最終送信加算通番を“m+1”に更新して、そのデータをバックアップする。そして、P台2は、CU3に対して遊技玉数=175および遊技玉加算結果=OKを通知するため、通番=n+1、遊技玉数=175、遊技玉加算結果=OKおよび加算通番=m+1を含む状態情報応答のレスポンスをCU3に返信する。遊技玉の加算要求に対する応答であるため、加算通番をカウントアップせずに、そのまま“m+1”とする。
その後、CU3は、通番=n+2、遊技玉加算要求=OFFおよび加算通番=m+1を含む状態情報要求のコマンドをP台2へ送信し、P台2は、通番=n+5、遊技玉数=175および加算通番=m+1を含む状態情報応答のレスポンスをCU3に返信する。遊技玉の加算要求がOFFの場合、状態情報要求および状態情報応答は、通番をカウントアップするが、加算通番はカウントアップしない。
<<持玉払出・貯玉払出(再プレイ)>>
次に、持玉払出、貯玉払出をして再プレイする処理について説明する。この図11では、当初の遊技玉数が50玉の状態となっている。まず、CU3は、通番=n、遊技玉加算要求=OFFおよび加算通番=mを含む状態情報要求のコマンドをP台2へ送信する。それを受けて、P台2は、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3に返信する。このように、加算要求が発生していない間は、加算通番が更新されることはない。
その後、持玉または貯玉が存在する状態で、遊技者が持玉払出ボタンまたは再プレイボタン319を押下すると、CU3は、持玉または貯玉からのレートに応じた玉数分(1玉4円のレートの場合、125玉分)の消費を確定させる。つまり、後述する図78のステップS516またはステップS527で設定されたレートを判定して、判定されたレート(ここでは1玉4円のレート)に応じた持玉または貯玉からレートに応じた玉数を減算する。このように、持玉または貯玉の消費は、持玉払出ボタンまたは再プレイボタン319を押下する操作がなされた段階でCU3側単独で確定する。なお、持玉と貯玉との双方が存在する場合には、持玉消費が優先される。
この持玉を優先して消費する制御に代えて、貯玉再プレイボタンと持玉再プレイボタンとを設け、遊技者が選択して操作することにより、貯玉消費または持玉消費のいずれかを選べるようにしてもよい。すなわち、再プレイボタンは、貯玉(貯メダル)から遊技玉(遊技点)を得るための貯玉(貯メダル)再プレイボタンと、持玉(持点)から遊技玉(遊技点)を得るための持玉(持点)再プレイボタンとの2つで構成してもよい。
CU3は、持玉または貯玉からの消費を確定させた後、加算玉数=125の加算要求をP台2に通知する。具体的に、CU3は、遊技玉の加算処理中であることを表示するとともに、通番=n+1、遊技玉加算要求=ON、加算玉数=125および加算通番=m+1を含む状態情報要求のコマンドをP台2へ送信する。遊技玉の加算要求を行なうため、通番をカウントアップして“n+1”とするとともに、加算通番もカウントアップして“m+1”とする。さらに、CU3は、前回最終送信加算通番を“m+1”に更新して、そのデータをバックアップする。それを受けて、P台2は、遊技玉数=50(現在の遊技玉数)+125(加算玉数)=175に遊技玉数を更新し、前回最終送信加算通番を“m+1”に更新して、そのデータをバックアップする。そして、P台2は、通番=n+1、加算玉数=175、遊技玉加算結果=OKおよび加算通番=m+1含む状態情報応答のレスポンスをCU3に返信する。遊技玉の加算要求に対する応答であるため、加算通番をカウントアップせずに“m+1”のままとする。
その後、CU3は、通番=n+2、遊技玉加算要求=OFFおよび加算通番=m+1を含む状態情報要求のコマンドをP台2へ送信し、P台2は、通番=n+2、加算玉数=175および加算通番=m+1を含む状態情報応答のレスポンスをCU3に返信する。
<<遊技玉計数(通常)>>
次に、遊技玉の一部を計数して減算する通常時の計数処理について説明する。この図12では、カード返却の操作が検出されることなく計数ボタンが押下された場合を示している。それゆえ、CU3からP台2へ送信されるカード返却準備状態のビットは、いずれもOFF(=0)となっている。このため、以下ではカード返却準備状態のビットの説明を省略する。
また、この図12では、挿入された記録媒体(会員用カードまたはビジターカード)により特定される持玉数が「0」玉であり、当初の遊技玉数が「800」玉の状態となっている。
なお、ここでは、計数ボタンの操作が検出されている間、100点単位での計数が継続し、計数ボタンの操作が検出されなくなった段階で計数動作が終了する例を説明する。
まず、CU3は、通番=n、カード返却準備状態=OFF、計数通番=m、計数応答=OFFを含む状態情報要求のコマンドをP台2へ送信する。それを受けて、P台2は、通番=n、遊技玉数=800、計数通番=m、計数玉数=0、計数要求=OFFを含む状態情報応答のレスポンスをCU3に返信する。
CU3から送信された通番nに対して、P台2から通番n+1が返信されている。CU3から送信された計数通番mに対して、P台2からは同じ計数通番mが返信されている。これは、計数通番が、計数要求の発生を契機として更新され、計数の完了をもって更新が終了される特別な通番だからである。
その後、遊技者が、計数ボタン28を押下する。この図12では、計数ボタン28を1回押下する操作がなされた直後に、通番=n+1、カード返却準備状態=OFF、計数通番=m、計数応答=OFFを含む状態情報要求のコマンドがCU3からP台2へ送信されている。
P台2は、計数ボタン28の操作を検出した場合、状態情報要求のコマンドに対する応答として、計数要求値を具体的に100に設定した通番n+1の状態情報応答をCU3へ送信する。ただし、この段階でP台2は計数要求分の計数を実行しない。このため、通番n+1の状態情報応答では、依然として遊技玉数=800とされている。また、この状態情報応答は、計数要求を示す電文であるため、計数通番が“m+1”にカウントアップされている。P台2は、このとき、前回最終送信計数通番を更新し、更新した前回最終送信計数通番と計数要求状態ONとのデータをバックアップする。
通番n+1の状態情報応答を受信したCU3は、要求されている計数玉数相当の持玉を加算するとともに、持玉の表示を100に更新する。すなわち、CU制御部323は、表示制御部350に対して計数表示の指令を送信する。表示制御部350は、その指令を受けてP台2側の表示器54を表示制御する。その結果、表示器54には、遊技玉が計数されてその数が減少する一方で、持玉が増加する画像表示が行なわれる。
この場合、遊技玉が一発ずつ、各台計数器に案内されて計数されていくような演出表示を行なうことが考えられる。この演出表示の他の例としては、遊技玉数のデータが持玉数のデータに経時的に変換されていく表示であってもよい。たとえば、遊技玉数のデータと持玉数のデータとを棒グラフで示し、遊技玉数の棒グラフを減少させつつ持玉数の棒グラフを増加させたり、遊技玉数の棒グラフの一部を持玉数の棒グラフに移動させる表示を繰返したりしてもよい。さらに演出表示の他の例としては、現在の遊技玉数のデータと持玉数のデータをそのままデジタル表示し、遊技玉数を減少させつつ持玉数を増加させたり、遊技玉数の一部を持玉数に移動させる表示を繰返したり、種々の演出表示が考えられる。
さらに、CU3は、前回最終送信計数通番を“m+1”に更新して、そのデータをバックアップする。続いて、CU3は、P台2に対して、通番n+2、計数通番m+1、計数応答=ONの状態情報要求を送信し、要求された計数を終えたことを通知する。
この状態情報要求を受信したP台2は、ようやく、計数玉数=100に対応する数だけ遊技玉数を減算し、遊技玉数表示器29の表示を800から700に更新する。この段階で、P台2は計数要求状態がOFFとなるが、計数ボタンの押下が継続しているため、P台2は2度目の計数要求をCU3へ送信する。すなわち、計数要求値を具体的に100に設定した通番n+2の状態情報応答をCU3へ送信する。ただし、この段階でもP台2は計数要求分の計数を実行しない。このため、通番n+2の状態情報応答では、遊技玉数=700とされている。また、この状態情報応答は、新たな計数要求として送信される電文であるため、計数通番を“m+2”にカウントアップして、前回最終送信計数通番を更新し、更新した前回最終送信計数通番と計数要求状態ONとのデータをバックアップする。
通番n+2の状態情報応答を受信したCU3は、要求されている計数玉数相当の後述する図78のステップS516またはステップS527で設定されたレートを判定して、判定されたレート(ここでは、1玉4円のレート)の持玉を加算するとともに、持玉の表示を200に更新する。さらに、CU3は、前回最終送信計数通番を“m+2”に更新して、そのデータをバックアップする。続いて、CU3は、P台2に対して、通番n+3、計数通番m+2、計数応答=ONの状態情報要求を送信し、要求された計数を終えたことを通知する。
この状態情報要求を受信したP台2は、計数玉数=100に対応する数だけ遊技玉数を減算し、遊技玉数表示器29の表示を700から600に更新する。ところが、この段階で、計数ボタンから遊技者の手が離れており、計数操作が終了している。このため、P台2は計数完了を通番n+3の状態情報応答でCU3へ通知する。すなわち、現在の遊技玉数=600とともに、計数要求=OFF、計数玉数=0の状態情報応答をCU3へ送信する。また、計数要求に対応するすべての計数動作が済んでいるため、この状態情報応答に含まれる計数通番もm+2のままで更新されていない。
この状態情報応答を受信したCU3は、計数完了と判定する。図示を省略しているが、CU3は、通番n+4、計数通番m+2、カード返却準備状態=OFF、計数応答=OFFの状態情報応答をP台2へ送信する。
このように、本実施の形態では、計数玉数を通知する情報状態応答をP台からCUへ送信する際に、P台側で早々と計数玉分の遊技玉の減算を行なっているのではなく、計数玉数を通知する情報状態応答を送信してからこれに対する受領確認をCUから受けた段階で、P台は遊技玉の減算を行なっている。
<<遊技玉計数(計数NG)>>
次に、遊技玉の一部を計数して減算する計数処理において計数処理がNGとなる場合について説明する。この図13では、カード返却の操作が検出されることなく計数ボタンが押下された場合を示している。それゆえ、CU3からP台2へ送信されるカード返却準備状態のビットは、いずれもOFF(=0)となっている。このため、以下ではカード返却準備状態のビットの説明を省略する。
また、この図13では、挿入された記録媒体(会員用カードまたはビジターカード)により特定される持玉数が「0」玉であり、当初の遊技玉数が「800」玉の状態となっている。
なお、ここでは、計数ボタンの操作が検出されている間、100点単位での計数が継続し、計数ボタンの操作が検出されなくなった段階で計数動作が終了する例を説明する。
まず、CU3は、通番=n、カード返却準備状態=OFF、計数通番=m、計数応答=OFFを含む状態情報要求のコマンドをP台2へ送信する。それを受けて、P台2は、通番=n、遊技玉数=800、計数通番=m、計数玉数=0、計数要求=OFFを含む状態情報応答のレスポンスをCU3に返信する。
CU3から送信された通番nに対して、P台2から通番n+1が返信されている。CU3から送信された計数通番mに対して、P台2からは同じ計数通番mが返信されている。これは、計数通番が、計数要求の発生を契機として更新され、計数の完了をもって更新が終了される特別な通番だからである。
その後、遊技者が、計数ボタン28を押下する。この図13では、計数ボタン28を1回押下する操作がなされた直後に、通番=n+1、カード返却準備状態=OFF、計数通番=m、計数応答=OFFを含む状態情報要求のコマンドがCU3からP台2へ送信されている。
P台2は、計数ボタン28の操作を検出した場合、状態情報要求のコマンドに対する応答として、計数要求値を具体的に100に設定した通番n+1の状態情報応答をCU3へ送信する。ただし、この段階でP台2は計数要求分の計数を実行しない。このため、通番n+1の状態情報応答では、依然として遊技玉数=800とされている。また、この状態情報応答は、計数要求を契機として送信される電文であるため、P台2は、計数通番を“m+1”にカウントアップして、前回最終送信計数通番を更新し、更新した前回最終送信計数通番と計数要求状態ONとのデータをバックアップする。
通番n+1の状態情報応答を受信したCU3は、通常、要求されている計数玉数相当の持玉を加算するとともに、持玉の表示を100に更新する。しかし、CU3は、通信エラーなどによりP台2からの状態情報応答を受信できず、計数玉を受取ることができなかった場合、P台2に対して計数受取りNGを返答する。具体的に、CU3は、P台2に対して、通番n+2、計数通番m、計数応答=OFFの状態情報要求を送信し、要求された計数玉を受取れなかったことを通知する。なお、CU3は、要求された計数玉を受取れなかったため、前回最終送信計数通番を更新せずに、前回最終送信計数通番mを計数通番として状態情報要求を送信する。
この状態情報要求を受信したP台2は、計数玉数=100に対応する数だけ遊技玉数を減算を実行せずに、前回最終送信計数通番を1つカウントダウン(−1)して、そのデータをバックアップする。この段階で、計数ボタンの押下が継続しているため、P台2は2度目の計数要求をCU3へ送信する。すなわち、計数要求値を具体的に100に設定した通番n+2の状態情報応答をCU3へ送信する。ただし、この段階でもP台2は計数要求分の計数を実行しない。このため、通番n+2の状態情報応答では、遊技玉数=800とされている。また、この状態情報応答は、再度の計数要求であるため、計数通番を前回と同じm+1にして、前回最終送信計数通番を更新し、更新した前回最終送信計数通番と計数要求状態ONとのデータをバックアップする。
これに対して、CU3は、P台2に対して計数受取りNGを返答する。具体的に、CU3は、P台2に対して、通番n+3、計数通番m、計数応答=OFFの状態情報要求を送信し、要求の拒否を通知する。なお、CU3は、要求を拒否したため、前回最終送信計数通番を更新せずに、前回最終送信計数通番mを計数通番として状態情報要求を送信する。
この状態情報要求を受信したP台2は、計数玉数=100に対応する数だけ遊技玉数を減算を実行せずに、前回最終送信計数通番を1つカウントダウン(−1)して、そのデータをバックアップする。ところが、この段階で、計数ボタンから遊技者の手が離れており、計数操作が終了している。このため、このため、P台2は計数OFF状態を通番n+3の状態情報応答でCU3へ通知する。すなわち、現在の遊技玉数=800とともに、計数要求=OFF、計数玉数=0の状態情報応答をCU3へ送信する。
このように、本実施の形態では、計数玉数を通知する情報状態応答をP台からCUへ送信する際に、P台側で早々と計数玉分の遊技玉の減算を行なっているのではなく、計数玉数を通知する情報状態応答を送信してからこれに対する受領確認をCUから受けた段階で、P台は遊技玉の減算を行なっているので、計数NGの場合に計数リカバリ処理を行なう必要がない。
<<遊技玉計数(カード返却)>>
次に、カードを返却する際の遊技玉の計数処理について説明する。図14は、遊技者がカード返却操作を行なった場合の計数処理を説明するためのシーケンス図である。図14では、挿入された記録媒体(会員用カード等)により特定されるカード持玉数が0玉であり、当初の遊技玉数が800玉の状態となっている。まず、CU3は、通番=n、CU開店状態=ON、カード返却準備状態=OFF、計数通番=mおよび計数応答=OFFを含む状態情報要求のコマンドをP台2へ送信する。それを受けて、P台2は、通番=n、遊技玉数=800、計数通番=m、計数玉数=0および計数要求=OFFを含む状態情報応答のレスポンスをCU3に返信する。
その後、遊技者が、遊技を止める場合や別の遊技台に移動する場合に「カード返却」ボタンを押下する。しかし、遊技者が「カード返却」ボタンを押下した時点では、P台2の遊技玉数が800玉で、CU3はP台2の遊技玉数が0玉でないと判定する。また、CU3は、遊技者が「カード返却」ボタンを押下したのでカード返却準備状態=ONとして、通番=n+1、CU開店状態=ON、計数通番=mおよび計数応答=OFFを含む状態情報要求のコマンドをP台2へ送信する。なお、CU3は、カード返却準備状態=ONの通知を10秒間、P台2に通知する。さらに、CU3は、P台2の遊技玉数が800玉で、0玉でないため、カード返却待機として、表示器54等に計数操作を促す表示を行なう。
計数操作を促す表示を受けて、遊技者が計数ボタン28を押下して、遊技玉を持玉に変換する操作を行なう。P台2は、計数ボタン28を押下する計数操作が、カード返却準備状態=ONでの計数操作であると判定し、たとえば100玉単位での計数ではなく、一括して計数を処理する。
P台2は、遊技玉数800玉の計数受付要求および遊技玉数800玉を一括計数した計数玉数800玉をCU3に通知するために、通番=n+1、遊技玉数=800、計数通番=m+1、計数玉数=800および計数要求=ONを含む状態情報応答のレスポンスをCU3に返信する。ただし、この段階でP台2は計数要求分の計数を実行しない。このため、通番n+1の状態情報応答では、依然として遊技玉数=800とされている。また、この状態情報応答は、計数要求の電文であるため、P台2は、計数通番を“m+1”にカウントアップして、前回最終送信計数通番を更新し、更新した前回最終送信計数通番と計数要求状態ONとのデータをバックアップする。
これを受けて、CU3は、計数玉数800玉を後述する図78のステップS516またはステップS527で設定されたレートを判定して、判定されたレート(ここでは1玉4円のレート)の持玉数に加算して、計数玉数800玉を遊技玉数800玉から0玉に減算する。また、CU3は、更新した前回最終送信計数通番のデータをバックアップする。そして、CU3は、計数玉受取りを通知するため、通番=n+2、CU開店状態=ON、カード返却準備状態=ON、計数通番=m+1および計数応答=ONを含む状態情報要求のコマンドをP台2へ送信する。
P台2は、CU3からの応答を受けて、計数玉数800玉を遊技玉数800玉から減算して遊技玉数0玉を表示器54等に表示する。さらに、P台2は、遊技玉数0玉、計数完了した旨をCU3に通知するために、通番=n+2、遊技玉数=0、計数通番=m+1、計数玉数=0および計数要求=OFFを含む状態情報応答のレスポンスをCU3に返信する。なお、計数要求がOFFとなるので、計数通番はm+1のままカウントアップせずにCU3に送信される。
CU3は、遊技者がカード返却ボタン322を押下してから10秒経過する前、つまり、カード返却準備状態中に、計数ボタン28を押下して遊技玉を持玉に一括計数して遊技玉数を0玉にしているので、カード返却処理を実行する。つまり、CU3は、通番=n+3を含むカード返却通知のコマンドをP台2へ送信する。それを受けて、P台2は、通番=n+3、払出制御基板17に保持してあるカードIDおよびカード挿入時刻を含むカード返却応答のレスポンスをCU3に返信する。カードIDおよびカード挿入時刻をCU3に返信後、払出制御基板17に保持してあるカードIDおよびカード挿入時刻のデータをクリアする。
それを受けて、CU3は、挿入しているカードに記憶しているカードIDと、P台2から受信したカードIDとの一致判別を行ない、一致した場合は挿入しているカードを返却し、不一致の場合エラー処理を行ないホールサーバ801などに報告する。CU3は、カードIDが一致した場合、カード挿入/排出口309に挿入してあったカード(挿入カード)に持玉数800を記憶させてそのカードを遊技者に返却する。また、遊技者がカード挿入/排出口309にカードを挿入することなく入金操作により遊技を開始している場合には、CU3に設けられているカードストック部にストックされているカード(ストックカード)に持玉数800を記憶させてそのカードを遊技者に返却する。挿入カードまたはストックカードの返却の際、CU3は当該カードのカードIDと持玉数のデータとをホールサーバ801へ送信し、ホールサーバ801が当該カードのカードIDに対応付けて持玉数のデータを記憶してもよい。
その後、CU3は、カード挿入状態OFFをP台2に通知するために、通番=n+4、CU開店状態=ON、カード挿入状態=OFF、計数通番=m+1および計数応答=OFFを含む状態情報要求のコマンドをP台2へ送信する。これを受けて、CU3は、通番=n+4、遊技玉数=0、計数通番=m+1、計数玉数=0および計数応答=OFFを含む状態情報要求のコマンドをP台2へ送信する。
なお、図14で説明したカードを返却する際の遊技玉の計数処理のシーケンスは、カード返却時に限定されるものではなく、簡易離席・食事休憩時にも同様の処理を適用することができる。ここで、簡易離席とは、遊技者が小用を済ませるために5〜10分程度の短い時間遊技を中断するものである。食事休憩とは、簡易離席よりも長いたとえば30分間等遊技を中断して食事や休憩を行なうものである。
<<異常系シーケンス1>>
次に、図15を参照して、電源断/通信回線断により状態情報要求が未到達となったときの遊技玉数のリカバリ処理について説明する。図15は、特に、電源断/通信回線断線(たとえば、P台2の電源が一旦OFFにした後再度ONになった場合)があって、状態情報要求が未到達(CU3からP台2へコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図である。
図15を参照して、遊技中において電源断が発生する前に、CU3は、通番=nを含む状態情報要求をP台2に送信している。それを受けて、P台2は、遊技台情報CU3に通知するため、通番=n、遊技玉数=480、加算玉数=3および減算玉数=23を含む状態情報応答をCU3に送信する。P台2は、前回遊技台情報となる前回最終送信通番を“n”に更新する。
CU3は、通番=nの状態情報応答を受け、前回最終送信通番を“n”に更新してバックアアップする。また、遊技玉数=480、加算玉数=3および減算玉数=23の情報に基づいて、自ら記憶している遊技玉数や加算玉数、減算玉数を更新する。
そして、遊技中においてP台2に電源断が発生した後に、通番=n+1を含む状態情報要求がCU3からP台2へ送信された場合に、P台2が電源断の状態であるためにその状態情報要求を受信できない。それ以降P台2からの状態情報応答が送信されてこないためにCU3は、3秒後に通信回線断を検知して停止する制御を行なう。P台2が状態情報応答のレスポンスをCU3に送信してから、電源断発生までの間、P台2において遊技が続行されて遊技台情報が変化し、遊技玉数=450、加算玉数=6、減算玉数=36となり、これが最新遊技台情報となる。一方、既に送信した遊技玉数=480、加算玉数=3、減算玉数=23の遊技台情報は前回遊技台情報となる。
その後、P台2の電源断が復旧してONの状態になってP台2が動作を開始する。P台2が動作を開始すると、まず、CU3とP台2との間で認証シーケンスが開始され、P台2からCU3に対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3は、受信したメインチップIDと払出チップIDとを上位の管理サーバ(ホールサーバ801を経由して鍵管理サーバ800)へ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照合してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、CU3は、通番=1、前回最終送信通番=nを含むリカバリ要求をP台2へ送信する。つまり、CU3は、P台2に対してリカバリ情報の通知を要求する。それを受けたP台2では、受信したリカバリ要求の前回最終送信通番=nと、P台2内部(具体的には払出制御基板17)でバックアップしている前回最終送信通番=nとが一致しているか否かを判定する。一致している場合には、通信断の前にP台2からCU3に対して最後に送信した状態情報応答はCU3に到達していると判断でき、この場合には、その状態情報応答に含まれる遊技情報に基づいてCU3側でも遊技情報が更新されていることになる。このため、この場合には、遊技情報格納無(具体的には前回遊技台情報無)としてリカバリ応答(通番=1)をCU3へ返信する。仮に、受信したリカバリ要求の前回最終送信通番=nと、P台2内部(具体的には払出制御基板17)でバックアップしている前回最終送信通番=nとが不一致の場合には、通信断の前にP台2からCU3に対して最後に送信した状態情報応答はCU3に到達していないと判断できるため、このような場合には、遊技情報格納有(具体的には前回遊技台情報有)として遊技情報を含むリカバリ応答(通番=1)をCU3へ返信する。
図15において、CU3は、リカバリ応答に含まれる遊技情報格納がないため、加算リカバリ処理は行なわない。なお、リカバリ応答を受信したCU3のCU制御部323は、リカバリ応答としてP台2から送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図28(a)に基づいて後述する。遊技情報格納がないため、CU3は、リカバリ要求2をP台2に送信することなく、通番=2を含む通信開始要求をP台2に送信する。なお、CU3が通信開始要求のコマンドをP台2に送信する際、計数通番は“0”(初期値)にクリアされる。P台2は、通信開始要求を受け、通番=2を含む通信開始応答をCU3へ送信する。また、P台2は、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3は、P台2との通信が開始されると、通番=3を含む状態情報要求をP台2に送信する。それを受けたP台2では、未通知の遊技台情報(最新遊技台情報である遊技玉数=450、加算玉数=6、減算玉数=36)を状態情報応答でCU3に通知するとともに、前回最終送信通番を更新して、当該データをバックアップする。具体的には、状態情報応答として送信通番=3、遊技玉数=450、加算玉数=6および減算玉数=36を含む。CU3は、未通知の遊技台情報を含む状態情報応答を受けて、前回最終送信通番を更新して、当該データをバックアップする。なお、状態情報応答を受信したCU3のCU制御部323は、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図28(b)に基づいて後述する。
<<異常系シーケンス2>>
次に、図16を参照して、電源断/通信回線断により状態情報応答が未到達となったときの遊技玉数のリカバリ処理について説明する。図16は、特に、電源断/通信回線断線(たとえば、P台2の電源が一旦OFFにした後再度ONになった場合)があって、状態情報応答が未到達(P台2からCU3へコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図である。
図16を参照して、遊技中において電源断が発生した後に、通番=n、遊技玉数=480、加算玉数=3および減算玉数=23を含む状態情報応答がP台2からCUへ送信された場合に、CUが電源断の状態であるためにその状態情報応答をCUが受信できない。それ以降CU3からの状態情報要求が送信されてこないためにP台2は、3秒後に通信回線断を検知して遊技を停止する制御を行なう。具体的には、払出制御部171が発射制御基板31へ停止コマンドを送信し、発射制御基板31が発射モータ18の回転駆動を停止する。この3秒間の間、P台2において遊技が続行されて遊技台情報が変化し、遊技玉数=450、加算玉数=6、減算玉数=36となり、これが最新遊技台情報となる。一方、既に送信した遊技玉数=480、加算玉数=3、減算玉数=23の遊技台情報は前回遊技台情報となる。
一方、CU3では、電源断が発生したために、挿入されているカードを強制的に排出して遊技者に返却する制御を行なう。その際、現時点における持玉数を後述する図78のステップS516またはステップS527で設定されたレートに応じた持玉数としてカードに記憶させて排出する。なお、CUの故障等が原因で持玉数をカードに記憶させることができない場合は、定期的に(たとえば5秒毎に)CU3から持玉数を受信してバックアップ記憶しているホールサーバ801の記憶データ(持玉数)を基に遊技者に損失補填するようにしてもよい。その後、CU3の電源断が復旧してONの状態になってCU3が動作を開始する。CU3が動作を開始すると、まず、CU3とP台2との間で認証シーケンスが開始され、P台2からCU3に対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3は、受信したメインチップIDと払出チップIDとを上位の管理サーバ(ホールサーバ801を経由して鍵管理サーバ800)へ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照合してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、CU3は、通番=1を含むリカバリ要求をP台2へ送信する。つまり、CU3は、P台2に対してリカバリ情報の通知を要求する。それを受けたP台2では、受信したリカバリ要求の前回最終送信通番=n−1と、P台2内部(具体的には払出制御基板17)でバックアップしている前回最終送信通番=nとを比較判定する。その結果、両者が不一致であるので、電源断の発生前に最後に送信した状態情報応答がCU3へ到達していないものと判断する。そこで、P台2は、CU3に対して未通知の遊技情報を有しているとして遊技情報格納有(具体的には前回遊技台情報有)を含むリカバリ応答(通番=1)をCU3へ返信する。つまり、前回遊技台情報である遊技玉数=480、加算玉数=3、減算玉数=23をリカバリ応答に含めてCU3へ送信する。
CU3は、リカバリ応答に含まれる遊技情報に基づいてリカバリ処理を実行する。ただし、通信回線断を検知する直前に遊技玉の加算要求を送信していないため、加算リカバリ処理は不要である。このため、リカバリ応答を受信した後、リカバリ要求2を送信することなく、通信開始要求を送信する。CU3は、この通信開始要求の送信前に、第1チェック処理を実行する。第1チェック処理では、リカバリ応答を受信したCU3のCU制御部323によって、リカバリ応答としてP台2から送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かがチェックされる。この第1チェック処理は、図28(a)に基づいて後述する。CU3は、リカバリ要求2をP台2に送信することなく、通番=2を含む通信開始要求をP台2に送信する。なお、CU3は、P台2から受信した前回遊技台情報を処理して、前回最終送信通番を更新して、当該データをバックアップする。CU3が通信開始要求のコマンドをP台2に送信する際、計数通番は“0”(初期値)にクリアされる。P台2は、通信開始要求を受け、通番=2を含む通信開始応答をCU3へ送信する。また、P台2は、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3は、P台2との通信が開始されると、通番=3を含む状態情報要求をP台2に送信する。それを受けたP台2では、電源断の発生前にCU3にまで到達しなかった状態情報応答に含まれる未通知の遊技台情報(遊技玉数=450、加算玉数=6、減算玉数=36)を状態情報応答でCU3に通知するとともに、前回最終送信通番を更新して、当該データをバックアップする。具体的には、状態情報応答として送信通番=3、遊技玉数=450、加算玉数=6および減算玉数=36を含む。CU3は、未通知の遊技台情報を含む状態情報応答を受けて、前回最終送信通番を更新して、当該データをバックアップする。なお、状態情報応答を受信したCU3のCU制御部323は、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図28(b)に基づいて後述する。
なお、再挿入されたカードのカードIDがカード情報読取処理により適正に読取られた場合に、その読取ったカードIDとリカバリ応答に含まれているカードIDとを照合して一致しているか否かをCU3のCU制御部323が判定するとともに、電源断発生前の遊技開始時に挿入されたカードの挿入時刻をCU制御部323のRAMが記憶しておりその記憶しているカードの挿入時刻とリカバリ応答に含まれているカード挿入時刻とを比較して一致するか否かをCU3のCU制御部323が判定してもよい。その場合、両者一致すると判定し、加算リカバリが無い場合には、CU3は、通信開始要求をP台2へ送信する。それを受けたP台2では、リカバリデータ(遊技情報)をクリアして、通信開始応答をCU3へ返信する。
本実施例では、この遊技者の同一性を判断するときの遊技者を特定可能な遊技者特定情報として、カードIDとカード挿入時刻とを用いている。このカードIDは、会員の遊技者個人を特定する会員用カードのカードIDばかりでなく、ビジターとして来店した遊技者が用いるビジターカードのカードIDも含む。このビジターカードの場合には、不特定の遊技者に使用されるものであり、特定の遊技者個人を特定するものではない。つまり、このカードIDの場合には、電源断/通信回線断の発生前に遊技を行なっていた遊技者と電源断復旧後に遊技を行なおうとしている遊技者とが同一の遊技者であるか否かは特定できるが、その遊技者がどの特定の個人であるかまでは特定できない。よって、上記「遊技者特定情報」とは、特定の遊技者個人を特定するものに限らず、電源断/通信回線断の発生前に遊技を行なっていた遊技者と電源断復旧後に遊技を行なおうとしている遊技者との同一性が判別できる情報をも含む広い概念である。
<<異常系シーケンス3>>
次に、図17を参照して、電源断/通信回線断により状態情報応答が未到達となったときの遊技玉数の別のリカバリ処理について説明する。図17は、特に、電源断/通信回線断線(たとえば、CU3の電源が一旦OFFにした後再度ONになった場合)があって、状態情報応答が未到達(P台2からCU3へコマンドが未到達)で、復旧後通信相手が不一致の場合の計数処理を説明するためのシーケンス図である。この電源のOFF,ONは、たとえばCU3の故障、または電源を手動でOFF,ONする、あるいはCU3をカードユニットホルダから抜き差しすることによっても、電源がOFF,ONとなる。
図17を参照して、遊技中において電源断が発生した後に、通番=n、遊技玉数=480、加算玉数=3および減算玉数=23を含む状態情報応答がP台2からCUへ送信された場合に、CUが電源断の状態であるためにその状態情報応答をCUが受信できない。それ以降CU3からの状態情報要求が送信されてこないためにP台2は、3秒後に通信回線断を検知して遊技を停止する制御を行なう。具体的には、払出制御部171が発射制御基板31へ停止コマンドを送信し、発射制御基板31が発射モータ18の回転駆動を停止する。この3秒間の間、P台2において遊技が続行されて遊技台情報が変化し、遊技玉数=450、加算玉数=6、減算玉数=36となり、これが最新遊技台情報となる。一方、既に送信した遊技玉数=480、加算玉数=3、減算玉数=23の遊技台情報は前回遊技台情報となる。
一方、CU3では、電源断が発生したために、挿入されているカードを強制的に排出して遊技者に返却する制御を行なう。その後、CU3の電源断が復旧してONの状態になり、さらにCU3を交換して新たなCU3が動作を開始する。
なお、CU交換前に稼働していたCU3が持玉数を記憶していたときには、その持玉数を別のカード(たとえば、CU内部のカード)に記憶させて排出するようにしてもよい。その際に、CUの故障等が原因で持玉数をカードに記憶させることができない場合は、定期的に(たとえば5秒毎に)CU3から持玉数を受信してバックアップ記憶しているホールサーバ801の記憶データ(持玉数)を基に遊技者に損失補填するようにしてもよい。
交換後のCU3が動作を開始すると、まず、CU3とP台2との間で認証シーケンスが開始され、P台2からCU3に対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3は、受信したメインチップIDと払出チップIDとを上位の管理サーバ(ホールサーバ801を経由して鍵管理サーバ800)へ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照合してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、CU3は、通番=1を含むリカバリ要求をP台2へ送信する。つまり、CU3は、P台2に対してリカバリ情報の通知を要求する。しかし、CU3は、交換したため前回最終送信通番を有していない。それを受けたP台2では、CU3に対して未通知の遊技情報を有しているとして遊技情報格納有を含むリカバリ応答(通番=1)をCU3へ返信する。このリカバリ応答でCU3に通知するリカバリ情報には、前回最終送信通番=n、挿入されていたカードのカードID、カード挿入時間、前回最終送信加算通番=mおよび前回遊技台情報が含まれている。前回遊技台情報には、遊技玉数=480、加算玉数=3、減算玉数=23を含んでいる。
リカバリ応答を受信したCU3のCU制御部323は、リカバリ応答としてP台2から送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図28(a)に基づいて後述する。CU3は、リカバリ要求2をP台2に送信することなく、通番=2を含む通信開始要求をP台2に送信する。なお、CU3は、P台2から受信した前回遊技台情報を使用してリカバリ処理(遊技玉数=480、加算玉数累計=+3、減算玉数累計=+23)を行ない、前回最終送信通番を更新して、当該データおよびカードID、カード挿入時刻をバックアップする。CU3が通信開始要求のコマンドをP台2に送信する際、計数通番は“0”(初期値)にクリアされる。P台2は、通信開始要求を受け、通番=2を含む通信開始応答をCU3へ送信する。また、P台2は、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3は、P台2との通信が開始されると、通番=3を含む状態情報要求をP台2に送信する。それを受けたP台2では、未通知の遊技台情報(遊技玉数=450、加算玉数=6、減算玉数=36)を状態情報応答でCU3に通知する。具体的には、状態情報応答として送信通番=3、遊技玉数=450、加算玉数=6および減算玉数=36を含む。CU3は、未通知の遊技台情報を含む状態情報応答を受けて、前回挿入中だったカードの挿入待ち、または店員リモコン操作(遊技玉計数)待ちの状態となる。この状態でカードが挿入されると、CU3は、その挿入されたカードのIDをカードリーダライタにより読み取る。そして、読み取ったカードIDと、リカバリ応答に基づいて記憶しているリカバリカードID(前回挿入されていたカードのカードID)とが一致しているか否かを判定する。一致していると判定した場合には、遊技を再開させるための店員のリモコン操作待ちとなる。リモコン操作があれば、店舗コードおよびSC基板ID等を含むカード挿入通知のコマンドがCU3からP台2へ送信される。P台2では、通信断以前の前回のカード挿入時に受信した店舗コードおよびSC基板IDのデータを払出制御部171のRAM等にバックアップしており、そのバックアップしているデータとCU3から送信されてきた店舗コードおよびSC基板IDとを比較して一致するか否か判別する。一致していれば、遊技が再開可能となる。なお、リモコン操作を待つことなく、店舗コードおよびSC基板ID等を含むカード挿入通知のコマンドがCU3からP台2へ送信されるようにしてもよい。不一致の場合には、たとえばP台2の遊技玉数データを無効にする等のエラー処理が行なわれる。あるいは、これに代えて、またはこれに加えてエラー報知がなされるようにしてもよい。さらには、挿入されているカードを強制的に排出して遊技者に返却する制御を行なうようにしてもよい。
なお、状態情報応答を受信したCU3のCU制御部323は、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図28(b)に基づいて後述する。
<<異常系シーケンス4>>
次に、電源断/通信回線断により加算要求が未到達となったときの加算玉数のリカバリ処理について説明する。図18は、特に、電源断、通信回線断線により、加算要求が未到達(CU3からP台2への加算要求のコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図である。
この図18では、当初の遊技玉数が50玉の状態となっている。まず、CU3は、通番=nおよび加算通番=mを含む状態情報要求のコマンドをP台2へ送信する。それを受けて、P台2は、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3に返信する。なお、状態情報応答のレスポンスに含まれる計数要求がOFF(図示せず)であるので、計数通番はmのまま、カウントアップすることなくCU3に送信される。
その後、遊技者が再プレイボタンを押下する。そのため、CU3は、貯玉の消費を確定し、通番=n+1、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2へ送信して、貯玉を遊技玉に変換した情報を通知する。その際、CU3は、貯玉の消費を確定し、加算玉数=125とし、前回最終送信加算通番、および加算要求状態ONのデータをバックアップする。
しかし、P台2は、遊技者が再プレイボタンを押下した後、状態情報要求のコマンドを受信する前に、電源断が発生し、動作が停止する。そのため、P台2は、CU3からの状態情報要求のコマンドを受信することができない。
CU3は、P台2が停止しているので、コマンド送信後200ミリ秒間レスポンスを受信できないので、最大14回までコマンドを再送信する。CU3は、コマンドを再送信してもレスポンスを受信できないことにより、通信回線断を検知する。
その後、P台2で電源断が復旧し、P台2が動作を開始する。P台2が動作を開始すると、まず、CU3とP台2との間で認証シーケンスが開始され、P台2からCU3に対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3は、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、CU3は、リカバリ要求をP台2へ送信する。つまり、CU3は、P台2に対してリカバリ情報の通知を要求する。それを受けたP台2では、受信したリカバリ要求のコマンドに基づいて、P台2内部(具体的には払出制御基板17)でバックアップしているリカバリ情報をレスポンスとしてCU3へ返信する。ここでは、前回最終送信加算通番=mが送信される。
リカバリ応答を受けたCU3では、リカバリ情報の前回最終送信加算通番と、記憶している前回最終送信加算通番と一致しているか否かを判断する。CU3は、P台2のリカバリデータの最終送信加算通番=mに比べて、バックアップしているCU3で記憶している前回最終送信加算通番=m+1の方が大きい値(新しい)の場合(不一致)、前回の状態情報要求のコマンドが未到達であったと判断して加算リカバリ処理を行なう。
具体的な加算リカバリ処理としては、P台2に対して加算玉数=125玉のリカバリを要求する。そのため、CU3は、リカバリ要求2(加算玉数=125、前回最終送信加算通番=m+1)をP台2へ送信する。
P台2は、リカバリ要求2に含まれる加算玉数への加算処理を実施し、前回最終送信加算通番を更新して、当該テータをバックアップする。このタイミングで、電源断によって実現されなかった加算処理が実現され、CU3側とP台2側とで遊技玉数が整合する。さらに、P台2では、加算処理がOKであった旨をリカバリ応答2としてCU3へ返信する(リカバリ応答2(処理結果=処理OK))。それを受けたCU3は、加算要求状態をクリアする。なお、リカバリ応答2を受信したCU2のCU制御部323は、前述のリカバリ応答としてP台2から送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第3チェック処理を実行する。この第3チェック処理は、図29に基づいて後述する。
さらに、CU3は、通信開始要求をP台2へ送信する。それを受けたP台2では、リカバリデータ(遊技情報)をクリアして、通信開始応答をCU3へ返信する。また、CU3は、状態情報要求をP台2へ送信する。それを受けたP台2では、未通知の遊技台情報(遊技玉数=175)を状態情報応答でCU3に通知する。状態情報応答を受信したCU3のCU制御部323は、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図28(b)に基づいて後述する。
ここでは、貯玉払出によって遊技を開始する再プレイボタンを押下した場合について説明したが、持玉払出によって遊技を開始する持玉払出ボタンを押下した場合も同様な動作となる。
<<異常系シーケンス5>>
次に、電源断/通信回線断により加算応答が未到達となったときの加算玉数のリカバリ処理について説明する。図19は、特に、電源断、通信回線断線により、加算応答が未到達(P台2からCU3への加算応答のレスポンスが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図である。
この図19では、当初の遊技玉数が50玉の状態となっている。まず、CU3は、通番=nおよび加算通番=mを含む状態情報要求のコマンドをP台2へ送信する。それを受けて、P台2は、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3に返信する。なお、状態情報応答のレスポンスに含まれる計数要求がOFF(図示せず)であるので、計数通番はmのまま、カウントアップすることなくCU3に送信される。
その後、遊技者が再プレイボタンを押下する。そのため、CU3は、貯玉の消費を確定し、通番=n+1、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2へ送信して、貯玉を遊技玉に変換した情報を通知する。その際、CU3は、貯玉の消費を確定し、加算玉数=125とし、前回最終送信加算通番、および加算要求状態ONのデータをバックアップする。
その後、CU3で電源断が発生し、CU3の動作が停止する。しかし、P台2は、CU3で電源断が発生した直後、CU3の動作が停止していることを検知することができない。P台2が通信回線断を検知するには、1秒以上CU3から次のコマンドを受信できない期間が必要である。
そのため、P台2では、CU3の動作が停止していることを知らずに、CU3の状態情報要求のコマンドを受けて、通番=n+1、遊技玉数=175、遊技玉加算結果=OKおよび加算通番=m+1を含む状態情報応答のレスポンスをCU3に返信する。ただし、CU3に返信した状態情報応答のレスポンスは、CU3の動作が停止しているため、CU3へ未到達となる。なお、P台2では、CU3へ状態情報応答のレスポンスを返信するとともに、前回最終送信加算通番を更新し、更新したデータおよび遊技玉数=175のデータをバックアップする。
その後、CU3で電源断が復旧し、CU3が動作を開始する。CU3が動作を開始すると、まず、CU3とP台2との間で認証シーケンスが開始され、P台2からCU3に対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3は、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、CU3は、前回最終送信通番=n+1を含むリカバリ要求をP台2へ送信する。つまり、CU3は、P台2に対してリカバリ情報の通知を要求する。それを受けたP台2では、受信したリカバリ要求のコマンドに基づいて、P台2内部(具体的には払出制御基板17)でバックアップしているリカバリ情報をレスポンスとしてCU3へ返信する(リカバリ応答(前回最終送信通番=n+1、前回最終送信加算通番=m+1))。このリカバリ情報としては、前回最終送信通番=n+1、カードID、カード挿入時刻および前回最終送信加算通番=m+1が含まれている。
リカバリ応答を受けたCU3では、リカバリ情報のカードID、およびカード挿入時刻と、記憶しているカードIDおよびカード挿入時刻と一致しているか否かを判断する。CU3は、カードIDおよびカード挿入時刻が一致し、P台2のリカバリデータの前回最終送信加算通番=m+1と、CU3で記憶している前回最終送信加算通番=m+1とが一致した場合、加算リカバリ処理を要求せず、加算要求状態をクリアする。また、リカバリ応答を受信したCU3のCU制御部323は、リカバリ応答としてP台2から送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図28(a)に基づいて後述する。
さらに、CU3は、通信開始要求をP台2へ送信する。それを受けたP台2では、通信開始応答をCU3へ返信する。
ここでは、貯玉払出によって遊技を開始する再プレイボタンを押下した場合について説明したが、持玉払出によって遊技を開始する持玉払出ボタンを押下した場合も同様な動作となる。
<<異常系シーケンス6>>
次に、電源断/通信回線断により加算応答が未到達となったときの加算玉数の別のリカバリ処理について説明する。図20は、特に、電源断、通信回線断線により、加算応答が未到達(P台2からCU3への加算応答のレスポンスが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図である。
この図20では、当初の遊技玉数が50玉の状態となっている。まず、CU3は、通番=nおよび加算通番=mを含む状態情報要求のコマンドをP台2へ送信する。それを受けて、P台2は、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3に返信する。なお、状態情報応答のレスポンスに含まれる計数要求がOFF(図示せず)であるので、計数通番はmのまま、カウントアップすることなくCU3に送信される。
その後、遊技者が再プレイボタンを押下する。そのため、CU3は、貯玉の消費を確定し、通番=n+1、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2へ送信して、貯玉を遊技玉に変換した情報を通知する。その際、CU3は、貯玉の消費を確定し、加算玉数=125とし、前回最終送信加算通番、および加算要求状態ONのデータをバックアップする。
その後、CU3で電源断が発生し、CU3の動作が停止する。しかし、P台2は、CU3で電源断が発生した直後、CU3の動作が停止していることを検知することができない。P台2が通信回線断を検知するには、1秒以上CU3から次のコマンドを受信できない期間が必要である。
そのため、P台2では、CU3の動作が停止していることを知らずに、CU3の状態情報要求のコマンドを受けて、加算要求を処理する。ところが、何らかの原因(たとえば、遊技玉数が上限値に達しているなど)によって、遊技玉を加算できない状況が発生する。この場合、P台2は、通番=n+1、遊技玉数=50、遊技玉加算結果=NGおよび加算通番=mを含む状態情報応答のレスポンスをCU3に返信する。ただし、CU3に返信した状態情報応答のレスポンスは、CU3の動作が停止しているため、CU3へ未到達となる。なお、P台2では、遊技玉加算異常が発生しているので、CU3からの加算玉を処理することができず、前回最終送信加算通番=mのままで更新していない。
その後、CU3で電源断が復旧し、CU3が動作を開始する。なお、P台2では、遊技玉加算異常の状態である。CU3が動作を開始すると、まず、CU3とP台2との間で認証シーケンスが開始され、P台2からCU3に対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3は、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、CU3は、前回最終送信通番=n+1を含むリカバリ要求をP台2へ送信する。つまり、CU3は、P台2に対してリカバリ情報の通知を要求する。それを受けたP台2では、受信したリカバリ要求のコマンドに基づいて、P台2内部(具体的には払出制御基板17)でバックアップしているリカバリ情報をレスポンスとしてCU3へ返信する(リカバリ応答(前回最終送信通番=n+1、前回最終送信加算通番=m))。このリカバリ情報としては、前回最終送信通番=n+1、カードID、カード挿入時刻および前回最終送信加算通番=mが含まれている。
リカバリ応答を受けたCU3では、リカバリ情報のカードID、およびカード挿入時刻と、記憶しているカードIDおよびカード挿入時刻と一致しているか否かを判断する。CU3は、カードIDおよびカード挿入時刻が一致し、P台2のリカバリデータの前回最終送信加算通番=mと、CU3で記憶している前回最終送信加算通番=m+1とが不一致の場合、加算リカバリ処理を要求する。そのため、CU3は、前回最終送信加算通番=m+1、加算玉数=125を含むリカバリ要求2をP台2に送信する。
それを受けてP台2は、遊技玉加算異常により、遊技玉加算が処理されていないこと(遊技玉加算NG)をリカバリ応答2で通知する。リカバリ応答2には、リカバリ結果=処理NGが含まれている。
それを受けたCU3は、後述する第3チェックを行ない。さらに、CU3は、通信開始要求をP台2へ送信する。それを受けたP台2では、通信開始応答をCU3へ返信する。
さらに、CU3は、P台2に再度加算要求を通知するために、遊技玉加算要求=ON、加算玉数=125、加算通番=m+1を含む状態情報要求をP台2に送信する。それを受けたP台2は、加算異常状態のため、遊技玉数=50、遊技玉加算結果=NG、加算通番=mを含む状態情報応答をCU3に送信する。状態情報応答を受信したCU3のCU制御部323は、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図28(b)に基づいて後述する。
ここでは、貯玉払出によって遊技を開始する再プレイボタンを押下した場合について説明したが、持玉払出によって遊技を開始する持玉払出ボタンを押下した場合も同様な動作となる。
<<異常系シーケンス7>>
次に、電源断/通信回線断により加算要求が未到達となったときの加算玉数の別のリカバリ処理について説明する。図21は、特に、電源断、通信回線断線により、加算要求が未到達(CU3からP台2への加算要求のコマンドが未到達)で、復旧後通信相手が不一致の場合の計数処理を説明するためのシーケンス図である。
この図21では、当初の遊技玉数が50玉の状態となっている。まず、CU3は、通番=nおよび加算通番=mを含む状態情報要求のコマンドをP台2へ送信する。それを受けて、P台2は、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3に返信する。なお、状態情報応答のレスポンスに含まれる計数要求がOFF(図示せず)であるので、計数通番はmのまま、カウントアップすることなくCU3に送信される。
その後、遊技者が再プレイボタンを押下する。そのため、CU3は、貯玉の消費を確定し、通番=n+1、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2へ送信して、貯玉を遊技玉に変換した情報を通知する。その際、CU3は、貯玉の消費を確定し、加算玉数=125とし、前回最終送信加算通番、および加算要求状態ONのデータをバックアップする。
しかし、P台2は、遊技者が再プレイボタンを押下した後、状態情報要求のコマンドを受信する前に、電源断が発生し、動作が停止する。そのため、P台2は、CU3からの状態情報要求のコマンドを受信することができない。
CU3は、P台2が停止しているので、コマンド送信後200ミリ秒間レスポンスを受信できないので、最大14回までコマンドを再送信する。CU3は、コマンドを再送信してもレスポンスを受信できないことにより、通信回線断を検知する。
その後、P台2で電源断が復旧し、さらにP台2を交換して新たなP台2が動作を開始する。P台2が動作を開始すると、まず、CU3とP台2との間で認証シーケンスが開始され、P台2からCU3に対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3は、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。なお、CU3は、P台2が交換されても加算リカバリは実施する。
認証シーケンス後、CU3は、リカバリ要求をP台2へ送信する。つまり、CU3は、P台2に対してリカバリ情報の通知を要求する。それを受けたP台2では、受信したリカバリ要求のコマンドに基づいて、P台2内部(具体的には払出制御基板17)でバックアップしているリカバリ情報をレスポンスとしてCU3へ返信する。しかし、P台2は、新たに交換したため前回最終送信加算通番はバックアップしておらず、初期値“0”をCU3に送信することになる。
リカバリ応答を受けたCU3では、リカバリ情報の前回最終送信加算通番と、記憶している前回最終送信加算通番と一致しているか否かを判断する。CU3は、P台2のリカバリデータの最終送信加算通番=0と、バックアップしているCU3で記憶している前回最終送信加算通番=m+1とが不一致の場合、前回の状態情報要求のコマンドが未到達であったと判断して加算リカバリ処理を行なう。具体的な加算リカバリ処理としては、P台2に対して加算玉数=125玉のリカバリを要求する。そのため、CU3は、リカバリ要求2(加算玉数=125、前回最終送信加算通番=m+1)をP台2へ送信する。
P台2は、リカバリ要求2に含まれる加算玉数への加算処理を実施し、前回最終送信加算通番を更新して、当該テータをバックアップする。さらに、P台2では、加算処理がOKであった旨をリカバリ応答2としてCU3へ返信する(リカバリ応答2(処理結果=処理OK))。それを受けたCU3は、加算要求状態をクリアする。なお、リカバリ応答2を受信したCU2のCU制御部323は、前述のリカバリ応答としてP台2から送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第3チェック処理を実行する。この第3チェック処理は、図29に基づいて後述する。
さらに、CU3は、通信開始要求をP台2へ送信する。それを受けたP台2では、リカバリデータ(遊技情報)をクリアして、通信開始応答をCU3へ返信する。また、CU3は、状態情報要求をP台2へ送信する。それを受けたP台2では、未通知の遊技台情報(遊技玉数=175)を状態情報応答でCU3に通知する。状態情報応答を受信したCU3のCU制御部323は、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図28(b)に基づいて後述する。
ここでは、貯玉払出によって遊技を開始する再プレイボタンを押下した場合について説明したが、持玉払出によって遊技を開始する持玉払出ボタンを押下した場合も同様な動作となる。
<<異常系シーケンス8>>
次に、電源断/通信回線断により計数応答が未到達となったときの計数玉数のリカバリ処理について説明する。図22は、特に、電源断、通信回線断線により、計数応答が未到達(CU3からP台2への計数応答のコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図である。
この図22では、当初の持玉数が0玉、遊技玉数が500玉の状態となっている。まず、CU3は、通番=n、計数通番=mおよび計数応答=OFFを含む状態情報要求のコマンドをP台2へ送信する。その後、P台2では、計数ボタン28が押下され、CU3に対して計数要求を送信する。具体的には、P台2は、通番=n、遊技玉数=500、計数通番m+1、計数玉数=100および計数要求=ONを含む状態情報応答のレスポンスをCU3に返信する。なお、P台2では、遊技玉数=500、計数玉数=100およびカウントアップした計数通番=m+1をCU3に通知するとともに、前回最終送信計数通番を更新し、更新したデータおよび計数要求状態ONのデータをバックアップする。
それを受けてCU3は、後述する図78のステップS516またはステップS527で設定されたレートを判定して、判定されたレート(ここでは1玉4円のレート)の持玉数に計数玉数を加算して持玉数=100にし、前回最終送信計数通番を更新し、更新したデータをバックアップする。しかし、P台2は、状態情報要求のコマンドを受信した後に、電源断が発生し、動作が停止する。そのため、P台2は、CU3からの通番=n+1、計数通番=m+1および計数応答=ONを含む状態情報要求のコマンドを受信することができない。つまり、P台2は、CU3からの計数応答が未到達となる。
CU3は、P台2が停止しているので、コマンド送信後200ミリ秒間レスポンスを受信できないので、最大14回までコマンドを再送信する。CU3は、コマンドを再送信してもレスポンスを受信できないことにより、通信回線断を検知する。
その後、P台2で電源断が復旧し、P台2が動作を開始する。P台2が動作を開始すると、まず、CU3とP台2との間で認証シーケンスが開始され、P台2からCU3に対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3は、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、CU3は、リカバリ要求をP台2へ送信する。つまり、CU3は、P台2に対してリカバリ情報の通知を要求する。それを受けたP台2では、受信したリカバリ要求のコマンドに基づいて、P台2内部(具体的には払出制御基板17)でバックアップしているリカバリ情報をレスポンスとしてCU3へ返信する。P台2は、記憶している前回最終送信計数通番=m+1と、CU3から受信した前回最終送信計数通番=m+1とが一致しているので、計数した玉数を遊技玉数から減算する処理を実行し、計数要求状態をOFFにする。つまり、P台2は、この時点で遊技玉数=500から遊技玉数=400に更新される。
リカバリ応答を受信したCU3のCU制御部323は、リカバリ応答としてP台2から送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図28(a)に基づいて後述する。なお、CU3は、加算リカバリ処理は行なわないため、CU3は、リカバリ要求2をP台2に送信することなく、通番=2を含む通信開始要求をP台2に送信する。なお、CU3は、P台2から受信した前回遊技台情報を処理して、前回最終送信通番を更新して、当該データをバックアップする。CU3が通信開始要求のコマンドをP台2に送信する際、計数通番は“0”(初期値)にクリアされる。P台2は、通信開始要求を受け、通番=2を含む通信開始応答をCU3へ送信する。また、P台2は、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3は、P台2との通信が開始されると、通番=3を含む状態情報要求をP台2に送信する。それを受けたP台2では、未通知の遊技台情報(遊技玉数=400)を状態情報応答でCU3に通知する。具体的には、状態情報応答として送信通番=3、遊技玉数=400を含む。状態情報応答を受信したCU3のCU制御部323は、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図28(b)に基づいて後述する。
<<異常系シーケンス9>>
次に、電源断/通信回線断により計数要求が未到達となったときの計数玉数のリカバリ処理について説明する。図23は、特に、電源断、通信回線断線により、計数要求が未到達(P台2からCU3への計数要求のコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図である。
この図23では、当初の持玉数が0玉、遊技玉数が500玉の状態となっている。まず、CU3は、通番=n、計数通番=mおよび計数応答=OFFを含む状態情報要求のコマンドをP台2へ送信する。その後、P台2では、計数ボタン28が押下され、CU3に対して計数要求を送信する。具体的には、P台2は、通番=n、遊技玉数=500、計数通番m+1、計数玉数=100および計数要求=ONを含む状態情報応答のレスポンスをCU3に返信する。なお、P台2では、遊技玉数=500、計数玉数=100およびカウントアップした計数通番=m+1をCU3に通知するとともに、前回最終送信計数通番を更新し、更新したデータおよび計数要求状態ONのデータをバックアップする。
しかし、CU3は、状態情報応答のコマンドを受信する前に、電源断が発生し、動作が停止する。つまり、CU2は、P台2からの計数要求が未到達となる。それ以降、CU3からの状態情報要求が送信されてこないために、P台2は、3秒後に通信回線断を検知して遊技を停止する制御を行なう。具体的には、払出制御部171が発射制御基板31へ停止コマンドを送信し、発射制御基板31が発射モータ18の回転駆動を停止する。
その後、CU3で電源断が復旧し、CU3が動作を開始する。CU3が動作を開始すると、まず、CU3とP台2との間で認証シーケンスが開始され、P台2からCU3に対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3は、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、CU3は、リカバリ要求をP台2へ送信する。つまり、CU3は、P台2に対してリカバリ情報の通知を要求する。それを受けたP台2では、受信したリカバリ要求のコマンドに基づいて、P台2内部(具体的には払出制御基板17)でバックアップしているリカバリ情報をレスポンスとしてCU3へ返信する。P台2は、記憶している前回最終送信計数通番=m+1と、CU3から受信した前回最終送信計数通番=mとが不一致なので、計数した玉数を遊技玉数から減算する処理を実行せず、計数要求状態をOFFにする。つまり、P台2は、電断発生直前に送信した計数要求を取り消し、この時点で遊技玉数=500のまま維持する。
リカバリ応答を受信したCU3のCU制御部323は、リカバリ応答としてP台2から送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図28(a)に基づいて後述する。CU3は、加算リカバリ処理は行なわないため、CU3は、リカバリ要求2をP台2に送信することなく、通番=2を含む通信開始要求をP台2に送信する。なお、CU3は、P台2から受信した前回遊技台情報を処理して、前回最終送信通番を更新して、当該データをバックアップする。CU3が通信開始要求のコマンドをP台2に送信する際、計数通番は“0”(初期値)にクリアされる。P台2は、通信開始要求を受け、通番=2を含む通信開始応答をCU3へ送信する。また、P台2は、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3は、P台2との通信が開始されると、通番=3を含む状態情報要求をP台2に送信する。それを受けたP台2では、未通知の遊技台情報(遊技玉数=500)を状態情報応答でCU3に通知する。具体的には、状態情報応答として送信通番=3、遊技玉数=500を含む。状態情報応答を受信したCU3のCU制御部323は、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図28(b)に基づいて後述する。
<<異常系シーケンス10>>
次に、電源断/通信回線断により計数応答が未到達となったときの計数玉数の別のリカバリ処理について説明する。図24は、特に、電源断、通信回線断線により、計数応答が未到達(CU3からP台2への計数応答のコマンドが未到達)で、復旧後通信相手が一致する場合の計数処理を説明するためのシーケンス図である。
この図24では、当初の持玉数が0玉、遊技玉数が500玉の状態となっている。まず、CU3は、通番=n、計数通番=mおよび計数応答=OFFを含む状態情報要求のコマンドをP台2へ送信する。その後、P台2では、計数ボタン28が押下され、CU3に対して計数要求を送信する。具体的には、P台2は、通番=n、遊技玉数=500、計数通番m+1、計数玉数=100、計数通番m+1および計数要求=ONを含む状態情報応答のレスポンスをCU3に返信する。なお、P台2では、遊技玉数=500、計数玉数=100およびカウントアップした計数通番=m+1をCU3に通知するとともに、前回最終送信計数通番を更新し、更新したデータおよび計数要求状態ONのデータをバックアップする。
それを受けてCU3は、計数玉数を持玉数に加算する処理を実行するが、何らかの異常が発生して加算処理ができない。このため、CU3からは計数通番=mおよび計数応答=OFF(計数異常状態のため)を含む状態情報要求のコマンドが送信される。ところが、P台2は、状態情報要求のコマンドを受信した後に、電源断が発生し、動作が停止している。そのため、P台2は、CU3からの状態情報要求のコマンドを受信することができない。つまり、P台2は、CU3からの計数応答が未到達となる。
CU3は、P台2が停止しているので、コマンド送信後200ミリ秒間レスポンスを受信できないので、最大14回までコマンドを再送信する。CU3は、コマンドを再送信してもレスポンスを受信できないことにより、通信回線断を検知する。
その後、P台2で電源断が復旧し、P台2が動作を開始する。P台2が動作を開始すると、まず、CU3とP台2との間で認証シーケンスが開始され、P台2からCU3に対して、メインチップIDと払出チップIDとが含まれる情報が送信される。CU3は、受信したメインチップIDと払出チップIDとを上位の管理サーバへ送信してメインチップIDと払出チップIDとが正規に登録されているか否か照会してもらいその結果を返信してもらう。正規に登録されていれば適正な認証結果となる。
認証シーケンス後、CU3は、リカバリ要求をP台2へ送信する。つまり、CU3は、P台2に対してリカバリ情報の通知を要求する。それを受けたP台2では、受信したリカバリ要求のコマンドに基づいて、P台2内部(具体的には払出制御基板17)でバックアップしているリカバリ情報をレスポンスとしてCU3へ返信する。P台2は、記憶している前回最終送信計数通番=m+1と、CU3から受信した前回最終送信計数通番=m(計数異常のため“m”のままの更新されていない)とが不一致なので、計数した玉数を遊技玉数から減算する処理を実行せず、計数要求状態をOFFにし、前回最終送信計数通番を1つ減らす(−1)。P台2は、この時点で電断発生前の計数要求を取り消して遊技玉数=500のまま維持する。
リカバリ応答を受信したCU3のCU制御部323は、リカバリ応答としてP台2から送信されてくる遊技台情報に含まれている遊技玉数が適正な値になっているか否かをチェックする第1チェック処理を実行する。この第1チェック処理は、図28(a)に基づいて後述する。CU3は、加算リカバリ処理は行なわないため、CU3は、リカバリ要求2をP台2に送信することなく、通番=2を含む通信開始要求をP台2に送信する。なお、CU3は、P台2から受信した前回遊技台情報を処理して、前回最終送信通番を更新して、当該データをバックアップする。CU3が通信開始要求のコマンドをP台2に送信する際、計数通番は“0”(初期値)にクリアされる。P台2は、通信開始要求を受け、通番=2を含む通信開始応答をCU3へ送信する。また、P台2は、通信開始要求を受信後、リカバリデータ(遊技情報)をクリアするとともに、計数通番も“0”(初期値)にクリアする。
CU3は、P台2との通信が開始されると、通番=3を含む状態情報要求をP台2に送信する。それを受けたP台2では、未通知の遊技台情報(遊技玉数=500)を状態情報応答でCU3に通知する。具体的には、状態情報応答として送信通番=3、遊技玉数=500を含む。状態情報応答を受信したCU3のCU制御部323は、状態情報応答として送信されてくる遊技台情報に含まれている遊技玉数が適正な値であるか否かをチェックする第2チェック処理を実行する。この第2チェック処理は、図28(b)に基づいて後述する。
<<加算要求異常>>
次に、加算要求異常の処理について説明する。図25は、特に、玉貸・持玉払出・貯玉払出時の遊技玉の加算結果が異常である場合の処理を説明するためのシーケンス図である。
この図25では、当初の遊技玉数が50玉の状態となっている。まず、CU3は、通番=n、遊技玉加算要求=OFFおよび加算通番=mを含む状態情報要求のコマンドをP台2へ送信する。それを受けて、P台2は、通番=n、遊技玉数=50および加算通番=mを含む状態情報応答のレスポンスをCU3に返信する。なお、状態情報応答のレスポンスに含まれる計数要求がOFF(図示せず)であるので、計数通番はmのまま、カウントアップすることなくCU3に送信される。
その後、遊技者が持玉払出ボタンを押下する。そのため、CU3は、持玉・貯玉の消費を確定し、通番=n+1、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2へ送信して、後述する図78のステップS516またはステップS527で設定されたレートを判定して、判定されたレートに応じた持玉・貯玉を遊技玉に変換した情報(ここでは、1玉4円のレートの持玉・貯玉を遊技玉に変換した加算玉数=125玉)を通知する。その際、CU3は、遊技玉数=50(更新前遊技玉数)+125(加算玉数)=175、更新した前回最終送信加算通番および加算要求状態ONのデータをバックアップする。
その後、P台2で遊技玉を加算する処理に異常が発生する。そのため、P台2は、CU3の状態情報要求のコマンドを受けて、通番=n+1、遊技玉数=50(遊技玉加算前の遊技玉数)、遊技玉加算結果=NGおよび加算通番=m+1を含む状態情報応答のレスポンスをCU3に返信する。P台2は、CU3に対して遊技玉加算結果=NG、前回最終送信加算通番の情報を通知する。
遊技玉加算結果=NGを含む状態情報応答のレスポンスを受信したCU3は、通番=n+2、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2へ再送する。なお、CU3は、状態情報要求のコマンドの再送であるが、通番は更新されn+1からn+2へカウントアップし、加算通番はm+1ままで状態情報要求のコマンドを再送する。
しかし、P台2は、遊技玉を加算する処理に異常が発生している状態のままである。そのため、P台2は、CU3の再送した状態情報要求のコマンドを受けて、通番=n+2、遊技玉数=50(遊技玉加算前の遊技玉数)、遊技玉加算結果=NGおよび加算通番=mを含む状態情報応答のレスポンスをCU3に返信する。
さらに、遊技玉加算結果=NGを含む状態情報応答のレスポンスを再度受信したCU3は、通番=n+3、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2へ2回目の再送を行なう。なお、CU3は、状態情報要求のコマンドの再送であるが、通番は更新されn+2からn+3へカウントアップし、加算通番はm+1ままで状態情報要求のコマンドを再送する。
P台2は、まだ遊技玉を加算する処理に異常が発生している状態のままである。そのため、P台2は、CU3の再送した状態情報要求のコマンドを受けて、通番=n+3、遊技玉数=50(遊技玉加算前の遊技玉数)、遊技玉加算結果=NGおよび加算通番=mを含む状態情報応答のレスポンスをCU3に返信する。
CU3は、状態情報要求のコマンドを2回再送しても、P台2から遊技玉加算結果=NGを含む状態情報応答のレスポンスの応答を受信する場合、P台2で遊技玉を加算する処理に異常が発生しているとして、加算異常復旧待ちの状態となる。
P台2において加算異常が復旧後、CU3は、通番=n+X、遊技玉加算要求=ON、加算玉数=125玉および加算通番=m+1を含む状態情報要求のコマンドをP台2へ再送を行なう。P台2では、加算異常が復旧しているので、遊技玉への加算処理を実施して遊技玉数=50(遊技玉加算前の遊技玉数)+125(加算玉数)=175とし、前回最終送信加算通番を更新して、当該データをバックアップする。
遊技玉への加算処理を実施後、P台2は、通番=n+X、遊技玉数=175、加算通番=m+1および遊技玉加算結果=OKを含む状態情報応答をCU3に送信する。これを受けて、CU3は、加算要求状態をOFFにする。
<加算通番に関する動作>
図26は、加算通番に関するP台2およびCU3の動作を説明するための概念図である。遊技玉の加算要求が発生していないときには、CU3とP台2との間で、図26の(1)〜(4)に示すような通常通番および加算通番を含む電文が送受信される。
(1)では、CU3からP台2に対して、通常通番n、加算通番mを含む電文が送信される。(1)の電文を受信したP台2は、(2)のように、受信した電文と同じ通常通番nおよび加算通番mを含む(2)の電文を返信する。
(2)の電文を受信したCU3は、通常通番が1つ更新された(3)の電文(通常通番n+1、加算通番m)を送信する。(3)の電文を受信したP台2は、受信した電文と同じ通常通番nおよび加算通番mを含む(4)の電文を返信する。
このようにCU3は、P台2から電文を受信するごとに、通常通番を1つ更新して次の電文を送信する。一方、P台2は通常通番を更新しない。また、加算要求が発生しない限り、加算通番は更新されない。
次に、加算要求(玉貸し操作や貯玉引き落とし操作による)が発生したときには、CU3からP台2に対して加算通番が1つ更新された(5)の要求電文が送信される(通常通番n+2、加算通番m+1)。この要求電文には加算要求ビットをONにしたデータも含まれている。なお、CU3は、この段階で既に加算要求に対する処理(カード残高の引き落としや貯玉の引き落とし)を確定させている。
P台2は、(5)の要求電文を受信し、加算通番が前回から1つ更新されていることに基づいて加算要求を認識する。その上で、今回の加算要求を承諾するか否かを判定する。この判定は、たとえば、P台2の払出制御部171が行なう。払出制御部171は、P台2側で遊技玉を加算する処理が可能であるか否かを判定する。遊技玉の加算処理が可能でない場合とは、たとえば、遊技玉が既に予め定めた上限値に達している場合である。
要求を承諾する場合には、(6)の2つの電文のうちの承諾電文を送信し、要求を拒否する場合には、(6)の2つの電文のうちの拒否電文を送信する。承諾電文では、加算通番が(5)の要求電文に含まれていた加算通番m+1とされている。一方、拒否電文では、加算通番が(6)よりも1つ前に送受信した電文に含まれる加算通番mとされている。なお、通常通番は、承諾電文および拒否電文のいずれも(5)の要求電文に含まれていたn+2である。
CU3は、直前の送信電文に含めた加算通番をバックアップ記憶するエリアと、受信電文に含まれる通常通番をバックアップ記憶するエリアとを備えている。これらのエリアは、たとえば、CU3のCU制御部323のマイクロコンピュータ内に設けられている。(6)の電文を受信したCU3のCU制御部323は、バックアップ記憶している加算通番と、(6)の電文に含まれる加算通番とを比較判定する。その結果、記憶している加算通番と送信されてきた電文に含まれる加算通番とが同じ(この例ではm+1)であれば、要求が承諾されたと判定する。これに対して、送信されてきた加算通番の方が1つ遅れている場合(この例ではm)には、要求が拒否されたと判定する。
図26の(5)’は、要求電文がノイズその他の要因によりP台2に到達しなかった場合について示している。この場合、P台2はCU3からの電文到達を待つため、P台2からCU3に対して電文が送信されることはない。CU3は、(5)’の要求電文を送信してから所定期間(200ms)だけ待機し、P台2からの応答がないので、同じ要求電文(5)’’を再送する。
<計数通番に関する動作>
図27は、計数通番に関するP台2およびCU3の動作を説明するための概念図である。計数要求が発生していないときには、CU3とP台2との間で、図27の(1)〜(3)に示すような通常通番および計数通番を含む電文が送受信される。
(1)では、CU3からP台2に対して、通常通番n、計数通番mを含む電文が送信される。(1)の電文を受信したP台2は、(2)のように、受信した電文と同じ通常通番nおよび計数通番mを含む(2)の電文を返信する。
(2)の電文を受信したCU3は、通常通番が1つ更新された(3)の電文(通常通番n+1、計数通番m)を送信する。このようにCU3は、P台2から電文を受信するごとに、通常通番を1つ更新して次の電文を送信する。一方、P台2は通常通番を更新しない。また、計数要求が発生しない限り、計数通番は更新されない。
次に、計数要求(計数操作の検出)が発生したときには、P台2からCU3に対して計数通番が1つ更新された(4)の要求電文が送信される(通常通番n+1、計数通番m+1)。この要求電文には計数要求ビットをONにしたデータも含まれている。なお、P台2は、この段階では計数処理を実行していない。
P台2は、(4)の要求電文を受信し、計数通番が前回から1つ更新されていることに基づいて計数要求を認識する。その上で、今回の計数要求を承諾するか否かを判定する。この判定は、たとえば、CU3のCU制御部323が行なう。CU制御部323は、計数処理(持玉の加算処理)が可能であるか否かを判定する。計数処理が可能でない場合とは、たとえば、持玉を用いた処理(ワゴンサービスなど)の途中である場合である。
要求を承諾する場合には、(5)の2つの電文のうちの承諾電文を送信し、要求を拒否する場合には、(5)の2つの電文のうちの拒否電文を送信する。承諾電文では、計数通番が(4)の要求電文に含まれていた計数通番m+1とされている。一方、拒否電文では、計数通番が(4)よりも1つ前に送受信した電文に含まれる計数通番mとされている。なお、通常通番は、承諾電文および拒否電文のいずれも(5)の要求電文から更新されており、n+2である。
P台2は、直前の送信電文に含めた計数通番と通常通番とをバックアップ記憶するエリアを備えている。このようなエリアは、たとえば、P台2の払出制御部171のマイクロコンピュータ内に設けられている。(5)の電文を受信したP台2の払出制御部171は、バックアップ記憶している計数通番と、(5)の電文に含まれる計数通番とを比較判定する。その結果、記憶している計数通番と送信されてきた電文に含まれる計数通番とが同じ(この例ではm+1)であれば、要求が承諾されたと判定する。これに対して、送信されてきた計数通番の方が1つ遅れている場合(この例ではm)には、要求が拒否されたと判定する。
図27の(4)’は、要求電文がノイズその他の要因によりP台2に到達しなかった場合について示している。この場合、CU3は、(3)の電文を送信してから所定期間(200ms)だけ待機し、P台2からの応答がないので、同じ電文(3)を再送する。再送されてきた(3)の電文を受けたP台2は、その電文に含まれる通常通番がn+1であり、先に(4)’の要求電文を送信しているにも関わらず、通常通番が変化していないことから、(4)’の要求電文が到達しなかったと判定する。そして、P台2は、(4)’と同じ要求電文(4)’’を再送する。
以上、説明したように、本実施の形態では、通常通番とは別の要求通番(加算通番、計数通番)が電文に含められて送信される。これらの要求通番は、通信相手に対して加算要求や計数要求等の動作を要求するときに加算更新され、それ以外では、電文の送受信が行なわれても加算更新されない。
これに対して、通常通番は、通信相手に対する要求の有無に関わらず、CU3から電文が送信されるごとに更新される(なお、通常の通番は、CU3およびP台2の双方で互いに更新する動作をしてもよい。)。
このため、通常通番の場合、送信した要求電文が相手に届いたか否かを相手先からの受信電文に含まれる通番を用いて判定できるものの、その受信電文が要求承諾を示す承諾電文であるのか、要求拒絶を示す拒否電文であるのかまでは特定できない。
ところが、上記のとおり、本実施の形態のように加算通番や計数通番といった要求通番を利用して、要求通番を更新した要求電文を送信し、これに対する応答として要求電文に含まれていた要求通番と同じ要求通番を含む電文を受信した場合には、その通番の値によって、送信した要求電文が相手に届いたか否かのみならず、相手から返信されてきた電文が承諾電文であるのか否かまでを特定できる。もちろん、本実施の形態のように、要求電文には要求ビット(加算要求ビットあるいは計数要求ビット)をONにしたデータが含まれるため、このデータを判定することでも、受信電文が承諾電文であるのか拒否電文であるのかを特定できる。しかしながら、要求通番を利用すれば、このような要求ビットを電文から削除することも可能である。これによって電文データ量を削減でき、また、電文データの要求ビットを判定する処理も不要とすることができる。
なお、本実施の形態では、要求が発生したときの要求通番に対する更新値を+1としているが、これは一例であって、+2や+3、−1や−2などの他の更新値を採用してもよい。
<第1〜第3チェック処理>
次に、図28(a)、(b)、図29に基づいて、CU制御部323により実行される第1チェック処理、第2チェック処理および第3チェック処理について説明する。
まず図28(a)を参照して、第1チェック処理を説明する。ステップS(以下単にSという)300により、遊技台情報の格納があるか否かの判断がなされる。これは、P台2から送信されてきたリカバリ応答の中に遊技台情報が含まれているか否かを判断するものであり、前述した図16、図17の場合に遊技台情報(具体的には前回遊技台情報)が含まれているために、S300によりYESの判断がなされる。遊技台情報が含まれていないと判断された場合にはこの第1チェック処理が終了する。
遊技台情報の格納があると判断された場合には制御がS301へ進み、その受信した遊技台情報(具体的には前回遊技台情報)に含まれている加算玉数が予め定められた閾値N1以上であるか否かの判断がなされる。この閾値N1は、CU3とP台2との間での状態情報要求と状態情報応答との1周期(200ms)の間に入賞に伴う遊技玉の加算数の最大(たとえば大当り時の最大加算玉数120)よりも少し大きい値(たとえば125)に設定されている。したがって、正常な場合には、受信した加算玉数がこの閾値N1よりも小さな値になっている筈である。ところが、閾値N1よりも大きな加算玉数となっているということは、オフライン中にP台2に不正等が行なわれて不正に増加した加算玉数および遊技玉数を含む遊技台情報がリカバリ応答としてCU3へ送信されてきた虞がある。その場合には、制御がS304へ進み、エラーの発生を異常報知ランプや表示器312により報知する制御が行なわれるとともに、ホールサーバ801にエラーが発生した旨のエラー通知信号を送信する制御がなされる(この場合、ホールサーバ801によるエラー報知が行なわれるようにしてもよい)。なお、ホールサーバ801の代わりにまたはそれに加えて、ホール用管理コンピュータへエラー通知信号を送信するように制御してもよい。
次に制御がS305へ進み、CU制御部323がリセット待ち状態となる。このリセット待ち状態となった後は、遊技場の係員によるリモコン操作によってリセット解除信号がIR感光ユニット320に入力されるまでCU制御部323が制御を停止し、リセット信号が入力されたときにCU制御部323がリセット状態となって電源投入(図8参照)と同じ状態に復帰する。
S301、S303のチェック処理の結果異常判定されたとしても、その原因が通信断後にCU3またはP台2を新たなものに交換し、その後通信を復旧させたことにより、CU3側が記憶している情報とリカバリ処理時にP台2から送信されてくる情報とが全く食い違っていることに起因する場合がある。このような不正行為ではないにも拘らず異常判定する場合があり、そのために、遊技場の係員によるリモコン操作によってリセット待ち状態を解除できるようにし、遊技場の係員による人為的な判断を介在させて正常な対応ができるようにしている。
一方、S301によりNOの判断がなされた場合には制御がS302へ進み、CU制御部323が記憶している遊技玉数に対してP台から受信した加算玉数を加算するとともに減算玉数を減算してその算出結果であるR1を算出する演算が行なわれる。すなわち、P台2から受信した遊技台情報に含まれている加算玉数が適正であると判断された場合には、その加算玉数と減算玉数とを用いて最新の遊技玉数R1を算出するのである。次にS303により、その算出されたR1−受信した遊技玉数の絶対値すなわちR1と受信した遊技玉数との差を演算し、その差が予め定められた閾値N2以上であるか否かの判断がなされる。本来、R1と受信した遊技玉数とは同じ値の筈であり、その差はゼロとなる筈である。しかし、遊技中におけるCU側とP台側とでの制御の進行に伴って両者間に誤差玉が発生する場合がある。その誤差玉(たとえば5個)を閾値N2と定めている。よって、R1と受信した遊技玉数との差がこの閾値N2以上である場合には、前述と同様に不正行為の発生の虞が想定され、前述と同様に制御がS304以降に進む。
一方、R1と受信した遊技玉数との差が閾値N2未満であった場合には、受信した遊技玉数が適正な値であると判断され、その受信した遊技玉数を新たな遊技玉数としてCU制御部323のRAMが記憶する。
次に図28(b)に基づいて第2チェック処理を説明する。通信開始応答直後の状態情報要求に対して返信されてくるP台2からの状態情報応答に含まれている遊技台情報(具体的には今回遊技台情報)の中の加算玉数が予め定められた閾値N3以上であるか否かの判断がS310により行なわれる。この受信した加算玉数は、P台がCU3へ最後に状態情報応答を送信してからP台に電源断が発生するまであるいはP台が通信回線断を検知して遊技が停止するまでの間において変動した加算玉数であり、このような比較的短い限られた期間内の加算玉数の変動量はそれほど大きな値にはならず、ある決まった上限の範囲内となる。故に、その上限(たとえば120)よりも少し大きな値(たとえば125)を閾値N3と定めている。そして、受信した加算玉数がその閾値N3以上の場合には、制御がS314へ進み、エラーの発生を異常報知ランプや表示器312により報知する制御が行なわれるとともに、ホールサーバ801にエラーが発生した旨のエラー通知信号を送信する制御がなされる(この場合、ホールサーバ801によるエラー報知が行なわれるようにしてもよい)。なお、ホールサーバ801の代わりにまたはそれに加えて、ホール用管理コンピュータへエラー通知信号を送信するように制御してもよい。
次に制御がS315へ進み、CU制御部323がリセット待ち状態となる。このリセット待ち状態となった後は、遊技場の係員によるリモコン操作によってリセット解除信号がIR感光ユニット320に入力されるまでCU制御部323が制御を停止し、リセット信号が入力されたときにCU制御部323がリセット状態となって電源投入(図8参照)と同じ状態に復帰する。
一方、S310によりNOの判断がなされた場合には制御がS311へ進み、CU制御部323が記憶している遊技玉数に対して受信した加算玉数を加算するとともに受信した減算玉数を減算してR2を算出する演算が行なわれる。なお、ここでいう「記憶している遊技玉数」とは、前述したように、S303によりNOの判断がなされたときのP台2から受信した遊技玉数のことである。そして、S312により、そのR2とP台2から受信した遊技玉数との差が予め定められた閾値N4以上であるか否かの判断がなされる。本来、R2と受信した遊技玉数とは同じ値の筈であり、その差はゼロとなる筈である。しかし、遊技中におけるCU側とP台側とでの制御の進行に伴って両者間に誤差玉が発生する場合がある。その誤差玉(たとえば5個)を閾値N4と定めている。よって、R1と受信した遊技玉数との差がこの閾値N4以上である場合には、前述と同様に不正行為の発生の虞が想定され、前述と同様に制御がS314以降に進む。
S312によりNOの判断がなされた場合には制御がS313へ進み、CU制御部323は、P台2から受信した遊技玉数を初期値の遊技玉数として記憶した後、この第2チェック処理の制御が終了する。
このS313の処理がなされた後には、CU3とP台2との間で通常の状態情報要求および状態情報応答の送受信が行なわれるのであり、その際、CU制御部323は、S313により初期値の遊技玉数として記憶された遊技玉数を初期値として、加算玉数と減算玉数とに基づいて現在の遊技玉数を算出し、その現在の遊技玉数に基づいてP台2から送信されてくる遊技玉数との差が予め定められた誤差玉数(たとえば5)を超えているか否か判定し、超えている場合には異常判定して、前述のS304、S305、S314、S315と同様の制御を行なう。
次に、図29に基づいて第3チェック処理の制御を説明する。CU制御部323は、P台2からリカバリ応答2を受信した直後にこの第3チェック処理を実行する(図18、図20、図21参照)。
このリカバリ要求2およびリカバリ応答2は、前述したように、CU3がP台2に対して遊技玉数の加算要求を出力したにも拘らずP台2がその遊技玉加算要求に従った遊技玉の加算処理を行なっていない場合にその遊技玉数の加算リカバリを行なうためのものである。そして、P台2からCU3へ送られてくるリカバリ応答2によりその加算リカバリの処理が正常に行なわれたか否かの処理結果が通知される。CU制御部323は、S320により、そのリカバリ結果が処理NGであるか否かの判断を行なう。処理NGすなわち加算リカバリが正常に行なわれなかった場合には、制御がS324へ進み、エラーの発生を異常報知ランプや表示器312により報知する制御が行なわれるとともに、ホールサーバ801にエラーが発生した旨のエラー通知信号を送信する制御がなされる(この場合、ホールサーバ801によるエラー報知が行なわれるようにしてもよい)。なお、ホールサーバ801の代わりにまたはそれに加えて、ホール用管理コンピュータへエラー通知信号を送信するように制御してもよい。
次に制御がS325へ進み、CU制御部323がリセット待ち状態となる。このリセット待ち状態となった後は、遊技場の係員によるリモコン操作によってリセット解除信号がIR感光ユニット320に入力されるまでCU制御部323が制御を停止し、リセット信号が入力されたときにCU制御部323がリセット状態となって電源投入(図8参照)と同じ状態に復帰する。
一方、リカバリ結果が処理OKであった場合には制御がS321へ進み、CU制御部323が現在記憶している遊技玉数に対してP台2へ送信した加算玉数を加算する処理を行なう。これは、CU3が出力した遊技玉加算要求での加算玉数分の加算リカバリがP台2において正常に行なわれたために、その加算玉数を遊技玉数に加算して現時点における正常な遊技玉数を算出するための処理である。
次に制御がS322へ進み、その加算後の遊技玉数に対してP台2から送信されてきた加算玉数を加算するとともに減算玉数を減算してR3を算出する演算が行なわれる。この加算玉数と減算玉数とは、リカバリ応答としてP台2から送信されてくる遊技台情報(具体的には前回遊技台情報)であり、リカバリ応答にその前回遊技台情報が含まれていない場合には、加算玉数と減算玉数とは共にゼロであり、その結果、加算後の遊技玉数=R3を算出することとなる。
次にS323により、その算出されたR3とCU3が受信した遊技玉数との差が予め定められた閾値N2以上であるか否かの判断がなされる。本来、R1と受信した遊技玉数とは同じ値の筈であり、その差はゼロとなる筈である。しかし、遊技中におけるCU側とP台側とでの制御の進行に伴って両者間に誤差玉が発生する場合がある。その誤差玉(たとえば5個)を閾値N2と定めている。よって、R1と受信した遊技玉数との差がこの閾値N2以上である場合には、前述と同様に不正行為の発生の虞が想定され、前述と同様に制御がS324以降に進む。
一方、R1と受信した遊技玉数との差が閾値N2未満であった場合には、受信した遊技玉数が適正な値であると判断され、その受信した遊技玉数を新たな遊技玉数としてCU制御部323が記憶する。
以上説明したように、P台2からCU3へ、遊技台情報として前回遊技台情報が先に送信され、その後今回遊技台情報が送信され、CU3側において両遊技台情報を区別可能となるように送信されるために、CU制御部323においては、その両遊技台情報のそれぞれの適性を判別することが可能となる。その結果、P台2から送られてくる前回遊技台情報中のたとえば遊技玉数データは、CU制御部323が現時点で記憶している遊技玉数データと大きな差はない筈であり、また、その後に送られてくる今回遊技台データ中のたとえば遊技玉数データも、CU3が受信した前回遊技台情報中の遊技玉数データとそれほど大きな差はない筈である。もし、これらのデータの差に大きな開きがある場合には、不正に遊技玉数データが水増しされていると異常判別することができる。
仮に、前回遊技台データと今回遊技データとを合算した合算データがP台2からCU3へ一括送信される場合には、前回遊技台データと今回遊技台データとをそれぞれ個別に判別する場合に比べて大まかな判別しかできず、その分不正を判別しにくくなる。このような不都合を防止するべく、遊技台データを2段階で送信してCU制御部323においてそれら両データを区別できるようにし、それぞれの遊技台データについての木目細かな異常判別を可能とし、異常判別しやすくしている。
なお、前述した第1チェック処理〜第3チェック処理においては、先に加算玉数の適否を判定した後、適正である場合にその加算玉数に基づいて現在の遊技玉数を算出してその遊技玉数とP台2から送信されてきた遊技玉数を比較して送信されてきた遊技玉数が適正であるか否かの判定を行なっているが、単に、P台2から送信されてきた遊技玉数をCU3が記憶している遊技玉数と比較してその適否判定を行なうようにしてもよい。
さらに、CU3は、リカバリ処理以前に記憶している最終の遊技玉数(以下「CU遊技玉数」と言う)と、P台2から受信した前回遊技台情報中の遊技玉数(以下「P台前回遊技玉数」と言う)と、P台2から受信した最新遊技台情報中の遊技玉数(以下「P台最新遊技玉数」と言う)との3者間で比較判定して適否判定を行なうようにしてもよい。3者間での比較判定の具体例としては、CU遊技玉数とP台前回遊技玉数とを比較判定して正しければそのP台前回遊技玉数とP台最新遊技玉数とを比較判定する。あるいは、CU遊技玉数とP台前回遊技玉数とを比較判定して正しければCU遊技玉数とP台最新遊技玉数とを比較判定する。さらには、先にP台前回遊技玉数とP台最新遊技玉数とを比較判定して正しければCU遊技玉数とP台前回遊技玉数とを比較判定し、さらにCU遊技玉数とP台最新遊技玉数とを比較判定する。
なお、上記の第1チェック処理〜第3チェック処理は、CU3やP台2の交換(入替え)が行なわれていないときに実行するのが望ましい。通信断時に交換(入替え)が行なわれているときには、リカバリ処理でCU側とP台側との遊技玉数が大幅に相違するのが一般的であるために、それが原因で上記の第1チェック処理〜第3チェック処理の結果エラー判定されるためである。ゆえに、通信断後にCU3またはP台2を交換した場合に、通信復旧時におけるリカバリ処理において第1チェック処理〜第3チェック処理を行なわないように制御してもよい。具体的には、リカバリ応答としてP台2から送信されてくる前回最終送信通番とCU制御部323が記憶している前回最新送信通番との差が2以上の場合に、CU3またはP台2が交換されたとCU制御部323が判断し、CU制御部323が第1チェック処理〜第3チェック処理を行なわないように制御する。
さらに、CU3またはP台2の交換であるか否かに拘らず、リカバリ時にはCU3側で前回遊技台データおよび今回遊技台データのチェックを一切行なわないように制御してもよい。このようにすれば、CU3またはP台2の交換に起因したチェック異常判定が生ずる煩わしさを防止することができる。
<SCとICとの通信における主なシーケンス>
次に、SC325bと通信制御IC325aとの通信における主なシーケンスについて説明する。まず、図30は、SC325bと通信制御IC325aとの間の業務電文の送信処理を説明する図である。図30を参照して、SC325bと通信制御IC325aとの間で業務電文を送信するための行われる処理について説明する。
まず、SC325bは、通信制御IC325aに対して状態確認要求(TYPE=’1’)を送信する。通信制御IC325aは、SC325bから状態確認要求(TYPE=’1’)が送信されると、状態確認応答(RDY=’1’)をSC325bに対して送信する。SC325bは、通信制御IC325aから状態確認応答(RDY=’1’)が送信されると、SC325bと通信制御IC325aとの通信が可能であると判断して、業務電文送信要求を通信制御IC325aに対して送信する。
さらに、SC325bは、通信制御IC325aに対して状態確認要求(TYPE=’1’)を送信し、通信制御IC325aは、当該状態確認要求(TYPE=’1’)に対する状態確認応答(RDY=’1’)をSC325bに送信する。その後、通信制御IC325aは、業務電文送信要求に対する業務電文応答をSC325bに送信する。
つまり、SC325bと通信制御IC325aとの間で業務電文を送信する場合、業務電文送信要求および業務電文応答を送信する毎に、状態確認要求(TYPE=’1’)および状態確認応答(RDY=’1’)を送信してSC325bと通信制御IC325aとの通信が可能か否かを確認している。
次に、図31は、SC325bと通信制御IC325aとの間の通信異常検知の処理を説明する図である。図31を参照して、SC325bと通信制御IC325aとの間で通信異常が発生したのか否かを検知するために行われる処理について説明する。
まず、SC325bは、通信制御IC325aに対して状態確認要求(TYPE=’1’)を送信する。通信制御IC325aは、SC325bから状態確認要求(TYPE=’1’)が送信されると、状態確認応答(RDY=’1’)をSC325bに対して送信する。SC325bは、通信制御IC325aから状態確認応答(RDY=’1’)が送信されると、SC325bと通信制御IC325aとの通信が可能であると判断して、業務電文を通信制御IC325aに対して送信する。
さらに、SC325bは、通信制御IC325aに対して状態確認要求(TYPE=’1’)を送信し、通信制御IC325aは、当該状態確認要求(TYPE=’1’)に対する状態確認応答(RDY=’1’)をSC325bに送信する。その後、通信制御IC325aは、業務電文送信要求に対する業務電文応答をSC325bに送信する。しかし、SC325bと通信制御IC325aとの間で通信異常が発生し、通信制御IC325aからSC325bに送信する業務電文応答が、業務電文無応答(データ長=’0’)となる。
SC325bは、通信制御IC325aから業務電文無応答(データ長=’0’)が送信されると、業務電文送信要求を再度送信する。なお、SC325bが、通信制御IC325aに業務電文送信要求を再度送信する前に、SC325bと通信制御IC325aとの間で、状態確認要求(TYPE=’1’)および状態確認応答(RDY=’1’)を送信する。
さらに、SC325bは、通信制御IC325aに対して状態確認要求(TYPE=’1’)を送信し、通信制御IC325aは、当該状態確認要求(TYPE=’1’)に対する状態確認応答(RDY=’1’)をSC325bに送信する。その後、通信制御IC325aは、業務電文送信要求(再送)に対する業務電文応答をSC325bに送信する。しかし、SC325bと通信制御IC325aとの間で通信異常が継続しているので、通信制御IC325aからSC325bに送信する業務電文応答が、業務電文無応答(データ長=’0’)のままとなる。
さらに、SC325bは、通信制御IC325aから業務電文無応答(データ長=’0’)が送信されると、業務電文送信要求を再度送信するが、SC325bと通信制御IC325aとの間で通信異常が継続しているので、通信制御IC325aからSC325bに送信する業務電文応答が、業務電文無応答(データ長=’0’)のままとなる。
SC325bは、通信制御IC325aから3回業務電文無応答(データ長=’0’)が送信されたので、SC325bと通信制御IC325aとの間で通信異常が発生したことを検知する。
次に、図32は、SC325bと通信制御IC325aとの間の通信回線断検知の処理を説明する図である。図32を参照して、SC325bと通信制御IC325aとの間で通信回線断(SC325bと通信制御IC325aとの間でをシリアル通信可能に接続する配線のうち少なくとも一本の配線が断線すること)が発生したのか否かを検知するために行われる処理について説明する。
まず、SC325bは、通信制御IC325aに対して状態確認要求を送信する。通信制御IC325aは、SC325bから状態確認要求が送信されると、状態確認応答(’0x20’、’0xDF’)をSC325bに対して送信する。なお、状態確認応答の’0x20’、’0xDF’が、通信制御IC325aからSC325bに送信されるデータセットの1つで、当該データセットの2バイト目の情報’0xDF’が、データセットの1バイト目の情報’0x20’の反転情報となっている。
しかし、SC325bと通信制御IC325aとの間で断線が発生した場合、SC325bは、通信制御IC325aに対して状態確認要求を送信するが、通信制御IC325aは、状態確認応答(’0x20’、’0x20’)をSC325bに対して送信する。SC325bと通信制御IC325aとの間で断線が発生しているので、状態確認応答の2バイト目の情報’0x20’が、データセットの1バイト目の情報’0x20’の反転情報となっていない。
なお、SC325bと通信制御IC325aとの間で断線が発生した場合であっても、図32においては、SC325bが、通信制御IC325aに対して状態確認要求を送信し、通信制御IC325aが、状態確認応答をSC325bに対して送信する様子が図示されている。しかし、SC325bと通信制御IC325aとの間で断線が発生している場合、実際には、SC325bと通信制御IC325aとの間で状態確認要求および状態確認応答の送信は行われていない。図32では、マスタであるSC325bが、シリアル・クロックのタイミングで第2データ線の状態を読出すため、あたかもSC325bと通信制御IC325aとの間で状態確認要求および状態確認応答の送信は行われているように図示している。
たとえば、SC325bと通信制御IC325aとの間に設けたクロック線が断線した場合、SC325bから通信制御IC325aにシリアル・クロックが送信されなくなるため、通信制御IC325aから状態確認応答の電文が送信されない。しかし、SC325bは、シリアル・クロックのタイミングで第2データ線の状態を読出すが、状態確認応答の電文が送信されていないため、読出される電文は1バイト目の情報と2バイト目の情報とが反転していない電文となる。
また、SC325bと通信制御IC325aとの間に設けた第1データ線が断線した場合、SC325bから通信制御IC325aにデータが送信されなくなるため、通信制御IC325aから状態確認応答の電文が送信されない。そのため、SC325bは、シリアル・クロックのタイミングで、第2データ線の状態を読出しても、1バイト目の情報と2バイト目の情報とが反転していない、無応答の電文となる。
さらに、SC325bと通信制御IC325aとの間に設けた第2データ線が断線した場合、通信制御IC325aからSC325bへの応答が送信できなくなるため、通信制御IC325aから状態確認応答の電文が送信されない。そして、第2データ線が断線されているため、電位がHレベルまたはLレベルに固定され、第2データ線の状態を読出しても、1バイト目の情報と2バイト目の情報とが反転していない電文となる。
その後も、SC325bは、シリアル・クロックのタイミングで状態確認応答の電文を読出すが、SC325bと通信制御IC325aとの間で断線が発生しているため、読出す状態確認応答は、2バイト目の情報’0x20’が、データセットの1バイト目の情報’0x20’の反転情報となっていない。
SC325bは、このような状態がSC−通信制御IC断線検知時間経過(所定の設定条件が成立)するまで連続すると、SC325bと通信制御IC325aとの間で断線が生じていると判定する。なお、SC−通信制御IC断線検知時間は、2バイト目の情報が1バイト目の情報の反転情報となっていないデータを最初に検出してから、SC−通信制御IC断線と判定するまでの時間であり、予め定められた時間(たとえば、30秒)である。また、所定の設定条件は、SC−通信制御IC断線検知時間だけではなく、SC−通信制御IC間の通信回数など他の条件であっても、複数の条件を組合わせてもよい。さらに、SC325bと通信制御IC325aとの間で断線は、クロック線、第1データ線および第2データ線のうち、少なくとも一本の配線が断線した状態である。
次に、図33は、SC325bと通信制御IC325aとの間の業務電文シーケンスの処理を説明する図である。図33を参照して、CU3の電源投入後のSC325bおよび通信制御IC325aの処理について説明する。
まず、CU3の電源を投入すると、SC325bおよび通信制御IC325aが起動される。SC325bは、起動するとCU制御部323と認証が実施され、通信制御IC325aは、起動すると遊技機(たとえばP台2)と認証が実施される。
その後、SC325bおよび通信制御IC325aは、暗号鍵に認証鍵を用い、通信制御IC認証シーケンスを行なう。この通信制御IC認証シーケンスはSE1モードにて行なわれる。認証鍵には、SC325bおよび通信制御IC325aの製造段階から予め記憶されている仮認証鍵と、鍵管理サーバから送られてくる所定データに基づいてSC325bおよび通信制御IC325aが生成する本認証鍵とがある。仮認証鍵は、本認証鍵が生成されるまでの間、SC325bと通信制御IC325aとの間の通信に用いる暗号鍵である。この仮認証鍵を使用しての認証の下での遊技機の運用は、或る限られた期間(例えば2日)のみ許容される時限運用処理が行なわれ、時限運用期間が過ぎた段階で上位装置(鍵管理センターの鍵管理サーバ800)に通知を行ない、上位装置のリセット処理開始まで待機状態(リセット待ち)となる。なお、通信制御IC認証シーケンスの詳細な処理については、後述する。
その後、SC325bおよび通信制御IC325aは、暗号鍵に本認証鍵または仮認証鍵を用い、セキュリティ情報更新シーケンスを行なう。このセキュリティ情報更新シーケンスはSE2モードにて行なわれる。このセキュリティ情報更新シーケンスは、SC325bが通信制御IC325aに対して、上位装置(具体的には、ホールサーバ801)から取得した有効鍵を設定する処理である。有効鍵は、通信制御IC325aが遊技機との通信を活性化するためのデータであり、この有効鍵がなければ通信制御IC325aが遊技機と通信できない。さらに、SC325bおよび通信制御IC325aは、遊技機チップ情報認証シーケンスを行なう。この遊技機チップ情報認証シーケンスはSE2モードにて行なわれる。遊技機(たとえばP台2)に搭載されている主制御チップのチップID(主制御チップID)と払出制御チップのチップID(払出制御チップID)とを通信制御IC325aが受信し、それら主制御チップIDと払出制御チップIDとの真正を照合するための処理である。
この遊技機チップ情報認証シーケンスは最初鍵管理サーバ800に主制御チップIDと払出制御チップIDとの照会を行なってもらう関係上時間がかかる場合があり、その間遊技機チップ情報認証待ちの仮運用が実行され、鍵管理サーバ800からの照会を待つことなく通信鍵要求以降の運用処理が実行される。
その後、SC325bは、通信制御IC325aに対して通信鍵を要求する通信鍵要求のコマンドを送信する。通信鍵要求のコマンドは、暗号鍵に本認証鍵または仮認証鍵を用いて、暗号化してある。
通信鍵要求のコマンドを受信した通信制御IC325aは、遊技機と業務電文を通信するための通信鍵(セッション鍵)を生成し、生成した通信鍵を通信鍵応答のレスポンスでSC325bに通知する。通信鍵要求および通信鍵応答はSE2モードにて行なわれる。なお、返信する通信鍵応答のレスポンスは、暗号鍵に本認証鍵または仮認証鍵を用いて、暗号化してある。通信鍵(セッション鍵)の生成方法は、具体的には、乱数と現在時刻のデータとを用いて生成する。この現在時刻のデータは、通信制御IC325a自ら生成してもよくまた他の装置からもらい受けてもよい。この通信鍵(セッション鍵)の生成方法は、乱数と現在時刻のデータとに限らず、前述の相互認証に用いた鍵以外の可変データであれば、いかなるものを用いてもよい。また、通信制御IC325aではなくSC325bの方が生成して通信制御IC325aへ通知するように制御してもよい。
以降、SC325bと通信制御IC325aの両者間で通信鍵(セッション鍵)が共有されて両者間で業務電文の暗号通信が行なわれるとともに、通信制御IC325aと遊技機(P台2)との業務電文通信もこの通信鍵(セッション鍵)を使用して暗号通信が行なわれる。
このように、電源投入の度に通信鍵(セッション鍵)が更新されてセキュリティを担保できる。さらに、通信鍵(セッション鍵)更新は、電源投入時以外に、更新周期毎(定期的)にも実行される。つまり、SC325bが通信鍵の更新周期を検知したときに通信鍵(セッション鍵)を更新する制御を行なう。具体的には、ホールサーバ801(または鍵管理サーバ800)から更新周期毎に鍵更新指令がCU3へ送信され、それを受けたCU3のSC325bが通信鍵要求を通信制御IC325aへ送信して前述と同様に通信鍵(セッション鍵)を更新する制御を行なう。この更新周期毎に鍵更新も乱数と現在時刻のデータとを用いて生成するため、電源投入時に更新された通信鍵(セッション鍵)とは異なる鍵に更新され、より一層セキュリティが向上する。
次に、図34は、通信制御IC325aの認証シーケンスの処理を説明する図である。図34を参照して、SC325bと通信制御IC325aとの間で、第1認証シーケンスが実行される。第1認証シーケンスはSE1モードにて行なわれる。たとえば、この第1認証シーケンスによりSC325bのシリアルIDすなわちEEPROM(図示略)に記憶されているSC325bのSIDの認証が行なわれる。次に、SC325bと通信制御IC325aとの間で、第2認証シーケンスが実行される。第2認証シーケンスはSE1モードにて行なわれる。たとえば、この第2認証シーケンスにより通信制御IC325aのシリアルIDすなわちEEPROM(図示略)に記憶されている通信制御IC325aのSIDの認証が行なわれる。
その後、SC325bと通信制御IC325aとの間で、バージョン管理情報シーケンスが実行される。バージョン管理情報シーケンスはSE1モードにて行なわれる。SC325bは、鍵バージョンをチェックするために、通信制御IC325aに対してバージョン管理情報要求のコマンドを送信する。なお、バージョン管理情報要求のコマンドは、暗号鍵として認証鍵(具体的には本認証鍵または仮認証鍵)を用いて、暗号化してある。
バージョン管理情報要求のコマンドを受信した通信制御IC325aは、SC325bに対して最新の鍵バージョンを通知するために、バージョン管理情報応答のレスポンスを送信する。なお、バージョン管理情報応答のレスポンスは、暗号鍵として認証鍵(具体的には本認証鍵または仮認証鍵)を用いて、暗号化してある。
その後、SC325bと通信制御IC325aとの間で、IC認証結果シーケンスが実行される。IC認証結果シーケンスはSE1モードにて行なわれる。SC325bは、通信制御IC325aに対してIC認証結果通知のコマンドを送信する。このIC認証結果通知のコマンドによって、第1認証シーケンスからバージョン管理情報応答までの認証結果が総括して通信制御IC325aに通知される。なお、IC認証結果通知のコマンドは、暗号鍵として認証鍵(具体的には本認証鍵または仮認証鍵)を用いて、暗号化してある。
IC認証結果通知のコマンドを受信した通信制御IC325aは、SC325bに対してIC認証結果応答のレスポンスを送信する。ここでIC認証結果応答のレスポンスによって第1認証シーケンスからバージョン管理情報応答までの認証結果を総括してSC325bに通知される。なお、IC認証結果応答のレスポンスは、暗号鍵として認証鍵(具体的には本認証鍵または仮認証鍵)を用いて、暗号化してある。
その後、SC325bと通信制御IC325aとの間で、カウンタ情報シーケンスが実行される。カウンタ情報シーケンスはSE1モードにて行なわれる。SC325bは、通信制御IC325aに対してカウンタ情報要求のコマンドを送信する。このカウンタ情報要求のコマンドによって、現在時刻の情報が通信制御IC325aに通知される。なお、カウンタ情報要求のコマンドは、暗号鍵として認証鍵(具体的には本認証鍵または仮認証鍵)を用いて、暗号化してある。
カウンタ情報要求のコマンドを受信した通信制御IC325aは、SC325bに対してカウンタ情報応答のレスポンスを送信する。ここでカウンタ情報応答のレスポンスによって暗号化で使用するカウンタの初期ベクタ値を生成してSC325bに通知される。なお、カウンタ情報応答のレスポンスは、暗号鍵として認証鍵(具体的には本認証鍵または仮認証鍵)を用いて、暗号化してある。
次に、図35に基づいて前述の第1認証シーケンスの制御内容の一例を説明する。この第1認証シーケンスはSE1モードにて行なわれる。まずSC325bから通信制御IC325aへ認証鍵乱数が通知される。この認証鍵乱数は認証鍵(具体的には本認証鍵)を生成するためのデータである。それを受信した通信制御IC325aは、SC325bに対して認証鍵乱数を受信したことを示す認証鍵乱数通知応答を返信する。次に、SC325bと通信制御IC325aとは、互いの認証鍵乱数を用いて認証鍵(具体的には本認証鍵)を生成する。上記認証鍵乱数の通知から認証鍵(具体的には本認証鍵)の生成までのシーケンスは、仮認証鍵を使用している時のみ、すなわち未だ本認証鍵が生成されていない時のみ実行される。本認証鍵が既に生成されて使用されているときには、上記認証鍵乱数の通知から認証鍵(具体的には本認証鍵)の生成までのシーケンスを実行することなくSCシリアルID認証要求1からシーケンスを実行する。
次に、SC325bと通信制御IC325aとの間でSCシリアルID認証要求1とSCシリアルID認証応答1とがやり取りされ、さらにSCシリアルID認証要求2とSCシリアルID認証応答2とがやり取りされることにより、SE1モードでのSCシリアルIDの認証が行なわれる。
図36は、通信制御IC認証異常シーケンスの処理を説明する図である。通信制御IC認証異常シーケンスはSE1モードにて行なわれる。図36を参照して、図34において説明をした第1認証シーケンス〜バージョン管理情報応答が実行される。この第1認証シーケンス〜バージョン管理情報応答は、暗号鍵として認証鍵(具体的には本認証鍵または仮認証鍵)を用いて、暗号化されている。なお、SC325bと通信制御IC325aとは共にSCのシリアルIDと通信制御ICのシリアルIDとを記憶しており、第1認証シーケンス〜バージョン管理情報応答のうち、いずれか1つはチャレンジ/レスポンス方式を用いてSCのシリアルIDを認証するシーケンスであり、また第1認証シーケンス〜バージョン管理情報応答のうち、いずれか1つはチャレンジ/レスポンス方式を用いて通信制御ICのシリアルIDを認証するシーケンスである。これらSCのシリアルIDと通信制御ICのシリアルIDと前述の基板シリアルIDとは、それぞれ異なるIDで構成されている。
これらの認証シーケンスが終了後、次にSC325bと通信制御IC325aとの間で、IC認証結果シーケンスが実行される。SC325bから通信制御IC325aへIC認証結果通知が送信される。このIC認証結果通知によって第1認証シーケンスからバージョン管理情報応答までの認証結果を総括して通知される。一方、通信制御IC325aからSC325bへIC認証結果応答が送信される。IC認証結果応答によって第1認証シーケンスからバージョン管理情報応答までの認証結果を総括して通知される。このIC認証結果通知および/またはIC認証結果応答が不適正(NG)である場合は、以下の制御が行なわれる。
第1認証シーケンスからバージョン管理情報応答までの認証を仮認証鍵を用いて行なっていた場合には、前述した第1認証シーケンスからバージョン管理情報応答までの処理がリトライされる。そのリトライ回数は2回が限度であり、その2回のリトライ後でもこのIC認証結果通知および/またはIC認証結果応答が不適正である場合には、SC325bは「通信制御IC認証異常」を上位装置(鍵管理センターの鍵管理サーバ800)に通知を行ない、上位装置のリセット処理開始まで待機する(リセット待ち)。
複数(ここでは2回)のリトライ後でもIC認証結果通知および/またはIC認証結果応答が不適正である場合には、リセット処理(たとえばリセットボタン(図示省略)の操作や電源再投入)により復帰する。しかしこれに限らず、リセット待ちの状態のときに、SC325bが上位装置である鍵管理サーバ800やホールサーバ801との認証が取れたことを条件に復帰させてもよい。
次に、更新直後の認証鍵すなわち図35の第1認証シーケンスの結果生成された認証鍵(具体的には本認証鍵)を用いて第1認証シーケンスからバージョン管理情報応答までの認証を行なっていた場合には、その生成された認証鍵(具体的には本認証鍵)が異常であることを示す本認証鍵更新異常のアラームを鍵管理センターの鍵管理サーバ800へ通知して、第1認証シーケンスより仮認証鍵を用いて実行する。それら認証結果が適正であった場合には、前述したように、或る限られた期間(例えば2日)のみ許容される時限運用処理が行なわれ、その期間に限り遊技機との業務電文通信が可能となる。時限運用期間が過ぎた段階で上位装置(鍵管理センターの鍵管理サーバ800)に通知を行ない、上位装置のリセット処理開始まで待機状態(リセット待ち)となる。なお、時限運用は、時間の限定に代えてまたはそれに加えて、制御内容(遊技内容)等を制限してもよい。例えば、遊技玉数に上限を設け、その上限に足した時点で持玉数に一旦変換(計数)しなければ遊技の続行を許容しない等が考えられる。
<暗号モードについて>
次に、図37〜図45に基づいて、SE2モードの暗号通信の詳細を説明する。このSE2モードの暗号通信は、通信制御IC325aとSC325bとの間で行なわれるが、その他に、CU制御部323とSC325bとの間、セキュリティ基板325とパチンコ機2の払出制御部171との間、パチンコ機2の払出制御部171と主制御基板16との間、主制御基板16と鍵管理サーバ803との間、CU制御部323とホールサーバ801や鍵管理サーバ800との間等においても、行なってもよい。さらには、遊技場に設置された各種機器、たとえばホール用管理コンピュータ1、ジェットカウンタ、カード発行装置、精算装置、景品交換装置(POS端末)等の間において、行なってもよい。
まず図37を参照して、SE2モードの暗号化の仕組を説明する。図37の(a)は、SC325bから通信制御IC325aへの通信のときに使用されるSE2モードの暗号化および復号に用いられる下り用カウンタを示している。この下り用カウンタは、16バイトで構成され、8バイトからなる初期ベクタ部R1、7バイトからなる電文カウンタ部N、1バイトからなる暗号ブロックカウンタ部Iとで構成されている。
初期ベクタ部の値(初期ベクタ値)R1は、通信制御IC325aからSC325bに対してカウンタ情報応答によって送信される。その結果、SC325bと通信制御IC325aとの間でこの初期ベクタ値R1の値が共有されることとなる。暗号ブロックカウンタ部Iと電文カウンタ部Nとは後述するように加算更新されるが、この初期ベクタ部の値R1は加算更新されることがない。
電文カウンタ部Nおよび暗号ブロックカウンタ部Iの初期値は0である。このような下り用カウンタが、前述したように、互いに暗号通信を行なう機器(たとえばSC325bと通信制御IC325a)の間で共有されている。1ブロック(16バイト)ずつに分割された平文が1ブロックずつ暗号化される度に暗号ブロックカウンタ部Iがカウントアップされる。1回のコマンドまたはレスポンスで送信される電文の全てのブロックを暗号化したときに、該暗号文が送信されるとともに電文カウンタ部Nが「1」カウントアップされ、かつ暗号ブロックカウンタ部Iが「0」となる。このようなカウントアップ動作が繰返される。
図37の(b)は、通信制御IC325aからSC325bへの通信に使用されるSE2モードの暗号化および復号に用いられる上り用カウンタを示している。この上り用カウンタは、上述した初期ベクタ部の値R1の代わりに初期ベクタ部の値R2を使用する。初期ベクタ部の値R2および上り用カウンタの構成については初期ベクタ部の値R1および下り用カウンタの構成の同様なため説明は繰返さない。
図37の(c)を参照して、SE2モードによるブロック暗号の仕組を説明する。図37の(c)では、SC325bから通信制御IC325aへの通信のときの例を示しており、1回のコマンドまたはレスポンスで送信される電文が平文1〜3の3ブロックにより構成されている例を示す。まず送信対象となる平文のデータ(図8×参照)を16バイト毎のブロックの平文(平文1、平文2、…)に分割する。そして、現在の下り用カウンタの値R1,N,0を、鍵Kを用いて暗号化する。この鍵Kは、基板初期鍵、認証鍵または通信鍵(セッション鍵)である。そして、暗号化された値(16バイト)と平文1のブロック(16バイト)とでエクスクルーシブオア(排他的論理和)の演算を行なう。その演算結果が暗号文1(16バイト)となる。なお、ここでは、エクスクルーシブオア(排他的論理和)を用いた暗号化の方法を説明したが、他の論理演算を使用して暗号化を行ってもよい。
次の平文2を暗号化するときには、下り用カウンタが「1」加算更新される。その結果、下り用カウンタの値はR1,N,1となる。この値を前述と同様に鍵Kで暗号化し、その暗号結果のデータと平文2とでエクスクルーシブオア(排他的論理和)の演算を行ない、暗号文2を生成する。
次の平文3を暗号化する際には、さらに下り用カウンタの値が「1」加算更新され、その値がR1,N,2となる。この値を鍵Kで暗号化してその暗号結果の値と平文3とでエクスクルーシブオア(排他的論理和)の演算を行ない、暗号文3を生成する。以上の平文1〜3の3ブロックにより1回のコマンドまたはレスポンスで送信される電文の全フレームが構成されており、この平文1〜3を暗号化することにより、該暗号文が送信されるとともに電文カウンタ部Nが「1」カウントアップされ、かつ暗号ブロックカウンタ部Iが「0」となる。
よって、次に送信するコマンドまたはレスポンスの平文1を暗号化する際に、カウンタの値が{R1,N+1,I=0」となる。その値を鍵Kで暗号化した値と平文1とでエクスクルーシブオア(排他的論理和)の演算を行ない、暗号文4を生成する。
以降、平文2、平文3、…と随時カウンタの値を加算更新しつつ暗号化していく。
下り用カウンタを用いて暗号化の仕組を説明したが、上り用カウンタにおいてもその仕組みは同様であるため説明は繰返さない。
次に、図38に基づいて復号処理を説明する。暗号文の受信側においては、受信した1ブロックの暗号文1(16バイト)を復号する際に、まず下り用カウンタの値(R1,N,0)を鍵Kで暗号化し、その暗号化された値と暗号文1とでエクスクルーシブオア(排他的論理和)を演算して復号し、平文1を得る。
エクスクルーシブオア(排他的論理和)の演算の特質として、バイナリデータ(2進数のデータ)に対して或る2進数の値(Aという)でエクスクルーシブオアの演算を行ない、その演算結果のデータに対してさらに同じ2進数の値(A)でエクスクルーシブオアの演算を行なえば、1回目のエクスクルーシブオアの演算を行なう前の元のバイナリデータに戻る性質がある。このSE2モードの暗号,復号処理は、このようなエクスクルーシブオアの特質を利用して暗号化および復号処理を行なっている。
2ブロック目の暗号文2(16バイト)を復号する際には、カウンタの値が「1」加算更新される。その結果、カウンタの値がR1,N,1となり、そのR1,N,1を鍵Kで暗号化して、その結果の値と暗号文2とでエクスクルーシブオアの演算を行なって復号し、平文2を生成する。
同様に、暗号文3を復号する際にもカウンタの値が「1」加算更新される。この復号の際のカウンタの加算更新方法も、暗号化の場合と同様に、1回のコマンドまたはレスポンスで送信される電文の各ブロックを復号する毎に暗号ブロックカウンタ部Iが「1」ずつカウントアップされ、1回のコマンドまたはレスポンスで送信されてきた電文の全ブロックの復号が完了したときに電文カウンタ部Nが「1」加算更新されるとともにIの値がゼロクリアされる。
通信制御IC325aからSC325bへの通信に使用されるSE2モードの暗号化および復号に用いられる上り用カウンタの場合についても下り用カウンタと同様なため説明は繰返さない。
以上説明したように、SE1モードの場合は、平文Mに対して同じデータ長の鍵でエクスクルーシブオアの演算を行なって暗号化し、その暗号文に対して同じデータ長の鍵でエクスクルーシブオアの演算を行なって復号しているだけのため、平文Mに対してエクスクルーシブオアの演算を行なうデータ(鍵)が一定で変化しないものであるため、それほど高いセキュリティは望めない。しかし、SE2モードの場合は、平文Mに対してエクスクルーシブオアの演算を行なうデータ(カウンタの値としての鍵)が更新されて変化するものであるため、高いセキュリティを期待することができる。
次に、図39〜図43に基づいて、SC325bと通信制御IC325aとの間でのコマンドとレスポンスとの実際の暗号通信の動作を説明する。図39は暗号通信文を受信した受信側において適正に復号された場合の定常時における暗号通信が示されている。図40は、通信制御IC325aからSC325bへのレスポンスが到達しなかった場合の異常時の処理が示されている。図41は、SC325bから通信制御IC325aへのコマンドが到達しなかった場合の異常時の処理が示されている。図42は、図40に示したレスポンス未到達の異常時における変形例の処理が示されている。図43は、図41に示したコマンド未到達の異常時処理における変形例が示されている。
以下、図39〜図43の暗号化処理を説明するが、SC325bから通信制御IC325aへの暗号化通信を行なうときは初期ベクタ部の値R1の下り用カウンタが使用され、通信制御IC325aからSC325bへの暗号化通信を行なうときは初期ベクタ部の値R2の上り用カウンタが使用される。
まず図39に基づいて正常時の処理を説明する。SC325bと通信制御IC325aとの間での動作指示およびレスポンスとして、データ長が48バイトの倍数の一例の96バイトのものを取り上げて説明する。
図39を参照して、SC325bでは、96バイトの平文を16バイト毎の6つのブロックに分割し、各ブロックの平文1〜6を1つずつ暗号化する。最初のブロックである平文1は、下り用カウンタの値がR1,N,0となっており、そのカウンタの値を前述したように暗号化し、その暗号化された値と平文1とでエクスクルーシブオアの演算を行なって暗号文1を生成する。同様に、暗号文2の生成に際してはR1,N,1の下り用カウンタの値を用い、暗号文2の生成に際してはR1,N,2の下り用カウンタの値を用い、暗号文4の生成に際してはR1,N,3の下り用カウンタの値を用い、暗号文5の生成に際してはR1,N,4の下り用カウンタの値を用い、暗号文6の生成に際してはR1,N,5の下り用カウンタの値を用いる。
この6つのブロックからなる暗号文1〜6を受信した通信制御IC325aでは、図38で説明したようにカウンタの値を更新しながら随時暗号文を復号して平文を生成する。復号開始時の下り用カウンタの値すなわち最初の暗号文1を復号するのに用いるカウンタの値がR1,N,0となっており、その値を暗号化してその暗号化した値と暗号文1とのエクスクルーシブオアを演算して復号し、平文1を生成する。同様に、暗号文2、暗号文3、暗号文4、暗号文5、暗号文6も、随時暗号ブロックカウンタ部の値を「1」ずつ加算更新し、復号処理を行なう。具体的には、暗号文2に対してはR1,N,1の下り用カウンタ値を用い、暗号文3に対してはR1,N,2の下り用カウンタ値を用い、暗号文4に対してはR1,N,3の下り用カウンタ値を用い、暗号文5に対してはR1,N,4の下り用カウンタ値を用い、暗号文6に対してはR1,N,5の下り用カウンタ値を用いて復号する。
次に通信制御IC325aがレスポンスを暗号化してSC325bへ送信する。その際に、通信制御IC325aは上り用カウンタを用いるため「R2,N,0」のカウンタ値が最初に用いられる。この上り用カウンタのカウンタ値を暗号化してその暗号化された値とレスポンスの最初の平文1とでエクスクルーシブオアの演算を行ない暗号文1を生成する。次に通信制御IC325aは、暗号ブロックカウンタ部を「1」加算更新してR2,N+1,1の値を用いて暗号文2を生成する。同様に、暗号ブロックカウンタ部を「1」ずつ加算更新しながら、暗号文3、暗号文4、暗号文5、暗号文6を生成し、それら暗号文からなるレスポンスをSC325bへ送信する。
この6つのブロックからなる暗号文1〜6を受信したSC325bでは、図38で説明したようにカウンタの値を更新しながら随時暗号文を復号して平文を生成する。復号開始時の上り用カウンタの値すなわち最初の暗号文1を復号するのに用いるカウンタの値がR2,N,0となっており、その値を暗号化してその暗号化した値と暗号文1とのエクスクルーシブオアを演算して復号し、平文1を生成する。そして、前述と同様に、暗号ブロックカウンタ部を随時加算更新しながら暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を随時復号して平文2、平文3、平文4、平文5、平文6を生成する。
次回以降は、通信制御IC325aでは、前回受信した暗号文の復号に用いた電文カウンタ部の値「N」に対して「1」加算更新し、R1,N+1,0のカウンタ値を用いて、レスポンスの最初の暗号文1を復号する。そして、前述と同様に、暗号ブロックカウンタ部を随時加算更新しながら暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を随時復号して平文2、平文3、平文4、平文5、平文6を生成する。
また、SC325bでは、前回受信した暗号文の復号に用いた電文カウンタ部の値「N」に対して「1」加算更新し、R2,N+1,0のカウンタ値を用いて、レスポンスの最初の暗号文1を復号する。そして、前述と同様に、暗号ブロックカウンタ部を随時加算更新しながら暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を随時復号して平文2、平文3、平文4、平文5、平文6を生成する。
このような方法により、SC325bと通信制御IC325aとの間で、下り用カウンタ、上り用カウンタをそれぞれ用い、送信データの暗号化および受信データの復号処理を行なう。
次に図40を参照して、通信制御IC325aからSC325bへのレスポンスが到達しなかった異常時における処理を説明する。まずSC325bから通信制御IC325aへ6ブロックの暗号文1〜6からなるコマンドが送信される。その各ブロックに用いられる下り用カウンタのカウンタの値は、最初がR1,N,0であり、暗号ブロックカウンタ部が「1」ずつ加算されて最後の値がR1,N,5となっている。この暗号文を受信した通信制御IC325aは、暗号開始時のカウンタ値R1,N,0を用いてまず暗号文1を復号して平文1を生成する。次に暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を随時暗号ブロックカウンタ部を加算更新しながら復号して平文2、平文3、平文4、平文5、平文6を生成する。
そして通信制御IC325aは、上り用カウンタのカウンタ値である「R2,N,0」の値を用いて、レスポンスの最初のブロックの平文1を暗号化して暗号文1を生成する。次に暗号ブロックカウンタ部の値を「1」ずつ加算更新して暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成してSC325bへ送信する。その暗号文1〜6からなるレスポンスがSC325bに到達しなかった場合には、SC325bは、前回送信したコマンドと同じコマンドのデータを通信制御IC325aへ再送信する。その再送信された暗号文を通信制御IC325aが復号する際に、通信制御IC325aの前回受信した暗号文の復号に用いた電文カウンタ部の値がNであるために、今回復号するに際して、最初に用いる下り用カウンタのカウンタの値として「R1,N+1,0」が用いられることとなる。
通信制御IC325aでは、カウンタ値R1,N+1,0を用いてまず暗号文1を復号して平文1を生成する。次に暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を随時暗号ブロックカウンタ部を加算更新しながら復号して平文2、平文3、平文4、平文5、平文6を生成する。
次に通信制御IC325aは、前回の暗号文の生成に用いた電文カウンタ部の値「N」に対して「1」加算更新し、R2,N+1,0のカウンタ値を用いて、レスポンスの最初のブロックの平文1を暗号化して暗号文1を生成する。次に暗号ブロックカウンタ部の値を「1」ずつ加算更新して暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成してSC325bへ送信する。
SC325bでは、前回の通信制御IC325aからのレスポンスを受信していないため、その前回のレスポンスの復号のためのカウンタ値「R2,N,0」を用いて復号しようと試みる。しかし、その暗号文1は、カウンタの値「R2,N+1,0」を用いて暗号化されたデータであり、SC325bの復元開始のカウンタ値が「R2,N,0」であるため、このカウンタ値を用いて復号を試みても、正しい平文に復号することができず復号失敗となる。
正しい平文に復号することができたか否かの判断は、MACによる一般的なチェックに基づいて行なう。簡単に説明すると、SC325bでは、最初のカウンタ値であるR2,N,0を鍵で暗号化してその値と最初の暗号文1とのエクスクルーシブオアを演算する。このような復号処理を、カウンタ値を「1」加算更新しながら暗号文2、暗号文3、暗号文4、暗号文5、暗号文6について順次実行し、その処理結果のデータに含まれているMACのデータを用いてMACチェックを行なう。具体的には、復号処理結果のデータからMACアルゴリズムに従ってMACを生成し、その生成されたMACと通信制御IC325aからの送信データに含まれているMACのデータとを比較し、一致するか否かチェックする。正常に復号されておれば一致するが、この場合には、復号に用いられるカウンタの値が狂っているために、正常に復号されておらず、MACチェックの結果両者が一致しないと判定されてMAC異常すなわち復号失敗と判定される。
このようなMAC異常すなわち復号失敗と判定された場合には、SC325bでは、その狂ったカウンタ値を正しいカウンタ値に修復する修復処理が実行される。SC325bでは、復号失敗と判断された暗号文の復号に最初に用いられた復号開始時のカウンタ値である「R2,N,0」に対して、その電文カウンタ部Nの値を「1」ずつ減算更新しながら順次その減算されたカウンタ値を用いて順次暗号文の復号処理を行なって前述のMACチェックを行ない、正しく復号されたか否かの判断を行なう。このカウンタ値の減算処理を所定回数行なってもMACチェックの結果MAC異常と判定された場合に、SC325bは、次に、復号開始時のカウンタ値である「R2,N,0」に対してその電文カウンタ部Nを「1」ずつ加算更新して順次その加算されたカウンタ値を用いた復号処理を行なってMACチェックを行なう。そしてMACチェックで適正と判断されて復号成功と判断された場合には、その復号が成功した平文を適正なコマンドとして取り込む。そして、復号成功と判断されたときに用いた電文カウンタ部のカウンタ値を次のレスポンスデータの最初の平文1の暗号化に用いる。
この図40の場合には、復号開始時のカウンタ値である「R2,N,0」から電文カウンタ部Nを1回加算更新したカウンタ値「R2,N+1,0」を用いて復号することにより、MAC正常と判断されて復号成功と判断されることとなる。
その復号成功と判断されたときに用いた電文カウンタ部の値NのR2,N+1,0のカウンタ値の電文カウンタ部の値を「1」ずつ加算更新したカウンタ値R1,N+2,0を用いて次に送信するレスポンスの最初の平文1を暗号化して暗号文1を生成する。次に「1」ずつ暗号ブロックカウンタ部を加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成して通信制御IC325aへ送信する。
それを受けた通信制御IC325aでは、「R1,N+2,0」のカウンタ値を用いて、受信した暗号文の最初の暗号文1を復号する。最初の暗号文1はカウンタ値「R1,N+2,0」のカウンタ値を用いて暗号化されたものであるために、同じカウンタ値を用いて適正に復号することが可能である。そして通信制御IC325aは、その暗号ブロックカウンタ部を「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を復号する。
前述したカウンタの修復処理におけるカウンタ値への減算回数は、レスポンス未到達時におけるSC325bが動作コマンドの再送信(リトライ)を行なうリトライ回数に一致する。本実施の形態の場合には、そのリトライ回数は2回が限度であり、その2回のリトライに起因して生ずるカウンタ値の狂い以上に電文カウンタ部Nの減算更新を行なう必要はない。よって、2回を限度にカウンタ値の減算更新あるいは加算更新が行なわれる。
次に図41に基づいて、SC325bから通信制御IC325aへのコマンドが未到達の異常時における処理を説明する。まずSC325bがカウンタ値R1,N,0〜R1,N,5を用いて暗号文1〜暗号文6の6ブロックの暗号文を生成して通信制御IC325aへ送信する。しかし、その暗号文が通信制御IC325aへ到達しなかった場合には、SC325bは同じ内容のコマンドを再び暗号化して通信制御IC325aへ再送信するというリトライを試みる。この再送信時における暗号化に用いられる電文カウンタ部は、前回のコマンドの送信時に暗号化に用いた電文カウンタ部の値Nに「1」を加算したN+1が用いられる。よって、「R1,N+1,0」のカウンタ値を用いてSC325bは再送信するコマンドの最初の平文1のブロックを暗号化して暗号文1を生成する。次に、SC325bは、その暗号ブロックカウンタ部を「1」ずつ加算更新しながら順次暗号文2,暗号文3,暗号文4,暗号文5,暗号文6を生成して通信制御IC325aへ再送信する。
しかしその再送信された暗号文も通信制御IC325aへ到達しなかった場合には、SC325bは、再度同じ内容のコマンドを暗号化して通信制御IC325aへ再送信するという2回目のリトライを試みる。この2回目のリトライで送信されたコマンドが通信制御IC325aへ到達し、通信制御IC325aは、その暗号文の復号を試みる。
通信制御IC325aは、SC325bへ前回受信したコマンドの復号に用いた最後のカウンタ値に対して「1」加算更新した値である「R1,N,0」を用いて暗号文の最初のブロックを復号する処理を行ない、そのカウンタ値「R1,N,0」に対して暗号ブロックカウンタ部を「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6の復号を試みる。
しかし、SC325bの2回に亘ってのリトライの結果、SC325b側のカウンタ値と通信制御IC325a側のカウンタ値とが狂っているために、適正な平文に復号することができず、前述したMACチェックの結果MAC異常となり復号失敗と判断される。
すると通信制御IC325aは、前述と同様に、狂ったカウンタの修復処理を行なう。復号失敗と判断された暗号文に対して最初に用いたカウント値である「R1,N,0」に対して、電文カウンタ部Nを「1」ずつ減算更新しながら順次再送信されてきた暗号文の復号を試みてMACチェックを行なう。この減算更新の実行回数は、前述したように、リトライ回数である2回を限度に実行される。この2回に亘ってのカウンタ値の減算更新による復号を試みたとしても復号に成功しなかった場合には、通信制御IC325aは、カウンタ値「R1,N,0」の電文カウンタ部に対して「1」ずつ加算更新しながら順次暗号文を復号する処理を試みる。この加算更新を試みる回数は、コマンド未到達時におけるSC325bによる再送信を実行するリトライ回数に一致する。本実施の形態においては、2回を限度にリトライを行なう。その結果、カウンタ値の加算更新は、リトライ回数である2回を限度に加算更新される。
そして、2回目の加算更新の結果カウンタ値が「R1,N+2,0」となり、このカウンタ値を用いて暗号文1を復号し、順次暗号ブロックカウンタ部の加算更新を行ないながら暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を復号することにより、適正な平文に復号することができ、MACチェックの結果適正と判断されて復号成功と判断される。その復号成功と判断された平文のコマンドを通信制御IC325aが取り込む。そしてそれに対するレスポンスのデータを暗号化してSC325bへ送信する。その暗号化に際しては、復号成功と判断された復号処理に用いられた電文カウンタ部の値「N+2」と異なり、最初に用いたカウント値である「R2,N,0」の「N」の値を用いる。よって、「R2,N,0」を用いて最初のブロックを暗号化して暗号文1を生成する。次に、暗号ブロックカウンタ部のカウント値を「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成してSC325bへ送信する。SC325bは、「R2,N,0」を用いて暗号文の最初のブロックを復号する処理を行ない、そのカウンタ値「R2,N,0」に対して暗号ブロックカウンタ部を「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6の復号を試みる。
次に、図42に基づいてレスポンス未到達時の異常時における処理の変形例を説明する。この図42は、前述した図40に対する変形例であり、ここでは主に相違点について説明する。通信制御IC325aからSC325bへのレスポンスが未到達の場合にSC325bは前回と同じコマンドを再送信するリトライを実行する。そのリトライによって再送信されたコマンド(暗号文)が通信制御IC325aに到達した場合に、図40と同様に、SC325bと通信制御IC325aとの間でのカウンタの値が食い違っている。その結果、通信制御IC325aにおいてその暗号文の復号を試みた場合にMACチェックの結果MAC異常となり復号失敗と判断される。この変形例においては、その復号失敗のときに復号不能と判断して復号エラーのコマンドを通信制御IC325aへ送信する。その際に、SC325bでは、復号エラーのレスポンスを鍵Kを用いてSE1モードにより暗号化し、その暗号文を通信制御IC325aへ送信する。通信制御IC325aでは、それを受信して共通鍵である鍵Kを用いてその暗号文を復号し、復号エラーが発生したことを判断する。そして、カウンタの値を初期化するべく新たな乱数を生成し、その乱数の値を初期ベクタ部の値R2としてSC325bへ送信する。その際に、鍵Kを用いてその初期ベクタ部の値R2の値をSE1モードにより暗号化してその暗号文をセキュリティチップ325Bへ送信する。SC325bでは、その受信した暗号文を鍵Kを用いてSE1モードにより復号し、初期ベクタ部の値R2を取得する。これにより、SC325bと通信制御IC325aとの間で初期化されたカウンタの値である「R2,0,0」が共有されることとなる。
次にSC325bは、初期ベクタ部の値R2の更新を完了した旨のレスポンスを鍵Kを用いてSE1モードにより暗号化して通信制御IC325aへ送信する。
それを受けた通信制御IC325aでは、前回再送信したコマンドと同じデータをSE2モードにより暗号化してSC325bへ送信する。その際に、最初のブロックを暗号化するのに初期化されたカウンタ値すなわち「R2,0,0」を用いて暗号化する。そして、その暗号ブロックカウンタ部に対して「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成してSC325bへ送信する。
SC325bでは、初期化されたカウンタ値すなわち「R2,0,0」を用いて暗号文の最初のブロックを復号する。次に、その暗号ブロックカウンタ部に対して「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を復号して平文を生成する。
次に図43に基づいて、コマンドが未到達の異常時における処理の変形例を説明する。この図43は、前述した図41のコマンド未到達時の処理の変形例であり、ここでは主に相違点について説明する。SC325bによる2回目のリトライによってコマンドが通信制御IC325aに到達した場合に、SC325bと通信制御IC325aとの間でのカウンタの値が食い違っている。その結果、通信制御IC325aにおいてその暗号文の復号を試みた場合にMACチェックの結果MAC異常となり復号失敗と判断される。この変形例においては、その復号失敗のときに復号不能と判断して復号エラーのレスポンスをSC325bへ送信する。
その際に、通信制御IC325aでは、復号エラーのレスポンスを鍵Kを用いてSE1モードにより暗号化し、その暗号文をSC325bへ送信する。SC325bでは、それを受信して共通鍵である鍵Kを用いてその暗号文を復号し、復号エラーが発生したことを判断する。そして、カウンタの値を初期化するべく新たな乱数を生成し、その乱数の値を初期ベクタ部の値R1として通信制御IC325aへ送信する。その際に、鍵Kを用いてその初期ベクタ部の値R1をSE1モードにより暗号化してその暗号文を通信制御IC325aへ送信する。通信制御IC325aでは、その受信した暗号文を鍵Kを用いてSE1モードにより復号し、初期ベクタ部の値R1を取得する。これにより、SC325bと通信制御IC325aとの間で初期化されたカウンタの値である「R1,0,0」が共有されることとなる。このように、暗号文が復元できない場合に行われるカウンタの値の初期化(再設定)としては、復号不能となった(SC325bと通信制御IC325aとの間で齟齬が生じた)カウンタの初期ベクタ部のみを再設定してもよいが、下り用カウンタの初期ベクタ部R1と上り用カウンタの初期ベクタ部R2との両者を再設定してもよい。
次に通信制御IC325aは、初期ベクタ部の値R1の更新を完了した旨のレスポンスを鍵Kを用いてSE1モードにより暗号化してSC325bへ送信する。
それを受けたSC325bでは、前回再送信したコマンドと同じデータをSE2モードにより暗号化して通信制御IC325aへ送信する。その際に、最初のブロックを暗号化するのに初期化されたカウンタ値すなわち「R1,0,0」を用いて暗号化する。そして、その暗号ブロックカウンタ部に対して「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成して通信制御IC325aへ送信する。
通信制御IC325aでは、初期化されたカウンタ値すなわち「R1,0,0」を用いて暗号文の最初のブロックを復号する。次に、その暗号ブロックカウンタ部に対して「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を復号して平文を生成する。
次に、図44(a)(b)に基づいて、SE2モードによる暗号処理と復号処理とを説明する。まず図44(a)のS100により、暗号鍵の発行が行なわれる。この暗号鍵は、基板初期鍵、認証鍵または通信鍵(セッション鍵)のことであり、以下単に「鍵」と言う。その鍵がSC325bと通信制御IC325aとの間で共有されることとなる。
次にS101により、下り用カウンタ、上り用カウンタにそれぞれ対応する初期ベクタ部の値R1,R2が発行される。この初期ベクタ部の値R1,R2は、通信制御IC325aによりそれぞれ生成される。次にS102により、カウンタの電文カウンタ部Nと暗号ブロックカウンタ部Iとがリセットされて「0」となる。次にS103により、S100により発行された鍵によりSE1モードで初期ベクタ部の値R1,R2を暗号化して、下り用初期ベクタ部の値R1および上り用初期ベクタ部の値R2は通信制御IC325aからSC325bへ送信される。ここでは、初期ベクタ部R1,R2について通信制御IC325aによりそれぞれ生成されるとして説明したが、SC325bで初期ベクタ部の値R1を生成し、通信制御IC325aに送信し、通信制御IC325aはこの送信された初期ベクタ部の値R1を生成したアルゴリズムを元に初期ベクタ部の値R2を生成し、SC325bへ送信する。また、初期ベクタ部の値R1,R2がSC325bで生成され、初期ベクタ部のR1,R2を通信制御IC325aに送信してもよい。さらに、この初期ベクタ部の値R1,R2を生成するアルゴリズムは両方を同じアルゴリズムを用いてもよいし、一方から送信された初期ベクタ部の値が生成されたアルゴリズムを用いて他方の初期ベクタ部の値を生成することもできる。
通信制御IC325aでは、図44(b)のS130に示すように、その送信されてきた暗号化されたR1,R2を鍵を用いてSE1モードで復号して平文のR1,R2をそれぞれ生成し、S131によりそのR1,R2を初期ベクタ部の値として記憶するとともに、電文カウンタ部Nと暗号ブロックカウンタ部Iとをリセットして「0」の値にする。
暗号文の送信側においては、図44(a)のS104において、送信する電文(平文)を生成する。その生成された平文を16ビット毎のブロックに分けて、各ブロック毎にカウンタの現在の値を用いて暗号化して暗号文を生成する(S105)。そして1ブロックの暗号化が完了した段階で、制御がS106へ進み、S104により生成された平文の電文の全フレームすなわち全ブロックの暗号化が終了したか否かの判断がなされる。未だ終了していない場合には制御がS107へ進み、暗号ブロックカウンタ部Iを「1」加算更新した後にS105に移行する。S105による次のブロックの暗号化を行なって暗号文を生成する。
このS105→S106→S107→S105のループを巡回することにより、電文の全フレームの暗号化が終了した場合には、制御がS108へ進み、電文カウンタ部Nが「1」加算更新される。次にS109により暗号ブロックカウンタ部Iがクリアされて「0」となる。
次に制御がS110へ進み、その暗号文を相手側に送信する処理が行なわれる。次にS111により、復号エラーを受信したか否かの判断がなされる。この復号エラーは、暗号文の受信側において復号に失敗したときに後述するS162またはS170により送信されてくるものであり、それを受信すれば、S112によりエラー処理が行なわれる。このエラー処理は、たとえば、表示装置によりエラー表示を行なったり上位サーバへエラーが発生した旨を通知するとともに、以降の動作制御を停止させる等の処理である。
S110により送信されてきた暗号文を図44(b)のS132により受信した後、S133により復号処理が行なわれる。この復号処理は、前述したように、カウンタの現在のカウンタ値を用いてブロック毎に復号する処理である。そして全フレームについて復号処理を行なった後前述したようにMACチェックを行なって復号が成功したか否かの判定を行なう。復号が失敗した場合には、S135によるカウンタ修復処理が実行される。
図45は、前述のS135に示したカウンタ修復処理の具体的制御内容を示すフローチャートである。図45(a)は図40、図41に示したカウンタ修復処理であり、図45(b)は図42、図43に示した変形例の修復処理を示している。
まず図45(a)を参照してカウンタ修復処理1を説明する。まずS150により、復号に失敗した暗号文の最初のブロックの復号処理に用いたカウンタの値における電文カウンタ部Nを「1」減算更新する。次にS151により、その減算更新されたカウンタの値を用いてブロック毎に復号処理を実行し、MACチェックを行なって復号が成功したか否か判定する。復号が成功していない場合には、S154により、修復カウンタSKの値を「1」加算更新する。この修復カウンタSKとは、何回修復を試みたかを計数するためのカウンタである。次にS155により、その修復カウンタSKが所定値に達したか否かの判断がなされる。この所定値とは、前述したように、暗号文の送信側におけるリトライ回数2の値である。
未だ所定値に達していない場合には、制御がS150に戻り、S150〜S155の制御を繰返し実行する。その繰返し実行の途中で復号に成功した場合にはS152によりYESの判断がなされて制御がS153へ進み、修復カウンタSKをリセットして「0」にする処理がなされる。
一方、S150〜S155の処理を繰返し実行して修復カウンタSKの値が所定値に達した場合には、S155によりYESの判断がなされて制御がS156へ進み、現在の電文カウンタNに対して修復カウンタSKの値を加算する。その結果、電文カウンタ部Nの値は、復号失敗のときに用いた最後のカウンタ値の電文カウンタ部Nの値となる。そしてS157により、その電文カウンタ部Nに対して「1」加算更新され、S158によりそのカウンタ値を用いた復号処理が行なわれる。次にS159により、MACチェックを行なって復号が成功したか否かの判断がなされ、成功していない場合にはS160により修復カウンタSKを「1」減算更新し、S161により修復カウンタSKの値が「0」になったか否かの判断がなされ、なっていない場合には制御がS157に戻り、S157〜S161の制御を繰返し実行する。
この繰返し実行が行なわれている途中で、S159により復号が成功したと判断された場合には、制御がS153へ進み、修復カウンタSKをリセットする処理がなされる。この復号成功と判断された平文が、正しい平文となる。
一方、S157〜S161の処理を繰返し実行することによって修復カウンタSKの値が「0」になった場合には、カウンタの修復を所定回数実行したことになり、その場合には制御がS162に進み、復号エラーを示す情報を鍵Kを用いてSE1モードにより暗号化してその暗号文を送信する処理が行なわれる。
この復号エラーの情報は前述した図44(a)のS112により受信してYESの判断がなされることとなる。
次に図45(b)に基づいて変形例のカウンタ修復処理2を説明する。S170により、復号エラーを示す情報を鍵Kを用いてSE1モードにより暗号化する処理が行なわれ、その暗号化された情報を相手側に送信する処理が行なわれる。この復号エラーを受信すれば、図44(a)のS112によりYESの判断がなされ、この変形例の場合には、S112によりYESの判断がなされた場合には制御がS101へ進む。そしてS101により新たな乱数が生成されてS102による電文カウンタ部Nと暗号ブロックカウンタ部Iとのリセットが行なわれた後にS103により、その乱数を暗号化して初期ベクタ部の値R1、R2として相手側に送信する処理が行なわれる。その送信されてきた暗号化された初期ベクタ部の値を図45(b)のS171により受信する。次にS172により、初期ベクタ部の値R1またはR2の更新が完了した旨を示す情報を、鍵Kを用いてSE1モードにより暗号化し、その暗号文を相手側に送信する処理がなされ、その後制御が図44(b)のS130へ移行する。
S130では、前述したS171により受信した初期ベクタ部の値R1,R2の暗号文を鍵Kを用いてSE1モードで復号する処理が行なわれる。そして復号した結果生成された平文の初期ベクタ部の値R1、R2の値を記憶するとともに、電文カウンタ部Nと暗号ブロックカウンタ部Iとをリセットして「0」とする処理が行なわれる(S131)。
そしてそれらR1、0、0あるいはR2,0,0の値を用いて、S132で受信した暗号文をS133で復号する処理が行なわれる。
なお、受信したデータのデータ長が異常の場合やCRCのチェックの結果CRC異常が発生した場合には、受信側においてはカウンタの値を更新することなくその受信した電文を破棄する処理が行なわれる。そして再送信の要求を返信する処理が行なわれる。それを受信した側においては、カウンタの現在のカウント値における電文カウンタ部Nの値を「1」だけ減算して同じ電文を復号して再送信する処理が行なわれる。
次に、図46に基づいて、SE2モードによる復号処理のカウンタ動作を説明する。前述の実施の形態では、下り用カウンタと上り用カウンタとの2種類のものを示した(図37参照)。その2種類の場合を図46(b)に示している。一方、下り用と上り用とで共通のカウンタを用いるものを図46(a)に示している。先ず図46(a)に基づいて共通カウンタを用いるものを説明する。
共通カウンタの場合、SC325bと通信制御IC325aとの間でクロス送信が発生した場合の両者間でのカウンタ値の食い違いが生ずる不都合がある。通常の送信では、たとえば通信制御IC325aからの応答(レスポンス)がSC325bに送信されてきた後次の要求(コマンド)をSC325bが通信制御IC325aへ送信する。これに対し、クロス送信では、通信制御IC325aからの応答(レスポンス)の出力とSC325bからの次の要求(コマンド)の出力とが殆ど同時になされて、SC325bからの次の要求(コマンド)の出力がなされた後に通信制御IC325aからの応答(レスポンス)をSC325bが受信し、通信制御IC325aからの応答(レスポンス)の出力がなされた後にSC325bからの次の要求(コマンド)が通信制御IC325aに受信される。
そして、共通カウンタの場合に、前述のクロス送信が生じたときには、たとえばSC325b側において通信制御IC325aからの応答(レスポンス)を受信する前に次の要求(コマンド)を送信することによってカウンタ値が1つ更新された状態(カウンタ値=3)となっており、カウンタ値(=2)で暗号化された応答(レスポンス)をその1つ更新された後のカウンタ値(=3)により復号するために、SC325b側と通信制御IC325a側とでのカウンタ値が食い違った状態となり、適正に復号できないという不都合が生ずる。
そこで、一方、下り用カウンタと上り用カウンタとの2種類のものを用いる場合には、前述のクロス送信が生じたときに、図46(b)を参照して、たとえばSC325b側において通信制御IC325aからの応答を受信する前に次の情報を送信することによって下り用カウンタ値が1つ更新された状態(下り用カウンタ値=2)となったとしても、その更新されたカウンタ値はSC325bから通信制御IC325aへ送信する暗号文の生成に用いられる下り用カウンタ値が更新されるだけであって上り用カウンタ値は更新されないために(上り用カウンタ値=1)、上り用カウンタ値(=1)によって暗号化された通信制御IC325aからの応答(レスポンス)を同じ上り用カウンタ値(=1)を用いてSC325b側において適正に復号することが可能となる。
以上説明したように、第1制御手段(SC325b等)から第2制御手段(通信制御IC325a等)へ送信する暗号文の生成に用いる第1鍵(下りカウンタ)と、第2制御手段(通信制御IC325a等)から第1制御手段(SC325b等)へ送信する暗号文の生成に用いる第2鍵(上りカウンタ)とが、それぞれ独自に更新されるために、第1制御手段(SC325b等)と第2制御手段(通信制御IC325a等)との間でクロス送信が発生した場合の両制御手段間での鍵の食い違いが生ずる不都合を防止することができる。第2制御手段(通信制御IC325a等)からの応答が第1制御手段(SC325b等)に送信されてきた後次の情報を第1制御手段(SC325b等)が第2制御手段(通信制御IC325a等)へ送信するのが通常送信であるのに対し、クロス送信とは、第2制御手段(通信制御IC325a等)からの応答の出力と第1制御手段(SC325b等)からの次の情報の出力とが殆ど同時になされて、第1制御手段(SC325b等)からの次の情報の出力がなされた後に第2制御手段(通信制御IC325a等)からの応答を第1制御手段(SC325b等)が受信し、第2制御手段(通信制御IC325a等)からの応答の出力がなされた後に第1制御手段(SC325b等)からの次の情報が第2制御手段(通信制御IC325a等)に受信される送受信状態を言う(たとえば図46(a)(b)参照)。たとえば、第1制御手段(SC325b等)と第2制御手段(通信制御IC325a等)との間で送信する暗号文の生成に用いる鍵を1種類の鍵にして第1制御手段(SC325b等)から第2制御手段(通信制御IC325a等)への送信の度および第2制御手段(通信制御IC325a等)から第1制御手段(SC325b等)への送信の度にその1種類の鍵を互いに更新するようにした場合に、前述のクロス送信が生じたときには、たとえば第1制御手段(SC325b等)側において第2制御手段(通信制御IC325a等)からの応答を受信する前に次の情報を送信することによって鍵が1つ更新された状態となっており、第2制御手段(通信制御IC325a等)から送信されてきた応答情報をその1つ更新された後の鍵により復号するために、第1制御手段(SC325b等)側と第2制御手段(通信制御IC325a等)側とでの鍵が食い違った状態となり、適正に復号できないという不都合が生ずる。
そこで、第1制御手段(SC325b等)から第2制御手段(通信制御IC325a等)へ送信する暗号文の生成に用いる第1鍵(下りカウンタ)と、第2制御手段(通信制御IC325a等)から第1制御手段(SC325b等)へ送信する暗号文の生成に用いる第2鍵(上りカウンタ)との、2種類の鍵を用いることにした。その結果、前述のクロス送信が生じたときに、たとえば第1制御手段(SC325b等)側において第2制御手段(通信制御IC325a等)からの応答を受信する前に次の情報を送信することによって鍵が1つ更新された状態となったとしても、その更新された鍵は第1制御手段(SC325b等)から第2制御手段(通信制御IC325a等)へ送信する暗号文の生成に用いられる第1鍵(下りカウンタ)が更新されるだけであって第2鍵(上りカウンタ)は更新されないために、第2鍵(上りカウンタ)によって暗号化された第2制御手段(通信制御IC325a等)からの応答情報を同じ第2鍵(上りカウンタ)を用いて第1制御手段(SC325b等)側において適正に復号することが可能となる。
次に、図47および図48を参照して、SE2モード時のカウンタの自動修復のシーケンスを説明する。図47は、SC325b側におけるSE2モード時のカウンタの自動修復のシーケンスである。また、図48は、通信制御IC325a側におけるSE2モード時のカウンタの自動修復のシーケンスである。また、両図において、業務電文要求は何らかのコマンドを、業務電文応答は何らかのレスポンスを示す。
初めに図47を参照して、SC325b側におけるSE2モード時のカウンタの自動修復のシーケンスを説明する。SC325bは、業務電文要求1を下りカウンタ=0にて送信し、それを受けた通信制御IC325aは業務電文応答1を上りカウンタ=0でSC325bへ送信する。
すると、SC325bは、業務電文要求2を下りカウンタ=1にて送信し、それを受けた通信制御IC325aは業務電文応答2を上りカウンタ=1でSC325bへ送信する。このようなやりとりがなされる途中で、通信制御IC325aから送信された上りカウンタ=2の業務電文応答3がSC325bへ未到達となった場合、SC325bは、業務電文要求3を再送する。このとき、下りカウンタは更新せずに下りカウンタ=2で送信する。
通信制御IC325aは、既に受信済みの業務電文要求3が再送されてきたため、業務電文応答3を再送する。しかし、再び、この応答が未着であった場合にはSC325bによる2度目の電文の再送が前回と同様に実行され、2度目の再送でもなお、SC325bに対して通信制御IC325aからの応答が届かないと、SC325bは、通信制御IC325aに対して基板状態要求を送信する。この基板状態要求は、通信制御IC325aに対してセキュリティ基板及び、遊技機の状態を要求するものである。また、このときの下りカウンタは、再送を試みたカウンタ値に1を加えた3に設定される。
基板状態要求を受信した通信制御IC325aは、既に受信している業務電文要求3の下りカウンタ(=2)に1を加えた下りカウンタ値(=3)でこれを復号し、その復号に成功する。その上で、通信制御IC325aは、基板状態応答(上りカウンタ=3)をSC325bに返信する。ところが、SC325bは、業務電文応答3(上りカウンタ=2)を受信できておらず、直近で受信した電文の上りカウンタは1である。このため、受信した基板状態応答をその上りカウンタに1加えた値(=2)で復号すると復号異常が検出される。そこで、図45のS156のとおり、上りカウンタ(=2)にさらに+1した値である3で基板状態応答を復号し、その復号に成功する。
次に、図48を参照して、通信制御IC325a側におけるSE2モード時のカウンタの自動修復のシーケンスを説明する。SC325bは、業務電文要求1を下りカウンタ=0にて送信し、それを受けた通信制御IC325aは業務電文応答1を上りカウンタ=0でSC325bへ送信する。
すると、SC325bは、業務電文要求2を下りカウンタ=1にて送信し、それを受けた通信制御IC325aは業務電文応答2を上りカウンタ=1でSC325bへ送信する。このようなやりとりがなされる途中で、SC325bから送信された下りカウンタ=2の業務電文要求3に対する応答が通信制御IC325aから返ってこない場合、SC325bは、業務電文要求3を再送する。このとき、下りカウンタは更新せずに下りカウンタ=2で送信する。
しかし、再び、この業務電文要求3に対する応答も返らない場合にはSC325bによる2度目の電文の再送が前回と同様に実行され、2度目の再送でもなお、SC325bに対して通信制御IC325aからの応答が届かないと、SC325bは、通信制御IC325aに対して基板状態要求を送信する。この基板状態要求は、通信制御IC325aに対してセキュリティ基板及び、遊技機の状態を要求するものである。また、このときの下りカウンタは、再送を試みたカウンタ値に1を加えた3に設定される。
ところが、通信制御IC325aは、業務電文要求3(下りカウンタ=2)を受信できておらず、直近で受信した電文の下りカウンタは1である。このため、受信した基板状態要求をその下りカウンタに1加えた値(=2)で復号すると復号異常が検出される。そこで、図45のS156のとおり、下りカウンタに+1した値である3で基板状態要求が復号され、その復号に成功する。一方、基板状態応答(上りカウンタ=2)を受信したSC325bは、既に業務電文応答2(上りカウンタ=1)を受信しているので、その上りカウンタに1を加えた値(=2)で復号を試み、復号に成功する。
なお、図47および図48の処理では、復号異常となったときに、カウンタに+1した値で復号を再試行して成功した例を示したが、失敗した場合には、たとえば、図45(a)に示す処理が適用される。すなわち、図45(a)に示したように、初めに+1して試行し、復号失敗の場合にはさらに+1して試行し、このような試行を複数回繰り返し、それでも復号失敗の場合には、元のカウンタ値に戻してその値から−1して試行し、復号失敗の場合にはさらに−1して試行することを繰り返す。また、カウンタの更新値は1に限られず、2や3等の値を更新値としてもよい。
<CU制御部とSCとの通信における主なシーケンス>
次に、図49〜図60に基づいて、CU制御部323におけるCPUで実行される処理と、セキュリティチップ(SC)325bで実行される処理とを説明する。
まず、図49を参照して、CU制御部323の電源投入・ホール設置時の立上の処理を説明する。この図49は、CU3が遊技場に設置されて最初に電源を立上げたときのシーケンスであり、特に、基板初期鍵を用いたホール設置時の立上シーケンスについて説明する。
まず、CU3の電源を投入すると、CU制御部323およびSC325bが起動される。CU3が遊技場に設置されて最初に電源を立上げたときに、CU制御部323は、上位装置より(具体的にはホールサーバ801より)基板初期鍵A、基板初期鍵AのMAC鍵、有効鍵(商用/P台出荷用)を取得する。ここで、基板初期鍵Aは、遊技場に納入されてから最初に上位装置へ通信する時、ホールサーバ801からダウンロードしてCU制御部323に記憶する暗号鍵であり、鍵管理センタに設置された鍵管理サーバに記憶されている基板情報(基板シリアルIDと基板認証鍵)が取得されるまで、CU制御部323とSC325bとの通信に利用する暗号鍵である。なお、基板初期鍵Aは、基板メーカコードを用いて復号され、一方、基板初期鍵AのMAC鍵も同様に、基板メーカコードを用いて復号される。これらの復号は、AES(Advanced Encryption Standard)の暗号方式に則った復号方式で行なわれる。
その後、CU制御部323およびSC325bは、基板メーカコード認証シーケンス、基板初期鍵認証シーケンス、セキュリティ基板情報問合せシーケンスを実行する。基板初期鍵認証シーケンスおよびセキュリティ基板情報問合せシーケンスいずれのシーケンスもSE1モードにて行なわれる。
基板メーカコード認証シーケンスは、チャレンジ/レスポンス方式を用いて、CU制御部323とSC325bとの間で基板メーカコードを認証する。基板メーカコード認証シーケンスの処理後、CU制御部323およびSC325bは、暗号鍵にホールサーバ801より取得した基板初期鍵を用い、基板初期鍵認証シーケンスを行ない、基板初期鍵認証が完了した場合に認証OKとなる。なお、基板初期鍵認証シーケンスの詳細な処理については、後述する。
その後、CU制御部323およびSC325bは、暗号鍵にホールサーバ801より取得した基板初期鍵を用い、セキュリティ基板情報問合せシーケンスを行ない、セキュリティ基板情報を取得することができた場合に取得OKとなる。セキュリティ基板情報は、鍵管理センタの鍵管理サーバから取得し、基板シリアルIDや基板認証鍵などを含んでいる。なお、セキュリティ基板情報問合せシーケンスの詳細な処理については、後述する。基板認証鍵は、鍵管理センタに設置された鍵管理サーバからダウンロードしてCU制御部323とSC325bとの通信に利用する暗号鍵である。鍵管理サーバは、基板シリアル番号等に対応付けて基板認証鍵を記憶している。
セキュリティ基板情報問合せシーケンスでセキュリティ基板情報を取得することができた場合、SC325bは、通信制御IC325aとの間で認証を実行する。
その後、CU制御部323およびSC325bは、暗号鍵にホールサーバ801より取得した基板初期鍵を用い、通信鍵交換シーケンスを行ない、業務電文通信用の通信鍵を交換する。通信鍵交換シーケンスはSE1モードにて行なわれる。
CU制御部323およびSC325bは、暗号鍵に基板初期鍵を用い、通信鍵交換シーケンスを行ない、通信鍵を生成する。通信鍵交換シーケンスでは、基板情報取得シーケンスで基板情報を取得できた場合、基板認証鍵を暗号鍵に用いるが、基板情報を取得できなかった場合、基板初期鍵を時限的に暗号鍵に用いる。通信鍵の生成方法は、具体的には、乱数と現在時刻のデータとを用いて生成する。この通信鍵(セッション鍵)の生成方法は、乱数と現在時刻のデータとに限らず、暗号通信を行なう装置間での相互認証に用いた鍵以外の可変データであれば、いかなるものを用いてもよい。なお、通信鍵交換シーケンスは、遊技機による遊技を可能にするために遊技機との暗号通信に用いる鍵(通信化鍵)を交換するものであり、その詳細な処理については、後述する。
通信鍵交換シーケンスで通信鍵を生成できた場合、SC325bは、通信制御IC325aから遊技機チップ情報を取得する。
その後、CU制御部323およびSC325bは、暗号鍵に通信鍵交換シーケンスより取得した通信鍵を用い、遊技機チップ情報問合せシーケンスを行ない、遊技機チップ情報を問合せ/通知する。遊技機チップ情報問合せシーケンスはSE2モードにて行なわれる。遊技機チップ情報には、主制御チップIDや払出制御チップIDなどが含まれている。なお、遊技機チップ情報認証シーケンスの詳細な処理については、後述する。
以上の処理を行なうことで、CU制御部323およびSC325bは、遊技機と業務電文通信が可能となる。この遊技機と業務電文通信を行なうことにより遊技機において遊技が可能となる。この遊技機との業務電文通信には、通信鍵(セッション鍵)を利用して運用される。このときの通信は、前述したように、時限的な通信であり、一定期間(たとえば、2日)のみ許容される。以上の処理を経て行なわれる通信モードが制限通信モード(基板初期鍵モード(基板初期鍵運用))である。この時限運用のまま一定期間(たとえば、2日)がオーバーした場合には仮運用が停止されるとともに、オーバーしたことがSC325bからCU制御部323、ホールサーバ801を経由して鍵管理サーバへ通知される。
その後、CU3は、P台2に対して、リカバリ要求を行ない、P台2は、前回最終送信通番、前回挿入中カードID、前回カード挿入時刻を含むリカバリ応答のレスポンス(リカバリ応答)をCU3に返信する。
次に、図50を参照して、CU制御部323の電源投入・通常立上の処理を説明する。この図50は、CU3が遊技場に設置された後、通常に電源を立上げたときのシーケンスであり、特に、基板認証鍵を用いた立上シーケンスについて説明する。
まず、CU3の電源を投入すると、CU制御部323およびSC325bが起動される。CU3が遊技場に設置されて最初に電源を立上げたときに、CU制御部323は、上位装置より(具体的には鍵管理サーバより、ホールサーバ801を経由して)基板シリアルID鍵、基板認証鍵バージョン、基板認証鍵A、基板認証鍵AのMAC鍵を取得する。なお、基板シリアルID鍵は、基板初期鍵で復号され、基板初期鍵Aは、基板シリアルIDを用いて復号され、さらに、基板初期鍵AのMAC鍵も同様に、基板シリアルIDを用いて復号される。これらの復号は、AESの暗号方式に則った復号方式で行なわれる。
その後、CU制御部323およびSC325bは、基板メーカコード認証シーケンス、基板認証鍵認証シーケンス、セキュリティ基板情報問合せシーケンスを実行する。基板認証鍵認証シーケンスおよびセキュリティ基板情報問合せシーケンスはいずれもSE1モードにて行なわれる。
基板メーカコード認証シーケンスは、チャレンジ/レスポンス方式を用いて、CU制御部323とSC325bとの間で基板メーカコードを認証する。基板メーカコード認証シーケンスの処理後、CU制御部323およびSC325bは、暗号鍵に鍵管理サーバより取得した基板認証鍵を用い、基板認証鍵認証シーケンスを行なう。なお、基板認証鍵認証シーケンスの詳細な処理については、後述する。
その後、CU制御部323およびSC325bは、鍵の更新が有る場合にのみ、暗号鍵に鍵管理サーバより取得した基板認証鍵を用い、セキュリティ基板情報問合せシーケンスを行なう。
基板認証鍵認証シーケンスで基板認証鍵を認証でき鍵更新が無かった場合や、鍵更新が有り、セキュリティ基板情報問合せシーケンスで認証ができると、SC325bは、通信制御IC325aとの間で認証を実行する。
その後、CU制御部323およびSC325bは、暗号鍵に基板認証鍵を用い、通信鍵交換シーケンスを行ない、通信鍵を生成する。通信鍵交換シーケンスはSE1モードにて行なわれる。通信鍵の生成方法は、具体的には、乱数と現在時刻のデータとを用いて生成する。この通信鍵(セッション鍵)の生成方法は、乱数と現在時刻のデータとに限らず、暗号通信を行なう装置間での相互認証に用いた鍵以外の可変データであれば、いかなるものを用いてもよい。なお、通信鍵交換シーケンスは、遊技機による遊技を可能にするために遊技機との暗号通信に用いる鍵(通信化鍵)を交換するものであり、その詳細な処理については、後述する。
通信鍵交換シーケンスで通信鍵を生成することができた場合、SC325bは、通信制御IC325aから遊技機チップ情報をさらに取得する。
その後、CU制御部323およびSC325bは、暗号鍵に通信鍵交換シーケンスより取得した通信鍵を用い、遊技機チップ情報問合せシーケンスを行ない、遊技機チップ情報を問合せ/通知する。遊技機チップ情報問合せシーケンスはSE2モードにて行なわれる。遊技機チップ情報には、主制御チップIDや払出制御チップIDなどが含まれている。なお、遊技機チップ情報認証シーケンスの詳細な処理については、後述する。
以上の処理を行なうことで、CU制御部323およびSC325bは、遊技機と業務電文通信が可能となる。この遊技機と業務電文通信を行なうことにより遊技機において遊技が可能となる。この遊技機との業務電文通信には、通信鍵(セッション鍵)が利用される。このときの通信は、制限通信モードのような制限のない通常通信モード(基板認証鍵モード(基板認証鍵運用))である。
次に、図51を参照して、CU制御部323の電源投入・工場出荷時立上の処理を説明する。この図51は、CU3が遊技場に出荷される前の工場出荷時のシーケンスを示し、特に、基板出荷鍵を用いた工場出荷立上シーケンスについて説明する。当該シーケンスは、工場出荷時、上位装置に接続していない状態のCU制御部323およびSC325bにおける処理である。
まず、CU3の電源を投入すると、CU制御部323およびSC325bが起動される。CU制御部323およびSC325bは、基板メーカコード認証シーケンス、基板初期鍵認証シーケンスを実行する。
基板メーカコード認証シーケンスは、チャレンジ/レスポンス方式を用いて、CU制御部323とSC325bとの間で基板メーカコードを認証する。基板メーカコード認証シーケンスの処理後、CU制御部323およびSC325bは、暗号鍵に基板初期鍵を用い、基板初期鍵認証シーケンスを行なう。基板初期鍵認証シーケンスはSE1モードにて行なわれる。しかし、工場出荷時の段階のため未だ遊技場にCU3が設置されていないため、遊技場のホールサーバ801より基盤初期鍵をCU制御部323が取得できておらず、その結果、基板初期鍵認証の結果がNGとなる。
その後、CU制御部323は、基板初期鍵認証シーケンスが認証NGとなったため、CU制御部323は、SC325bにセキュリティ基板325のテストに用いる基板出荷鍵を要求する、基板出荷鍵要求のコマンドをSC325bに送信する。SC325bは、CU制御部323から基板出荷鍵要求のコマンドを受信後、基板出荷鍵を含む基板出荷鍵応答のレスポンスをCU制御部323に送信する。
その後、CU制御部323およびSC325bは、暗号鍵にSC325bより取得した基板出荷鍵を用い、基板出荷鍵認証シーケンスを行なう。基板出荷鍵認証シーケンスはSE1モードにて行なわれる。なお、基板出荷鍵認証シーケンスの詳細な処理については、後述する。
基板出荷鍵認証シーケンスで基板出荷鍵を認証できた場合、SC325bは、通信制御IC325aとの間で認証を実行する。
その後、CU制御部323およびSC325bは、暗号鍵に基板出荷鍵を用い、通信鍵交換シーケンスを行ない、通信鍵を生成する。通信鍵交換シーケンスはSE1モードにて行なわれる。通信鍵の生成方法は、具体的には、乱数と現在時刻のデータとを用いて生成する。この通信鍵(セッション鍵)の生成方法は、乱数と現在時刻のデータとに限らず、暗号通信を行なう装置間での相互認証に用いた鍵以外の可変データであれば、いかなるものを用いてもよい。なお、通信鍵交換シーケンスは、遊技機による遊技を可能にするために遊技機との暗号通信に用いる鍵(通信化鍵)を交換するものであり、その詳細な処理については、後述する。
通信鍵交換シーケンスで通信鍵を生成できた場合、SC325bは、通信制御IC325aから遊技機チップ情報を取得する。
その後、CU制御部323およびSC325bは、暗号鍵に通信鍵交換シーケンスより取得した通信鍵を用い、遊技機チップ情報問合せシーケンスを行ない、遊技機チップ情報を問合せ/通知する。遊技機チップ情報問合せシーケンスはSE2モードにて行なわれる。遊技機チップ情報には、主制御チップIDや払出制御チップIDなどが含まれている。なお、遊技機チップ情報認証シーケンスの詳細な処理については、後述する。
その後、CU3は、P台2に対して、通信テスト要求を行ない、P台2は通信テスト応答をCU3に送信する。
以上の処理を行なうことで、CU制御部323およびSC325bは、遊技機と通信テスト電文のみの通信が可能となる。この通信テスト電文の通信を行なうことにより工場出荷時の通信テストが行われる。この工場出荷時の通信テストに合格したCU3が遊技場に納入されて最初の電源立上時のシーケンスが図49で説明したホール設置立上シーケンスであり、その後基板認証鍵の取得後に実行されるシーケンスが図50で説明した通常立上シーケンスである。
次に、図52を参照して、基板メーカコードの認証シーケンスの処理を説明する。
まず、CU制御部323は、SC325bに対して、基板メーカコードの認証を要求する基板メーカコード認証要求1のコマンドを送信する。なお、基板メーカコード認証は、チャレンジ/レスポンス方式を用いて行なうため、CU制御部323は、SC325bに対して、チャレンジコードを要求する。
基板メーカコード認証要求1のコマンドを受信したSC325bは、基板メーカコードに基づくチャレンジコードを生成し、生成したチャレンジコードを基板メーカコード認証応答1のレスポンスでCU制御部323に通知する。
基板メーカコード認証応答1のコマンドを受信したCU制御部323は、チャレンジコードに基づくレスポンスコードを生成し、生成したレスポンスコードを基板メーカコード認証要求2のコマンドでSC325bに通知する。具体的には、基板メーカコードを鍵として受信したチャレンジコードを暗号化してレスポンスコードを生成する。
基板メーカコード認証要求2のコマンドを受信したSC325bは、レスポンスコードをチェックして(具体的には基板メーカコードを鍵としてレスポンスコードを復号してチャレンジコードを抽出して)チャレンジコードが一致すればチェック結果がOKであるとする。そして、当該チェック結果を基板メーカコード認証応答2のレスポンスでCU制御部323に通知する。このとき、CU制御部323は、基板メーカコード認証結果などの認証ログ情報をSC325bから取得する。
一方、チャレンジコードが一致しなければチェック結果がNG(不適正)であるとする。その場合に、n回際認証を繰り返し、n回連続でNGの場合にSC325bが無応答状態(HALT)となり、基板認証鍵と本認証鍵とがクリアされる(図65参照)。この無応答状態(HALT)となった後には、SC325bが通信制御IC325aと認証を行なうことはなく、工場で修理を行なうこととなる。
CU制御部323は、SC325bにCU制御部固有情報(統一店舗コード、台番、現在時刻)を通知して、遊技機との接続を要求する基板接続要求のコマンドを送信する。
SC325bは、CU制御部323からの基板接続要求のコマンドを受信後、統一店舗コード、台晩、現在時刻の情報を保持し、前回の統一店舗コードが一致しているときは、CU制御部323に対して接続要求を受付けた(OK)ことを通知する基板接続応答のレスポンスを返信する。
一方、前回の統一店舗コードと不一致であるときは、CU制御部323に対して接続要求を受付けていない(NG)ことを通知する基板接続応答のレスポンスを返信し、RAMに記憶されている基板認証鍵をクリアするとともに、基板初期鍵を暗号鍵として処理を進めるモードである基板初期鍵モード(図49参照)に遷移する。このとき、CU制御部323は、基板接続要求結果などの認証ログ情報をSC325bから取得する。
次に、図53を参照して、基板初期鍵または基板出荷鍵の認証シーケンスの処理を説明する。このシーケンスはSE1モードにて行なわれる。
まず、図53に示すように、基板初期鍵を暗号鍵として処理を進めるモードである基板初期鍵モードの状態の場合には、図53において基盤初期鍵を用いた認証が行われるが、基板出荷鍵を暗号鍵として処理を進めるモードである基板出荷鍵モードの状態の場合には、図53において基盤出荷鍵を用いた認証が行われることになる。よって、図53の「/」はいずれか一方を表す記号である。CU制御部323は、SC325bに対して、認証情報を要求する基板初期鍵/基板出荷鍵認証要求1のコマンドを送信する。なお、基板初期鍵/基板出荷鍵認証要求1のコマンドは暗号化していないが、暗号鍵に基板初期鍵/基板出荷鍵を用いて、暗号化してもよい。
基板初期鍵/基板出荷鍵認証要求1のコマンドを受信したSC325bは、CU制御部323に対して、基板初期鍵または基板出荷鍵で認証情報の乱数Aを暗号化し、MAC鍵でH−MACを算出して、基板初期鍵/基板出荷鍵認証応答1のレスポンスで返信する。
基板初期鍵/基板出荷鍵認証応答1のコマンドを受信したCU制御部323は、基板初期鍵または基板出荷鍵を検証するため、認証情報の乱数Aを復号化し、MACをチェックする。
その後、CU制御部323は、SC325bに対して、基板初期鍵または基板出荷鍵で認証情報の乱数Bを暗号化し、MAC鍵でH−MACを算出して、基板初期鍵/基板出荷鍵認証要求2のコマンドで送信する。なお、基板初期鍵/基板出荷鍵認証要求2のコマンドは、暗号鍵に基板初期鍵または基板出荷鍵を用いて、暗号化してある。
基板初期鍵/基板出荷鍵認証要求2のコマンドを受信したSC325bは、CU制御部323に対して、基板初期鍵または基板出荷鍵を検証するため、認証情報の乱数Bを復号化し、MACをチェックする。そして、SC325bは、CU制御部323に対して、認証結果を基板初期鍵/基板出荷鍵認証応答2のレスポンスで返信する。このとき、CU制御部323は、基板初期鍵認証結果、基板出荷鍵認証結果などの認証ログ情報をSC325bから取得する。
次に、図54を参照して、基板シリアルIDおよび基板認証鍵の認証シーケンスの処理を説明する。このシーケンスはSE1モードにて行なわれる。
まず、CU制御部323とSC325bとの通信は、基板認証鍵を暗号鍵として処理を進めるモードである基板認証鍵モードの状態において、CU制御部323は、SC325bに対して、基板シリアルIDの認証を要求する基板シリアルID認証要求1のコマンドを送信する。なお、基板シリアルID認証は、チャレンジ/レスポンス方式を用いて行なうため、CU制御部323は、SC325bに対して、チャレンジコードを要求する。
基板シリアルID認証要求1のコマンドを受信したSC325bは、基板シリアルIDに基づくチャレンジコードを生成し、生成したチャレンジコードを基板シリアルID認証応答1のレスポンスでCU制御部323に通知する。
基板シリアルID認証応答1のコマンドを受信したCU制御部323は、チャレンジコードに基づくレスポンスコードを生成し(具体的には基板メシリアルIDを鍵としてチャレンジコードを暗号化してレスポンスコードを生成し)、生成したレスポンスコードを基板シリアルID認証要求2のコマンドでSC325bに通知する。
基板シリアルID認証要求2のコマンドを受信したSC325bは、レスポンスコードをチェックして(具体的には基板メシリアルIDを鍵としてレスポンスコードを復号してチャレンジコードを抽出して)、チャレンジコードが一致すればチェック結果がOKであるとする。そして、当該チェック結果を基板シリアルID認証応答2のレスポンスでCU制御部323に通知する。なお、チェック結果がNGの場合、SC325bは、CU制御部323に対してチェック結果を、基板認証結果通知および基板認証結果応答での認証結果に含め、NGを通知する。このとき、CU制御部323は、基板シリアルID認証結果などの認証ログ情報をSC325bから取得する。
その後、CU制御部323は、SC325bに対して、基板認証鍵のバージョン情報を通知するためにバージョン情報通知のコマンドを送信する。なお、バージョン情報通知のコマンドは、暗号鍵に基板認証鍵を用いて、暗号化してある。
バージョン情報通知のコマンドを受信したSC325bは、CU制御部323に対して基板認証鍵のバージョン情報を受信したことを通知するために、バージョン情報応答のレスポンスを返信する。なお、バージョン情報応答のレスポンスは暗号化していないが、暗号鍵に基板認証鍵を用いて暗号化してもよい。
その後、CU制御部323は、SC325bに対して、認証情報を要求する基板認証鍵認証要求1のコマンドを送信する。なお、基板認証鍵認証要求1のコマンドは暗号化していないが、暗号鍵に基板認証鍵を用いて、暗号化してもよい。
基板認証鍵認証要求1のコマンドを受信したSC325bは、CU制御部323に対して、基板認証鍵で認証情報の乱数Aを暗号化し、MAC鍵でH−MACを算出して、基板認証鍵認証応答1のレスポンスで返信する。
基板認証鍵認証応答1のコマンドを受信したCU制御部323は、基板認証鍵を検証するため、認証情報の乱数Aを復号化し、MACをチェックする。
その後、CU制御部323は、SC325bに対して、基板認証鍵で認証情報の乱数Bを暗号化し、MAC鍵でH−MACを算出して、基板認証鍵認証要求2のコマンドで送信する。なお、基板認証鍵認証要求2のコマンドは、暗号鍵に基板認証鍵を用いて、暗号化してある。
基板認証鍵認証要求2のコマンドを受信したSC325bは、CU制御部323に対して、基板認証鍵を検証するため、認証情報の乱数Bを復号化し、MACをチェックする。そして、SC325bは、CU制御部323に対して、認証結果を基板認証鍵認証応答2のレスポンスで返信する。
その後、CU制御部323は、SC325bに対して、基板認証結果を通知するために、基板認証結果通知のコマンドを送信する。なお、基板認証結果通知のコマンドは、暗号鍵に基板認証鍵を用いて、暗号化してある。基板認証結果通知のコマンドは、基板シリアルID認証と基板認証鍵の認証結果をSC325bに対して通知する。
基板認証結果通知のコマンドを受信したSC325bは、CU制御部323に対して、基板シリアルID認証と基板認証鍵の認証結果を通知するために、基板認証結果応答のコマンドを送信する。なお、基板認証結果応答のコマンドは、暗号鍵に基板認証鍵を用いて、暗号化してある。このとき、CU制御部323は、基板認証結果などの認証ログ情報をSC325bから取得する。
次に、図55は、セキュリティ基板情報の問合せを行なう場合の処理を説明するための図である。このシーケンスはSE1モードにて行なわれる。図55を参照して、まず、CU制御部323は、SC325bに対して上位装置に問合せる情報を要求するために、セキュリティ基板問合せ指示通知のコマンドを送信する。なお、送信するセキュリティ基板問合せ指示通知のコマンドは、暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化してある。
セキュリティ基板問合せ指示通知のコマンドを受信したSC325bは、上位装置(具体的にはホールサーバ801経由で鍵管理サーバ)に問合せる情報(基板シリアル番号および問合せ情報)をCU制御部323に通知するために、セキュリティ基板問合せ結果のレスポンスをCU制御部323に返信する。なお、返信するセキュリティ基板問合せ指示通知のレスポンスは、基板シリアル番号を暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化しているとともに、CU制御部323とホールサーバ801とが復号できない鍵(以下「秘匿用鍵」と言う)で問合せ情報を暗号化している。その結果、問合せ情報は鍵管理サーバのみが復号して解読できる。
セキュリティ基板問合せ結果のレスポンスを受信したCU制御部323は、基板シリアル番号および問合せ情報に基づき、上位装置(具体的にはホールサーバ801経由で鍵管理サーバ)にセキュリティ基板325の情報(基板シリアル番号および問合せ情報)を問合せ、上位装置からの応答を待つ。セキュリティ基板情報を問合せ中、CU制御部323およびSC325bは、上位装置からの応答を待たずに、次のステップの処理(たとえば、通信制御ICの認証処理、遊技機チップ情報の認証処理、遊技機との業務電文処理等)を実行し、セキュリティ基板情報を受信したときに必要な処理を実施する。
その後、CU制御部323は、上位装置からセキュリティ基板情報の問合せ結果(基板シリアルIDおよび基板認証鍵)を受信すると、セキュリティ基板情報をSC325bに通知する。具体的に、CU制御部323は、問合せ結果である基板シリアルIDおよび基板認証鍵を含むセキュリティ基板情報通知のコマンドをSC325bに送信する。なお、送信するセキュリティ基板情報通知のコマンドは、暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化してある。
SC325bは、セキュリティ基板情報通知のコマンドを受信後、問合せ番号を確認して、セキュリティ基板情報通知のコマンドを正常に受信したことをCU制御部323に通知するために、セキュリティ基板情報結果のレスポンスを返信する。なお、鍵更新情報は、次回リセット時に使用される。返信するセキュリティ基板情報結果のレスポンスは、暗号化しなくてもよいが、暗号化する場合、暗号鍵に基板初期鍵または基板認証鍵を用いる。
その後、CU制御部323は、受信結果がOKの場合には、基板シリアルID鍵および基板認証鍵Aを保存して、次回リセット時に認証鍵情報として使用する。また、CU制御部323は、基板情報問合せおよび基板情報通知の認証ログ情報を取得する。
次に、図56を参照して、遊技機チップ情報問合せシーケンスの処理を説明する。このシーケンスはSE2モードにて行なわれる。
まず、CU制御部323は、SC325bに対して遊技機チップ情報を問合せる遊技機チップ問合せ指示通知のコマンドを送信する。なお、送信する遊技機チップ問合せ指示通知のコマンドは、暗号化しなくてもよいが、暗号化する場合、暗号鍵に通信鍵を用いる。
一方、SC325bは、通信制御ICから遊技機チップ情報を取得する。その後、遊技機チップ問合せ指示通知のコマンドを受信したSC325bは、遊技機チップ情報の取得を完了しているので、遊技機チップ問合せ結果=OKの情報を含む遊技機チップ問合せ結果のレスポンスをCU制御部323に返信する。遊技機チップ情報には、主制御チップID、払出制御チップIDなどが含まれている。なお、返信する遊技機チップ問合せ結果のレスポンスは、主制御チップIDと払出制御チップIDとが秘匿用鍵で暗号化され、その他の情報は暗号鍵に通信鍵を用いて、暗号化してある。
その後、CU制御部323は、返信された遊技機チップ問合せ結果のレスポンスを受信した場合、上位装置(鍵管理サーバまたはホールサーバ801:図5参照)に、主制御チップIDおよび払出制御チップIDを含む遊技機チップ情報を問合せ、上位装置からの応答を待つ。遊技機チップ情報問合せ中、CU制御部323およびSC325bは、上位装置からの応答を持たずに、次のステップの処理(遊技機との業務電文処理)を実行する。遊技機チップ情報の問合せには時間(たとえば2時間程度)がかかるため、その間遊技機の稼働を停止しておくわけにはいかないために、上位装置からの応答を持たずに次のステップの処理(遊技機との業務電文処理)を実行する。なお、遊技機チップ情報問合せ中は、リセット動作(たとえば、リセットボタン(図示省略)の操作や電源再投入など)が行なわれても、再度遊技機チップ問合せ指示通知の要求は出されない。
その後、CU制御部323は、上位装置から遊技機チップ情報の照合結果を受信すると、当該照合結果をSC325bに通知する。具体的に、CU制御部323は、照合結果を含む遊技機チップ情報通知のコマンドをSC325bに送信する。なお、送信する遊技機チップ照合結果通知のコマンドは、暗号鍵に通信鍵を用いて、暗号化してある。
SC325bは、遊技機チップ情報通知のコマンドを受信後、照合結果がOKのとき、遊技機メーカコードおよび型式コードをCU制御部323に通知するため、遊技機チップ情報結果のレスポンスを返信する。なお、返信する遊技機チップ情報結果のレスポンスは、暗号鍵に通信鍵を用いて、暗号化してある。
同時に、CU制御部323は、SC325bからの遊技機チップ情報結果に含まれる遊技機チップ情報問合せ、遊技機チップ情報照合結果などの認証ログを取得する。
次に、図57を参照して、通信鍵交換シーケンスの処理を説明する。CU制御部323は、SC325bに対して、SE2モードで使用するカウンタの初期ベクタ部の値(上り用初期ベクタ部の値、下り用初期ベクタ部の値)を要求するカウンタ情報要求を送信する。CU制御部323は、SC325bと通信制御IC325aとの間での認証処理が完了するまで待ち合せする。SC325bはSE2モードで使用するカウンタの初期ベクタ値(上り用初期ベクタ値と下り用初期ベクタ値)を生成してカウンタ情報応答にてCU制御部323へ通知する。なお、応答は、暗号鍵に基板初期鍵または基板認証鍵を用い、SE1モードで暗号化してある。
CU制御部323は認証ログ情報を取得する。これは通信制御IC325aの認証結果を含む。続いて、CU制御部323は通信鍵要求をSC325bへ送信する。すると、SC325bは通信鍵(セッション鍵)を生成してこれを通信鍵応答にてCU制御部323へ通知する。この通信はSE2モードにて行なわれる。なお、通信鍵(セッション鍵)の生成方法は、具体的には、基板初期鍵を用いる場合にはその基板初期鍵と乱数とから通信鍵(セッション鍵)を生成し、認証鍵を用いる場合にはその認証鍵と乱数とから通信鍵(セッション鍵)を生成する。なお、乱数の代わりに現在時刻のデータを用いてもよい。
CU制御部323は認証ログ情報を取得する。これには有効鍵設定結果と認証鍵設定結果(結果のみ)とが含まれる。以降、通信鍵(セッション鍵)を使用した通信が行なわれる。
次に、図58を参照して、基板認証鍵認証異常のシーケンスの処理を説明する。まず、CU3の電源を投入すると、CU制御部323およびSC325bが起動される。その後、CU制御部323およびSC325bは、基板メーカコード認証シーケンス、基板認証鍵認証シーケンスを実行する。
基板メーカコード認証シーケンスは、チャレンジ/レスポンス方式を用いて、CU制御部323とSC325bとの間で基板メーカコードを認証する。基板メーカコード認証シーケンスの処理後、CU制御部323およびSC325bは、暗号鍵に鍵管理サーバより取得した基板認証鍵を用い、基板認証鍵認証シーケンスを行なう。基板認証鍵認証シーケンスはSE1モードにて行なわれる。ここで、基板認証鍵認証が認証NGとなった場合には、SC325bは、認証異常として、基板認証鍵情報をクリアする。
その後、CU制御部323およびSC325bは、基板初期鍵認証シーケンスを実行する。基板初期鍵認証シーケンスはSE1モードにて行なわれる。このとき、基板初期鍵認証シーケンスの通信は、暗号鍵として基板初期鍵を用いて、暗号化してある。
この基板初期鍵認証シーケンスの認証が認証OKのときは、その後は図49に示したホール設置時立上シーケンスの処理と同様に、セキュリティ基板情報問合せシーケンス、通信鍵交換シーケンス、遊技機チップ情報問合せシーケンスなどの処理が行われ、遊技機と業務電文通信が可能となる。以後の通信は、暗号鍵として、通信鍵を用いて、暗号化してある。
なお、SC325bは、基板認証鍵シーケンスの認証が認証NGになったことを示す「基板認証鍵更新異常」のアラーム(エラー情報)を鍵管理サーバ801に通知する。
次に、図59は、セキュリティ基板情報の問合せタイムアウトシーケンスの処理を説明する図である。
まず、CU制御部323は、SC325bに対して上位装置に問合せる情報を要求するために、セキュリティ基板問合せ指示通知のコマンドを送信する。なお、送信するセキュリティ基板問合せ指示通知のコマンドは、暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化してある。
セキュリティ基板問合せ指示通知のコマンドを受信したSC325bは、上位装置(具体的にはホールサーバ801経由で鍵管理サーバ)に問合せる情報(基板シリアル番号および問合せ情報)をCU制御部323に通知するために、セキュリティ基板問合せ結果のレスポンスをCU制御部323に返信する。このシーケンスはSE1モードにて行なわれる。なお、返信するセキュリティ基板問合せ指示通知のレスポンスは、基板シリアル番号を暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化しているとともに、秘匿用鍵で問合せ情報を暗号化している。その結果、問合せ情報は鍵管理サーバのみが復号して解読できる。
セキュリティ基板問合せ結果のレスポンスを受信したCU制御部323は、基板シリアル番号および問合せ情報に基づき、上位装置(具体的にはホールサーバ801経由で鍵管理サーバ)にセキュリティ基板325の情報(基板シリアル番号および問合せ情報)を問合せ、上位装置からの応答を待つ。セキュリティ基板情報を問合せ中、CU制御部323およびSC325bは、上位装置からの応答を待たずに、次のステップの処理(たとえば、通信制御ICの認証処理、遊技機チップ情報の認証処理、遊技機との業務電文処理等)を実行する。
その後、CU制御部323は、上位装置からセキュリティ基板情報の問合せ結果(基板シリアルIDおよび基板認証鍵)を受信する前に、セキュリティ基板情報問合せの待ち時間がタイムアウトした場合には、CU3はP台2の状態に関する情報を要求する状態情報要求のコマンドを送信する。なお、この状態情報要求のコマンドは、暗号鍵に通信鍵を用い、暗号化してある。態情報要求のコマンドを受信したSC325bは通信制御IC325a経由でP台2の遊技機チップ情報を取得する。
そしてSC325bは、CU3に対して、状態情報応答のレスポンスを返信する。このとき、SC325bは、セキュリティ基板情報を鍵管理センターに問合せを要求する旨の「基板問合せ有」を含む状態情報応答を返信する。状態情報要求/応答のシーケンスはSE2モードにて行なわれる。
上記のセキュリティ基板問合せに対して、CU制御部323は、SC325bに対して上位装置に問合せる情報を要求するために、セキュリティ基板問合せ指示通知のコマンドを送信する。なお、送信するセキュリティ基板問合せ指示通知のコマンドは、暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化してある。
セキュリティ基板問合せ指示通知のコマンドを受信したSC325bは、上位装置(具体的にはホールサーバ801経由で鍵管理サーバ)に問合せる情報(基板シリアル番号および問合せ情報)をCU制御部323に通知するために、セキュリティ基板問合せ結果のレスポンスをCU制御部323に再度返信する。セキュリティ基板問合せ指示通知/セキュリティ基板問合せ結果のシーケンスはSE2モードにて行なわれる。なお、返信するセキュリティ基板問合せ指示通知のレスポンスは、基板シリアル番号を暗号鍵に基板初期鍵または基板認証鍵を用い、暗号化しているとともに、秘匿用鍵で問合せ情報を暗号化している。その結果、問合せ情報は鍵管理サーバのみが復号して解読できる。
セキュリティ基板問合せ結果のレスポンスを受信したCU制御部323は、基板シリアル番号および問合せ情報に基づき、上位装置(具体的にはホールサーバ801経由で鍵管理サーバ)にセキュリティ基板325の情報(基板シリアル番号および問合せ情報)を問合せ、上位装置からの応答を待ち続ける。
次に、図60は、遊技機チップ情報の問合せ(照合)タイムアウトシーケンスの処理を説明する図である。このシーケンスはSE2モードにて行なわれる。
まず、CU制御部323は、SC325bに対して上位装置に問合せる情報(具体的には遊技機チップ情報)を要求するために、遊技機チップ問合せ指示通知のコマンドを送信する。なお、送信する遊技機チップ問合せ指示通知のコマンドは、暗号鍵に通信鍵を用い、暗号化してある。
一方、SC325bは、通信制御ICから遊技機チップ情報を取得し、その後、遊技機チップ問合せ指示通知のコマンドを受信したSC325bは、上位装置(具体的にはホールサーバ801経由で鍵管理サーバ)に問合せる情報(主制御チップ情報および払出制御チップ情報)をCU制御部323に通知するために、遊技機チップ問合せ結果(認証OK)のレスポンスをCU制御部323に返信する。なお、返信する遊技機チップ問合せ指示通知のレスポンスは、主制御チップIDと払出制御チップIDとが秘匿用鍵で暗号化され、その他の情報は暗号鍵に通信鍵を用い、暗号化してある。
遊技機チップ問合せ結果のレスポンスを受信したCU制御部323は、主制御チップ情報および払出制御チップ情報に基づき、上位装置(具体的にはホールサーバ801経由で鍵管理サーバ)に遊技機チップ情報(主制御チップ情報および払出制御チップ情報)を問合せ、上位装置からの応答を待つ。遊技機チップ情報を問合せ中、CU制御部323およびSC325bは、上位装置からの応答を待たずに、次のステップの処理(たとえば、通信制御ICの認証処理、セキュリティ基板情報の認証処理、遊技機との業務電文処理等)を実行し、遊技機チップ情報を受信したときに必要な処理を実施する。
しかしながら、その後、CU制御部323は、上位装置から遊技機チップ情報の問合せ結果(主制御チップ情報および払出制御チップ情報)を受信する前に、遊技機チップ情報問合せの待ち時間がタイムアウトした場合には、CU3はP台2の状態に関する情報を要求する状態情報要求のコマンドを送信する。なお、この状態情報要求のコマンドは、暗号鍵に通信鍵を用い、暗号化してある。状態情報要求のコマンドを受信したSC325bは通信制御IC325a経由でP台2の遊技機チップ情報を取得する。
そしてSC325bは、CU3に対して、状態情報応答のレスポンスを返信する。このとき、SC325bは、遊技機チップ情報の鍵管理センターへの問合せを要求する旨の「チップ情報問合せ有」を含む状態情報応答を返信する。
上記の遊技機チップ情報問合せに対して、CU制御部323は、SC325bに対して上位装置に問合せる情報を要求するために、遊技機チップ問合せ指示通知のコマンドを送信する。なお、送信する遊技機チップ問合せ指示通知のコマンドは、暗号鍵に通信鍵を用い、暗号化してある。
遊技機チップ問合せ指示通知のコマンドを受信したSC325bは、上位装置(具体的にはホールサーバ801経由で鍵管理サーバ)に問合せる情報(主制御チップ情報および払出制御チップ情報)をCU制御部323に通知するために、遊技機チップ問合せ結果のレスポンスをCU制御部323に再度返信する。なお、返信する遊技機チップ問合せ指示通知のレスポンスは、主制御チップIDと払出制御チップIDとが秘匿用鍵で暗号化され、その他の情報は暗号鍵に通信鍵を用い、暗号化してある。
遊技機チップ問合せ結果のレスポンスを受信したCU制御部323は、主制御チップ情報および払出制御チップ情報に基づき、上位装置(具体的にはホールサーバ801経由で鍵管理サーバ)に遊技機チップ情報(主制御チップ情報および払出制御チップ情報)を問合せ、上位装置からの応答を待ち続ける。
以上の図49〜図60に基づいて説明したCU制御部323とSC325bとの間でのシーケンスにおいて、特徴的な部分を以下にまとめて説明する。
CU3が遊技場に入荷されて設置された後に実行されるシーケンスとして、「基板初期鍵認証シーケンス」がある(図49参照)。この「基板初期鍵認証シーケンス」は、遊技場に搬入されて設置された最初の電源投入時においては、上位装置(ホールサーバ801)から基板初期鍵をダウンロード取得し、その基板初期鍵を用いて認証されるシーケンスである。この基板初期鍵認証シーケンスの認証結果がOKであることを条件として、この基板初期鍵を用いて「セキュリティ基板情報問合せシーケンス」が実行される(図49参照)。このセキュリティ基板情報問合せシーケンスにより基板認証鍵が上位装置(鍵管理サーバ)からダウンロード記憶され、以降、この基板認証鍵を利用して各種認証シーケンスや通信鍵交換シーケンス等が実行されてその通信鍵を用いて遊技機と業務電文通信が実行される(図50参照)。
一方、基板初期鍵を用いてのセキュリティ基板情報問合せシーケンス(図49参照)を実行した結果、基板認証鍵を取得できない場合がある。この基板認証鍵は、CUメーカがCU3を遊技場に出荷するときにそのCU3の基板認証鍵を鍵管理サーバへ送信して鍵管理サーバに記憶してもらい、遊技場に搬入されたCUがその事前に鍵管理サーバに記憶されている基板認証鍵をダウンロード記憶するのであるが、CUメーカから鍵管理サーバへの基板認証鍵の送信が何らかの理由により遅れている場合がある。また、遊技場に搬入されて設置されたCU3がセキュリティ基板情報問合せシーケンスを実行して基板認証鍵をダウンロードしようとしたときに鍵管理サーバとCU3との間で不測の事態が発生して通信不能のオフライン状態となっている場合もある。このような場合には、基板認証鍵をダウンロードすることができない。
基板認証鍵をダウンロードできない場合に、それ以降の遊技機との業務電文通信等の実稼動の運用が一切できないとなれば、遊技場における稼動率の低下等の運用上の問題が生じる。そこで、このような不測の事態が発生した場合には、仮の認証鍵である基板初期鍵を利用して実稼動の仮運用ができるように制御される。具体的には、上位装置(具体的にはホールサーバ801)より取得済の基板初期鍵を用いて、通信鍵交換シーケンスを実行し、乱数と時刻データとを用いて通信鍵(セッション鍵)を生成し、CU制御部323とSC325bとの間でその通信鍵(セッション鍵)を共有し、その通信鍵(セッション鍵)を使用して業務電文通信を行なって実稼動制御が行なわれる。この基板初期鍵を利用して交換した通信鍵による実稼動制御は、あくまで基板初期鍵が仮の鍵であり基板認証鍵が取得できない不安定な状態であるために、一定の期間だけ許容される仮運用の制御がなされる。具体的には、2日間のみこの基板初期鍵を用いた実稼動制御を許容し、3日目の電源立上げ時においても基板認証鍵を取得できなかったときには、それ以降の制御を停止させ、異常が発生した旨を報知するとともにホールサーバ801やホール用管理コンピュータへ異常発生した旨の通知を行なうように制御する。なお、基板初期鍵での一定の期間(たとえば2日)だけ許容される仮運用の時限制御は、基板初期鍵がホールサーバ801に記憶されているものであるため、少なくともCU制御部323がホールサーバ801に接続されていることが担保されている状態で許容される。
また、前述の「基板初期鍵/出荷鍵認証シーケンス」は、図51に示した工場出荷時すなわち未だ遊技場に搬入されていない段階でも実行される。この段階で基板初期鍵認証シーケンスを実行した場合には、未だ基板初期鍵が取得されていないために、基板初期鍵を用いたこの基板初期鍵認証シーケンスの実行の結果NGの認証結果が導出される。すると、図53に示した基板出荷鍵要求、基板出荷鍵応答以降の各シーケンスが実行され、遊技機と通信テスト電文の通信が実行される状態となる。すなわち、「基板初期鍵/出荷鍵認証シーケンス」により、基板初期鍵が取得されている段階かあるいは取得されていない工場出荷時の段階かを判断しているのであり、本来相互認証を行なう基板初期鍵認証シーケンスを、基板初期鍵が取得された段階かあるいは取得されていない工場出荷時の段階かの判別にも有効利用している。
さらに、以上説明したCU制御部323とSC325bとの間のシーケンスおよびSC325bと通信制御IC325aとの間のシーケンスについて、その制御動作を以下にまとめて記載する。
通信制御IC325aは、当該通信制御IC325aを識別するための通信制御IC325a識別情報と、SC325b識別情報とを記憶しており(ID情報等を記憶しており)、SC325bは、SC325b識別情報(基板シリアルID)と、通信制御IC325a識別情報(ID情報等)とを記憶している。そして、SC325bと通信制御IC325aとの間で、SC325bにおいて記憶しているSC325b識別情報を用いてチャレンジコードを生成して通信制御IC325aに送信し、該通信制御IC325aにおいて、記憶しているSC325b識別情報を用いて、受信したチャレンジコードからレスポンスコードを生成してSC325bへ返信し、SC325bにおいて、記憶しているSC325b識別情報を用いて受信したレスポンスコードの適否を判定する第2チャレンジレスポンス認証処理(図34の第1認証シーケンス)と、通信制御IC325aにおいて記憶している通信制御IC325a識別情報を用いてチャレンジコードを生成してSC325bに送信し、該SC325bにおいて、記憶している通信制御IC325a識別情報を用いて、受信したチャレンジコードからレスポンスコードを生成して通信制御IC325aへ返信し、通信制御IC325aにおいて、記憶している通信制御IC325a識別情報を用いて受信したレスポンスコードの適否を判定する第3チャレンジレスポンス認証処理(図34の第2認証シーケンス)とを行なう。
このような動作制御によれば、SC325bと通信制御IC325aとの間において、一方の制御手段からチャレンジコードを他方の制御手段へ送信し他方の制御手段において記憶している識別情報を用いて受信したチャレンジコードからレスポンスコードを生成して一方の制御手段へ返信するという、チャレンジレスポンス方式の認証を行なっているために、制御手段間を送受信されるチャレンジコードやレスポンスコードが漏洩されたとしても、記憶している識別情報を特定することが困難であり、識別情報の漏洩に起因した制御手段に対する不正行為を極力防止することができる。
また、互いに暗号通信を行なうSC325bと通信制御IC325aとを備えた遊技用システムまたは遊技機器(CU3、P台2、ジェットカウンタ、POS端末等)は、SC325bと通信制御IC325aとの間で、認証方式の異なる複数種類の相互認証処理を行なう相互認証処理手段(図36の第1認証シーケンス〜バージョン管理情報応答)と、該相互認証処理手段により行なわれる複数種類の相互認証処理における各相互認証単独での認証結果が不適正な場合に該単独での認証結果を認証相手の制御手段に通知せず、複数種類の相互認証すべてを実行した結果の異常を総括して、認証相手の制御手段に通知する総括通知手段(図36:第1認証シーケンス〜バージョン管理情報応答までの認証シーケンスを総括して通知する)とを含んでいる。そして、相互認証処理手段は、総括通知手段により異常を総括して通知した後、該異常のあった制御手段間で複数種類の相互認証処理を再度行なう再認証処理を実行する(図36:第1認証シーケンス〜バージョン管理情報応答までの認証シーケンスを最大2回リトライする)。
このような動作制御によれば、認証方式の異なる複数種類の相互認証処理が第1の制御手段と第2の制御手段との間および通信制御IC325aと通信制御IC325aとの間で行なわれるために、或る1つの認証方式による相互認証のセキュリティがたとえ破られたとしても、他の異なる認証方式による相互認証によって相互認証のセキュリティを保つことができる。
また、たとえば、複数種類の相互認証処理の各相互認証の単独での認証結果が不適正な場合に該単独での認証結果を認証相手の制御手段に通知した場合には、どの種類の相互認証で不適正だったのかがわかってしまいセキュリティ上好ましくないが、総括通知手段の働きにより、各相互認証の単独での認証結果が不適正な場合に該単独での認証結果を認証相手の遊技者に通知せず、複数種類の相互認証すべてを実行した結果の異常を総括して、認証相手の制御手段に通知するために、どの種類の相互認証で異常が発生したかを見破れないようにして、セキュリティを向上させることができる。
さらに、異常を総括通知した後に、異常のあった制御手段間で再度行なう再認証処理が実行されるために、相互認証が本当に異常となるかを再度確認することができ、相互認証の信頼性を向上させることができる。
また、上記遊技用システムまたは遊技機器は、相互認証処理手段による再認証処理の結果が不適正であることを条件として、不適正な制御手段間で以降の処理を停止する停止手段(図36:リセット待ちとする)をさらに含む。
このような動作制御によれば、再認証処理の結果が不適正という信頼性の高い不適正認証の結果を条件として、不適正な制御手段間で以降の処理が停止するために、不適正でないにも拘らず以降の処理を停止する不都合を極力減少させることができる。
また、上記遊技用システムまたは遊技機器は、相互認証処理手段による再認証処理の結果が不適正であることを条件として、管理用のサーバへ異常発生の通知を行なうための処理を実行する異常通知処理手段(図36:「認証結果異常」を上位装置に通知)をさらに含む。
このような動作制御によれば、再認証処理の結果が不適正という信頼性の高い不適正認証の結果を条件として、管理用のサーバへ異常発生の通知が行なわれるために、不適正でないにも拘らず管理用のサーバへ異常発生の通知を行なう不都合を極力減少することができる。
上記の遊技用システムまたは遊技機器における相互認証処理手段は、通信制御IC325aにおいてチャレンジコードを生成してSC325bに送信し、該SC325bにおいて記憶している識別情報を用いて受信したチャレンジコードからレスポンスコードを生成して通信制御IC325aへ返信し、通信制御IC325aにおいて、記憶している識別情報を用いて受信したレスポンスコードの適否を判定する第1チャレンジレスポンス認証処理(図34の第1認証シーケンス)と、SC325bにおいてチャレンジコードを生成して通信制御IC325aに送信し、該通信制御IC325aにおいて記憶している識別情報を用いて受信したチャレンジコードからレスポンスコードを生成してSC325bへ返信し、SC325bにおいて、記憶している識別情報を用いて受信したレスポンスコードの適否を判定する第2チャレンジレスポンス認証処理(図34の第2認証シーケンス)とを行なう。
このような動作制御によれば、SC325bと通信制御IC325aとにおいて、一方の制御手段からチャレンジコードを他方の制御手段へ送信し他方の制御手段において記憶している識別情報を用いて受信したチャレンジコードからレスポンスコードを生成して一方の制御手段へ返信するという、チャレンジレスポンス方式の認証を行なっているために、両遊技手段の間を送受信されるチャレンジコードやレスポンスコードが漏洩されたとしても、記憶している識別情報を特定することが困難であり、識別情報の漏洩に起因した遊技手段に対する不正行為を極力防止することができる。
図61は、「基板認証鍵による認証」の具体的制御を説明するためのフローである。図61を参照して、以下説明する一連の処理は、CU制御部323とSC325bとの間において行なわれる。
ステップS201において、チャレンジレスポンス方式を用い、基板シリアルIDを使用した認証処理(単体認証)が行なわれる(図54の基板シリアルID認証要求/応答1,2参照)。
そして、ステップS201の単体認証が完了すると、次のステップS202において鍵バージョンのチェックが行なわれる(図54のバージョン情報通知/応答参照)。
そして、ステップS202の鍵バージョンのチェックが完了すると、次のステップS203において、基板認証鍵を使用した認証が行なわれる(図54の基板認証鍵認証要求/応答1,2参照)。
そして、ステップS203の認証処理が完了すると、次のステップS204において、ステップS201〜S203の認証結果を相互に通知を行ない、次のステップS205に処理が進む(図54の基板認証結果通知/応答参照)。
ステップS205において、通知された認証結果が正常か否かが判断され、認証結果が正常である場合にはステップS206に処理が進み、認証結果が正常でない場合にはステップS207に処理が進む。
ステップS206において、CU制御部323がSC325bから取得するセキュリティ基板情報を有しているか否かがさらに判断され、取得するセキュリティ基板情報を有している場合には、ステップS209に処理が進み、取得するセキュリティ基板情報を有していない場合には、ステップS210に処理が進む。
ステップS209においては、CU制御部323−SC325b間の基板認証鍵の認証処理について、さらにセキュリティ基板情報の問合せ処理へ遷移し、処理が終了する。一方、ステップS210は、基板認証鍵モードの認証を正常に終了し、処理が終了する。なお、この場合には、CU制御部323−SC325b間は遊技機チップ情報の照合の処理が行なわれる。
一方、ステップS205において、認証結果が正常でない場合には、ステップS206に処理が進み。このステップS206においてこのリトライ回数が3回目か否かが判断され、リトライ回数が3回目でない(リトライ回数が1回目か2回目である)場合には、処理がステップS201に戻り、再度認証処理が行なわれる。
S207にてリトライ回数が3回目と判断された場合には、S2071に進み、現在の基板認証鍵での認証実績があるか否かが判断される。すなわち、今回、認証結果が異常と判断された基板認証鍵が前回の認証では正常に認証された実績があるか、あるいは、その基板認証鍵が更新直後で初めて認証判定された鍵であって認証実績のない鍵であるか、が判断される。
認証実績が有ると判断された場合には、S2072に進み、鍵記憶エリア不良と判別される。これは、認証実績の有る鍵が今回の認証で異常と判定されたということは、その鍵を記憶しているエリア自体に異常が発生した結果、鍵が前回のものとは異なるものとなったと考えられるからである。これに対して、認証実績がないと判断された場合には、S2073に進み、基板認証鍵更新異常と判別される。これは、認証実績がない鍵であって更新直後の鍵であることから、鍵の更新過程に異常が発生したと考えられるからである。
その後、S2074に進み、S2072およびS2073のそれぞれの判別結果に対応するエラー情報を含む認証結果が鍵管理サーバ801(図4参照)へ送信される。その後、S208に進む。ここで、エラー情報は、基板認証鍵シーケンスの認証が認証NGになったことをその原因(鍵記憶エリア不良、基板認証鍵更新異常)とともに示す「基板認証鍵認証異常」である。
たとえば、S205、S207、S2071〜S2073の判定をSC325bが行なった場合には、S2074ではSC325bがエラー情報を認証結果に含めて送信する。一方、それらの判定をCU制御部323が行なった場合には、S2074ではCU制御部323がエラー情報を認証結果に含めて送信する。その場合、SC325bおよびCU制御部323のいずれにおいてエラー判定されたかを特定可能なデータをエラー情報に含めて送信するようにしてもよい。なお、この実施の形態では、S2071〜S2074の処理をCU制御部323およびSC325bの双方で互いに実行するものとしているが、このような処理を実行する機能をSC325bのみに設けてもよく、あるいはCU制御部323のみに設けてもよい。
また、エラー情報は、鍵管理サーバ801に代えて、あるいは鍵管理サーバ801に加えて、たとえば、通信制御IC325a経由でP台2の払出制御部171へ送信されるようにしてもよい。この場合、エラー情報を受けた払出制御部171は、発射制御基板31を介して発射モータ18を停止させ、遊技不能状態とするようにしてもよい。なお、遊技不能状態とすることに代えて、あるいはこれに加えて、エラー情報をP台2の表示器54に表示するようにしてもよい。
さらには、SC325b側で認証結果異常と判定された場合には、SC325bは認証結果(失敗)をCU制御部323に通知するとともに上記のエラー情報を通信制御IC325a経由でP台2の払出制御部171へ送信するようにし、CU制御部323側で認証結果異常と判定された場合には、CU制御部323は認証結果(失敗)SC325bに通知するとともに上記のエラー情報を鍵管理サーバ801に送信するようにしてもよい。
ステップS208において、認証異常として、リセット動作(たとえば、リセットボタン(図示省略)の操作や電源再投入など)まで待機状態となる。リセット動作後において、再度基板初期鍵を暗号鍵として認証処理を行なうモード(基板初期鍵モード)で起動され、各認証処理が行なわれ、処理が終了する。この場合には、その日の営業は1日中この基板初期鍵モードで運用され、翌日の電源立上時に再度鍵管理サーバに対しセキュリティ基板情報取得要求を出し、セキュリティ基板情報の取得を試みる(図59)。また、ステップS208aに示したように、翌日の電源立上を待つことなくこの時点でセキュリティ基板情報の問合せ処理を再度実行してもよい。この場合には、基板初期鍵モードでの運用により遊技を進行させつつセキュリティ基板情報の問合せ処理も並行して進行させる。
図62(a)は、CU制御部−SC間での通信モードの切替処理を説明するためのフローチャートの一例である。図62(a)を参照して、ステップS211において、CU制御部323は鍵管理サーバに基板認証鍵の要求を行ない、次のステップS212に処理が進む。
そして、ステップS212において、CU制御部323は鍵管理サーバから送られてきたセキュリティ基板情報の中から基板認証鍵を取得するとともに、セキュリティ基板情報中の更新情報をSC325bへ送信し、次のステップS213に処理が進む。
ステップS213において、CU制御部323は遊技機が非稼動状態か否かの判定を行なう。次のステップS214のモード切替処理を行なったときにはその切替処理の実行中遊技機との加減算玉数の通信処理ができなくなるため、ステップS214のモード切替処理を行なう前に遊技機が非稼動状態か否かの判定を行なうのである。遊技機が非稼動状態か否かは、CUに遊技者のカードが挿入されていないか挿入されているかで判断する。カードが挿入されていない場合には遊技機が非稼働状態と判断する一方、カードが挿入されている場合には遊技機が稼働状態と判断する。CU制御部323に対応する遊技機が非稼動状態である場合には、ステップS214に処理が進み、CU制御部323に対応する遊技機が非稼動状態でない場合には、遊技機が非稼動状態になるまでステップS213の処理が行なわれる。
ステップS214において、CU制御部323は、ステップS212において取得した基板認証鍵に基づいて、基板初期鍵を暗号鍵として処理を進めるモード(基板初期鍵モード)から基板認証鍵を暗号鍵として処理を進めるモード(基板認証鍵モード)へ通信モードを切り替えて、処理が終了する。
図62(b)は、SC−通信制御IC間での通信モードの切替処理を説明するためのフローチャートの一例である。図62(b)を参照して、ステップS216において、SC325bがCU制御部323からの更新情報を取得する。前述したようにCU制御部323はステップS212により更新情報をSC325bへ送信する。それを受けたSC325bは、その更新情報を取得する。次に、ステップS217においてSC325bは、取得した更新情報から本認証鍵を生成する。次に、前述のステップS213と同様に、ステップS218においてSC325bは、遊技機が非稼動状態か否かの判定を行ない、非稼動状態であることを条件として、ステップS219の処理を実行する。ステップS219においてSC325bは、生成した本認証鍵に基づいて、SC325bと通信制御IC325aとの通信モードについて仮認証鍵を暗号鍵として処理を進めるモード(仮認証鍵モード)から本認証鍵を暗号鍵として処理を進めるモード(本認証鍵モード)へ切替える。
このような実施の形態によれば、CUの正当性が鍵管理サーバに登録された基板認証鍵によって認証される前に通常の通信モードとなってカード残額等を用いたP台での遊技が可能となることを防止できる。さらに、鍵管理サーバに登録された基板認証鍵を受信できないときでも、制限通信モードとなり、P台での遊技が許容されるため、柔軟な運用が可能となる。しかも、その場合には通常通信モードに比べて所定の制限の下で遊技が許容されるものとなるため、鍵管理サーバに記憶された基板認証鍵での認証が必要とされることなく運用が続けられてしまうことを防止できる。
図63(a)(b)は、通信モードの切替処理を説明するためのフローチャートの他の例である。CU制御部−SC間での通信モードの切替処理を示す図63(a)を参照して、ステップS221において、CU制御部323は鍵管理サーバにセキュリティ基板情報の要求を行ない、次のステップS222に処理が進む。
そして、ステップS222において、CU制御部323が鍵管理サーバに要求したセキュリティ基板情報をホールサーバ801が鍵管理サーバから取得し、そのセキュリティ基板情報の中から基板認証鍵をホールサーバ801が取得する。次に、ステップS223においてホールサーバ801は、前述のステップS213と同様の趣旨より、セキュリティ基板情報を要求したCU制御部323に対応する遊技機が非稼動状態か否か判定する。遊技機が非稼動状態になったときにホールサーバ801はステップS224において、取得した基板認証鍵をCU制御部323へ送信し、それを受けたCU制御部323はセキュリティ基板情報中の更新情報をSC325bへ送信する。次に、ステップS225においてCU制御部323は、ステップS2224において取得した基板認証鍵に基づいて、基板初期鍵を暗号鍵として処理を進めるモード(基板初期鍵モード)から基板認証鍵を暗号鍵として処理を進めるモード(基板認証鍵モード)へ通信モードを切り替えて、処理が終了する。
次に、SC−通信制御IC間での通信モードの切替処理を示す図63(b)を参照して、ステップS226において、SC325bがCU制御部323からの更新情報を取得する。前述したようにCU制御部323はステップS224により更新情報をSC325bへ送信する。それを受けたSC325bは、その更新情報を取得する。次に、ステップS227においてSC325bは、取得した更新情報から本認証鍵を生成する。次に、ステップS228においてSC325bは、生成した本認証鍵に基づいて、SC325bと通信制御IC325aとの通信モードについて仮認証鍵を暗号鍵として処理を進めるモード(仮認証鍵モード)から本認証鍵を暗号鍵として処理を進めるモード(本認証鍵モード)へ切替える。
このような実施の形態によれば、制限通信モードにおいてホールサーバ801が鍵管理サーバから基板認証鍵を受信したときでも、P台が稼動中のときには、即座にその基板認証鍵がCUに送信されて通常通信モードに切り換わるのではなく、遊技機が非稼働状態になったことを条件にして基板認証鍵がホールサーバ801からCUに送信されて通常通信モードに切り換わるため、制限通信モードにおいて提供されていた遊技に何らかの影響を与えてしまい、遊技者が不利益を被ることを防止できる。
<SC325bとCU制御部323との認証動作>
次に、統一店舗コードのチェック、基板メーカコードの認証についてさらに詳しく説明する。
まず、図64を参照して、SC325bによる統一店舗コードのチェック処理を説明する。この処理は、SC325bが、基板接続要求時に通知される統一店舗コードと前回通知された統一店舗コードをチェックして、不一致の場合に設置された店舗が変わったと判断する認証動作である。SC325bは、記憶している前回の統一店舗コードがダミーコードであるか否かを判断する(ステップS1101)。なお、統一店舗コードのダミーコードは、たとえば、すべてのデータが“0xFF”である。このダミーコードは、CU3が遊技場(店舗)に設置される前の出荷時の段階で通常の統一店舗コードの代わりに用いられるものであり、出荷時の段階でSC325bに既に記憶されている。そして出荷時にダミーコードをCU制御部323経由でSC325bに入力して、SC325bがその入力されたダミーコードと記憶しているダミーコードとを一致判定して認証する。また、ダミーコードは、新装開店の遊技場(ホール)のため未だ統一店舗コードを取得していない場合に仮の店舗コードとして当該遊技場のホールサーバ801にデフォルトとして記憶されている。そして、新装開店の遊技場に設置されたCU3にホールサーバ801からダミーコードをダウンロードさせてSC325bがそのダウンロードされたダミーコードと記憶しているダミーコードとを一致判定して認証し、P台2による遊技を可能にする。
正規の統一店舗コードを取得したホールサーバ801はCU制御部323へその統一店舗コードを送信する。それを受けたCU制御部323は、次の電源投入時における基板接続要求時にその統一店舗コードをSC325bへ送信する。それを受けたSC325bは、記憶している前回の統一店舗コードがダミーコードであると判断した場合(ステップS1101:YES)、基板接続要求時にホールサーバ801から通知された統一店舗コードに記憶を更新するが、基板認証鍵、本認証鍵情報を初期化しないで、前回の各認証モードを引継いで動作する。その後、SC325bは、認証ログ情報を保存する(ステップS1106)。基板認証鍵、本認証鍵情報の初期化は、或る遊技場に設置されていたCU3が他の遊技場に移設されたときに必要となる処理であるが、SC325bに記憶されているダミーコードを統一店舗コードに更新する場合には、前述した新装開店の遊技場が正規に統一店舗コードを取得してその統一店舗コードをCU3にダウンロードした場合であり、店舗が代わったわけではなく、基板認証鍵、本認証鍵情報の初期化は不要である。逆にこのような場合に基板認証鍵、本認証鍵情報の初期化すると、再度基板認証鍵の取得要求が必要となり、1営業日での基板初期鍵運用(時限運用)が多くなり、時限運用猶予期間が少なくなる不都合が生じる。このような不都合を回避するために基板認証鍵、本認証鍵情報の初期化を行なわないように制御している。
一方、SC325bは、記憶している前回の統一店舗コードがダミーコードでないと判断した場合(ステップS1101:NO)、基板接続要求時にホールサーバ801から通知された統一店舗コードと、記憶している前回の統一店舗コードとが一致しているか否かを判断する(ステップS1102)。
SC325bは、基板接続要求時にホールサーバ801から通知された統一店舗コードと、記憶している前回の統一店舗コードとが一致していると判断した場合(ステップS1102:YES)、認証処理を基板初期鍵認証シーケンスへ遷移、あるいは、基板認証鍵認証シーケンスへ遷移する(ステップS1103)。なお、SC325bは、前回の認証モードが基板認証鍵モードである場合、基板認証鍵認証シーケンスへ遷移し、前回の認証モードがそれ以外の認証モードである場合、基板初期鍵認証シーケンスへ遷移する。
一方、SC325bは、基板接続要求時にホールサーバ801から通知された統一店舗コードと、記憶している前回の統一店舗コードとが一致していないと判断した場合(ステップS1102:NO)、基板認証鍵情報、および本認証鍵情報を初期化(クリア)する(ステップS1104)。このような統一店舗コードの不一致は、或る遊技場に設置されていたCU3が他の遊技場に移設されたときに生じる。CU3が他の遊技場に移設されたため、前の遊技場で使用していた基板認証鍵情報および本認証鍵情報を初期化(クリア)してセキュリティを担保するのである。なお、SC325bは、CU制御部323から通知される統一店舗コードが変更になった場合、本認証鍵の初期化(クリア)を通信制御IC325aに設定して、仮認証鍵による認証を開始する。なお、SC325bが本認証鍵情報を初期化(クリア)した場合に、通信制御IC325aも本認証鍵情報を初期化(クリア)するように制御してもよく、また、特にそのような制御を行なうことなく次回の通信制御IC325aとの認証のときにSC325bが本認証鍵がないため仮認証鍵での認証に戻るようにしてもよい。
また、SC325bは、ステップS1104で基板認証鍵情報、および本認証鍵情報を初期化(クリア)した後、認証処理を基板初期鍵認証シーケンスおよび仮認証鍵シーケンスへ遷移する(ステップS1105)。
SC325bは、ステップS1103で認証処理を基板初期鍵認証シーケンスへ遷移、あるいは、基板認証鍵認証シーケンスへ遷移した後、ステップS1104で認証処理を基板初期鍵認証シーケンスへ遷移した後、認証ログ情報を保存する(ステップS1106)。
図65は、基板メーカコードの認証動作を説明するためのフローチャートである。基板メーカコードの認証は、SC325bとCU制御部323とが、それぞれ初期情報として記憶している基板メーカコードを使用した認証を行なう認証動作である。図65を参照して、まず、SC325bとCU制御部323とは、記憶している基板メーカコードを使用したチャレンジ/レスポンス方式による単体認証を行なう。(ステップS1201)。なお、単体認証時に生成するレスポンスコードは、たとえば、記憶している基板メーカコードを鍵にしてチャレンジコードをブロック暗号化した後にハッシュ関数でハッシュ化することで生成される。
SC325bは、生成したチャレンジコードに対してCU制御部323が生成したレスポンスコードをチェックした認証結果が正常か否かの判断を行なう(ステップS1202)。SC325bは、認証結果が正常であると判断した場合(ステップS1202:YES)、既に基板認証鍵で認証済みであるか否かを判断する(ステップS1203)。一方、SC325bは、認証結果が正常でない(異常)と判断した場合(ステップS1202:NO)、n回(たとえば3回)連続して異常であるか否かを判断する(ステップS1204)。
SC325bは、既に基板認証鍵で認証済みであると判断した場合(ステップS1203:YES)、基板認証鍵の認証処理へ遷移し、基板認証鍵認証シーケンスを維持する(ステップS1205)。一方、SC325bは、既に基板認証鍵で認証済みでないと判断した場合(ステップS1203:NO)、基板初期鍵の認証処理へ遷移する(ステップS1206)。
SC325bは、n回連続して異常でないと判断した場合(ステップS1204:NO)、処理をステップS1201に戻す。一方、SC325bは、n回連続して異常であると判断した場合(ステップS1204:YES)、セキュリティを担保するために基板認証鍵情報および本認証鍵情報を初期化(クリア)する(ステップS1207)。これにより、基板認証鍵情報および本認証鍵情報が盗用される不都合を防止できる。その後、SC325bは、基板初期鍵の認証処理へ遷移する(ステップS1208)。
SC325bは、ステップS1205で基板認証鍵認証シーケンスを維持、またはステップS1206、S1208で基板初期鍵の認証処理へ遷移した後、認証ログ情報を保存する(ステップS1209)。
図66は、受信間隔監視処理を説明するためのフローチャートである。受信間隔監視処理は、SC325bが実行する処理である。はじめに、SC325bは電文を受信したか否かを判定する(S10)。
CU制御部323は規定時間を計時するタイマ(計時手段)と、SC325bと接続され電文を送信するための通信部(通信手段)とを備えており、SC325bに対して規定時間間隔(たとえば、200ms)毎に電文を送信する。このため、CU制御部323は、ある電文を送信してから規定時間だけその電文に対する応答電文の受信を待機し、応答電文を受けて次の電文を送信する。また、CU制御部323は、ある電文を送信してから規定時間だけその電文に対する応答電文の受信を待機し、もし、応答電文を受信できなければ、同じ内容の電文を再送する。そして、2回目の電文の再送に対して応答電文を受信できなければ、通信断と判定する。
一方、SC325bはCU制御部323から規定時間間隔(たとえば、200ms)毎に各種の要求電文を受けて、それに対応する応答電文を返信する。S10においてNOの場合、処理が終了する。S10においてYESの場合、規定時間間隔前の受信であるかを判定する(S11)。
S11において、前回の電文受信時から規定時間間隔前の受信であると判定したときには、このように規定時間間隔前の電文を受信する回数が連続してn1(ただし、n1>1)回目に達したか否かを判定する(S12)。このように、本来、規定時間間隔毎に受信されるべき電文が、連続して規定時間間隔前に次々と送信されてくるような状況は、通常発生し得ない。このような状況は、たとえば、SC325bの動作を不正解析する目的で、短時間で次々と様々な電文を外部から送信しているような場合に発生し得る。そこで、S12においてNOの場合には処理が終了するが、YESの場合にはエラー情報を送信する(S13)。
このエラー情報は、たとえば、通信制御IC325a経由でP台2の払出制御部171へ送信される。エラー情報を受けた払出制御部171は、発射制御基板31を介して発射モータ18を停止させ、遊技不能状態とする。なお、遊技不能状態とすることに代えて、あるいはこれに加えて、エラー情報をP台2の表示器54に表示するようにしてもよい。あるいは、S13においては、エラー情報をCU制御部323に送信するものとしてもよい。
S13の処理の後、S10で受信した電文に対する応答電文の送信を禁止する(S14)。さらに、CU制御部323からの電文の受信機能を停止する(S15)。S14およびS15の結果、解析目的で応答電文を得ようとする不正行為を防止できる。
なお、このフローチャートでは、規定時間間隔前の電文を受信する回数が連続してn1回目に達した場合に連続回数としたが、規定時間間隔前の電文を1回でも受信すると、S12でNOと判定されるようにしてもよい。
また、S13〜S15のいずれか1つまたは2つの処理のみが実行されるようにしてもよい。さらには、S14およびS15の処理に代えて、受信した電文に対して応答するタイミングを通常時よりも遅らせるようにしてもよい。たとえば、通常は、相手(CU制御部323)が電文を送信してから200msで応答電文が相手に到達するように応答電文を送信するが、その間隔を長く(たとえば通常の3倍等)するようにしてもよい。これにより、仮に電文を通常より短い時間間隔で送るような不正行為が行なわれたとしても、それに対する応答がスローになるため、不正解析の効率を極めて悪いものとして、不正改正を困難にすることができる。
さらに、応答電文の送信をスローにする処理と、応答電文の送信を禁止する処理(S14)とを組み合せてもよい。たとえば、S12でYESと判定されたときには、応答電文の送信をスローにする処理を実行し、その後、応答電文の送信から規定時間間隔以内の電文受信を所定数検出したときに、S14の応答電文の送信を禁止する処理を実行するようにしてもよい。
また、図66に示すような受信間隔監視処理は、SC325bのみではなく、相手からの電文を受信するいずれの装置が行なうようにしてもよい。たとえば、CU制御部323は、上位サーバ(たとえば、鍵管理サーバ)から送信されてくる電文に関して受信間隔監視処理を実行してもよい。また、通信制御IC325aは、SC325bから送信されてくる電文に対して受信間隔監視処理を実行してもよい。あるいは、払出制御部171は、通信制御IC325aから送信されてくる電文に対して受信間隔監視処理を実行してもよい。この場合には、CU3と遊技機(たとえば、P台2)との間で受信間隔監視処理が実行されることになる。その他、CU3、P台2、ジェットカウンタ、POS端末等の複数の遊技機器間の送受信の処理においてこの処理を適用してもよい。
図67は、異常電文監視処理を説明するためのフローチャートである。異常電文監視処理は、SC325bが実行する処理である。はじめに、SC325bは電文を受信したか否かを判定する(S20)。S20においてNOの場合、処理が終了する。S20においてYESの場合、受信した電文がコマンド異常電文であるか否かを判定し(S21)、コマンド異常電文でない場合には、受信電文が通信異常電文であるか否かを判定する(S26)。
ここで、通信異常電文とは、CRC(Cyclic Redundancy Check)により誤り検出された
電文や、データ長が予め定められた長さと異なることが検出された電文など、本来は正規の電文で送信されあるいは送信される予定であったにも関わらず電文生成過程でのエラー発生あるいは通信回線上のノイズ等の影響を受けて本来の電文からデータ化けして到着した電文である。
これに対して、コマンド異常電文とは、データ長が正しく、CRCでの誤りも検出されないものの、電文に含まれるコマンドコードが予め定められたものとは異なる電文である。そうであるから、コマンド異常電文は、不正な動作を引き起こすこと等を目的とした不正電文の可能性がある。
S26で通信異常電文でもないと判断された場合には、正常な電文を受信したことになるから、異常電文監視処理を終了する。これに対して、S26で通信異常電文と判定したときには、このような通信異常電文の連続受信回数がn3回に達したか否かを判定する(S27)。ここで、n3はたとえば「3」である。そして、n3回に達していない場合にはCU制御部323へ電文の再送を要求する(S25)。つまり、通信異常電文を受信した場合には、2回の再送が許される。
そして、初回の電文の受信を含めて、合計、n3回だけ受信した電文のすべてが通信異常電文である場合には、S27でYESとなり、CU‐SC間通信異常と判定する(S28)。この場合、CU‐SC間通信異常情報を送信する(S29)。
CU‐SC間通信異常情報は、たとえば、通信制御IC325a経由でP台2の払出制御部171へ送信される。CU‐SC間コマンド異常情報を受けた払出制御部171は、発射制御基板31を介して発射モータ18を停止させ、遊技不能状態とする。なお、遊技不能状態とすることに代えて、あるいはこれに加えて、CU‐SC間コマンド異常情報をP台2の表示器54に表示するようにしてもよい。あるいは、S29においては、CU‐SC間通信異常情報をCU制御部323に送信するものとしてもよい。
一方、S21において受信電文がコマンド異常電文と判定すると、このようなコマンド異常電文の連続受信回数がn2回に達したか否かを判定する(S22)。ここで、n2はたとえば「4」であり、通信異常電文に関する閾値n3を「3」とした場合に比べて、その閾値が1つ大きい。
S22においてNOと判定した場合にはCU制御部323に対して電文の再送を要求する。つまり、コマンド異常電文を受信した場合には、4回の再送が許される。
そして、初回の電文の受信を含めて、合計、n2回だけ受信した電文のすべてがコマンド異常電文である場合には、S22でYESとなり、CU‐SC間コマンド異常(不正)と判定する(S23)。この場合、CU‐SC間コマンド異常情報を送信する(S24)。
CU‐SC間コマンド異常情報は、たとえば、通信制御IC325a経由でP台2の払出制御部171へ送信される。CU‐SC間コマンド異常情報を受けた払出制御部171は、発射制御基板31を介して発射モータ18を停止させ、遊技不能状態とする。なお、遊技不能状態とすることに代えて、あるいはこれに加えて、CU‐SC間コマンド異常情報をP台2の表示器54に表示するようにしてもよい。あるいは、S29においては、CU‐SC間通信異常情報をCU制御部323に送信するものとしてもよい。
このように、コマンド異常電文に関する閾値を通信異常電文に関する閾値と異ならせることにより、単なるデータ化けによる電文の再送と、不正コマンドが送信されている可能性とを区別することができる。特に、コマンド異常電文に関する閾値を、単なるデータ化けによる電文の再送の場合の閾値よりも大きくすることによって、通常のデータの再送制限回数(初回を入れてn3)を超えてもなお異常なコマンドコードを含む電文が繰り返し送信されてきていることを確認できることになり、不正の可能性が高い状況を判定でき、その判定に基づいて不正の可能性があることを通知できる。
図68は、遊技機チップ問合せ処理を説明するためのフローチャートである。遊技機チップ問合せ処理は、CU制御部323が実行する処理である。この処理の一例は、図56(遊技機チップ情報問合せシーケンス)と図60(遊技機チップ情報問合せタイムアウトシーケンス)とに示した。
はじめに、CU制御部323は遊技機チップ問合せ指示通知を送信する(S30)。これによって、SC325bに対して、鍵管理サーバに問合せする遊技機チップ情報を要求する。なお、この遊技機チップ問合せ指示通知を受けたSC325bは、通信制御IC325a経由でP台2に対して遊技機チップ情報を要求する。
次に、問合せ待ちタイマをリセットする(S31)。問合せ待ちタイマは、遊技機チップ問合せ指示通知に対する応答待ち時間を計時するためのタイマであり、遊技機チップ問合せ指示通知の送信毎にリセットされ、新たに計時が開始される。
次に、SC325bより遊技機チップ問合せ結果を受信したか否かを判定する(S32)。遊技機チップ問合せ結果には、チップ情報の取得できたか否かを示す取得結果、メーカコード、基板シリアル番号、メインチップID、払出チップID等が含まれる。遊技機チップ問合せ結果を受信していない場合には、問合せタイマがタイムアウトしたか否かを判定する(S33)。タイムアウトした場合にはタイムアウト処理を実行する(S38)。タイムアウト処理では、図60に示したように状態情報要求が送信され、状態情報応答(チップ情報問合せ有)の待ち状態となる。
S33において問合せタイマがタイムアウトしていない場合には鍵管理サーバより、動作指定が遊技機チップ情報問合せ要求であるヘルスチェックを受信したか否かを判定する(S34)。つまり、鍵管理サーバから遊技機チップ情報の問合せ要求を受けたか否かを判定する。鍵管理サーバから遊技機チップ情報の問合せ要求を受けていた場合には、遊技機チップ問合せ指示通知をSC325bへ送信し(S35)、問合せ待ちタイマをリセットする(S36)。これによって、問合せ待ちタイマによる計時が最初から開始される。その後、S32に移行する。
つまり、既に遊技機チップ問合せ指示通知を送信済みであって、それに対する応答待ちの間であっても、それとは別個に新たに鍵管理サーバから遊技機チップ情報の問合せ要求を受けた場合には、改めて遊技機チップ問合せ指示通知を送信する。
このように処理することによって、全国に存在する数多くのホール(ホール内のCU)と接続されている鍵管理サーバからの要求に対して迅速に応答を返信することが可能になる。すなわち、ヘルスチェック要求による「遊技機チップ情報問い合わせ要求」は鍵管理サーバからの強制指示であるので、CU制御部323からの要求に応じてSC325bが遊技機チップ情報問い合わせ中モードでも確実に鍵管理サーバに情報が届くまでCU制御部323は遊技機チップ情報の問い合わせを実行する。
S34において、鍵管理サーバよりヘルスチェック(動作指定=遊技機チップ情報問合せ要求)を受信してない場合、S32に戻り、遊技機チップ問合せ結果を受信したか否かを判定するステップに移行する。
やがて、S32において、遊技機チップ問合せ結果を受信すると、その結果を上位サーバ(鍵管理サーバ)へ送信し(S37)、処理を終える。
なお、ここでは、ヘルスチェック(動作指定=遊技機チップ情報問合せ要求)の場合を例に挙げて説明したが、上記の処理は、CU制御部323がヘルスチェック(動作指定=セキュリティ基板情報問合せ要求)を受信した場合にも同様に行なわれる。
すなわち、図55および図59を参照して、CU制御部323は、セキュリティ基板問合せ指示通知をSC325bに送信し、セキュリティ基板情報問合せタイムアウトまでSC325bからの応答を待つ。ただし、タイムアウトする前に、上位サーバ(鍵管理サーバ)よりヘルスチェック(動作指定=セキュリティ基板情報問合せ要求)を受信すると、CU制御部323は、タイムアウトを待つことなく、セキュリティ基板問合せ指示通知をSC325bに再送する。
<暗号モードについて>
次に、図69〜図73に基づいて、CU制御部323とSC325bとの間でのコマンドとレスポンスとの実際の暗号通信の動作を説明する。図69は暗号通信文を受信した受信側において適正に復号された場合の定常時における暗号通信が示されている。図70は、SC325bからCU制御部323へのレスポンスが到達しなかった場合の異常時の処理が示されている。図71は、CU制御部323からSC325bへのコマンドが到達しなかった場合の異常時の処理が示されている。図72は、図70に示したレスポンス未到達の異常時における変形例の処理が示されている。図73は、図71に示したコマンド未到達の異常時処理における変形例が示されている。
以下、図69〜図73の暗号化処理を説明するが、CU制御部323からSC325bへの暗号化通信を行なうときは初期ベクタ部の値R1の下り用カウンタが使用され、SC325bからCU制御部323への暗号化通信を行なうときは初期ベクタ部の値R2の上り用カウンタが使用される。
まず図69に基づいて正常時の処理を説明する。CU制御部323とSC325bとの間での動作指示およびレスポンスとして、データ長が48バイトの倍数の一例の96バイトのものを取り上げて説明する。
図69を参照して、CU制御部323では、96バイトの平文を16バイト毎の6つのブロックに分割し、各ブロックの平文1〜6を1つずつ暗号化する。最初のブロックである平文1は、下り用カウンタの値がR1,N,0となっており、そのカウンタの値を前述したように暗号化し、その暗号化された値と平文1とでエクスクルーシブオアの演算を行なって暗号文1を生成する。同様に、暗号文2の生成に際してはR1,N,1の下り用カウンタの値を用い、暗号文2の生成に際してはR1,N,2の下り用カウンタの値を用い、暗号文4の生成に際してはR1,N,3の下り用カウンタの値を用い、暗号文5の生成に際してはR1,N,4の下り用カウンタの値を用い、暗号文6の生成に際してはR1,N,5の下り用カウンタの値を用いる。
この6つのブロックからなる暗号文1〜6を受信したSC325bでは、図38で説明したようにカウンタの値を更新しながら随時暗号文を復号して平文を生成する。復号開始時の下り用カウンタの値すなわち最初の暗号文1を復号するのに用いるカウンタの値がR1,N,0となっており、その値を暗号化してその暗号化した値と暗号文1とのエクスクルーシブオアを演算して復号し、平文1を生成する。同様に、暗号文2、暗号文3、暗号文4、暗号文5、暗号文6も、随時暗号ブロックカウンタ部の値を「1」ずつ加算更新し、復号処理を行なう。具体的には、暗号文2に対してはR1,N,1の下り用カウンタ値を用い、暗号文3に対してはR1,N,2の下り用カウンタ値を用い、暗号文4に対してはR1,N,3の下り用カウンタ値を用い、暗号文5に対してはR1,N,4の下り用カウンタ値を用い、暗号文6に対してはR1,N,5の下り用カウンタ値を用いて復号する。
次にSC325bがレスポンスを暗号化してCU制御部323へ送信する。その際に、SC325bは上り用カウンタを用いるため「R2,N,0」のカウンタ値が最初に用いられる。この上り用カウンタのカウンタ値を暗号化してその暗号化された値とレスポンスの最初の平文1とでエクスクルーシブオアの演算を行ない暗号文1を生成する。次にSC325bは、暗号ブロックカウンタ部を「1」加算更新してR2,N+1,1の値を用いて暗号文2を生成する。同様に、暗号ブロックカウンタ部を「1」ずつ加算更新しながら、暗号文3、暗号文4、暗号文5、暗号文6を生成し、それら暗号文からなるレスポンスをCU制御部323へ送信する。
この6つのブロックからなる暗号文1〜6を受信したCU制御部323では、図38で説明したようにカウンタの値を更新しながら随時暗号文を復号して平文を生成する。復号開始時の上り用カウンタの値すなわち最初の暗号文1を復号するのに用いるカウンタの値がR2,N,0となっており、その値を暗号化してその暗号化した値と暗号文1とのエクスクルーシブオアを演算して復号し、平文1を生成する。そして、前述と同様に、暗号ブロックカウンタ部を随時加算更新しながら暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を随時復号して平文2、平文3、平文4、平文5、平文6を生成する。
次回以降は、SC325bでは、前回受信した暗号文の復号に用いた電文カウンタ部の値「N」に対して「1」加算更新し、R1,N+1,0のカウンタ値を用いて、レスポンスの最初の暗号文1を復号する。そして、前述と同様に、暗号ブロックカウンタ部を随時加算更新しながら暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を随時復号して平文2、平文3、平文4、平文5、平文6を生成する。
また、CU制御部323では、前回受信した暗号文の復号に用いた電文カウンタ部の値「N」に対して「1」加算更新し、R2,N+1,0のカウンタ値を用いて、レスポンスの最初の暗号文1を復号する。そして、前述と同様に、暗号ブロックカウンタ部を随時加算更新しながら暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を随時復号して平文2、平文3、平文4、平文5、平文6を生成する。
このような方法により、CU制御部323とSC325bとの間で、下り用カウンタ、上り用カウンタをそれぞれ用い、送信データの暗号化および受信データの復号処理を行なう。
次に図70を参照して、SC325bからCU制御部323へのレスポンスが到達しなかった異常時における処理を説明する。まずCU制御部323からSC325bへ6ブロックの暗号文1〜6からなるコマンドが送信される。その各ブロックに用いられる下り用カウンタのカウンタの値は、最初がR1,N,0であり、暗号ブロックカウンタ部が「1」ずつ加算されて最後の値がR1,N,5となっている。この暗号文を受信したSC325bは、暗号開始時のカウンタ値R1,N,0を用いてまず暗号文1を復号して平文1を生成する。次に暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を随時暗号ブロックカウンタ部を加算更新しながら復号して平文2、平文3、平文4、平文5、平文6を生成する。
そしてSC325bは、上り用カウンタのカウンタ値である「R2,N,0」の値を用いて、レスポンスの最初のブロックの平文1を暗号化して暗号文1を生成する。次に暗号ブロックカウンタ部の値を「1」ずつ加算更新して暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成してCU制御部323へ送信する。その暗号文1〜6からなるレスポンスがCU制御部323に到達しなかった場合には、CU制御部323は、前回送信したコマンドと同じコマンドのデータをSC325bへ再送信する。その再送信された暗号文をSC325bが復号する際に、SC325bの前回受信した暗号文の復号に用いた電文カウンタ部の値がNであるために、今回復号するに際して、最初に用いる下り用カウンタのカウンタの値として「R1,N+1,0」が用いられることとなる。
SC325bでは、カウンタ値R1,N+1,0を用いてまず暗号文1を復号して平文1を生成する。次に暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を随時暗号ブロックカウンタ部を加算更新しながら復号して平文2、平文3、平文4、平文5、平文6を生成する。
次にSC325bは、前回の暗号文の生成に用いた電文カウンタ部の値「N」に対して「1」加算更新し、R2,N+1,0のカウンタ値を用いて、レスポンスの最初のブロックの平文1を暗号化して暗号文1を生成する。次に暗号ブロックカウンタ部の値を「1」ずつ加算更新して暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成してCU制御部323へ送信する。
CU制御部323では、前回のSC325bからのレスポンスを受信していないため、その前回のレスポンスの復号のためのカウンタ値「R2,N,0」を用いて復号しようと試みる。しかし、その暗号文1は、カウンタの値「R2,N+1,0」を用いて暗号化されたデータであり、CU制御部323の復元開始のカウンタ値が「R2,N,0」であるため、このカウンタ値を用いて復号を試みても、正しい平文に復号することができず復号失敗となる。
正しい平文に復号することができたか否かの判断は、MACによる一般的なチェックに基づいて行なう。簡単に説明すると、CU制御部323では、最初のカウンタ値であるR2,N,0を鍵で暗号化してその値と最初の暗号文1とのエクスクルーシブオアを演算する。このような復号処理を、カウンタ値を「1」加算更新しながら暗号文2、暗号文3、暗号文4、暗号文5、暗号文6について順次実行し、その処理結果のデータに含まれているMACのデータを用いてMACチェックを行なう。具体的には、復号処理結果のデータからMACアルゴリズムに従ってMACを生成し、その生成されたMACとSC325bからの送信データに含まれているMACのデータとを比較し、一致するか否かチェックする。正常に復号されておれば一致するが、この場合には、復号に用いられるカウンタの値が狂っているために、正常に復号されておらず、MACチェックの結果両者が一致しないと判定されてMAC異常すなわち復号失敗と判定される。
このようなMAC異常すなわち復号失敗と判定された場合には、CU制御部323では、その狂ったカウンタ値を正しいカウンタ値に修復する修復処理が実行される。CU制御部323では、復号失敗と判断された暗号文の復号に最初に用いられた復号開始時のカウンタ値である「R2,N,0」に対して、その電文カウンタ部Nの値を「1」ずつ減算更新しながら順次その減算されたカウンタ値を用いて順次暗号文の復号処理を行なって前述のMACチェックを行ない、正しく復号されたか否かの判断を行なう。このカウンタ値の減算処理を所定回数行なってもMACチェックの結果MAC異常と判定された場合に、CU制御部323は、次に、復号開始時のカウンタ値である「R2,N,0」に対してその電文カウンタ部Nを「1」ずつ加算更新して順次その加算されたカウンタ値を用いた復号処理を行なってMACチェックを行なう。そしてMACチェックで適正と判断されて復号成功と判断された場合には、その復号が成功した平文を適正なコマンドとして取り込む。そして、復号成功と判断されたときに用いた電文カウンタ部のカウンタ値を次のレスポンスデータの最初の平文1の暗号化に用いる。
この図70の場合には、復号開始時のカウンタ値である「R2,N,0」から電文カウンタ部Nを1回加算更新したカウンタ値「R2,N+1,0」を用いて復号することにより、MAC正常と判断されて復号成功と判断されることとなる。
その復号成功と判断されたときに用いた電文カウンタ部の値NのR2,N+1,0のカウンタ値の電文カウンタ部の値を「1」ずつ加算更新したカウンタ値R1,N+2,0を用いて次に送信するレスポンスの最初の平文1を暗号化して暗号文1を生成する。次に「1」ずつ暗号ブロックカウンタ部を加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成してSC325bへ送信する。
それを受けたSC325bでは、「R1,N+2,0」のカウンタ値を用いて、受信した暗号文の最初の暗号文1を復号する。最初の暗号文1はカウンタ値「R1,N+2,0」のカウンタ値を用いて暗号化されたものであるために、同じカウンタ値を用いて適正に復号することが可能である。そしてSC325bは、その暗号ブロックカウンタ部を「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を復号する。
前述したカウンタの修復処理におけるカウンタ値への減算回数は、レスポンス未到達時におけるCU制御部323が動作コマンドの再送信(リトライ)を行なうリトライ回数に一致する。本実施の形態の場合には、そのリトライ回数は2回が限度であり、その2回のリトライに起因して生ずるカウンタ値の狂い以上に電文カウンタ部Nの減算更新を行なう必要はない。よって、2回を限度にカウンタ値の減算更新あるいは加算更新が行なわれる。
次に図71に基づいて、CU制御部323からSC325bへのコマンドが未到達の異常時における処理を説明する。まずCU制御部323がカウンタ値R1,N,0〜R1,N,5を用いて暗号文1〜暗号文6の6ブロックの暗号文を生成してSC325bへ送信する。しかし、その暗号文がSC325bへ到達しなかった場合には、CU制御部323は同じ内容のコマンドを再び暗号化してSC325bへ再送信するというリトライを試みる。この再送信時における暗号化に用いられる電文カウンタ部は、前回のコマンドの送信時に暗号化に用いた電文カウンタ部の値Nに「1」を加算したN+1が用いられる。よって、「R1,N+1,0」のカウンタ値を用いてCU制御部323は再送信するコマンドの最初の平文1のブロックを暗号化して暗号文1を生成する。次に、CU制御部323は、その暗号ブロックカウンタ部を「1」ずつ加算更新しながら順次暗号文2,暗号文3,暗号文4,暗号文5,暗号文6を生成してSC325bへ再送信する。
しかしその再送信された暗号文もSC325bへ到達しなかった場合には、CU制御部323は、再度同じ内容のコマンドを暗号化してSC325bへ再送信するという2回目のリトライを試みる。この2回目のリトライで送信されたコマンドがSC325bへ到達し、SC325bは、その暗号文の復号を試みる。
SC325bは、CU制御部323へ前回受信したコマンドの復号に用いた最後のカウンタ値に対して「1」加算更新した値である「R1,N,0」を用いて暗号文の最初のブロックを復号する処理を行ない、そのカウンタ値「R1,N,0」に対して暗号ブロックカウンタ部を「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6の復号を試みる。
しかし、CU制御部323の2回に亘ってのリトライの結果、CU制御部323側のカウンタ値とSC325b側のカウンタ値とが狂っているために、適正な平文に復号することができず、前述したMACチェックの結果MAC異常となり復号失敗と判断される。
するとSC325bは、前述と同様に、狂ったカウンタの修復処理を行なう。復号失敗と判断された暗号文に対して最初に用いたカウント値である「R1,N,0」に対して、電文カウンタ部Nを「1」ずつ減算更新しながら順次再送信されてきた暗号文の復号を試みてMACチェックを行なう。この減算更新の実行回数は、前述したように、リトライ回数である2回を限度に実行される。この2回に亘ってのカウンタ値の減算更新による復号を試みたとしても復号に成功しなかった場合には、SC325bは、カウンタ値「R1,N,0」の電文カウンタ部に対して「1」ずつ加算更新しながら順次暗号文を復号する処理を試みる。この加算更新を試みる回数は、コマンド未到達時におけるCU制御部323による再送信を実行するリトライ回数に一致する。本実施の形態においては、2回を限度にリトライを行なう。その結果、カウンタ値の加算更新は、リトライ回数である2回を限度に加算更新される。
そして、2回目の加算更新の結果カウンタ値が「R1,N+2,0」となり、このカウンタ値を用いて暗号文1を復号し、順次暗号ブロックカウンタ部の加算更新を行ないながら暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を復号することにより、適正な平文に復号することができ、MACチェックの結果適正と判断されて復号成功と判断される。その復号成功と判断された平文のコマンドをSC325bが取り込む。そしてそれに対するレスポンスのデータを暗号化してCU制御部323へ送信する。その暗号化に際しては、復号成功と判断された復号処理に用いられた電文カウンタ部の値「N+2」と異なり、最初に用いたカウント値である「R2,N,0」の「N」の値を用いる。よって、「R2,N,0」を用いて最初のブロックを暗号化して暗号文1を生成する。次に、暗号ブロックカウンタ部のカウント値を「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成してCU制御部323へ送信する。CU制御部323は、「R2,N,0」を用いて暗号文の最初のブロックを復号する処理を行ない、そのカウンタ値「R2,N,0」に対して暗号ブロックカウンタ部を「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6の復号を試みる。
次に、図72に基づいてレスポンス未到達時の異常時における処理の変形例を説明する。この図72は、前述した図70に対する変形例であり、ここでは主に相違点について説明する。SC325bからCU制御部323へのレスポンスが未到達の場合にCU制御部323は前回と同じコマンドを再送信するリトライを実行する。そのリトライによって再送信されたコマンド(暗号文)がSC325bに到達した場合に、図70と同様に、CU制御部323とSC325bとの間でのカウンタの値が食い違っている。その結果、SC325bにおいてその暗号文の復号を試みた場合にMACチェックの結果MAC異常となり復号失敗と判断される。この変形例においては、その復号失敗のときに復号不能と判断して復号エラーのコマンドをSC325bへ送信する。その際に、CU制御部323では、復号エラーのレスポンスを鍵Kを用いてSE1モードにより暗号化し、その暗号文をSC325bへ送信する。SC325bでは、それを受信して共通鍵である鍵Kを用いてその暗号文を復号し、復号エラーが発生したことを判断する。そして、カウンタの値を初期化するべく新たな乱数を生成し、その乱数の値を初期ベクタ部の値R2としてCU制御部323へ送信する。その際に、鍵Kを用いてその初期ベクタ部の値R2の値をSE1モードにより暗号化してその暗号文をセキュリティチップ325Bへ送信する。CU制御部323では、その受信した暗号文を鍵Kを用いてSE1モードにより復号し、初期ベクタ部の値R2を取得する。これにより、CU制御部323とSC325bとの間で初期化されたカウンタの値である「R2,0,0」が共有されることとなる。
次にCU制御部323は、初期ベクタ部の値R2の更新を完了した旨のレスポンスを鍵Kを用いてSE1モードにより暗号化してSC325bへ送信する。
それを受けたSC325bでは、前回再送信したコマンドと同じデータをSE2モードにより暗号化してCU制御部323へ送信する。その際に、最初のブロックを暗号化するのに初期化されたカウンタ値すなわち「R2,0,0」を用いて暗号化する。そして、その暗号ブロックカウンタ部に対して「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成してCU制御部323へ送信する。
CU制御部323では、初期化されたカウンタ値すなわち「R2,0,0」を用いて暗号文の最初のブロックを復号する。次に、その暗号ブロックカウンタ部に対して「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を復号して平文を生成する。
次に図73に基づいて、コマンドが未到達の異常時における処理の変形例を説明する。この図73は、前述した図71のコマンド未到達時の処理の変形例であり、ここでは主に相違点について説明する。CU制御部323による2回目のリトライによってコマンドがSC325bに到達した場合に、CU制御部323とSC325bとの間でのカウンタの値が食い違っている。その結果、SC325bにおいてその暗号文の復号を試みた場合にMACチェックの結果MAC異常となり復号失敗と判断される。この変形例においては、その復号失敗のときに復号不能と判断して復号エラーのレスポンスをCU制御部323へ送信する。
その際に、SC325bでは、復号エラーのレスポンスを鍵Kを用いてSE1モードにより暗号化し、その暗号文をCU制御部323へ送信する。CU制御部323では、それを受信して共通鍵である鍵Kを用いてその暗号文を復号し、復号エラーが発生したことを判断する。そして、カウンタの値を初期化するべく新たな乱数を生成し、その乱数の値を初期ベクタ部の値R1としてSC325bへ送信する。その際に、鍵Kを用いてその初期ベクタ部の値R1をSE1モードにより暗号化してその暗号文をSC325bへ送信する。SC325bでは、その受信した暗号文を鍵Kを用いてSE1モードにより復号し、初期ベクタ部の値R1を取得する。これにより、CU制御部323とSC325bとの間で初期化されたカウンタの値である「R1,0,0」が共有されることとなる。このように、暗号文が復元できない場合に行われるカウンタの値の初期化(再設定)としては、復号不能となった(CU制御部323とSC325bとの間で齟齬が生じた)カウンタの初期ベクタ部のみを再設定してもよいが、下り用カウンタの初期ベクタ部R1と上り用カウンタの初期ベクタ部R2との両者を再設定してもよい。
次にSC325bは、初期ベクタ部の値R1の更新を完了した旨のレスポンスを鍵Kを用いてSE1モードにより暗号化してCU制御部323へ送信する。
それを受けたCU制御部323では、前回再送信したコマンドと同じデータをSE2モードにより暗号化してSC325bへ送信する。その際に、最初のブロックを暗号化するのに初期化されたカウンタ値すなわち「R1,0,0」を用いて暗号化する。そして、その暗号ブロックカウンタ部に対して「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を生成してSC325bへ送信する。
SC325bでは、初期化されたカウンタ値すなわち「R1,0,0」を用いて暗号文の最初のブロックを復号する。次に、その暗号ブロックカウンタ部に対して「1」ずつ加算更新しながら順次暗号文2、暗号文3、暗号文4、暗号文5、暗号文6を復号して平文を生成する。
次に、図74に基づいて、SE2モードによる復号処理のカウンタ動作を説明する。前述の実施の形態では、下り用カウンタと上り用カウンタとの2種類のものを示した(図37参照)。その2種類の場合を図74(b)に示している。一方、下り用と上り用とで共通のカウンタを用いるものを図74(a)に示している。先ず図74(a)に基づいて共通カウンタを用いるものを説明する。
共通カウンタの場合、CU制御部323とSC325bとの間でクロス送信が発生した場合の両者間でのカウンタ値の食い違いが生ずる不都合がある。通常の送信では、たとえばSC325bからの応答(レスポンス)がCU制御部323に送信されてきた後次の要求(コマンド)をCU制御部323がSC325bへ送信する。これに対し、クロス送信では、SC325bからの応答(レスポンス)の出力とCU制御部323からの次の要求(コマンド)の出力とが殆ど同時になされて、CU制御部323からの次の要求(コマンド)の出力がなされた後にSC325bからの応答(レスポンス)をCU制御部323が受信し、SC325bからの応答(レスポンス)の出力がなされた後にCU制御部323からの次の要求(コマンド)がSC325bに受信される。
そして、共通カウンタの場合に、前述のクロス送信が生じたときには、たとえばCU制御部323側においてSC325bからの応答(レスポンス)を受信する前に次の要求(コマンド)を送信することによってカウンタ値が1つ更新された状態(カウンタ値=3)となっており、カウンタ値(=2)で暗号化された応答(レスポンス)をその1つ更新された後のカウンタ値(=3)により復号するために、CU制御部323側とSC325b側とでのカウンタ値が食い違った状態となり、適正に復号できないという不都合が生ずる。
そこで、一方、下り用カウンタと上り用カウンタとの2種類のものを用いる場合には、前述のクロス送信が生じたときに、図74(b)を参照して、たとえばCU制御部323側においてSC325bからの応答を受信する前に次の情報を送信することによって下り用カウンタ値が1つ更新された状態(下り用カウンタ値=2)となったとしても、その更新されたカウンタ値はCU制御部323からSC325bへ送信する暗号文の生成に用いられる下り用カウンタ値が更新されるだけであって上り用カウンタ値は更新されないために(上り用カウンタ値=1)、上り用カウンタ値(=1)によって暗号化されたSC325bからの応答(レスポンス)を同じ上り用カウンタ値(=1)を用いてCU制御部323側において適正に復号することが可能となる。
以上説明したように、第1制御手段(CU制御部323等)から第2制御手段(SC325b等)へ送信する暗号文の生成に用いる第1鍵(下りカウンタ)と、第2制御手段(SC325b等)から第1制御手段(CU制御部323等)へ送信する暗号文の生成に用いる第2鍵(上りカウンタ)とが、それぞれ独自に更新されるために、第1制御手段(CU制御部323等)と第2制御手段(SC325b等)との間でクロス送信が発生した場合の両制御手段間での鍵の食い違いが生ずる不都合を防止することができる。第2制御手段(SC325b等)からの応答が第1制御手段(CU制御部323等)に送信されてきた後次の情報を第1制御手段(CU制御部323等)が第2制御手段(SC325b等)へ送信するのが通常送信であるのに対し、クロス送信とは、第2制御手段(SC325b等)からの応答の出力と第1制御手段(CU制御部323等)からの次の情報の出力とが殆ど同時になされて、第1制御手段(CU制御部323等)からの次の情報の出力がなされた後に第2制御手段(SC325b等)からの応答を第1制御手段(CU制御部323等)が受信し、第2制御手段(SC325b等)からの応答の出力がなされた後に第1制御手段(CU制御部323等)からの次の情報が第2制御手段(SC325b等)に受信される送受信状態を言う(たとえば図74(a)(b)参照)。たとえば、第1制御手段(CU制御部323等)と第2制御手段(SC325b等)との間で送信する暗号文の生成に用いる鍵を1種類の鍵にして第1制御手段(CU制御部323等)から第2制御手段(SC325b等)への送信の度および第2制御手段(SC325b等)から第1制御手段(CU制御部323等)への送信の度にその1種類の鍵を互いに更新するようにした場合に、前述のクロス送信が生じたときには、たとえば第1制御手段(CU制御部323等)側において第2制御手段(SC325b等)からの応答を受信する前に次の情報を送信することによって鍵が1つ更新された状態となっており、第2制御手段(SC325b等)から送信されてきた応答情報をその1つ更新された後の鍵により復号するために、第1制御手段(CU制御部323等)側と第2制御手段(SC325b等)側とでの鍵が食い違った状態となり、適正に復号できないという不都合が生ずる。
そこで、第1制御手段(CU制御部323等)から第2制御手段(SC325b等)へ送信する暗号文の生成に用いる第1鍵(下りカウンタ)と、第2制御手段(SC325b等)から第1制御手段(CU制御部323等)へ送信する暗号文の生成に用いる第2鍵(上りカウンタ)との、2種類の鍵を用いることにした。その結果、前述のクロス送信が生じたときに、たとえば第1制御手段(CU制御部323等)側において第2制御手段(SC325b等)からの応答を受信する前に次の情報を送信することによって鍵が1つ更新された状態となったとしても、その更新された鍵は第1制御手段(CU制御部323等)から第2制御手段(SC325b等)へ送信する暗号文の生成に用いられる第1鍵(下りカウンタ)が更新されるだけであって第2鍵(上りカウンタ)は更新されないために、第2鍵(上りカウンタ)によって暗号化された第2制御手段(SC325b等)からの応答情報を同じ第2鍵(上りカウンタ)を用いて第1制御手段(CU制御部323等)側において適正に復号することが可能となる。
次に、図75および図76を参照して、SE2モード時のカウンタの自動修復のシーケンスを説明する。図75は、CU制御部323側におけるSE2モード時のカウンタの自動修復のシーケンスである。また、図76は、SC325b側におけるSE2モード時のカウンタの自動修復のシーケンスである。また、両図において、業務電文要求は何らかのコマンドを、業務電文応答は何らかのレスポンスを示す。
初めに図75を参照して、CU制御部323側におけるSE2モード時のカウンタの自動修復のシーケンスを説明する。CU制御部323は、業務電文要求1を下りカウンタ=0にて送信し、それを受けたSC325bは業務電文応答1を上りカウンタ=0でCU制御部323へ送信する。
すると、CU制御部323は、業務電文要求2を下りカウンタ=1にて送信し、それを受けたSC325bは業務電文応答2を上りカウンタ=1でCU制御部323へ送信する。このようなやりとりがなされる途中で、SC325bから送信された上りカウンタ=2の業務電文応答3がCU制御部323へ未到達となった場合、CU制御部323は、業務電文要求3を再送する。このとき、下りカウンタは更新せずに下りカウンタ=2で送信する。
SC325bは、既に受信済みの業務電文要求3が再送されてきたため、業務電文応答3を再送する。しかし、再び、この応答が未着であった場合にはCU制御部323による2度目の電文の再送が前回と同様に実行され、2度目の再送でもなお、CU制御部323に対してSC325bからの応答が届かないと、CU制御部323は、SC325bに対して基板状態要求を送信する。この基板状態要求は、SC325bに対してセキュリティ基板及び、遊技機の状態を要求するものである。また、このときの下りカウンタは、再送を試みたカウンタ値に1を加えた3に設定される。
基板状態要求を受信したSC325bは、既に受信している業務電文要求3の下りカウンタ(=2)に1を加えた下りカウンタ値(=3)でこれを復号し、その復号に成功する。その上で、SC325bは、基板状態応答(上りカウンタ=3)をCU制御部323に返信する。ところが、CU制御部323は、業務電文応答3(上りカウンタ=2)を受信できておらず、直近で受信した電文の上りカウンタは1である。このため、受信した基板状態応答をその上りカウンタに1加えた値(=2)で復号すると復号異常が検出される。そこで、図45のS156のとおり、上りカウンタ(=2)にさらに+1した値である3で基板状態応答を復号し、その復号に成功する。
次に、図76を参照して、SC325b側におけるSE2モード時のカウンタの自動修復のシーケンスを説明する。CU制御部323は、業務電文要求1を下りカウンタ=0にて送信し、それを受けたSC325bは業務電文応答1を上りカウンタ=0でCU制御部323へ送信する。
すると、CU制御部323は、業務電文要求2を下りカウンタ=1にて送信し、それを受けたSC325bは業務電文応答2を上りカウンタ=1でCU制御部323へ送信する。このようなやりとりがなされる途中で、CU制御部323から送信された下りカウンタ=2の業務電文要求3に対する応答がSC325bから返ってこない場合、CU制御部323は、業務電文要求3を再送する。このとき、下りカウンタは更新せずに下りカウンタ=2で送信する。
しかし、再び、この業務電文要求3に対する応答も返らない場合にはCU制御部323による2度目の電文の再送が前回と同様に実行され、2度目の再送でもなお、CU制御部323に対してSC325bからの応答が届かないと、CU制御部323は、SC325bに対して基板状態要求を送信する。この基板状態要求は、SC325bに対してセキュリティ基板及び、遊技機の状態を要求するものである。また、このときの下りカウンタは、再送を試みたカウンタ値に1を加えた3に設定される。
ところが、SC325bは、業務電文要求3(下りカウンタ=2)を受信できておらず、直近で受信した電文の下りカウンタは1である。このため、受信した基板状態要求をその下りカウンタに1加えた値(=2)で復号すると復号異常が検出される。そこで、図45のS156のとおり、下りカウンタに+1した値である3で基板状態要求が復号され、その復号に成功する。一方、基板状態応答(上りカウンタ=2)を受信したCU制御部323は、既に業務電文応答2(上りカウンタ=1)を受信しているので、その上りカウンタに1を加えた値(=2)で復号を試み、復号に成功する。
なお、図75および図76の処理では、復号異常となったときに、カウンタに+1した値で復号を再試行して成功した例を示したが、失敗した場合には、たとえば、図45(a)に示す処理が適用される。すなわち、図45(a)に示したように、初めに+1して試行し、復号失敗の場合にはさらに+1して試行し、このような試行を複数回繰り返し、それでも復号失敗の場合には、元のカウンタ値に戻してその値から−1して試行し、復号失敗の場合にはさらに−1して試行することを繰り返す。また、カウンタの更新値は1に限られず、2や3等の値を更新値としてもよい。
<<無償遊技および所定レートでの遊技の切替え>>
次に、無償遊技および所定レートでの遊技の切替えについて説明する。レートとは、遊技媒体(パチンコ玉、スロットマシンで用いられるメダルなど)の貸与を受ける際の遊技媒体の単価のことをいう。レートには、たとえば、パチンコ玉1玉4円、パチンコ玉1玉1円、メダル1枚20円、メダル1枚5円などがある。
なお、本実施の形態における遊技機は、封入循環式パチンコ機および後述するようなメダルを用いないスロットマシンである。このため、遊技媒体の貸与の概念には、パチンコ機においては遊技玉の貸与、および、スロットマシンにおいては遊技点の貸与の概念を含めるようにする。なお、遊技玉とは実物の玉ではなく仮想的な玉である。
図77は、贈与処理の流れを示すフローチャートおよび遊技者所有の価値を管理するための記憶テーブルの説明図である。図77(A)を参照して、贈与処理は、ホールサーバ801などの遊技場内のサーバのCPUによって実行される。
贈与処理においては、まず、ホールサーバ801のCPUは、無料持玉の贈与条件が成立したか否かを判断する(ステップS401)。無料持玉は、遊技者に無償で付与される遊技用価値であり、通常の持玉と同様、再プレイボタン319の操作で遊技に用いることができる。ただし、本実施の形態においては、計数ボタン28の操作に応じた無料持玉への加算はできない。なお、計数ボタン28の操作に応じた無料持玉への加算ができるようにしてもよい。
無料持玉は、所定無効条件が成立(たとえば、日を跨ぐ、所定時間経過する、別の遊技機に移動するなど)したことを条件に無効とされる(たとえば、無料持玉は、通常の持玉と同様の扱いであるので、当日のみ有効とされる。)。
無料持玉の贈与条件は、たとえば、ホールサーバ801で会員情報として管理されている遊技者の誕生日であるという条件、特定日(レディースデイ)であるという条件遊技場に来店したという条件、遊技場に所定頻度以上、および、来店したという条件などである。
贈与条件が成立した(ステップS401でYES)と判断した場合、ホールサーバ801のCPUは、対象のカードIDに対応付けて、所定量(たとえば、100玉)の無料持玉を、無料持玉を記憶する記憶領域に記憶させる(ステップS402)。贈与条件が成立していない(ステップS401でNO)と判断した場合、および、ステップS402の後、ホールサーバ801のCPUは、実行する処理を呼出元の処理に戻す。
図77(B)を参照して、ホールサーバ801の記憶部には、会員残高・持玉・貯玉テーブルで示されるような情報が記憶される。このテーブルで示されるように、会員の会員カードのカードIDと対応付けて、プリペイド残額ならびにレートごとの持玉数および貯玉数を記憶可能な記憶領域が設けられるとともに、無料持玉を記憶する記憶領域が設けられる。
レートA,Bは、それぞれ、たとえば、パチンコ玉1玉4円のレートおよびパチンコ玉1玉1円のレートである。
また、図77(C)を参照して、ホールサーバ801の記憶部には、ビジター残高・持玉テーブルで示されるような情報が記憶される。このテーブルで示されるように、ビジターカードのカードIDと対応付けて、プリペイド残額ならびにレートごとの持玉数を記憶可能な記憶領域が設けられるとともに、無料持玉を記憶する記憶領域が設けられる。
このような会員カードおよびビジターカードがCU3で受付けられることでCU3からホールサーバ801にカードIDが送信され、カードIDに対応するプリペイド残額、ならびに、レートごとの持玉数および貯玉数、ならびに、無料持玉の数が、CU3に送信される。
このように、会員カードおよびビジターカードは、価値として、遊技者に無償で与えられない種類の価値(たとえば、プリペイド残額、持玉、貯玉)と、遊技者に無償で与えられる種類の価値(ここでは、無料持玉)とを特定可能である。後者は、無償遊技に使用可能な価値ともいえ、前者は、無償遊技でない通常遊技に使用可能な価値ともいえる。
遊技者に無償で与えられる種類の価値は、遊技者に無償で与えられない価値と同様の態様で、会員カードおよびビジターカードで特定可能とされる。具体的には、図77で示したように、遊技者に無償で与えられる持玉は、遊技者に無償で与えられない持玉と同様の態様、つまり持玉として、会員カードおよびビジターカードで特定可能とされる。なお、ここでは、無償で与えられる持玉が、無償で与えられない持玉に合算されて、会員カードおよびビジターカードで特定可能とされるのではなく、それぞれ、独立して特定可能とされる。
また、会員カードおよびビジターカードは、価値として、高レート(ここでは、レートA)での遊技を可能とする種類の価値(たとえば、プリペイド残額、レートAの持玉/貯玉)と、低レート(ここでは、レートB)での遊技を可能とする種類の価値(たとえば、プリペイド残額、レートBの持玉/貯玉)とを特定可能である。
図78は、レート関連処理の流れを示すフローチャートである。図78を参照して、レート関連処理は、CU3のCU制御部323によって実行される。
レート関連処理においては、まず、CU制御部323は、会員カードの受付時であるか否かを判断する(ステップS501)。会員カードの受付時である(ステップS501でYES)と判断した場合、CU制御部323は、受付けられた会員カードのカードIDに対応付けて無料持玉が記憶されているかをホールサーバ801に問合せる(ステップS502)。
次に、CU制御部323は、受付けられた会員カードに対応付く無料持玉が記憶されている旨の情報がホールサーバ801から応答されたか否かを判断する(ステップS503)。
無料持玉が記憶されている旨の情報が応答された(ステップS503でYES)と判断した場合、CU制御部323は、表示器54(または表示器312)に、無料持玉が贈与されている旨を表示することで遊技者に報知する(ステップS504)。
会員カードの受付時でない(ステップS501でNO)と判断した場合、および、ステップS504の後、CU制御部323は、レート変換操作を受付けたか否かを判断する(ステップS511)。レート変換操作は、遊技者の持玉/貯玉のうち、あるレートの持玉/貯玉を他のレートに変換させるための操作であって、表示器54(または表示器312)のタッチパネルで受付けられる。
レート変換操作を受付けた(ステップS511でYES)と判断した場合、CU制御部323は、遊技玉数が0でないか否かを判断する(ステップS512)。遊技玉数が0でない(ステップS512でYES)と判断した場合、CU制御部323は、計数操作を促すよう表示器54(または表示器312)に表示する(ステップS513)。
一方、遊技玉数が0である(ステップS512でNO)と判断した場合、CU制御部323は、遊技動作中であるか否かを判断する(ステップS514)。
遊技玉数が0になってから(つまり、最後の遊技玉に対応するパチンコ玉が遊技領域に打込まれてから)所定時間、経過しており、かつ、図柄変動中でなく、かつ、大当り状態などの特定遊技状態でなく、かつ、確変状態や時短状態などの特別遊技状態中でない場合(これらの判断は、CU制御部323で行なわれるようにしてもよいし、遊技機で行なわれるようにしてもよい。遊技機で行なわれる場合は、遊技動作中であるか否かを示す情報がCU3に送信されるようにする。)に、CU制御部323は、遊技動作中でないと判断する。所定時間は、パチンコ玉が発射されてからいずれかの口(いずれかの入賞口、アウト口154など)に入るまでに十分な時間であり、たとえば30秒である。
遊技動作中でない(ステップS514でNO)と判断した場合、CU制御部323は、ステップS511で受付けられたレート間の変換処理を実行する(ステップS515)。変換処理は、後述の図79で説明する。
次に、CU制御部323は、変換後のレートでの遊技可能となるように切替設定をする(ステップS516)。レートの切替設定においては、CU制御部323は、記憶している現在のレートを示す情報を切替え後のレートを示すように変更する。
次いで、CU制御部323は、設定されたレートを表示器54(または表示器312)で表示することで遊技者に報知することを開始する(ステップS517)。なお、CU3の表示器ではなくパチンコ機2などの遊技機の表示装置(ここでは、可変表示装置278)で表示するようにしてもよい。
さらに、CU制御部323は、対応する遊技機(ここではパチンコ機2)に切替え後のレートを示す情報を送信する。遊技機は、受信した切替え後のレートを示す情報を記憶しておく。
遊技機においては、レートに応じた遊技が行なわれるようにしてもよく、たとえば、パチンコ機2においては、レートに応じたパチンコ玉の発射間隔や可変表示装置278での図柄の変動時間となるようにしてもよい(たとえば、低レートの場合は、発射間隔や変動時間を短くする)。また、後述する遊技機の別の例であるスロットマシン2Sにおいては、レートに応じたウェイト時間や演出時間となるようにしてもよい。
ウェイト時間とは、1ゲームが終了してから次のゲームのスタート操作が可能になるまでの時間である。この時間は、たとえば、4.1秒等である。ウェイト時間が経過する前にスタート操作を検出した場合には、ウェイト時間の経過後にリールが回転を開始する。また、演出時間は、たとえば、ATのためのナビストックが付与される可能性やナビストック付与数を示唆するために複数ゲームに亘って実行される連続演出や1ゲームで単発的に行なわれる演出(キャラクタを用いて1ゲームまたは複数ゲームに亘り実行されるバトル演出など)に要する時間である。
また、所定のタイミングでCU制御部323が遊技機からレートを示す情報を取得して、取得した情報で示されるレートが、CU制御部323が記憶しているレートと異なる場合に、不正や異常と判断するようにしてもよい。たとえば、1玉4円のレートで設定されているCU3に、1玉1円のレートの遊技機が不正に接続されたような場合に、1玉1円の遊技玉数が1玉4円としてカードで特定可能とされてしまうことが考えられるが、このような不正を防止することができる。
レート変換操作を受付けていない(ステップS511でNO)と判断した場合、ステップS513の後、遊技動作中である(ステップS514でYES)と判断した場合、および、ステップS518の後、CU制御部323は、実行する処理をステップS520に進める。
次に、CU制御部323は、レート切替操作を受付けたか否かを判断する。レート切替操作は、遊技に用いられる遊技媒体のレートを他のレートに切替えるための操作であって、表示器54(または表示器312)のタッチパネルで受付けられる。本実施の形態においては、無料、レートA,レートB・・・のいずれかに切替えることが可能である。
レート切替操作を受付けた(ステップS520でYES)と判断した場合、CU制御部323は、遊技玉数が0でないか否かを判断する(ステップS521)。遊技玉数が0でない(ステップS521でYES)と判断した場合、CU制御部323は、計数操作を促すよう表示器54(または表示器312)に表示する(ステップS522)。
一方、遊技玉数が0である(ステップS521でNO)と判断した場合、CU制御部323は、ステップS514と同様に、遊技動作中であるか否かを判断する(ステップS523)。
遊技動作中でない(ステップS523でNO)と判断した場合、CU制御部323は、無料のレートへの切替えであるか否かを判断する(ステップS524)。無料のレートへの切替えである(ステップS524でYES)と判断した場合、CU制御部323は、無料持玉が0であるか否かを判断する(ステップS525)。
無料持玉が0である(ステップS525でYES)と判断した場合、CU制御部323は、無料持玉が無い旨を表示器54(または表示器312)に表示することで遊技者に報知する(ステップS526)。
次に、CU制御部323は、受付けたレートでの遊技が可能となるように切替設定をする(ステップS527)。レートの切替設定においては、CU制御部323は、記憶している現在のレートを示す情報を切替え後のレートを示すように変更する。ステップS528およびステップS529の処理は、それぞれ、前述したステップS517およびステップS518の処理と同様である。
遊技理においては、レートに応じた遊技が行なわれるようにしてもよく、たとえば、無料のレートへ切替えられた場合は、無料でないレートでの入賞に対する賞球数と異ならせる(たとえば、5個を1個に減らす)ようにしてもよい。
また、無償遊技であることの報知においては、直接的に、無償遊技であることを報知するようにしてもよいし、無償遊技であることを示唆するように報知してもよい(たとえば、「お試し中です」と報知する)。
レート切替操作を受付けていない(ステップS520でNO)と判断した場合、ステップS522の後、遊技動作中である(ステップS523でYES)と判断した場合、ステップS526の後、および、ステップS529の後、CU制御部323は、実行する処理をこのレート関連処理の呼出元の処理に戻す。
図79は、変換処理の流れを示すフローチャートである。図79を参照して、変換処理は、CU3のCU制御部323によって、前述の図78のステップS515または後述の図80のステップS554で呼出されて実行される。
変換処理においては、まず、CU制御部323は、レートの変換元が無料のレート(本実施の形態においては、無料持玉)であるか否かを判断する(ステップS541)。変換元が無料のレートである(ステップS541でYES)と判断した場合、CU制御部323は、無料のレートからは変換できない旨を表示器54(または表示器312)に表示することで遊技者に報知する(ステップS542)。
一方、変換元が無料のレートでない(ステップS541でNO)と判断した場合、CU制御部323は、変換元の価値が0であるか否かを判断する(ステップS543)。変換元の価値が0である(ステップS543でYES)と判断した場合、CU制御部323は、変換元の価値が0である旨を表示器54(または表示器312)に表示することで遊技者に報知する(ステップS544)。
一方、変換元の価値が0でない(ステップS543でNO)と判断した場合、CU制御部323は、変換先が無料のレート(本実施の形態においては、無料持玉)であるか否かを判断する(ステップS545)。変換先が無料のレートである(ステップS545でYES)と判断した場合、CU制御部323は、無料持玉へは変換できない旨を表示器54(または表示器312)に表示することで遊技者に報知する(ステップS546)。
一方、変換先が無料のレートでない(ステップS545でNO)と判断した場合、CU制御部323は、変換元の持玉または貯玉を、変換先のレートに変換したものを、変換先の持玉または貯玉に加算する(ステップS547)。
たとえば、1玉4円の持玉が100玉あり、1玉1円の持玉が200玉ある場合に、1玉4円の持玉を1円の持玉に変換するレート変換操作が受付けられた場合、4円の持玉100玉を1円の持玉400玉に変換して、変換した400玉を元からある1玉1円の持玉200玉に加算して、1玉1円の持玉を600玉とする。
ステップS542の後、ステップS544の後、ステップS546の後、および、ステップS547の後、CU制御部323は、実行する処理をこの変換処理の呼出元の処理に戻す。
図80は、返却可否判定処理の流れを示すフローチャートである。図80を参照して、返却可否判定処理は、図14で説明した処理において、「カード返却」ボタン押下の直後に、CU3のCU制御部323によって呼出されて実行される。
返却可否判定処理においては、まず、CU制御部323は、会員カードの受付中であるか否かを判断する(ステップS551)。会員カードの受付中でない(ステップS551でNO)と判断した場合、CU制御部323は、各レートのいずれかの持玉および貯玉を合算した価値が500円相当以上であるか否かを判断する(ステップS552)。
各レートのいずれかの価値も500円相当以上でない(ステップS552でNO)と判断した場合、各レートのいずれかの持玉および貯玉を合算した価値が500円相当未満であるか否かを判断する(ステップS553)。
各レートのいずれかの価値が500円相当未満である(ステップS553でYES)と判断した場合、CU制御部323は、少ないレートの価値(持玉および貯玉)を、最も多い価値のレートに変換する変換処理を実行する(ステップS554)。変換処理は、図79で説明した。
ステップS554の後、CU制御部323は、最も価値が多いレートの価値が500円相当未満であるか否かを判断する(ステップS555)。最も価値が多いレートの価値が500円相当未満である(ステップS555でYES)と判断した場合、CU制御部323は、遊技場の係員の呼出を促す旨を、表示器54(または表示器312)に表示することで遊技者に報知する(ステップS556)。
そして、CU制御部323は、係員の所持するリモコンによる報知を解除する操作が行なわれたか否かを判断する(ステップS557)。操作が行なわれていない(ステップS557でNO)と判断した場合、CU制御部323は、ステップS557の処理を繰返す。
会員カード受付中である(ステップS551でYES)と判断した場合、各レートのいずれかの価値が500円相当以上である(ステップS552でYES)と判断した場合、各レートのいずれの価値も500円相当未満でない(ステップS553でNO)と判断した場合、最も価値が多いレートの価値が500円相当未満でない(ステップS555でNO)と判断した場合、および、係員のリモコンによる報知を解除する操作が行なわれた(ステップS557でYES)と判断した場合、CU制御部323は、実行する処理をこの処理の呼出元の処理に戻す。
会員カードは遊技者専用のカードであるので廃棄されてしまうことは考え難いが、排出されたビジターカードが廃棄されたり破損されたりしてしまうことが考えられる。カードの単価は数百円(たとえば500円)であるので、廃棄されたり破損されたりしてしまうと遊技場の損害となってしまう。このため、上述のような返却可否判定処理を実行することによって、カードで特定可能な遊技用価値がカードの単価未満である可能性が高いカードの排出を制限する。その結果、遊技場の損害を回避することができる。
<変形例>
次に、以上説明した無償遊技および所定レートでの遊技の切替えの変形例について説明する。
(1) 上述した実施の形態においては、無料持玉の数は、他のレートの価値(プリペイド残額、持玉、貯玉)とは分けて特定可能なように構成した。変形例においては、無料持玉の数は、いずれかのレートの価値に合算されて特定可能なように構成する。
以下に具体的に説明する。図81は、変形例としての贈与処理の流れを示すフローチャートおよび遊技者所有の価値を管理するための記憶テーブルの説明図である。図81は、図77で説明した内容の変形例である。
図81(A)を参照して、贈与処理は、ホールサーバ801などの遊技場内のサーバのCPUによって実行される。
変形例の贈与処理においては、まず、ホールサーバ801のCPUは、図77のステップS401と同様の処理を実行する。
贈与条件が成立した(ステップS401でYES)と判断した場合、ホールサーバ801のCPUは、対象のカードIDに対応付けて、所定量(たとえば、100玉)の無料持玉を、無料でないレート(ここではレートA)の持玉数を記憶する記憶領域に記憶させる(ステップS402A)。このとき、無料持玉1玉を無料でないレートの玉1玉として記憶させるようにしてもよいし、無料持玉10玉を無料でないレートの玉1玉として記憶させるようにしてもよい。
贈与条件が成立していない(ステップS401でNO)と判断した場合、および、ステップS402Aの後、ホールサーバ801のCPUは、実行する処理を呼出元の処理に戻す。
図81(B)を参照して、ホールサーバ801の記憶部には、会員残高・持玉・貯玉テーブルで示されるような情報が記憶される。このテーブルで示されるように、会員の会員カードのカードIDと対応付けて、プリペイド残額ならびにレートごとの持玉数および貯玉数を記憶可能な記憶領域が設けられる一方、無料持玉の数は、レートAの持玉の数に合算されて記憶される。
また、図77(C)を参照して、ホールサーバ801の記憶部には、ビジター残高・持玉テーブルで示されるような情報が記憶される。このテーブルで示されるように、ビジターカードのカードIDと対応付けて、プリペイド残額ならびにレートごとの持玉数を記憶可能な記憶領域が設けられる一方、無料持玉の数は、レートAの持玉の数に合算されて記憶される。
このような会員カードおよびビジターカードがCU3で受付けられることでCU3からホールサーバ801にカードIDが送信され、カードIDに対応するプリペイド残額、ならびに、レートごとの持玉数および貯玉数が、CU3に送信される。
このように、会員カードおよびビジターカードは、価値として、遊技者に無償で与えられない種類の価値(たとえば、プリペイド残額、持玉、貯玉)と、遊技者に無償で与えられる種類の価値(ここでは、無料持玉)とを合算した価値を特定可能である。後者は、無償遊技に使用可能な価値ともいえ、前者は、無償遊技でない通常遊技に使用可能な価値ともいえる。
(2) 前述した実施の形態においては、遊技者に付与される無償遊技に用いることが可能な遊技用価値は、無料持玉であることとした。しかしこれに限定されず、遊技者に付与される無償遊技に用いることが可能な遊技用価値は、貯玉であってもよいし、プリペイド残額(カード残額)であってもよい。貯玉とする場合は、有効期間を短くする(たとえば、当日または翌日のみ)。また、プリペイド残額とする場合、精算して現金に交換することはできないようにする。
(3) 前述した実施の形態においては、図77(A)で説明したように、ホールサーバ801のCPUによって、遊技者に無償で与えられる価値(たとえば、無料持玉)の贈与条件が成立したと判断された場合に、当該価値が付与されるようにした。
しかし、これに限定されず、遊技者に無償で与えられる価値は、遊技場の広告に2次元コードを掲示して、遊技者が当該2次元コードを携帯端末で読込むことで所定のサイト(たとえば、遊技場のサイト)にアクセスすることによって付与されるようにしてもよい。また、所定のサイトに直接アクセスして所定の条件を満たす(たとえば、ゲームをして所定条件をクリアする)ことで付与されるようにしてもよい。
また、所定のサイトは、遊技場のサイトに限定されず、遊技者の遊技情報をスマートフォンやPCなど会員の端末および店舗のCU3に提供するサービスのサイトであってもよい。この場合、当該サービスを提供する会社から遊技場を経由して遊技者に無償で与えられる価値が付与されるようにする。
また、無償で遊技者に価値を付与するか否かを、遊技場の外部の会社から設定できるようにしてもよい。この場合、無償遊技の対価は、遊技場の外部の会社から遊技場に支払われるようにする。
(4) 前述した実施の形態においては、遊技者に無償で与えられる価値は、会員であるか否かに関わらず付与されるようにした。しかし、これに限定されず、会員のみに付与されるようにしてもよい。
(5) 前述した実施の形態においては、図77で示したように、所定の贈与条件が成立すると、自動的に無償で与えられる価値が付与されるようにした。しかし、これに限定されず、遊技場の係員の操作によって無償で与えられる価値が付与されるようにしてもよい。
(6) 遊技者に無償で与えられる価値が用いられて無償遊技が行なわれる場合に、遊技の方法や価値(プリペイド残額、持玉、貯玉)の遊技への用い方のガイダンスが表示されるようにしてもよい。これにより、無償遊技を初心者の遊技者の練習モードとして用いることができる。
(7) 前述した実施の形態においては、図78のステップS520からステップS527で示したように、遊技者による無償遊技への切替え操作が受付けられた場合に、無償遊技へ切替えるようにした。しかし、これに限定されず、受付けられたカードで無料持玉などの無償で遊技者に与えられる価値が有ることが特定される場合に、CU3のCU制御部323が自動的に無償遊技へ切替えるようにしてもよい。また、無償で与えられる価値が遊技者に与えられている場合に、遊技場の係員が無償遊技へ切替えるようにしてもよい。
(8) 前述した実施の形態においては、図78のステップS521で示したように、無料持玉が残っている場合には、計数操作を経た後でないと、他のレートに切替えることができない。しかし、これに限定されず、無料持玉を放棄して、他のレートに切替えることができるようにしてもよい。
(9) 無料持玉は、景品交換できないこととしてもよいし、景品交換できることとしてもよい。景品交換できる場合には、通常の持玉と比較して、価値の低いものに交換できるようにしてもよいし、無料配布されるようなものと交換できるようにしてもよいし、遊技機の携帯連動サイトで用いることができるポイントやコインなどと交換できるようにしてもよい。
(10) 前述した実施の形態においては、遊技者に無償で与えられる価値は、どの遊技機でもどの機種でも使えることとした。また、別の遊技機に移動した場合であっても使えることとした。しかし、これに限定されず、特定の機種でのみ使えることとしてもよい。
(11) 前述した実施の形態においては、どの遊技機においてもいずれのレートへも切替え可能であることとした。しかし、これに限定されず、機種ごとまたは遊技機ごとに、切替え可能なレートを制限するようにしてもよい。たとえば、新しく設置された遊技機では高レートのままレートの切替えは不可とし、以前から設置されている遊技機ではレートの切替えが可能なようにしてもよい。
(12) たとえば、遊技者に無償で与えられる価値を、所定時刻となったときに付与するようにしてもよい。この場合、ホールサーバ801に予め付与する所定時刻を設定しておき、所定時刻になったときに、CU3で受付けられているカードに対して価値を付与する。また、特定の機種の遊技機のみに付与するようにしてもよいし、特定の位置に設置されている遊技機(たとえば、特定の遊技機設置島に設置されている遊技機)のみに付与するようにしてもよい。また、特定の性別(たとえば、女性)の会員のみに付与するようにしてもよいし、会員のみに付与するようにしてもよい。また、来店ポイントを付与する装置で付与するようにしてもよい。また、遊技機で所定条件が成立した場合(たとえば、RTCの時刻が所定時刻となった場合)にCU3にその旨の信号を送信し、付与するようにしてもよい。
(13) 前述した実施の形態においては、ビジターカードに対しても遊技者に無償で与えられる価値を付与するようにした。しかし、プリペイド残額および持玉数が0であっても、無償で与えられる価値がビジターカードに残っている場合は、ビジターカードをCU3の内部に回収することができない。このような場合に、遊技者に、無償で与えられる価値のみを特定可能なビジターカードを排出するか否かを問合せ、遊技者が不要である場合は、当該ビジターカードで特定される無償で与えられた価値を消去して、当該ビジターカードを内部に回収するようにしてもよい。
(14) 前述した実施の形態においては、ビジターカードに対しても遊技者に無償で与えられる価値を付与するようにした。しかし、これに限定されず、会員カードに対してのみ遊技者に無償で与えられる価値を付与するようにしてもよい。この場合に、遊技者に無償で与えられる価値を遊技者が会員になったことを条件に付与するようにすれば、新規会員の増加に寄与することができる。
(15) 前述した実施の形態においては、遊技者に無償で与えられる価値を持玉数で付与するようにした。しかし、これに限定されず、所定時間(たとえば3分)の遊技が可能となる価値として付与するようにしてもよい。
(16) 前述した実施の形態においては、図78のステップS523で示したように、遊技動作中でない場合にレートを切替え可能であることとした。しかし、これに限定されず、遊技動作中であってもレートを切替え可能であることとしてもよい。また、遊技動作中である場合にレート切替操作は受付け可能として、レート切替操作が受付けられた場合は、遊技動作中でなくなってから、レートを切替えるようにしてもよい。
(17) 前述した実施の形態においては、図78のステップS521,ステップS522で示したように、レート切替操作が受付けられたときに遊技玉数が0でない場合は、計数操作を促すようにした。しかし、これに限定されず、レート切替操作が受付けられたときに遊技玉数が0でない場合は、CUおよび遊技機が、自動的に計数を行なって、計数終了後にレートを切替えるようにしてもよい。
(18) 前述した実施の形態においては、CU3でレート切替操作が受付けられることとした。しかし、これに限定されず、遊技機でレート切替操作が受付けられることとしてもよい。
(19) 前述した実施の形態においては、図78で示したように、レート切替操作が受付けられたときに遊技玉数が0でなければ、レートが切替えられないようにした。しかし、これに限定されず、レート切替操作が受付けられたときの遊技玉数のレートを変換してそのまま遊技に用いることができるようにしてもよい。たとえば、レート切替操作が受付けられたときに1玉4円のレートの遊技玉が100玉ある場合に、1玉1円のレートの遊技玉400玉に変換して、そのまま遊技を継続可能とする。
(20) 前述した実施の形態において、レート変換する場合に玉数が足りない場合にその旨を報知するようにしてもよい。たとえば、1玉1円のレートの玉が4玉未満の場合は、1玉4円のレートには変換できない旨を報知する。また、すべてのレートで一律に最低価値を設定しておくようにしてもよい。たとえば、1玉4円換算で25玉未満の場合はレート変換できない旨を報知するようにしてもよい。また、レートごとにレート変換可能な最低価値を設定できるようにしてもよい。
(21) 前述した実施の形態においては、会員カードおよびビジターカードで、レートごとに遊技用価値を特定可能なようにした。しかし、これに限定されず、レートごとに遊技用価値を特定可能にせず、最低レートの遊技用価値として特定可能であることとしてもよい。
(22) 前述した実施の形態においては、図78のステップS514およびステップS523で説明したように、遊技玉数が0になってから所定時間、経過しており、かつ、図柄変動中でなく、かつ、大当り状態などの特定遊技状態でなく、かつ、確変状態や時短状態などの特別遊技状態中でない場合に、CU制御部323は、遊技動作中でないと判断するようにした。そして、遊技動作中でない場合に、レートの変換処理やレートの切替を行なうようにした。
しかし、これに限定されず、遊技動作中であるか否かの判断に、人感センサによって遊技機の前の椅子に人が座っているか否かの判断を加えるようにしてもよい。すなわち、人がいない場合には、遊技状態中ではないが、レート変換操作やレート切替操作を無効にするようにしてもよい。
また、遊技動作中であるか否かの判断に、ハンドルの操作量が0でないか否かの判断、または、ハンドルのタッチセンサで手の接触を検知しているか否かの判断を加えるようにしてもよい。すなわち、少なくともハンドルの操作量が0でなければ、遊技操作中でないと判断しないようにする。または、少なくともタッチセンサで手の接触を検知していれば、遊技操作中でないと判断しないようにする。
<効果>
(A−1) 遊技機(たとえば、パチンコ機2、スロットマシン2S)と、前記遊技機で遊技をするための価値(たとえば、プリペイド残額、持玉、貯玉)を特定可能な記録媒体(たとえば、会員カード、ビジターカード)を受付けて前記記録媒体で特定される価値を用いて遊技を可能(たとえば、遊技玉数,遊技点数を加算)にする遊技用装置(たとえば、カードユニット3)とを含む遊技用システムであって、
前記記録媒体は、価値として、遊技者に無償で与えられない第A一類価値(たとえば、プリペイド残額,持玉,貯玉。通常遊技に使用可能な価値。)と、遊技者に無償で与えられる第A二類価値(たとえば、遊技者に無料で与えられるプリペイド残額,持玉,貯玉。無償遊技に使用可能な価値。)とを特定可能であり(たとえば、図77参照)、
前記遊技用装置は、
前記第A一類価値および前記第A二類価値に含まれる価値のいずれを用いて遊技を可能にするかを設定する設定手段(たとえば、図78のステップS527)を備える。
このような構成によれば、遊技用装置によって遊技者に無償で与えられる価値を用いて遊技を可能にすることができる。その結果、遊技者に無償で遊技をさせることが可能な遊技用システムを提供することができる。
(A−2) 遊技機(たとえば、パチンコ機2、スロットマシン2S)で遊技をするための価値(たとえば、プリペイド残額、持玉、貯玉)を特定可能な記録媒体(たとえば、会員カード、ビジターカード)を受付けて前記記録媒体で特定される価値を用いて遊技を可能(たとえば、遊技玉数,遊技点数を加算)にする遊技用装置(たとえば、カードユニット3)であって、
前記記録媒体は、価値として、遊技者に無償で与えられない第A一類価値(たとえば、プリペイド残額,持玉,貯玉。通常遊技に使用可能な価値。)と、遊技者に無償で与えられる第A二類価値(たとえば、遊技者に無料で与えられるプリペイド残額,持玉,貯玉。無償遊技に使用可能な価値。)とを特定可能であり(たとえば、図77参照)、
前記第A一類価値および前記第A二類価値に含まれる価値のいずれを用いて遊技を可能にするかを設定する設定手段(たとえば、図78のステップS527)を備える。
このような構成によれば、遊技用装置によって遊技者に無償で与えられる価値を用いて遊技を可能にすることができる。その結果、遊技者に無償で遊技をさせることが可能な遊技用装置を提供することができる。
(A−3) 上記(A−1)の遊技用システムまたは(A−2)の遊技用装置において、
前記第A二類価値は前記第A一類価値に変換不能とされる(たとえば、図79のステップS541,ステップS542)。
このような構成によれば、遊技者に無償で与えられる第A二類価値は、遊技者に無償で与えられない第A一類価値に変換不能とすることができる。その結果、遊技者に無償で遊技をさせることができるとともに、遊技場の負担を防止することができる。
(A−4) 上記(A−1)の遊技用システムまたは(A−2)の遊技用装置において、
前記第A二類価値の少なくとも一部は前記第A一類価値に変換可能とされる(たとえば、図79のステップS541,ステップS542では、変換不能としたが、無料持玉で獲得した玉の少なくとも一部を通常の持玉に変換可能とするようにしてもよい。たとえば、10000玉を超えたら500円分の所定レートの価値に交換できるようにしてもよい。)。
このような構成によれば、遊技者に無償で与えられる第A二類価値の少なくとも一部が景品等に交換可能な第A一類価値に交換可能とすることができる。その結果、遊技者に無償で遊技をさせることができるとともに、さらに第A二類価値を第A一類価値に変換して遊技者に有効に利用させることができる。
(A−5) 上記(A−1)から(A−4)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記第A二類価値との引換えでの遊技で獲得した価値、または、前記第A一類価値は、前記第A二類価値に変換不能とされる(たとえば、図79のステップS545,ステップS546)。
このような構成によれば、遊技者に与えられた第A二類価値を増加させないようにすることができる。このため、第A二類価値での遊技を必要以上に行なわせないようにすることができる。その結果、遊技場の必要以上の負担を防止することができる。
(A−6) 上記(A−1)から(A−5)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記第A二類価値は、所定無効条件が成立(たとえば、日を跨ぐ、所定時間経過する、別の遊技機に移動するなど)したことを条件に無効とされる(たとえば、無料持玉は、通常の持玉と同様の扱いであるので、当日のみ有効とされる。)。
このような構成によれば、所定無効条件が成立すると第A二類価値は無効とされる。このため、第A二類価値での遊技を必要以上に行なわせないようにすることができる。その結果、遊技場の必要以上の負担を防止することができる。
(A−7) 上記(A−1)から(A−6)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記第A二類価値は、前記第A一類価値と同様の態様で前記記録媒体で特定可能とされる(たとえば、図77参照。遊技者に無料で与えられるプリペイド残額,持玉,貯玉は、通常のプリペイド残額,持玉,貯玉がカードで特定可能とされる態様と同様の態様で特定可能とされる。会員カードの場合は、遊技者に無料で与えられる貯玉は、通常の貯玉と同様、カードIDに対応付けてホール用管理コンピュータに記憶される。会員カード,ビジターカードの遊技者に無料で与えられるプリペイド残額,持玉は、通常のプリペイド残額,持玉と同様に扱われる。)。
このような構成によれば、第A二類価値は、第A一類価値と同様の態様で遊技に用いることが可能となる(たとえば、第A二類価値が第A一類価値の持玉と同様の態様で特定可能とされる場合、第A一類価値と同様の再プレイ操作で第A二類価値を用いることができる。また、第A二類価値が第A一類価値のプリペイド残額と同様の態様で特定可能とされる場合、第A一類価値と同様の玉貸操作で第A二類価値を用いることができる。)。その結果、第A二類価値を遊技者が容易に用いることを可能とすることができる。
(A−8) 上記(A−1)から(A−7)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記第A二類価値が、前記遊技用装置で現金が受付けられたときの残高と同様の態様で前記記録媒体で特定可能とされる場合であっても、残高は精算不能とされる(たとえば、通常のプリペイド残額は精算可能であるが、遊技者に無償で与えられるプリペイド残額は精算不能とされる)。
このような構成によれば、無償で与えられた第A二類価値が残高と同様の態様で扱われる場合であっても精算不能とできる。このため、第A二類価値を遊技者に与えても、遊技者は第A二類価値をそのまま精算することができず、与える側の遊技場が損害を被ることがないので、第A二類価値を手軽に遊技者に与えることができる。その結果、手軽に与えることができる第A二類価値で、第A一類価値の残高の用い方を遊技者に慣れさせることができる。
(A−9) 上記(A−1)から(A−8)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記設定手段は、遊技が行なわれていないと判断される場合(たとえば、遊技玉数が0になって所定時間、経過しており、図柄変動中でなく、特定遊技状態や特別遊技状態中でない場合)に、設定の変更を可能とする(たとえば、図78のステップS523で遊技動作中でないと判断されることを条件としてステップS527でレート切替設定が行なわれる)。
このような構成によれば、第A一類価値または第A二類価値が用いられて遊技が行なわれているときには他方の価値への設定変更ができないようにされる。その結果、第A一類価値および第A二類価値が混ざってしまわないようにすることができる。
(A−10) 上記(A−1)から(A−9)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記第A二類価値を用いて遊技が行なわれている場合、または、前記第A二類価値と引換えでの遊技で遊技者にとって有利な特定遊技状態とするか否かの抽選の演出が行われている場合に、その旨を報知または示唆する報知手段をさらに備える(たとえば、図78のステップS517。遊技機側で報知してもよいし、遊技用装置で報知してもよい。)。
このような構成によれば、第A一類価値または第A二類価値のいずれが用いられて遊技が行なわれているかを遊技者に分からせることができる。
(A−11) 上記(A−1)から(A−10)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記遊技用装置は、さらに、
前記設定手段による設定を示す情報を前記遊技機に送信する遊技用装置側送信手段(たとえば、図78のステップS518。状態情報要求に第A一類価値であるか第A二類価値であるか否かが含められて送信されるようにしてもよい。)を備える。
このような構成によれば、第A一類価値または第A二類価値のいずれが用いられて遊技が行なわれるかに応じた対応を遊技機に実行させることができる(たとえば、第A一類価値および第A二類価値のいずれが用いられて遊技が行われているかを遊技機に表示させることができる)。
(A−12) 上記(A−11)の遊技用システムまたは遊技用装置において、
前記遊技機は、
遊技の結果を前記遊技用装置に送信するときに、前記遊技用装置側送信手段から受信した設定を示す情報で示される設定を合わせて送信する遊技機側送信手段(たとえば、図12で計数の処理が行なわれるときに状態情報応答に第A一類価値であるか第A二類価値であるかが含められて送信されるようにする。)を備える。
このような構成によれば、遊技用装置で設定された遊技に用いられる価値と遊技機から受信した遊技に用いられている価値との一致を遊技用装置が判断することができる。その結果、両者が一致しないといった不正や異常を発見することができる。
(A−13) 遊技機(たとえば、パチンコ機2、スロットマシン2S)と、前記遊技機で遊技をするための価値(たとえば、プリペイド残額、持玉、貯玉)を特定可能な記録媒体(たとえば、会員カード、ビジターカード)を受付けて前記記録媒体で特定される価値を用いて遊技を可能(たとえば、遊技玉数,遊技点数を加算)にする遊技用装置(たとえば、カードユニット3)とを含む遊技用システムであって、
前記記録媒体は、価値として、遊技者に無償で与えられない第A一類価値(たとえば、プリペイド残額,持玉,貯玉。通常遊技に使用可能な価値。)と、遊技者に無償で与えられる第A二類価値(たとえば、遊技者に無料で与えられるプリペイド残額,持玉,貯玉。無償遊技に使用可能な価値。)とを合算した価値を特定可能であり(たとえば、図81参照)、
前記遊技用装置は、
前記第A一類価値および前記第A二類価値(この第A二類価値は、カードに記録する態様以外の方法で付与される。)に含まれる価値のいずれを用いて遊技を可能にするかを設定する設定手段(たとえば、図78のステップS527)を備える。
このような構成によれば、遊技用装置によって遊技者に無償で与えられる価値を用いて遊技を可能にすることができる。その結果、遊技者に無償で遊技をさせることが可能な遊技用システムを提供することができる。
(A−14) 遊技機(たとえば、パチンコ機2、スロットマシン2S)で遊技をするための価値(たとえば、プリペイド残額、持玉、貯玉)を特定可能な記録媒体(たとえば、会員カード、ビジターカード)を受付けて前記記録媒体で特定される価値を用いて遊技を可能(たとえば、遊技玉数,遊技点数を加算)にする遊技用装置(たとえば、カードユニット3)であって、
前記記録媒体は、価値として、遊技者に無償で与えられない第A一類価値(たとえば、プリペイド残額,持玉,貯玉。通常遊技に使用可能な価値。)と、遊技者に無償で与えられる第A二類価値(たとえば、遊技者に無料で与えられるプリペイド残額,持玉,貯玉。無償遊技に使用可能な価値。)とを合算した価値を特定可能であり(たとえば、図81参照)、
前記第A一類価値および前記第A二類価値(この第A二類価値は、カードに記録する態様以外の方法で付与される。)に含まれる価値のいずれを用いて遊技を可能にするかを設定する設定手段(たとえば、図78のステップS527)を備える。
このような構成によれば、遊技用装置によって遊技者に無償で与えられる価値を用いて遊技を可能にすることができる。その結果、遊技者に無償で遊技をさせることが可能な遊技用装置を提供することができる。
(A−15) 上記(A−1)から(A−14)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記第A二類価値は、所定付与条件が成立したことを条件に遊技者に付与される(たとえば、図77のステップS402、図81のステップS402A)。
このような構成によれば、遊技者に無償で与えられる第A二類価値を用いた遊技を適宜、実施させることができる。
(B−1) 遊技機(たとえば、パチンコ機2、スロットマシン2S)と、前記遊技機で遊技をするための価値(たとえば、プリペイド残額、持玉、貯玉)を特定可能な記録媒体(たとえば、会員カード、ビジターカード)を受付けて前記記録媒体で特定される価値を用いて遊技を可能(たとえば、遊技玉数,遊技点数を加算)にする遊技用装置(たとえば、カードユニット3)とを含む遊技用システムであって、
前記記録媒体は、価値として、高レート(たとえば、パチンコ玉1玉4円のレート、コイン1枚20円のレート)での遊技を可能とする第B一類価値(たとえば、プリペイド残額,4パチの持玉,4パチの貯玉)と低レート(たとえば、パチンコ玉1玉4円未満のレート、コイン1枚20円未満のレート)での遊技を可能とする第B二類価値(たとえば、プリペイド残額,1パチの持玉,1パチの貯玉)とを特定可能であり(たとえば、図77参照)、
前記遊技用装置は、
前記高レートおよび前記低レートのいずれの遊技を可能にするかを設定する設定手段(たとえば、図78のステップS527)と、
前記設定手段による設定に応じて遊技で獲得した価値を前記第B一類価値および前記第B二類価値のいずれかに含まれる価値に加算する加算手段(たとえば、図12参照。図78のステップS516またはステップS527で設定されたレートを判定して、獲得した価値を判定されたレートの第一類価値または第二類価値に加算する。1パチ,4パチの両方で使用可能なプリペイド残額での遊技で獲得した価値を4パチの持玉に加算してもよいし、4パチの貯玉での遊技機獲得した価値を4パチの持玉に加算してもよい。)とを備える。
このような構成によれば、遊技用装置によって複数のレートを流動的に設定して遊技を可能にすることができる。その結果、複数のレートに流動的に対応することが可能な遊技用システムを提供することができる。
(B−2) 遊技機(たとえば、パチンコ機2、スロットマシン2S)で遊技をするための価値(たとえば、プリペイド残額、持玉、貯玉)を特定可能な記録媒体(たとえば、会員カード、ビジターカード)を受付けて前記記録媒体で特定される価値を用いて遊技を可能(たとえば、遊技玉数,遊技点数を加算)にする遊技用装置(たとえば、カードユニット3)であって、
前記記録媒体は、価値として、高レート(たとえば、パチンコ玉1玉4円のレート、コイン1枚20円のレート)での遊技を可能とする第B一類価値(たとえば、プリペイド残額,4パチの持玉,4パチの貯玉)と低レート(たとえば、パチンコ玉1玉4円未満のレート、コイン1枚20円未満のレート)での遊技を可能とする第B二類価値(たとえば、プリペイド残額,1パチの持玉,1パチの貯玉)とを特定可能であり(たとえば、図77参照)、
前記高レートおよび前記低レートのいずれの遊技を可能にするかを設定する設定手段(たとえば、図78のステップS527)と、
前記設定手段による設定に応じて遊技で獲得した価値を前記第B一類価値および前記第B二類価値のいずれかに含まれる価値に加算する加算手段(たとえば、図12参照。図78のステップS516またはステップS527で設定されたレートを判定して、獲得した価値を判定されたレートの第一類価値または第二類価値に加算する。1パチ,4パチの両方で使用可能なプリペイド残額での遊技で獲得した価値を4パチの持玉に加算してもよいし、4パチの貯玉での遊技機獲得した価値を4パチの持玉に加算してもよい。)とを備える。
このような構成によれば、遊技用装置によって複数のレートを流動的に設定して遊技を可能にすることができる。その結果、複数のレートに流動的に対応することが可能な遊技用装置を提供することができる。
(B−3) 上記(B−1)の遊技用システムまたは(B−2)の遊技用装置において、
前記遊技用装置は、さらに、
前記記録媒体の返却操作を受付ける返却操作受付手段(たとえば、図14の「カード返却」ボタン押下)と、
前記記録媒体で特定される前記第B一類価値が第1閾値未満であるか、および、
前記記録媒体で特定される前記第B二類価値が第2閾値未満であるかを判定する判定手段(たとえば、図80のステップS553)と、
前記返却操作受付手段によって前記返却操作が受付けられたときに、前記判定手段によって前記第B一類価値が前記第1閾値未満であるか、前記第B二類価値が前記第2閾値未満であると判定された場合は、前記記録媒体の返却を制限する返却制限手段(たとえば、図80のステップS556,ステップS557で係員の操作がない限り返却不可とする。)とを備える。
このような構成によれば、記録媒体で特定される第B一類価値が第1閾値未満であるか第B二類価値が第2閾値未満である場合は、記録媒体の返却が制限される。その結果、閾値未満の第B一類価値または第B二類価値を特定可能な記録媒体の排出を防止することができる。
(B−4) 上記(B−1)の遊技用システムまたは(B−2)の遊技用装置において、
前記遊技用装置は、さらに、
前記記録媒体の返却操作を受付ける返却操作受付手段(たとえば、図14の「カード返却」ボタン押下)と、
前記記録媒体で特定される前記第B一類価値が第1閾値未満であるか、および、
前記記録媒体で特定される前記第B二類価値が第2閾値未満であるかを判定する判定手段(たとえば、図80のステップS553)と、
前記返却操作受付手段によって前記返却操作が受付けられたときに、前記判定手段によって前記第B一類価値が前記第1閾値未満、および、前記第B二類価値が前記第2閾値未満のいずれかと判定された場合は、価値の少ない方を多い方に変換して合算する合算手段(たとえば、図80のステップS554、図79のステップS547)とを備え、
前記判定手段は、前記合算手段によって合算された価値が、前記第B一類価値であれば前記第1閾値未満であるかを判定し、前記第B二類価値であれば前記第2閾値未満であるかを判定し(たとえば、図80のステップS555)、
前記遊技用装置は、さらに、
前記判定手段によって前記合算された価値が前記第1閾値または前記第2閾値未満であると判定された場合は、前記記録媒体の返却を制限し、未満でないと判定された場合は、前記記録媒体を返却する返却手段(たとえば、図80のステップS556,ステップS557、図14の返却可否判定処理の後の処理)を備える。
このような構成によれば、記録媒体で特定される第B一類価値と第B二類価値とを合算した価値が閾値未満である場合は、記録媒体の返却が制限される。その結果、閾値未満の第B一類価値または第B二類価値を特定可能な記録媒体の排出を防止することができる。
(B−5) 上記(B−1)の遊技用システムまたは(B−2)の遊技用装置において、
前記遊技用装置は、さらに、
前記記録媒体の返却操作を受付ける返却操作受付手段(たとえば、図14の「カード返却」ボタン押下)と、
前記記録媒体で特定される前記第B一類価値が第1閾値以上であるか、および、
前記記録媒体で特定される前記第B二類価値が第2閾値以上であるかを判定する判定手段(たとえば、図80のステップS552)と、
前記返却操作受付手段によって前記返却操作が受付けられたときに、前記判定手段によって前記第B一類価値が前記第1閾値以上であるか、前記第B二類価値が前記第2閾値以上であると判定された場合は、前記記録媒体を返却する返却手段(たとえば、図14の返却可否判定処理の後の処理)とを備える。
このような構成によれば、記録媒体で特定される第B一類価値が第1閾値以上であるか第B二類価値が第2閾値以上である場合に、記録媒体が返却可能とされる。その結果、閾値未満の第B一類価値または第B二類価値を特定可能な記録媒体の排出を防止することができる。
(B−6) 上記(B−1)の遊技用システムまたは(B−2)の遊技用装置において、
前記遊技用装置は、さらに、
前記記録媒体の返却操作を受付ける返却操作受付手段(たとえば、図14の「カード返却」ボタン押下)と、
前記記録媒体で特定される前記第B一類価値と前記第B二類価値との和が閾値未満であるかを判定する判定手段(たとえば、図80のステップS553においては各レートの持玉が500円相当未満であるかを判断するようにしたが、各レートの持玉を合算したものが500円相当未満であるかを判断するようにしてもよい。)と、
前記返却操作受付手段によって前記返却操作が受付けられたときに、前記判定手段によって前記和が前記閾値未満であると判定された場合は、前記記録媒体の返却を制限し、未満でないと判定された場合は、前記記録媒体を返却する返却手段(たとえば、図80のステップS556,ステップS557、図14の返却可否判定処理の後の処理)とを備える。
このような構成によれば、記録媒体で特定される第B一類価値と第B二類価値との和が閾値未満である場合は、記録媒体の返却が制限され、未満でない場合は、記録日値が返却可能とされる。その結果、閾値未満の第B一類価値または第B二類価値を特定可能な記録媒体の排出を防止することができる。
(B−7) 上記(B−3)から(B−6)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記判定手段は、前記返却操作受付手段によって返却操作が受付けられたときに、前記第B一類価値および前記第B二類価値のいずれにも加算されていない価値があるときは、当該加算されていない価値を前記第B一類価値および前記第B二類価値のいずれかに加算したものに対して判定する(たとえば、図80のステップS553においては各レートの持玉が500円相当未満であるかを判断するようにしたが、各レートの持玉および未計数の遊技玉を合算したものが500円相当未満であるかを判断するようにしてもよい。)。
このような構成によれば、記録媒体で特定される第B一類価値および第B二類価値が閾値未満であるかを、記録媒体で未だ特定可能とされていない価値も加味して判定することができる。その結果、より有効な判定をすることができる。
(B−8) 上記(B−1)から(B−7)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記第B一類価値および前記第B二類価値は、互いに変換可能とされる(たとえば、図78のステップS511〜ステップS515、図79のステップS547)。
このような構成によれば、一方のレートの価値が無くなった場合に他方のレートの価値があれば、その他方のレートの価値を一方のレートの価値に変換することができる。その結果、遊技者の利便性を向上させることができる。
(B−9) 上記(B−8)の遊技用システムまたは遊技用装置において、
前記第B一類価値および前記第B二類価値が互いに変換可能とされるのは、遊技が行なわれていないと判断される場合(たとえば、遊技玉数が0になって所定時間、経過しており、図柄変動中でなく、特定遊技状態や特別遊技状態中でない場合)である(たとえば、図78のステップS514で遊技動作中でないと判断されたときである)。
このような構成によれば、第B一類価値または第B二類価値が用いられて遊技が行なわれているときには他方の価値への変換ができないようにされる。その結果、第B一類価値および第B二類価値が混ざってしまわないようにすることができる。
(B−10) 上記(B−1)から(B−9)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記設定手段は、遊技が行なわれていないと判断される場合(たとえば、遊技玉数が0になって所定時間、経過しており、図柄変動中でなく、特定遊技状態や特別遊技状態中でない場合)に、設定の変更を可能とする(たとえば、図78のステップS523で遊技動作中でないと判断されることを条件としてステップS527でレート切替設定が行なわれる)。
このような構成によれば、第B一類価値または第B二類価値が用いられて遊技が行なわれているときには他方の価値への設定変更ができないようにされる。その結果、第B一類価値および第B二類価値が混ざってしまわないようにすることができる。
(B−11) 上記(B−1)から(B−10)の遊技用システムおよび遊技用装置のいずれかにおいて、
遊技が行なわれていると判断される場合、または、遊技で遊技者にとって有利な特定遊技状態とするか否かの抽選の演出が行われている場合に、前記第B一類価値または前記第B二類価値のいずれを用いて遊技が行なわれているかを報知または示唆する報知手段をさらに備える(たとえば、図78のステップS517。遊技機側で報知してもよいし、遊技用装置で報知してもよい。)。
このような構成によれば、第B一類価値または第B二類価値のいずれが用いられて遊技が行なわれているかを遊技者に分からせることができる。
(B−12) 上記(B−1)から(B−11)の遊技用システムおよび遊技用装置のいずれかにおいて、
前記遊技用装置は、さらに、
前記設定手段による設定を示す情報を前記遊技機に送信する遊技用装置側送信手段(たとえば、図78のステップS518。状態情報要求に第B一類価値であるか第B二類価値であるか否かが含められて送信されるようにしてもよい。)を備える。
このような構成によれば、第B一類価値または第B二類価値のいずれが用いられて遊技が行なわれるかに応じた対応を遊技機に実行させることができる(たとえば、第B一類価値および第B二類価値のいずれが用いられて遊技が行われているかを遊技機に表示させることができる)。
(B−13) 上記(B−12)の遊技用システムまたは遊技用装置において、
前記遊技機は、
遊技の結果を前記遊技用装置に送信するときに、前記遊技用装置側送信手段から受信した設定を示す情報で示される設定を合わせて送信する遊技機側送信手段(たとえば、図12で計数の処理が行なわれるときに状態情報応答に第B一類価値であるか第B二類価値であるかが含められて送信されるようにする。)を備える。
このような構成によれば、遊技用装置で設定された遊技に用いられる価値と遊技機から受信した遊技に用いられている価値との一致を遊技用装置が判断することができる。その結果、両者が一致しないといった不正や異常を発見することができる。
<スロットマシン>
次に、遊技機の他の例としてスロットマシンを説明する。図82は、スロットマシンの前面扉を開放した状態を示す斜視図である。これまでの説明において、パチンコ機を“P台”と略称したこととの関係上、スロットマシンを以下では、“S台”とも略称する。
遊技玉および持玉を用いた上記の遊技用システムは、S台にも同様に適用される。ただし、S台では、玉を使わずにゲームが行なわれる関係上、以下では、遊技玉を遊技点(遊技玉数である遊技玉数を、遊技点の数である遊技点数)、持玉を持点と称する。
図82を参照して、スロットマシン2Sは、本体枠2aSに対して前面扉2bSがその左側縁を揺動中心として開閉可能に設けられている。図82では図示を省略しているが、スロットマシン2Sの図面左隣には、P台と同様にCUが接続される。
スロットマシン2Sでは、遊技点を用いることによって賭数が設定され、入賞に応じてその遊技点が加算更新される。このため、スロットマシン2Sにおいて遊技をする際には、メダルの投入操作は不要である。ゆえに、スロットマシン2Sには、メダル投入口およびメダル払出口が設けられていない。
スロットマシン2Sの筐体内部には、外周に複数種の図柄が配列されたリール2L、2C、2R(以下、左リール、中リール、右リールともいう)が水平方向に並設されており、これらリール2L、2C、2Rに配列された図柄のうち連続する3つの図柄が前面扉2bSに設けられた透視窓から見えるように配置されている。リール2L、2C、2Rの外周部には、複数種類の図柄が所定の順序で描かれている。
前面扉2bSの各リール2L、2C、2Rを取り囲む部分には、タッチパネル式の表示器510が設けられている。この表示器510は、P台の表示器54に相当する表示器であり、表示器54と同種の各種情報(遊技点や持点など)が表示される他、ゲームにおいて設定された賭数などが表示される。表示器510は、図2の表示器54と同様にCUの表示制御部350に接続されており、CU側で表示制御される。なお、この表示器510は、各リール2L、2C、2Rを取り囲む部分に設けるのではなく、P台と同様にさらに下方のパネル部分(図82に示されるスタートスイッチ7Sよりも下方の位置の、従来のS台のメダル払出口が設けられたパネル部分)に設けてもよい。
また、前面扉2bSには、メダル1枚分に相当する「遊技点=1」を用いて賭数を設定する際に操作される1枚BETスイッチ5S、遊技状態に応じて定められた最大の賭数(たとえば、BB発生前の通常遊技状態およびリプレイの当選確率が高確率となるRT(Replay Time)においては「遊技点=3」、ボーナスにおいては「遊技点=2」)を設定する際に操作されるMAXBETスイッチ6S、ゲームを開始する際に操作されるスタートスイッチ7S、リール2L、2C、2Rの回転を各々停止する際に操作されるストップスイッチ8L、8C、8Rがそれぞれ設けられている。
スロットマシン2Sにおいてゲームを行なう場合には、まず、P台と同様に、隣接されたCUを利用して遊技点を確保の上で、その遊技点を使用して賭数を設定する。遊技点は、CUに挿入されたプリペイドカードの残額、持点、あるいは遊技場に預け入れている貯メダル(P台の貯玉に相当)を引落とすことによって得られる。遊技点を使用するには1枚BETスイッチ5S、またはMAXBETスイッチ6Sを操作すればよい。本実施の形態では、たとえば、賭数を1設定することによって遊技点が1減点され、表示器510の遊技点の表示も減算更新される。賭数が設定されると、賭数および遊技状態に応じて定められた入賞ラインが有効となり、スタートスイッチ7Sの操作が有効な状態、すなわち、ゲームが開始可能な状態となる。
ゲームが開始可能な状態でスタートスイッチ7Sを操作すると、各リール2L、2C、2Rが回転し、各リール2L、2C、2Rの図柄が連続的に変動する。この状態でいずれかのストップスイッチ8L、8C、8Rを操作すると、対応するリール2L、2C、2Rの回転が停止し、透視窓に表示結果が導出表示される。
そして全てのリール2L、2C、2Rが停止されることで1ゲームが終了し、有効化された入賞ライン上に予め定められた図柄の組合せ(以下、役とも呼ぶ)が各リール2L、2C、2Rの表示結果として停止した場合には入賞が発生し、その入賞に応じて定められた遊技点が遊技者に対して付与され、表示器510の遊技点の表示も加算更新される。
S台の場合にも、P台と同様に遊技点を計数することが可能である。図1に示すとおり、スロットマシン2Sには、遊技点を計数して持点に変換するための計数ボタン28Sが設けられている。なお、玉貸ボタン、カード返却ボタン、および再プレイボタンは、CU側に設けられている(図2参照)。遊技者は任意のタイミング、あるいは、P台と同様に計数操作を促す表示が表示器510に行なわれたことに基づいて、計数操作を実行する。すると、遊技点が計数されて遊技点が減少する一方で持点が増加する様子が表示器510に表示される。なお、玉貸ボタンは、CU側ではなくP台側およびS台側に設けてもよい。その場合に、玉貸ボタンの操作信号がCU3へ直接入力されるようにしてもよく、あるいは、P台2やS台(スロットマシン)2Sを経由して状態情報応答としてCU3へ送信されるようにしてもよい。
入賞となる役の種類は、遊技状態に応じて定められているが、大きく分けて、ビッグボーナス(BB)、レギュラーボーナス(RB)への移行を伴う特別役と、メダルの払い出しを伴う小役と、賭数の設定を必要とせずに次のゲームを開始可能となる再遊技役(リプレイ)とがある。
複数種類の入賞役のうちのいずれを当選させるか、あるいはいずれの入賞役も当選しない外れとするかは、たとえば、スタート操作が検出されたときに、スロットマシン2Sを制御する主制御部(S台の主制御部161に相当)によって決定される。この決定は、たとえば、所定の乱数発生器から発生され、あるいはソフトウエア上で生成される乱数を抽選することによって決定される。
その後、主制御部は、遊技者によるリールの停止操作を待ち、停止操作時を基準にして、所定のコマ数範囲に当選役に対応する図柄があればそれを引き込み、なければ、他の図柄を引込む制御を行ない、3つの図柄を停止させ、入賞の有無を判定する。主制御基部は、入賞と判定した場合には、入賞の種類に応じた遊技点を遊技者に付与する(遊技点を加算する)。
すなわち、S台により、遊技用価値を用いて1ゲームに対して所定数の賭数を設定することによりゲームが開始可能となるとともに、各々が識別可能な複数種類の識別情報を変動表示可能な可変表示装置に表示結果が導出されることにより1ゲームが終了し、該可変表示装置に導出された表示結果に応じて入賞が発生可能とされたスロットマシンであって、前記可変表示装置に表示結果が導出される前に、複数種類の入賞について発生を許容するか否かを決定する事前決定手段と、前記事前決定手段の決定結果に応じて、前記可変表示装置に表示結果を導出させる制御を行なう導出制御手段と、前記入賞が発生した場合に遊技価値を付与する付与手段とを含むスロットマシンが構成されている。
図83は、カードユニットおよびスロットマシンのそれぞれにおいて記憶している各種データおよびその送受信態様を説明するための説明図である。この図83は、P台の構成として説明した図6の用語をS台用に置き換えたものであり、その態様は、図6を用いて説明したものと同様であるので、ここでは、これ以上の説明を省略する。
<変形例や特徴点など>
次に、以上、説明した本実施の形態の変形例や特徴点などを列挙する。
(1) SC−通信制御IC間断線検知機能
SC325bは、通信制御IC325aとの間でSPI(Serial Peripheral Interface)通信によりデータを送受信する。この場合、SC325bがマスタ側で通信制御IC325aがスレーブ側である。マスタ側のSC325bは、シフトクロックを発生することによってマスタ側のシフトレジスタとスレーブ側のシフトレジスタとを変位させ、データの送受信を行なう。SPI通信では、正常な場合は1バイト目と2バイト目は必ず反転している関係となっているが、両者の間で断線が発生しているとSC325bのデータ受信ラインは不安定(LowかHighのどちらか)な状態となる。このため、断線状態の場合は1バイト目と2バイト目とが反転する関係が成立しない。このことを利用して、SC325bは、受信データが一定時間内に変化しない場合には、断線と判定する。
(2) 本実施の形態では、加算通番と計数通番とはそれぞれ別のデータとして電文フォーマットに規定されているが、これらを要求通番として共通化してもよい。特に、遊技玉の加算と遊技玉の計数とは逆の処理であるため、両処理が同時に発生することは考えにくく、その観点からも両通番を共通化して電文データ量を削減することは可能である。
また、本実施の形態では、要求通番は、予め定めた上限値に達するまで、新たな要求が発生した場合には、先に更新済みの値を元にして通番更新が行なわれる。しかながら、このような制御に代えて、1つの要求に対応する処理がすべて終了した場合には、要求通番を予め定めた初期値に初期化するようにしてもよい。たとえば、図12の例の場合には、計数完了を示す最後の状態情報応答に含める計数通番をm+6ではなく、予め定めた初期値にすることが考えられる。
また、加算通番や計数通番といった要求通番、さらには通常の通番は、1ずつカウントアップされるのではなく、P台2およびCU3の双方が記憶している所定の規則に従って更新(加算更新、減算更新、その他の演算式による更新)するものであってもよい。この場合、通番は、1,2,3といった“連続する番号”ではなく、A、B、Cなどといった概念で更新されるデータとなる。
(3) 上記遊技用システムに遊技機の一例となるスロットマシン(S台)を適用した場合、たとえば、リールおよびリールに付属する各種センサ部分とリールを制御する主制御基板とがP台の遊技盤に対応し、それ以外の構成がP台の遊技枠に対応する。ただし、S台には、図2に示した遊技枠の各種検出スイッチ41a、701、33、発射制御基板31、および発射モータ18は、不要である。
従来のS台にはクレジット機能が設けられており、これが有効になっているときには、賭数を設定するとクレジットが減算され、入賞が発生するとクレジットが加算される。ただし、クレジットには上限が定められており、クレジット数が上限値に達している状態で入賞が発生すると、ホッパーからメダルが払い出される。
一方、本実施の形態に係るS台では、賭数を設定すると遊技点が減算され、入賞が発生すると遊技点が加算される。また、遊技点が所定数に達すると、計数操作を促す表示がなされ、計数操作をすることによって、遊技点が持点に変換される。このため、従来のS台のようにクレジットが上限に達してメダルを払い出す必要がない。その結果、本実施の形態に係るS台にはホッパーを設ける必要がない。
その結果、遊技場は、大量のメダルを確保する必要がなく、経済的負担が軽減される。また、遊技場は、メダルの補充・回収といった業務やメダル詰まりなどに対応するためのメンテナンス業務からも解放される。遊技客は、クレジットが満タンになった後で賭け操作毎にメダルを投入する煩わしさから解放され、遊技に集中しやすくなる。
他方、S台がメダルレスになった場合には、大量のメダルを獲得した遊技者が席の脇にメダルが入った箱を積み上げて自身の腕を誇示するような行為をすることができなくなるという不都合が生じる。しかしながら、本実施の形態では、上記のとおりドル箱表示する機能が設けられているため、このような不都合が生じることも防止できる。なお、S台の場合のドル箱表示は、多数の玉に代えて多数のメダルが積載されているようにするのが望ましい。
遊技機としてS台を適用した場合、「持点」および「遊技点」の2種類と、「クレジット」および「クレジット超過点」の2種類のデータとを用いて、以下のように各データが変換されるような遊技用システムを構成することも可能である。なお、S台の表示器510あるいは表示器29Sには、これら4種類のデータを表示する。
まず、プリペイドカードの残額、貯メダル、または持点からの変換操作(貸出操作、貯メダル払出し操作、持点払出し操作)が検出された場合には、夫々が引き落とされて、遊技点に変換される。
遊技点は、従来のスロットマシンにおけるメダルに対応するデータである。このため、たとえば、表示器510あるいは表示器29Sには遊技点の点数を表示するとともに、遊技点相当の数のメダル画像を表示することが望ましい。たとえば、このメダル画像に遊技者が触れてスロットマシンに投入するような擬似投入メダル操作(たとえば、メダルを押し込むような操作)が検出されると、メダル画像が消え、遊技点が減算されて、代わりに賭数が1つ設定される。このような擬似メダル投入操作が3度行なわれることによって、賭数が最大値の3に設定される。
その後、さらに擬似メダル投入操作が検出されると、その検出に応じて、クレジットが加算される。クレジットには上限値(たとえば、50)が設定されており、クレジットが上限値を超えたときには、クレジット超過点が加算される。
賭数設定は、遊技点を用いて上記のように行なうことが可能である他、クレジットを用いて行なうことも可能である。すなわち、1枚BETスイッチ5Sの操作があれば、賭数設定値が1加算され、クレジットが1減算される。また、MAXBETスイッチ6Sの操作があれば、賭数が3に設定され、クレジットが賭数設定に応じて減算される。
ゲームの結果、入賞が発生すると、入賞に応じた数の得点がクレジットに加算される。なお、クレジットの上限値をオーバーする入賞が発生したときには、そのオーバー分の点数がクレジット超過点として記憶される。このクレジット超過点は、従来のスロットマシンにおける、クレジットの上限を超えて入賞が発生したときに払い出されるメダルに相当する。このため、たとえば、表示器510あるいは表示器29Sにはクレジット超過点を表示するとともに、クレジット超過点相当の数のメダル画像を表示することが望ましい。また、このメダル画像は、遊技点に対応するメダル画像と区別できるように色を変えるなどすることが望ましい。
また、クレジット超過点は、遊技者の操作によって遊技点に変換されるようにすることが望ましい。たとえば、クレジット超過点に対応するメダル画像に遊技者が触れて遊技点に変換するような擬似メダル変換操作(たとえば、メダルを押し込むような操作)が検出されると、メダル画像が消え、クレジット超過点が減算されて遊技点が加算されるものとする。
あるいは、クレジットが上限値未満になれば、自動的にクレジット超過点がクレジットに変換されるようにしてもよい。
遊技者が計数操作を実行すると、遊技点、クレジット、およびクレジット超過点の各々が計数されて持点に変換される。その結果、遊技者の持点は、「カード持玉数+遊技点+クレジット+クレジット超過点」と掲載される。なお、“カード持玉数”とは、遊技点に変換していない変換前の持点(現時点で遊技者が所有している持玉数)である。
以上の説明において、持点、遊技点、クレジット、およびクレジット超過点の4種類のデータは、CUとS台とでデータのやりとりをすることによって双方で記憶してもよく、あるいは、持点はCU側のみで、それ以外はS台側のみで記憶してもよい。また、クレジット超過点をドル箱表示の対象としてもよい。
また、以上の説明では、クレジット超過点を用いる例を説明したが、クレジット超過点を用いなくてもよい。この場合、クレジットの上限を超えるような場合には、遊技点に加算するようにしてもよい。
(4) 本実施の形態では、カード度数を消費することによって、遊技点が加算される。あるいは、貯玉(貯メダル)を消費することによって、遊技点が加算される。つまり、カード度数あるいは貯玉から遊技点に変換される。一方、カード度数および貯玉から持点(計数玉、計数メダル)には変換されない。しかしながら、カード度数および貯玉から一旦、持点に変換されるようにしてもよい。
(5) 本実施の形態では、計数操作によって、遊技点が持点に変換される。この場合の変換率は1:1である。しかしながら、変換される場合の変換率を1:1以外としてもよい。たとえば、遊技点100点を変換した場合、そのうちの3点を差し引いた97点が持点に変換されるようにしてもよい。または、持点に対して10割未満の所定割合を乗じて得られた数の遊技玉に変換されるようにしてもよい。
(6) 持点を特定可能に記録するための記録媒体は、スマートフォンなどの携帯端末を利用したものとしてもよい。この場合、CUに携帯端末と通信するための通信部を設けて、携帯端末を通信部にかざすことによって、携帯端末内に記憶されているIDをCUが認識し、後は本実施の形態に記載したような手順で遊技を可能とする。一方、遊技終了時には、再度、携帯端末を通信部にかざすことによって、遊技終了時の持点がIDを通じて遊技者の持点に加算されるようにする。
(7) 遊技点を計数するための操作手段は、CU側に設けてもよい。その場合の操作手段は、タッチパネルに表示されるものとしてもよく、物理的なスイッチで構成してもよい。
(8) 図12を参照して、P台は、計数された計数玉(持玉)を一時記憶する計数玉数カウンタを備えているものの、計数玉の累積値を記憶するカウンタを備えていない。しかしながら、P台側に、計数玉の累積値を記憶する計数玉累積記憶カウンタを備えてもよい。また、CU側には、カード持玉(計数玉)を記憶する領域が備えられているが、この領域には、挿入されたカード自体に持玉が記録されていた場合には、そのカード持玉も含めて現在の遊技者の持玉数が記憶される。このため、この領域のみでは、今回の遊技で遊技者が計数した計数玉の数を特定できない。そこで、今回の遊技で遊技者が計数した計数玉の数を記憶する領域をCU側にさらに設けてもよい。CUは、この場合、遊技が開始してからP台から送られてくる計数玉数の情報に基づいて当該領域に持玉を加算し、持玉が遊技玉に変換されると、当該領域から持玉を減算する。
(9) 遊技玉(遊技点)を計数して持点変換する際には、計数表示のみならず、計数音をスピーカから出力する制御をしてもよい。また、遊技点の計数の際には、玉が1つずつ、玉貯留皿から計数器へと落下していくような画像表示を行なうことが考えられる。
(10) 計数操作に基づいて遊技点を持点に変換する変換表示(遊技玉を計数していき、持玉が増えていく様を示す表示)を行なうタイミングと、データ上で遊技点を減算し、持点を加算する演算を行なうタイミングとは様々なものとすることができる。変換表示が終わってから、前記演算を実行してもよい。また、そのために、変換表示が終わった後に遊技機からCUに対して計数データが送信されるようにしてもよい。なお、このような変形例は、持点を遊技点に変換する場合についても同様に適用可能である。
(11) 本実施の形態では、CUと遊技機との間の通信において、CUを一次局、遊技機を二次局とするコマンド−レスポンス方式が採用されているが、一次局と二次局との関係を逆にしてもよい。あるいは、このような主従の関係がある通信方式を採用するのではなく、通信すべき要求が生じたときに双方が相手にデータを送信するような方式を採用してもよい。
(12) 本実施の形態では、遊技機側およびCU側の双方で遊技玉(遊技点)を記憶するようにしているが、遊技玉(遊技点)は遊技機側のみで記憶し、CU側では記憶しないようにしてもよい。一方、カード持玉(持点)は、CU側でのみ記憶しているが、遊技機側でも記憶するようにしてもよい。特に、遊技玉(遊技点)は遊技機側のみで記憶し、一方、カード持玉(持点)は、CU側でのみ記憶するようにして、データの記憶管理の役割分担を明確にしてもよい。
(13) 貸出操作あるいは持点(持玉)から遊技点(遊技玉)への変換操作(貸出操作)が検出された場合、遊技点は、1点ずつカウントアップするようにしてもよいが、遊技者の待ち時間を短くするために、複数点(たとえば、100円相当の25点)ずつカウントアップするように表示してもよい。また、逆に、遊技点の計数操作が実行されたときにも、複数点ずつ持点がカウントアップするように表示してもよい。さらに、遊技点あるいは持点をカウントアップ表示するときの単位数を複数種類の中から設定できるようにしてもよい。その設定の際には、P台あるいはS台の表示器のタッチパネルを利用することが考えられる。
(14) 玉貸ボタン、カード返却ボタン、再プレイボタン、および計数ボタンのうちの少なくとも1つ、あるいはすべては、遊技機側に設けてもよく、あるいはCU側に設けてもよい。また、そのボタンは、タッチパネル式の表示器として説明した遊技機側あるいはCU側の表示器に表示することが考えられる。
(15) 前述の実施の形態では、入賞の発生により直接遊技玉数や遊技点を加算するものを示したが、その代わりに、入賞の発生により持点を加算し、その加算された持点を引落して遊技玉数や遊技点を加算するように制御してもよい。
(16) 前述の実施の形態では、遊技者所有の有価価値(プリペイド残額、持玉、貯玉)の範囲内で価値を引落して該引落し相当分の遊技点を加算するにおいて、引落した価値と同じ価値の遊技点を加算するものを示したが、その代わりに、たとえば、実際に引落した価値に対し消費税相当額分少ない遊技点を加算するように制御してもよい。
(17) 本実施の形態では、遊技場から離れた鍵管理センタに鍵管理サーバを設置した。しかしながら、鍵管理サーバは遊技場内に設置してもよい。これにより、遊技場外に鍵管理サーバを設置する場合と比較すると、CUと鍵管理サーバとの通信を高速化し易く、また、通信障害の発生率を低減できる。
(18) CU制御部323は、ホールサーバ801を介して鍵管理サーバ800から基板セキュリティ情報(基板認証鍵や更新情報を含む)を受信する。しかしながら、これに代えて、鍵管理サーバ800とCU制御部323との間にホールサーバ801を介することなく、鍵管理サーバ800からCU制御部323へ基板セキュリティ情報が送信される構成とてもよい。たとえば、鍵管理サーバ800とCUとを直接、回線接続することや、鍵管理サーバ800と各CUとの間にホールサーバ801と異なる中継用の通信装置を設けることが考えられる。
(19) 本実施の形態では、遊技情報の一例として、持玉、遊技玉、カードの残額、貯玉、その他、玉数情報や遊技台情報を挙げて説明した。しかしながら、遊技情報は、遊技機での遊技に関連したその他の情報をも含む。たとえば、遊技者が選択あるいはカスタマイズした遊技者の好みのキャラクタを可変表示装置278や表示器54などの可変表示手段(可変表示装置)に表示可能にした場合には、そのキャラクタを特定可能な情報も遊技情報に含まれる。このような遊技者の嗜好に合うキャラクタを含む画面デザインの情報は、たとえば、遊技者のカードIDと対応付けて遊技の終了時にサーバに送信して記憶させ、新たに遊技を開始する際にはサーバからCUあるいはP台へダウンロードするようにしてもよい。
(20) 遊技玉数表示器29では、玉の発射または計数動作に連動して玉数が1つずつ減っていく表示がなされる。また、遊技玉数表示器29では、玉貸操作等に応じて玉数が1つずつあるいは所定単位数ずつ増加する表示がなされる。遊技玉数表示器29を液晶表示装置などの画像表示器で構成した場合には、単に遊技玉数をデジタル表示するのではなく、遊技玉数の変化が弾球によるものであるのか、計数によるものであるのか、入賞の発生によるものであるのか、貯玉の引き落としによるものであるのか、貸出操作によるものであるか、など、その種類に応じた画像を遊技玉数の表示更新と併せて表示するようにしてもよい。
(21) 持玉または遊技玉の数の変化の有無をCUまたはP台でチェックし、所定期間、持玉または遊技玉の数が変化しない場合には、CUまたはP台でその旨を報知するようにしてもよい。あるいは、報知のための信号を外部装置(ホールコンピュータ、P台上の呼び出しランプ)に出力してもよい。これにより、たとえば、残り僅かな玉が放置されたままで遊技放棄された台を店員が把握しやすくする。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。