2020年12月29日火曜日

最適解を実際に自動配置

 かなり苦戦したが、なんとか最適解を実際においてくれるようになった。

この間、赤バルーンの強固な判定を得るにはどうするか、シンキングタイムをどう見分けるか、FREEの配置可能個数をどう判別するかなどかなりいろいろ試行した。

その結果が↓。

たしかに、マウスカーソルが3マス目(18の番号)に行っていることを示そうと思ったが…そうやスクリーンショットはマウスポインタが入らないんや…。
しかし、勝手にマクロが最適解を探知し、しっかりと3マス目においてくれた。cando(感動)

あと一応、初期FREEの個数も取得して、シンキングタイム中にのみこの動作を行う(判定は左下の残り球数が3と表示されているとき)
FREE配置可能個数もやはりchkimgxで行っている。バルーンはchkimgxではうまくいかなかったのでpeekcolorに回帰した。

次のパターン。
今度は、3球終了時点での各種状況。
たしかにFREEの配置可能個数は、数字2を参照できており、2の値をとっている。
さらにINした位置もしっかりと正しい位置を正確に把握している。

ここまでくるといよいよ実用化も近づいてくる。
あとはちゃんとクリックしてくれるプログラムを作り、それをエクセルへとぶち込む。
他には、5球終了時とその後3球がどこに入ったかのデータが欲しい。
ビンゴバルーンにおいては、この5球を境とした前と後ろでは、順不同である。
例えば(1,2,3,4,5)ときて(6,7,8)ときても、(1,2,5,4,3)ときて(8,6,7)ときてもこれは同一。ただし(1,2,3,6,7)と(4,8,5)の組は同一でない。なぜなら5球目まではFREEを任意に配置できるからである。
したがって各ボールの番号を判別する必要はない(入った番号を判別するのは結構面倒なにおいがする)

実際に自動配置した様子は以下。
これは、我が操作したわけでもなく、はたまたおまかせオートをしたわけでもない。
画像データからこれをID化し、それをもとにあらかじめ蓄積した最適解データを取得し、それをuwsc側に戻してきて、その位置をクリックさせたのである。

しかしこのクリック動作、万が一クリックしたが向こうに反映されていないという可能性も考慮し、このクリックの動作の後、FREE配置可能個数が0となればうまく配置できたことになるが、そうでない場合は、配置しきれていないのでもう一度同様の動作を行わせるようにしている。ただしその際自身の置いたバルーンが誤作動しないように最適解配置位置の固定が必要である。

あとはこれらのデータをエクセルに反映し、さらにこれを3ゲームでできるようにし、加えてその精密性を何度も実験して確かめなければならない。

しかしここまで来たら、いよいよ実用化できる段階にまで来ている。
まあいつもFREE1個でHITせずの状態ばっかりなのでたぶん最適解配置をしても大負けすると思うが…。
そこのあたりはもっと後の話となる。

あと入った番号の順番も一応記入しておこうと思う。何か法則があるかもしれないし、はたまた録画の可能性ももしかするとあるかも。

とにかくたくさんのデータが必要なので、6BET3面で18BETを行い、PO70%だったとしても1回あたり5枚程度のロスなのでこれならかなりの試行回数を稼げる。










悲しい

 確かにチェーンボンバーの配列や配当を記録し、ついでに番号もしっかりと記入できるプログラムの性能が高まってうまく作れたのは良いが…。 この前スーパーJP4500とダイレクトJP10000が立て続けにきてクレジットが15000になって有頂天になっていたがKMPが100%から動かない...