JP6582226B2 - 遊技機 - Google Patents
遊技機 Download PDFInfo
- Publication number
- JP6582226B2 JP6582226B2 JP2016176467A JP2016176467A JP6582226B2 JP 6582226 B2 JP6582226 B2 JP 6582226B2 JP 2016176467 A JP2016176467 A JP 2016176467A JP 2016176467 A JP2016176467 A JP 2016176467A JP 6582226 B2 JP6582226 B2 JP 6582226B2
- Authority
- JP
- Japan
- Prior art keywords
- special
- game
- winning
- display
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000000694 effects Effects 0.000 claims description 865
- 238000004519 manufacturing process Methods 0.000 claims description 182
- 230000015654 memory Effects 0.000 claims description 132
- 238000003860 storage Methods 0.000 claims description 105
- 230000002093 peripheral effect Effects 0.000 claims description 6
- 238000000034 method Methods 0.000 description 2083
- 230000008569 process Effects 0.000 description 2052
- 230000033001 locomotion Effects 0.000 description 761
- 238000012545 processing Methods 0.000 description 467
- 238000012544 monitoring process Methods 0.000 description 267
- 230000005540 biological transmission Effects 0.000 description 170
- 238000009826 distribution Methods 0.000 description 163
- 238000013461 design Methods 0.000 description 146
- 230000008859 change Effects 0.000 description 134
- 238000005034 decoration Methods 0.000 description 115
- 230000006399 behavior Effects 0.000 description 104
- 238000012360 testing method Methods 0.000 description 75
- 238000001514 detection method Methods 0.000 description 67
- 238000004458 analytical method Methods 0.000 description 56
- 238000004891 communication Methods 0.000 description 56
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 51
- 238000006243 chemical reaction Methods 0.000 description 51
- 230000006854 communication Effects 0.000 description 50
- 230000009471 action Effects 0.000 description 47
- 230000004048 modification Effects 0.000 description 37
- 238000012986 modification Methods 0.000 description 37
- 238000004364 calculation method Methods 0.000 description 35
- 230000002159 abnormal effect Effects 0.000 description 32
- 238000012217 deletion Methods 0.000 description 32
- 230000037430 deletion Effects 0.000 description 32
- 238000010586 diagram Methods 0.000 description 31
- 239000000203 mixture Substances 0.000 description 31
- OMFRMAHOUUJSGP-IRHGGOMRSA-N bifenthrin Chemical compound C1=CC=C(C=2C=CC=CC=2)C(C)=C1COC(=O)[C@@H]1[C@H](\C=C(/Cl)C(F)(F)F)C1(C)C OMFRMAHOUUJSGP-IRHGGOMRSA-N 0.000 description 30
- 239000002131 composite material Substances 0.000 description 30
- 230000005856 abnormality Effects 0.000 description 27
- 230000006870 function Effects 0.000 description 24
- 230000001276 controlling effect Effects 0.000 description 23
- 230000004044 response Effects 0.000 description 23
- 238000002360 preparation method Methods 0.000 description 22
- 239000011521 glass Substances 0.000 description 21
- 238000007906 compression Methods 0.000 description 20
- 238000010304 firing Methods 0.000 description 20
- 230000007704 transition Effects 0.000 description 20
- 230000006835 compression Effects 0.000 description 19
- 210000003128 head Anatomy 0.000 description 18
- 238000011084 recovery Methods 0.000 description 17
- 238000003780 insertion Methods 0.000 description 16
- 230000037431 insertion Effects 0.000 description 16
- 238000007689 inspection Methods 0.000 description 15
- 230000002441 reversible effect Effects 0.000 description 15
- 230000004397 blinking Effects 0.000 description 14
- 230000018109 developmental process Effects 0.000 description 14
- 230000002829 reductive effect Effects 0.000 description 14
- 238000011161 development Methods 0.000 description 13
- 230000008901 benefit Effects 0.000 description 11
- 238000002156 mixing Methods 0.000 description 11
- 238000004904 shortening Methods 0.000 description 11
- 238000012546 transfer Methods 0.000 description 11
- 230000006837 decompression Effects 0.000 description 8
- 238000009877 rendering Methods 0.000 description 8
- 230000007423 decrease Effects 0.000 description 7
- 230000009467 reduction Effects 0.000 description 7
- 230000002194 synthesizing effect Effects 0.000 description 7
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 6
- 230000017105 transposition Effects 0.000 description 6
- 239000004108 vegetable carbon Substances 0.000 description 6
- 235000012712 vegetable carbon Nutrition 0.000 description 6
- 239000001678 brown HT Substances 0.000 description 5
- 235000012670 brown HT Nutrition 0.000 description 5
- 230000005389 magnetism Effects 0.000 description 5
- 230000010355 oscillation Effects 0.000 description 5
- 230000036961 partial effect Effects 0.000 description 5
- 239000000725 suspension Substances 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 229930091051 Arenine Natural products 0.000 description 4
- 239000004215 Carbon black (E152) Substances 0.000 description 4
- 239000004235 Orange GGN Substances 0.000 description 4
- 230000015572 biosynthetic process Effects 0.000 description 4
- 239000004109 brown FK Substances 0.000 description 4
- 239000003086 colorant Substances 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 4
- 239000004177 patent blue V Substances 0.000 description 4
- 235000012736 patent blue V Nutrition 0.000 description 4
- 239000004172 quinoline yellow Substances 0.000 description 4
- 235000012752 quinoline yellow Nutrition 0.000 description 4
- 239000007858 starting material Substances 0.000 description 4
- 238000003786 synthesis reaction Methods 0.000 description 4
- 239000004230 Fast Yellow AB Substances 0.000 description 3
- 206010044048 Tooth missing Diseases 0.000 description 3
- 239000004126 brilliant black BN Substances 0.000 description 3
- 235000012709 brilliant black BN Nutrition 0.000 description 3
- 239000001679 citrus red 2 Substances 0.000 description 3
- 235000013986 citrus red 2 Nutrition 0.000 description 3
- 230000006866 deterioration Effects 0.000 description 3
- 238000003825 pressing Methods 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 239000004229 Alkannin Substances 0.000 description 2
- 102220475437 Vacuolar protein sorting-associated protein 33A_D33A_mutation Human genes 0.000 description 2
- 230000002411 adverse Effects 0.000 description 2
- 239000004176 azorubin Substances 0.000 description 2
- 235000012733 azorubine Nutrition 0.000 description 2
- 230000007175 bidirectional communication Effects 0.000 description 2
- 239000004161 brilliant blue FCF Substances 0.000 description 2
- 235000012745 brilliant blue FCF Nutrition 0.000 description 2
- 239000003990 capacitor Substances 0.000 description 2
- 239000004106 carminic acid Substances 0.000 description 2
- 235000012730 carminic acid Nutrition 0.000 description 2
- 230000002844 continuous effect Effects 0.000 description 2
- 238000001816 cooling Methods 0.000 description 2
- 239000013078 crystal Substances 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 230000029087 digestion Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000012447 hatching Effects 0.000 description 2
- 239000004179 indigotine Substances 0.000 description 2
- 235000012738 indigotine Nutrition 0.000 description 2
- 238000003475 lamination Methods 0.000 description 2
- WABPQHHGFIMREM-UHFFFAOYSA-N lead(0) Chemical compound [Pb] WABPQHHGFIMREM-UHFFFAOYSA-N 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 239000004149 tartrazine Substances 0.000 description 2
- 235000012756 tartrazine Nutrition 0.000 description 2
- BDEDPKFUFGCVCJ-UHFFFAOYSA-N 3,6-dihydroxy-8,8-dimethyl-1-oxo-3,4,7,9-tetrahydrocyclopenta[h]isochromene-5-carbaldehyde Chemical group O=C1OC(O)CC(C(C=O)=C2O)=C1C1=C2CC(C)(C)C1 BDEDPKFUFGCVCJ-UHFFFAOYSA-N 0.000 description 1
- 239000004214 Fast Green FCF Substances 0.000 description 1
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 206010034719 Personality change Diseases 0.000 description 1
- 101100484930 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) VPS41 gene Proteins 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000001994 activation Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 244000145845 chattering Species 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 239000006059 cover glass Substances 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 235000019240 fast green FCF Nutrition 0.000 description 1
- 239000004120 green S Substances 0.000 description 1
- 235000012701 green S Nutrition 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000011068 loading method Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000035699 permeability Effects 0.000 description 1
- MCSOAHVAIJXNDN-ZTFGCOKTSA-N ram-322 Chemical compound C1C(=O)CC[C@@]2(O)[C@H]3CC4=CC=C(OC)C(O)=C4[C@]21CCN3C MCSOAHVAIJXNDN-ZTFGCOKTSA-N 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 239000011347 resin Substances 0.000 description 1
- 229920005989 resin Polymers 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000002151 riboflavin Substances 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000020509 sex determination Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000002834 transmittance Methods 0.000 description 1
- 230000017260 vegetative to reproductive phase transition of meristem Effects 0.000 description 1
Images
Landscapes
- Display Devices Of Pinball Game Machines (AREA)
- Pinball Game Machines (AREA)
Description
また、このような遊技機として、積層された5つの表示レイヤの何れに図柄(特別図柄)、予告、背景、喚起態様解説、図柄解説の画像データを設定するかを演出内容に応じて変化させるものが提案されている(例えば、特許文献1参照)。
一方、始動記憶表示よりも奥側に演出用の画像を重ねて表示すると、遊技者が当該演出用の画像自体を視認し難いため、効果的な演出を行うことができず、遊技の興趣の向上を図ることができない。
そこで、本発明の目的は、始動記憶表示の視認性の低下を抑制しつつ効果的な演出を行って、遊技の興趣の向上を図ることである。
始動口への遊技球の入賞に基づき、複数の識別図柄を変動表示する変動表示ゲームを実行し、当該変動表示ゲームの結果態様が予め定められた特別結果態様となった場合に、遊技者にとって有利な特別遊技状態を発生可能な遊技機において、
表示装置と、
前記始動口への遊技球の入賞に基づき、前記変動表示ゲームの実行権利を始動記憶として所定の上限数まで記憶可能な始動記憶手段と、
前記始動記憶手段に記憶された始動記憶に関する情報を示す始動記憶表示及び演出用の画像を前記表示装置に表示させる演出制御手段と、を備え、
前記演出制御手段は、
前記表示装置に表示される表示画面を作成する作成手段と、
前記作成手段によって作成された表示画面を前記表示装置に表示させる表示制御手段と、を有し、
前記作成手段は、背景画像よりも画面手前側に配置される複数の前記始動記憶表示のうち、表示態様を変更させる何れかの始動記憶表示である対象始動記憶表示及び当該対象始動記憶表示の周辺の始動記憶表示である周辺始動記憶表示の各々の輪郭部分よりも内側を透過させて前記演出用の画像が表示される所定の表示画面を作成可能であり、
前記所定の表示画面による演出において、前記対象始動記憶表示及び前記周辺始動記憶表示の各々の輪郭部分は視認可能な状態を維持し、
前記所定の表示画面による演出が終了すると、前記対象始動記憶表示は当該演出の開始前とは異なる表示態様となり、前記周辺始動記憶表示は当該演出の開始前と同じ表示態様へと戻ることを特徴とする。
以下、本発明の好適な実施の形態を図面に基づいて説明する。図1は、本発明の一実施形態の遊技機の説明図である。
なお、本実施形態ではタッチパネル29を演出ボタン25と一体的に設けたが、タッチパネル29は、演出ボタン25と別体であってもよく、例えば、演出ボタン25の近傍にサブ表示装置を設け、そのサブ表示装置の表示面にタッチパネル29を設けてもよい。
また、遊技領域32におけるセンターケース40の下方左側には、三つの一般入賞口35が配置され、センターケース40の下方右側であって普図始動ゲート34よりも下側には、一つの一般入賞口35が配置されている。これら一般入賞口35に入賞した遊技球は、入賞口スイッチ35a(図6参照)により検出される。
普通変動入賞装置37は、上端側が右側に倒れる方向に回動することで開放して遊技球が流入し易い状態に変換可能な可動部材37bと、遊技球の流入を規制する隔壁37dとを備えている。可動部材37bは、常時は起立することで隔壁37dとの間隔を遊技球の直径以下にした状態、すなわち遊技球が流入できない閉じた閉状態(遊技者にとって不利な状態)を保持している。そして、普図変動表示ゲームの結果が所定の停止表示態様となった場合には、駆動装置としての普電ソレノイド37c(図6参照)によって、普通変動入賞装置37に遊技球が流入し易い開状態(遊技者にとって有利な状態)に変化させられるようになっている。普通変動入賞装置37に入賞した遊技球は、始動口2スイッチ37a(図6参照)により検出される。
特別変動入賞装置38は、上端側が手前側に倒れる方向に回動して開放可能になっているアタッカ形式の開閉扉38cを有しており、補助遊技としての特図変動表示ゲームの結果如何によって大入賞口を閉じた状態(遊技者にとって不利な閉塞状態)から開放状態(遊技者にとって有利な状態)に変換する。すなわち、特別変動入賞装置38は、例えば、駆動装置としての大入賞口ソレノイド38b(図6参照)により駆動される開閉扉38cによって開閉される大入賞口を備え、特別遊技状態中は、大入賞口を閉じた状態から開いた状態に変換することにより大入賞口内への遊技球の流入を容易にさせ、遊技者に所定の遊技価値(賞球)を付与するようになっている。なお、大入賞口の内部(入賞領域)には、当該大入賞口に入った遊技球を検出する検出手段としての大入賞口スイッチ(カウントスイッチ)38a(図6参照)が配設されている。本実施形態の遊技機では、大入賞口スイッチ38aが2つ設けられ、大入賞口内に流入した遊技球は何れかの大入賞口スイッチ38aに検出されるようになっている。このように大入賞口スイッチ38aを複数設けることで、大入賞口内に流入した遊技球を迅速に検出できる。
入賞装置90は、上部の流入口90aに流入した遊技球を内部で第1始動入賞口36と第2始動入賞口97とに交互に振り分ける振分部材92を備えている(図3参照)。第1始動入賞口36に入賞した遊技球は、始動口1スイッチ36a(図6参照)によって検出され、第2始動入賞口97に入賞した遊技球は、始動口3スイッチ97a(図6参照)によって検出される。
また、入賞装置90の下方には、入賞口などに入賞しなかった遊技球を回収するアウト口30aが設けられている。
図3(a)に示すように、入賞装置90は、その内部のうち、流入口90aの直下となる位置に振分部材92を備えている。また、振分部材92の左下方には第1始動入賞口36が配され、振分部材92の右下方には第2始動入賞口97が配されている。
さらに、振分部材92や第1始動入賞口36、第2始動入賞口97の前方を覆うように前カバー部材が設けられている。この前カバー部材は、入賞装置90内の遊技球の挙動を視認可能なように透明又は半透明となっている。
振分部材92は、上腕部92bが常に上を向いた状態で、図3(b)に示すように左保持部92eが流入口90aに流入した遊技球を受け入れ可能な位置と、図3(c)に示すように右保持部92fが流入口90aに流入した遊技球を受け入れ可能な位置との間で回動可能となっている。
また、図3(c)に示すように、右保持部92fが流入口90aに流入した遊技球を受け入れ可能な位置にある場合は、左保持部92eが第1始動入賞口36へ向けて遊技球を流下させた状態となる。
図5(a)は、演出操作部550の平面図である。本実施形態の演出操作部550は、図5(a)に示すように、演出ボタン(プッシュボタン)25と、演出ボタン(プッシュボタン)25の上面に設けられたタッチパネル29と、を備えて構成されている。すなわち、演出操作部550は、物理的なプッシュボタン機能に加えて、タッチセンサ機能(タッチパネル機能)を有している。
遊技機10は遊技制御装置100を備え、遊技制御装置100は、遊技を統括的に制御する主制御装置(主基板)であって、遊技用マイクロコンピュータ(以下、遊技用マイコンと称する)111を有するCPU部110と、入力ポートを有する入力部120と、出力ポートやドライバなどを有する出力部130と、CPU部110と入力部120と出力部130との間を接続するデータバス140などからなる。
演出制御装置300は、遊技用マイコン111と同様にアミューズメントチップ(IC)からなる主制御用マイコン(CPU)311と、主制御用マイコン311からのコマンドやデータに従って表示装置41への映像表示のための画像処理を行うグラフィックプロセッサとしてのVDP(VideoDisplayProcessor)312と、各種のメロディや効果音などをスピーカ19a,19bから再生させるため音の出力を制御する音源LSI314を備えている。
遊技制御装置100の遊技用マイコン111のCPU111Aでは、普図始動ゲート34に備えられたゲートスイッチ34aからの遊技球の検出信号の入力に基づき、普図の当り判定用乱数値を抽出してROM111Bに記憶されている判定値と比較し、普図変動表示ゲームの当りはずれを判定する処理を行う。そして、普図表示器52に、識別図柄(識別情報)を所定時間変動表示した後、停止表示する普図変動表示ゲームを表示する処理を行う。この普図変動表示ゲームの結果が当りの場合は、普図表示器52に第1当り停止図柄〜第3当り停止図柄の各々に対応した特別の結果態様を表示するとともに、普電ソレノイド37cを動作させ、普通変動入賞装置37の可動部材37bを所定時間(例えば、0.5秒間又は1.7秒間)上述のように開放する制御を行う。すなわち、遊技制御装置100が、変換部材(可動部材37b)の変換制御を行う変換制御実行手段をなす。なお、普図変動表示ゲームの結果がはずれの場合は、普図表示器52にはずれの結果態様を表示する制御を行う。
先ず、メイン処理について説明する。メイン処理は、電源が投入されることで開始される。このメイン処理においては、図8及び図9に示すように、まず、割込みを禁止する処理(ステップS1)を行ってから、割込みが発生したときにレジスタ等の値を退避する領域の先頭アドレスであるスタックポインタを設定するスタックポインタ設定処理(ステップS2)を行う。次に、レジスタバンク0を指定し(ステップS3)、所定のレジスタ(例えば、Dレジスタ)にRAM先頭アドレスの上位アドレスをセットする(ステップS4)。本実施形態の場合、RAMのアドレスの範囲は0000h〜01FFhで、上位としては00hか01hをとり、ステップS4では先頭の00hをセットする。次に、発射停止の信号を出力して発射許可信号を禁止状態に設定する(ステップS5)。発射許可信号は遊技制御装置100と払出制御装置200の少なくとも一方が発射停止の信号を出力している場合に禁止状態に設定され、遊技球の発射が禁止されるようになっている。
また、主制御手段(遊技制御装置100)は、データを記憶可能なRAM111Cと、外部からの操作が可能な初期化操作部(初期化スイッチ)と、初期化操作部が操作されたことに基づきRAM111Cに記憶されたデータを初期化する初期化手段(遊技制御装置100)と、を備え、当該初期化手段の操作状態を待機時間の開始前に読み込むようにしていることとなる。
また、主制御手段(遊技制御装置100)は、待機時間の経過後にRAM111Cへのアクセスを許可するようにしていることとなる。
図10には、上述のメイン処理におけるチェックサム算出処理(ステップS19,S43)を示した。このチェックサム算出処理では、まず、算出アドレスの開始値としてRWMの先頭アドレスを設定し(ステップS51)、繰り返し数を設定し(ステップS52)、算出値として「0」を設定する(ステップS53)。繰り返し数には使用しているRAMのバイト数が設定される。
図11には、上述のメイン処理における初期値乱数更新処理(ステップS35)を示した。この初期値乱数更新処理では、まず、大当り図柄初期値乱数を+1更新する(ステップS61)。そして、当り初期値乱数を+1更新し(ステップS62)、当り図柄初期値乱数を+1更新して(ステップS63)、初期値乱数更新処理を終了する。
ここで、「大当り図柄初期値乱数」は、特図変動表示ゲームの大当り停止図柄を決定する乱数の初期値となる乱数のことである。また、「当り初期値乱数」は、普図変動表示ゲームの当りを決定する乱数の初期値となる乱数、「当り図柄初期値乱数」は、普図変動表示ゲームの当り停止図柄を決定する乱数の初期値となる乱数のことである。このように、メイン処理の中で時間が許す限り初期値乱数をインクリメントし続けることによって、乱数のランダム性を高めることができるようにしている。
次に、タイマ割込み処理について説明する。図12に示すように、タイマ割込み処理は、クロックジェネレータ内のCTC回路で生成される周期的なタイマ割込み信号がCPU111Aに入力されることで開始される。遊技用マイコン111においてタイマ割込みが発生すると、自動的に割込み禁止状態になって、図12のタイマ割込み処理が開始される。
なお、メイン処理におけるステップS5で発射停止の信号を出力すると、この出力処理が行われることで発射許可の信号が出力され、発射許可信号を許可状態に設定可能な状態とされる。この発射許可信号は払出制御装置を経由して発射制御装置に出力される。その際、信号の加工等は行われない。また、当該発射許可信号は遊技制御装置から見た発射許可の状態を示す第1の信号であり、払出制御装置から見た発射許可の状態を示す第2の信号(発射許可信号)も払出制御装置内で生成され、発射制御装置に出力される。つまり、2つの発射許可信号が発射制御装置に出力されており、両者が共に発射許可となっている場合に、遊技球が発射可能な状態となるよう構成されている。
ここで、本実施形態では、割込み禁止状態を復元する処理(すなわち、割込みを許可する処理)や、レジスタバンクの指定を復元する処理(すなわち、レジスタバンク0を指定する処理)は、割込みリターンの際(タイマ割込み処理の終了時)に自動的に行う。なお、使用するCPUによっては、割込み禁止状態を復元する処理やレジスタバンクの指定を復元する処理の実行を命令する必要がある遊技機もある。
次に、上述のタイマ割込み処理における入力処理(ステップS103)の詳細について説明する。図13に示すように、入力処理においては、まず入力ポート1、すなわち、第1入力ポート122に取り込まれたスイッチの検出信号の状態を読み込む(ステップS121)。そして、8ビットのポート(入力ポート1)のうち未使用ビットがあればそのビットの状態をクリアし(ステップS122)、読み込まれた入力ポート1の状態をRWM内のスイッチ制御領域1にセーブ(格納)する(ステップS123)。
<1>ガラス枠開放検出スイッチ63(ビット0)
<2>本体枠開放検出スイッチ64(ビット1)
<3>RAM初期化スイッチ112(ビット2)(この処理では未使用扱い)
<4>停電監視信号(ビット3)(この処理では未使用扱い)
<5>払出異常ステータス信号(ビット4)
<6>シュート球切れスイッチ信号(ビット5)
<7>オーバーフロースイッチ信号(ビット6)
<8>タッチスイッチ信号(ビット7)
<1>始動口2スイッチ37a(ビット0)(パターン分岐により、「始動口2入賞信号」、「普通電動役物1入賞信号1」としても出力される。)
<2>始動口1スイッチ36a(ビット1)(「始動口1入賞信号」)
<3>左入賞口スイッチ(ビット2)(「普通入賞口1入賞信号」)
<4>右入賞口スイッチ(ビット3)(「普通入賞口2入賞信号」)
「左入賞口スイッチ」は、入賞装置90の左方に設けられた入賞口スイッチ35aであり、「右入賞口スイッチ」は、入賞装置90の右方に設けられた入賞口スイッチ35aである。
<5>ゲートスイッチ34a(ビット4)(「普通図柄1に係るゲート通過信号1」)
<6>大入賞口スイッチ38a(ビット5)(「特別電動役物1入賞信号1」)
<7>始動口3スイッチ97a(ビット6)(「始動口3入賞信号」)
<8>未使用(ビット7)(ゲートスイッチ予備として図示しない中継基板に回路接続され、常時オフ状態となるように中継基板上でGND接続(Low:0)固定されている。)
<1>盤電波センサ62(ビット0)(反転ビット)
<2>スイッチ異常検知信号(ビット1)
<3>磁気センサ61(ビット2)
<4>枠電波エラー信号(ビット3)
<5>払出ビジー信号(ビット4)
<6>未使用(ビット5〜7)
したがって、ステップS126で準備する入力ポート2の未使用ビットデータと、ステップS131で準備する入力ポート3の未使用ビットデータとは、異なるデータであるが、結果として同じ値のデータである可能性もある。
また、ステップS127で準備する入力ポート2の反転するビットデータと、ステップS132で準備する入力ポート3の反転するビットデータとは、異なるデータであるが、結果として同じ値のデータである可能性もある。
次に、上述の入力処理におけるスイッチ読み込み処理(ステップS128,S133)の詳細について説明する。図14に示すように、スイッチ読み込み処理においては、まず、対象の入力ポートに取り込まれた信号の状態を読み込む(ステップS141)。そして、8ビットのポートのうち未使用ビットがあればそのビットの状態をクリアし(ステップS142)、反転の必要なビットを反転(ステップS143)した後、対象のスイッチ制御領域のポート入力状態にセーブ(格納)する(ステップS144)。その後、2回目の読み込みまでのディレイ時間(例えば、約100μ秒)が経過するのを待つ(ステップS145)。
次に、前述のタイマ割込み処理における出力処理(ステップS104)の詳細について説明する。図15に示すように、出力処理では、まず、一括表示装置(LED)50のセグメントのデータを出力する出力ポート135にオフデータを出力(リセット)する(ステップS161)。次に、普電ソレノイド37cや大入賞口ソレノイド38bのデータを出力する出力ポート134に出力するデータを合成し、出力する(ステップS162)。
一回のタイマ割込み処理においてはこれらの処理の全てが行われるため、RAM111Cにはデジットカウンタの値にかかわらず全てセグメント線に対応する出力データがセグメント領域に設定される。そして、このように設定されたセグメント線の出力データのうち、今回のデジットカウンタの値に応じたセグメント線の出力データが選択されて使用されるようになっている。
また、上述したようにRAM111Cは遊技機への電力の供給が停止されても記憶されたデータを保持することができるようにされている。そして、RAM111Cにおいてセグメント線の出力データを記憶するセグメント領域やデジットカウンタの値を記憶する領域は、遊技機への電力の供給が停止した際に実行されるチェックサム算出処理においてチェックサムの算出対象となる領域に含まれている。よって、遊技機への電力の供給が再開された際に行われる正当性の判定の対象とされる。これにより、停電から正常に遊技機が復旧した場合には停電発生時の状態から一括表示装置50の表示を再開可能となる。
したがって、正当性判定手段が正当性の判定対象とする所定のデータには、少なくとも記憶手段に記憶された各コモン線に対応するセグメントデータの全てが含まれるので、遊技機への電力の供給が開始された際に遊技機への電力の供給が停止された状態から遊技を開始でき、違和感のない変動表示ゲームの表示が可能となる。
したがって、複数種類の変動表示ゲームの何れであっても遊技機への電力の供給が開始された際に遊技機への電力の供給が停止された状態から遊技を開始でき、違和感のない変動表示ゲームの表示が可能となる。
次に、前述のタイマ割込み処理における払出コマンド送信処理(ステップS105)の詳細について説明する。図16に示すように払出コマンド送信処理では、まず、入賞数カウンタ領域2にカウントがあるかをチェックする(ステップS181)。
入賞数カウンタ領域2は、入賞口への入賞により発生した賞球数(払出予定数)が所定数(ここでは10個)になる毎に外部装置へ出力するメイン賞球信号を送信するために用いる領域であって、メイン賞球信号の生成処理を行っていない賞球に対応する入賞のデータが記憶される。すなわち、入賞数カウンタ領域2が、メイン賞球信号に関する情報を記憶可能なメイン賞球信号カウンタをなす。なお、外部装置には、このメイン賞球信号の他に、払出制御装置200からも実際に払い出した賞球数が所定数(ここでは10個)になる毎に払出賞球信号が出力されるようになっており、この二つの信号を照合することで、不正な払い出しを監視することが可能となっている。
具体的には、本実施形態の場合、入賞数カウンタ領域1の3個賞球カウンタ領域、10個賞球カウンタ領域、及び14個賞球カウンタ領域には、それぞれ65535入賞まで記憶することができ、入賞数カウンタ領域2の3個賞球カウンタ領域、10個賞球カウンタ領域、及び14個賞球カウンタ領域には、それぞれ255入賞まで記憶することができるよう構成されている。
そして、減算結果を賞球残数領域にセーブして(ステップS191)、ステップS188の処理に戻る。これにより、ホールコンピュータなどの外部の装置にメイン賞球信号が出力されるようになる。すなわち、遊技制御装置100が、所定の入賞領域への遊技球の入賞に伴い払い出しが決定された賞球数に関する情報を含むメイン賞球信号を遊技機の外部に出力する外部情報出力手段をなす。なお、メイン賞球信号を出力するようにすることで、大当り中などの遊技球の払い出しが集中する場合に、遊技球の払い出しとともに賞球信号の出力が遅延して、大当り中に発生した正確な賞球数が計数することができないといった不具合を防止することができる。
ここで、ステップS181〜S191の処理は、メイン賞球信号の出力回数を更新する(増やす)処理であり、ステップS192〜S201の処理は、払出コマンドを送信する処理である。
払出ビジー信号は払出制御装置200が払出制御を即座に開始可能な状態か否かを示す信号であって、払出制御を即座に開始可能でない場合には払出ビジー信号がオン状態(ビジー状態)とされる。つまり、払出ビジー信号は、払出コマンド(賞球指令)を受付可能な状態であるか否かを示す信号とも言える。すなわち、払出ビジー信号が、払出制御手段(払出制御装置200)が払出制御を開始可能であるか否を示す状態信号をなす。
払出ビジー信号がオン状態(ビジー状態)になる条件は、例えば、払出動作中、球貸し動作中、シュート球切れエラー中、オーバーフローエラー中、枠電波不正発生中、払出球検出スイッチ(払い出された球を監視するスイッチ)の異常中、払出不足エラー中、払出過剰エラー中、払出制御装置200のメモリ内に払い出すべき賞球数のカウント(未払い出しの賞球数=獲得遊技球数残)があるとき(=0でないとき)等である。
このように遊技制御装置100が、払出制御装置200から出力される状態信号に基づいて賞球指令を送信する制御を行うので、払出制御装置200が即座に払出制御を実行可能な場合にのみ賞球指令が送信されることとなる。これにより、未だ払い出しが行われていない入賞に対応するデータは遊技制御装置100側で保持されるようになるので停電発生時には遊技制御装置100でバックアップされるようになり、払出制御装置200にバックアップするための機能を備えなくとも正確な払出制御を実現できる。
また、外部の装置に送信されるメイン賞球信号は払出ビジー信号の状態に関係なく出力されるので、遅滞なくメイン賞球信号を出力でき、ホールコンピュータなどの外部の装置では賞球の払い出しの時期を正確に把握でき、例えばベース値を正確に把握できるようになる。また、賞球指令に関する情報を記憶可能な賞球指令カウンタと、メイン賞球信号に関する情報を記憶可能なメイン賞球信号カウンタとを別々に備えるので、送信タイミングが異なる賞球指令とメイン賞球信号の情報を別々に管理でき、情報を確実に管理することができる。
図17には、タイマ割込み処理における乱数更新処理1(ステップS106)を示した。乱数更新処理1は、初期値乱数更新処理の対象となっている大当り図柄乱数、当り乱数、当り図柄乱数の初期値(スタート値)を更新するための処理である。この乱数更新処理1では、まず、大当り図柄乱数が次回の初期値(スタート値)設定待ちであるかを判定する(ステップS211)。
大当り図柄乱数が初期値設定待ちでない場合(ステップS211;N)は、普図の当り乱数が次回の初期値(スタート値)設定待ちであるかを判定する(ステップS214)。また、大当り図柄乱数が初期値設定待ちである場合(ステップS211;Y)は、次回初期値として大当り図柄初期値乱数をロードし(ステップS212)、ロードした大当り図柄乱数の次回の初期値を対応する乱数カウンタ(乱数領域)のスタート値を保持するレジスタ(スタート値設定レジスタ)に設定して(ステップS213)、普図の当り乱数が次回の初期値(スタート値)設定待ちであるかを判定する(ステップS214)。
図18には、タイマ割込み処理における乱数更新処理2(ステップS107)を示した。乱数更新処理2は、特図1,特図2の変動表示ゲームにおける変動パターンを決定するための変動パターン乱数を更新する処理である。なお、本実施形態の遊技機では、変動パターン乱数として1バイトの乱数(変動パターン乱数2、3)と、2バイトの乱数(変動パターン乱数1)があり、乱数更新処理2は両方を更新対象とし、割込みが発生するごとに更新対象を切り替えて処理する。しかも、更新対象の乱数が2バイトの場合には、上位のバイトと下位のバイトに対して異なる割込み時に更新処理を行うようになっている。すなわち、メイン処理に対する一の割込み処理において実行される乱数更新処理2による2バイトの変動パターン乱数1(リーチ変動態様決定用乱数)の更新は、上位1バイト若しくは下位1バイトの何れかについて実行されるように構成されている。
次いで、算出されたアドレスに基づいて参照したテーブルから乱数の上限判定値を取得する(ステップS234)。このとき参照するテーブルには、乱数の種類ごとに上限判定値、すなわち、乱数が一巡したか否かを判定するための値が格納されている。
本実施形態の場合、演出乱数更新テーブル上に、上限判定値や、M1カウンタのマスク値、更新する乱数領域の種別情報(1バイト乱数、2バイト乱数(上位)、2バイト乱数(下位))、更新領域のアドレスなどが、更新する乱数の種類分(4ブロック)定義されている。
図19には、タイマ割込み処理における入賞口スイッチ/状態監視処理(ステップS108)を示した。この入賞口スイッチ/状態監視処理では、まず、大入賞口(特別変動入賞装置38)内の一方の大入賞口スイッチ38aに対応する入賞口監視テーブル1を準備し(ステップS301)、大入賞口が開いていないにもかかわらず大入賞口に不正な入賞がないか監視するとともに正常な入賞を検出する不正&入賞監視処理(ステップS302)を実行する。
その後、大入賞口(特別変動入賞装置38)内の他方の大入賞口スイッチ38aに対応する入賞口監視テーブル2を準備し(ステップS303)、不正な入賞がないか監視するとともに正常な入賞を検出する不正&入賞監視処理(ステップS304)を実行する。
本実施形態の場合、状態スキャンカウンタの値を遊技機状態監視テーブル1に参照することで、状態スキャンカウンタの値が「0」である場合はスイッチのコネクタ抜けなどの発生により出力されるスイッチ異常1信号に基づく状態の監視が設定され、状態スキャンカウンタの値が「1」である場合は払出制御装置200からのシュート球切れスイッチ信号に基づく状態の監視が設定される。状態スキャンカウンタの値が「2」である場合はオーバーフロースイッチ信号に基づく状態の監視が設定され、状態スキャンカウンタの値が「3」である場合は払出異常ステータス信号に基づく状態の監視が設定される。
本実施形態の場合、状態スキャンカウンタの値を遊技機状態監視テーブル2に参照することで、状態スキャンカウンタの値が「0」である場合はガラス枠開放検出スイッチ63から出力される信号に基づく状態の監視が設定され、状態スキャンカウンタの値が「1」である場合は本体枠開放検出スイッチ64から出力される信号に基づく状態の監視が設定される。また、状態スキャンカウンタの値が「2」である場合は枠電波不正信号に基づく状態の監視が設定され、状態スキャンカウンタの値が「3」である場合はタッチスイッチ信号に基づく状態の監視が設定される。
本実施形態の場合、状態スキャンカウンタの値を遊技機状態監視テーブル3に参照することで、状態スキャンカウンタの値が「0」である場合はスイッチのコネクタ抜けなどの発生により出力されるスイッチ異常2信号に基づく状態の監視が設定される。なお、遊技機状態監視テーブル3には状態スキャンカウンタが「1」から「3」の場合は定義されていない。
図20には、上述の入賞口スイッチ/状態監視処理における不正&入賞監視処理(ステップS302,S304,S306)を示した。この不正&入賞監視処理は、特別変動入賞装置38の二つの大入賞口スイッチ38aの各々及び普通変動入賞装置37の始動口2スイッチ37aに対して行われる処理である。大入賞口(特別変動入賞装置38)や普電(普通変動入賞装置37)については、無理やり開閉部材を開いて遊技球を入れて賞球を払い出させる不正が行われ易いため、入賞の検出の他に不正の監視をする。
判定個数を5個としているのは、例えば、開状態にある大入賞口が閉状態に変換した際に遊技球が大入賞口の扉部材に挟まり、その遊技球が大入賞口スイッチの有効期間を過ぎて入賞した場合や信号にノイズがのった場合にそれを不正と判断しないようにするためであり、不正でないのに簡単にエラーと判定しないためである。
また、不正入賞数が監視対象の不正発生判定個数以上である場合(ステップS325;Y)は、不正入賞数を不正発生判定個数に留め(ステップS326)、対象の不正入賞報知タイマ領域に初期値(例えば、60000m秒)をセーブする(ステップS327)。次に、対象の不正発生コマンドを準備し(ステップS328)、不正フラグとして不正入賞発生フラグを準備して(ステップS329)、準備した不正フラグを対象の不正フラグ領域の値と比較する(ステップS340)。
図21には、上述の入賞口スイッチ/状態監視処理及び不正&入賞監視処理における入賞数カウンタ更新処理(ステップS308,S331)を示した。この入賞数カウンタ更新処理においては、まず、入賞口監視テーブルから監視する入賞口スイッチの個数を取得し(ステップS351)、対象の入賞口スイッチに入力(正確には入力の変化)があるかを判定する(ステップS352)。入賞口スイッチ/状態監視処理にて準備された入賞口監視テーブル(不正監視テーブル)のうちの入賞テーブルには、監視の繰り返し回数(スイッチの数)に加えて、スイッチ毎に、監視スイッチビット、入賞数カウンタ領域1の下位アドレス、入賞数カウンタ領域2の下位アドレスの情報が定義されている。
図22には、上述の入賞口スイッチ/状態監視処理における始動口エラー監視処理(ステップS309)を示した。この始動口エラー監視処理においては、まず、始動口1スイッチ36aに入力があるか判定する(ステップS371)。そして、始動口1スイッチ36aに入力がないと判定した場合(ステップS371;N)には、始動口3スイッチ97aに入力があるか判定し(ステップS375)、始動口1スイッチ36aに入力があると判定した場合(ステップS371;Y)には、前回の入賞も第1始動口(第1始動入賞口36)への入賞であったか判定する(ステップS372)。
一方、ステップS372で、前回の入賞は第1始動口(第1始動入賞口36)への入賞でなかったと判定した場合(ステップS372;N)には、連続入賞数領域に1をセーブし(ステップS384)、始動口判定データ領域に始動口1入賞情報をセーブして(ステップS385)、始動口3スイッチ97aに入力があるか判定する(ステップS375)。
一方、ステップS375で、始動口3スイッチ97aに入力があると判定した場合(ステップS375;Y)には、前回の入賞も第3始動口(第2始動入賞口97)への入賞であったか判定する(ステップS376)。
次いで、始動口エラー報知タイマ領域に初期値(例えば、60秒)をセーブし(ステップS380)、始動口エラーフラグ領域にエラー発生中フラグをセーブし(ステップS381)、始動口エラー発生コマンドを準備し(ステップS382)、演出コマンド設定処理(ステップS383)を行って、始動口エラー監視処理を終了する。
ステップS388で、始動口エラー報知タイマが0であると判定した場合(ステップS388;Y)には、始動口エラー監視処理を終了する。
一方、ステップS388で、始動口エラー報知タイマが0でないと判定した場合(ステップS388;N)には、始動口エラー報知タイマを−1更新して(ステップS389)、始動口エラー報知タイマが0であるか判定する(ステップS390)。
一方、ステップS390で、始動口エラー報知タイマが0であると判定した場合(ステップS390;Y)には、始動口エラーフラグ領域に正常中フラグをセーブし(ステップS391)、始動口エラー解除コマンドを準備し(ステップS392)、演出コマンド設定処理(ステップS393)を行って、始動口エラー監視処理を終了する。
入賞装置90においては、遊技球が第1始動口(第1始動入賞口36)と第3始動口(第2始動入賞口97)とに交互に振り分けられるように構成されているが、同一の始動口に連続して入賞している場合には、入賞装置90の故障や、糸釣り球等による不正入賞の可能性が考えられるので、始動口エラー監視処理では、それをチェックしている。本実施形態では、4回連続して同じ始動口に入賞した場合にエラー扱いとするようになっている。
図23には、上述の入賞口スイッチ/状態監視処理における遊技機状態チェック処理(ステップS312,S314,S317)を示した。この遊技機状態チェック処理では、まず、状態スキャンカウンタに対応する状態監視テーブルを取得し(ステップS401)、監視対象である信号がオンであるかを判定する(ステップS402)。
状態監視テーブル(入賞口スイッチ/状態監視処理にて準備した遊技機状態監視テーブル)には、状態スキャンカウンタに対応した情報が定義されている。この情報としては、例えば、状態監視領域の先頭アドレスの下位アドレス、対象の信号情報が保存されているスイッチ制御領域のポート入力状態領域の下位アドレス、対象の信号のビットだけを取り出すマスクデータ、信号オンの判定データ、状態オフコマンド(エラー系の場合はエラー報知終了コマンドをなす)、状態オンコマンド(エラー系の場合はエラー報知開始コマンドをなす)、状態オフ監視タイマ比較値、状態オン監視タイマ比較値が含まれる。
図24には、上述の入賞口スイッチ/状態監視処理における払出ビジー信号チェック処理(ステップS318)を示した。この払出ビジー信号チェック処理においては、まず、払出制御装置200から入力される払出ビジー信号がオンであるかを判定する(ステップS421)。なお、払出ビジー信号は、払出制御装置200が払出制御を開始できない場合にオン状態とされるようになっている。
また、電源投入時にビジー信号ステータスがクリアされるので、何れかの信号状態が信号確定時間に亘り継続するまではビジー信号ステータスは設定されず不定状態となる。これにより、停電が発生し該停電から復帰した場合には、払出制御装置200から払出制御を開始可能であることを示す状態信号が出力されていたとしても、直ちに賞球指令が払出制御装置200に送信されないようになり、払出制御装置200から払出制御を開始可能であることを示す状態信号が所定期間に亘って継続して出力されたことに対応して賞球指令が払出制御装置200に送信されるようになる。これにより、払出制御装置200が賞球指令を受信して即座に払出処理が可能なことを確実に把握してから賞球指令を送信するようになり、賞球指令に対応する払出制御が行われないことを防止できる。
次に、上述のタイマ割込み処理における特図ゲーム処理(ステップS109)の詳細について説明する。特図ゲーム処理では、始動口1スイッチ36a、始動口2スイッチ37a、及び始動口3スイッチ97aの入力の監視と、特図変動表示ゲームに関する処理全体の制御、特図の表示の設定を行う。
次に、大入賞口スイッチ監視処理(ステップA2)を行う。この大入賞口スイッチ監視処理では、特別変動入賞装置38内に設けられた大入賞口スイッチ38aでの遊技球の検出を監視する処理を行う。
ステップA7にて、特図ゲーム処理番号が「1」の場合は、特図の停止表示時間の設定や、特図表示中処理を行うために必要な情報の設定等を行う特図変動中処理(ステップA9)を行う。
ステップA7にて、特図ゲーム処理番号が「3」の場合は、大入賞口の開放時間の設定や開放回数の更新、大入賞口開放中処理を行うために必要な情報の設定等を行うファンファーレ/インターバル中処理(ステップA11)を行う。
ステップA7にて、特図ゲーム処理番号が「5」の場合は、大当りラウンドが最終ラウンドであれば大入賞口内にある残存球が排出されるための時間を設定する処理や、大当り終了処理を行うために必要な情報の設定等を行う大入賞口残存球処理(ステップA13)を行う。
ステップA7にて、特図ゲーム処理番号が「6」の場合は、特図普段処理を行うために必要な情報の設定等を行う大当り終了処理(ステップA14)を行う。
次に、上述の特図ゲーム処理における始動口スイッチ監視処理(ステップA1)の詳細について説明する。図26に示すように、始動口スイッチ監視処理では、先ず、第1始動口(第1始動入賞口36)入賞監視テーブルを準備し(ステップA101)、ハード乱数取得処理(ステップA102)を行う。このハード乱数取得処理では、対象となる始動口スイッチ(ここでは始動口1スイッチ36a)に入力があった場合にラッチレジスタに抽出された大当り乱数をロードして準備し、対象となる始動口への入賞があったことを示す情報の設定を行う。その後、特図1の始動口である第1始動口への入賞があるか否かを判定する(ステップA103)。
ステップA103にて、第1始動口への入賞がないと判定した場合(ステップA103;N)には、ステップA109の処理に移行して、それ以降の処理を行う。
一方、ステップA103にて、第1始動口への入賞があると判定した場合(ステップA103;Y)には、特図時短中(普電サポート中)であるか否かを判定する(ステップA104)。
一方、ステップA104にて、特図時短中であると判定した場合(ステップA104;Y)には、右打ち指示報知コマンドを準備して(ステップA105)、演出コマンド設定処理(ステップA106)を行う。すなわち、時短状態であれば、特図変動表示ゲームの確率状態にかかわらず、右打ち指示報知コマンドを準備して(ステップA105)、演出コマンド設定処理(ステップA106)を行う。本実施形態の遊技機10の場合、第1始動口(第1始動入賞口36)へは左打ちでないと入賞せず、普通変動入賞装置37へは右打ちでないと入賞しない。したがって、時短状態は、左打ちよりも右打ちの方が有利な遊技状態となるが、時短状態中に第1始動口に入賞があった場合(すなわち、時短状態中に左打ちされた場合)には、右打ち指示報知コマンドを演出制御装置300に送信して、右打ちするよう指示する報知(警告)を演出制御装置300によって行うよう構成されている。
次いで、第1始動口(第1始動入賞口36)による保留の情報を設定するテーブルを準備した後(ステップA107)、特図始動口スイッチ共通処理(ステップA108)を行う。
ステップA111にて、第2始動口への入賞がないと判定した場合(ステップA111;N)には、ステップA116の処理に移行して、それ以降の処理を行う。
一方、ステップA111にて、第2始動口への入賞があると判定した場合(ステップA111;Y)には、普通電動役物(普通変動入賞装置37)が作動中である、すなわち、普通変動入賞装置37が作動して遊技球の入賞が可能な開状態となっているか否かを判定し(ステップA112)、普通電動役物が作動中である(ステップA112;Y)と判定すると、ステップA114の処理に移行して、それ以降の処理を行う。一方、ステップA112にて、普通電動役物が作動中でない(ステップA112;N)と判定すると、普電不正発生中であるかを判定する(ステップA113)。
ステップA118にて、第3始動口への入賞がないと判定した場合(ステップA118;N)は、始動口スイッチ監視処理を終了する。
一方、ステップA118にて、第3始動口への入賞があると判定した場合(ステップA118;Y)には、特図時短中(普電サポート中)であるか否かを判定する(ステップA119)。
一方、ステップA119にて、特図時短中であると判定した場合(ステップA119;Y)には、右打ち指示報知コマンドを準備して(ステップA120)、演出コマンド設定処理(ステップA121)を行う。すなわち、時短状態であれば、特図変動表示ゲームの確率状態にかかわらず、右打ち指示報知コマンドを準備して(ステップA120)、演出コマンド設定処理(ステップA121)を行う。本実施形態の遊技機10の場合、第3始動口(第2始動入賞口97)へは左打ちでないと入賞せず、普通変動入賞装置37へは右打ちでないと入賞しない。したがって、時短状態は、左打ちよりも右打ちの方が有利な遊技状態となるが、時短状態中に第3始動口に入賞があった場合(すなわち、時短状態中に左打ちされた場合)には、右打ち指示報知コマンドを演出制御装置300に送信して、右打ちするよう指示する報知(警告)を演出制御装置300によって行うよう構成されている。
次いで、第3始動口(第2始動入賞口97)による保留の情報を設定するテーブルを準備した後(ステップA122)、特図始動口スイッチ共通処理(ステップA123)を行って、始動口スイッチ監視処理を終了する。
次に、上述の始動口スイッチ監視処理におけるハード乱数取得処理(ステップA102,A110,A117)の詳細について説明する。図27に示すように、ハード乱数取得処理では、まず、第1始動口(第1始動入賞口36)、第2始動口(普通変動入賞装置37)、及び第3始動口(第2始動入賞口97)のうち、監視対象の始動口の入賞なし情報を設定して(ステップA131)、始動口1スイッチ36a、始動口2スイッチ37a、及び始動口3スイッチ97aのうち、監視対象の始動口スイッチに入力があるか否かを判定する(ステップA132)。
そして、監視対象の始動口スイッチに入力がない場合(ステップA132;N)は、ハード乱数取得処理を終了する。
一方、監視対象の始動口スイッチに入力がある場合(ステップA132;Y)は、乱数ラッチレジスタステータスを読み込み(ステップA133)、対象の乱数ラッチレジスタにラッチデータがあるかを判定する(ステップA134)。
また、対象の乱数ラッチレジスタにラッチデータがある場合(ステップA134;Y)は、監視対象のハード乱数ラッチレジスタに抽出された大当り乱数をロードし、準備する(ステップA135)。そして、第1始動口(第1始動入賞口36)、第2始動口(普通変動入賞装置37)、及び第3始動口(第2始動入賞口97)のうち、監視対象の始動口の入賞あり情報を設定して(ステップA136)、ハード乱数取得処理を終了する。
次に、上述の始動口スイッチ監視処理における特図始動口スイッチ共通処理(ステップA108,A115,A123)の詳細について説明する。特図始動口スイッチ共通処理は、始動口1スイッチ36aや始動口2スイッチ37aや始動口3スイッチ97aの入力があった場合に、各々の入力について共通して行われる処理である。
出力回数がオーバーフローしない場合(ステップA143;N)は、更新後の値をRWMの始動口信号出力回数領域にセーブして(ステップA144)、ステップA145の処理に移行する。
一方、出力回数がオーバーフローする場合(ステップA143;Y)は、ステップA145の処理に移行する。本実施形態では、始動口信号出力回数領域に「0」から「255」までの値を記憶することができる。そして、ロードした値が「255」である場合には+1更新によって更新後の値は「0」になり、出力回数がオーバーフローすると判定して、セーブしないよう構成されている。
更新対象の特図保留数が上限値未満でない場合(ステップA145;N)は、特図始動口スイッチ共通処理を終了する。
また、更新対象の特図保留数が上限値未満である場合(ステップA145;Y)は、更新対象の特図保留数(特図1保留数又は特図2保留数)を+1更新して(ステップA146)、監視対象の始動口スイッチ及び特図保留数に対応する飾り特図保留数コマンドを準備し(ステップA147)、演出コマンド設定処理(ステップA148)を行って、対象の始動口入賞フラグをセーブする(ステップA149)。続けて、監視対象の始動口スイッチ及び特図保留数に対応する乱数格納領域のアドレスを算出して(ステップA150)、ステップA102,A110,A117のハード乱数取得処理にて準備した大当り乱数をRWMの大当り乱数格納領域にセーブする(ステップA151)。次に、監視対象の始動口スイッチの大当り図柄乱数を抽出し、準備して(ステップA152)、RWMの大当り図柄乱数格納領域にセーブする(ステップA153)。この大当り図柄乱数は、特図保留情報判定処理(ステップA157)で使用する。
次いで、特図1保留数と特図2保留数の合計に対応する変動順序フラグ格納領域のアドレス(保留1から8までの何れかの場所)を算出し(ステップA155)、算出した領域に対象(特図1または特図2)の変動順序フラグをセーブし(ステップA156)、特図保留情報判定処理(ステップA157)を行って、特図始動口スイッチ共通処理を終了する。
次に、上述の特図始動口スイッチ共通処理における特図保留情報判定処理(ステップA157)の詳細について説明する。特図保留情報判定処理は、対応する始動記憶に基づく特図変動表示ゲームの開始タイミングより前に当該始動記憶に対応した結果関連情報の判定を行う先読み処理である。
ステップA163で、判定結果として大当りが設定されたと判定した場合(ステップA163;Y)は、対象の始動口スイッチに対応する大当り図柄乱数チェックテーブルを設定し(ステップA164)、ステップA152にて準備した大当り図柄乱数に対応する停止図柄情報を取得して(ステップA165)、ステップA167の処理に移行する。
一方、ステップA163で、判定結果として大当りが設定されていないと判定した場合(ステップA163;N)、すなわち判定結果としてはずれが設定された場合は、はずれの停止図柄情報を設定して(ステップA166)、ステップA167の処理に移行する。
次いで、対象の始動口スイッチ及び停止図柄情報に対応する先読み停止図柄コマンド(低確率)を準備し(ステップA168)、演出コマンド設定処理(ステップA169)を行う。
次いで、高確率判定フラグを準備して(ステップA170)、大当り乱数値が大当り判定値(大当り高確率判定値)と一致するか否かにより大当りであるか判定する先読み大当り判定処理(ステップA171)を行い、判定結果として大当りが設定されたか判定する(ステップA172)。
ステップA172で、判定結果として大当りが設定されたと判定した場合(ステップA172;Y)には、対象の始動口スイッチに対応する大当り図柄乱数チェックテーブルを設定し(ステップA173)、ステップA152にて準備した大当り図柄乱数に対応する停止図柄情報を取得して(ステップA174)、ステップA176の処理に移行する。
一方、ステップA172で、判定結果として大当りが設定されていないと判定した場合(ステップA172;N)、すなわち判定結果としてはずれが設定された場合には、はずれの停止図柄情報を設定して(ステップA175)、ステップA176の処理に移行する。
ステップA176で、特図の高確率中でないと判定した場合(ステップA176;N)には、ステップA178の処理に移行する。
一方、ステップA176で、特図の高確率中であると判定した場合(ステップA176;Y)には、ステップA167にて停止図柄情報をセーブした図柄情報領域に、ステップA174にて取得した停止図柄情報またはステップA175にて設定した停止図柄情報を上書きしてセーブし(ステップA177)、ステップA178の処理に移行する。なお、図柄情報領域にセーブされる停止図柄情報は、変動パターンの先読み等で使用される。
次に、変動パターンを設定するためのパラメータである特図情報を設定する特図情報設定処理(ステップA180)を行い、特図変動表示ゲームの変動態様を設定する変動パターン設定処理を行う(ステップA181)。
すなわち、遊技制御装置100が、始動入賞記憶手段(遊技制御装置100)に始動記憶として記憶される乱数を、当該始動記憶に基づく変動表示ゲームの実行前に判定する(例えば、特別結果となるか否か等を判定)事前判定手段をなす。なお、始動記憶に対応して記憶された乱数値を事前に判定する時期は、当該始動記憶が発生した始動入賞時だけではなく、当該始動記憶に基づく変動表示ゲームが行われる前であればいつでもよい。
次に、上述の特図保留情報判定処理における先読み大当り判定処理(ステップA162,A171)の詳細について説明する。
図30に示すように、先読み大当り判定処理では、まず、大当り判定値の下限判定値を設定し(ステップA191)、対象の大当り乱数の値が下限判定値未満か判定する(ステップA192)。
一方、ステップA192で、大当り乱数の値が下限判定値未満でないと判定した場合(ステップA192;N)には、当該先読み大当り判定処理の直前に準備した判定フラグは高確率判定フラグであるか判定する(ステップA193)。
一方、ステップA193で、高確率判定フラグでないと判定した場合(ステップA193;N)、すなわち当該先読み大当り判定処理がステップA162の処理である場合には、低確率中の上限判定値を設定して(ステップA195)、対象の大当り乱数の値が上限判定値より大きいか判定する(ステップA196)。
一方、ステップA196で、対象の大当り乱数の値が上限判定値より大きくないと判定した場合(ステップA196;N)、すなわち大当りである場合には、判定結果として大当りを設定して(ステップA198)、先読み大当り判定処理を終了する。
次に、上述の特図ゲーム処理における大入賞口スイッチ監視処理(ステップA2)の詳細について説明する。図31に示すように、大入賞口スイッチ監視処理では、まず、特図ゲーム処理番号の値が「4」であるか、すなわち大入賞口開放中処理中であるかを判定する(ステップA201)。大入賞口開放中処理中である場合(ステップA201;Y)は、大入賞口スイッチ38aに入力があるか判定する(ステップA203)。また、大入賞口開放中処理中でない場合(ステップA201;N)は、特図ゲーム処理番号の値が「5」であるか、すなわち大入賞口残存球処理中であるかを判定する(ステップA202)。
大入賞口残存球処理中である場合は(ステップA202;Y)は、大入賞口スイッチ38aに入力があるか判定する(ステップA203)。また、大入賞口残存球処理中でない場合は(ステップA202;N)は、大入賞口スイッチ監視処理を終了する。
特図ゲーム処理タイマが「0」になるまで特図ゲーム処理番号は次に移行しないため、このように特図ゲーム処理番号によって遊技の進行状態をチェックすることができる。
一方、ステップA203で、大入賞口スイッチ38aに入力があると判定した場合(ステップA203;Y)には、大入賞口カウントコマンドを準備して(ステップA204)、演出コマンド設定処理(ステップA205)を行う。
次いで、特図ゲーム処理番号の値が「4」であるか、すなわち大入賞口開放中処理中であるか判定する(ステップA206)。
一方、ステップA206で、大入賞口開放中処理中であると判定した場合(ステップA206;Y)には、大入賞口カウント数を+1更新して(ステップA207)、大入賞口カウント数が上限値(一のラウンドで入賞可能な遊技球数。例えば、9個)以上となったかを判定する(ステップA208)。
一方、大入賞口カウント数が上限値以上となった場合(ステップA208;Y)は、特図ゲーム処理タイマ領域を0クリアして(ステップA209)、大入賞口スイッチ監視処理を終了する。これにより大入賞口が閉鎖されて一のラウンドが終了することとなる。
次に、上述の特図ゲーム処理における特図普段処理(ステップA8)の詳細について説明する。図32に示すように、特図普段処理では、先ず、特図1保留数及び特図2保留数は共に「0」であるか判定する(ステップA301)。
ステップA301で、特図1保留数及び特図2保留数は共に「0」でないと判定した場合(ステップA301;N)には、変動順序フラグ格納領域(保留数合計1用)からフラグをロードして(ステップA302)、今回の変動が特図1の変動であるか判定する(ステップA303)。
ステップA303で、今回の変動が特図1の変動であると判定した場合(ステップA303;Y)には、特図1保留数に対応する飾り特図保留数コマンドを準備し(ステップA304)、演出コマンド設定処理(ステップA305)を行い、特図1変動開始処理(ステップA306)を行って、特図普段処理を終了する。なお、この時点では、特図1保留数は−1更新されていないが、ステップA304では、−1更新された値に対応するコマンド(飾り特図保留数コマンド)を準備する。
続けて、客待ちデモコマンドを準備して(ステップA312)、演出コマンド設定処理(ステップA313)を行う。
次いで、処理番号として特図普段処理にかかる「0」を設定し(ステップA314)、その処理番号を特図ゲーム処理番号領域にセーブして(ステップA315)、変動図柄判別フラグ領域をクリアする(ステップA316)。そして、大入賞口不正監視期間フラグ領域に不正監視期間中フラグをセーブして(ステップA317)、特図普段処理を終了する。
次に、上述の特図普段処理における特図1変動開始処理(ステップA306)の詳細について説明する。特図1変動開始処理は、第1特図変動表示ゲームの開始時に行う処理である。図33(a)に示すように、まず、実行する特図変動表示ゲームの種別(ここでは特図1)を示す特図1変動フラグを変動図柄判別フラグ領域にセーブし(ステップA321)、第1特図変動表示ゲームが大当りであるか否かを判別するための大当りフラグ1にはずれ情報や大当り情報を設定する大当りフラグ1設定処理(ステップA322)を行う。
次いで、処理番号として特図変動中処理にかかる「1」を設定し(ステップA328)、その処理番号を特図ゲーム処理番号領域にセーブする(ステップA329)。
次に、上述の特図普段処理における特図2変動開始処理(ステップA309)の詳細について説明する。特図2変動開始処理は、第2特図変動表示ゲームの開始時に行う処理であって、図33(a)に示した特図1変動開始処理での処理と同様の処理を、第2始動記憶を対象として行うものである。
次いで、処理番号として特図変動中処理にかかる「1」を設定し(ステップA348)、その処理番号を特図ゲーム処理番号領域にセーブする(ステップA349)。
図34(a)には、上述の特図1変動開始処理における大当りフラグ1設定処理(ステップA322)を示した。この大当りフラグ1設定処理では、まず、大当りフラグ1領域にはずれ情報をセーブする(ステップA361)。次に、RWMの特図1大当り乱数格納領域(保留数1用)から大当り乱数をロードし、準備して(ステップA362)、当該特図1大当り乱数格納領域(保留数1用)を0クリアする(ステップA363)。なお、保留数1用とは、消化順序が最先(ここでは特図1のうちで最先)の特図始動記憶についての情報(乱数等)を格納する領域である。その後、準備した大当り乱数値が大当り判定値と一致するか否かに応じて大当りであるか判定する大当り判定処理(ステップA364)を行う。
図34(b)には、上述の特図2変動開始処理における大当りフラグ2設定処理(ステップA342)を示した。この大当りフラグ2設定処理では、まず、大当りフラグ2領域にはずれ情報をセーブする(ステップA371)。次に、RWMの特図2大当り乱数格納領域(保留数1用)から大当り乱数をロードし、準備して(ステップA372)、当該特図2大当り乱数格納領域(保留数1用)を0クリアする(ステップA372)。なお、保留数1用とは、消化順序が最先(ここでは特図2のうちで最先)の特図始動記憶についての情報(乱数等)を格納する領域である。その後、準備した大当り乱数値が大当り判定値と一致するか否かに応じて大当りであるか判定する大当り判定処理(ステップA374)を行う。
図35には、上述の大当りフラグ1設定処理及び大当りフラグ2設定処理における大当り判定処理(ステップA364,A374)を示した。この大当り判定処理では、まず、大当り判定値の下限判定値を設定し(ステップA381)、対象の大当り乱数の値が下限判定値未満かを判定する(ステップA382)。なお、大当りであるとは大当り乱数が大当り判定値と一致することである。大当り判定値は連続する複数の値であり、大当り乱数が、大当り判定値の下限の値である下限判定値以上で、かつ、大当り判定値の上限の値である上限判定値以下である場合に、大当りであると判定される。
大当り乱数の値が下限判定値未満である場合(ステップA382;Y)は、判定結果としてはずれを設定し(ステップA387)、大当り判定処理を終了する。
そして、高確率状態である場合(ステップA383;Y)は、高確率中の上限判定値を設定し(ステップA384)、対象の大当り乱数の値が上限判定値より大きいかを判定する(ステップA386)。また、高確率状態でない場合(ステップA383;N)は、低確率中の上限判定値を設定し(ステップA385)、対象の大当り乱数の値が上限判定値より大きいかを判定する(ステップA386)。
大当り乱数の値が上限判定値より大きい場合(ステップA386;Y)は、判定結果としてはずれを設定し(ステップA387)、大当り判定処理を終了する。
また、大当り乱数の値が上限判定値より大きくない場合(ステップA386;N)、すなわち大当りである場合は、判定結果として大当りを設定し(ステップA388)、大当り判定処理を終了する。
図36には、上述の特図1変動開始処理における特図1停止図柄設定処理(ステップA323)を示した。この特図1停止図柄設定処理では、まず、大当りフラグ1が大当りかを判定し(ステップA391)、大当りである場合(ステップA391;Y)は、特図1大当り図柄乱数格納領域(保留数1用)から大当り図柄乱数をロードする(ステップA392)。次に、特図1大当り図柄テーブルを設定して(ステップA393)、ロードした大当り図柄乱数に対応する停止図柄番号を取得し、特図1停止図柄番号領域にセーブする(ステップA394)。この処理により特別結果の種類が選択される。
図37には、上述の特図2変動開始処理における特図2停止図柄設定処理(ステップA343)を示した。この特図2停止図柄設定処理では、まず、大当りフラグ2が大当りかを判定し(ステップA411)、大当りである場合(ステップA411;Y)は、特図2大当り図柄乱数格納領域(保留数1用)から大当り図柄乱数をロードする(ステップA412)。次に、特図2大当り図柄テーブルを設定して(ステップA413)、ロードした大当り図柄乱数に対応する停止図柄番号を取得し、特図2停止図柄番号領域にセーブする(ステップA414)。この処理により特別結果の種類が選択される。
次に、上述の特図保留情報判定処理、特図1変動開始処理、及び特図2変動開始処理における特図情報設定処理(ステップA180,A324,A344)の詳細について説明する。
図38に示すように特図情報設定処理では、まず、変動グループ選択ポインタテーブルを設定して(ステップA431)、現在の確率状態及び停止図柄バターン番号に対応する変動グループ選択ポインタを取得する(ステップA432)。ここで、本実施形態では、停止図柄パターン番号として、「0:はずれ図柄」、「1:16R確変図柄」、「2:6R確変図柄A」、「3:6R確変図柄B」、「4:6R確変図柄C」、または「5:6R通常図柄」が設定されている。また、現在の確率状態として、「1:通常(普電サポートなし)」、「2:確変(普電サポートあり)」、または「3:潜伏確変(普電サポートなし)」が設定されている。
ステップA433で、停止図柄パターンがはずれ図柄パターンでないと判定した場合(ステップA433;N)には、ステップA432で取得した変動グループ選択ポインタを、変動グループ選択ポインタ領域にセーブして(ステップA435)、特図情報設定処理を終了する。
一方、ステップA433で、停止図柄パターンがはずれ図柄パターンであると判定した場合(ステップA433;Y)には、特図1保留数と特図2保留数の合計値に対応する値に変動グループ選択ポインタを更新し(ステップA434)、当該更新した変動グループ選択ポインタを、変動グループ選択ポインタ領域にセーブして(ステップA435)、特図情報設定処理を終了する。
具体的には、例えば、停止図柄パターンがはずれ図柄パターンであって、現在の遊技状態が通常(普電サポートなし)または潜伏確変(普電サポートなし)の場合には、特図1保留数と特図2保留数の合計値が「1」である際と、「2」,「3」である際と、「4」,「5」である際と、「6」,「7」,「8」である際で変動パターンの振り分けが異なる。
また、停止図柄パターンがはずれ図柄パターンであって、現在の遊技状態が確変(普電サポートあり)の場合には、特図1保留数と特図2保留数の合計値が「1」である際と、「2」である際と、「3」である際と、「4」,「5」,「6」,「7」,「8」である際で変動パターンの振り分けが異なる。
次に、上述の特図保留情報判定処理、特図1変動開始処理、及び特図2変動開始における変動パターン設定処理(ステップA181,A326,A346)の詳細について説明する。
図39に示すように変動パターン設定処理では、まず、変動グループアドレステーブルを設定し(ステップA441)、変動グループ選択ポインタに対応する変動グループテーブルのアドレスを取得し、準備して(ステップA442)、対象(特図1または特図2)の変動パターン乱数1格納領域(保留数1用)から変動パターン乱数1をロードし、準備する(ステップA443)。
次いで、振り分け処理(ステップA447)を行い、振り分けられた結果得られた変動パターン番号を取得し、変動パターン番号領域にセーブして(ステップA448)、変動パターン設定処理を終了する。すなわち、遊技制御装置100が、ゲームの実行態様である変動パターンを複数のうちから設定する変動パターン設定手段をなす。
次に、上述の特図1変動開始処理及び特図2変動開始処理における変動開始情報設定処理(ステップA327,A347)の詳細について説明する。図40に示すように変動開始情報設定処理では、まず、対象の変動パターン乱数1〜2の乱数格納領域をクリアする(ステップA451)。次に、変動時間値テーブルを設定し(ステップA452)、変動パターン番号に対応する変動時間値を取得し、特図ゲーム処理タイマ領域にセーブする(ステップA453)。
そして、これらの特図変動表示ゲームの開始に関する情報は後に演出制御装置300に送信され、演出制御装置300では、特図変動表示ゲームの開始に関する情報の受信に基づき、決定された変動パターンに応じて飾り特図変動表示ゲームでの詳細な演出内容を設定する。これらの特図変動表示ゲームの開始に関する情報としては、始動記憶数(保留数)に関する情報を含む飾り特図保留数コマンド、停止図柄に関する情報を含む飾り特図コマンド、特図変動表示ゲームの変動パターンに関する情報を含む変動コマンド、停止時間の延長に関する情報を含む停止情報コマンドが挙げられ、この順でコマンドが演出制御装置300に送信される。特に、飾り特図コマンドを変動コマンドよりも先に送信することで、演出制御装置300での処理を効率よく進めることができる。
次に、上述の特図ゲーム処理における特図変動中処理(ステップA9)の詳細について説明する。
図41に示すように、特図変動中処理では、まず、変動図柄判別フラグに対応する図柄停止コマンドを準備して(ステップA501)、演出コマンド設定処理(ステップA502)を行う。
次いで、停止図柄パターン番号に対応する表示時間を設定して(ステップA503)、設定した表示時間を特図ゲーム処理タイマ領域にセーブする(ステップA504)。本実施形態の場合、停止図柄パターンがはずれ図柄パターンである場合には表示時間として800m秒を設定し、停止図柄パターンが大当り図柄パターンである場合には表示時間として2000m秒を設定する。
次いで、処理番号として特図表示中処理にかかる「2」を設定し(ステップA505)、その処理番号を特図ゲーム処理番号領域にセーブする(ステップA506)。
次に、上述の特図ゲーム処理における特図表示中処理(ステップA10)の詳細について説明する。図42に示すように、特図表示中処理では、まず、特図1変動開始処理における大当りフラグ1設定処理にて設定された大当りフラグ1と、特図2変動開始処理における大当りフラグ2設定処理にて設定された大当りフラグ2と、をロードして(ステップA601)、RWMの大当りフラグ1領域及び大当りフラグ2領域をクリアする処理(ステップA602)を行う。そして、ロードされた大当りフラグ2が大当りかを判定して(ステップA603)、大当りである(ステップA603;Y)と判定すると、第2特図変動表示ゲームの大当り(特図2大当り)の開始に関する試験信号(例えば、条件装置作動中信号をON、役物連続作動装置作動中信号をON、特別図柄2当り信号をON)をRWMの試験信号出力データ領域にセーブして(ステップA606)、ラウンド数上限値テーブルを設定する(ステップA607)。
次いで、変動図柄判別フラグ領域をクリアし(ステップA622)、大入賞口不正監視期間フラグ領域に不正監視期間中フラグをセーブして(ステップA623)、特図表示中処理を終了する。
次に、上述の特図表示中処理におけるファンファーレ/インターバル中処理移行設定処理1(ステップA619)の詳細について説明する。図43に示すように、ファンファーレ/インターバル中処理移行設定処理1では、まず、処理番号としてファンファーレ/インターバル中処理にかかる「3」を設定し(ステップA631)、その処理番号を特図ゲーム処理番号領域にセーブする(ステップA632)。
次に、上述の特図ゲーム処理におけるファンファーレ/インターバル中処理(ステップA11)の詳細について説明する。図44に示すように、ファンファーレ/インターバル中処理では、まず、特別遊技状態のラウンド数を+1更新し(ステップA701)、特別遊技状態のラウンド数に対応するラウンドコマンドを準備して(ステップA702)、演出コマンド設定処理(ステップA703)を行う。
次いで、大入賞口の開放開始に関する信号(例えば、特別電動役物1作動中信号をON)を試験信号出力データ領域にセーブして(ステップA707)、大入賞口への入賞数を記憶する大入賞口カウント数領域の情報をクリアする(ステップA708)。そして、特別変動入賞装置38の開閉扉38cを開放するために、大入賞口ソレノイド出力データ領域にオンデータをセーブして(ステップA709)、ファンファーレ/インターバル中処理を終了する。
次に、上述の特図ゲーム処理における大入賞口開放中処理(ステップA12)の詳細について説明する。図45に示すように、大入賞口開放中処理では、まず、実行中の特別遊技状態における現在のラウンド数とRWMのラウンド数上限値領域のラウンド数上限値とを比較して現在のラウンドが最終ラウンドであるかを判定する(ステップA801)。
そして、最終ラウンドでない場合(ステップA801;N)は、ラウンド間のインターバルに係るインターバルコマンドを準備して(ステップA802)、演出コマンド設定処理(ステップA804)を行い、ステップA805の処理に移行する。
一方、最終ラウンドである場合(ステップA801;Y)は、特別遊技状態の終了の際におけるエンディング表示画面の表示制御等に係るエンディングコマンドを準備して(ステップA803)、演出コマンド設定処理(ステップA804)を行い、ステップA805の処理に移行する。
次いで、残存球処理時間(例えば、1.9秒)を特図ゲーム処理タイマ領域にセーブし(ステップA807)、特別変動入賞装置38の開閉扉38cを閉鎖するために、大入賞口ソレノイド38bをオフさせるためのオフデータを大入賞口ソレノイド出力データ領域にセーブして(ステップA808)、大入賞口開放中処理を終了する。
次に、上述の特図ゲーム処理における大入賞口残存球処理(ステップA13)の詳細について説明する。図46に示すように、大入賞口残存球処理では、まず、実行中の特別遊技状態における現在のラウンド数とRWMのラウンド数上限値領域のラウンド数上限値とを比較して現在のラウンドが最終ラウンドであるかを判定する(ステップA901)。
次いで、インターバル時間(例えば、0.1秒)を特図ゲーム処理タイマ領域にセーブし(ステップA904)、大入賞口(特別変動入賞装置38)の開放終了に関する信号(例えば、特別電動役物1作動中信号をOFF)を試験信号出力データ領域にセーブして(ステップA905)、大入賞口残存球処理を終了する。
次いで、エンディング時間(例えば、5.1秒)を特図ゲーム処理タイマ領域にセーブして(ステップA908)、大入賞口(特別変動入賞装置38)の開放終了に関する信号(例えば、特別電動役物1作動中信号をOFF)を試験信号出力データ領域にセーブする(ステップA909)。
次いで、大入賞口への入賞数を記憶する大入賞口カウント数領域の情報をクリアし(ステップA910)、特別遊技状態のラウンド数を記憶するラウンド数領域の情報をクリアし(ステップA911)、特別遊技状態のラウンド数の上限値を記憶するラウンド数上限値領域の情報をクリアして(ステップA912)、大入賞口残存球処理を終了する。
次に、上述の特図ゲーム処理における大当り終了処理(ステップA14)の詳細について説明する。図47に示すように、この大当り終了処理では、まず、確率変動判定データによるサブルーチンコールを行う(ステップA1001)。
ステップA1001で、確率変動判定データが「低確率データ(通常(普電サポートなし))」の場合には、大当り終了設定処理1(ステップA1002)を行って、ステップA1005の処理に移行する。
また、ステップA1001で、確率変動判定データが「高確率データ1(確変(普電サポートあり))」の場合には、大当り終了設定処理2(ステップA1003)を行って、ステップA1005の処理に移行する。
また、ステップA1001で、確率変動判定データが「高確率データ2(潜伏確変(普電サポートなし))」の場合には、大当り終了設定処理3(ステップA1004)を行って、ステップA1005の処理に移行する。
次いで、処理番号として特図普段処理にかかる「0」を設定して(ステップA1007)、その処理番号を特図ゲーム処理番号領域にセーブする(ステップA1008)。
次いで、大当りの終了に関する信号(例えば、大当り1信号をOFF、大当り3信号をOFF、大当り4信号をOFF)を外部情報出力データ領域にセーブして(ステップA1009)、大当りの終了に関する信号(例えば、条件装置作動中信号をOFF、役物連続作動装置作動中信号をOFF、特別図柄1当り信号をOFF、特別図柄2当り信号をOFF)を試験信号出力データ領域にセーブする(ステップA1010)。
次いで、確率判定フラグ領域の情報をクリアし(ステップA1011)、大当りのラウンド回数を示すラウンドLEDのポインタ領域の情報をクリアし(ステップA1012)、大入賞口不正監視期間フラグ領域に不正監視期間中フラグをセーブして(ステップA1013)、大当り終了処理を終了する。
図48(a)には、上述の大当り終了処理における大当り終了設定処理1(ステップA1002)を示した。この大当り終了設定処理1では、まず、時短状態なしに関する信号(例えば、大当り2信号をOFF)を外部情報出力データ領域にセーブして(ステップA1021)、低確率状態と時短状態なしの開始に関する信号(例えば、特別図柄1高確率状態信号をOFF、特別図柄2高確率状態信号をOFF、特別図柄1変動時間短縮状態信号をOFF、特別図柄2変動時間短縮状態信号をOFF、普通図柄1高確率状態信号をOFF)を試験信号出力データ領域にセーブする(ステップA1022)。
次いで、左打ち指示に関する信号(例えば、発射位置指定信号1をOFF)を試験信号出力データ領域にセーブして(ステップA1026)、右打ち中の表示LED(第1遊技状態表示部56)を消灯させるため、遊技状態表示番号2領域に左打ち状態中の番号をセーブする(ステップA1027)。
次いで、停電復旧時送信コマンド領域に確率情報コマンド(低確率)をセーブして(ステップA1028)、大当り終了設定処理1を終了する。
図48(b)には、上述の大当り終了処理における大当り終了設定処理2(ステップA1003)を示した。この大当り終了設定処理2では、まず、時短状態の開始に関する信号(例えば、大当り2信号をON)を外部情報出力データ領域にセーブする(ステップA1031)。時短状態の開始に関する信号は、大当り中から出力されているので継続する形で、外部情報出力データ領域にセーブされる。
次いで、高確率状態と時短状態ありの開始に関する信号(例えば、特別図柄1高確率状態信号をON、特別図柄2高確率状態信号をON、特別図柄1変動時間短縮状態信号をON、特別図柄2変動時間短縮状態信号をON、普通図柄1高確率状態信号をON)を試験信号出力データ領域にセーブする(ステップA1032)。
次いで、停電復旧時送信コマンド領域に確率情報コマンド(高確率)をセーブして(ステップA1036)、大当り終了設定処理2を終了する。なお、本実施形態の場合、時短状態中は右打ちモードであるが、大当り中から右打ちモードが設定されているので、大当り終了設定処理2では右打ちに関する設定を行わない。
図49には、上述の大当り終了処理における大当り終了設定処理3(ステップA1004)を示した。この大当り終了設定処理3では、まず、時短状態なしに関する信号(例えば、大当り2信号をOFF)を外部情報出力データ領域にセーブして(ステップA1041)、高確率状態と時短状態なしの開始に関する信号(例えば、特別図柄1高確率状態信号をON、特別図柄2高確率状態信号をON、特別図柄1変動時間短縮状態信号をOFF、特別図柄2変動時間短縮状態信号をOFF、普通図柄1高確率状態信号をOFF)を試験信号出力データ領域にセーブする(ステップA1042)。
次いで、左打ち指示に関する信号(例えば、発射位置指定信号1をOFF)を試験信号出力データ領域にセーブして(ステップA1046)、右打ち中の表示LED(第1遊技状態表示部56)を消灯させるため、遊技状態表示番号2領域に左打ち状態中の番号をセーブする(ステップA1047)。
次いで、停電復旧時送信コマンド領域に確率情報コマンド(潜伏)をセーブして(ステップA1048)、大当り終了設定処理3を終了する。
次に、タイマ割込み処理中に実行される各処理における演出コマンド設定処理の詳細について説明する。図50に示すように、演出コマンド設定処理では、まず、演出用シリアル送信バッファのステータスを読み込み(ステップA2001)、演出用シリアル送信バッファは満杯であるかを判定する(ステップA2002)。
演出用シリアル送信バッファが満杯である場合(ステップA2002;Y)は、演出用シリアル送信バッファのステータスを読み込む処理(ステップA2001)に戻る。
また、演出用シリアル送信バッファが満杯でない場合(ステップA2002;N)は、コマンドデータ(MODE)を演出用シリアル送信バッファに書き込む(ステップA2003)。
演出用シリアル送信バッファが満杯である場合(ステップA2005;Y)は、演出用シリアル送信バッファのステータスを読み込む処理(ステップA2004)に戻る。
また、演出用シリアル送信バッファが満杯でない場合(ステップA2005;N)は、コマンドデータ(ACTION)を演出用シリアル送信バッファに書き込んで(ステップA2006)、演出コマンド設定処理を終了する。
図51に、前述の特図ゲーム処理における図柄変動制御処理(ステップA16,A18)、後述の普図ゲーム処理における図柄変動制御処理(ステップB15)を示した。図柄変動制御処理は、特別図柄(第1特図、第2特図等)や普通図柄(普図)の変動の制御と特別図柄や普通図柄の表示データの設定を行う処理である。
次いで、制御対象の点滅制御タイマを−1更新して(ステップA2104)、更新後の点滅制御タイマが「0」であるかを判定する(ステップA2105)。
また、更新後の点滅制御タイマが「0」である場合(ステップA2105;Y)は、点滅制御タイマ初期値(例えば、100m秒)を対象の点滅タイマ領域にセーブし(ステップA2106)、制御対象の変動図柄番号を+1更新して(ステップA2107)、制御対象の変動図柄番号領域の値に対応する表示データを取得する(ステップA2108)。そして、取得した表示データをRAM111C内に設けられた対象のセグメント領域にセーブして(ステップA2111)、図柄変動制御処理を終了する。
次いで、制御対象の停止図柄番号領域の値に対応する表示データを取得し(ステップA2110)、取得した表示データを対象のセグメント領域にセーブして(ステップA2111)、図柄変動制御処理を終了する。
図52(a)には、上述の変動パターン設定処理における振り分け処理(ステップA447)を示した。
この振り分け処理では、まず、選択テーブル(ステップA445にて準備した変動パターン選択テーブル)の先頭のデータが振り分けなしのコード(すなわち「0」)であるかをチェックする(ステップA2201)。
そして、選択テーブル(変動パターン選択テーブル)の先頭のデータが振り分けなしのコードである場合(ステップA2202;Y)は、振り分けた結果に対応するデータのアドレスに更新して(ステップA2207)、振り分け処理を終了する。
一方、選択テーブル(変動パターン選択テーブル)の先頭のデータが振り分けなしのコードでない場合(ステップA2202;N)は、選択テーブル(変動パターン選択テーブル)に最初に規定されている一の振り分け値を取得する(ステップA2203)。
すなわち、選択テーブル(変動パターン選択テーブル)に次に規定されている振り分け値を取得し(ステップA2203)、その後、前回のステップA2205にて判定済みの乱数値から振り分け値を減算することで新たな乱数値を算出して(ステップA2204)、算出した新たな乱数値が「0」よりも小さいか否かを判定する(ステップA2205)。
そして、ステップA2205にて、新たな乱数値が「0」よりも小さいと判定すると(ステップA2205;Y)、振り分けた結果に対応するデータのアドレスに更新して(ステップA2207)、振り分け処理を終了する。
図52(b)には、上述の変動パターン設定処理における2バイト振り分け処理(ステップA444)を示した。2バイト振り分け処理は、変動パターン乱数1に基づいて変動グループテーブルから特図変動表示ゲームの変動パターン選択テーブルを選択するための処理である。
そして、選択テーブル(変動グループテーブル)の先頭のデータが振り分けなしのコードである場合(ステップA2302;Y)は、振り分けた結果に対応するデータのアドレスに更新して(ステップA2307)、2バイト振り分け処理を終了する。
一方、選択テーブル(変動グループテーブル)の先頭のデータが振り分けなしのコードでない場合(ステップA2302;N)は、選択テーブル(変動グループテーブル)に最初に規定されている一の振り分け値を取得する(ステップA2303)。
すなわち、選択テーブル(変動グループテーブル)に次に規定されている振り分け値を取得し(ステップA2303)、その後、前回のステップA2305にて判定済みの乱数値から振り分け値を減算することで新たな乱数値を算出して(ステップA2304)、算出した新たな乱数値が「0」よりも小さいか否かを判定する(ステップA2305)。
そして、ステップA2305にて、新たな乱数値が「0」よりも小さいと判定すると(ステップA2305;Y)、振り分けた結果に対応するデータのアドレスに更新して(ステップA2307)、2バイト振り分け処理を終了する。
次に、上述のタイマ割込み処理における普図ゲーム処理(ステップS110)の詳細について説明する。普図ゲーム処理では、ゲートスイッチ34aの入力の監視と、普図変動表示ゲームに関する処理全体の制御、普図の表示の設定等を行う。
また、ステップB7にて、普図ゲーム処理番号が「1」の場合は、普図表示中処理を行うために必要な情報の設定等を行う普図変動中処理(ステップB9)を行う。
また、ステップB7にて、普図ゲーム処理番号が「3」の場合は、普図当り中処理の継続、或いは普電残存球処理を行うために必要な情報の設定等を行う普図当り中処理(ステップB11)を行う。
また、ステップB7にて、普図ゲーム処理番号が「5」の場合は、普図普段処理を行うために必要な情報の設定等を行う普図当り終了処理(ステップB13)を行う。
一方、ステップB4にて、普図ゲーム処理タイマの値が「0」でない(ステップB4;N)、すなわちタイムアップしていないと判定すると、ステップB14の処理に移行して、それ以降の処理を行う。
次に、上述の普図ゲーム処理におけるゲートスイッチ監視処理(ステップB1)の詳細について説明する。図54に示すように、ゲートスイッチ監視処理では、まず、ゲートスイッチ34aに入力があるかを判定する(ステップB101)。そして、ゲートスイッチ34aに入力がある場合(ステップB101;Y)は、右打ちする遊技状態(例えば、大当り中、特図時短中(普電サポート中))であるかを判定する(ステップB102)。
右打ちする遊技状態である場合(ステップB102;Y)は、普図保留数を取得して当該普図保留数が上限値(例えば、4)未満であるかを判定する(ステップB105)。
また、右打ちする遊技状態でない場合(ステップB102;N)は、左打ち指示コマンドを準備し(ステップB103)、演出コマンド設定処理(ステップB104)を行った後に、普図保留数を取得して当該普図保留数が上限値(例えば、4)未満であるかを判定する(ステップB105)。
また、ステップB101にてゲートスイッチ34aに入力がないと判定した場合(ステップB101;N)や、ステップB105にて普図保留数が上限値未満でないと判定した場合(ステップB105;N)は、ゲートスイッチ監視処理を終了する。
次に、上述の普図ゲーム処理における普電入賞スイッチ監視処理(ステップB2)の詳細について説明する。図55に示すように、普電入賞スイッチ監視処理では、まず、普図当り中か、すなわち普図変動表示ゲームが当り状態となって普通変動入賞装置37が所定回数の開放動作を実行中であるかを判定する(ステップB201)。そして、普図当り中である場合(ステップB201;Y)は、始動口2スイッチ37aに入力があるかを判定し(ステップB202)、始動口2スイッチ37aに入力があると判定した場合(ステップB202;Y)は、普電カウンタのカウント数を+1更新する(ステップB203)。
次いで、普図ゲーム処理タイマ領域を0クリアして(ステップB206)、普電入賞スイッチ監視処理を終了する。すなわち、普図の当り状態中に上限値以上の普電入賞があった場合は、その時点で普図の当り状態が途中で終了するようにする。
次に、上述の普図ゲーム処理における普図普段処理(ステップB8)の詳細について説明する。図56に示すように、普図普段処理では、まず、普図保留数が「0」であるかを判定し(ステップB301)、普図保留数が「0」である場合(ステップB301;Y)は、処理番号として普図普段処理にかかる「0」を設定し(ステップB322)、その処理番号を普図ゲーム処理番号領域にセーブし(ステップB323)、普電不正監視期間フラグ領域に不正監視期間中フラグをセーブして(ステップB324)、普図普段処理を終了する。
その後、当り乱数の値が上限判定値以上であるかを判定し(ステップB306)、当り乱数の値が上限判定値以上でない場合(ステップB306;N)、当り乱数の値がステップB304又はB305にて設定した下限判定値未満であるかを判定する(ステップB307)。
一方、当り乱数の値がステップB304又はB305にて設定した下限判定値未満でない場合(ステップB307;N)は、当りフラグ領域に当り情報をセーブし(ステップB311)、ステップB302にてロードした当り図柄乱数に対応する当り停止図柄番号を設定し(ステップB312)、停止図柄番号に対応する停止図柄情報を普図停止図柄情報領域にセーブして(ステップB313)、停止図柄番号を普図停止図柄領域にセーブする(ステップB314)。本実施形態では、普図の当り図柄として2種類の図柄(「当り図柄1」及び「当り図柄2」)が用意されている。
したがって、普図低確率時は、当り乱数の値が「0」〜「250」全ての場合ではずれとなる。
また、普図高確率時は、当り乱数の値が「1」〜「250」の何れかである場合が当り、当り乱数の値が「0」である場合がはずれとなる。
その後、当り乱数格納領域をシフトし(ステップB316)、シフト後の空き領域を0クリアして(ステップB317)、普図保留数を−1更新する(ステップB318)。すなわち、最も古い普図保留数1に関する普図変動表示ゲームが実行されることに伴い、普図保留数1以降に保留となっている普図保留数2〜4の順位を1つずつ繰り上げる処理を行う。この処理により、普図当り乱数格納領域の普図保留数2用から普図保留数4用の値が、普図当り乱数格納領域の普図保留数1用から普図保留数3用に移動することとなる。そして、普図当り乱数格納領域の普図保留数4用の値がクリアされて、普図保留数が1デクリメントされる。
そして、普図変動中処理移行設定処理(ステップB321)を行って、普図普段処理を終了する。
図57には、上述の普図普段処理での普図変動中処理移行設定処理(ステップB321)を示した。この普図変動中処理移行設定処理では、まず、処理番号として普図変動中処理にかかる「1」を設定し(ステップB331)、その処理番号を普図ゲーム処理番号領域にセーブする(ステップB332)。
その後、普図変動表示ゲームの開始に関する信号(例えば、普通図柄1変動中信号をON)を試験信号出力データ領域にセーブして(ステップB333)、普図変動表示ゲームが変動中であることを示す変動中フラグを普図変動制御フラグ領域にセーブする(ステップB334)。
そして、普図表示器52の点滅周期のタイマの初期値である点滅制御タイマ初期値(例えば、100m秒)を普図点滅制御タイマ領域にセーブし(ステップB335)、普図変動図柄番号領域に初期値(例えば、0)をセーブして(ステップB336)、普図変動中処理移行設定処理を終了する。
次に、上述の普図ゲーム処理における普図変動中処理(ステップB9)の詳細について説明する。図58に示すように、普図変動中処理では、まず、処理番号として普図表示中処理にかかる「2」を設定し(ステップB401)、その処理番号を普図ゲーム処理番号領域にセーブする(ステップB402)。その後、普図表示器52における普図変動表示ゲームの結果の表示時間である普図表示時間(例えば、600m秒)を普図ゲーム処理タイマ領域にセーブし(ステップB403)、普図の変動終了に関する信号(例えば、普通図柄1変動中信号をOFF)を試験信号出力データ領域にセーブし(ステップB404)、普図変動表示ゲームが停止中であることを示す停止フラグを普図変動制御フラグ領域にセーブして(ステップB405)、普図変動中処理を終了する。
次に、上述の普図ゲーム処理における普図表示中処理(ステップB10)の詳細について説明する。図59に示すように、普図表示中処理では、まず、普図普段処理にて設定された当りフラグ(当り情報又ははずれ情報)をロードし(ステップB501)、RWMの当りフラグ領域をクリアして(ステップB502)、ロードされた当りフラグが当り情報かを判定する(ステップB503)。
当りフラグが当り情報でない場合(ステップB503;N)は、処理番号として普図普段処理にかかる「0」を設定し(ステップB515)、その処理番号を普図ゲーム処理番号領域にセーブし(ステップB516)、普電不正監視期間フラグ領域に不正監視期間中フラグをセーブして(ステップB517)、普図表示中処理を終了する。
次いで、普図変動表示ゲームの当り開始に関する信号(例えば、普通図柄1当り中信号をON)と、普電作動開始に関する信号(例えば、普通電動役物1作動中信号をON)を試験信号出力データ領域にセーブして(ステップB510)、普電ソレノイドを駆動(オン)する信号を出力するため、普電ソレノイド出力データ領域にオンデータをセーブする(ステップB511)。
次いで、普通変動入賞装置37の不正監視期間外を規定するフラグ(不正監視期間外フラグ)を普電不正監視期間フラグ領域にセーブして(ステップB514)、普図表示中処理を終了する。
次に、上述の普図ゲーム処理における普図当り中処理(ステップB11)の詳細について説明する。図60に示すように、普図当り中処理では、まず、普図当り中制御ポインタをロードし、準備して(ステップB601)、ロードした普図当り中制御ポインタの値が上限値以上であるかを判定する(ステップB602)。
また、普図当り中制御ポインタの値が上限値以上である場合(ステップB602;Y)は、ステップB603における普図当り中制御ポインタを+1更新する処理を行わずに、普電作動移行設定処理(ステップB604)を行って、普図当り中処理を終了する。
図61には、上述の普図当り中処理における普電作動移行設定処理(ステップB604)を示した。普電作動移行設定処理は、普通変動入賞装置37を開閉するための普電ソレノイド37cの駆動制御を行う処理であり、制御ポインタ(普図当り中制御ポインタ)の値に応じて処理を分岐するようにしている。この普電作動移行設定処理では、まず、制御ポインタの値に応じた分岐処理を行う(ステップB611)。なお、ステップB603の処理(普図当り中制御ポインタを+1更新する処理)を行った場合には、+1更新する前の値に応じた分岐処理を行う。
次に、上述の普図ゲーム処理における普電残存球処理(ステップB12)の詳細について説明する。図62に示すように、普電残存球処理では、まず、処理番号として普図当り終了処理にかかる「5」を設定して(ステップB701)、その処理番号を普図ゲーム処理番号領域にセーブする(ステップB702)。
次に、上述の普図ゲーム処理における普図当り終了処理(ステップB13)の詳細について説明する。図63に示すように、普図当り終了処理では、まず、処理番号として普図普段処理にかかる「0」を設定して(ステップB801)、その処理番号を普図ゲーム処理番号領域にセーブする(ステップB802)。
次に、上述のタイマ割込み処理におけるセグメントLED編集処理(ステップS111)の詳細について説明する。セグメントLED編集処理では、一括表示装置50に設けられた特図1保留表示器53、特図2保留表示器54、普図保留表示器55、第1遊技状態表示部56、第2遊技状態表示部57、第3遊技状態表示部58、ラウンド表示部59を構成するセグメントLEDの駆動に関する設定等を行う。
出力オンタイミングである場合(ステップS502;Y)は、普図保留表示器55での表示態様が規定された普図保留数表示テーブル1,2のうちの、普図保留数表示テーブル1を設定し(ステップS503)、出力オンタイミングでない場合(ステップS502;N)は、普図保留数表示テーブル2を設定する(ステップS504)。
そして、設定した普図保留数表示テーブルから普図保留数に対応する表示データを取得し、RAM111C内に設けられた普図保留表示器55用のセグメント領域にセーブする(ステップS505)。本実施形態では、普図保留数が「0」〜「2」の何れかであれば、どちらの普図保留数表示テーブルが設定された場合であっても、表示データは同じになる。
そして、設定した特図1保留数表示テーブルから特図1保留数に対応する表示データを取得し、RAM111C内に設けられた特図1保留表示器53用のセグメント領域にセーブする(ステップS509)。
そして、設定した特図2保留数表示テーブルから特図2保留数に対応する表示データを取得し、RAM111C内に設けられた特図2保留表示器54用のセグメント領域にセーブする(ステップS513)。
さらに、ラウンド表示部59での表示態様が規定されたラウンド表示テーブルを設定して(ステップS514)、設定したラウンド表示テーブルからラウンド表示LEDポインタに対応する表示データを取得し、RAM111C内に設けられたラウンド表示部59用のセグメント領域にセーブする(ステップS515)。
その後、左打ちよりも右打ちの方が有利な遊技状態であることを報知する第1遊技状態表示部56での表示態様が規定された遊技状態表示テーブル2を設定して(ステップS518)、設定した遊技状態表示テーブル2から遊技状態表示番号2に対応する表示データを取得し、RAM111C内に設けられた第1遊技状態表示部56用のセグメント領域にセーブする(ステップS519)。本実施形態では、1個のLEDからなる第1遊技状態表示部57を、通常打ち(左打ち)時には消灯させ、右打ち時(本実施形態の場合、大当り中、普電サポート中)には点灯させるよう構成されている。
ステップS520で、高確率報知フラグ領域にオン情報がセーブされていると判定した場合(ステップS520;Y)には、セグメントLED編集処理を終了する。
一方、ステップS520で、高確率報知フラグ領域にオン情報がセーブされていないと判定した場合(ステップS520;N)には、高確率報知LED(第3遊技状態表示部58)をオフさせるため、高確率報知LEDのオフデータを第3遊技状態表示部58用のセグメント領域にセーブして(ステップS521)、セグメントLED編集処理を終了する。
次に、上述のタイマ割込み処理における磁石不正監視処理(ステップS112)の詳細について説明する。磁石不正監視処理では、磁気センサ61からの検出信号に基づき異常の有無を判定し不正報知の開始や終了の設定等を行う。
ここで、「ステップS601;N」→「ステップS608」→「ステップS609」→「ステップS610;Y」→「ステップS611」→「ステップS612」→「ステップS613;Y」が正常ルートである。
次に、上述のタイマ割込み処理における盤電波不正監視処理(ステップS113)の詳細について説明する。盤電波不正監視処理では、盤電波センサ62からの検出信号に基づき異常の有無を判定し不正報知の開始や終了の設定等を行う。
ここで、「ステップS701;N」→「ステップS705」→「ステップS706;Y」→「ステップS707」→「ステップS708」→「ステップS709;Y」が正常ルートである。
次に、上述のタイマ割込み処理における外部情報編集処理(ステップS114)の詳細について説明する。外部情報編集処理では、払出コマンド送信処理(ステップS105)、入賞口スイッチ/状態監視処理(ステップS108)、磁石不正監視処理(ステップS112)、盤電波不正監視処理(ステップS113)での監視結果に基づいて、情報収集端末や遊技場内部管理装置等の外部装置や試射試験装置に出力する情報を作成して出力バッファにセットする処理等を行う。
ステップS801で、スイッチ異常の発生中でないと判定した場合(ステップS801;N)には、遊技機エラー状態信号のオフデータを試験信号出力データ領域にセーブして(ステップS802)、ステップS804の処理に移行する。
一方、ステップS801で、スイッチ異常の発生中であると判定した場合(ステップS801;Y)には、遊技機エラー状態信号のオンデータを試験信号出力データ領域にセーブして(ステップS803)、ステップS804の処理に移行する。
一方、ガラス枠開放エラーの発生中である場合(ステップS804;Y)、あるいは、本体枠開放エラーの発生中である場合(ステップS805;Y)には、扉・枠開放信号のオンデータを外部情報出力データ領域にセーブし(ステップS808)、遊技機エラー状態信号のオンデータを試験信号出力データ領域にセーブして(ステップS809)、ステップS810の処理に移行する。
セキュリティ信号制御タイマの値が「0」でない場合(ステップS811;N)、すなわちタイムアップしていない場合は、セキュリティ信号のオンデータを外部情報出力データ領域にセーブして(ステップS812)、ステップS813の処理に移行する。また、セキュリティ信号制御タイマの値が「0」である場合(ステップS811;Y)、すなわちタイムアップした又はすでにタイムアップしていた場合は、ステップS812の処理を行わずに、ステップS813の処理に移行する。
次に、特図変動表示ゲームの実行回数に係る情報の出力時間を制御するための図柄確定回数制御タイマが「0」でなければ−1更新する(ステップS823)。なお、図柄確定回数制御タイマの最小値は「0」に設定されている。そして、図柄確定回数制御タイマの値が「0」であるかを判定する(ステップS824)。
また、図柄確定回数制御タイマの値が「0」でない場合(ステップS824;N)、すなわちタイムアップしていない場合は、図柄確定回数信号のオンデータを外部情報出力データ領域にセーブして(ステップS826)、外部情報編集処理を終了する。
次に、上述の外部情報編集処理におけるメイン賞球信号編集処理(ステップS821)の詳細について説明する。メイン賞球信号編集処理は、入賞口への入賞により発生した賞球数(払出予定数)が所定数(本実施形態の場合、10個)になる毎に生成されるメイン賞球信号を外部装置へ出力する処理である。
また、メイン賞球信号出力回数が「0」である場合(ステップS833;Y)は、外部装置用のメイン賞球信号をオフ状態にするオフデータをRWMの外部情報出力データ領域にセーブして(ステップS838)、メイン賞球信号編集処理を終了する。
具体的には、遊技制御装置100は、10個の払出予定毎(払出コマンドを送信する毎)に、メイン賞球信号出力回数を+1更新(払出コマンド送信処理内のサブルーチン)し、更新(設定)されている出力回数分、メイン賞球信号を出力する。
予定毎に出力されるメイン賞球信号に対し、払出制御装置200からは実際に10個の払出が行われる毎に賞球信号が送信されるので、予定と結果の整合をとることができ、不正な払出に対応することができる。また、大当り期間中に入賞しても、球切れ等で払出が遅れ、大当り終了後に払い出された場合にも、入賞時に出力されるメイン賞球信号によって、ホールコン(ホールコンピュータ)が正確な情報を収集(判断)することができる。
次に、上述の外部情報編集処理における始動口信号編集処理(ステップS822)の詳細について説明する。始動口信号編集処理は、始動口1スイッチ36aや始動口2スイッチ37aや始動口3スイッチ97aの入力があった場合に、各々の入力について共通して行われる処理である。
また、始動口信号出力回数が「0」である場合(ステップS843;Y)は、外部装置用の始動口信号をオフ状態にするオフデータをRWMの外部情報出力データ領域にセーブして(ステップS848)、始動口信号編集処理を終了する。
なお、演出制御装置300が制御する特図は、表示装置41に表示される演出用の特図であり、以下の演出制御装置300の制御処理の説明における特図は、この演出用の特図(本特図ではない飾り図柄)を意味する。
また、以下の演出制御装置300の説明において、オブジェクトとは、表示制御の場合、まとまりのある表示制御の対象を意味し、表示要素(背景画像、特図の飾り図柄の画像、予告キャラクタの画像、保留表示の画像など、まとまりのある画像)に相当する。例えば本例の場合、特図の飾り図柄には、左図柄、右図柄、中図柄という変動表示領域(リール)の違いでの区別があり、さらにこれら区別のそれぞれに、現図柄、次図柄、前図柄というスクロール方向の表示位置が異なる区別がある。すなわち、例えば左図柄については、左図柄の現図柄、左図柄の次図柄、左図柄の前図柄があり、細かく見れば、これらそれぞれが一つのオブジェクトである。但し、制御処理上においては、例えば現図柄、次図柄、前図柄を含む左図柄全体を一つの表示要素として分類する場合もある。
まず、図71により、演出制御装置300のパワーオンリセット処理を説明する。このパワーオンリセット処理は、パチンコ遊技機10の電源供給が開始された時点で開始する。
パチンコ遊技機10の電源供給が開始すると、まず、割込みを禁止して(ステップD1)、CPU311の初期設定を行って(ステップD2)、VDP312の初期設定を行って(ステップD3)、割込みを許可して(ステップD4)、メイン処理(ステップD5)を開始する。メイン処理を開始すると、電源遮断(停電含む)までこのメイン処理を実行する。
次に、上述のパワーオンリセット処理におけるメイン処理(ステップD5)を図72により説明する。
メイン処理を開始すると、まず、演出制御装置300に設けられた無線モジュール(図示省略)を初期化する無線モジュール初期化処理(ステップD11)を実行する。なお、本例は、異なるパチンコ遊技機におけるサブ基板間(すなわち演出制御装置間、以下、場合により、単に「サブ間」という。)の通信を無線通信で行う例としているが、無線通信に限定されるものではなく、有線通信でもよい。
次いで、表示用データ生成を許可する(ステップD13)。これは、VDP312の表示回路がVRAM326へアクセスを行い、表示データを生成するのを許可する処理である。
次いで、VDP312の画像展開領域のサイズを設定する(ステップD14)。
次いで、乱数シードを設定する(ステップD15)。これは、例えばsrand関数を用いて擬似乱数の発生系列を設定する処理である。ここで、srand関数に与える引数としては、0(ゼロ)などの固定値を使用してもよいし、遊技機毎に異なるようにCPU等のID値などを基に作成した値を使用してもよい。
ここで、「モーション」は、ブロック化(パーツ化)された演出動作(本例の場合、具体的には、表示装置41での表示演出をブロック化したもの)を意味し、「シナリオ」は、演出の流れ(どのモーションをいつ実行するか等を決めるもの)を意味する。また、「モーション管理領域のアドレス領域」とは、モーション管理領域の先頭アドレスを格納するための記憶領域を意味し、「シナリオ管理領域のアドレス領域」とは、シナリオ管理領域の先頭アドレスを格納するための記憶領域を意味する。
次いで、演出ボタン入力処理(ステップD21)を実行する。これは、演出操作部550(プッシュボタン(演出ボタン25)やセレクトボタン(タッチパネル29))が有効時に操作された場合の編集を行う処理である。なお、演出操作部550は高速でオンオフしないので、演出操作部550の入力を感知する処理はこの処理内で行ってもよいし、図示していない短周期のタイマ割込み内で行ってもよい。
次いで、受信コマンドチェック処理(ステップD23)を実行する。
次いで、サブ間受信タスク処理(ステップD25)を実行する。これは、受信したサブ間コマンドの解析を主に行う処理である。
次いで、サブ間ack応答タスク処理(ステップD26)を実行する。これは、他台にack(返信)を要求した場合の監視を行う処理である。
次いで、サブ間演出設定処理(ステップD27)を実行する。これは、受信したサブ間コマンドに対応する演出の制御を行う処理である。
次いで、描画領域を黒で塗り潰す(ステップD29)。これは、フレームバッファの過去の表示を完全に消すための処理であり、例えば全体が黒い四角形の画像をフレームバッファに配置し、ゴミなどが表示されないようにする処理である。
次いで、モーション制御処理(ステップD30)を実行する。これは、ステップD28で解析等されたシナリオを実行するための処理である。
また、本例では、表示装置41に表示する表示画面41aの描画制御において、シナリオデータ(シナリオレイヤ−)という概念が使用される。シナリオとは、例えば背景用シナリオ、左図柄用シナリオ、右図柄用シナリオ、・・・等のように、図柄の変動演出を複数のシナリオレイヤーに分けてテーブルとして予め設定し、それらを個別にシナリオとして制御し、全てのシナリオを合成することで、1画面の絵を生成する手法である。
具体的には、表示装置41における図柄の変動演出では、例えば、変動出だしの動き、スローダウンして仮停止するまでの動き(送りコマ数やスベリなど)、予告演出の種類など、変動毎に行われる演出振り分けによって多様な組合せとなるため、全ての組合せに対して1つ1つの画面毎にシナリオデータを作成すると膨大なデータ量となってしまう。
そこで本例では、演出制御装置300において変動演出等の表示演出における描画制御では、背景、左図柄、右図柄、・・・と個別に各表示要素毎にカテゴリ分けを行い、各々を独立して複数のモーション情報を同時にあるいは連続的に切り替えて演出表示させるための動作シナリオのテーブルとして設定して、例えばPROM(制御ROM)321に予め格納しておく。次いで、遊技制御装置100からの演出コマンドに応じて演出制御装置300ではシナリオテーブルを選択し、組み合わせて合成することで、1画面の描画内容(1フレーム毎)を作り出すことが行われる。そうすることで、最小限の動作パターンを定義する(動作のパーツ化)だけで済み、データ容量の節約と開発の効率化ができる。
次いで、描画コマンド準備終了を設定して(ステップD32)、ステップD33に進む。これは、ステップD31で設定されるVDP312への全てのコマンドの準備が終了したことを設定する処理である。
次に、コマンド受信割込み処理について図73により説明する。このコマンド受信割込み処理は、遊技制御装置100(主基板)から送信されるコマンドを演出制御装置300(サブ基板)で受信するための処理であり、当該コマンドを構成するデータが正常な範囲に入っているかをチェックする内容も含まれている。
この主基板とサブ基板の通信は、ストローブ信号(STB信号)を用いたパラレル通信によって行われる態様でもよいが、本例の場合、シリアル通信によって行われる。すなわち、両基板とも、例えばCPU111A,311に搭載されているシリアル通信回路の機能を使用し、通信を行う。
また、主基板からのコマンドは、MODEのデータ(1バイト)とACTIONのデータ(1バイト)とを含む構成となっており、これらが順次送信される。以下では、コマンドを構成するこのようなデータを、コマンドのデータ或いはコマンドデータという。
ステップD44に進むと、ステップD42でロードしたコマンドデータがMODE範囲のものか否か、当該データの値に基づいて判定し、MODE範囲のものならば(ステップD44;Y)、ステップD45に進み、MODE範囲のものでなければ(ステップD44;N)、ACTION範囲であるとしてステップD48に進む。なお、MODE範囲とは、MODEのデータとして設定し得る1バイト内の値の範囲であり、ACTION範囲とは、ACTIONのデータとして設定し得る1バイト内の値の範囲であり、予め決められている。
ステップD45に進むと、ステップD42でロードしたコマンドデータを受信MODEとして格納して(ステップD45)、MODE受信フラグに「OK」をセットする(ステップD46)。
次いで、受信監視タイマの値を0(ゼロ)にリセットし、当該受信監視タイマの計時動作をスタートして(ステップD47)、その後コマンド受信割込み処理を終了する。なお、上記ステップD45で使用しているように、単に「格納する」というときは、後の制御処理に使用するために所定の記憶領域に読出し可能に記憶保存することを意味する(以下同様)。
MODE受信フラグの値が「OK」でない場合(ステップD48;N)は、例えばACTION範囲のコマンドデータが受信されたのに、それに先だってMODE範囲のコマンドデータが受信されていないので異常である。また、受信監視タイマがタイムアウトしている場合(ステップD49;Y)は、MODE範囲のコマンドデータが受信された時点から受信監視タイマで計時される規定の受信監視時間内に、ACTION範囲のコマンドデータが受信されないので異常である。
ステップD52に進むと、コマンド受信カウンタの値が31より大きいか判定し、大きい場合(ステップD52;Y)には、後述するコマンドバッファの容量を超えるのでコマンド受信割込み処理を終了し、大きくない場合(ステップD52;N)、すなわちコマンド受信カウンタ≦31の場合には、ステップD53に進む。なお、コマンド受信カウンタの値が0〜31でステップD53に進む構成としているが、0〜31という値は後述するコマンドバッファの容量に対応する値であり、システム制御周期(前述の処理周期;例えば1/30秒)で主基板から送信される可能性のあるコマンド数以上になっていればよい。
ステップD55に進むと、範囲チェックOKか否か判定し、OKでなければ(ステップD55;N)、コマンド(受信MODE及び受信ACTION)を廃棄すべくコマンド受信割込み処理を終了し、OKならば(ステップD55;Y)、ステップD56に進む。ここで、ステップD55での範囲チェックの判定結果は、受信コマンド範囲チェック処理(ステップD54)においてコマンド範囲正常フラグがセットされていれば範囲チェックOKである(ステップD55がYes)となり、受信コマンド範囲チェック処理(ステップD54)においてコマンド範囲異常フラグがセットされていれば範囲チェックOKでない(ステップD55がNo)となる。
次いで、コマンド受信カウンタの値を+1更新して(ステップD57)、コマンドバッファにデータを格納した(すなわち、書き込んだ)ので、コマンド書込インデックスの値を0〜31の範囲で+1更新して(ステップD58)、コマンド受信割込み処理を終了する。なお、コマンド書込インデックスは、コマンドバッファの書込用ポインタであり、このコマンド書込インデックスの値を、本例では0〜31の範囲としているが、この範囲はコマンドバッファの容量(この場合、32)に対応しており、既述したように、システム制御周期(前述の処理周期;例えば1/30秒)の1周期の間に主基板から送信される可能性のあるコマンド数以上になっていればよい。
次に、上述のコマンド受信割込み処理における受信コマンド範囲チェック処理(ステップD54)の詳細について図74により説明する。
受信コマンド範囲チェック処理が開始されると、まずステップD61で、ステップD45で格納された受信MODEの値が正常範囲か判定し、正常範囲でなければ(ステップD61;N)、コマンド範囲異常フラグをセットして(ステップD67)、受信コマンド範囲チェック処理を終了し、正常範囲であれば(ステップD61;Y)、ステップD62に進む。MODEの値は、MODE範囲の値の全てが指令内容を定義されているわけではなく、定義されずに使用されていない値もあり、このような使用されていない値である場合には、ステップD61の判定で正常範囲でないと判定される。
なお、このステップD61又は後述するステップD92(或いはステップD61とD92の両方)では、MODEのデータの歯抜けチェックも行い、このチェックで無効なコマンドであれば正常範囲でないとする構成であってもよい。MODEのデータの歯抜けチェックとは、チェック対象のMODEのデータが、MODEがとり得る値が連続していない部分における無効な値に相当していないか否か判定することを意味する。MODEの値に不連続な部分が無い場合には、この歯抜けチェックは不要である。
次いで、ステップD45で格納された受信MODEの値に対応するACTIONの値としてあり得る値のうちの最大値(ACTION_max)を取得して(ステップD63)、ステップD64に進む。
ステップD65に進むと、ステップD50で格納された受信ACTIONの値が、ステップD63で取得された最大値よりも大きいか判定し、大きい場合(ステップD65;Y)には、異常であるのでステップD67に進み、大きくない場合(ステップD65;N)には、ステップD66に進む。
ステップD66に進む場合には、正常であるので、コマンド範囲正常フラグをセットして(ステップD66)、受信コマンド範囲チェック処理を終了する。ステップD67に進む場合は、異常であるので、コマンド範囲異常フラグをセットして(ステップD67)、受信コマンド範囲チェック処理を終了する。
次に、上述のメイン処理における受信コマンドチェック処理(ステップD23)の詳細について図75により説明する。
受信コマンドチェック処理が開始されると、まず、コマンド受信カウンタの値をコマンド受信数としてロードして(ステップD71)、ステップD72に進む。
ステップD72に進むと、コマンド受信数が0(ゼロ)でないか判定し、ゼロでないならば(ステップD72;Y)、ステップD73に進み、ゼロならば(ステップD72;N)、受信コマンドチェック処理を終了する。なお、本願では、上記ステップD71のように、制御処理においてデータを「ロードする」とは、RAM(本例の演出制御装置300ではCPU311内のRAM)からデータを取り出すことを意味する。
次いで、コマンドバッファのデータを読み出したので、コマンドバッファの読出用ポインタであるコマンド読出インデックスの値を0〜31の範囲で+1更新して(ステップD75)、ステップD76に進む。なお、ここでの0〜31の範囲は、ステップD58で更新されるコマンド書込インデックスと同範囲になっていればよい。
次いで、コマンド領域のアドレス(次に読み出すべきデータのアドレス)を更新して(ステップD79)、ステップD80に進む。
ステップD80に進むと、コマンド受信数分のコマンドを解析完了したか否か(すなわち、コマンド受信数分だけステップD77〜D79を繰り返し実行したか否か)を判定し、完了していなければ(ステップD80;N)、ステップD77に戻ってステップD77から処理を繰り返し、完了していれば(ステップD80;Y)、受信コマンドチェック処理を終了する。
次に、上述の受信コマンドチェック処理における受信コマンド解析処理(ステップD78)の詳細について図76により説明する。
受信コマンド解析処理が開始されると、まず、ステップD77においてロードした今回のコマンドのデータのうちの上位バイトをMODEに、下位バイトをACTにそれぞれ分離して記憶して(ステップD91)、その後ステップD92に進む。なお、特図の変動パターンを指令する変動系のコマンドの場合、MODEとして記憶される上位バイトのデータは前半変動パターンを指令し、ACTとして記憶される下位バイトのデータは後半変動パターンを指令するものである。
また、「後半変動」とは、リーチ中変動、すなわち、リーチ状態となった後(リーチ状態となっている最中)に実行される特図変動表示ゲーム(いわゆるリーチアクション(例えば、特図の複数列の表示領域のうち特定領域を除く表示領域が大当りとなる特別結果態様(特別な図柄の組合せ)で変動表示が停止していて、特定領域のみで変動表示している状態)の変動表示)を意味する。
ステップD93に進むと、ステップD91で分離されたACTの値が正常範囲か判定し、正常範囲でなければ(ステップD93;N)、受信コマンド解析処理を終了し、正常範囲であれば(ステップD93;Y)、ステップD94に進む。このステップD93の判定は、前述したステップD62〜D65と同様に行う。すなわち、MODE毎に有効なACTの値は異なり、このACTの有効値の上限〜下限は前述したACTIONチェックテーブルに定義されており、ステップD93ではこの上限〜下限の範囲内に分離されたACTの値が収まっているかをチェックし、収まっていれば正常範囲と判定する(この時点では歯抜けチェックは出来ていない)。
ここで、一致チェックテーブルとは、対応するMODEの値に対して有効な全てのACTの値(ACTIONの値)が先頭アドレスから順に登録されたものであり、MODEの値毎に設けられている。
なお、有効なACTIONの値が連続した範囲で固まっているMODEの場合には、一致チェックテーブルは不要であるため、ACTIONチェックテーブルにおける一致チェックテーブルの先頭アドレスのデータはNULLになっている。また、一致チェックテーブルが定義されているMODEの行に対しては、有効ACTIONが歯抜けになっているので、上限/下限をチェックした後、対応する一致チェックテーブルを使って更なる比較判定が行われる(後述するステップD96〜D99)。
ステップD99に進むと、更新された一致チェックテーブルアドレスに対応するデータがステップD91で分離されたACTの値に一致するか判定し、一致すれば前記終了条件が成立したので当該ループ処理を終了してステップD100に進み、不一致であるならばステップD96に戻って当該ループ処理を繰り返す。
ステップD100では、MODEのデータが変動系コマンド範囲内にあるか判定し、この範囲内ならば(ステップD100;Y)、変動系コマンド処理(ステップD101)を実行して受信コマンド解析処理を終了し、この範囲外ならば(ステップD100;N)、ステップD102に進む。ここで、MODEのデータとは、ステップD91で分離されて記憶されたMODEのデータである(後述のステップD102等でも同様)。変動系コマンド(「変動コマンド」或いは「変動パターンコマンド」という場合もある)は、特図の変動パターンを指令するコマンドであり、この変動コマンドのデータがとり得る範囲が変動系コマンド範囲である。なお、このステップD100ではMODEの歯抜けチェックは行わない構成でもよいし、行ってもよい。
ステップD104に進むと、MODEのデータが図柄系コマンド範囲内にあるか判定し、この範囲内ならば(ステップD104;Y)、図柄系コマンド処理(ステップD105)を実行して受信コマンド解析処理を終了し、この範囲外ならば(ステップD104;N)、ステップD106に進む。図柄系コマンド(「図柄コマンド」或いは「飾り特図コマンド」という場合もある)は、特図の図柄に関する情報(例えば、特図の停止図柄を何にするかなど)を指令するコマンドであり、この図柄コマンドのデータがとり得る範囲が図柄系コマンド範囲である。
ステップD108に進むと、MODEのデータが先読み系コマンドであるか判定し、先読み系コマンドである場合(ステップD108;Y)には、先読み系コマンド処理(ステップD109)を実行して受信コマンド解析処理を終了し、先読み系コマンドでない場合(ステップD108;N)には、ステップD109を実行しないで受信コマンド解析処理を終了する。ここで、先読み系コマンドとは、先読み演出(例えば、特図の大当り予告)の発生の有無、発生時の演出内容の決定を指令するコマンドである。
すなわち、変動演出の内容を決めるのは変動パターンコマンドで、停止図柄は演出内容における1つのパラメータでしかないと言うことができ、図柄コマンドを受信しただけでは何も行えない。以前から、変動パターンコマンドを「画面表示変化系のコマンド」、図柄コマンドを「内部パラメータ変更系のコマンド」として扱っているが、従来の構成では、画面表示変化系のコマンドを受信しても、図柄パラメータを受信していない段階のため、直ちに演出準備を行うことができなかった。更に、図柄コマンドが規定時間内に送られてくるかも監視しなければならず、演出制御装置の負担を増加させていた。
しかし、本例では、その順番を逆にしたので、変動パターンコマンドを受信した時点で、受信済みの図柄情報が合致していれば直ちに演出準備を行うことが可能になったという効果が得られる。なお、図柄コマンドを先に受信しても、画面表示を変更するコマンドではないので先に図柄だけ変わってしまうことはない。RAMに図柄情報を保存するだけだからである。また、図柄コマンドを取りこぼしてしまったとしても前回RAMに保存されている図柄情報が合致するものであれば変動が可能であるという利点もある。これに対して、従来の構成では、取りこぼしてしまうと図柄情報欠損となり、変動を行うことができなかった。つまり、本例の場合、コマンド取りこぼしを遊技者に悟られてしまう可能性が限りなく低くなった(従来よりも格段に低くなった)と言える。また、図柄コマンドと変動コマンドは、ペアとなるコマンドであるが、その関係を薄くし独立したコマンドとして扱えるようになったのでプログラムの開発効率が向上したという効果もある。
次に、上述の受信コマンド解析処理における変動系コマンド処理(ステップD101)の詳細について図77により説明する。
変動系コマンド処理が開始されると、まずステップD111で、特図種別が未確定か判定し、未確定である場合(ステップD111;Y)には、変動系コマンド処理を終了し、未確定でない場合(ステップD111;N)、すなわち、特図種別が設定されている場合には、変動パターン対応図柄判定処理(ステップD112)を実行してステップD113に進む。特図種別とは、特図の種別が特図1か特図2かを示す情報であり、図柄系コマンド処理の後述するステップD171で設定される情報である。
なお、図柄種別とは図柄のカテゴリを意味し、図柄種別には、例えば、はずれ図柄、16R確変大当り図柄などがある。また、上記ステップD113における不整合とは、はずれの変動コマンド(変動パターンコマンド)を受信したのに、16R確変大当り図柄の図柄コマンドを受信していた時など、演出を行う上で矛盾してしまう組み合わせ(変動コマンドと図柄種別の組み合わせ)であることを意味する。
次に、上述の変動系コマンド処理の変動パターン対応図柄判定処理(ステップD112)の詳細について図78により説明する。
変動パターン対応図柄判定処理が開始されると、まず、図柄系コマンド処理の後述するステップD173でセーブされた図柄種別情報をロードして(ステップD121)、ステップD122に進む。
なお、ここでの図柄種別情報は、特図(飾り図柄)の変動表示ゲームの停止図柄の図柄種別を示す情報である。本例の場合、図柄種別は、「はずれ図柄」、「2R確変大当り図柄」、「16R確変大当り図柄」、「11R確変大当り図柄」、及び「11R通常大当り図柄」の5種類に分類することができ、詳細には例えば「16R確変大当り図柄」はさらにA〜Eの5種類に分かれており、また「11R確変大当り図柄」はさらにA〜Cの3種類に分かれているために全部で11種類の停止図柄パターンがある。但し、この態様に限定されず、例えば他のラウンド数の大当り図柄や、小当り図柄などの種別が設定されていてもよく、この図柄種別の設定は機種の仕様によって変化する。ここで、2Rや16Rというのは大当りのラウンド数を示し、確変大当り図柄は大当り後に確変状態(大当りとなる確率が通常状態よりも高められた状態)となる大当り図柄であり、通常大当り図柄は大当り後に通常状態(確変状態でない状態)となる大当り図柄である。また、はずれ図柄は変動表示ゲームの結果がはずれとなる図柄(大当りにならない図柄)である。
また、このようなACT整合チェックアドレステーブルとACT整合チェックテーブルは、はずれ図柄以外の図柄種別(「2R確変大当り図柄」、「16R確変大当り図柄」、「11R確変大当り図柄」、及び「11R通常大当り図柄」)についても同様に設けられており、後述のステップD126,D128,D130,D132においてステップD124と同様に使用される。
ステップD133に進むと、無効コマンド情報を返して(ステップD133)、変動パターン対応図柄判定処理を終了する。
ステップD144に進むと、当該ACT整合チェックテーブルの最後のデータまでステップD142が繰り返し実行されたか判定し、最後のデータまでステップD142が繰り返された場合にはステップD145に進み、そうでない場合にはステップD141に戻って処理を繰り返す。具体的には、ステップD144では、ステップD143で更新されたACT整合チェックテーブルアドレスに対応するデータがチェック終了コード(−1)であるか判定し、チェック終了コードであれば最後まで繰り返されたとしてステップD145に進み、チェック終了コードでなければステップD141に戻って処理を繰り返す。
そして、ステップD145に進むと、異常であるとして無効コマンド情報を返して(ステップD145)、変動パターン対応図柄判定処理を終了する。また、ステップD146に進むと、正常であるとして有効コマンド情報の値を返して(ステップD146)、変動パターン対応図柄判定処理を終了する。
例えば、事前にはずれ図柄の図柄コマンドを受信していてステップD121でロードされる図柄種別情報がはずれ図柄であり、ステップD91で分離された変動コマンドのMODEの値がCBhであるとともにACTの値が06hであり、ACT整合チェックテーブルの5行目のデータが06hである場合には、上記ステップD142が5回繰り返されたときに上記ステップD142の判定結果がYesになってステップD146に進み、有効コマンド情報が返されてステップD113の判定結果はNo(整合)となる。また、同様の場合に、ステップD91で分離されたMODEの値がCBhであるとともにACTの値が例えば01hであり、ACT整合チェックテーブルには01hが存在しない場合には、上記ループ処理が何度繰り返されても上記ステップD142の判定結果はNoであり、最終行に至った時点でデータがチェック終了コードになるために上記ループ処理を終了してステップD145に進み、無効コマンド情報が返されてステップD113の判定結果はYes(不整合)となる。また、ステップD91で分離されたMODEの値が変動系コマンド範囲でない場合(ステップD122がNoの場合)や、ステップD91で分離されたMODEの値が変動系コマンド範囲である(ステップD122がYes)にもかかわらずステップD121でロードされた図柄種別情報が何れの図柄種別でもない場合(ステップD123,D125,D127,D129,D131が全てNoの場合)には、ステップD133で無効コマンド情報が返されてステップD113の判定結果はYes(不整合)となる。
このように、上記変動パターン対応図柄判定処理によれば、停止図柄に合った変動パターンコマンドになっているかという整合性のチェックが行われる。停止図柄の種類(前述したはずれ図柄、16R確変大当り図柄などの図柄種別)によって行われる変動が異なるので、図柄に合った変動パターンコマンドとなっているかを事前にチェックし、整合性がとれていなければ前述したステップD114、D115を実行しないで異常な変動表示演出を行わないようにするためである。なお、変動パターンは、必ずしも完全に図柄毎できれいに分かれているわけではなく、例えば16R確変大当り図柄と2R確変大当り図柄で共用される変動パターンなどもある。
次に、上述の受信コマンド解析処理における大当り系コマンド処理(ステップD103)の詳細について図79により説明する。
大当り系コマンド処理が開始されると、まずステップD151で、MODEのデータ(前述のステップD91で分離された上位バイトのデータ、後述のステップD154、D157、D160でも同じ)がファンファーレ演出(大当りになった時の演出)を指令するものであるか判定し、ファンファーレ演出を指令するものである場合(ステップD151;Y)には、ステップD152に進み、ファンファーレ演出を指令するものでない場合(ステップD151;N)には、ステップD154に進む。
ステップD152に進むと、コマンドに応じたファンファーレ演出を行うためのファンファーレ演出設定処理(ステップD152)を実行して、P機状態としてファンファーレ中を設定して(ステップD153)、大当り系コマンド処理を終了する。
ステップD155に進むと、コマンドに応じたラウンド演出を行うためのラウンド演出設定処理(ステップD155)を実行して、P機状態としてラウンド中を設定して(ステップD156)、大当り系コマンド処理を終了する。
ステップD158に進むと、コマンドに応じたインターバル演出を行うためのインターバル演出設定処理(ステップD158)を実行して、P機状態としてインターバル中を設定して(ステップD159)、大当り系コマンド処理を終了する。
ステップD161に進むと、コマンドに応じたエンディング演出を行うためのエンディング演出設定処理(ステップD161)を実行して、P機状態としてエンディング中を設定して(ステップD162)、大当り系コマンドを終了する。
なお、以上は大当り系コマンド処理の一例であり、上記以外の処理(例えば、ファンファーレ、ラウンド、インターバル、及びエンディング以外の演出のための処理)もあり得る。
次に、上述の受信コマンド解析処理における図柄系コマンド処理(ステップD105)の詳細について図80により説明する。
図柄系コマンド処理が開始されると、まず、MODEのデータ(前述のステップD91で分離された上位バイトのデータ、後述のステップD172でも同じ)に対応する特図種別(特図1か特図2かの情報)を設定する(ステップD171)。例えば、MODEのデータが85hならば特図1を特図種別として設定し、MODEのデータが86hならば特図2を特図種別として設定する。このように特図1か特図2かはMODEのデータから判定できるので、このステップD171では、MODEのデータから特図種別を判定して設定する。
なお、こうして図柄コマンドを受けてステップD171やD173で設定された特図種別や図柄種別の情報が、図柄コマンドに続いて受信された変動コマンドに対する前述のステップD111、D112の処理で使用される。そして、特図種別の情報は、ステップD111の判定に使用されても、ステップD171が新たに実行されるまで以前にステップD171で設定されたデータが記憶保持される構成となっている。また、図柄種別の情報は、ステップD112で使用された後も、ステップD173が新たに実行されるまで、以前にステップD173で設定されたデータが記憶保持される構成となっている。
次に、上述の受信コマンド解析処理における単発系コマンド処理(ステップD107)の詳細について図81及び図82により説明する。
単発系コマンド処理が開始されると、まずステップD181で、MODEのデータ(前述のステップD91で分離された上位バイトのデータ、後述のステップD191、D193、D195、D197、D199、D204、D207でも同じ)が客待ちデモを指令するものであるか判定し、客待ちデモを指令するものである場合(ステップD181;Y)には、ステップD182に進み、客待ちデモを指令するものでない場合(ステップD181;N)には、ステップD191に進む。なお、客待ちデモとは、客待ちデモ演出(又は「客待ち演出」ともいう)のことであり、表示装置41で行われる客待ちデモ表示を含む演出である。客待ちデモ演出では、表示装置41での表示に限られず、他の表示装置での表示やランプ類の点灯(点滅含む)、或いは音声の出力による演出が行われてもよい。
次いで、P機状態として客待ちA(客待ち状態A)を設定して(ステップD184)、ステップD185に進む。なお、本例の場合、客待ち演出には、客待ち状態A、客待ち状態B、客待ちムービー(音無し)、及び客待ちムービー(音有り)がある。
ステップD186に進むと、客待ちデモ同期(客待ちデモ表示におけるサブ間同期)のサブ間コマンド(ブロードキャスト送信設定)を準備して(ステップD186)、この準備したサブ間コマンドを編集すべくサブ間送信データ編集処理(ステップD187)を実行する。
次いで、サブ間演出開始待ちタイマ(後述するステップD532で使用されるタイマ)を設定して(ステップD189)、サブ間送信要求フラグをセットして(ステップD190)、単発系コマンド処理を終了する。サブ間送信要求フラグは、後述するステップD461の判定に使用される。
ステップD193に進むと、MODEのデータが特図2保留数の値を指令するものであるか判定し、特図2保留数の値を指令するものである場合(ステップD193;Y)には、特図2保留情報設定処理(ステップD194)を実行した後に単発系コマンド処理を終了し、特図2保留数の値を指令するものでない場合(ステップD193;N)には、ステップD195に進む。なお、特図1保留情報設定処理(ステップD192)は詳細を後述するが、特図2保留情報設定処理(ステップD194)については、特図1保留情報設定処理と同様の処理(特図1か特図2かの違いのみ)であるため説明を省略する。
ステップD197に進むと、MODEのデータが停電復旧を知らせるもの(停電復旧時のコマンドのデータ)であるか判定し、停電復旧を知らせるものである場合(ステップD197;Y)には、停電復旧設定処理(ステップD198)を実行した後に単発系コマンド処理を終了し、停電復旧を知らせるものでない場合(ステップD197;N)には、ステップD199に進む。停電復旧設定処理(ステップD198)は、例えば「遊技再開しました」といったメッセージを表示装置41に表示したり、ランプ類を所定態様で点滅させたりして遊技者へ停電復旧を報知する等のための処理であり、そのためのシナリオデータ設定処理を含む。
ステップD200に進むと、各種初期画面情報を設定する(ステップD200)。各種初期画面情報の設定内容は、特図種別・図柄種別をクリアする、特図1保留数及び特図2保留数に0を設定する、現図柄及び停止図柄に例えば左=7、中=5、右=3のはずれ図柄を設定するというものである。
ここで、モーション制御テーブルとは、ブロック化された各演出(主に演出表示)を実行するための制御テーブルであり、単にモーションテーブルともいう。このモーションテーブルのデータは、PC(パーソナルコンピュータ)で実行できる市販のアプリケーションソフトによってマウス等を使用したグラフィカルな入力操作によって容易に制作できるものであり、ブロック化された演出毎に演出制御装置300のPROM321に予め記憶されている。
次いで、電源投入用シナリオデータ設定処理(ステップD202)を実行する。この電源投入用シナリオデータ設定処理には、演出装置のモータの動作位置を初期位置にするなどのための初期化処理、さらには前記RWMクリア報知を実行するための制御処理が含まれてもよい。
次いで、P機状態として客待ちA(客待ち状態A)を設定して(ステップD203)、単発系コマンド処理を終了する。
ステップD205に進むと、図柄停止用シナリオデータ設定処理(ステップD205)を実行して、P機状態として通常を設定して(ステップD206)、単発系コマンドを終了する。ここで、通常とは、特図の大当り中、特図の変動中、客待ち中(客待ち状態)の何れでもないことを示す。また、ここで通常と設定された後は、主基板からの次のコマンドに応じて、例えば特図の変動中になったり、客待ち中になったりする。
ここで、確率情報設定処理(ステップD208)は、大当り後に確変になった場合の確変終了時(高確率状態から低確率である通常状態への移行時)の画面切替のための設定処理であり、そのためのシナリオデータ設定処理を含む場合もある。
なお、この単発系コマンド処理については、図示及び説明を省略しているステップがある。例えば、非変動系の他のコマンド(エラー系等のコマンドなど)を受信した場合の対応処理等を省略している。また、全てのコマンドに対してシナリオ制御データを設定しているわけではない。例えば、枠開放を示すエラー系コマンドを受信した場合、表示装置41の画面は変化させないためシナリオ制御データの設定は行わない。
次に、上述の単発系コマンド処理における客待ち用シナリオデータ設定処理(ステップD183)の詳細について図83により説明する。
客待ち用シナリオデータ設定処理が開始されると、まず、シナリオレイヤー番号0を準備する(ステップD211)。ここで、「準備する」とは、後の処理のためにデータを所定の記憶領域に一次記憶して保持しておくことを意味する(後述する他のステップでも同様)。また、シナリオレイヤーは、演出の流れを階層的に制御するための概念的なシナリオの層(レイヤー)である。また、シナリオレイヤー番号は各シナリオレイヤーに付けた番号であり、本例の場合、0から7まである。また、本例では、シナリオレイヤー番号0のシナリオレイヤー(以下「シナリオレイヤー0」という)は主に背景画像の表示制御に使い、シナリオレイヤー1は左図柄の表示制御に使い、シナリオレイヤー2は右図柄の表示制御に使い、シナリオレイヤー3は中図柄の表示制御に使い、シナリオレイヤー4は予告1キャラクタの表示制御に使い、シナリオレイヤー5は予告2キャラクタの表示制御に使い、シナリオレイヤー6は保留表示(すなわち飾り特図始動記憶表示)の表示制御に使い、シナリオレイヤー7は第4図柄の表示制御に使い、シナリオレイヤー8は輪郭内演出の表示制御に使うといったように、シナリオレイヤー毎に制御対象が基本的に割り当てられている。但し、客待ち演出はシナリオレイヤー0のみを使用し、シナリオレイヤー0の中で客待ち演出用の図柄等のモーション情報も管理するようにしている。
次いで、直前のステップD211、D212で準備されたデータ(アドレスやシナリオレイヤー番号のデータ)に基づきシナリオデータ設定処理(ステップD213)を実行する。
次いで、シナリオレイヤー番号2を準備して(ステップD217)、右図柄シナリオ用データテーブルのアドレス(NULL)を準備して(ステップD218)、直前のステップD217、D218で準備されたデータに基づきシナリオデータ設定処理(ステップD219)を実行する。
次いで、シナリオレイヤー番号4を準備して(ステップD223)、予告1シナリオ用データテーブルのアドレス(NULL)を準備して(ステップD224)、直前のステップD223、D224で準備されたデータに基づきシナリオデータ設定処理(ステップD225)を実行する。
次いで、シナリオレイヤー番号6を準備して(ステップD229)、保留シナリオ用データテーブルのアドレス(NULL)を準備して(ステップD230)、直前のステップD229、D230で準備されたデータに基づきシナリオデータ設定処理(ステップD231)を実行する。
次いで、シナリオレイヤー番号8を準備して(ステップD235)、輪郭内演出シナリオ用データテーブルのアドレス(NULL)を準備して(ステップD236)、直前のステップD235、D236で準備されたデータに基づきシナリオデータ設定処理(ステップD237)を実行して、客待ち用シナリオデータ設定処理を終了する。
なお、ステップD215、D218、D221、D224、D227、D230、D233、D236でアドレス(NULL)を準備するシナリオレイヤー1〜8は、シナリオ用データテーブルが設定されないシナリオレイヤー、すなわち制御されないシナリオレイヤーである。
次に、上述の客待ち用シナリオデータ設定処理におけるシナリオデータ設定処理(ステップD213、D216、D219、D222、D225、D228、D231、D234、D237)の詳細について図84により説明する。なお、このシナリオデータ設定処理は各種の演出に対して共通化されており、このシナリオデータ設定処理が実行されるステップは、他の処理(例えば、後述するリーチなし変動設定処理のステップD318等)にも多数存在する。「シナリオデータ設定処理」と記載されているステップは、全てこの図84に示すものである。
シナリオデータ設定処理が開始されると、まずステップD241で、準備されたシナリオ用データテーブルのアドレス(例えばステップD212、D215等で準備されたもの)がNULLか判定し、NULLならば(ステップD241;Y)、ステップD247に進み、NULLでなければ(ステップD241;N)、ステップD242に進む。
このうち、シナリオ管理領域は、図133の右側に示すように、シナリオ用タイマの値を記憶する領域(シナリオ用タイマ領域)と、PB用タイマ(プッシュボタン用タイマ)の値を記憶する領域(PB用タイマ領域)と、PB検知フラグ(プッシュボタン検知フラグ)の値を記憶する領域(PB検知フラグ領域)と、シナリオ用データテーブルのアドレスを記憶する領域(シナリオ用データテーブル領域)とを含む構造である。
また、同一構造のシナリオ管理領域が各シナリオレイヤーに対応してシナリオレイヤー分存在し、本例ではシナリオレイヤーが9個あるので、このシナリオ管理領域も9個(シナリオ管理領域0〜8)存在する。上記ステップD242では、このように複数あるシナリオ管理領域のうちの一つを特定するために、準備されたシナリオレイヤー番号に対応するシナリオ管理領域(以下「対応シナリオ管理領域」という)の先頭アドレスを設定している。
ここで、本願において、「PB(プッシュボタン)」とは、プッシュボタン(演出ボタン25)だけを意味するのではなく、演出操作部550全体(すなわち、プッシュボタン(演出ボタン25)とセレクトボタン(タッチパネル29))を意味する。よって、例えば「PB検知」とは、“演出ボタン25操作の検知及び/又はタッチパネル29操作の検知”を意味する。
次いで、準備されたシナリオレイヤー番号に対応するシナリオ管理領域のアドレス領域に、直前のステップD242で設定されたシナリオ管理領域の先頭アドレスを格納する(すなわち、書き込む)(ステップD243)。
次いで、対応シナリオ管理領域のシナリオ用データテーブル領域に、準備されたシナリオ用データテーブルのアドレス(例えばステップD212で準備されたもの)を書き込んで(ステップD246)、シナリオデータ設定処理を終了する。
一方、ステップD247に進むと、準備されたシナリオレイヤー番号に対応するシナリオ管理領域のアドレス領域にNULLを書き込んで(ステップD247)、シナリオデータ設定処理を終了する。
例えば、前述した客待ち用シナリオデータ設定処理では、ステップD213、D216、D219、D222、D225、D228、D231、D234、D237で上記シナリオデータ設定処理が実行されることによって、シナリオ管理領域のアドレス領域におけるシナリオレイヤー0用アドレスとしてシナリオ管理領域0の先頭アドレスが設定され、残りのシナリオレイヤー1用アドレスからシナリオレイヤー8用アドレスまでにはNULLが設定される。また、シナリオ管理領域0のシナリオ用データテーブル領域にはステップD212で準備された客待ちシナリオ用データテーブルのアドレスが設定される。これにより、シナリオレイヤー0のみで客待ち演出の制御が実行される。
次に、前述の単発系コマンド処理における特図1保留情報設定処理(ステップD192)の詳細について図85により説明する。
特図1保留情報設定処理が開始されると、まず、その時点の特図1保留数のデータをロードし、このロードしたデータを前保留数として記憶する(ステップD251)。
次いで、コマンド(ステップD91で分離されたMODE及びACTのデータ)で指令された保留数の値を特図1保留数として記憶して(ステップD252)、その後ステップD253に進む。
ステップD254に進むと、新保留数に対応する保留用モーション制御テーブルのインデックスを算出し、セーブする(ステップD254)。なお、インデックスとは、グループを成す複数の記憶領域のうちの何番目かを特定するデータであり、特にモーションテーブルを特定するインデックスをモーションインデックスという。このステップD254では、新保留数に対応する保留用モーション制御テーブルを特定するモーションインデックスを算出し、これを記憶する記憶領域(保留用インデックス領域)にセーブする。
次いで、シナリオレイヤー番号6を準備して(ステップD255)、特図1保留シナリオ用データテーブル(保留X個)のアドレスを準備する(ステップD256)。ここで、特図1保留シナリオ用データテーブル(保留X個)とは、新保留数に対応する演出を行うための保留数毎に異なるシナリオテーブルを意味し、新保留数が例えば1個であれば特図1保留シナリオ用データテーブル(保留1個)であり、新保留数が例えば2個であれば特図1保留シナリオ用データテーブル(保留2個)である。
次いで、直前のステップD255、D256で準備されたデータに基づいて、前述したシナリオデータ設定処理(ステップD257)を実行して、ステップD258に進む。
ステップD259に進むと、新保留数に対応する色情報領域に保留通常点灯の表示パターンを設定して(ステップD259)、ステップD260に進む。
ステップD260に進むと、P機状態が大当り中か判定し、大当り中であれば(ステップD260;Y)、特図1保留情報設定処理を終了し、大当り中でなければ(ステップD260;N)、始動口入賞音を出力要求して(ステップD261)、特図1保留情報設定処理を終了する。なお、大当り中には、前述したファンファーレ中、ラウンド中、インターバル中、及びエンディング中が含まれる。
なお、ステップD259に進むのは、特図1の始動入賞があった場合であるので、この始動入賞による保留表示(保留されている始動記憶の表示)や演出用の入賞音出力を行うためにステップD259及びD261が実行される。但し、大当り中には、ステップD260で分岐して入賞音出力を行わない。また、ステップD262に進むのは、特図1の始動記憶の保留数が減少した場合であるため、先読み表示(例えば大当り予告や変動パターン予告)を行っている保留数の表示をずらして表示したり、先読み情報(先読みした変動パターンや停止図柄の情報及び先読み演出有無等の各種情報(フラグ等))を保留数に対応する領域にずらすために、ステップD262、D263が実行される。
演出制御装置300では、前述のステップD109(先読み系コマンド処理)において、各保留毎に、先読み系コマンドの解析結果として上記先読み情報を設定している。そして、この先読み情報の格納領域は、主基板で変動開始時に乱数格納領域をシフトするのと同様に、前記保留数の減少に対応させてシフトさせる必要があり、この格納領域のシフトを行っているのが、上記ステップD262である。また、ステップD263は、先読み情報に応じた保留表示色(すなわち、先読み演出のために先読み演出の有無や内容によって異ならせている保留表示の色)の情報の格納領域を同様にシフトさせるための処理である。
次に、前述の変動系コマンド処理における変動演出設定処理(ステップD114)の詳細について図86及び図87により説明する。
変動演出設定処理が開始されると、まず、受信したコマンドに応じた大別パターン(特図の変動表示演出の大まかな分類であり、後述する大別パターンデータによって決まる)を選択する変動パターン分類処理(ステップD271)を実行して、上記ステップD271の変動パターン分類処理で返された大別パターン及び各種演出情報に対応する予告振分テーブル1を準備する(ステップD272)。ここでの演出情報とは、停止図柄の情報(特に大当り図柄の詳細、はずれは大別パターンで分かるため)、高確率/時短状態といった確率状態の情報、保留数の数、及び演出制御装置300が管理する遊技モード(本例では遊技制御装置からも遊技モードのコマンドが送られてくる)などが有り得る。このステップD272(或いは後述のステップD274、D277)で各種演出情報を考慮して予告振分テーブルを設定しているので、例えば同一の変動パターンコマンドでも、そのときの状態で、予告の振り分け率(発生率)を変化させられるようになる。
次いで、乱数抽選処理A(ステップD273)を実行する。
次いで、上記ステップD271で返された大別パターン及び各種演出情報に対応する予告振分テーブル2を準備して(ステップD274)、乱数抽選処理B(ステップD275)を実行して、ステップD276に進む。
ステップD277に進むと、上記ステップD271で返された大別パターン及び各種演出情報に対応する予告振分テーブル3を準備して(ステップD277)、乱数抽選処理C(ステップD278)を実行して、ステップD279に進む。
ステップD279に進むと、基本BGM番号(基本BGMの曲番号)を設定して(ステップD279)、予告演出設定処理1(ステップD280)を実行して、その後ステップD281に進む。
なお、前半変動種別とは、同一のMODE(例えば12秒前半通常変動)の中で、演出制御装置側で振り分けている変動予告種類のことである。また、「通常変動」における「通常」とは、いわゆるすべりや短縮変動等の特殊な変動ではないという意味である。また煩雑を避けるため、ここでは、前半変動種別が通常(すべりや短縮でない)の場合の予告振り分けの様子のみをフローチャート(図86)に記載している。そして、前半変動種別が通常変動でない場合の各種変動の処理は、ステップD281の判定結果がNoになった流れ以降のステップ(図86において波線で省略している)で実行されるが、この流れ以降の処理を実行した後には、次の図87のステップD290に進む構成となっている。また、大当り、はずれのいずれの場合でも、前半変動が通常になり得るので、各予告用シナリオデータ設定処理(後述するステップD286〜D289)は大当りとはずれの何れの場合でも実行される可能性がある。但し、大当り専用の前半変動なども考えられるので、常に両用の設定処理ばかりとは限らない。
ステップD283に進むと、ここまでの処理で決定された予告種別が特殊文字予告を指定するものであるか判定し、特殊文字予告でない場合(ステップD283;N)には、ステップD284に進み、特殊文字予告である場合(ステップD283;Y)には、特殊文字予告用シナリオデータ設定処理(ステップD287)を実行した後にステップD290に進む。
ステップD285に進むと、ここまでの処理で決定された予告種別がフラッシュバック予告を指定するものであるか判定し、フラッシュバック予告でない場合(ステップD285;N)には、ステップD290に進み、フラッシュバック予告である場合(ステップD285;Y)には、フラッシュバック予告用シナリオデータ設定処理(ステップD289)を実行した後にステップD290に進む。
ステップD291に進むと、特図2に対応する保留用モーション制御テーブルを特定するモーションインデックスを算出し、これを記憶する記憶領域(保留用インデックス領域)にセーブして(ステップD291)、第4図柄用(特図2変動)モーション制御テーブルを特定するモーションインデックスを算出し、これを記憶する記憶領域(第4図柄インデックス領域)にセーブして(ステップD292)、ステップD295に進む。
ステップD293に進むと、特図1に対応する保留用モーション制御テーブルを特定するモーションインデックスを算出し、これを記憶する記憶領域(保留用インデックス領域)にセーブして(ステップD293)、第4図柄用(特図1変動)モーション制御テーブルを特定するモーションインデックスを算出し、これを記憶する記憶領域(第4図柄インデックス領域)にセーブして(ステップD294)、ステップD295に進む。
・フレーム数(表示フレーム数)は、当該モーションテーブルは何フレーム分のモーションデータ(モーションテーブルを構成するデータ)が定義されているかを示す。
・モーションコマンド数は、当該モーションテーブル内に定義されているコマンド数を示す。
・モーションテーブル名は、当該モーションテーブルの名称(=アドレス)を示す。
・ビヘイビア数は、当該モーションテーブル内で使用するビヘイビアの数(種類)を示す。
・ビヘイビアテーブル名は、当該モーション制御時のビヘイビア(処理のアドレス)を定義してあるビヘイビアテーブルの名称(=アドレス)を示す。
なお、ビヘイビア数が0なら、当然ビヘイビアテーブルは不要である。
ここで、ビヘイビアとは、オブジェクト(表示要素)の動作を設定する機能である。本例では、主にモーションテーブル上に定義されている画像データ(キャラクタデータ)を状況に応じて変更するために使用している。
なお、本例では、12秒前半通常変動の場合には、リーチアクション無しの変動パターンしかあり得ない。この場合、リーチアクションを行わないので後半変動の時間値は0として設定し、合計で12秒となる変動パターン(すなわち、12秒通常変動;ここでの「通常」はリーチではない変動という意味である)として定義している。つまり、ステップD91で分離されたACTのデータ(後半変動パターン)が示す後半変動時間値は0秒変動ということになる。
ステップD299に進むと、前記MODEのデータが(前半変動パターン)が10.4秒前半通常変動(ここでの「通常」は短縮変動等ではないという意味)を指令するものか否か判定し、10.4秒前半通常変動を指令するものであれば(ステップD299;Y)、ステップD300に進み、10.4秒前半通常変動を指令するものでなければ(ステップD299;N)、ステップD308に進む。なお、本例では、10.4秒前半通常変動の場合には、リーチアクション有りの変動パターンしかあり得ない。この場合、リーチアクションの演出内容に伴って後半変動の時間値は変化するので、合計で「10.4+α」秒となる変動パターンとして定義される。同一のMODEに対してACTのデータ(後半変動パターン)は複数の種類があり、この数は遊技機毎の仕様により異なる。
ステップD301に進むと、前記ACTのデータ(後半変動パターン)がノーマル+1はずれの変動を指令するものか否か判定し、ノーマル+1はずれを指令するものであれば(ステップD301;Y)、ノーマル+1はずれ設定処理(ステップD305)を実行した後に変動演出設定処理を終了し、ノーマル+1はずれを指令するものでなければ(ステップD301;N)、ステップD302に進む。なお、ノーマル+1はずれも、ノーマルリーチアクション有りで外れる変動パターンである。
次に、上述の変動演出設定処理におけるリーチなし変動設定処理(ステップD298)の詳細について図88により説明する。なお、本例では、MODE=12秒前半通常変動は、はずれの場合しかない。このため、このリーチなし変動設定処理で設定される後述の図柄生成フラグは、はずれ図柄の指示しかない。
リーチなし変動設定処理が開始されると、まずステップD311で、以前の処理(ステップD271〜D278)で設定された前半変動種別が超短縮変動であるか判定し、超短縮変動であれば(ステップD311;Y)、リーチ+1はずれの図柄生成フラグを準備して(ステップD312)、ステップD314に進み、超短縮変動でなければ(ステップD311;N)、はずれバラケ目の図柄生成フラグを準備して(ステップD313)、ステップD314に進む。
なお、超短縮変動とは、主基板からの指令は12秒前半通常変動でも、その中でリーチの動きを行うことをサブ基板で選択する場合があり、そのような場合の変動の例である。
また、バラケ目とは、特図を構成する複数の図柄がリーチや大当りとなる図柄でない状態(リーチ形の組み合わせでなければ「776」のような組み合わせも含む)を意味する。
次いで、シナリオレイヤー番号1を準備して(ステップD319)、前述した図柄変動シナリオテーブル領域から、左図柄シナリオ1stテーブルアドレス(前述した左図柄用領域における1st(序盤)用領域に格納されたシナリオテーブルのアドレス)をロードし、準備して(ステップD320)、直前のステップD319、D320で準備されたデータに基づいて、前述したシナリオデータ設定処理(ステップD321)を実行する。
次いで、シナリオレイヤー番号3を準備して(ステップD325)、前述した図柄変動シナリオテーブル領域から、中図柄シナリオ1stテーブルアドレス(前述した中図柄用領域における1st(序盤)用領域に格納されたシナリオテーブルのアドレス)をロードし、準備して(ステップD326)、直前のステップD325、D326で準備されたデータに基づいて、前述したシナリオデータ設定処理(ステップD327)を実行する。
次いで、シナリオレイヤー番号8を準備して(ステップD33A)、輪郭内演出シナリオテーブル(輪郭内演出用のシナリオテーブル)のアドレスを準備して(ステップD33B)、直前のステップD33A、D33Bで準備されたデータに基づいて、前述したシナリオデータ設定処理(ステップD33C)を実行して、リーチなし変動設定処理を終了する。
以上説明したリーチなし変動設定処理によれば、リーチなし変動の場合のシナリオ制御データの設定が必要なシナリオレイヤー(この場合、シナリオレイヤー0,1,2,3,7)について行われたことになる。
次に、上述のリーチなし変動設定処理における停止図柄設定処理(ステップD314)の詳細について図89により説明する。なお、本例では、演出用の特図が左右並んで配置される3カ所の図柄(左図柄、中図柄、右図柄)からなるが、これら図柄としてそれぞれ9種類の図柄(図柄番号0〜8)がある場合を例示する。
停止図柄設定処理が開始されると、まずステップD331で、前述した特図種別が特図2変動か判定し、特図2である場合(ステップD331;Y)には、ステップD332に進み、特図2でない場合(ステップD331;N)、すなわち、特図1の場合には、ステップD333に進む。
ステップD332に進むと、特図停止図柄領域の特図2第4図柄にはずれ図柄番号をセーブして(ステップD332)、ステップD334に進む。
ステップD333に進むと、特図停止図柄領域の特図1第4図柄にはずれ図柄番号をセーブして(ステップD333)、ステップD334に進む。
ステップD337に進むと、ステップD336で設定した右図柄rxがステップD335で設定した左図柄lx以上の値であるか判定し、右図柄rx≧左図柄lxであれば(ステップD337;Y)、右図柄rxの図柄番号を1つ増やして(ステップD338)、ステップD339に進み、右図柄rx≧左図柄lxでなければ(ステップD337;N)、すなわち、右図柄rx<左図柄lxであれば、ステップD338を実行しないでステップD339に進む。
これらステップD335〜D338の処理により、左図柄lxと右図柄rxがランダムに設定されるとともに、左図柄lxと右図柄rxは必ず異なる図柄番号に設定される。ステップD336で図柄番号7以下の範囲から選択するのは、ステップD338で必ず一つ増やすことができるようにするためである。
具体的に説明すると、例えば3,5,7の組合せの図柄が出現禁止図柄であるとすると、ステップD339では、左図柄lxと右図柄rxの図柄番号が3,5,7のうちの異なる何れか二つである場合には、出現禁止図柄となり得るとしてステップD340に進む。
次いで、8種類の図柄番号0〜7からランダムに一つ選択した図柄番号を中図柄cxとして設定して(ステップD341)、その後ステップD342に進む。
これらステップD341〜D343の処理によれば、中図柄cxの値は必ずnocxと異なる値になり、結局、「左図柄lx,中図柄cx,右図柄rx」の組合せは、必ず出現禁止図柄でないものとなる。
ステップD344に進むと、8種類の図柄番号0〜7からランダムに一つ選択した図柄番号を中図柄cxとして設定して(ステップD344)、その後ステップD354に進む。
ステップD346に進むと、10種類の値0〜9からランダムに一つ選択した値をtmprndとして格納して(ステップD346)、ステップD347に進む。
ステップD347に進むと、tmprndの値が0か判定し、0ならば(ステップD347;Y)、ステップD348に進み、0でないならば(ステップD347;N)、ステップD350に進む。
ステップD350に進むと、偶数である5種類の値0,2,4,6,8からランダムに一つ選択した値を左図柄lxの番号として格納して(ステップD350)、ステップD351に進む。
ステップD349又はステップD351に進むと、リーチの図柄とするために、右図柄rxの値を左図柄lxの値と同じにする(すなわち、右図柄を左図柄と同じ図柄とする)処理を行って(ステップD349又はステップD351)、ステップD352に進む。
ステップD353に進むと、その他の図柄生成フラグに対応する組合せの図柄(大当り図柄も含む)を生成して(ステップD353)、ステップD354に進む。
ステップD354に進むと、ここまでのステップで設定された左図柄lx、中図柄cx、右図柄rxの値を、停止図柄領域の左図柄・中図柄・右図柄にそれぞれ格納して(ステップD354)、停止図柄設定処理を終了する。
なお、上記ステップD334〜D352は、以上説明したように、はずれバラケ目の場合と、リーチ−1はずれ目の場合の処理である。実際には停止図柄の種類には、他にも沢山の種類があるが、ここでは煩雑を避けるために、それら他の種類の処理についてはステップD353でまとめて図示しており、その詳細については図示及び説明を省略する。
また、大当り図柄生成の場合は、例えば左図柄だけを決定し、中・右図柄にコピーするやり方などが考えられる。その他、「777」と限定される場合や、計算によらず停止図柄の組合せを複数テーブル上に定義し、乱数で何れかを選択する、というやり方も考えられる。
次に、前述の変動演出設定処理における変動パターン分類処理(ステップD271)の詳細について図90により説明する。
変動パターン分類処理が開始されると、まずステップD361で、MODEのデータが変動系コマンドであるか判定し、変動系コマンドであれば(ステップD361;Y)、ステップD362に進み、変動系コマンドでなければ(ステップD361;N)、ステップD368に進む。
ステップD362に進むと、ACTのデータは有効範囲か判定し、有効範囲であれば(ステップD362;Y)、ステップD363に進み、有効範囲でなければ(ステップD362;N)、ステップD368に進む。
ステップD364に進むと、ステップD363で取得した変動パターンチェックデータが0か判定し、0ならば(ステップD364;Y)、ステップD368に進み、0でなければ(ステップD364;N)、ステップD365に進む。
次いで、ステップD366で取得した大別パターンデータを返して(ステップD367)、変動パターン分類処理を終了する。
ステップD368に進むと、0を返して(ステップD368)、変動パターン分類処理を終了する。
また、大別パターンデータは、MODE及びACTのデータに対応した予告振分テーブル等を前述したステップD272等で準備するために、MODE及びACTのデータが指令する変動パターンがどの分類に属するのかを示すデータである。すなわち、コマンドの値から変動パターンの系統をチェックし、対応する予告振り分けのテーブル等を設定できるようにするために、この大別パターンデータがある。これは、リーチの種類等で予告の発生率が変化するためである。
また、大別パターンテーブルは、前述したように大別パターンデータを決定するためのテーブルである。そして、この大別パターンテーブルにおいて、MODE及びACTのデータの組み合わせが存在しない所は大別パターンデータが0となっている。このため、MODE及びACTのデータの組み合わせが存在しない場合、ステップD367では、ステップD368と同様に0を返すことになる。また、こうして0が返された場合、例えば通常外れと同様の扱いとする。通常外れと同様の扱いにすれば、確定したコマンドに万が一異常があっても、特図を一応変動させることができ、遊技者に不安を抱かせないようにすることができるなどの利点がある。但し、0が返された場合、通常外れとしないで、例えば変動演出設定処理においてステップD271を実行した後に、ステップD272以降を実行しないで当該変動演出設定処理を終了する構成として、変動開始設定を行わない態様も有り得る。このようにすると、コマンド異常の場合には特図を変動させないようにすることができる。
次に、前述の変動演出設定処理における乱数抽選処理A(ステップD273)の詳細について図91により説明する。この乱数抽選処理Aは、前述のステップD272で振分けのグループA用として準備された予告振分テーブル1における振分け結果を種別毎に乱数により選択する処理である。
乱数抽選処理Aが開始されると、予告種別番号Aを初期値1から増分1だけ増加させつつ終値na(例えば、na=9)になるまで、ステップD371〜ステップD380を繰り返し実行し、その後乱数抽選処理Aを終了する。すなわち、ステップD371では、乱数抽選処理A開始直後は予告種別番号Aを1としてステップD372に進む。ステップD380では、予告種別番号Aがna未満である場合にはステップD371に戻り、予告種別番号Aがnaである場合には乱数抽選処理Aを終了する。そしてステップD371に戻ると、予告種別番号Aの値を1だけ増加させてステップD372に進む。なお、終値naの値は機種毎に異なる。
次いで、予告種別番号Aに対応する振分テーブルアドレスの値(予告種別番号Aの値に対応する行の先頭の列を示す値)を設定して(ステップD374)、ステップD375に進む。ここで、振分テーブルアドレスは、既述したように、前述のステップD272で準備された予告振分テーブル内の同一行における横方向位置(以下「現アドレス」という)を指定する。
ステップD376に進むと、前記rdmの値から前記振分け値を減算した値を新たなrdmの値として設定して(ステップD376)、振分テーブルの現アドレスを次振分け値のアドレスに更新(振分テーブルの同一行において1列分だけ現アドレスを先頭から離れる方向にずらす更新)を実行する(ステップD377)。
次いで、振分番号を+1更新して(ステップD378)、ステップD375に戻って処理を繰り返す。
ステップD380に進むと、前述したように、予告種別番号Aがna未満である場合にはステップD371に戻り、予告種別番号Aがnaである場合には乱数抽選処理Aを終了する。
なお、演出振分け結果領域は、上記予告データ値のような演出振分け結果をセーブするCPU311内のRAM内の領域である。
次に、前述の変動演出設定処理における乱数抽選処理B(ステップD275)について説明する。この乱数抽選処理Bは、前述のステップD274で振分けのグループB用として準備された予告振分テーブル2における振分け結果を種別毎に乱数により選択する処理である。
乱数抽選処理Bの詳細は、前述の乱数抽選処理Aと同様であるため、図示及び詳細説明を省略する。
次に、前述の変動演出設定処理における乱数抽選処理C(ステップD278)について説明する。この乱数抽選処理Cは、前述のステップD277で振分けのグループC用として準備された予告振分テーブル3における振分け結果を種別毎に乱数により選択する処理である。
乱数抽選処理Cの詳細は、前述の乱数抽選処理Aと同様であるため、図示及び詳細説明を省略する。
上述の乱数抽選処理A,B,Cによれば、全てのグループA,B,Cのそれぞれで全ての予告種別番号の値に対して振分け結果が予め選択され、この振分け結果に応じた演出内容を指定する各種情報が予め所定の記憶領域にそれぞれ格納されることになる。
次に、前述の変動演出設定処理における予告演出設定処理1(ステップD280)の詳細について図92により説明する。この予告演出設定処理1としては、乱数抽選結果(前述した乱数抽選処理A、B、Cの結果)に応じてステップアップ予告の設定を行う場合を例示しているが、当然機種毎に予告演出の内容は異なる。なお、ステップアップ予告とは、予告内容や予告の信頼度を変化させつつ大当り予告を段階的に行うものである。本願の図面及び明細書において、「SU」とは、このステップアップ予告のステップアップを意味する。
予告演出設定処理1が開始されると、まず、演出振分け結果領域のSU予告回数領域から振分け結果をロードする(ステップD381)。
次いで、シナリオレイヤー番号4を準備して(ステップD382)、ステップD381でロードしたSU予告回数に対応するSU予告シナリオテーブルのアドレスを準備して(ステップD383)、直前のステップD382、D383で準備されたデータに基づいて、前述したシナリオデータ設定処理(ステップD384)を実行する。
次いで、演出振分け結果領域のSU2カットイン領域から振分け結果をロードして(ステップD387)、ステップD387でロードしたSU2カットイン番号に対応するキャラデータを取得し、モーションインデックス領域のSU2カットイン領域にセーブする(ステップD388)。
上記ステップD385〜D390では、振り分けられたキャラ出現を行うためのモーションテーブルのデータを、一旦保存している。なお、ここで保存されたデータが使用されるとは限らず、その後、後述のカットインキャラ差替え判定処理1〜3(ステップD395〜D397)における判定の結果によっては、例えば機種固有の女性キャラのデータに差し替えが行われる。また、ここでは、SU数が満たない結果(例えばSU1が選ばれた)の場合、上位SU領域には一番信頼度の低いキャラクタのデータをセーブしておくことになるが、結果としては使われない制御となっている。
ステップD392に進むと、ステップD381でロードしたSU予告回数が1か判定し、1でない場合(ステップD392;N)には、ステップD393に進み、1である場合(ステップD392;Y)には、ステップD395に進む。
ステップD393に進むと、ステップD381でロードしたSU予告回数が2か判定し、2でない場合(ステップD393;N)には、ステップD394に進み、2である場合(ステップD393;Y)には、ステップD396に進む。
ステップD394に進むと、ステップD381でロードしたSU予告回数が3か判定し、3でない場合(ステップD394;N)には、予告演出設定処理1を終了し、3である場合(ステップD394;Y)には、ステップD397に進む。
ステップD395に進むと、カットインキャラ差替え判定処理1(ステップD395)を実行して、その後予告演出設定処理1を終了する。
ステップD396に進むと、カットインキャラ差替え判定処理2(ステップD396)を実行して、その後予告演出設定処理1を終了する。
ステップD397に進むと、カットインキャラ差替え判定処理3(ステップD397)を実行して、その後予告演出設定処理1を終了する。
次に、上述の予告演出設定処理1におけるカットインキャラ差替え判定処理1(ステップD395)の詳細について図93により説明する。なお、SU予告回数が1の場合に本処理が実行されるが、SU予告回数が1の場合にはステップアップ予告で登場するキャラが一人目だけであるため、本処理では差替えが全部差替えしかない。
カットインキャラ差替え判定処理1が開始されると、まず、演出振分け結果領域の差替え判定領域から振分け結果をロードして(ステップD401)、ステップD402に進む。
ステップD402に進むと、ステップD401でロードした振分け結果に基づいて差替えが全部差替えであるか判定し、全部差替えならば(ステップD402;Y)、ステップD403に進み、全部差替えでなければ(ステップD402;N)、カットインキャラ差替え判定処理1を終了する。
ステップD403に進むと、カットインSU1用モーション制御テーブルのインデックスをステップD401でロードした振分け結果に基づいて差し替えて(ステップD403)、カットインキャラ差替え判定処理1を終了する。
次に、上述の予告演出設定処理1におけるカットインキャラ差替え判定処理2(ステップD396)の詳細について図94により説明する。なお、SU予告回数が2の場合に本処理が実行されるが、SU予告回数が2の場合にはステップアップ予告で登場するキャラが二人目までであるため、本処理では差替えが、一部差替え(一人目だけ差替え)、一部差替え(二人目だけ差替え)、及び全部差替え(一人目と二人目の両方差替え)の3パターンのみである。
カットインキャラ差替え判定処理2が開始されると、まず、演出振分け結果領域の差替え判定領域から振分け結果をロードして(ステップD405)、ステップD406に進む。
ステップD406に進むと、ステップD405でロードした振分け結果に基づいて差替えが差替え無しであるか判定し、差替え無しならば(ステップD406;Y)、カットインキャラ差替え判定処理2を終了し、差替え無しでなければ(ステップD406;N)、ステップD407に進む。
ステップD409に進むと、ステップD408でロードした振分け結果に基づいて差替え対象がSU1(一人目のキャラ)か判定し、SU1ならば(ステップD409;Y)、カットインSU1用モーション制御テーブルのインデックスを前記振分け結果に基づいて差し替えて(ステップD411)、カットインキャラ差替え判定処理2を終了し、SU1でなければ(ステップD409;N)、ステップD410に進む。
ステップD413に進むと、ステップD405でロードした振分け結果に基づいて差替えが全部差替えであるか判定し、全部差替えならば(ステップD413;Y)、ステップD414に進み、全部差替えでなければ(ステップD413;N)、カットインキャラ差替え判定処理2を終了する。
ステップD414に進むと、カットインSU1用モーション制御テーブルのインデックスをステップD405でロードした振分け結果に基づいて差し替え(ステップD414)、カットインSU2用モーション制御テーブルのインデックスを同様に差し替えて(ステップD415)、カットインキャラ差替え判定処理2を終了する。
次に、上述の予告演出設定処理1におけるカットインキャラ差替え判定処理3(ステップD397)の詳細について図95及び図96により説明する。なお、SU予告回数が3の場合に本処理が実行されるが、SU予告回数が3の場合にはステップアップ予告で登場するキャラが三人目まであるため、後述する処理内容に示すような多様な差替えパターンがあり、本例では、全部差替えについても通常の全部差替えと特殊な全部差替え(後述するストーリー用、及びプレミアム用)とがある。
カットインキャラ差替え判定処理3が開始されると、まず、演出振分け結果領域の差替え判定領域から振分け結果をロードして(ステップD421)、ステップD422に進む。
ステップD422に進むと、ステップD421でロードした振分け結果に基づいて差替えが差替え無しであるか判定し、差替え無しならば(ステップD422;Y)、カットインキャラ差替え判定処理3を終了し、差替え無しでなければ(ステップD422;N)、ステップD423に進む。
ステップD425に進むと、ステップD424でロードした振分け結果に基づいて差替え対象がSU1(一人目のキャラ)か判定し、SU1ならば(ステップD425;Y)、カットインSU1用モーション制御テーブルのインデックスを前記振分け結果に基づいて差し替えて(ステップD433)、カットインキャラ差替え判定処理3を終了し、SU1でなければ(ステップD425;N)、ステップD426に進む。
ステップD427に進むと、ステップD424でロードした振分け結果に基づいて差替え対象がSU3(三人目のキャラ)か判定し、SU3ならば(ステップD427;Y)、カットインSU3用モーション制御テーブルのインデックスを前記振分け結果に基づいて差し替えて(ステップD435)、カットインキャラ差替え判定処理3を終了し、SU3でなければ(ステップD427;N)、ステップD428に進む。
ステップD429に進むと、ステップD424でロードした振分け結果に基づいて差替え対象がSU2とSU3(二人目と三人目のキャラ)か判定し、SU2とSU3ならば(ステップD429;Y)、カットインSU2用とカットインSU3用のモーション制御テーブルのインデックスを前記振分け結果に基づいて差し替えて(ステップD438,D439)、カットインキャラ差替え判定処理3を終了し、SU2とSU3でなければ(ステップD429;N)、カットインキャラ差替え判定処理3を終了する。
ステップD431に進むと、ステップD421でロードした振分け結果に基づいて差替え対象がストーリー用か判定し、ストーリー用ならば(ステップD431;Y)、カットインSU1用とカットインSU2用とカットインSU3用のモーション制御テーブルのインデックスを前記振分け結果に基づいて差し替えて(ステップD443〜D445)、カットインキャラ差替え判定処理3を終了し、ストーリー用でなければ(ステップD431;N)、ステップD432に進む。
次に、上述の変動演出設定処理におけるPB予告用シナリオデータ設定処理(ステップD288)の詳細について図97により説明する。
PB予告用シナリオデータ設定処理が開始されると、まず、演出振分け結果領域のセリフSU領域から振分け結果をロードして(ステップD451)、ステップD452に進む。
ステップD452に進むと、ステップD451でロードした振分け結果に基づいてセリフSUがSU2系(SU2系は出現キャラが一人)であるか判定し、SU2系ならば(ステップD452;Y)、ステップD453に進み、SU2系でなければ(ステップD452;N)、すなわち、出現キャラが二人のSU3系であるならば、ステップD456に進む。
次いで、ステップD453でロードした振分け結果に基づいて、ステップD454で設定したテーブルから、振分け結果のセリフSU2パターンに対応するシナリオテーブルのアドレスを取得し、準備して(ステップD455)、ステップD459に進む。
次いで、ステップD456でロードした振分け結果に基づいて、ステップD457で設定したテーブルから、振分け結果のセリフSU3パターンに対応するシナリオテーブルのアドレスを取得し、準備して(ステップD458)、ステップD459に進む。
以上説明したPB予告用シナリオデータ設定処理によれば、PB(プッシュボタン)の操作によって特別なキャラクタが登場したり、PBを操作した後のキャラクタやキャラクタのセリフが変化したりするといったPB予告演出が可能となる。
次に、前述のメイン処理におけるサブ間送信開始処理(ステップD24)の詳細について図98により説明する。なお、サブ間送信とは、サブ間通信における送信のことである。サブ間通信とは、遊技場の異なるパチンコ遊技機のサブ基板(本例では、演出制御装置)の間で行われる通信(本例では、無線通信)である。
サブ間送信開始処理が開始されると、まずステップD461で、サブ間送信要求があるか(すなわち、前述したステップD190、或いは後述するステップD480等でセットされるサブ間送信要求フラグがセットされているか)判定し、サブ間送信要求があれば(ステップD461;Y)、すなわちサブ間送信要求フラグがセットされていれば、ステップD462に進み、サブ間送信要求がなければ(ステップD461;N)、すなわちサブ間送信要求フラグがセットされていなければ、サブ間送信開始処理を終了する。
ステップD462に進むと、サブ間送信開始待ちタイマの値が0より大きいか判定し、0より大きい場合(ステップD462;Y)には、ステップD466に進み、0以下の場合(ステップD462;N)には、ステップD463に進む。
ステップD466に進むと、サブ間送信開始待ちタイマを更新する(すなわち、タイマの値を一定値減らす)処理を行って(ステップD466)、サブ間送信開始処理を終了する。サブ間送信開始待ちタイマは、後述するステップD479で初期値を設定され、後述するステップD491でクリアされる(値が0とされる)タイマである。
次に、前述のメイン処理におけるサブ間受信タスク処理(ステップD25)の詳細について図99により説明する。
サブ間受信タスク処理が開始されると、まずステップD471で、サブ間受信タスク要求があるか(すなわち、サブ間通信の受信データ(サブ間コマンドの受信データ)があって、図示省略したサブ間受信割込み処理でセットされるサブ間受信タスク要求フラグがセットされているか)判定し、サブ間受信タスク要求があれば(ステップD471;Y)、すなわちサブ間受信タスク要求フラグがセットされている場合には、ステップD472に進み、サブ間受信タスク要求がなければ(ステップD471;N)、すなわちサブ間受信タスク要求フラグがセットされていない場合には、サブ間受信タスク処理を終了する。
ステップD473に進むと、ステップD472でロードしたSB_MODEのデータが端末ID報知を示すものか判定し、端末ID報知を示すものでない場合(ステップD473;N)には、ステップD474に進み、端末ID報知を示すものである場合(ステップD473;Y)には、ステップD482に進む。
但し、サブ間演出は遊技の結果に影響を与えないものなので、上述したような弊害(例えば、存在のなくなった相手に演出要求をした結果、演出が行われなくなってしまう弊害)があっても問題ないとする思想も成立する。そのような思想に従った仕様の場合には前記端末有効期間タイマは不要である。
ステップD474に進むと、ステップD472でロードしたSB_MODEのデータがack応答を示すものか判定し、ack応答を示すものでない場合(ステップD474;N)には、ステップD476に進み、ack応答を示すものである場合(ステップD474;Y)には、ack受信フラグをセットして(ステップD486)、ステップD481に進む。
ステップD477に進むと、サブ間データ送信中か判定し、サブ間データ送信中ならば(ステップD477;Y)、ステップD481に進み、サブ間データ送信中でなければ(ステップD477;N)、ステップD478に進む。なお、サブ間データ送信とは、サブ間通信におけるデータ送信(例えば、コマンドの送信)である。また、本願では、サブ間通信で送受信されるコマンドをサブ間コマンドと称している。
ステップD478に進むと、受信したサブ間コマンドの内容に対応する各種演出のサブ間コマンド、或いはパラメータ等を設定して(ステップD478)、ステップD478で設定したサブ間コマンドを他の遊技機のサブ基板に送信すべく、サブ間送信開始待ちタイマを設定して(ステップD479)、サブ間送信要求フラグをセットして(ステップD480)、ステップD480aに進む。
ステップD480aに進むと、ステップD472でロードしたSB_MODEのデータはack返答が必要なコマンドか判定し、ack返答が必要なコマンドでない場合(ステップD480a;N)には、ステップD481に進み、ack返答が必要なコマンドである場合(ステップD480a;Y)には、ステップD488に進む。
ステップD488に進むと、受信した送信元IDを送信先IDコマンドとして準備して(ステップD488)、ack応答のSB_MODE及びSB_ACTのデータを準備する(ステップD489)。なお、SB_MODEとSB_ACTは、サブ間コマンドを構成するデータである。
次いで、サブ間送信データ編集処理(ステップD490)を実行して、サブ間送信開始待ちタイマをクリアする(タイマの値を0にする)処理を行って(ステップD491)、ステップD481に進む。
なお、ステップD477が設けられていることにより、サブ間データの送信中である場合には、サブ間コマンド(演出系コマンド)により要求された動作を行わない構成となっている。これは、サブ間コマンドは主基板からのコマンドと違って必ず対応する必要はないし、送信中ということは、他台に要求をしているか、ackを返している最中ということなので、更に他の台からの要求に応える必要はないという思想からである。また、全ての要求に応えていたら演出に矛盾が出たりする可能性も考えられるが、この構成とすれば、このような矛盾が生じる可能性が無くなるという利点があるからである。但し、この思想は基本的な考え方であり、どんな状態でも行いたい演出があった場合には、送信中でも要求された動作を行う態様も有り得る。
次に、前述のサブ間受信タスク処理におけるサブ間送信データ編集処理(ステップD490)、前述の単発系コマンド処理のサブ間送信データ編集処理(ステップD187)の詳細について図100により説明する。
サブ間送信データ編集処理が開始されると、まず、パケット開始コード(STX)のデータ(例えば02H)を、サブ間送信バッファ0に設定する(ステップD501)。ここで、サブ間送信バッファ0は、サブ間通信のための送信バッファ領域(サブ間送信バッファ領域)の一部であり、このサブ間送信バッファ領域のアドレス0の位置の記憶領域がサブ間送信バッファ0である(以下、他のアドレス1,2,3,・・・11についても同様)。
次いで、サブ間メーカコード(MAKER)のデータを、サブ間送信バッファ4に設定して(ステップD505)、西暦コード(YEAR)のデータを、サブ間送信バッファ5に設定する(ステップD506)。
次いで、サブ間コマンドACT(SB_ACT)のデータ(例えば、前述のステップD489等で準備されたもの)を、サブ間送信バッファ8に設定して(ステップD509)、自分のゲーム状態(STS)、すなわち、当該パチンコ遊技機のゲーム状態のデータ(例えば、今大当りの5ラウンド目である、などを示すデータ)を、サブ間送信バッファ9に設定する(ステップD510)。
次いで、ステップD511で算出したチェックサムの演算結果(SUM)のデータを、サブ間送信バッファ10に設定して(ステップD512)、パケット終了コード(ETX)のデータ(例えば03H)を、サブ間送信バッファ11に設定する(ステップD513)。
次いで、サブ間送信ポインタ(サブ間送信バッファ領域のアドレスを指定するパラメータ)のデータとしてサブ間送信バッファ0のアドレスを設定して(ステップD514)、サブ間送信データ編集処理を終了する。このサブ間送信ポインタは、図示省略したサブ間送信割込み処理(サブ間送信のために、サブ間送信バッファ領域のデータを順次CPUのシリアル送信バッファに書き込むなどの処理を行うルーチン)で使用される。
次に、前述のメイン処理におけるサブ間ack応答タスク処理(ステップD26)の詳細について図101により説明する。
サブ間ack応答タスク処理が開始されると、まずステップD521で、ack待ちタイマの値が0か判定し、0である場合(ステップD521;Y)には、サブ間ack応答タスク処理を終了し、0でない場合(ステップD521;N)には、ack待ちタイマを更新(値を規定値だけ減らす)して(ステップD522)、ステップD523に進む。なお、ack待ちタイマは、前述したステップD188で初期値がセットされる。
ステップD524に進むと、ack受信フラグをクリアして(ステップD524)、ack待ちタイマをクリアする(ステップD525)。
次いで、ack応答を受信したので、このack応答を待っていた演出に対応するための各種パラメータを設定して(ステップD526)、サブ間ack応答タスク処理を終了する。
次に、前述のメイン処理におけるサブ間演出設定処理(ステップD27)の詳細について図102により説明する。
サブ間演出設定処理が開始されると、まずステップD531で、サブ間演出要求ありか否か(すなわち、サブ間演出要求フラグがセットされているか否か)を判定し、サブ間演出要求ありの場合(ステップD531;Y)には、ステップD532に進み、サブ間演出要求なし(サブ間演出要求フラグがクリアされた状態)の場合(ステップD531;N)には、サブ間演出設定処理を終了する。サブ間演出要求フラグは、前述のステップD478でセットされる。
ステップD533に進むと、受信したサブ間コマンドのSB_MODE及びSB_ACT(以下、サブ間コマンドとはSB_MODE及びSB_ACTを含むものである)のデータをロードして(ステップD533)、ステップD534に進む。
ステップD534に進むと、このロードしたデータがサブ間連動予告系コマンドであるか判定し、サブ間連動予告系コマンドであれば(ステップD534;Y)、ステップD539に進み、サブ間連動予告系コマンドでなければ(ステップD534;N)、ステップD535に進む。なお、サブ間連動予告系コマンドは、サブ間通信を行っている複数のパチンコ遊技機で予告演出を連動させる連携演出のためのコマンドである。連携演出には、例えば同じキャラクタの画像が島内を横方向に移動するように各遊技機で順次表示されるような演出もあれば、同じ演出を同期して一斉に行う同期演出もある。
ステップD540に進むと、客待ちデモ演出中か否か(すなわち、客待ちデモ演出を行っている最中か否か)を判定し、客待ちデモ演出中でなければ(ステップD540;N)、客待ちタイミング調整を行うべきでないのでステップD537に進み、客待ちデモ演出中であれば(ステップD540;Y)、客待ちタイミング調整を行うべくステップD541に進む。
ステップD541に進むと、サブ間コマンドを受信した当該パチンコ遊技機(すなわち、自機)の客待ちデモ用のシナリオテーブルを再設定するようにして、客待ちデモ演出を最初から行うように設定して(ステップD541)、P機状態を客待ちAとして(ステップD542)、ステップD537に進む。
なお、本例では、このように、予告演出を連動させるものと、客待ちデモ演出のタイミングを合わせる演出の処理を、サブ間演出のための処理の具体例として挙げた。しかし、サブ間演出の内容は、このような態様に限定されず、本例の態様に代えて、或いは本例の態様に加えて、他の内容のサブ間演出を行う構成としてもよい。
また、本例では、煩雑を避けるために、それら他の種類のサブ間演出の設定処理についてはステップD536でまとめて図示しており、その詳細については図示及び説明を省略する。
次に、前述のメイン処理におけるシナリオ設定処理(ステップD28)の詳細について図103により説明する。
シナリオ設定処理が開始されると、まず、シナリオ管理領域0(シナリオレイヤー番号0)に対応するシナリオ管理領域のアドレス領域を準備して(ステップD551)、ステップD551の準備に基づいてシナリオ解析処理(ステップD552)を実行する。ここで、「アドレス領域を準備し」とは、後の処理で当該アドレス領域に設定されているデータを読み取るために、当該アドレス領域自体のアドレスを準備することを意味する。
次いで、シナリオ管理領域2(シナリオレイヤー番号2)に対応するシナリオ管理領域のアドレス領域を準備して(ステップD555)、この準備に基づいてシナリオ解析処理(ステップD556)を実行する。
次いで、シナリオ管理領域3(シナリオレイヤー番号3)に対応するシナリオ管理領域のアドレス領域を準備して(ステップD557)、この準備に基づいてシナリオ解析処理(ステップD558)を実行する。
次いで、シナリオ管理領域4(シナリオレイヤー番号4)に対応するシナリオ管理領域のアドレス領域を準備して(ステップD559)、この準備に基づいてシナリオ解析処理(ステップD560)を実行する。
次いで、シナリオ管理領域5(シナリオレイヤー番号5)に対応するシナリオ管理領域のアドレス領域を準備して(ステップD561)、この準備に基づいてシナリオ解析処理(ステップD562)を実行する。
次いで、シナリオ管理領域6(シナリオレイヤー番号6)に対応するシナリオ管理領域のアドレス領域を準備して(ステップD563)、この準備に基づいてシナリオ解析処理(ステップD564)を実行する。
次いで、シナリオ管理領域7(シナリオレイヤー番号7)に対応するシナリオ管理領域のアドレス領域を準備して(ステップD565)、この準備に基づいてシナリオ解析処理(ステップD566)を実行する。
次いで、シナリオ管理領域8(シナリオレイヤー番号8)に対応するシナリオ管理領域のアドレス領域を準備して(ステップD567)、この準備に基づいてシナリオ解析処理(ステップD568)を実行して、シナリオ設定処理を終了する。
次に、上述のシナリオ設定処理におけるシナリオ解析処理(ステップD552等)の詳細について図104及び図105により説明する。
シナリオ解析処理が開始されると、まず、brkの値(後述する処理の繰り返しに利用されるデータ)を0に設定して(ステップD571)、準備されているシナリオ管理領域Xのアドレス領域に設定されているデータ(シナリオ管理領域Xのアドレス、或いはNULL)をロードして(ステップD572)、ステップD573に進む。ここで、「準備されているシナリオ管理領域Xのアドレス領域」とは、例えば、本処理が前述のステップD552で実行されている場合には、その直前のステップD551で準備されたアドレス領域(シナリオ管理領域0のアドレス領域)であり、本処理が前述のステップD554で実行されている場合には、その直前のステップD553で準備されたアドレス領域(シナリオ管理領域1のアドレス領域)であり、他のケースも同様に直前のステップで準備されたものである。
ステップD574に進むと、ステップD572でロードしたアドレスのシナリオ管理領域におけるシナリオ用タイマの値を読み取り、このシナリオ用タイマの値が0より小さいか判定し、0より小さい場合(ステップD574;Y)には、異常なのでシナリオ解析処理を終了し、0以上である場合(ステップD574;N)には、ステップD575に進む。なお、前記シナリオ用タイマの値は、シナリオ制御データが設定される度に前述のステップD244でまず0に設定されるが、0が下限であるので、0より小さい場合は異常と判定する。
ステップD575に進むと、前記シナリオ用タイマの値が0でなければ、このシナリオ用タイマの値を−1更新して(ステップD575)、ステップD576に進む。
ステップD576に進むと、前記シナリオ用タイマの値が0より大きいか判定し、0より大きい場合(ステップD576;Y)には、未だタイムアップしていないのでシナリオ解析処理を終了し、0以下である場合(ステップD576;N)には、ステップD577に進む。
ステップD578に進むと、PB操作フラグがセットされているか判定し、PB操作フラグがセットされている場合(ステップD578;Y)には、ステップD579に進み、PB操作フラグがセットされていない場合(ステップD578;N)には、対象のPB用タイマの値を−1更新して(ステップD582)、ステップD583に進む。ここで、PB操作フラグは、前述のメイン処理におけるステップD21で実行される演出ボタン入力処理において、PB(プッシュボタン)の操作が検出されるとセットされるフラグである。
次いで、対象のシナリオ管理領域のPB検知フラグ領域にフラグをセットする(すなわち、PB検知フラグが立てられていることを示すデータを設定する)処理を行って(ステップD581)、ステップD583に進む。これらステップD579〜D581では、PBが操作されたので、PB用タイマの残り時間をPB演出加算時間として記憶し(後述するステップD696のため)、PB用タイマを0にリセットし、PBが操作されたことを示すPB検知フラグをシナリオ制御のためにシナリオ管理領域にセットしている。
ステップD583に進むと、対象のPB用タイマの値が0より大きいか判定し、0より大きい場合(ステップD583;Y)には、PB操作が検出されずタイムアップもしていないのでシナリオ解析処理を終了し、0以下である場合(ステップD573;N)には、PB操作がされたかタイムアップしたのでステップD584に進む。
但し、前記PB用タイマ領域に設定されたPB用タイマの値が当初から0の場合には、ステップD577からステップD583に進み、さらにステップD583からステップD584に進んで即座に制御が進行する(この場合のPB有効時間は0(無し)となる)。なお、PB有効時間は予告演出等の場合において設けられるため、それ以外の場合にはPB用タイマ領域の値は0に設定されていてPB有効時間は設けられない。
ステップD584に進むと、brkの値として0でない値が設定されるまで、ループ端である当該ステップD584からステップD623までの間の処理を繰り返し実行する。つまり、後方のループ端であるステップD623では、その時点のbrkの値を読み取って、brkの値が0であればステップD584に戻って次のステップD585から処理を繰り返す。
次いで、ステップD585でロードしたアドレスによって指定されるシナリオテーブルの特定の行(指定行)のオペコードを取得する(ステップD586)。なお、既述したように、シナリオテーブルは、例えば図135に示すように、オペコードとオペランドのデータ(シナリオデータ)が各行に設定されたものである。例えば図135の場合、例えば指定行が1行目であると、この1行目のオペコードのデータである「モーション1削除コード(M1DEL)」(具体的データとしては、例えば「51h」)がステップD586で取得される。或いは、図135の場合、例えば指定行が11行目であると、11行目のオペコードのデータである「モーション10登録コード(M10SET)」(具体的データとしては、例えば「4Ah」)がステップD586で取得される。
次いで、ステップD585でロードしたアドレスによって指定されるシナリオテーブルの特定の行(指定行)のオペランドを取得し、準備して(ステップD588)、ステップD589に進む。例えば図135の場合、指定行が11行目(オペコードは「モーション10登録コード」)であると、この11行目のオペランドのデータである「−1」をステップD588で取得して準備する。
ステップD590に進むと、準備したオペコード上位データを判定し、モーション削除を指令するデータ(モーション削除コード)である場合(ステップD590;Y)には、モーション削除処理(ステップD602)を実行した後にステップD621に進み、モーション削除を指令するデータでない場合(ステップD590;N)には、ステップD591に進む。
ステップD592に進むと、準備したオペコード上位データを判定し、定数ウェイトを指令するデータ(定数ウェイトコード)である場合(ステップD592;Y)には、定数ウェイト処理(ステップD604)を実行した後にステップD621に進み、定数ウェイトを指令するデータでない場合(ステップD592;N)には、ステップD593に進む。
ステップD594に進むと、準備したオペコード上位データを判定し、PB待ちを指令するデータ(PB待ちコード)である場合(ステップD594;Y)には、PB待ち処理(ステップD606)を実行した後にステップD621に進み、PB待ちを指令するデータでない場合(ステップD594;N)には、ステップD595に進む。
ステップD596に進むと、準備したオペコード上位データを判定し、図柄停止を指令するデータ(停止図柄setコード)である場合(ステップD596;Y)には、図柄停止処理(ステップD608)を実行した後にステップD621に進み、図柄停止を指令するデータでない場合(ステップD596;N)には、ステップD597に進む。
ステップD598に進むと、準備したオペコード上位データを判定し、変動シナリオ切替を指令するデータ(変動シナリオ切替コード)である場合(ステップD598;Y)には、変動シナリオ切替処理(ステップD610)を実行した後にステップD621に進み、変動シナリオ切替を指令するデータでない場合(ステップD598;N)には、ステップD599に進む。
ステップD600に進むと、準備したオペコード上位データを判定し、終了を指令するデータ(終了コード)である場合(ステップD600;Y)には、終了処理(ステップD612)を実行した後にステップD621に進み、終了を指令するデータでない場合(ステップD600;N)には、図示省略した他のステップに進む。なお、図示省略した他のステップ(図105において波線で示した箇所にあるステップ)は、上述したステップD589〜D612と同様に、準備したオペコード上位データの内容を判定し、その判定結果が他の種類のデータ(コード)である場合に対応する処理を実行してステップD621に進むというもので、準備したオペコード上位データが何れの種類のデータ(コード)にも該当しない場合にはシナリオ解析処理を終了する構成となっている。
ステップD623に進むと、前述したようにその時点のbrkの値を読み取って、brkの値が0であればステップD584に戻って次のステップD585から処理を繰り返し、brkの値が0でない場合にはシナリオ解析処理を終了してリターンする。
なお、上記のサブルーチン群(ステップD601〜D612)は一例であり、機種の仕様次第で変わる。
次に、上述のシナリオ解析処理におけるモーション登録処理(ステップD601)の詳細について図106(a)により説明する。
モーション登録処理が開始されると、まず、対象のシナリオ管理領域のシナリオ用データテーブル領域内のテーブルアドレスを次レコード(テーブルの次の行を指定するアドレス)に更新する(ステップD631)。これは、前述のステップD585が次回実行されるときの指定行を次の行に進めておくための更新処理であり、この更新処理が行われることによって対象のシナリオテーブルの指定行が次の行に切り替えられて前述のループ処理(ステップD584〜D623)が繰り返されることになる。
このうち、モーション管理領域は、図106(b)に示すように、表示制御する(表示画面41a上に表示しているとは限らない)オブジェクトの数(最大数)である表示数(例えば左図柄の場合、次図柄、現図柄、前図柄の3個)を記憶する領域(表示数の領域)と、何フレームまで処理が進んだかを示すフレーム番号を記憶する領域(フレーム番号の領域)と、モーションテーブルの何行目まで処理が進んだかを示すコマンド位置を記憶する領域(コマンド位置の領域)と、複数あるモーション用リストテーブルの中でどのテーブルを使用するかを示すアドレスのデータ(モーションインデックスに対応)を記憶する領域(モーション用リストテーブル領域)と、表示数分の表示情報領域とを含む構造である。
エフェクトタイプは、画像に加えるエフェクト(透過性を持たせるなどの加工処理)の種類を示す情報である。
エフェクトパラメータは、前記エフェクトのパラメータ(透過性を持たせる場合の透過度など)である。
X座標及びY座標は、画像の表示位置を特定するデータであり、本例ではポリゴン表示機能(立体を多面体として表示する機能)のために、表示左上点、表示右上点、表示左下点の3点の座標がある。
画像インデックスは、静止画又はムービーを特定する番号である。
IPictureのみの動画時のフレームカウントとは、何フレーム目のデータがIPicture(すなわちIフレーム)かを示すデータである。
ビヘイビアインデックスは、ビヘイビア(図柄差替え)のためのインデックスである。なお、ビヘイビア(図柄差替え)とは、同じ大きさ同じ表示位置でキャラクタ(静止画或いは動画)のみを差し替えるもので、前述のステップD385〜D390で説明したカットインキャラ差替えなどとは異なる。前述のカットインキャラ差替えは、キャラクタを表示する大きさや表示位置も差替えにより変化し得る。
ステップD635に進むと、ステップD587で分離されたオペコードの下位ビットのデータに対応するモーション管理領域の先頭アドレスを設定し、準備して(ステップD635)、前記オペコードの下位ビットのデータに対応するモーション管理領域のアドレス領域にステップD635で準備した先頭アドレスを設定して(ステップD636)、ステップD637に進む。
ステップD638に進むと、前記オペランドのデータ(ステップD588で準備したオペランドのデータ、以下同様)を、モーションインデックスとして準備して(ステップD638)、オペコード下位に対応する使用中モーションインデックスを記憶する領域(以下「使用中モーションインデックス領域」という)に、ステップD638で準備したデータを設定する(ステップD639)。なお、使用中モーションインデックス領域は、モーション用リストテーブルにおける制御対象の行を指定するモーションインデックス(使用中モーションインデックス)のデータを、モーション番号毎に記憶する領域であり、モーション番号毎に設けられている。このステップD639では、ステップD587で分離されたオペコードの下位ビットで特定されるモーション番号に対応する使用中モーションインデックス領域に、ステップD638で準備したデータを設定する(すなわち保存する)。
次いで、表示数等のデータを初期化するモーションデータ初期化処理2(ステップD640)を実行して、モーション登録処理を終了する。
次いで、オペコード下位に対応する使用中モーションインデックス領域に、ステップD641で準備したデータを設定して(ステップD642)、表示数等のデータを初期化するモーションデータ初期化処理2(ステップD643)を実行して、モーション登録処理を終了する。
次に、前述のモーション登録処理におけるモーションデータ初期化処理1(ステップD634)、後述するモーション削除処理やモーション継続処理におけるモーションデータ初期化処理1(ステップD674やステップD686)の詳細について図107(a)により説明する。なお、演出制御装置300の制御処理の説明においてモーション制御データとは、モーション管理領域に保存される表示数、フレーム番号等のデータである。
モーションデータ初期化処理1が開始されると、まず、変数iを初期値0から増分1だけ増加させつつ終値(終値=表示数−1)になるまで、ステップD651〜ステップD655を繰り返し実行し、その後ステップD656に進む。すなわち、ステップD651ではモーションデータ初期化処理1開始直後は変数iを0としてステップD652に進む。ステップD655では、変数iが終値未満である場合にはステップD651に戻り、変数iが終値である場合にはステップD656に進む。そしてステップD651に戻ると、変数iの値を1だけ増加させてステップD652に進む。なお、終値の値は、ステップD587で分離されたオペコードの下位ビットに対応するモーション管理領域(以下「対象のモーション管理領域」という)に設定されている表示数のデータから1を減算した値である。すなわち、このモーションデータ初期化処理1では、この表示数分だけステップD651〜D655のループ処理を繰り返し実行し、その後ステップD656に進む。
ステップD653に進むと、直前のステップD652でアドレスが設定された表示情報領域における表示種別のデータを読み取り、この表示種別が動画か否か判定し、表示種別が動画であれば(ステップD653;Y)、その展開領域(圧縮された動画データの展開に使用していた領域)の解放設定を行って(ステップD654)、ステップD655に進み、動画でなければ(ステップD653;N)、ステップD654を実行しないでステップD655に進む。ステップD655に進むと、前述したように、変数iが終値未満である場合にはステップD651に戻り、変数iが終値である場合にはステップD656に進む。
次に、前述のモーション登録処理におけるモーションデータ初期化処理2(ステップD640、D643)、後述するモーション継続処理におけるモーション初期化処理(モーションデータ初期化処理2(ステップD689))の詳細について図107(b)により説明する。
モーションデータ初期化処理2が開始されると、まず、ステップD661〜D663で対象のモーション管理領域のパラメータを初期化する処理を行い、その後ステップD664に進む。すなわち、ステップD661では表示数を0に設定し、ステップD662ではフレーム番号を−1に設定し、ステップD663ではコマンド位置を0に設定する。
ステップD664に進むと、対象のモーション管理領域におけるモーション用リストテーブル領域に、使用中モーションインデックス(前記ステップD642で設定したデータ)に対応するアドレス(モーション用リストテーブルとその行を指定するアドレス)を設定して(ステップD664)、その後モーションデータ初期化処理2を終了する。
次に、前述のシナリオ解析処理におけるモーション削除処理(ステップD602)の詳細について図108(a)により説明する。
モーション削除処理が開始されると、まず、前記ステップD631と同様に、対象のシナリオ管理領域のシナリオ用データテーブル領域内のテーブルアドレスを次レコード(テーブルの次の行を指定するアドレス)に更新して(ステップD671)、前記ステップD632と同様に、対象のモーション管理領域のアドレス領域からモーション管理領域のアドレスをロードし、準備して(ステップD672)、ステップD673に進む。
ステップD675に進むと、対象のモーション管理領域のアドレス領域にNULLを設定して(ステップD675)、前記オペコード(ステップD587で分離されたオペコード、以下同様)の下位ビットのデータに対応する使用中モーションインデックスのデータをクリアして(ステップD676)、その後モーション削除処理を終了する。
以上説明したモーション削除処理は、キャラクタ等の制御を終了する時に実行されて、これにより、モーション情報(モーション管理領域のアドレス領域のデータや、使用中モーションインデックス領域のデータ)が削除される。
次に、前述のシナリオ解析処理におけるモーション継続処理(ステップD603)の詳細について図108(b)により説明する。
モーション継続処理が開始されると、まず、前記ステップD631と同様に、対象のシナリオ管理領域のシナリオ用データテーブル領域内のテーブルアドレスを次レコード(テーブルの次の行を指定するアドレス)に更新して(ステップD681)、前記オペコードの下位ビットに対応する使用中モーションインデックスのデータをロードして(ステップD682)、ステップD683に進む。
そして、ステップD684以降では、前述したモーション登録処理(シナリオテーブルの値を使用するルート)と同様の処理を行っている。
すなわち、ステップD684に進むと、前記ステップD632と同様に、対象のモーション管理領域のアドレス領域からモーション管理領域のアドレスをロードし、準備して(ステップD684)、ステップD685に進む。
ステップD687に進むと、対象のモーション管理領域の先頭アドレスを設定し、準備して(ステップD687)、対象のモーション管理領域のアドレス領域にステップD687で準備した先頭アドレスを設定する(ステップD688)。
次いで、モーション初期化処理、すなわち前述のモーションデータ初期化処理2(ステップD689)を実行して、前記オペコードの下位ビットに対応する使用中モーションインデックス領域に、前記オペランドのデータを設定して(ステップD690)、その後モーション継続処理を終了する。
以上説明したモーション継続処理では、シナリオテーブルで指定されたモーション情報が現在制御している内容と同じならそのまま継続、違うなら新たに登録する処理が実行される。これにより、例えば、通常変動中の背景はリーチ等で背景変化しなければ複数の変動にまたがってムービーが継続されるが、リーチが発生したりすると頭からの新規再生となる。
次に、前述のシナリオ解析処理における定数ウェイト処理(ステップD604)の詳細について図109(a)により説明する。
定数ウェイト処理が開始されると、まず、前記ステップD631と同様の更新処理を実行して(ステップD691)、対象のシナリオ管理領域のシナリオ用タイマ領域に、前記オペランドのデータを設定する(ステップD692)。
次いで、brkの値を1に設定して(ステップD693)、定数ウェイト処理を終了する。
定数ウェイト処理によれば、指定された固定時間だけ待つ場合の時間値等が設定される。例えば、図135に示すシナリオテーブルおける18行目(//wait)の場合、オペコードが定数ウェイトコードであるため本処理が実行され、オペランドのウェイト時間が「3600」であるため、上記ステップD692でシナリオ用タイマ領域の値として3600(120秒=3600×1/30秒)が設定される。そして、上記ステップD693でbrkの値が1になるので、前述したシナリオ解析処理におけるループ処理(ステップD584〜D623)の繰り返しが終了する。
次に、前述のシナリオ解析処理における可変ウェイト処理(ステップD605)の詳細について図109(b)により説明する。
可変ウェイト処理が開始されると、まず、前記ステップD631と同様の更新処理を実行して(ステップD695)、前記オペランドのデータにPB演出加算時間(ステップD579で設定された値)を加えた値を、対象のシナリオ管理領域のシナリオ用タイマ領域に設定する(ステップD696)。
次いで、brkの値を1に設定して(ステップD697)、可変ウェイト処理を終了する。
次に、前述のシナリオ解析処理におけるPB待ち処理(ステップD606)の詳細について図110(a)により説明する。
PB待ち処理が開始されると、まず、前記ステップD631と同様の更新処理を実行して(ステップD701)、前記オペランドのデータを、対象のシナリオ管理領域のPB用タイマ領域に設定する(ステップD702)。
次いで、対象のシナリオ管理領域におけるPB検知フラグ領域のフラグをクリアして(ステップD703)、brkの値を1に設定して(ステップD704)、PB待ち処理を終了する。
次に、前述のシナリオ解析処理におけるPB判定分岐処理(ステップD607)の詳細について図110(b)により説明する。
PB判定分岐処理が開始されると、まずステップD711で、対象のシナリオ管理領域におけるPB検知フラグ領域のフラグがセットされているか(すなわち、PB検知フラグが立てられているか)判定し、セットされている場合(ステップD711;Y)には、ステップD713に進み、セットされていない場合(ステップD711;N)、すなわちPB検知フラグがオフの場合には、ステップD712に進む。
ステップD712に進むと、前記ステップD631と同様の更新処理を実行して(ステップD712)、PB判定分岐処理を終了する。
ステップD713に進むと、前記ステップD631と同様の更新処理を実行して(ステップD713)、ステップD714に進む。
ステップD714に進むと、ステップD588で準備したオペランドのデータ分だけステップD713のアドレス更新処理を実行完了したか判定し、完了していれば(ステップD714;Y)、PB判定分岐処理を終了し、完了していなければ(ステップD714;N)、ステップD713に戻って処理を繰り返す。
次に、前述のシナリオ解析処理における図柄停止処理(ステップD608)の詳細について図111により説明する。
図柄停止処理が開始されると、まず、前記ステップD631と同様の更新処理を実行して(ステップD721)、ステップD722に進む。
ステップD722に進むと、前記オペコードの下位ビットのデータが左図柄を指定するものか判定し、左図柄であれば(ステップD722;Y)、ステップD727に進み、左図柄でなければ(ステップD722;N)、ステップD723に進む。
ステップD727に進むと、特図停止図柄領域(左)の値(前述のステップD354で設定された値)を現図柄(左)として設定して(ステップD727)、図柄停止処理を終了する。
ステップD723に進むと、前記オペコードの下位ビットのデータが右図柄を指定するものか判定し、右図柄であれば(ステップD723;Y)、ステップD728に進み、右図柄でなければ(ステップD723;N)、ステップD724に進む。
ステップD728に進むと、特図停止図柄領域(右)の値(前述のステップD354で設定された値)を現図柄(右)として設定して(ステップD728)、図柄停止処理を終了する。
ステップD729に進むと、特図停止図柄領域(中)の値(前述のステップD354で設定された値)を現図柄(中)として設定して(ステップD729)、図柄停止処理を終了する。
ステップD725に進むと、前記オペコードの下位ビットのデータが特図1第4図柄(特図1の第4図柄)を指定するものか判定し、特図1第4図柄であれば(ステップD725;Y)、ステップD730に進み、特図1第4図柄でなければ(ステップD725;N)、ステップD726に進む。
ステップD730に進むと、特図停止図柄領域(特図1第4図柄)の値を現図柄(特図1第4図柄)として設定して(ステップD730)、図柄停止処理を終了する。
ステップD731に進むと、特図停止図柄領域(特図2第4図柄)の値を現図柄(特図2第4図柄)として設定して(ステップD731)、図柄停止処理を終了する。
図柄停止処理は、飾り特図等の図柄の変動表示を停止する時に、その停止図柄を設定する処理である。例えば、図135に示すシナリオテーブルにおける12行目(//停止図柄set)が指定行である場合、オペコードが停止図柄setコード(左図柄)であるため、本処理が実行されて上記ステップD722の判定結果がYesとなり、上記ステップD727が実行されて特図の左図柄の停止図柄が設定される。
次に、前述のシナリオ解析処理における図柄逆算差替処理(ステップD609)の詳細について図112により説明する。
図柄逆算差替処理が開始されると、まず、前記ステップD631と同様の更新処理を実行して(ステップD741)、ステップD742に進む。
ステップD742に進むと、前記オペコードの下位ビットのデータが左図柄を指定するものか判定し、左図柄であれば(ステップD742;Y)、ステップD743に進み、左図柄でなければ(ステップD742;N)、ステップD748に進む。
ステップD745に進むと、ステップD744で設定した図柄番号が0未満(マイナスの値)か判定し、0未満である場合(ステップD745;Y)には、ステップD746に進み、0未満でない場合(ステップD745;N)には、ステップD747に進む。
ステップD746に進むと、図柄番号に9を加算した値を新たな図柄番号として設定して(ステップD746)、ステップD747に進む。
ステップD747に進むと、図柄番号の値(ステップD744で設定され、マイナスの場合にはステップD746で調整された値)を現図柄(左)として設定して(ステップD747)、図柄逆算差替処理を終了する。
ステップD749に進むと、前記オペランドのデータを9で割った余り(オペランドmod9)をコマ差異として設定して(ステップD749)、特図停止図柄領域(右)の値からコマ差異(ステップD749で設定した値)を減算した結果を図柄番号として設定して(ステップD750)、ステップD751に進む。
ステップD751に進むと、ステップD750で設定した図柄番号が0未満か判定し、0未満である場合(ステップD751;Y)には、ステップD752に進み、0未満でない場合(ステップD751;N)には、ステップD753に進む。
ステップD752に進むと、図柄番号に9を加算した値を新たな図柄番号として設定して(ステップD752)、ステップD753に進む。
ステップD753に進むと、図柄番号の値(ステップD750で設定され、マイナスの場合にはステップD752で調整された値)を現図柄(右)として設定して(ステップD753)、図柄逆算差替処理を終了する。
ステップD755に進むと、前記オペランドのデータを9で割った余り(オペランドmod9)をコマ差異として設定して(ステップD755)、特図停止図柄領域(中)の値からコマ差異(ステップD755で設定した値)を減算した結果を図柄番号として設定して(ステップD756)、ステップD757に進む。
ステップD757に進むと、ステップD756で設定した図柄番号が0未満か判定し、0未満である場合(ステップD757;Y)には、ステップD758に進み、0未満でない場合(ステップD757;N)には、ステップD759に進む。
ステップD758に進むと、図柄番号に9を加算した値を新たな図柄番号として設定して(ステップD758)、ステップD759に進む。
ステップD759に進むと、図柄番号の値(ステップD756で設定され、マイナスの場合にはステップD758で修正された値)を現図柄(中)として設定して(ステップD759)、図柄逆算差替処理を終了する。
例えば、シナリオテーブルのm行目のオペコードが左図柄逆算差替コードである場合に、本処理が実行されて上記ステップD742の判定結果がYesとなり、上記ステップD743〜D747が実行されて現図柄(左)が設定される。この場合、オペランドは図柄送り数を意味するデータであり、当該m行目のオペランド(すなわち送りコマ数)が「2」である場合で、上記ステップD743では、2÷9という割算の余りである2がコマ差異として設定され、このコマ差異の値を使用して上記ステップD744で図柄番号が設定される。例えば、特図停止図柄領域(左)の値が1ならば、−1(=1−2)が図柄番号として設定され、特図停止図柄領域(左)の値が7ならば、5(=7−2)が図柄番号として設定される。そして、このステップD744で設定された図柄番号がマイナスの値(例えば−1)であると、ステップD746が実行されて図柄番号が一巡した値に変更され(例えば、−1ならば8=−1+9に変更され)、その後ステップD747で図柄番号が現図柄(左)として登録される。
次に、前述のシナリオ解析処理における変動シナリオ切替処理(ステップ610)の詳細について図113により説明する。
変動シナリオ切替処理が開始されると、まずステップD761で、前記オペランドのデータが左図柄シナリオ2nd(左図柄の変動表示の2nd(前半)への切替を指令するもの)であるか判定し、左図柄シナリオ2ndである場合(ステップD761;Y)には、ステップD762に進み、左図柄シナリオ2ndでない場合(ステップD761;N)には、ステップD767に進む。
次いで、直前のステップD762、D763で準備されたデータに基づいて、前述したシナリオデータ設定処理(ステップD764)を実行して、準備したシナリオ管理領域のアドレス領域(例えば前記ステップD553等で準備されたシナリオ管理領域のアドレス領域)にシナリオ管理領域1のアドレスを設定して(ステップD765)、変動シナリオ切替処理を終了する。これにより、対象のシナリオ管理領域として新たにシナリオ管理領域1が設定されることになる。
ステップD768に進むと、右図柄なのでシナリオレイヤー番号2を準備して(ステップD767)、図柄変動シナリオテーブル領域から右図柄シナリオ2ndテーブル(右図柄用で2nd用のシナリオテーブル)のアドレスをロードし、準備する(ステップD769)。
次いで、直前のステップD768、D769で準備されたデータに基づいて、前述したシナリオデータ設定処理(ステップD770)を実行して、準備したシナリオ管理領域のアドレス領域にシナリオ管理領域2のアドレスを設定して(ステップD771)、変動シナリオ切替処理を終了する。これにより、対象のシナリオ管理領域として新たにシナリオ管理領域2が設定されることになる。
ステップD773に進むと、中図柄なのでシナリオレイヤー番号3を準備して(ステップD773)、図柄変動シナリオテーブル領域から中図柄シナリオ2ndテーブル(中図柄用で2nd用のシナリオテーブル)のアドレスをロードし、準備する(ステップD774)。
次いで、直前のステップD773、D774で準備されたデータに基づいて、前述したシナリオデータ設定処理(ステップD775)を実行して、準備したシナリオ管理領域のアドレス領域にシナリオ管理領域3のアドレスを設定して(ステップD776)、変動シナリオ切替処理を終了する。これにより、対象のシナリオ管理領域として新たにシナリオ管理領域3が設定されることになる。
ステップD778に進むと、左図柄なのでシナリオレイヤー番号1を準備して(ステップD778)、図柄変動シナリオテーブル領域から左図柄シナリオ3rdテーブル(左図柄用で3rd(後半)用のシナリオテーブル)のアドレスをロードし、準備する(ステップD779)。
次いで、直前のステップD778、D779で準備されたデータに基づいて、前述したシナリオデータ設定処理(ステップD780)を実行して、準備したシナリオ管理領域のアドレス領域にシナリオ管理領域1のアドレスを設定して(ステップD781)、変動シナリオ切替処理を終了する。これにより、対象のシナリオ管理領域として新たにシナリオ管理領域1が設定されることになる。
ステップD783に進むと、右図柄なのでシナリオレイヤー番号2を準備して(ステップD783)、図柄変動シナリオテーブル領域から右図柄シナリオ3rdテーブル(右図柄用で3rd用のシナリオテーブル)のアドレスをロードし、準備する(ステップD784)。
次いで、直前のステップD783、D784で準備されたデータに基づいて、前述したシナリオデータ設定処理(ステップD785)を実行して、準備したシナリオ管理領域のアドレス領域にシナリオ管理領域2のアドレスを設定して(ステップD786)、変動シナリオ切替処理を終了する。これにより、対象のシナリオ管理領域として新たにシナリオ管理領域2が設定されることになる。
ステップD788に進むと、中図柄なのでシナリオレイヤー番号3を準備して(ステップD788)、図柄変動シナリオテーブル領域から中図柄シナリオ3rdテーブル(中図柄用で3rd用のシナリオテーブル)のアドレスをロードし、準備する(ステップD789)。
次いで、直前のステップD788、D789で準備されたデータに基づいて、前述したシナリオデータ設定処理(ステップD790)を実行して、準備したシナリオ管理領域のアドレス領域にシナリオ管理領域3のアドレスを設定して(ステップD791)、変動シナリオ切替処理を終了する。これにより、対象のシナリオ管理領域として新たにシナリオ管理領域3が設定されることになる。
なお、変動の種類によっては、「序盤、前半、後半」の区切りの時間値は異なる。また、3rd(後半)のない変動もある(リーチなし変動など)。
次に、前述のシナリオ解析処理における繰り返し処理(ステップD611)の詳細について図114(a)により説明する。
繰り返し処理が開始されると、まず、対象のシナリオ管理領域のシナリオ用データテーブル領域内のテーブルアドレスを前レコード(シナリオテーブルの一つ前の行を指定するアドレス)に戻して(ステップD795)、ステップD796に進む。
ステップD796に進むと、ステップD588で取得されたオペランド分だけステップD795を実行して前記テーブルアドレスを前レコードに戻したか判定し、前記オペランド分戻している場合(ステップD796;Y)には、繰り返し処理を終了し、前記オペランド分戻していない場合(ステップD796;N)には、ステップD795に戻って処理を繰り返す。
次に、前述のシナリオ解析処理における終了処理(ステップD612)の詳細について図114(b)により説明する。
終了処理が開始されると、準備したシナリオ管理領域のアドレス領域にNULLを設定して(ステップD798)、終了処理を終了する。これにより、対象のシナリオ管理領域の設定が無くなり、シナリオ終了となる。
例えば、シナリオテーブルのm行目のオペコードが終了コードである場合に、本処理が実行されて上記ステップD798で対象のシナリオ管理領域のアドレス領域がNULLとされて、シナリオ終了となる。本処理は、一連のシナリオが全て完了したときに実行される。すなわち、シナリオを全て完了したので、シナリオ管理領域内のアドレスを消して終了とする。
次に、前述のメイン処理におけるモーション制御処理(ステップD30)の詳細について図115により説明する。
モーション制御処理が開始されると、対象のモーション管理領域の番号Xを0から増やしつつステップD801〜D818のループ処理を繰り返し実行し、このループ処理の終了条件(本例ではモーション管理領域が15個あるので、全てのモーション管理領域0〜14に対する制御が終了したという条件)が成立するとモーション制御処理を終了する。すなわち、モーション制御処理の開始時点では、まずステップD801で対象のモーション管理領域の番号を0(X=0)としてステップD802に進んでステップD802以降の処理を実行するが、ステップD817に進むと対象のモーション管理領域の番号を1だけ増やして(すなわち、X=X+1として)ステップD818で上記終了条件(X=15)が成立したか判定し、成立していればモーション制御処理を終了し、成立していなければステップD801に戻ってステップD802に進む構成となっている。
ステップD802に進むと、本処理で使用する初期化フラグをクリアして(ステップD802)、モーション管理領域Xのアドレス領域からモーション管理領域Xのアドレスをロードして(ステップD803)、その後ステップD804に進む。すなわち、1回に1領域をロードする。
ステップD804に進むと、ステップD803でロードしたアドレスのデータがNULLか判定し、NULLである場合(ステップD804;Y)には、当該モーションX(当該モーション管理領域Xに対応するモーションのレイヤー)については制御不要なのでステップD817に進み、NULLでない場合(ステップD804;N)には、ステップD805に進む。
ステップD806に進むと、ステップD805でロードしたデータにより指定されるモーション用リストテーブルの行(以下「指定行」という)における表示フレーム数のデータを読み取り、この表示フレーム数(あるモーションを実行するフレーム数のこと)が0以下である場合(ステップD806;Y)には、異常であるのステップD817に進み、0以下でない場合(ステップD806;N)には、正常であるとしてステップD807に進む。モーション毎に実行する期間は異なるので、モーション用リストテーブル上に各々対応する表示フレーム数が定義されていて、最低1フレームは表示フレーム数が定義されているはずであり、この表示フレーム数のモーション用リストテーブル上の定義値が0以下になっているようなら異常である。
ステップD810に進むと、前述したモーションデータ初期化処理1(ステップD810)を実行して、ステップD808と同様に初期化フラグをセットして(ステップD811)、ステップD812に進む。
ここで、フレーム番号(0から始まる)が最終フレーム数に到達したということは、対象のモーションテーブルの制御が最終フレームまで終了したことになる。そこで、ステップD809の判定結果がYes(フレーム番号が最終フレーム数に到達した)の場合には、モーション登録時と同様にモーションデータ初期化処理1と初期化フラグのセットを実行して、同一のモーションテーブルをまた最初から実行する構成となっている。
ステップD813に進むと、モーション管理領域Xにおけるフレーム番号、表示数、コマンド位置の値をそれぞれ0に設定して(ステップD813〜D815)、ステップD816に進む。
ステップD819に進むと、モーション管理領域Xにおけるフレーム番号の値を+1更新して(ステップD819)、ステップD816に進む。このステップD819に進むのは、前記初期化フラグがセットされていない場合(すなわち、対象のモーションテーブルを実行途中である場合)であるので、フレーム番号を順次増加させる必要があるためである。
ステップD818に進むと、前述の終了条件(本例の場合、番号X=15になったこと)が成立していればリターンし、成立していなければステップD801に戻ってステップD802から処理を繰り返す。
次に、前述のモーション制御処理におけるモーションコマンド実行処理(ステップD816)の詳細について図116及び図117により説明する。
モーションコマンド実行処理が開始されると、まず、モーション管理領域X(対象のモーション管理領域)におけるモーション用リストテーブル領域から、モーション用リストテーブル(「モーションリストテーブル」ともいう)のアドレスのデータ(すなわち、今回制御するモーション用リストテーブルとその行を指定するデータ)をロードして(ステップD821)、ステップD822に進む。
以上になっていれば対象のモーションテーブルの全ての行が実行済みであるため、モーションコマンド実行処理を終了する構成となっている。
なお、本例では、モーションテーブルのアドレスとモーションテーブル名が対応しているため、モーションテーブル名を取得すればモーションテーブルのアドレスを取得したことになる。
また、図136の例では3つのキャラクタを登場させているが、同時に使用する他カテゴリ(予告とか)の全てのキャラクタ数合計が128個となるように管理する。つまり、本例のVDP312では同時に128個のキャラクタを表示制御できる。なお、表示画面41a外にもキャラクタを配置できるので表示画面41a内に128個とは限らない。
また、図136の例は、左図柄の通常変動(前半)のモーションテーブルの最初の4フレーム分のデータである。終了コードまでの区切りが1フレーム分のデータとなっており、例えば1行目から10行目までの(a)が最初の1フレーム分のデータである。また、座標データやサイズデータ等の数値は、本例の意味となる値を記載しているだけで、小数点以下の情報を含んだデータでもよい。実際は、16bit符号付固定小数(符号ビット、整数部13ビット、小数部2ビットの2の補数)のデータとなっている。
また、前フレームと同じ状態を継続する場合は、終了コードだけを定義すればよい。
・「追加コード」;オブジェクトを追加するコマンド。追加するオブジェクトの種類(ビットマップ、動画、単色矩形)に応じて、それぞれ追加1コード、追加2コード、追加3コードがある。
・「挿入コード」;オブジェクトを特定のオブジェクトインデックス(表示情報領域No.)として挿入するコマンド。挿入するオブジェクトの種類(同上)によって、挿入1コード、挿入2コード、挿入3コードがある。この挿入コードの実行により、既に登録されているオブジェクトのオブジェクトインデックス(表示情報領域No.)の値はずれる。
・「移動コード」;オブジェクトの表示位置及び表示の大きさを指定するコマンド。指定方式(1点指定、3点指定)により、移動1コード、移動2コードがある。
・「エフェクトコード」;画像に透過性等の加工を施すエフェクトを指令するコマンド。エフェクトタイプを指定するエフェクト1コード、エフェクトパラメータ(例えば、透過度の値(%))を指定するエフェクト2コード、エフェクト色を指定するエフェクト3コードがある。
・「削除コード」;オブジェクトの削除を指令するコマンド。
・「変更コード」;オブジェクトのキャラクタ(図柄や登場人物など)を動きの途中で動きを継続しまたまま差し替える変更を指令するコマンド。
・「デコードコード」;動画データのデコード(復号化)を指令するコマンド。
・「入替コード」;オブジェクトの入替(例えば、オブジェクトインデックス(表示情報領域No.)0のキャラクタとオブジェクトインデックス(表示情報領域No.)1のキャラクタを入れ替える制御)を指令するコマンド。
・「ビヘイビアコード」;オブジェクトのキャラクタの差替えを指令するコマンド。
・「終了コード」;1フレーム分のデータの終了を示すコマンド。
なお、モーションテーブルのコマンドは、以上説明したものに限定されず、上記以外のコマンドがさらに含まれた態様でもよいし、上記のコマンドのうちの何れかが削除された態様もあり得る。
ステップD825に進むと、対象のモーションテーブル(ステップD823で取得したアドレスのモーションテーブル)におけるコマンド位置kに対応する行(例えば、k=0ならば1行目、k=1ならば2行目、・・・k=NならばN+1行目)のコマンドを取得して(ステップD825)、このコマンドについて順次各コードに該当するか否かのコマンド判定を実行して(ステップD826〜D841)、何れかのコマンド判定結果がYesになると対応する処理(ステップD851〜D866の何れか)を実行して、ステップD844に進む。
ステップD827に進むと、追加2コードか判定し、追加2コードであれば(ステップD827;Y)、動画をオブジェクトとして追加する動画追加処理(ステップD852)を行った後にステップD844に進み、追加2コードでなければ(ステップD827;N)、ステップD828に進む。
ステップD828に進むと、追加3コードか判定し、追加コード3であれば(ステップD828;Y)、キャラROM(画像ROM325)のデータを使用しない単色矩形画像をオブジェクトとして追加する単色矩形追加処理(ステップD853)を行った後にステップD844に進み、追加コード3でなければ(ステップD828;N)、ステップD829に進む。
ステップD829に進むと、挿入1コードか判定し、挿入1コードであれば(ステップD829;Y)、静止画をオブジェクトとして挿入するビットマップ挿入処理(ステップD854)を行った後にステップD844に進み、挿入1コードでなければ(ステップD829;N)、ステップD830に進む。
ステップD831に進むと、挿入3コードか判定し、挿入3コードであれば(ステップD831;Y)、前記単色矩形画像をオブジェクトとして挿入する単色矩形挿入処理(ステップD856)を行った後にステップD844に進み、挿入3コードでなければ(ステップD831;N)、ステップD832に進む。
ステップD832に進むと、移動1コードか判定し、移動1コードであれば(ステップD832;Y)、1点指定方式でオブジェクトの表示位置や表示の大きさを設定する1点指定オブジェクト移動処理(ステップD857)を行った後にステップD844に進み、移動1コードでなければ(ステップD832;N)、ステップD833に進む。
ステップD833に進むと、移動2コードか判定し、移動2コードであれば(ステップD833;Y)、3点指定方式でオブジェクトの表示位置や表示の大きさを設定する3点指定オブジェクト移動処理(ステップD858)を行った後にステップD844に進み、移動2コードでなければ(ステップD833;N)、ステップD834に進む。
ステップD835に進むと、エフェクト2コードか判定し、エフェクト2コードであれば(ステップD835;Y)、エフェクトパラメータ指定処理(ステップD860)を行った後にステップD844に進み、エフェクト2コードでなければ(ステップD835;N)、ステップD836に進む。
ステップD836に進むと、エフェクト3コードか判定し、エフェクト3コードであれば(ステップD836;Y)、エフェクト色を設定するエフェクト色指定処理(ステップD861)を行った後にステップD844に進み、エフェクト3コードでなければ(ステップD836;N)、ステップD837に進む。
ステップD837に進むと、削除コードか判定し、削除コードであれば(ステップD837;Y)、オブジェクトを削除するオブジェクト削除処理(ステップD862)を行った後にステップD844に進み、削除コードでなければ(ステップD837;N)、ステップD838に進む。
ステップD839に進むと、デコードコードか判定し、デコードコードであれば(ステップD839;Y)、オブジェクト動画デコード処理(ステップD864)を行った後にステップD844に進み、デコードコードでなければ(ステップD839;N)、ステップD840に進む。
ステップD840に進むと、入替コードか判定し、入替コードであれば(ステップD840;Y)、オブジェクトを入れ替えるオブジェクト入替処理(ステップD865)を行った後にステップD844に進み、入替コードでなければ(ステップD840;N)、ステップD841に進む。
ステップD841に進むと、ビヘイビアコードか判定し、ビヘイビアコードであれば(ステップD841;Y)、ビヘイビアインデックス設定処理(ステップD866)を行った後にステップD844に進み、ビヘイビアコードでなければ(ステップD841;N)、ステップD842に進む。
ステップD843に進むと、コマンド位置kの値を+1更新して(ステップD843)、ステップD844に進む。
ステップD844に進むと、ステップD842の判定結果がYesならばモーションコマンド実行処理を終了し、NoならばステップD824に戻って更新後のコマンド位置kについてステップD826以降を実行する。
すなわち、まず最初はコマンド位置k=0であり、追加1コードが設定された1行目が指定行であるので、ステップD826でYesになりステップD851のビットマップ追加処理が実行されて、この1行目にあるキャラクタNo.2のキャラクタ(図柄「2」)がオブジェクトインデックス(表示情報領域No.)0として登録される。ここでは、通常変動開始を始めるところなので、まずは、上段の次図柄として基準図柄である図柄「2」の画像データを登録する。最初の追加登録は、前に詰められ、当該画像データは、自動的に表示情報領域0の画像インデックス領域に登録される。
次はk=1になって、ビヘイビアコードが設定された2行目が指定行であり、パラメータとしてオブジェクトインデックス(表示情報領域No.)0、ビヘイビアインデックス(ビヘイビアNo.)0が設定されているので、ステップD841でYesになりステップD866のビヘイビアインデックス設定処理が実行されて、オブジェクトインデックス(表示情報領域No.)0に該当するキャラクタ(すなわち、図柄「2」)に対してビヘイビアインデックス(ビヘイビアNo.)0の設定が行われる。毎回、基準図柄である図柄「2」では意味がないので、図柄データを差し替える必要がある。よって、ここでは、ビヘイビアインデックス(ビヘイビアNo.)で指定されるサブルーチンを実行し、表示図柄領域(現図柄領域)の値に対応する図柄番号のデータを使用するように差し替える。
次はk=3になって、ビヘイビアコードが設定された4行目が指定行であり、パラメータとしてオブジェクトインデックス(表示情報領域No.)1、ビヘイビアインデックス(ビヘイビアNo.)0が設定されているので、ステップD841でYesになりステップD866のビヘイビアインデックス設定処理が実行されて、オブジェクトインデックス(表示情報領域No.)1に該当するキャラクタ(すなわち、図柄「1」)に対してビヘイビアインデックス(ビヘイビアNo.)0の設定が行われる。
次はk=5になって、ビヘイビアコードが設定された6行目が指定行であり、パラメータとしてオブジェクトインデックス(表示情報領域No.)2、ビヘイビアインデックス(ビヘイビアNo.)0が設定されているので、ステップD841でYesになりステップD866のビヘイビアインデックス設定処理が実行されて、オブジェクトインデックス(表示情報領域No.)2に該当するキャラクタ(すなわち、図柄「9」)に対してビヘイビアインデックス(ビヘイビアNo.)0の設定が行われる。
次はk=7になって、移動1コードが設定された8行目が指定行であり、パラメータとしてオブジェクトインデックス(表示情報領域No.)1等が設定されているので、ステップD832でYesになりステップD857の1点指定オブジェクト移動処理が実行されて、この8行目にある座標データや表示の大きさのデータに従ったオブジェクトインデックス(表示情報領域No.)1の画像(すなわち、図柄「1」)の表示設定が行われる。
次はk=9になって、終了コードが設定された10行目が指定行であるので、ステップD842でYesになりステップD844ではループ処理を終了してリターンする。
こうして、図136において(a)で示す最初の1フレーム分が終了する。なお、終了コードまでのデータが、1フレームに描画されるデータの固まりであるため、図136に(b),(c),(d)で示す2フレーム以降も、各フレーム周期(前述の処理周期;例えば1/30秒)毎に同様に実行される。追加コードや削除コードがない限り、前フレームのキャラクタ情報を引き継ぐので、2フレーム以降では、座標、サイズデータのみを指定する。
次に、前述のモーションコマンド実行処理におけるビットマップ追加処理(ステップD851)の詳細について図118により説明する。ビットマップ追加処理は、既述したように、静止画キャラクタを表示オブジェクトとして追加する処理である。
ビットマップ追加処理が開始されると、まず、モーション管理領域Xにおけるモーション用リストテーブル領域から、モーションリストテーブルのアドレス(すなわち、今回制御するモーション用リストテーブルとその行を指定するデータ)をロードして(ステップD871)、ステップD872に進む。
ステップD872に進むと、モーション管理領域Xにおける表示数の値が最大表示要素数以上になっているか判定し、最大表示要素数以上ならば(ステップD872;Y)、オブジェクトの追加ができないのでビットマップ追加処理を終了し、最大表示要素数未満であるならば(ステップD872;N)、ステップD873に進む。ここで、最大表示要素数は、VDP312のハード的限界やVRAM326の容量(動画を展開する領域等)などを考慮し、一つのモーションで扱える表示数(制御するオブジェクトの数)の限界値であり、本例では、18(静止画16+動画2)に設定されている。但し、18は一例にすぎず、これに限定されない。
次いで、対象の表示情報領域におけるビヘイビアインデックス(ビヘイビアNo.)の値として未定義値(例えば「−1」)をセーブする(ステップD875)。初期値としてビヘイビア無しの状態に設定するためである。なお、本例では、ビヘイビアインデックス(ビヘイビアNo.)の値が0の場合(図136における2,4,6行目のパラメータのようにビヘイビアインデックス(ビヘイビアNo.)0が指定された場合)でも、ビヘイビア(図柄等の差替え)は有りである。
次いで、対象のモーション用リストテーブルの指定行(ステップD871でロードされたアドレスで指定されるモーション用リストテーブルの指定行)から、モーションテーブルのアドレス(モーションテーブル名)を取得する(ステップD877)。これは、前述のステップD823と同様の処理である。
次いで、ステップD878で取得した静止画インデックスの値を画像インデックスとしてセーブする(ステップD879)。画像インデックスは、表示する対象としての特定のキャラクタ(静止画、動画などの画像)を示す情報であって、後述する演出表示編集処理におけるステップE51等で使用される情報である。
次いで、本処理によりオブジェクトが追加されたため、モーション管理領域Xにおける表示数の値を+1更新して(ステップD881)、その後ビットマップ追加処理を終了する。
・画像アドレスオフセット;キャラROM内に当該キャラクタが格納されているアドレスへのオフセット値を示す。
・パレットアドレスオフセット;キャラROM内に当該キャラクタが使用するパレットデータが格納されているアドレスへのオフセット値を示す。違うパレットを使用している箇所は異なるオフセット値となる。
・画像の幅、高さ;当該キャラクタの元画像のサイズを表す。例えば単位はピクセル。キャラクタ毎に様々な値となる。また、通常図柄の中においても例えば図柄に描かれている人物の大きさが多少違ったりして見た目のサイズが異なる可能性があるが、内部制御で扱いやすくするために透明部分でキャラクタの大きさを調整し、同一カテゴリのキャラであれば同一サイズとなるように設定する。
・VRAM上の幅;当該キャラクタをVRAMに展開した際の幅を指す。非可逆圧縮にしたり、カラーパレットのbit数を落としたりするとサイズが小さくなる。
・画像の圧縮タイプ;キャラROMへ格納している各キャラクタの圧縮タイプを示す。この圧縮タイプとしては、例えば以下のタイプ0〜6がある。これら以外のタイプがあってもよい。
0:32bitフルカラー画像圧縮なし
1:8bitフルカラー画像圧縮なし
2:4bitフルカラー画像圧縮なし
3:可逆圧縮32bitフルカラー画像
4:可逆圧縮8bitフルカラー画像
5:可逆圧縮4bitフルカラー画像
6:非可逆圧縮画像
・画像の圧縮後のサイズ;画像データ(キャラクタのデータ)の圧縮後の容量を示す。キャラROM(画像ROM325)からVRAM326へデータ転送する際のパラメータ等として使用される。
なお、以上説明した静止画ROMメンバリストテーブルのカテゴリ設定は一例であり、これ以外のパラメータを設定してもよい。
次に、前述のモーションコマンド実行処理における動画追加処理(ステップD852)の詳細について図119により説明する。動画追加処理は、既述したように、動画キャラクタを表示オブジェクトとして追加する処理である。
動画追加処理が開始されると、まず、前記ステップD871と同様に、モーションリストテーブルのアドレスをロードして(ステップD891)、ステップD892に進む。
ステップD892に進むと、前記ステップD872と同様に、モーション管理領域Xにおける表示数の値が最大表示要素数以上になっているか判定し、最大表示要素数以上ならば(ステップD892;Y)、動画追加処理を終了し、最大表示要素数未満であるならば(ステップD892;N)、ステップD893に進む。
次いで、前記ステップD875と同様に、対象の表示情報領域におけるビヘイビアインデックス(ビヘイビアNo.)の値として未定義値(例えば「−1」)をセーブして(ステップD895)、前記ステップD877と同様に、対象のモーション用リストテーブルの指定行(ステップD891でロードされたアドレスで指定されるモーション用リストテーブルの指定行)から、モーションテーブルのアドレスを取得する(ステップD896)。
次いで、対象の表示情報領域における表示種別のデータとしてIピクチャ動画情報をセーブする(ステップD900)。すなわち、ここでは、追加する当該オブジェクトがIピクチャ動画であることを示す情報を設定している。
次いで、ステップD897で取得した動画インデックスの値を画像インデックスとしてセーブして(ステップD901)、ステップD902に進む。
次いで、動画データをデコードするRAM(CPU311内のRAM)の記憶領域を確保する動画デコード領域確保処理(ステップD905)を実行して、ステップD906に進む。
ステップD906に進むと、上記動画デコード領域確保処理の結果、領域が正しく割り当てられたか判定し、正しく割り当てられた場合(ステップD906;Y)には、ステップD907に進み、正しく割り当てられなかった場合(ステップD906;N)には、動画追加処理を終了する。なお、容量オーバー等により領域が正しく確保できないときNoとなる。
ステップD907に進むと、対象の表示情報領域における表示種別のデータとして通常動画情報をセーブする(ステップD907)。すなわち、ここでは、追加する当該オブジェクトが通常動画である(すなわち、Iピクチャ動画でない)ことを示す情報を設定している。
次いで、上記動画デコード領域確保処理により割り当てられた領域のインデックスの値を画像インデックスとしてセーブして(ステップD908)、ステップD902に進む。
・動画アドレスオフセット;キャラROM内に当該ムービーが格納されているアドレスへのオフセット値を示す。
・動画の幅、高さ;当該ムービーの元画像のサイズを表す。例えば単位はピクセル。静止画の時と同様に、同一カテゴリのムービーのサイズは同じになるように透明部分で調整する。
・動画のフレーム数;何枚の連続絵で構成されたムービーであるかを示す。本例では1秒=30フレームの制御なので、それを意識したムービー作成を行う。制御を1秒60フレームとなるように実行したら、倍速再生されることになる。逆も同様である。
・エンコードタイプ;ムービーがどのように構成されているのかを示す。以下のタイプ0〜2がある。
0=Iピクチャのみで構成
1=Iピクチャと1枚参照のPピクチャを含んだ構成(1つ過去のIピクチャ又はPピクチャを参照して、当該Pピクチャを作る)
2=上記1に加え2枚参照のPピクチャを含んだ構成(1つ過去のIまたはPと、2つ過去のI又はPの2枚を参照して、当該Pピクチャを作る)
但し、以上のエンコードタイプに限定されず、例えばBピクチャを含んだ構成でもよい。
なお、以上説明した動画ROMメンバリストテーブルのカテゴリ設定は一例であり、これ以外のパラメータを設定してもよい。
次に、前述のモーションコマンド実行処理における1点指定オブジェクト移動処理(ステップD857)の詳細について図120により説明する。
1点指定オブジェクト移動処理が開始されると、まず、前記ステップD871と同様に、モーションリストテーブルのアドレスをロードして(ステップD911)、対象のモーション用リストテーブルの指定行(ステップD911でロードされたアドレスで指定されるモーション用リストテーブルの指定行)から、モーションテーブルのアドレスを取得する(ステップD912)。
次いで、ステップD913で取得したオブジェクトインデックス(表示情報領域No.)に対応する表示情報領域(モーション管理領域X内の表示情報領域)のアドレスを設定する(ステップD914)。例えば、図136でk=6(指定行は7行目)の場合、オブジェクトインデックス(表示情報領域No.)0は1行目で追加された図柄「2」(次図柄)であるため、次図柄に対応する1番目の表示情報領域(表示情報領域0)のアドレスが設定される。
次いで、コマンド位置kに対応するX座標データを取得して(ステップD915)、対象の表示情報領域(ステップD914でアドレスが設定された表示情報領域、以下、本処理において同様)における表示左上点のX座標と表示左下点のX座標として、ステップD915で取得したX座標データをセーブする(ステップD916)。
次いで、コマンド位置kに対応するY座標データを取得して(ステップD917)、対象の表示情報領域における表示左上点のY座標と表示右上点のY座標として、ステップD917で取得したY座標データをセーブする(ステップD918)。
次いで、ステップD917で取得したY座標データにステップD919で取得した高さデータを加算して(ステップD922)、この加算結果を対象の表示情報領域における表示左下点のY座標としてセーブする(ステップD923)。
次いで、前記ステップD880と同様に、コマンド位置を次レコードに更新して(ステップD924)、1点指定オブジェクト移動処理を終了する。
なお、前述のモーションコマンド実行処理における3点指定オブジェクト移動処理(ステップD858)については、フローチャートを示しての詳細説明は省略するが、この処理も上述した1点指定オブジェクト移動処理と略同様に行われる。但し、3点指定の場合はモーションテーブル上にそれぞれの座標データがある構造になるため、上述したステップD920、D922のような加算処理は不要であり、モーションテーブルから取得した各座標データを全てそのまま表示情報領域の各領域にセーブするだけの処理内容になる。
次に、前述のモーションコマンド実行処理におけるエフェクトタイプ指定処理(ステップD859)の詳細について図121(a)により説明する。
エフェクトタイプ指定処理が開始されると、まず、前記ステップD871と同様に、モーションリストテーブルのアドレスをロードして(ステップD931)、対象のモーション用リストテーブルの指定行(ステップD931でロードされたアドレスで指定されるモーション用リストテーブルの指定行)から、モーションテーブルのアドレスを取得する(ステップD932)。
次いで、コマンド位置kに対応するエフェクトタイプのデータを取得して(ステップD935)、対象の表示情報領域(ステップD934でアドレスが設定された表示情報領域、以下、本処理において同様)におけるエフェクトタイプとして、ステップD935で取得したデータをセーブする(ステップD936)。
次いで、対象の表示情報領域におけるエフェクトパラメータ、フォアグランドカラー、バックグランドカラーのデータをそれぞれクリアして(ステップD937〜D939)、前記ステップD880と同様に、コマンド位置を次レコードに更新して(ステップD940)、エフェクトタイプ指定処理を終了する。
次に、前述のモーションコマンド実行処理におけるエフェクトパラメータ指定処理(ステップD860)の詳細について図121(b)により説明する。
エフェクトパラメータ指定処理が開始されると、まず、前記ステップD871と同様に、モーションリストテーブルのアドレスをロードして(ステップD941)、対象のモーション用リストテーブルの指定行(ステップD941でロードされたアドレスで指定されるモーション用リストテーブルの指定行)から、モーションテーブルのアドレスを取得する(ステップD942)。
次いで、コマンド位置kに対応するエフェクトパラメータのデータを取得して(ステップD945)、対象の表示情報領域(ステップD944でアドレスが設定された表示情報領域、以下、本処理において同様)におけるエフェクトパラメータとして、ステップD945で取得したデータをセーブする(ステップD946)。
次いで、前記ステップD880と同様に、コマンド位置を次レコードに更新して(ステップD947)、エフェクトパラメータ指定処理を終了する。
次に、前述のモーションコマンド実行処理におけるオブジェクト削除処理(ステップD862)の詳細について図122(a)により説明する。オブジェクト削除処理は、登場しなくなるオブジェクトを削除する処理である。
オブジェクト削除処理が開始されると、まず、前記ステップD871と同様に、モーションリストテーブルのアドレスをロードして(ステップD951)、ステップD952に進む。
ステップD952に進むと、モーション管理領域Xにおける表示数の値が0以下であるか判定し、0以下である場合(ステップD952;Y)には、表示数が1個も無い(すなわち、削除するオブジェクトが無い)のでオブジェクト削除処理を終了し、0以下でない場合(ステップD952;N)には、ステップD953に進む。
次いで、ステップD954で取得したオブジェクトインデックス(表示情報領域No.)に対応する表示情報領域(モーション管理領域X内の表示情報領域)のアドレスを設定して(ステップD955)、ステップD956に進む。
ステップD958に進むと、取得したオブジェクトインデックス(表示情報領域No.)以降の表示情報領域の情報を前にシフト(移動)する(ステップD958)。すなわち、モーション管理領域Xにおいて、ステップD955で設定されたアドレス以降の表示情報領域のデータを一つ分だけ前の表示情報領域にそれぞれシフトさせる。これにより、ステップD955で設定されたアドレスの表示情報領域のデータは削除され、この削除されたデータに対応するオブジェクトが削除されたことになる。
次いで、前記ステップD880と同様に、コマンド位置を次レコードに更新して(ステップD959)、本処理によりオブジェクトが削除されたため、モーション管理領域Xにおける表示数の値を−1更新して(ステップD960)、オブジェクト削除処理を終了する。
次に、前述のモーションコマンド実行処理におけるオブジェクト変更処理(ステップD863)の詳細について図122(b)により説明する。オブジェクト変更処理は、表示しているキャラクタを差し替える処理である。
オブジェクト変更処理が開始されると、まず、前記ステップD871と同様に、モーションリストテーブルのアドレスをロードして(ステップD961)、対象のモーション用リストテーブルの指定行(ステップD961でロードされたアドレスで指定されるモーション用リストテーブルの指定行)から、モーションテーブルのアドレスを取得して(ステップD962)、ステップD962で取得されたアドレスで特定される対象のモーションテーブルからコマンド位置kに対応するオブジェクトインデックス(表示情報領域No.)を取得する(ステップD963)。
次いで、前記ステップD880と同様に、コマンド位置を次レコードに更新して(ステップD967)、オブジェクト変更処理を終了する。
次に、前述のモーションコマンド実行処理におけるオブジェクト動画デコード処理(ステップD864)の詳細について図123により説明する。
オブジェクト動画デコード処理が開始されると、まず、前記ステップD871と同様に、モーションリストテーブルのアドレスをロードして(ステップD971)、対象のモーション用リストテーブルの指定行(ステップD971でロードされたアドレスで指定されるモーション用リストテーブルの指定行)から、モーションテーブルのアドレスを取得する(ステップD972)。
ステップD975に進むと、モーション管理領域Xにおける表示種別のデータがIピクチャ動画情報であるか判定し、Iピクチャ動画情報である場合(ステップD975;Y)には、ステップD977に進み、Iピクチャ動画情報でない場合(ステップD975;N)には、ステップD976に進む。
ステップD977に進むと、対象の表示情報領域(ステップD974でアドレスが設定された表示情報領域、以下、本処理において同様)におけるIピクチャ用フレームカウント数(Iピクチャのみの動画時のフレームカウント)の領域のアドレスを設定して(ステップD977)、ステップD977で設定したアドレスに基づいて、対象の表示情報領域におけるIピクチャ用フレームカウント数のデータを+1更新して(ステップD978)、ステップD979に進む。
ステップD980に進むと、画像インデックス(この場合、動画インデックス)で指定される動画が最終フレームまで表示されたので、当該動画を最初から再度開始するために対象の表示情報領域におけるIピクチャ用フレームカウント数のデータを0(スタート値)に設定して(ステップD980)、ステップD983に進む。
ステップD981に進むと、この時点で画像インデックスとして登録されているデータ(この場合は動画インデックスのデータ)をロードし、準備して(ステップD981)、ステップD981でロードしたインデックスに対応する動画の1フレーム分をデコード(復号化)する動画デコード処理(ステップD982)を実行して、ステップD983に進む。
ステップD983に進むと、前記ステップD880と同様に、コマンド位置を次レコードに更新して(ステップD983)、オブジェクト動画デコード処理を終了する。
なお、Iピクチャ動画の場合は、各フレームの絵が独立して存在しているので、フレーム数を管理しておけばよい。後でVDP312の内部レジスタに指示をする際にそのカウント(Iピクチャ用フレームカウント数)が重要になる。
次に、前述のモーションコマンド実行処理におけるビヘイビアインデックス設定処理(ステップD866)の詳細について図124により説明する。
ビヘイビアインデックス設定処理が開始されると、まず、前記ステップD871と同様に、モーションリストテーブルのアドレスをロードして(ステップD991)、対象のモーション用リストテーブルの指定行(ステップD991でロードされたアドレスで指定されるモーション用リストテーブルの指定行)から、モーションテーブルのアドレスを取得する(ステップD992)。なお、モーション用リストテーブルの指定行には、ビヘイビアテーブルのアドレスに対応するビヘイビアテーブル名も設定されている(但し、NULLの場合もある)。
次いで、ステップD993で取得したオブジェクトインデックス(表示情報領域No.)に対応する表示情報領域(モーション管理領域X内の表示情報領域)のアドレスを設定する(ステップD994)。例えば、図136でk=1の場合、オブジェクトインデックス(表示情報領域No.)0はk=0(1行目)で追加された「次図柄」であるため、この「次図柄」に対応する表示情報領域のアドレスが設定される。
次いで、前記ステップD880と同様に、コマンド位置を次レコードに更新して(ステップD997)、ビヘイビアインデックス設定処理を終了する。
次に、前述のメイン処理における演出表示編集処理(ステップD31)の詳細について図125〜図127により説明する。この演出表示編集処理は、メイン処理で説明したように、VDP312に表示装置41での描画内容を指示するための各種コマンドとそのパラメータの設定を行う処理である。この演出表示編集処理ではコマンドがテーブル状に設定され、こうして設定されたコマンドはメイン処理のステップD34(画面描画を指示)でVDP312に順次送信される。
演出表示編集処理が開始されると、モーション管理領域の数だけステップE1〜E50のループ処理Aを繰り返し実行し、その後演出表示編集処理を終了する。なお、ループ処理A内にはステップE6〜E48のループ処理Bが含まれており、さらにループ処理B内にはステップE39〜E43のループ処理Cが含まれている。
以下、ステップE2以降の処理を説明する。
ステップE2に進むと、モーション管理領域Xのアドレス領域のデータがNULLか判定し、NULLである場合(ステップE2;Y)には、当該モーション管理領域Xについては制御不要であるためステップE49に進み、NULLでない場合(ステップE2;N)には、ステップE3に進む。なお、このステップE2でNULL(Yes)と判定されてステップE49に進む場合、ループ処理Bとループ処理Cを含む以下の処理は、当該モーション管理領域Xについては当然実行されない。
次いで、画素間演算用パラメータ(すなわち、VDP312の内部レジスタに設定する4種類のパラメータ)を設定して(ステップE5)、ステップE6に進む。
ステップE7に進むと、VDP312の内部レジスタのカラーパラメータをα値対応に設定して(ステップE7)、後述する処理に使用するαフラグをαありに設定して(ステップE8)、モーション管理領域Xにおける変数iに対応する表示情報領域(以下「対象の表示情報領域」という)のアドレスをロードして(ステップE9)、ステップE10に進む。
ステップE10に進むと、ステップE9でロードしたアドレスの表示情報領域におけるビヘイビアインデックス(ビヘイビアNo.)の値を読み取り、NULLではないなんらかのビヘイビアインデックス(ビヘイビアNo.)のデータが設定されているか判定し、設定されている場合(ステップE10;Y)には、当該ビヘイビアインデックスに対応する処理(ステップE11)を実行した後にステップE12に進み、設定されていない場合(ステップE10;N)には、ステップE11を実行しないでステップE12に進む。
例えば、対象のオブジェクトが左図柄の現図柄である場合には、後述する図129(a)に示すフローチャートの処理(表示左図柄変換処理)が上記ステップE11で実行される。本願では、上記ステップE11で実行される処理の具体例を、他にも図129(b)、(c)や図130にも示しているが、これらの詳細は後述する。
なお、ステップE11が実行されると、画像インデックスのデータが表示直前に変更され、例えば基本の図柄が表示すべき所定の図柄に差し替えられたり、PB(プッシュボタン)の画像の色が基本色から遊技状態に応じた所定の色(例えば、大当り信頼度を表す特定の色)に差し替えられたりする。モーションテーブル上に定義されているキャラクタの表示パターンは固定になってしまっているため、基本的にはモーションテーブルを変えない限り、変動毎に異なる停止図柄や振り分けにより異なる予告キャラクタなどに対応出来ない。そこで、本例では、ビヘイビアを必要箇所に埋め込んでキャラクタを差し替える処理を行うようにして柔軟な対応を行えるようにしている。
ステップE16に進むと、対象の表示情報領域に設定されている表示種別などのデータから、描画指定は通常動画の透過なし再生か判定し、通常動画の透過なし再生である場合(ステップE16;Y)には、ステップE17に進み、通常動画の透過なし再生でない場合(ステップE16;N)には、ステップE21に進む。
ステップE17に進むと、対象の動画(ステップE16で通常動画の透過なし再生と判定されたもの)は、αなしで登録されているか判定し、αなしで登録されている場合(ステップE17;Y)には、αフラグをαなしに設定して(ステップE18)、ステップE21に進み、αなしで登録されていない場合(ステップE17;N)には、ステップE18を実行しないでステップE21に進む。
ここで、ステップE31は加算ブレンドの場合に実行される処理(加算タイプの描画エフェクトを設定する処理)であり、ステップE32は減算ブレンドの場合に実行される処理(減算タイプの描画エフェクトを設定する処理)であり、ステップE33は乗算ブレンドの場合に実行される処理(乗算タイプの描画エフェクトを設定する処理)であり、ステップE34はスクリーンブレンドの場合に実行される処理(スクリーンタイプの描画エフェクトを設定する処理)であり、ステップE35は差分ブレンドの場合に実行される処理(差分タイプの描画エフェクトを設定する処理)であり、ステップE36は比較(暗)ブレンドの場合に実行される処理(暗タイプの描画エフェクトを設定する処理)であり、ステップE37は反転ブレンドの場合に実行される処理(反転タイプの描画エフェクトを設定する処理)である。
なお、上記ステップE29及びステップE31〜E38では、対象の表示情報領域のエフェクトタイプ等の設定に応じて、ブレンドするための各種パラメータ(本例では4種類)を該当のブレンド情報領域に設定している。
すなわち、ステップE39ではループ開始直後は変数jを0としてステップE40に進む。
ステップE40に進むと、変数jに対応するブレンド情報領域が変更されたか判定し、変更された場合(ステップE40;Y)には、ステップE41に進み、変更されていない場合(ステップE40;N)には、ステップE43に進む。ここで、ステップE40の判定は、該当のブレンド情報領域の前回のデータと今回のデータが不一致であれば変更されたと判定し、一致であれば変更されていないと判定することにより行う。
ステップE41に進むと、変数jに対応するレジストパラメータの画素間演算固定値をVDP312の内部レジスタに設定して(ステップE41)、今回のブレンド情報を前回のブレンド情報として設定して(ステップE42)、ステップE43に進む。
なお、変数jの範囲が4つ分あるのは、前述したように、VDP312にブレンド時の画素間演算固定値を指示する内部レジスタのパラメータが4種類あるからである。また、各レジスタに対応する領域(ブレンド情報領域)を前回用と今回用と設け、このブレンド情報領域の新旧のデータを比較して一致しないときだけ、ステップE41の設定処理を行うのは、指定する値が変化する時だけVDP312のレジスタに設定するため(VDPへの設定処理の効率化のため)である。
ここで、ステップE51及びE52は、静止画の場合に実行され、ステップE51では画像インデックスのデータをロードし、ステップE52ではロードした画像インデックスのデータに基づいて静止画像データの属性を設定するなどの処理を実行する。ステップE52を経ると、ステップE51でロードしたデータとステップE52の設定に基づいてキャラクタ描画処理(ステップE58)を実行する。
また、ステップE55〜E57は、Iピクチャ動画の場合に実行され、ステップE55では画像インデックスのデータをロードし、ステップE56では対象の表示情報領域からIピクチャ用フレームカウント(Iピクチャのみの動画時のフレームカウント)のデータをロードし、ステップE57ではロードした前記データに基づいてIピクチャ動画像データの属性を設定するなどの処理を実行する。ステップE57を経ると、ステップE55、E56でロードしたデータとステップE57の設定に基づいてキャラクタ描画処理(ステップE58)を実行する。
また、ステップE59は、単色四角形の場合に実行され、矩形画像(単色四角形の画像)をVRAM326の仮想描画空間(フレームバッファ)326aに描画する処理(すなわち、矩形画像のスプライトを仮想描画空間326aに貼り付ける処理)である。
なお、ステップE58又はステップE59を経ると、ステップE48に進む。
ステップE49に進むと、対象のモーション管理領域の番号Xを+1更新して(ステップE49)、ステップE50に進む。
ステップE50に進むと、Xがループ処理Aの終値(本例では15)に到達したか判定し、到達していればループ処理Aを抜けて演出表示編集処理を終了し、到達していなければステップE1に戻ってステップE2からループ処理Aを繰り返す。
次に、前述の演出表示編集処理におけるキャラクタ描画処理(ステップE58)の詳細について図128により説明する。
キャラクタ描画処理が開始されると、まずステップE61で、モーション管理領域Xにおける対象の表示情報領域(変数iに対応する表示情報領域)から表示左上点のX座標と表示左下点のX座標のデータを読み出して、これらが一致するか判定し、一致ならば(ステップE61;Y)、ステップE62に進み、不一致ならば(ステップE61;N)、ステップE77に進む。
ステップE62に進むと、モーション管理領域Xにおける対象の表示情報領域から表示左上点のY座標と表示右上点のY座標のデータを読み出して、これらが一致するか判定し、一致ならば(ステップE62;Y)、ステップE63に進み、不一致ならば(ステップE62;N)、ステップE77に進む。
なお、四角形(矩形)の画像であれば、ステップE61及びE62の判定結果はYesになってステップE63に進むが、三角形キャラクタ(三角形の画像)である場合には何れかの判定がNoになってステップE77に進む。
ステップE77に進むと、三角形キャラクタ描画処理(ステップE77)を実行して、キャラクタ描画処理を終了する。
次いで、モーション管理領域Xにおける対象の表示情報領域から表示右上点のX座標と表示左上点のX座標のデータを読み出し、これらの差(=表示右上点のX座標−表示左上点のX座標)をキャラクタの幅データとして設定して(ステップE65)、モーション管理領域Xにおける対象の表示情報領域から表示左下点のY座標と表示左上点のY座標のデータを読み出し、これらの差(=表示左下点のY座標−表示左上点のY座標)をキャラクタの高さデータとして設定する(ステップE66)。
次いで、水平フリップなしと、垂直フリップなしとを設定して(ステップE67)、ステップE68に進む。ここで、水平フリップは水平方向(X座標方向)の画像反転を意味し、垂直フリップは垂直方向(Y座標方向)の画像反転を意味する。
ステップE69に進むと、モーション管理領域Xにおける対象の表示情報領域から表示左上点のX座標のデータを読み出し、これにステップE65で設定した幅データ(マイナス値)を加算した加算結果をキャラクタの左上基点X座標として更新設定して(ステップE69)、ステップE65で設定した幅データ(マイナス値)を正数に変換し、これを新たな幅データとして更新設定する(ステップE70)。
次いで、水平フリップありを設定する(ステップE67の設定を変更する)処理を行って(ステップE71)、ステップE72に進む。
ステップE73に進むと、モーション管理領域Xにおける対象の表示情報領域から表示左上点のY座標のデータを読み出し、これにステップE66で設定した高さデータ(マイナス値)を加算した加算結果をキャラクタの左上基点Y座標として更新設定して(ステップE73)、ステップE66で設定した高さデータ(マイナス値)を正数に変換し、これを新たな高さデータとして更新設定する(ステップE74)。
次いで、垂直フリップありを設定する(ステップE67の設定を変更する)処理を行って(ステップE75)、ステップE76に進む。
ステップE76に進むと、ここまでの処理(ステップE63〜E75)による設定に基づいて、前記ステップE51、E53、E55の何れかでロードされた画像インデックスのデータに対応する所定のキャラクタの画像(指定画像)をVRAM326の仮想描画空間(フレームバッファ)326aに描画する処理(すなわち、所定のキャラクタの画像(指定画像)のスプライトを仮想描画空間326aに貼り付ける処理)を実行して(ステップE76)、キャラクタ描画処理を終了する。
次に、前述の演出表示編集処理におけるステップE11で実行される表示左図柄変換処理の詳細について図129(a)により説明する。
表示左図柄変換処理が開始されると、まず、画像インデックスのデータ(ビヘイビアによる差替え前のデータ)をロードして(ステップE81)、表示すべき現図柄(左)のインデックス(図柄番号)のデータ(例えば、前述のステップD727又はD747で設定されたデータ)をロードする(ステップE82)。なお、本例の場合、図柄の種類が9種類であるため、図柄(特図の飾り図柄)のインデックス(図柄番号)のデータは0から8までの何れかの数値である。
ステップE85に進むと、図柄上限に1を加算した値(本例では、9)を、更新インデックスの値から減算し、この減算結果を新たな更新インデックスの値として設定して(ステップE85)、ステップE86に進む。これらステップE84、E85によれば、更新インデックスの値が図柄上限を超えると、更新インデックスの値が一巡した値に更新される。
ステップE87に進むと、ステップE86で設定された左図柄インデックス変換テーブルにおける更新インデックスで指定される行から新たな画像インデックスの値を取得して(ステップE87)、ステップE87で取得した値を、新たな画像インデックスの値として画像インデックス領域(画像インデックスをセーブする領域)にセーブして(ステップE88)、その後表示左図柄変換処理を終了する。
なお、表示左図柄変換処理について以上説明したが、右図柄、中図柄についても同様の処理がある(詳細は省略)。
次に、前述の演出表示編集処理におけるステップE11で実行されるPB色変換処理の詳細について図129(b)により説明する。
PB色変換処理が開始されると、まず、演出振分け結果領域のPB色領域から振分け結果をロードして(ステップE91)、PBインデックス変換テーブルを設定する(ステップE92)。PBインデックス変換テーブルは、上記PB色領域にセーブされる振分け結果により行が指定され、指定された行に表示すべきPB(プッシュボタン)の画像の画像インデックスの値が設定されているテーブルである。
なお、PB予告(プッシュボタン予告)のモーション制御データ(特に画像インデックスのデータ)としては、デフォルト色となるボタンキャラクタしか登録していないので、大当り信頼度の報知等のために色をデフォルト色から変える場合に、本処理(PB色変換処理)が実行される。この予告に限らず、登場するキャラ(例えば、武将キャラ等)のキャラクタをビヘイビアにより変換(差替え)したりする処理も存在する。
次に、前述の演出表示編集処理におけるステップE11で実行されるリーチ文字変換処理の詳細について図129(c)により説明する。
リーチ文字変換処理が開始されると、まず、演出振分け結果領域のリーチ文字領域から振分け結果をロードして(ステップE101)、リーチ文字インデックス変換テーブルを設定する(ステップE102)。リーチ文字インデックス変換テーブルは、上記リーチ文字領域にセーブされる振分け結果により行が指定され、指定された行に表示すべきリーチ文字の画像の画像インデックスの値が設定されているテーブルである。
次いで、ステップE102で設定されたリーチ文字インデックス変換テーブルにおける上記振分け結果で指定される行から新たな画像インデックスの値(リーチ文字インデックスの値)を取得して(ステップE103)、ステップE104に進む。
なお、本例では、リーチが発生した瞬間に表示される「リーチ!」や「戦機」、「勝利」などのリーチ文字についても、モーション制御データ(特に画像インデックスのデータ)ではデフォルト文字を表示する構成となっており、必要に応じてビヘイビアによって表示直前に文字変更や各文字の色違いなどの差し替えを行う。
以上説明したリーチ文字変換処理では、例えば大当り予告の信頼度が低信頼度での変動の場合にステップE105でその文字サイズを0にすることで、制御上リーチ文字が存在するが実際には見えないという制御を行っている。但し、表示しない手法を、この構成に限られない、例えばリーチ文字表示を行わない構成とすることもあり得る。
次に、前述の演出表示編集処理におけるステップE11で実行されるキャラ1セリフ変換処理の詳細について図130により説明する。
キャラ1セリフ変換処理が開始されると、まず、演出振分け結果領域のセリフSU領域からセリフSU振分け結果をロードして(ステップE111)、ステップE112に進む。
ステップE112に進むと、ステップE111でロードしたセリフSU振分け結果に基づいてセリフSUがSU1系(SU2系やSU3系でないもの)か判定し、SU1系である場合(ステップE112;Y)には、ステップE117に進み、SU1系でない場合(ステップE112;N)には、ステップE113に進む。
ステップE117に進むと、演出振分け結果領域のセリフ1領域から振分け結果をロードして(ステップE117)、キャラ1SU1セリフインデックス変換テーブルを設定して(ステップE118)、ステップE115に進む。キャラ1SU1セリフインデックス変換テーブルは、上記セリフ1領域にセーブされる振分け結果により行が指定され、指定された行に表示すべきセリフの画像の画像インデックスの値が設定されているテーブルである。
ステップE119に進むと、演出振分け結果領域のセリフ2領域から振分け結果をロードして(ステップE119)、キャラ1SU2セリフインデックス変換テーブルを設定して(ステップE120)、ステップE115に進む。キャラ1SU2セリフインデックス変換テーブルは、上記セリフ2領域にセーブされる振分け結果により行が指定され、指定された行に表示すべきセリフの画像の画像インデックスの値が設定されているテーブルである。
ステップE121に進むと、演出振分け結果領域のセリフ3領域から振分け結果をロードして(ステップE121)、キャラ1SU3セリフインデックス変換テーブルを設定して(ステップE122)、ステップE115に進む。キャラ1SU3セリフインデックス変換テーブルは、上記セリフ3領域にセーブされる振分け結果により行が指定され、指定された行に表示すべきセリフの画像の画像インデックスの値が設定されているテーブルである。
なお、セリフSUの種別としてSU1系、SU2系、SU3系以外の種別があってもよく、その場合、図130の波線で省略した箇所に対応する処理ステップが設けられる。
次に、VDP割込み処理を、図131により説明する。既述したように、演出制御装置300において、CPU311には割り込み要因であるVDP312から割込み信号INT0〜nが入力されており、割込み要因が発生した割込み信号INT0〜nによってCPU311では複数(最大2のn乗個)の割込み(以下「VDP割込み」という)が受け付け可能である。本例の場合、このVDP割込みには、Vブランク開始割込み、Vライン開始割込み、描画コマンドINT割込み、描画エラー割込み、描画終了割込み、データ転送1完了割込み、データ転送2完了割込み、データ転送3完了割込み、チェックサム終了割込み、圧縮展開イベント割込み、シリアルコマンド割込み、がある。
本処理(VDP割込み処理)は、この複数のVDP割込みのうちの少なくとも何れか1つが発生すると開始される。なお、この複数のVDP割込みのうちの少なくとも何れか1つが発生すると、この割込み発生を示す割込みフラグのオンデータがCPU311のレジスタに設定される。
次いで、ステップE131で上記ステータスを読み取ったため、各割込み要因をクリアする(ステップE132)。すなわち、上述した各割込み要因のステータスのデータ(VDP312の割込み用のレジスタのデータ)を全て割込み無しの値に戻す設定を実行する。なお、CPU311とVDP312は双方向通信が可能となっており、このステップE132の設定はこの通信によって行う。
次いで、ステップE131で取得したステータスに基づいて、それぞれ、各割込みについての処理(割込みの有無を判定してフラグを設定する等の処理)を実行して(ステップE133〜E143)、前記割込みフラグをクリアして(ステップE144)、VDP割込み処理を終了する。すなわち、前記割込みフラグのオフデータをCPU311のレジスタに設定する。
また、各割込みの発生条件等は以下のとおりである。
・Vブランク開始割込み;Vブランク期間の開始時に割込みが発生する。
・Vライン開始割込み;(ユーザが)指定した表示ラインの開始時に割込みが発生する。
・描画コマンドINT割込み;描画コマンドの解析を中断する場合に発生する。
・描画エラー割込み;描画回路が異常状態になった時に発生する。
・描画終了割込み;描画が終了した時に発生する。
・データ転送1〜3完了割込み;各メモリ間でのデータ転送が完了した時に発生する。
なお、データ転送は、画像ROM325、CPU311(CPU311内のRAM内のデータ又は制御ROM321内のデータ)、VRAM326等の間で転送できる。データ転送1〜3の3組がそれぞれ独立しているので同時に転送が可能だが、1>2>3の順で優先順位が設けられており、転送先が同一の場合などには待ちが発生する。
・チェックサム終了割込み;画像ROM325のチェックサムを自動で計算する機能があり(CPU311からの指示で)、計算終了時に発生する。
なお、チェックサムの計算について、計算を開始するアドレス、終了するアドレス、計算する単位(例えば32ビット単位/64ビット単位)等のパラメータを指定することが可能である。
・圧縮展開イベント割込み;動画の1フレームのデコードが完了した時、又はデコードエラーが発生した時に発生する。
・シリアルコマンド割込み;例えばシリアルインターフェースに接続した音源LSI314にシリアルコマンドで指示を出し、その実行が終了した時に発生する。
次に、前記VDP割込み処理におけるVブランク開始割込み処理(ステップE133)を、図132により説明する。なお、Vブランク開始割込み(「Vブランク割込み」或いは「Vシンク割込み」ともいう)は、VDP312によって描画のための画面全体の1回の走査が終了する度に発生する。このVブランク開始割込みの発生周期は、前述したように、例えば1/60秒である。
Vブランク開始割込み処理が開始されると、まずステップE151で、前述のステップE131で取得したステータスに基づいてVブランク開始割込みが発生しているか否か判定し、発生していれば(ステップE151;Y)、ステップE152に進み、発生していなければ(ステップE151;N)、Vブランク開始割込み処理を終了する。
ステップE152に進むと、Vブランクカウントの値を+1更新して(ステップE152)、その後ステップE153に進む。Vブランクカウントは、同じ描画を所定回数(本例では2回)実行するためのカウンタである。前述のメイン処理におけるステップD33で説明したフレーム切替タイミングは、原則的に、このVブランクカウントが所定値(本例では2)に到達した時点である。つまり、本例では、Vブランクカウントが瞬間的に2になる時(ステップE152の更新後に2になってステップE155で0クリアされるまでの瞬間)を除けば、Vブランクカウントの値は正常であれば0⇔1を交互に繰り返し、結果としてVブランク割込み2回毎にフレームを切り替える。Vブランク割込みは1/60秒毎に発生するので、1/30秒毎(33.333ms)にフレーム切り替えを行うことになる。
ここで、ステップE156で設定されるフレーム切替フラグは、前述したメイン処理におけるステップD33で使用される。すなわち、前述のステップD33では、このフレーム切替フラグのオンデータがセットされていると、フレーム切替タイミングであると判定する構成となっている。また、ステップE158では、VDP312の表示回路がVRAM326へのアクセスを行い、表示用データを生成するのを許可している。
以上説明したVブランク開始割込み処理によれば、圧縮展開のエラーが発生しない限り、同じ描画が所定回数繰り返されてVブランク開始割込みが所定回数発生するとフレーム切替が行われる。本例の場合、同じ描画が2回繰り返されてVブランク開始割込みが2回発生するとフレーム切替が行われ、フレーム切替タイミングの周期は、Vブランク開始割込みの周期(例えば1/60秒)の2倍(例えば1/30秒≒33.33ms)になる。
次に、以上説明した演出制御装置300の制御で使用するデータテーブルの具体例と、同制御により表示装置41の表示画面41aで行われる演出表示の具体例とを、図133〜図138により説明する。
本実施形態において、シナリオ管理領域のアドレス領域は、図133の左側に示すように、シナリオレイヤー0用アドレス〜シナリオレイヤー8用アドレスをそれぞれ格納する9個の領域からなる。演出制御装置300は、毎処理時、シナリオ設定処理(図103参照)を実行して全アドレス領域を上から順にチェックし、対応するアドレス領域に制御するRAMのアドレス(本実施形態の場合、シナリオ管理領域の先頭アドレス)が格納されているシナリオレイヤーに対して処理を行う。描画されないシナリオレイヤーに対応するアドレス領域にはRAMのアドレスではなくNULLが格納されている。
指定されたアドレスに各シナリオ設定のためのシナリオ管理領域が設けられ、シナリオ管理領域の各領域のうちのシナリオ設定に不要な領域には特に設定を行わず、「シナリオ用データテーブル領域」には現在制御されているデータテーブル(シナリオテーブル)のアドレスが格納される。
また、本実施形態では、予告用シナリオレイヤーとして、予告1用シナリオレイヤー(シナリオレイヤー4)と予告2用シナリオレイヤー(シナリオレイヤー5)の2つを確保しているため、1画面中に2種類の独立した予告演出を出現可能となっている。
本実施形態において、モーション管理領域のアドレス領域は、図134の左側に示すように、モーション0用アドレス〜モーション14用アドレスをそれぞれ格納する15個の領域からなる。
また、モーション9(予告E)用アドレスおよびモーション10(予告F)用アドレスを格納するアドレス領域、すなわちモーション管理領域9およびモーション管理領域10のアドレス領域も、予告1用シナリオまたは予告2用シナリオによって使用される。
また、モーション12(予告G)用アドレスおよびモーション13(予告H)用アドレスを格納するアドレス領域、すなわちモーション管理領域12およびモーション管理領域13のアドレス領域も、予告1用シナリオまたは予告2用シナリオによって使用される。
また、各表示情報領域は、図106(c)に示すように、表示種別、エフェクトタイプ、エフェクトパラメータ、表示左上点のX座標、表示左上点のY座標、表示右上点のX座標、表示右上点のY座標、表示左下点のX座標、表示左下点のY座標、画像インデックス、バックグラウンドカラー、フォアグラウンドカラー、IPictureのみの動画時のフレームカウント、およびビヘイビアインデックスの各データを記憶する領域を含んでいる。
また、第4図柄用モーション管理領域(本実施形態の場合、モーション管理領域14)には、図134の右側の最下段に示すように、第4図柄表示情報領域0〜第4図柄表示情報領域3の4個の表示情報領域が設けられている。
また、背景用モーション管理領域(本実施形態の場合、モーション管理領域1)や予告用モーション管理領域(本実施形態の場合、モーション管理領域2、モーション管理領域3、モーション管理領域4、モーション管理領域5、モーション管理領域9、モーション管理領域10、モーション管理領域12、およびモーション管理領域13)についても同様に、表示数分の表示情報領域があり、その中からモーションテーブルで指定されている表示情報領域が選択される。
また、10行目(//第4図柄)に、オペコードとしてモーション登録コード(M14SET)が設定され、オペランドとして21が設定されている。これにより、モーション14(第4図柄)を所定の位置に停止表示するために、モーション管理領域14に第4図柄停止表示のモーションテーブル番号21を登録する。
具体的には、11行目(//BG継続)に、オペコードとしてモーション継続コード(M1KPX)が設定され、オペランドとして12が設定されている。これにより、モーション1(背景)をモーションテーブル番号12に基づき表示するために、モーション管理領域1に背景表示のモーションテーブル番号12が登録されている場合には、その状態を継続し、登録されていない場合には、モーション管理領域1に背景表示のモーションテーブル番号12を登録する。
また、12行目(//表示(保留))に、オペコードとしてモーション登録コード(M11SET)が設定され、オペランドとして−1が設定されている。これにより、モーション11(保留)を、保留数の入っているRAM領域に基づいた態様で表示する。保留数が0である場合には、保留表示枠だけを表示する。
また、14行目(//客待ち左図柄)に、オペコードとしてモーション登録コード(M6SET)が設定され、オペランドとして76が設定されている。これにより、モーション6(左図柄)として客待ち中用の左図柄を表示する。客待ち中は変動中と異なり、中段の図柄(現図柄)のみを表示する。
右図柄および中図柄においても同様である(15行目〜18行目参照)。
また、19行目(//wait)に、オペコードとして定数ウェイトコード(CWAIT)が設定され、オペランドとして3600が設定されている。これにより、3600フレームの間(すなわち、120秒=3600×(1/30秒)の間)、この行で待機する。
具体的には、20行目(//削除)〜23行目(//削除(保留))に、オペコードとしてモーション削除コード(M6DEL、M7DEL、M8DEL、M11DEL)が設定され、オペランドとして0が設定されている。これにより、モーション6(左図柄)、モーション7(右図柄)、モーション8(中図柄)、およびモーション11(保留)の描画を停止するために、モーション管理領域6、7、8、11の制御データを削除(初期化)する。
また、24行目(//BG)に、オペコードとしてモーション登録コード(M1SET)が設定され、オペランドとして13が設定されている。これにより、モーション1(背景)をモーションテーブル番号13に基づき表示する(具体的には、客待ちムービーを表示する)ために、モーション管理領域1に背景表示のモーションテーブル番号13を登録する。
また、25行目(//wait)に、オペコードとして定数ウェイトコード(CWAIT)が設定され、オペランドとして900が設定されている。これにより、900フレームの間(すなわち、30秒=900×(1/30秒)の間)、この行で待機する。
なお、図135に示すシナリオテーブルにおいて四角で囲まれた範囲のデータが、1フレーム内で処理される。
図137に示すように、表示画面41aの左上隅が原点(X座標=0、Y座標=0)となっており、上下方向がY軸方向であるため、表示画面41aの左下隅はX座標=0でY座標=767となっている。また、表示画面41aにおいて左右方向がX軸方向であるため、表示画面41aの右上隅はX座標=1023でY座標=0となっており、表示画面41aの右下隅はX座標=1023でY座標=767となっている。なお、このような座標の具体的数値は一例にすぎない。
複数のシナリオレイヤーは、例えば背景、左図柄、右図柄、・・・と個別に各表示要素毎にカテゴリ分けが行われ、各々を独立して複数のモーション情報を同時にあるいは連続的に切り替えて演出表示させるための動作シナリオのテーブルとして設定される。
そして、複数の表示要素毎に分けられて変動演出等の表示演出におけるシナリオテーブルが作成される。本実施形態において、シナリオテーブルは、「背景制御のシナリオテーブル(背景シナリオテーブル)」、「左図柄制御のシナリオテーブル」、「右図柄制御のシナリオテーブル」、「中図柄制御のシナリオテーブル」、「予告1キャラクタ制御のシナリオテーブル」、「予告2キャラクタ制御のシナリオテーブル」、「保留表示制御のシナリオテーブル」、「第4図柄制御のシナリオテーブル(第4図柄シナリオテーブル)」及び「輪郭内演出制御のシナリオテーブル(輪郭内演出シナリオテーブル)」の9つの要素に分けられて作成されている。
また、各表示要素はそれぞれが表示レイヤによって構成されて、これら複数の表示レイヤが画面奥側から画面手前側に向かって順次重ねられて1つの表示画面41aが作成される。本実施形態の場合、表示レイヤには、「輪郭内演出レイヤ」、「背景レイヤ」、「左図柄レイヤ」、「右図柄レイヤ」、「中図柄レイヤ」、「予告Aレイヤ」〜「予告Hレイヤ」、「保留レイヤ」および「第4図柄レイヤ」の15種類がある。
仮想描画空間326aは、図138に示すように、モーション管理領域0用描画領域〜モーション管理領域14用描画領域の15個の描画領域に分かれている。各描画領域は、対応するモーション管理領域の番号順に並んでおり、各描画領域に、矩形画像または指定画像が描画された表示レイヤが記憶される。
次いで、モーション管理領域1についてのステップE1〜E50のループ処理Aを実行し、モーション管理領域1のアドレス領域のデータがNULLでない場合に、矩形画像または指定画像が描画された「背景レイヤ」を、仮想描画空間326aのモーション管理領域1用描画領域に記憶する。
次いで、モーション管理領域2についてのステップE1〜E50のループ処理Aを実行し、モーション管理領域2のアドレス領域のデータがNULLでない場合に、矩形画像または指定画像が描画された「予告Aレイヤ」を、仮想描画空間326aのモーション管理領域2用描画領域に記憶する。
次いで、モーション管理領域3についてのステップE1〜E50のループ処理Aを実行し、モーション管理領域3のアドレス領域のデータがNULLでない場合に、矩形画像または指定画像が描画された「予告Bレイヤ」を、仮想描画空間326aのモーション管理領域3用描画領域に記憶する。
各描画領域に記憶された表示レイヤは、図138に示すように、描画領域の並び順に、画面奥側(下層側)から画面手前側(上層側)に向かって順次重ねられて1つの表示画面41aが作成される。具体的には、例えば15個の描画領域の全てが埋まっている場合、本実施形態においては、15個の描画領域のうちの先頭に位置するモーション管理領域0用描画領域に記憶されている「輪郭内演出レイヤ」が最も画面奥側(最下層)に配置され、15個の描画領域のうちの最後尾に位置するモーション管理領域14用描画領域に記憶されている「第4図柄レイヤ」が最も画面手前側(最上層)に配置される。
したがって、上記構成によれば、最小限の動作パターンを定義する(動作のパーツ化)だけで済み、データ容量の節約と開発の効率化ができるという効果が得られる。
図139には、特図変動表示ゲームでの表示態様がリーチ表示態様となる場合の演出の一例を示した。
このとき、演出制御装置300は、複数の飾り図柄Zの仮停止表示に対応させて、少なくとも一の表示レイヤを用いて、背景画像Bよりも画面手前側に配置される複数の飾り図柄Zのうち、少なくとも一の飾り図柄Zの輪郭部分よりも内側に輪郭内演出用の動画像M(図140参照)が表示される所定の表示画面41aを作成して、表示装置41に表示させる。
なお、飾り図柄Zについては、輪郭部分よりも内側部分の非透過状態を斜線付きで表し、透過状態を白抜きで表している。また、左図柄及び右図柄は、拡大表示した状態で一部分が見切れた状態となっている。
そして、図139(b)〜図139(d)に示すように、左、中、右の変動表示領域には複数の飾り図柄Zが揺れた状態で表示され、当該飾り図柄Zの輪郭部分よりも内側にて、輪郭内演出用の動画像Mとしての龍が画面右から画面左に流れるように移動した後、図139(e)に示すように、左、中、右の変動表示領域にて飾り図柄Zの変動表示が再開される。
その後、図139(f)に示すように、左、右の変動表示領域で同じ図柄「三」が仮停止してリーチ状態となる。
所定の表示画面41aは、図141に示すように、「輪郭内演出レイヤ」、「背景レイヤ」、「左図柄レイヤ」、「右図柄レイヤ」および「中図柄レイヤ」が画面奥側から画面手前側に積層した状態となっている。
図柄用表示レイヤの各々には、飾り図柄Zの輪郭部分よりも内側を透過させる図柄透過部Z1が形成されている。すなわち、「左図柄レイヤ」には、左図柄「三」を太字で表した場合の輪郭部分(外縁部分)よりも内側に図柄透過部Z1が形成され、また、「右図柄レイヤ」には、右図柄「五」を太字で表した場合の輪郭部分よりも内側に図柄透過部Z1が形成され、また、「中図柄レイヤ」には、中図柄「四」を太字で表した場合の輪郭部分よりも内側に図柄透過部Z1が形成されている。これらの図柄透過部Z1は、例えば、上記した演出表示編集処理にてαフラグがαありに設定されたり、エフェクトタイプ指定処理にてエフェクトタイプとして透過性(透明度)を持たせるエフェクトタイプ(1)が設定されたりすることで飾り図柄Zにおける輪郭部分以外(図柄透過部Z1)が透過された状態となる。
背景用表示レイヤには、背景画像Bにおける飾り図柄Zの図柄透過部Z1に対応する位置に当該背景画像Bを透過させる背景透過部B1が形成されている。すなわち、「背景レイヤ」における「左図柄レイヤ」、「右図柄レイヤ」及び「中図柄レイヤ」の各図柄透過部Z1にそれぞれ対応して積層方向に重なる位置に、当該図柄透過部Z1の外形と略等しい形状の背景透過部B1がそれぞれ形成されている。この背景透過部B1も、上記した図柄透過部Z1と同様に、例えば、上記した演出表示編集処理にてαフラグがαありに設定されたり、エフェクトタイプ指定処理にてエフェクトタイプとして透過性(透明度)を持たせるエフェクトタイプ(1)が設定されたりすることで背景画像Bにおける背景透過部B1が透過された状態となる。
結果として、飾り図柄Zの輪郭部分よりも内側に「輪郭内演出レイヤ」の輪郭内演出用の動画像Mを表示可能となる一方で、飾り図柄Zの輪郭部分の外側には「背景レイヤ」の背景画像Bを表示可能となる(図139(b)〜図139(d)参照)。
なお、基本的には、第1実施形態の遊技機10と同様の構成を有しており、以下、同様の構成を有する部分については同じ符号を付して説明を省略し、主に異なる部分について説明する。
次に、表示レイヤの構成の変形例1について、図142及び図143を参照して説明する。
図142は、変形例1のモーション管理領域のアドレス領域の一例を示す図である。
すなわち、モーション管理領域0のアドレス領域が背景用アドレスを格納する領域であり、モーション管理領域1〜4のアドレス領域が予告A用アドレス〜予告D用アドレスを格納する領域であり、モーション管理領域5のアドレス領域が左図柄用アドレスを格納する領域であり、モーション管理領域6のアドレス領域が右図柄用アドレスを格納する領域であり、モーション管理領域7のアドレス領域が中図柄用アドレスを格納する領域であり、モーション管理領域8、9のアドレス領域が予告E用アドレス、予告F用アドレスを格納する領域であり、モーション管理領域10のアドレス領域が保留用アドレスを格納する領域であり、モーション管理領域11、12のアドレス領域が予告G用アドレス、予告H用アドレスを格納する領域であり、モーション管理領域13のアドレス領域が第4図柄用アドレスを格納する領域であり、モーション管理領域14のアドレス領域が輪郭内演出用アドレスを格納する領域である。
図143に示すように、所定の表示画面41aは、「背景レイヤ」、「左図柄レイヤ」、「右図柄レイヤ」、「中図柄レイヤ」及び「輪郭内演出レイヤ」が画面奥側から画面手前側に積層した状態となっている。
また、「輪郭内演出レイヤ」は、輪郭内演出用の動画像Mを構成する複数のフレーム画像の各々(図140参照)について、上記した構造をなしている。
なお、図143にあっては、「輪郭内演出レイヤ」における、「左図柄レイヤ」の飾り図柄Zの輪郭部分よりも内側に対応する部分については、未だ龍が移動してきていないため、輪郭内演出用の動画像Mの背景部分が合成された状態となっている。
次に、表示レイヤの構成の変形例2について、図144〜図146を参照して説明する。
図144は、変形例2のシナリオ管理領域のアドレス領域とシナリオ管理領域の一例を示す図である。
この変形例2では、シナリオ管理領域のアドレス領域は、図144に示すように、シナリオレイヤー0用アドレス〜シナリオレイヤー7用アドレスをそれぞれ格納する8個の領域からなる。
シナリオ管理領域0では、背景画像Bに輪郭内演出用の動画像Mが合成された合成背景として、どのモーションテーブルを使用した描画を行うのかを管理している。
また、シナリオ管理領域1〜7については、上記した実施形態と同様である。
図145に示すように、この変形例2では、モーション管理領域のアドレス領域は、モーション0用アドレス〜モーション13用アドレスをそれぞれ格納する14個の領域からなる。
ここで、モーション管理領域0のアドレス領域がモーション0(合成背景)用アドレスを格納する領域である。
また、モーション管理領域1〜13のアドレス領域については、上記した変形例1と同様である。
図146に示すように、所定の表示画面41aは、「合成背景レイヤ」、「左図柄レイヤ」、「右図柄レイヤ」及び「中図柄レイヤ」が画面奥側から画面手前側に積層した状態となっている。
合成背景用表示レイヤには、合成背景画像における飾り図柄Zの図柄透過部Z1に対応する位置に輪郭内演出用の動画像Mが合成されている。
具体的には、「合成背景レイヤ」における、「左図柄レイヤ」の図柄透過部Z1に対応して積層方向に重なる位置に、輪郭内演出用の動画像Mの各フレーム画像の対応する部分であり、左図柄「三」の輪郭部分よりも内側と略等しい形状をなす一部分が合成されている。同様に、「合成背景レイヤ」における、「右図柄レイヤ」の図柄透過部Z1に対応して積層方向に重なる位置に、輪郭内演出用の動画像Mの各フレーム画像の対応する部分であり、右図柄「五」の輪郭部分よりも内側と略等しい形状をなす一部分が合成されている。同様に、「合成背景レイヤ」における、「中図柄レイヤ」の図柄透過部Z1に対応して積層方向に重なる位置に、輪郭内演出用の動画像Mの各フレーム画像の対応する部分であり、中図柄「四」の輪郭部分よりも内側と略等しい形状をなす一部分が合成されている。
また、「合成背景レイヤ」は、輪郭内演出用の動画像Mを構成する複数のフレーム画像の各々(図140参照)が合成されるものについて、上記した構造をなしている。
また、上記した背景画像Bと輪郭内演出用の動画像Mとの合成は、所謂、マスク合成により行われても良い。
次に、表示レイヤの構成の変形例3について、図147〜図149を参照して説明する。
図147は、変形例3のシナリオ管理領域のアドレス領域とシナリオ管理領域の一例を示す図である。
この変形例3では、シナリオ管理領域のアドレス領域は、図147に示すように、シナリオレイヤー0用アドレス〜シナリオレイヤー7用アドレスをそれぞれ格納する8個の領域からなる。
シナリオ管理領域1では、左図柄に演出用の動画像Mが合成された合成左図柄として、どのモーションテーブルを使用した描画を行うのかを管理している。また、シナリオ管理領域2では、右図柄に演出用の動画像Mが合成された合成右図柄として、どのモーションテーブルを使用した描画を行うのかを管理している。また、シナリオ管理領域3では、中図柄に演出用の動画像Mが合成された合成中図柄として、どのモーションテーブルを使用した描画を行うのかを管理している。
また、シナリオ管理領域0、4〜7については、上記した実施形態と同様である。
図148に示すように、この変形例3では、モーション管理領域のアドレス領域は、モーション0用アドレス〜モーション13用アドレスをそれぞれ格納する14個の領域からなる。
ここで、モーション管理領域5のアドレス領域がモーション5(合成左図柄)用アドレスを格納する領域である。また、モーション管理領域6のアドレス領域がモーション6(合成右図柄)用アドレスを格納する領域である。また、モーション管理領域7のアドレス領域がモーション7(合成中図柄)用アドレスを格納する領域である。
また、モーション管理領域0〜4、8〜13のアドレス領域については、上記した変形例1と同様である。
図149に示すように、所定の表示画面41aは、「背景レイヤ」、「合成左図柄レイヤ」、「合成右図柄レイヤ」及び「合成中図柄レイヤ」が画面奥側から画面手前側に積層した状態となっている。
具体的には、「合成左図柄レイヤ」は、左図柄「三」の輪郭部分よりも内側に、輪郭内演出用の動画像Mの各フレーム画像における、当該左図柄「三」の輪郭部分よりも内側に対応して積層方向に重なる部分が合成されている。同様に、「合成右図柄レイヤ」は、右図柄「五」の輪郭部分よりも内側に、輪郭内演出用の動画像Mの各フレーム画像における、当該右図柄「五」の輪郭部分よりも内側に対応して積層方向に重なる部分が合成されている。同様に、「合成中図柄レイヤ」は、中図柄「四」の輪郭部分よりも内側に、輪郭内演出用の動画像Mの各フレーム画像における、当該中図柄「四」の輪郭部分よりも内側に対応して積層方向に重なる部分が合成されている。
また、「合成左図柄レイヤ」、「合成右図柄レイヤ」および「合成中図柄レイヤ」は、輪郭内演出用の動画像Mを構成する複数のフレーム画像の各々(図140参照)が合成されるものについて、上記した構造をなしている。
また、上記した左図柄、右図柄および中図柄と輪郭内演出用の動画像Mとの合成は、所謂、マスク合成により行われても良い。
したがって、背景画像Bよりも画面手前側に配置される複数の飾り図柄Zのうち、少なくとも一の飾り図柄Zの輪郭部分よりも内側に輪郭内演出用の動画像Mを表示可能となる一方で、飾り図柄Zの輪郭部分の外側には背景画像Bを表示可能となり、飾り特図変動表示ゲームの実行中に輪郭内演出用の動画像Mを表示しても、識別図柄(飾り図柄Z)及び背景画像Bの視認性の低下を抑制することができる。
したがって、背景画像Bよりも画面手前側に配置される複数の飾り図柄Zの輪郭部分よりも内側に「輪郭内演出レイヤ」の輪郭内演出用の動画像Mを表示可能となる一方で、飾り図柄Zの輪郭部分の外側には「背景レイヤ」の背景画像Bを表示可能となるため、複数の表示レイヤを用いて所定の表示画面41aを作成することで、飾り特図変動表示ゲームの実行中に輪郭内演出用の動画像Mを表示しても、識別図柄(飾り図柄Z)及び背景画像Bの視認性の低下をより適正に抑制することができる。さらに、複数の輪郭内演出用の動画像Mを用いる場合にも、各動画像M毎に専用の背景画像Bや飾り図柄Zを用意する必要がなくなるため、これらを記憶するための記憶手段の容量を増やすことなくより多彩な演出を行うことができる。
したがって、背景画像Bよりも画面手前側に配置される複数の飾り図柄Zの輪郭部分よりも内側に「合成背景レイヤ」の輪郭内演出用の動画像Mを表示可能となる一方で、飾り図柄Zの輪郭部分の外側には合成背景画像の背景部分を表示可能となるため、複数の表示レイヤを用いて所定の表示画面41aを作成することで、飾り特図変動表示ゲームの実行中に輪郭内演出用の動画像Mを表示しても、識別図柄(飾り図柄Z)及び背景画像Bの視認性の低下をより適正に抑制することができる。
したがって、背景画像Bよりも画面手前側に配置される複数の飾り図柄Zの輪郭部分よりも内側に「輪郭内演出レイヤ」の輪郭内演出用の動画像Mを表示可能となる一方で、飾り図柄Zの輪郭部分の外側には「背景レイヤ」の背景画像Bを表示可能となるため、複数の表示レイヤを用いて所定の表示画面41aを作成することで、飾り特図変動表示ゲームの実行中に輪郭内演出用の動画像Mを表示しても、識別図柄(飾り図柄Z)及び背景画像Bの視認性の低下をより適正に抑制することができる。さらに、複数の輪郭内演出用の動画像Mを用いる場合にも、各動画像M毎に専用の背景画像Bや飾り図柄Zを用意する必要がなくなるため、これらを記憶するための記憶手段の容量を増やすことなくより多彩な演出を行うことができる。
したがって、背景画像Bよりも画面手前側に配置される複数の飾り図柄Zの輪郭部分よりも内側に輪郭内演出用の動画像Mを表示可能となる一方で、飾り図柄Zの輪郭部分の外側には「背景レイヤ」の背景画像Bを表示可能となるため、複数の表示レイヤを用いて所定の表示画面41aを作成することで、飾り特図変動表示ゲームの実行中に輪郭内演出用の動画像Mを表示しても、識別図柄(飾り図柄Z)及び背景画像Bの視認性の低下をより適正に抑制することができる。
したがって、飾り特図変動表示ゲームの実行中に、仮停止表示された複数の識別図柄(飾り図柄Z)の輪郭部分よりも内側に輪郭内演出用の動画像Mを表示可能となる一方で、飾り図柄Zの輪郭部分の外側には背景画像Bを表示可能となり、複数の識別図柄が仮停止表示されている状態で輪郭内演出用の動画像Mを表示しても、識別図柄(飾り図柄Z)及び背景画像Bの視認性の低下を抑制することができる。
次に、第2実施形態の遊技機10について説明する。
なお、基本的には、第1実施形態の遊技機10と同様の構成を有しており、以下、同様の構成を有する部分については同じ符号を付して説明を省略し、主に異なる部分について説明する。
図150に示す演出は、飾り特図変動表示ゲームにおいて、左、中、右の変動表示領域の各々で所定時間複数の飾り図柄(識別図柄)Zを変動表示した後、左、右の飾り図柄Zの変動表示をリーチ表示態様で停止し、その後、中の飾り図柄Zの変動表示を停止することで特別結果態様が導出されて大当りとなる演出である。
このとき、演出制御装置300は、背景画像Bよりも画面手前側に配置され、リーチ表示態様を構成する複数の飾り図柄Zのうち、少なくとも一の飾り図柄Zの輪郭部分よりも内側に輪郭内演出用の動画像Mが表示されるリーチ演出用の表示画面41aを作成して、表示装置41に表示させる。
なお、リーチ演出用の表示画面41aは、上記第1実施形態(変形例1〜3を含む)の手法を用いて作成可能であり、ここでは詳細な説明は省略する。
なお、飾り図柄Zについては、輪郭部分よりも内側部分の非透過状態を斜線付きで表し、透過状態を白抜きで表している。
また、図示は省略するが、左、中、右の変動表示領域に停止表示された飾り図柄Zの表示態様が特別結果態様以外となった場合にも、飾り図柄Zの輪郭部分よりも内側の透過及び輪郭内演出用の動画像Mの表示を停止する。
したがって、全ての飾り図柄Zの変動表示が停止するまで、すなわち、停止表示された複数の飾り図柄Zにより構成される結果態様が当りの結果態様或いははずれの結果態様となるまで、飾り図柄Zの輪郭部分よりも内側にて輪郭内演出用の動画像Mの表示が行われる(図150(b)〜図150(d)参照)。
したがって、背景画像Bよりも画面手前側に配置され、リーチ表示態様を構成する複数の飾り図柄Zのうち、少なくとも一の飾り図柄Zの輪郭部分よりも内側に輪郭内演出用の動画像Mを表示可能となる一方で、飾り図柄Zの輪郭部分の外側には背景画像Bを表示可能となり、飾り特図変動表示ゲームのリーチ状態にて輪郭内演出用の動画像Mを表示しても、識別図柄(飾り図柄Z)及び背景画像Bの視認性の低下を抑制することができる。
したがって、リーチ表示態様を構成する複数の飾り図柄Zのうち、仮停止表示される飾り図柄Zの輪郭部分よりも内側に輪郭内演出用の動画像Mを表示可能となり、リーチ演出の興趣性をより向上させることができる。
したがって、リーチ表示態様を構成する複数の飾り図柄Zのうち、変動表示中の飾り図柄Zの輪郭部分よりも内側に輪郭内演出用の動画像Mを表示可能となり、リーチ演出の興趣性をより向上させることができる。
具体的には、演出制御手段(演出制御装置300)は、リーチ表示態様を構成する複数の識別図柄(飾り図柄Z)のうち、変動表示中の識別図柄の変動表示速度を高速から低速に変化させ、当該変動表示中の識別図柄を遊技者が識別可能となる速度での変動表示中に、演出用の画像(輪郭内演出用の動画像M)を表示装置41に表示可能であることとなる。
したがって、リーチ表示態様を構成する複数の飾り図柄Zのうち、変動表示中の飾り図柄Zの変動表示速度が高速から低速に変化して遊技者が識別可能となる速度となった状態で、当該飾り図柄Zの輪郭部分よりも内側に輪郭内演出用の動画像Mを表示可能となり、リーチ演出の興趣性をより向上させることができる。
さらに、飾り図柄Zの輪郭部分は透過されないため、例えば、数字部分やキャラクタ部分の形状によっては、第1実施形態の「背景レイヤ」の背景透過部B1の形状を同一形状としても、飾り図柄Zとの境目部分の多少のずれは当該飾り図柄Zの輪郭部分によって吸収されることとなり、輪郭内演出用の動画像Mを違和感なく表示することが可能となる。同様に、変形例2の「合成背景レイヤ」における「図柄レイヤ」の図柄透過部Z1に対応する部分の形状を同一形状としても良い。
次に、第3実施形態の遊技機10について説明する。
なお、基本的には、第1実施形態の遊技機10と同様の構成を有しており、以下、同様の構成を有する部分については同じ符号を付して説明を省略し、主に異なる部分について説明する。
すなわち、遊技制御装置100による特図保留情報判定処理(図29参照)によって、始動記憶に基づく特図変動表示ゲームの開始タイミングより前に当該始動記憶に対応した結果関連情報(大当りか否かや変動パターンの種類)の判定(先読み処理)が行われ、先読み対象の始動記憶に基づく特図変動表示ゲームの結果を含む先読み図柄コマンドと、当該始動記憶に基づく特図変動表示ゲームでの変動パターンの情報を含む先読み変動パターンコマンドが演出制御装置300が送信される。
演出制御装置300は、遊技制御装置100からのコマンドを解析する受信コマンド解析処理(図76参照)を行って、先読み系コマンドの解析結果として先読み予告演出有無等の各種情報(先読み情報)を設定する(先読み系コマンド処理)。これにより、保留表示Hの表示態様を変更する先読み予告演出を行うか否かや、先読み予告演出を行う場合のその開始タイミング等が設定される。
なお、先読み予告演出の開始タイミングとしては、例えば、特図変動表示ゲームの実行中であればその特図変動表示ゲームが終了し、次の特図変動表示ゲームの実行が開始されるタイミングなどが挙げられる。
図151に示すように、モーション管理領域のアドレス領域は、モーション0用アドレス〜モーション14用アドレスをそれぞれ格納する15個の領域からなる。
ここで、モーション管理領域10のアドレス領域がモーション10(輪郭内演出)用アドレスを格納する領域である。
また、モーション管理領域0〜9のアドレス領域については、上記した変形例1と同様であり、モーション管理領域11〜14のアドレス領域については、上記した第1実施形態と同様である。
このとき、演出制御装置300は、背景画像Bよりも画面手前側に配置される複数の保留表示Hのうち、表示態様を変更させる何れかの保留表示H及び当該何れかの保留表示Hの周辺の保留表示Hの各々の輪郭部分よりも内側に輪郭内演出用の動画像Mが表示される所定の表示画面41aを作成して、表示装置41に表示させる。
なお、図152では、表示装置41に表示されている複数の保留表示Hのうち、左から4つ目(4ゲーム先の特図変動表示ゲームに対応する特図始動記憶)の保留表示Hの表示態様を変更する場合を例示しているが、一例であってこれに限られるものではない。
図152(c)に示すように、所定のキャラクタが落下していき、表示態様を変更させる保留表示H(左から4つ目の保留表示H)上に着地すると、図152(d)に示すように、所定のキャラクタが着地した保留表示H及び当該保留表示Hの周辺の保留表示H(左から3つ目と5つ目の各保留表示H)の各々の輪郭部分よりも内側を透過させて輪郭内演出用の動画像Mを表示する。
なお、保留表示Hについては、通常時(図152(a)等参照)では、輪郭部分よりも内側部分が非透過状態(例えば、色付きの状態)であり、この状態をドット付きで表している。また、保留表示Hの輪郭部分よりも内側部分の透過状態を白抜きで表している。
具体的には、図152(d)では、所定のキャラクタが着地した保留表示Hの輪郭部分よりも内側に輪郭内演出用の動画像Mとしての花火が表示された状態であり、図152(e)に示すように、花火が次第に大きく開いていくことで、所定のキャラクタが着地した保留表示Hの周辺の保留表示Hの各々の輪郭部分よりも内側にも花火が表示された状態となる。また、これらの保留表示Hの輪郭部分の外側でも、背景画像Bよりも画面手前側に輪郭内演出用の動画像Mとしての花火が表示された状態となる。
その後、図152(f)に示すように、輪郭内演出用の動画像Mの表示を停止して、所定のキャラクタが着地した保留表示Hの表示態様を他の保留表示Hとは異なる表示態様(例えば、異なる色)に変更するとともに、所定のキャラクタが着地した保留表示Hの周辺の保留表示Hの各々の輪郭部分よりも内側の透過を停止する。
なお、表示レイヤの構成は、下記に説明するものに限られず、上記第1実施形態(変形例1〜3を含む)で示した他の手法を用いても良い。
演出用表示レイヤには、後述する「保留レイヤ」の保留表示Hと積層方向に重なるように輪郭内演出用の動画像Mが配置されている。
なお、輪郭内演出用の動画像Mは、上記したように、例えば、花火がぱっと開く複数のフレーム画像からなる動画像を例示しているが、一例であってこれに限られるものではない。
この保留透過部H1も、上記した図柄透過部Z1および背景透過部B1と同様に、例えば、上記した演出表示編集処理にてαフラグがαありに設定されたり、エフェクトタイプ指定処理にてエフェクトタイプとして透過性(透明度)を持たせるエフェクトタイプ(1)が設定されたりすることで保留表示Hにおける保留透過部H1が透過された状態となる。
すなわち、輪郭内演出用の動画像Mとして、上記第1実施形態等と同様に、例えば、龍が画面右から画面左に流れるように移動する複数のフレーム画像からなる動画像を用いた場合の演出である。
図154(d)に示すように、所定のキャラクタが着地した保留表示H及び当該保留表示Hよりも右側の保留表示H、すなわち、所定のキャラクタが着地した保留表示Hに対応する始動記憶よりも後に記憶された始動記憶に対応する保留表示Hの各々の輪郭部分よりも内側を透過させて輪郭内演出用の動画像Mを表示する。
具体的には、図154(d)および図154(e)に示すように、所定のキャラクタが着地した保留表示H及び当該保留表示Hよりも右側の保留表示Hの輪郭部分よりも内側を透過させた状態で、輪郭内演出用の動画像Mとしての龍が画面右から所定のキャラクタが着地した保留表示Hまで流れるように移動する。
その後、図154(f)に示すように、輪郭内演出用の動画像Mの表示を停止して、所定のキャラクタが着地した保留表示Hの表示態様を他の保留表示Hとは異なる表示態様(例えば、異なる色)に変更するとともに、所定のキャラクタが着地した保留表示Hよりも右側の保留表示Hの各々の輪郭部分よりも内側の透過を停止する。
したがって、背景画像Bよりも画面手前側に配置される複数の保留表示Hのうち、表示態様を変更させる何れかの保留表示H及び当該何れかの保留表示Hの周辺の保留表示Hの各々の輪郭部分よりも内側に輪郭内演出用の動画像Mを表示可能となり、保留表示Hの表示態様を変更する場合に、始動記憶表示(保留表示H)の視認性の低下を抑制しつつ効果的な演出を行って、遊技の興趣の向上を図ることができる。
したがって、表示態様を変更させる何れかの保留表示H及び当該何れかの保留表示Hの周辺の保留表示Hの各々の輪郭部分よりも内側だけでなく、これらの保留表示Hの輪郭部分の外側でも、背景画像Bよりも画面手前側に輪郭内演出用の動画像Mを表示可能となり、保留表示Hの表示態様を変更する場合により効果的な演出を行うことができ、遊技の興趣の向上を図ることができる。
また、演出用の画像として、動画像Mを例示したが、一例であってこれに限られるものではなく、例えば、静止画像であっても良い。
次に、第4実施形態の遊技機10について説明する。
なお、基本的には、第1実施形態の遊技機10と同様の構成を有しており、以下、同様の構成を有する部分については同じ符号を付して説明を省略し、主に異なる部分について説明する。
図155は、客待ちデモ演出の動作タイミングを説明する図である。なお、図155中、時間値の単位は、msである。
ここで、「ウェイト」動作から「客待ち状態A」動作を完了するまでの期間では、例えば、音量、輝度、予告頻度等を設定可能なオプション設定画面が表示装置41に表示されないようになっている。
ここで、「ウェイト」動作の開始後もスピーカ19a、19bからは所定のBGMが所定の音量で出力されるが、「客待ち状態B」動作が開始されてから5000ms経過した時点から音量を次第に小さくしていき、15000msの時点で音量を「0(ゼロ)」として、無音状態とするようになっている。そして、無音状態で、盤装飾装置46による装飾内容を「客待ちB装飾」とする動作等が100000ms行われる。
また、「客待ち状態B」動作が開始されると、上記したオプション設定画面が表示装置41に表示されるようになっている。
また、「客待ちムービー音無し」動作は、予め機種毎に決められた時間(例えば、30000ms)行われるようになっている。
ここで、本実施形態の遊技機の表示装置41に表示される飾り特図変動表示ゲームの飾り図柄Zについて、図156を参照して説明する。
図柄1〜9は、図柄識別部分としての数字部分と目を模した装飾部分Z2とを有する一般図柄であり、数字部分の上部に重なるように装飾部分Z2が配置されている。また、図柄A〜Cは、図柄識別部分としての所定のキャラクタ(キャラクタ識別部分)と目を模した装飾部分Z2とを有する特殊図柄であり、所定のキャラクタの所定位置に装飾部分Z2が配置されている。ここで、図柄識別部分とは、識別図柄を互いに識別可能な部分のことである。例えば、一般図柄における数字部分や、特殊図柄における所定のキャラクタ等が挙げられるが、一例であってこれに限られるものではなく、例えば、フレーム部分を有する図柄の場合、フレーム部分の形状で互いに識別可能であれば当該フレーム部分を図柄識別部分としても良い。また、図柄識別部分としては、形状以外にも色を適用しても良い。
なお、特殊図柄は、所定のキャラクタ(キャラクタ識別部分)に装飾部分Z2が含まれて一体となって構成されていても良く、例えば、生き物を模したキャラクタの場合に、当該キャラクタを構成する目や口といった顔パーツを装飾部分Z2としても良い。
すなわち、図柄1〜9並びに図柄A〜Cの各飾り図柄Zには、互いに対応する装飾部分Z2が設けられている。
さらに、各飾り図柄Zには、例えば、種類の異なる装飾部分Z2が複数設けられていても良い。
また、飾り図柄Zのデータ構成としては、目を模した装飾部分Z2のデータと、一般図柄(図柄1〜9)の数字部分のデータや特殊図柄(図柄A〜C)の所定のキャラクタ部分のデータとが対応付けられていれば良く、例えば、別々に保存されていても良い。
図157(a)〜(c)は、飾り特図変動表示ゲームの停止結果態様の一例を示す図である。
そして、上記した客待ちデモ演出にて「呼び込み演出」動作が開始されると、図157(b)に示すように、停止表示されている複数の一般図柄(「図柄1、図柄2、図柄3」)の数字部分の位置を固定した状態で対応する装飾部分Z2同士を変化させる。
ここで、飾り図柄Z(一般図柄)の数字部分(図柄識別部分)の位置を固定した状態とは、数字部分自体の表示態様を変化させない状態の他、少なくとも数字部分の輪郭部分の位置が固定されている状態を含む。すなわち、少なくとも数字部分の輪郭部分の位置を固定した状態とすることで、遊技者に特図変動表示ゲーム(飾り特図変動表示ゲーム)の実行中であると誤認させないようにすることができる。例えば、図示は省略するが、装飾部分Z2の動作にあわせて当該輪郭部分よりも内側を透過させたり色を変更したりしても良いし、また、数字部分の輪郭部分よりも内側を透過させて上記実施形態1〜3の輪郭内演出用の動画像M(例えば、龍)を表示するようにしても良い。さらに、例えば、数字部分の輪郭部分自体を透過させたり色を変更したりエフェクトを出したりしても良く、このとき、輪郭部分の色と盤装飾装置46や枠装飾装置18のランプ(LED)の色とを同色とするようにしても良い。
また、装飾部分Z2の変化の態様としては、例えば、目を模した装飾部分Z2の場合には、瞬き、ウインク、目を閉じる等が挙げられ、車を模した装飾部分Z2の場合には、タイヤの回転、排気ガスの噴出等が挙げられ、草花を模した装飾部分Z2の場合には、出蕾、開花、花びらを散らす等が挙げられる。
したがって、表示装置41に停止表示されている飾り図柄Zの図柄識別部分については位置が固定した状態であるため、遊技者に変動表示ゲームの実行中(変動中)であると誤認させることがなく、この状態で飾り図柄Zの装飾部分Z2を動作させることで、客待ちデモ演出自体の興趣性を向上させて、遊技者に興味を抱かせることが可能な客待ちデモ演出を実行することができる。
したがって、表示装置41に停止表示されている複数の飾り図柄Zで装飾部分Z2同士を変化させることで、客待ちデモ演出自体の興趣性をより向上させて、客待ちデモ演出中であっても遊技者により興味を抱かせることが可能となる。
したがって、表示装置41に停止表示されている一般図柄及び特殊図柄の装飾部分Z2を変化させることで、客待ちデモ演出自体の興趣性をより向上させて、客待ちデモ演出中であっても遊技者により興味を抱かせることが可能となる。
すなわち、表示装置41に飾り図柄Zが停止表示されている状態で、装飾部分Z2のうち、数字部分と重なり合っている部分を動作させることで、相対的に数字部分については動作していないことをより明確に遊技者に把握させることができ、遊技者に変動表示ゲームの実行中(変動中)であると誤認させることがなくなる。
次に、第5実施形態の遊技機10について説明する。
なお、基本的には、第1実施形態の遊技機10と同様の構成を有しており、以下、同様の構成を有する部分については同じ符号を付して説明を省略し、主に異なる部分について説明する。
また、図159(b)に示すように、数字部分Zn及びフレーム部分Zfが数字部レイヤに描画されるとともに、キャラクタ部分Zcがキャラクタ部レイヤに描画される。複数の表示レイヤを順次重ねて1つの表示画面41aを作成する際、数字部レイヤは、キャラクタ部レイヤよりも画面奥側に配置される。
同様に、左図柄の数字部分Zn及びフレーム部分Zfが描画される左図柄数字部レイヤと、右図柄の数字部分Zn及びフレーム部分Zfが描画される右図柄数字部レイヤと、中図柄の数字部分Zn及びフレーム部分Zfが描画される中図柄数字部レイヤとを区別しない場合、単に数字部レイヤと称する。
同様に、左図柄のキャラクタ部分Zcが描画される左図柄キャラクタ部レイヤと、右図柄のキャラクタ部分Zcが描画される右図柄キャラクタ部レイヤと、中図柄のキャラクタ部分Zcが描画される中図柄キャラクタ部レイヤとを区別しない場合、単にキャラクタ部レイヤと称する。
図160に示すように、モーション管理領域のアドレス領域は、モーション0用アドレス〜モーション13用アドレスをそれぞれ格納する14個の領域からなり、背景モーション、予告Aモーション、予告Bモーション、中図柄数字部モーション、左図柄数字部モーション、右図柄数字部モーション、図柄間演出モーション、中図柄キャラクタ部モーション、左図柄キャラクタ部モーション、右図柄キャラクタ部モーション、保留モーション、予告Gモーション、予告Hモーション、第4図柄モーションを実行可能である。
すなわち、モーション管理領域3のアドレス領域が中図柄数字部用アドレスを格納する領域であり、モーション管理領域4のアドレス領域が左図柄数字部用アドレスを格納する領域であり、モーション管理領域5のアドレス領域が右図柄数字部用アドレスを格納する領域であり、モーション管理領域6のアドレス領域が図柄間演出用アドレスを格納する領域であり、モーション管理領域7のアドレス領域が中図柄キャラクタ部用アドレスを格納する領域であり、モーション管理領域8のアドレス領域が左図柄キャラクタ部用アドレスを格納する領域であり、モーション管理領域9のアドレス領域が右図柄キャラクタ部用アドレスを格納する領域である。
また、モーション管理領域0〜2、10〜13のアドレス領域については、上記した第1実施形態の変形例1と同様である。
また、第1実施形態および第2実施形態において、モーションの数は14つに限られない。モーションの数は機種仕様により増減し、第1実施形態および第2実施形態では、なるべく少数に限定して説明している。
また、モーション4(左図柄数字部)用アドレスおよびモーション8(左図柄キャラクタ部)用アドレスを格納するアドレス領域、すなわちモーション管理領域4およびモーション管理領域8のアドレス領域は、同一のシナリオ(左図柄用シナリオ)によって同時に使用される。
また、モーション5(右図柄数字部)用アドレスおよびモーション9(右図柄キャラクタ部)用アドレスを格納するアドレス領域、すなわちモーション管理領域5およびモーション管理領域9のアドレス領域は、同一のシナリオ(右図柄用シナリオ)によって同時に使用される。
なお、図示は省略するが、本実施形態では、第1実施形態と同様、仮想描画空間326aは、モーション管理領域0用描画領域〜モーション管理領域13用描画領域の14個の描画領域に分かれている。各描画領域は、対応するモーション管理領域の番号順に並んでおり、各描画領域に、矩形画像または指定画像が描画された表示レイヤが記憶される。
図161(a)〜(e)は、客待ちデモ演出の「呼び込み演出」動作における演出の一例を示す図である。
そして、上記した客待ちデモ演出にて「呼び込み演出」動作が開始されると、図161(b)に示すように、停止表示されている複数の飾り図柄Zのうち、中図柄のキャラクタ部分Zcを数字部分Znから離間させるように動作させる。具体的には、飾り図柄Zにおける数字部分Znが配置されているフレーム部分Zfからキャラクタ部分Zcを抜け出させるように動作させる。つまり、フレーム部分Zfによって区画される領域(外縁部)を超えてキャラクタ部分Zcを動作させる。なお、図示は省略するが、例えば、飾り図柄Zがフレーム部分Zfを有しない構成の場合、すなわち、キャラクタ部分Zcと数字部分Znとが接触していたり重なり合っていたりする場合には、キャラクタ部分Zcを数字部分Znから離間させる動作には、キャラクタ部分Zcと数字部分Znとが接触しないようにしたり重なり合わないようにしたりする動作が含まれる。
また、図161(c)に示すように、フレーム部分Zfから抜け出したキャラクタ部分Zcは、表示領域内を移動したり所定の動作を行ったりする。
ここで、「呼び込み演出」動作の終了条件としては、例えば、打球発射装置により遊技球を発射するための遊技者による操作部24の回動操作の検出、遊技者による操作部24に対するタッチ操作の検出、表示装置41による次回の変動表示ゲームの開始、遊技者による音量や輝度等の調整等が挙げられる。なお、操作部24に対するタッチ操作の検出は、例えば、図示しないタッチセンサから出力される信号が遊技制御装置100や演出制御装置300に入力されることにより行われる。
図161(d)は、表示装置41による次回の飾り特図変動表示ゲームの開始を「呼び込み演出」動作の終了条件とした場合の演出の一例である。この演出では、左、中、右の飾り図柄Zのうち、フレーム部分Zfからキャラクタ部分Zcが抜け出していない左図柄及び右図柄の変動表示は、直ぐに開始されるのに対して、フレーム部分Zfからキャラクタ部分Zcが抜け出している中図柄は、キャラクタ部分Zcを当該フレーム部分Zfに戻す動作の時間分だけ遅れて変動表示が開始されることとなる(図161(e)参照)。ここで、中図柄のフレーム部分Zfにキャラクタ部分Zcが戻っている動作中に、当該フレーム部分Zfの後側で飾り図柄Zの変動表示(高速変動)が行われている様子が表示されても良い。
したがって、表示装置41に停止表示されている飾り図柄Zの数字部分Znについては位置が固定した状態であるため、遊技者に変動表示ゲームの実行中(変動中)であると誤認させることがなく、この状態で飾り図柄Zの装飾部分Zcを数字部分Znから離間させるように動作させることで、客待ちデモ演出自体の興趣性を向上させて、遊技者に興味を抱かせることが可能な客待ちデモ演出を実行することができる。
したがって、表示装置41に停止表示されている飾り図柄Zのフレーム部分Zf及び数字部分Znについては固定した状態で、フレーム部分Zfによって区画される領域を超えてキャラクタ部分Zcを動作させることで、客待ちデモ演出自体の興趣性をより向上させて、客待ちデモ演出中であっても遊技者により興味を抱かせることが可能となる。
したがって、フレーム部分Zfによって区画される領域を超えて動作させているキャラクタ部分Zcを当該フレーム部分Zfによって区画される領域に戻すように動作させることで、客待ちデモ演出自体の興趣性をより向上させて、遊技者により興味を抱かせることが可能となるとともに、例えば、客待ちデモ演出の終了後、次回の変動表示ゲーム(飾り特図変動表示ゲーム)を開始する際に、見た目上、キャラクタ部分Zcがフレーム部分Zfによって区画される領域を超えたままで飾り図柄Zの変動表示が開始されてしまうといったことがなくなる。
具体的には、特定演出(客待ちデモ演出)の終了条件は、表示装置41による次回の変動表示ゲーム(飾り特図変動表示ゲーム)の開始の指示を含み、特定演出制御手段(演出制御装置300)は、表示装置41による次回の変動表示ゲームの開始が指示されると、フレーム部分Zfによって区画される領域を超えて動作させているキャラクタ部分Zcを当該フレーム部分Zfによって区画される領域に戻すように動作させた後、特定演出を終了させ、表示装置41は、次回の変動表示ゲームを開始させることとなる。
したがって、客待ちデモ演出自体の興趣性をより向上させるために、飾り図柄Zのフレーム部分Zfによって区画される領域を超えてキャラクタ部分Zcを動作させても、次回の飾り特図変動表示ゲームの開始前には、キャラクタ部分Zcをフレーム部分Zfによって区画される領域に戻すことで、フレーム部分Zfにキャラクタ部分Zcが位置している通常の飾り図柄Zを用いて次回の飾り特図変動表示ゲームを適正に行うことができる。
次に、第6実施形態の遊技機10について説明する。
なお、基本的には、第1実施形態の遊技機10と同様の構成を有しており、以下、同様の構成を有する部分については同じ符号を付して説明を省略し、主に異なる部分について説明する。
すなわち、演出制御装置300のFeRAM(履歴情報記憶手段)323は、当該遊技機の遊技の状況に関する履歴情報を記憶する。この履歴情報として記憶される遊技の状況としては、例えば、特図変動表示ゲームの結果が大当りとなった回数や、遊技状態が低確率状態(普電サポートなし状態)で特図変動表示ゲームの結果が大当りとなった回数や、遊技状態が低確率状態(普電サポートなし状態)で特図変動表示ゲームが実行された回数(いわゆる、回転数)、特図変動表示ゲームの結果が大当りとなることに基づき発生した特別遊技状態の終了後の遊技状態が高確率状態或いは時短状態となった回数等が挙げられる。また、FeRAM323は、電力が供給されなくとも記憶内容を保持可能であるため、電源投入後の遊技の状況を当日の履歴情報とし、また、電源断1回前の遊技の状況を前日の履歴情報として記憶する。
なお、本実施形態では、FeRAM323には、当日及び前日の履歴情報が記憶されているが、前日以前の所定期間内(例えば、3日前まで等)の履歴情報が記憶されていても良い。また、例えば、連続して2回以上電源投入と電源遮断(電源の入切する操作を複数回実行)することで全て(前日・当日)の履歴情報をクリアするようにしてもよいし、他の方法(例えば、専用のクリアスイッチやRAMクリアスイッチの操作等)を用いてクリアするようにしても良い。
ここで、所定の音声の内容を決定する手法について、図162〜図164を参照して説明する。
図162は、状態判定テーブルTaの一例を示す図である。図162に示すように、状態判定テーブルTaは、当日の大当り回数を表す当日当り回数と、前日の大当り回数を表す前日当り回数と、後述する呼び込み演出内容テーブルTbの中で参照する欄を表す参照テーブル欄とが対応付けられている。
例えば、当日当り回数が「0〜10回」で前日当り回数が「0〜10回」の場合、参照テーブル欄が「デフォルト」であり、演出制御装置300は、呼び込み演出内容テーブルTbの中で「デフォルト」の欄を参照して所定の音声の内容を決定する。同様に、当日当り回数が「11回以上」で前日当り回数が「0〜10回」の場合、参照テーブル欄が「当日良状態」であり、演出制御装置300は、呼び込み演出内容テーブルTbの中で「当日良状態」の欄を参照して所定の音声の内容を決定する。同様に、当日当り回数が「0〜10回」で前日当り回数が「11回以上」の場合、参照テーブル欄が「当日悪状態」であり、演出制御装置300は、呼び込み演出内容テーブルTbの中で「当日悪状態」の欄を参照して所定の音声の内容を決定する。同様に、当日当り回数が「11回以上」で前日当り回数が「11回以上」の場合、参照テーブル欄が「前日良状態」であり、演出制御装置300は、呼び込み演出内容テーブルTbの中で「前日良状態」の欄を参照して所定の音声の内容を決定する。
なお、上記した状態判定テーブルTaの内容は、一例であってこれに限られるものではなく、適宜任意に変更可能である。また、状態判定テーブルTaは、例えば、PROM321に記憶されているものとする。
図163は、呼び込み演出内容テーブルTbの一例を示す図である。また、図164は、音声パターンテーブルの一例を示す図である。
図163に示すように、呼び込み演出内容テーブルTbは、遊技機の状態を表す状態と、後述する台詞内容を指定する演出パターンと、台詞内容1〜5とが対応付けられている。遊技機の状態を表す状態には、上記したように「デフォルト」、「当日良状態」、「当日悪状態」、「前日良状態」の4つがある。そして、これら4つの状態の各々について、演出パターンとしてパターン1〜6がそれぞれ規定されている。パターン1〜6の各々には、互いに異なるボイスパターンで台詞内容1〜5がそれぞれ規定されている。
ここで、台詞内容1〜5のボイスパターンは、図164に示すように、音声ROM327に記憶されている音声パターンテーブルTcに規定されており、例えば、19種類ある。具体的には、ボイスパターン1としての「(笑い声1)」、ボイスパターン2としての「いらっしゃい〜」、ボイスパターン3としての「うらめしや〜」、ボイスパターン4としての「ひえぇー」、ボイスパターン5としての「おほっほっほ」、ボイスパターン6としての「おいでおいでおいで」、ボイスパターン7としての「よってらっしゃい」、ボイスパターン8としての「力が湧いてきたべ〜」、ボイスパターン9としての「迷っているキミ」、ボイスパターン10としての「今日はヒマだなぁ〜」、ボイスパターン11としての「地縛霊になっちゃいそうだ〜」、ボイスパターン12としての「まってたよ〜」、ボイスパターン13としての「こっちこっちこっち」、ボイスパターン14としての「座ってみてよ?」、ボイスパターン15としての「最近は絶好調だべ」、ボイスパターン16としての「今日は調子イイ!」、ボイスパターン17としての「今日はツイてる」、ボイスパターン18としての「なにかが起りそうだ?」、ボイスパターン19としての「(笑い声2)」がある。
なお、各ボイスパターンは、音声として出力される長さ「尺」と次のボイスパターンとの間の長さ「インターバル」がそれぞれ規定されている。また、上記した音声(ボイスパターン)以外にも、効果音(SE)やBGMや無音(音パターン)を適用しても良い。
ここで、ランダムに何れか一のパターンを選択する場合、例えば、パターン1〜6の中から全てのパターンが選択された状態となるまで、既に選択済みのパターンを除外して次回のパターンの選択を行うようにしても良いし、また、直前に使用された乱数によって抽選、或いは直前の変動パターンに対応して一のパターンを選択してもよい。また、パターン1〜6の順にパターンを選択する場合において、客待ちデモ演出の終了が指示されると、パターン1〜6のどこまで選択されたかを記憶しておき、次回客待ちデモ演出を実行する際に前回の続きからパターンの選択を行うようにしても良い。これにより、「呼び込み演出」動作にて、特定のパターンが偏って選択されて特定の音声(台詞)のみが出力されてしまうことを防止することができる。
また、盤演出装置44は、例えば、図柄C(図156参照)のように、提灯に目と口を付けて擬人化したキャラクタを模した外形をなしている。そして、可動演出部材44aの上下方向の動作が口の開閉動作に相当しており、スピーカ19a、19bからの所定の音声の出力に同期させて可動演出部材44aを上下方向に動作させることで、目と口を有する擬人化した提灯(盤演出装置44)が恰も話しかけているような演出を行うことが可能となる。また、盤演出装置44(可動演出部材44a)は、所定の音声と同期して動作する場合、動作しない場合及びゲームの演出に同期して動作する場合において、LEDによって発光可能であり、各場合において特有の発光態様や、全ての場合に共通の発光態様がある。
すなわち、「呼び込み演出」動作を実行するか否かをホール設定として設定可能に構成され、例えば、ホールのスタッフによる遊技機10の裏面側の調整用スイッチ(図示略)の所定操作や、演出操作部550の所定操作に基づいて各種の設定が行われるようになっている。具体的には、例えば、「呼び込み演出」動作を実行するか否かや、「呼び込み演出」動作を実行する場合の音量(例えば、最大音量、最小音量(音量0「ゼロ」;消音も含む))や、「呼び込み演出」動作を音声の出力のみで実行するか、或いは、出力される音声の内容画像の表示のみで実行するか、或いは音声の出力と内容画像の表示の両方で実行するか等を設定することが可能となる。
なお、「呼び込み演出」動作を実行する場合の音量は、デフォルトとして指定されていても良いし、音量、輝度、予告頻度等を設定可能なオプション設定画面にて遊技者による所定操作に基づいて音量が設定されている場合には、設定されている音量を援用して「呼び込み演出」動作を実行する場合の音量としても良いが、ホール設定として「呼び込み演出」動作を実行する場合の音量が設定されている場合、ホール設定を優先するようにしても良い。
また、ホール設定の内容、遊技者による設定内容等は、FeRAM323に記憶されてバックアップされても良い。
この「呼び込み演出」動作処理は、遊技制御装置100から客待ちデモコマンドが送信されて演出制御装置300により受信された場合に実行される。
図167に示すように、先ず、ホール設定として、客待ちデモ演出の「呼び込み演出」動作を実行する設定がなされているか否かを判定する(ステップF101)。
一方、「呼び込み演出」動作を実行する設定がなされている場合(ステップF101;Y)、演出制御装置300は、FeRAM323から当該遊技機の当日及び前日の遊技の状況に関する履歴情報を取得する(ステップF102)。ここでは、ホール設定として、「呼び込み演出」動作を実行する場合の音量、「呼び込み演出」動作を音声の出力と内容画像の表示の両方で実行する設定がなされているものとする。なお、遊技者による音量の設定はなされておらず、デフォルトの状態(例えば、電源投入時や工場出荷時の状態)とする。
一方、「呼び込み演出」動作の実行タイミングであると判定されると(ステップF106;Y)、演出制御装置300は、特定された台詞内容1〜5に対応する所定の音声を順に、ホール設定での音量で所定のインターバルを空けてスピーカ19a、19bから出力させるとともに、表示装置41に出力される所定の音声の内容画像を表示させ、さらに、これら音声の出力及び内容画像の表示と同期させて可動演出部材44aを上下方向に動作させる(ステップF107)。
そして、例えば、遊技者による打球発射装置の操作部24の操作の検出等に基づいて、「呼び込み演出」動作の終了条件が成立したか否かを判定し(ステップF108)、終了条件が成立していない場合には、ステップF107に戻り、一方、終了条件が成立した場合(ステップF108;Y)には、当該「呼び込み演出」動作処理を終了する(ステップF109)。
したがって、当該遊技機10の所定期間内の遊技の状況を考慮して、客待ちデモ演出にてスピーカ19a、19bから出力される所定の音声の内容を決定し、決定された内容の所定の音声を出力することで、客待ちデモ演出自体の興趣性を向上させて、遊技者に興味を抱かせることが可能な客待ちデモ演出を行うことができるとともに、客待ち用の演出が単調とならずに当該客待ちデモ演出に遊技者が飽きてしまうことを防止することができる。
すなわち、客待ちデモ演出の「呼び込み演出」動作ではスピーカ19a、19bから所定の音声が出力されることから、他の遊技者に迷惑をかけたり不快感を与えたりする虞があるため、例えば、ホール設定で客待ちデモ演出を実行するか否かを設定しておくことで、上記のような問題が生じることを防止することができる。
したがって、客待ちデモ演出にて、スピーカ19a、19bからの所定の音声の出力と同期させた演出態様に可動演出部材44aを動作させることで、客待ちデモ演出自体の興趣性をより向上させて、遊技者により興味を抱かせることが可能な客待ちデモ演出を行うことができるとともに、当該客待ちデモ演出に遊技者が飽きてしまうことをより適正に防止することができる。
したがって、客待ちデモ演出にて、表示装置41による所定の音声の内容画像の表示と同期させた演出態様に可動演出部材44aを動作させることで、客待ちデモ演出自体の興趣性をより向上させて、遊技者により興味を抱かせることが可能な客待ちデモ演出を行うことができるとともに、当該客待ちデモ演出に遊技者が飽きてしまうことをより適正に防止することができる。
加えて、遊技機の当日や前日以前の履歴情報をQRコード(登録商標)に代表される二次元パターンコード化して表示装置41に表示しても良く、これにより、遊技者が携帯端末(図示略)の撮像部で撮像して読み取ることで、スピーカ19a、19bからの音声の出力や表示装置41による音声の内容の表示からは把握させ難い当該遊技機のより詳細な状態を、遊技者に把握させ易くすることができる。
100 遊技制御装置(遊技制御手段、始動記憶手段)
41 表示装置
41a 表示画面
44 盤演出装置
44a 可動演出部材
300 演出制御装置(演出制御手段、作成手段、表示制御手段、特定演出制御手段、可動演出部材制御手段)
321 PROM(テーブル記憶手段)
323 FeRAM(履歴情報記憶手段)
B 背景画像
B1 背景透過部
H 保留表示(始動記憶表示)
H1 保留透過部
M 動画像
Z 飾り図柄(識別図柄)
Z1 図柄透過部
Z2 装飾部分
Zc キャラクタ部分
Zf フレーム部分
Zn 数字部分(図柄識別部分)
Claims (2)
- 始動口への遊技球の入賞に基づき、複数の識別図柄を変動表示する変動表示ゲームを実行し、当該変動表示ゲームの結果態様が予め定められた特別結果態様となった場合に、遊技者にとって有利な特別遊技状態を発生可能な遊技機において、
表示装置と、
前記始動口への遊技球の入賞に基づき、前記変動表示ゲームの実行権利を始動記憶として所定の上限数まで記憶可能な始動記憶手段と、
前記始動記憶手段に記憶された始動記憶に関する情報を示す始動記憶表示及び演出用の画像を前記表示装置に表示させる演出制御手段と、を備え、
前記演出制御手段は、
前記表示装置に表示される表示画面を作成する作成手段と、
前記作成手段によって作成された表示画面を前記表示装置に表示させる表示制御手段と、を有し、
前記作成手段は、背景画像よりも画面手前側に配置される複数の前記始動記憶表示のうち、表示態様を変更させる何れかの始動記憶表示である対象始動記憶表示及び当該対象始動記憶表示の周辺の始動記憶表示である周辺始動記憶表示の各々の輪郭部分よりも内側を透過させて前記演出用の画像が表示される所定の表示画面を作成可能であり、
前記所定の表示画面による演出において、前記対象始動記憶表示及び前記周辺始動記憶表示の各々の輪郭部分は視認可能な状態を維持し、
前記所定の表示画面による演出が終了すると、前記対象始動記憶表示は当該演出の開始前とは異なる表示態様となり、前記周辺始動記憶表示は当該演出の開始前と同じ表示態様へと戻ることを特徴とする遊技機。 - 前記作成手段は、前記背景画像よりも画面手前側に前記演出用の画像が表示される前記所定の表示画面を作成可能であることを特徴とする請求項1に記載の遊技機。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016176467A JP6582226B2 (ja) | 2016-09-09 | 2016-09-09 | 遊技機 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016176467A JP6582226B2 (ja) | 2016-09-09 | 2016-09-09 | 遊技機 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018038730A JP2018038730A (ja) | 2018-03-15 |
JP6582226B2 true JP6582226B2 (ja) | 2019-10-02 |
Family
ID=61624408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016176467A Active JP6582226B2 (ja) | 2016-09-09 | 2016-09-09 | 遊技機 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6582226B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7030340B2 (ja) * | 2019-03-01 | 2022-03-07 | 日本ソセー工業株式会社 | 容器回転式混合装置用パドル |
JP7095875B2 (ja) * | 2019-02-18 | 2022-07-05 | 株式会社ソフイア | 遊技機 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6507405B2 (ja) * | 2013-04-02 | 2019-05-08 | 株式会社三共 | 遊技機 |
JP5991768B2 (ja) * | 2015-03-26 | 2016-09-14 | サミー株式会社 | ぱちんこ遊技機 |
JP2016104144A (ja) * | 2015-12-07 | 2016-06-09 | 株式会社ソフイア | 遊技機 |
-
2016
- 2016-09-09 JP JP2016176467A patent/JP6582226B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018038730A (ja) | 2018-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6600785B2 (ja) | 遊技機 | |
JP6496287B2 (ja) | 遊技機 | |
JP6060467B1 (ja) | 遊技機 | |
JP2018038722A (ja) | 遊技機 | |
JP6060466B1 (ja) | 遊技機 | |
JP6643570B2 (ja) | 遊技機 | |
JP2017086379A (ja) | 遊技機 | |
JP2015116279A (ja) | 遊技機 | |
JP6957786B2 (ja) | 遊技機 | |
JP2017136233A (ja) | 遊技機 | |
JP6582226B2 (ja) | 遊技機 | |
JP6060468B1 (ja) | 遊技機 | |
JP6546572B2 (ja) | 遊技機 | |
JP2018038723A (ja) | 遊技機 | |
JP2017086921A (ja) | 遊技機 | |
JP6326118B2 (ja) | 遊技機 | |
JP6348894B2 (ja) | 遊技機 | |
JP2020116070A (ja) | 遊技機 | |
JP2017086920A (ja) | 遊技機 | |
JP6510957B2 (ja) | 遊技機 | |
JP6500191B2 (ja) | 遊技機 | |
JP6609771B2 (ja) | 遊技機 | |
JP2017136225A (ja) | 遊技機 | |
JP2017136230A (ja) | 遊技機 | |
JP6586809B2 (ja) | 遊技機 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180911 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181107 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190423 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190614 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190730 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190802 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6582226 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |