【艦これ】イベント経過報告

イベント海域クリアしたので適当な記録をば。
さすがに適当すぎじゃね?

●E1
ルート固定もあるので楽だった。
ゲージ破壊はきっかりボス6回目で達成。

●E2
羅針盤と夜戦が面倒。
ゲージ破壊はきっかりボス6回目で達成。

●E3
鋼材が減る。
道中大破撤退時に持ってなかった浜風引いた。

●E4
ダメコンなしでやったらボス前辛い。
それ以外は楽。

●E5
戦艦メインの編成なのに理不尽な一撃大破率が高い。
鋼材が枯渇する。辛い。
途中ボスA勝利で谷風を引く。

●他
イベント期間中にデイリー建造でZ3を入手。
これにより現時点での未所持艦娘はBismarckのみに。

DPtコイントス初期シード検索ツール

作ってみた。
http://www1.axfc.net/u/3209269?key=cointoss
追加データ(CoinTossData.bin):Googleドライブ

Microsoft .NET Framework 4をインストールする必要あり。
追加データは1.5GBあるのでそのつもりで。


●仕組み
第4世代ID調整用初期シード検索ツールみたいのをやってみたかっただけ。
CoinTossData.binに65535Fまでの初期シードをコイントスの結果が昇順になるように並べ替えたデータを入れて、あとは似たような感じ。
ついでに条件により参照しない検索方法も付けてみた。
でも絶対後者のが使われる。


●機能
画像は面倒なので省略。

起動後からコイントス以外でコイントス完了までにMTを消費していない場合のみに対応。
フレーム数も65535Fまで。それより先はコイントス出来る状況でやる人いないでしょ。
そのままでも使えるが、オプションとしてCoinTossData.binを.exeと同じフォルダに置けば、検索範囲がある程度広いコイントス8回以上のものに対しCoinTossData.binを参照して検索するようになる。
8回とかの基準はだいたい適当。

・検索列:コイントスの結果をスペース等を入れずに入力
表:o、O、o、O、○
裏:x、X、x、X、×
に対応。
64文字まで。

・他
見りゃ分かる。分からん奴とかおらんやろ。
条件が緩すぎるまま検索しようとするとアラートが出るようにしてある。
検索結果は初期シードだけですが今後もフレーム数等を表示する予定は全くありません。


~おまけ~


DPtコイントスの結果はMTの最下位1bitだけを取ってるということで、不要な部分の計算省けそうだなーとか考えてた時のメモ。
更新後のテーブルの値の各bitに適当な文字を割り当てて、それらで最下位bitがどう表せるのか計算した結果、見ての通りの6箇所のbitのxorを取れば良いという結論になった。
で、これを.bin作成時にもツール内部にも組み込んでみた。

という訳で、正解は「MT最下位bitの計算」でした。

乱数調整用ツール計算高速化の工夫

LCGとMTの性質によるものをば。


◆LCG
最初知った時は目から鱗だったり。

●あるシードからあるシードまでの消費数の計算
1つずつ進めて一致するまででも計算できるが、これ使えば消費数が多くなっても高速に計算できる。
リンク先いけば実際に使ってる例も分かるかと。
消費数の多いXD乱数にも使えるのかしら。(やったことないけど)

●n個先のシードの計算
消費数が多くなると1つずつ進めるのは時間がかかるが、これを使うと消費数が多くなっても計算量はさほど増えない。
あるいはnを特定の値で使うのなら、r[k+n]=An*r[k]+BnなるAn、Bnを予め求めておけば以降シードを1つ進めるのと同様の計算量で計算できる。
後者はBW2孵化乱数用ツールで実装済み。


◆MT
テーブルの計算減らす以外の方法あったら教えて。

●必要部分のテーブルのみ計算
参照する部分がn、n+1、n+397とかなので、例えばMTの最初6つだけ必要ならn=0~5で必要になる部分、すなわち第0テーブルの0~6、397~402の部分だけ計算できればよい。
第0テーブルの決定方法から実質的に0~402だが(いい方法あるのかもしれんが)それでも全部計算するよりこの場合でも計算量402/624くらいにはなるんでなかろうか。
まあ、必要になったときにテーブル更新するようにしてれば勝手に実現できてるはず。
BW2孵化乱数用ツールで実装済み。

●テーブル自体計算しない
32bitの初期シードを設定すれば乱数列が決まるので、欲しい乱数列が出る初期シードを予め計算しておく。
初期シードは2^32通りしかないので変なことしてなければ1日あればまあ「準備として」初期シード計算できるんじゃないのかなー。
第5世代の消費数個体値指定(1/2^30)とか、対応する初期シードがあまり多くならずになおかつ良く使う奴に。
第5世代個体値乱数列初期シードリストにいくつか載せてある。


とりあえず知ってるのとか適当に挙げるとこんな感じ。
他なんか良さげなのあるかしら。

性別決定の有無で性格値決定箇所が変わらない確率

なんか気になったのであかいいと所持時に性別決定の有無で性格値決定箇所が変わらない確率を計算してみた。
本当に某箇所が性格値なのかどうかは知らんのでそもそも意味なさないものかもしれんが。
性格値ではないそうで。まあ、意味無い訳じゃなさそう。
パワー系アイテムは持たせていない場合のみ考える。


性別決定の有無で最初の遺伝箇所決定が1つずれる。
詳しくはこちら→XY孵化仕組み検証


で、正確な確率計算しようと思ってたのだがいろいろ面倒そうだったので適当にちょちょいとシミュレーション的なことをしてやってみた。
ちゃんとした計算もそのうちやる、のかなぁ。
暇な人暇つぶしに計算してみて。

まあ適当にざっと10,000,000の試行を何十回かしてみると全部26.2...%的な結果が出た。
まーよーするにそれくらいの確率なんでしょう。
プログラム間違えてたら知らない。


あ、これだけです、はい。

近況らしきもの

年末です。


●ポケモン
ムーバーが出たので検証で出たパッチールの模様を特定できれば乱数列がLCGかどうか確かめられそうとか考えつつもまだ全然やってない。
模様と性格値が従来どおりに対応してるとかいう前提の下で、だが。
まあそのうちやる、のかなぁ。

XD乱数やってる方がいろいろと公開していたのでとりあえずざっと眺めてみたり。
でもXDは持ってません、はい。


●艦これ
4ヶ月連続で500位以内入るくらいにはやってる。
大和新艦娘以外は揃ってるけどその大和新艦娘が全く出ません(白目
大型建造用の資材を集めつつ伊19を探す日々。



プロフィール
さき

ポケモンの乱数調整とかツールとか。サンムーン乱数調整できました。
Twitter→@water_blow

広告
最新コメント
記事検索