さて、いよいよ1ゲームのボールナンバーにより、最終配置を与えることができるようになったはずなので、それを証明するべく、全消しパターンをやってみる。
配置は以下。このあと24,10,1,3,4と来ると全消しリーチになるらしい。
もとの画像は以下。これはyoutubeのを参考にさせてもらっている。そして実際に「手入れ」で上記番号を入れたものが以下。完全に一致している。ということで我のプログラミングはおそらくあっていることが予想できる。さて、いよいよ1ゲームのボールナンバーにより、最終配置を与えることができるようになったはずなので、それを証明するべく、全消しパターンをやってみる。
配置は以下。このあと24,10,1,3,4と来ると全消しリーチになるらしい。
もとの画像は以下。これはyoutubeのを参考にさせてもらっている。そして実際に「手入れ」で上記番号を入れたものが以下。完全に一致している。ということで我のプログラミングはおそらくあっていることが予想できる。いよいよ起爆処理を施せるようになった。
爆弾からどんどん隣接する爆弾に誘爆されていく様子…を示したいのだが画像では厳しい。一応下の画像では特に輝いている部分が次起爆準備をしているところ。
24番の数字は起爆の爆風により上に上昇中の爆弾である。
とりあえず演出だけそれっぽく爆弾が上に行くようにした。
本当はなんかほかにきらきらみたいなエフェクトがつくが、まあこれはいつでも作れるだろうから置いておく。次はもちろん上部に保留される爆弾の配置である。とりあえずHITからの落下処理を作りその後連鎖処理を爆弾の上昇処理を除き完成。
HITした場所に[HIT!]と表示されるようになり、そのマスが消える。とりあえず数字をシャッフルし、さらにそこにランダムで爆弾などを付与するところまでは行った。まあまあ行ってそうにみえるが、これでも初期配置を指定しただけである…。
なんかメテオなどの存在感が薄いがそのあたりはまあ後々調整するとして、ここからHITによる爆発または消去、そして連鎖処理を行うこととなる。一応連鎖処理は演出付きで準備をしているが、それにつなげるためには先ほどの処理が必要となる。いつぞやの8ゲームBETシステムを引っ張ってきて、また数字が宝箱に収まるように微調整。
ここまで行けば次はいよいよゲーム開始時として、番号と爆弾の配置を行うことになる。とりあえずタブだけ設置した。いやしかしここからやっていくのはなかなか大変や。まあとりあえず初期配置くらいまではまずは行きたいところ。
さてGWになったということで、この空き時間(5月6日に試験があるが)を利用して、メテオボンバーを再現しようかと考えている。しかしせっかくなので以前の自作アニマロッタへの転用ができるようにプログラムを組もうと思っている。
メテオボンバーを再現するなどいったいどうすんねん、と思うだろうがまあなんかいじくっているうちにできるだろうと予想している。できればGWが終了するまでには自分で遊べてかつPO率調整までできるようにしたいと考えている。
しかしながらまずは画像と音声から探さなければならない。これだけでかなり時間がかかるが、地道にやっていくしかない。まずは画像の切り取り作業からである。なんちゅう地味な作業…しかしいずれひかえる感動を我は見据えている。
なんやこの地味に削り取ったりしていく作業は…。いやしかしこれは未来への希望やもしメテオボンバーを本物に近い感じで、自宅に再現出来たら面白いのではないか?
そしてそれでPO管理ができればさらに面白いのではないか?
…ということで、ちょっとメテオボンバー再現を視野に入れてみようかと考えている。こちらは楽しい演出を是非ともつけたいところである。我よ、我を楽しませよ
さて、メテオボンバーの実装にあたりまずは音源や画像の抽出が必要ではあるが、たぶんyoutubeの配信か何かで効果音のみ抽出できる動画があるだろう。さらに画像についてはコナステが奇しくもすばらしい画像を提供してくれる。この2つとあとはプログラミング能力さえあれば、メテオボンバーの作成が可能ではないかと考えている。
かつての自作アニマロッタに組み込めるか…?もはや数年前に作成した自作アニマロッタなので、変数などのつながりをたぶん忘れているからそのリハビリからやるか…。
まずはこれまで定義した「標準設定」で、宝箱の結合をなくした場合のメダルの推移を見ていく。
宝箱の結合がないほうが、1000ゲームでのPO率は60%台(ただし全消しなどにより1000ゲーム程度ではPO率が変動しやすいので正確に60%とはいえない)と若干良いことが分かる。誰や宝箱結合システムを考えついたのは。ここではメテオボンバーを以下の規則に従ってランダム配置を行い、そのPO率の収束先を見る実験を行う。
①数字は63マスに均等に配置される
②爆弾、メテオはどのマスにも出現する可能性があり、各番号8%の確率で爆弾またはメテオに変化する。
③爆弾またはメテオに変化した場合、爆弾:メテオ右下:メテオ左下の出現割合は2:1:1とする
④各マスの配置は、隣り合うマスが同じ色とならないようにランダムで配置される
⑤宝箱は結合1個または2個でランダムで選ばれるが、そのパターンはすべて同一確率とする
上記の規則に従い初期配置を決めた場合のPO率の収束先を調べる。
とりあえず1000000回試行させてみたところ、PO率は55.3%となった。
ちょっとこれではよくわからないので、メダルが100万枚あるとして1回のゲーム当たりメテオボンバー超超マルチMAXBETを行う、すなわち3000*10=30000BETとしてシミュレートする。
以下メモ。各宝箱の配置パターン別のPO率
{1000000,{0.588181,0.614962,0.620759,0.635547,0.6036,0.573351,0.547079,0.525657,0.542052,0.468027,0.569318,0.560581,0.511308,0.569891,0.539529,0.529537,0.49237,0.540183,0.558625,0.532266,0.482372},0,0.552714}
メテオボンバーがアニマ6のペイアウト管理を特徴づける雰囲気が強いということで、実際にメテオボンバーをランダム配置、数字もランダム配置して、ペイアウト率を70%,80%,90%などに近づけるプログラムを作って、そのメテオボンバーの強力さを知らしめよう(?)かと思う。
というかこれを応用したものがもしかすると実機のアニマロッタにも採用されていたりして…?
なおランダム配置にあたり、本物の挙動に近づけるために以下の規則に従うものとする。
これらは実測データによるものであり、ゲームそのものの性質を示しているわけではない。
①爆弾やメテオはいかなる位置にも出現しうる
②メテオの個数は6~13個などと幅があるので、半分の確率で爆弾かメテオかが選ばれる
③生爆弾種別は3~6個くらいなので数字のうち8%がそれに変化することにする
④数字は下の方におおむね出やすいがこれはランダムとする
この条件のもとパターンを自動生成し、その設定を100回程度あらかじめシミュレートし、おおむねパターンのPO率が高いか低いか(100回程度なので十の位のPO率も把握できないがある程度の指標にはなる)を把握し、設定PO率に近づくようにパターンの再選択を行い、その流れでゲームを繰り返す、というもの。
実機ではこのあたりをどのようにやっているかは不明だが、確か2ステーションの状況を統括するPCが内部にもう1台埋め込まれているといわれているので、リーチ処理の番号の期待値計算などもこちらで行っており、そのPC間で入力と出力をやりとりしているのではないかと推測される。
現在絶賛稼働中のメテオボンバープログラムだが、やはり100回の試行に3~4秒かかっているようでは、1000000回の試行に30000~40000秒と、9時間~11時間やはりかかっているので1つのパターンをある程度調べるのに半日かかってしまう。これはさすがにつらいので、なんとかして処理の低減化を図れないか考えている。
一応我のメテオボンバープログラムは以下の部位に大まかに分けられている。
①HIT処理、該当マス消去、爆発フラグ起動等
②爆発時爆発の広がりループ、宝箱オッズアップ
③爆弾の上昇
④マス落下処理
⑤連鎖処理 ④へ戻る。連鎖がなければ⑥へ
⑥爆弾落下処理
⑦宝箱開閉判定(都度必要。でないと既開封箱がオッズアップしてしまう) 終了まで①から
⑧最終オッズ判定、結果取得、次ゲーム準備
これらからなんとかして処理の軽減をしたい。もし半分にでもなればかなり強力。
以下プログラムの一部。
実はたぶん無駄な部分が結構あるが、おそらく処理速度に影響を与えないし変に消しておかしくなったら嫌なのでそのままにしている。爆弾が保留されていくプログラムの部分とかをもう少し簡略にできないか…。チェーンならば各列に順番は関係なく最終結果を得られるのだが…。メテオボンバーは爆弾の並び順が特殊な方式に従って決まるのでそこをとりあえず再現して、以降そのままになっている。ただここを変えた時はちゃんと変えた後も同一の結果を得るかどうかを念入りにチェックしなければならない。ログインボーナスがうまいことはじけて、つかの間の豪遊(当時に比べればあまりに小さいBETだが)を行うことができた。まあいくらメダルを増やそうがもはや何の意味もなしていないという現実にふと帰るのだが…。しかしメテオボンバーのいい感じのデータを得ることができた。ただでこれだけ遊ばせてくれるとは…。なおこのアカウント、当然ほぼ初期データなので消すことをためらうことはない。
6枚目のカードあたりでメダルを巻き返し、10枚目のカードの時、最初からJPC確定カードを見る。たぶんワンダー開始時点でJPC確定のカードは、皮肉にも我がアニマロッタを普通にプレイしたときは一度も訪れず、意味をなさないこのアカウントで遭遇することになるとは…。これで4000枚ほど増えるがその後はどんどん減り豪遊終了、という流れ。
さて、このパターンで行くとパターンとしては6枚目の期待値が高く、7や11枚目のカードは期待値が低いのではないか、と最初に予想してみる。以下は1枚目のカードから15枚目のパターンを張り付けたものである。左上から順に右に行く。あとこれらのカードは初期枚数が70枚なので、当たり前だが回収モードに入っていると容易に推測できる。
ここでは15枚のカードを扱うため簡単に配当分布、PO率だけ記して行こうと思う。この日も1ゲーム目で撃沈。ブレがおそらく大きいのだろう。それは以下の解析でわかること。
試行回数1000000回せっかくなので、youtube上には最高設定でアニマロッタをイベントで稼働させている店舗がある。どこかは知らないが、かつての我が記憶によるとアピナ長野村山とかサードプラネット多摩か、はたまたベネクス系列か…。かつてサープラ多摩も見に行ったし、ベネクスも川崎、平塚、大和はプレイした。だがアニマをするだけで往復で電車賃が2~3万は飛ぶ…ビッグクリアフィギュア何個手に入るんや!!
その最高設定におけるメテオボンバーの解析を行ってみる。なお以下のサイトの動画投稿者を参考にさせていただいた。https://www.youtube.com/watch?v=bd6oLyly0nA
我もアニマ全盛時代に1回くらいは最高設定でメテオボンバーをやったり、せめて3000BETで全消しの夢を達成したかったのお…(まだいうか)
2つ画像があるが、左側の配置の期待値を計算しようと思う。これも一応入力した後、実際の結果と同じ配当を得たのでやはりプログラムは正確である。課金していない関係上0BETなので余計なテロップが出ているが気にしないでほしい。
一応このパターンでもちゃんと数字を入力すると完全に右の状態になることをプログラミングで確認した。(配置パターン、爆弾種別、番号、宝箱状況も完全一致)これでこのプログラムの正当性はほぼ確実だろう。要素1個目は試行回数、2個目は最大連鎖数、3個目はそれぞれの位置の箱の開閉状況、4個目は全消し回数、5個目は配当(毎回同じ数字配置なのでPO率というよりは配当という表現になる)なおその上に書き連ねられているのはプログラムのごく一部である。いよいよメテオボンバーの解析が整ったのでさっそく開始する。
もちろん無料ログインボーナス20枚での実践である。初期配置と最終配置のみ記す。
手動で配置を設定しているのでもしかしたら間違いがあるかもしれないがたぶんないと思う。
いよいよ初期配置に対して数字の組が与えられた場合、最終配置を計算するプログラムを作った。作業時間としてはおそらく10~20時間程度か…。チェーンボンバーのいじくりではあるものの、爆弾の落下順序に関する見直しが必要であったり、各マスが番号、色に加えて爆弾種別という3つ目の要素を持つことも考慮しなければならなかった。
せっかくなので全消しパターンで本当に我のプログラムが全消しを再現できるかチェックする。さて、以下のようなパターンが初期配置であったとする。
そして{24,10,1,3,4,11,17,9}の順番にボールが入賞することにより全消しを達成する。これを我が作ったシミュレータで確かめることとする。
ちなみに我の定義によると赤→1、ピンク→2、黄色→3、緑→4、青→5、爆弾全般→6として、通常爆弾を1、右下向きメテオを2、左下向きメテオを3としている。
確かに3rdロッタ終了時点で全消しができており、最大連鎖数は8で全消し倍率は150倍となっており、これらはすべて正しい。当然アニマに課金していないので、ログインボーナスでの無料プレイとなっている。まあその分ドラクエのビッグクリアフィギュアを求めて全国をさまよい何十体と集めることとなったが…。
上が初期配置である。