かなり難解な内容ですが高校数学を履修していれば理解できると思います。
マカ錬金『テーブル』について説明
有名な「痛風テーブル」の他に下記のような様々なテーブルが存在するとされています。
・痛風テーブル・・・弱点特効2・風圧耐性2・スロットなし
・特攻テーブル・・・攻撃2・弱点特効2・スロットなし
・サスケテーブル・・・壁面移動3・体術3・スロット3-1-0
・壁面テーブル・・・壁面移動2・弱点特効2・スロット1-0-0
・弱虫テーブル・・・弱点特効2・翔蟲使い2・スロットなし
・通気口テーブル・・・広域化2・弱特2・スロットなし
・高機能テーブル・・・(複数のいい護石が出るらしい)
しかし5chのマカ錬金検証スレでは『そもそもテーブルは存在しない』という説が有力です。それと共にマカ錬金は非常に難しい問題を抱えている可能性が出てきました。
かなり頭を使いますが頑張って読んでください!
追記:結論から言うと護石が排出される際の乱数消費に問題があり結果が収束しやすく、テーブルがあるかのように見えるということです。
マカ錬金検証スレから引用
287名も無きハンターHR774 2021/04/07(水) 18:27:38.69ID:EhQGH1lCd >>288 >>289 >>301
錬金後結果見て錬金前までリセットしても、次に錬金した時に出るお守りは変わらない
入れる素材を変えようが、クエストに行こうが変わることはない
この大前提があるのにそれが覆るってあるのか?
ループに入ってる奴は何かの行動が原因でループに入ったんじゃなく、
セーブデータ作成時でループに入ってしまうことが確定していたんじゃないだろうか
301名も無きハンターHR774 2021/04/07(水) 18:53:36.99ID:wvOOHQMq0 >>306 >>287
セーブ時点で途中まではループしないけど途中からループに入ってしまう計算式になってるって考えるよりは
その「変わらない」の前提が間違ってて一応変わるけどリセットとかの簡単な方法では気づかない・狙って出来ないような条件だって可能性を考えるほうが妥当じゃないか
途中まではループしてなかったって人は勘違いしてるだけって主張なら知らんけど
あと「テーブル」って表現は割とおかしい
まるで予め護石表があってそこから取り出してくるような印象を与えるけど実際はセーブデータから何かの方法でseedを算出してそこからアルゴリズムで護石を生成するのであって
例えば里クエ進行状況みたいに不可逆の状態変化にseedが影響されるとしたら実質そのセーブの運命は固定されてるようなものだが
里クエをやらずに回したときとやって回したときで結果が変わるということもある
※seed(値)
コンピュータで乱数を生成する場合、ある数値をシード値(seed:種)として用い、その値を基にして特定の演算により乱数を生成していく。 このため同じシード値を使用した場合、発生する乱数はまったく同じものとなる。
302名も無きハンターHR774 2021/04/07(水) 18:59:45.11ID:+RCc1VEE0
いやそのseed値がセーブデータ作成時点から固定だって疑惑があるからみんなテーブルって呼んでるんでしょ…
303名も無きハンターHR774 2021/04/07(水) 19:02:10.37ID:mgWi51bP0
seedが不動だからテーブルなのでは?
決まったもん取って来てるじゃん
304名も無きハンターHR774 2021/04/07(水) 19:03:23.01ID:GuUb9jPA0
月虹や輪廻で固定あってもおかしくない
サンプル少ないでしょ
306名も無きハンターHR774 2021/04/07(水) 19:04:39.96ID:/vYohqeL0 >>308
>>301
>途中まではループしないけど途中からループに入ってしまう計算式
昔(P3や3G)の乱数生成法がこれよ
だからむしろ一番妥当な考えだと思う
当時はテーブルは変えられなかったけど乱数をずらす方法はあったからループにはならず、いわゆる孤立おまも狙えた
今回は乱数がずらせない
308名も無きハンターHR774 2021/04/07(水) 19:24:21.09ID:wvOOHQMq0 >>312
テーブルが固定だとかテーブルが固定じゃないとかいう表現がおかしいって言うべきだったかもな
セーブ作成時点の情報+錬金回数のみがseedに使われるのが判明したときに便宜上「テーブル方式」と呼ぶのは間違ってない
>>306
P3とか3Gは含まれるお守りが異なるループが何種類かあってそれを移動できたりそもそもseed消費がお守り鑑定以外にも大量に進むからループに見えないだけじゃ?
今回分かってる範囲だとお守り錬金でしかseedが進まない状況で途中までループしないけど途中からループするってのとは大分違うように思うけど
312名も無きハンターHR774 2021/04/07(水) 20:05:33.82ID:/vYohqeL0 >>314 >>317 >>357
>>308
例えば以下の例を考えてくれ
お守りが1番~21番の21個あるテーブルを考える
第二スキルがないお守りは乱数を4消費、第二スキルがあるお守りは乱数を7消費する
3番,6番,9番,18番,19番,21番は第二スキル無し、他は第二スキルあり
1~21のどのお守りが最初でも巡り巡って1→8→15→1のループに辿り着くはず
例)2,9,13,20,6,10,17,3,7,14,21,4,11,18,1,8,15,1,8,15,1,8,15…..
規模は違うがコレが昔のお守り生成の仕組み
途中からループするのは不思議じゃない
ちなみにこの例だと5番が孤立おまかな
赤字が重要!テストに出るよ!これが痛風合流の正体か!?
317名も無きハンターHR774 2021/04/07(水) 20:38:19.83ID:wvOOHQMq0 >>320 >>312
ああそうかお守りだけでseedが進むようになったっていう観念が邪魔をしてお守りの第2スキルとかで追加の消費が発生するのを完全に忘れてたわ
ただ追加の消費があるって言っても普通に考えたら全体のテーブルに対して消費ははるかに小さいはずで
そのロジックだけだと報告されている結果のループがあまりにも短いように思うけどな
セーブ作成時に5200が全体周期になる乱数列が設定されたとして10個で結果がループするルートにたどり着いたってことは1回の錬金で520の乱数消費ってことになる
結果がループする個数も人によって違うあたり乱数の全体周期を決めるところで何かバグってるのかもしれないけど
さすがに消費数が人によって変わることは考えにくいし
319名も無きハンターHR774 2021/04/07(水) 20:47:41.35ID:l/GznYHvd
スキル2抽選時にスキル1と同じなら再抽選して
連続して再抽選が起こる番地があれば乱数が大量に消費されそうではある
実際に再抽選してるのかは知らん
320名も無きハンターHR774 2021/04/07(水) 20:49:57.16ID:/vYohqeL0
>>317
それが、昔でいうT15,16,17みたいな54種類しか値がないテーブルとかが存在したりすると、割と現実的なのよ・・・
まぁこれが今回の正体だと主張する気はないよ
似たようなことが起きているとは思ってるけど今のところ個人の妄想にすぎん
514名も無きハンターHR774 2021/04/09(金) 17:07:55.91ID:EXBfX0Skd >>515>>516
テーブルなんてSEED値から生成する以外に方法無くない?
問題になってるのは
・SEED値のパターンが極端に少ない可能性
複数人でお守りの出現パターンが被るのは多分これが原因
・SEED値から極端に短いテーブルが生成される可能性
・テーブルからお守りを取得するための乱数の進め方に問題がある可能性
短い間隔でループするのは多分こっちが原因
こんなところでは?
515名も無きハンターHR774 2021/04/09(金) 17:16:17.55ID:juZbwuAn0 >>514
初期seedのことをseed値って呼んでない?
普通は乱数一回ごとの生成に使う値をseedって呼ぶと思うけど
テーブルなんてものはそもそもゲーム内には存在しなくて
ある初期seedから到達可能なseed群から得られるお守りのリストをユーザーが勝手に表にしたものがテーブルでしょ
516名も無きハンターHR774 2021/04/09(金) 17:25:39.02ID:juZbwuAn0 >>518 >>514
いやすまんseedに関しては俺の方が用語を間違えて使ってたわ
普通にseedって言えばそれだけで初期化用の値を指すか
自分が言いたかったseedはあるseedから一定回数乱数を生成したときの乱数生成器の中間状態のことだがこれを何と呼ぶべきなのかはよくわからん
517名も無きハンターHR774 2021/04/09(金) 17:28:28.47ID:9Jv8CbhD0
あと「乱数の桁自体が足りない可能性」も追加で
636名も無きハンターHR774 2021/04/12(月) 16:42:23.72ID:DPyAj1EO0
ループ疑ってる人はまずmh3gの乱数について下のリンクから勉強してから来て欲しい
そんなに難しいものじゃないはずなので
https://nozomi.5ch.net/test/read.cgi/handygover/1339378933/286-289
https://nozomi.5ch.net/test/read.cgi/handygover/1339378933/323-328
※詳しく難解。結構長いです。
764名も無きハンターHR774 2021/04/16(金) 17:49:36.09ID:Ara5d6Xe0
完全ランダムならあり得ないくらいパターン被りが起きてるコトやら
テーブル変える手段がデータ消す以外無いとか、問題はそういう所にあるのにな…
もっと根本的な所に対する問題なんだけどな…
765名も無きハンターHR774 2021/04/16(金) 18:22:41.00ID:i4DHodrFd >>771
お前もお前で、完全ランダムってのがあり得ないってのをまず理解しろ
766名も無きハンターHR774 2021/04/16(金) 18:32:55.51ID:/zKYK8fUd
擬似乱数を平気で「乱数」と呼ぶ世の中が悪い
767名も無きハンターHR774 2021/04/16(金) 18:37:49.67ID:v/NGXNOwa >>769
乱数消費に規則性があるP3方式なら疑似乱数ですらなく準乱数だろう
797名も無きハンターHR774 2021/04/17(土) 01:41:25.66ID:2gaLYI+d0 >>800 >>794
何を言い表したいのかがそもそも人によって違う謎のワードになってるから
そこをはっきりさせないと言い方も何もないってことよ
・複数の人の錬金結果が同じ順番になることがあること
・1人の人の錬金結果が特定周期でループすることがあること
・個別のスキルやスロット上限の組み合わせだけ考えるとありえる護石が、実際は出ない可能性があること
これらは疑似乱数の性質によるものでしかないから
もしこれらがいいたいなら完全なランダムじゃなくて疑似乱数、みたいな言い方すれば十分
一方巷にあふれるテーブルって言葉から勘違いした以下のような話は
・あらかじめゲーム内に護石結果の一覧が用意されていてここから錬金結果が選ばれること
・その一覧にパターンがあってどの一覧が使われるのかは人によって違うこと
・使われる一覧が移動したり合流したり変わったりといった現象を起こすこと
そもそもテーブルって言葉を使ってなければ生まれなかったような勘違いなので呼ぶ必要もない
強いて言えば「テーブルが用意されているわけではない」みたいな否定的文章でのみ
こっちの意味でテーブルって言葉を使うのは正しいんじゃないの
800名も無きハンターHR774 2021/04/17(土) 02:08:32.31ID:2gaLYI+d0 >>797
もう2つよくテーブルって言葉で言われてるの忘れてたから加えとく
・セーブ作成時にそれ以降出る護石の順番(運命)が決まってること
これはseed固定とかseed再設定なしとかそういう表現が妥当なんじゃね
・特定の既知のループに嵌ってしまった状態で出てくる護石の順番表そのもの
そのまんまループでいいのでは
違うテーブルだったのに途中から痛風テーブルになったとか言う表現が謎すぎるから混乱を生む
痛風ループに入ったでいいじゃん
結論
護石が排出される際の乱数消費に問題があり結果が収束しやすくテーブルがあるかのように見え、またそれが高い割合で短いループを発生させるということです。
まとめ
(管理人も理解するのが大変でした。予想外の高難度クエストでした。)
管理人もマカ錬金はテーブル方式で3000護石が用意された10個のテーブルが適当なところで切り出されて並んでいると思っていたのですが、プログラムに詳しい人の話を見るとどうも違うようです。モンハンは過去作のシステムをそのまま持ってくることがとても多いことに加え、マカ錬金スレなどでは「〇〇さんのテーブルと1個置きで同じものが出る。」とか「〇〇さんと部分的に同じだったけれど途中から離脱した」という話もよく聞きます。乱数プログラムの偏りであるとすればある程度納得できる気がします。
改善策についてですがループが極めて長大になる新しい乱数プログラムを組むか、何らかのタイミングでseed値が変動するようなシステムを作る形になると思います。どちらもあまり簡単ではなさそうですね。
この問題は短期間で解決しない気がしてきました。もしかして全キャラクター同じすごく長いテーブルになってしまったり・・・。
ランダム護石で一喜一憂したいです!カプコンがんばって(‘ω’)!
コメント
乱数の生成方法に問題あり規則性が生まれるから、結果、テーブルがあるように見えてしまうと言うことなのね。次回アプデでは修正難しそう。
そもそも論として、通常のコンピューターで本当の乱数を作り出すことはできない
(同じインプットで必ず同じアウトプットを出す)
そんな中でどうやって擬似ランダムを作っているかというと、例えばセーブデータを作った時間や特定の操作をしたタイミングの値(これがシード)を使用してランダムに見える計算をする
じゃあシードを固定せずにマカ錬金をするタイミングや起動時間で変動させればいいじゃんって話になる
そうすると今度はハズレてもセーブデータから何度でも再抽選しまくれる(錬金時に強制セーブしても、今はオンラインセーブお預けでやり直せる)とか、シードのタイミングさえわかれば欲しい護石を狙い打ち出来る(乱数調整、スナイプ)って別の問題がでてくる
モンハンに限らずプログラムである以上難しい問題なんよ
それでも、短周期すぎるループとか同じループに集約されやすすぎるとかは単純にモンハンのプログラム欠陥だけどな
よう分からんけどIPは隠してあげてください
難しすぎて全然わからん。中1数学でつまづいた僕には理解不能だった
アップありがとうございます。
直ぐに修正できないにしても
それを理由にタイトルアップデートを遅らせたらそのほうがブランドへのダメージが大きくなると思うので、4末の更新は予定通り4末に行ってほしい。
乱数の生成方法には問題ないよ(なくはないけど)
一番の問題はお守り抽選ごとに乱数消費が違うせい
解決するには乱数消費を固定かつ周期に対して互いに素になる消費数にすればいい
赤字の例なら消費数4とか5のみなら1~21全ての数を巡ることができる
問題はゴミが連続することが確定して変える手段がないことじゃないの?
別にすべてのお守りに巡ってきてほしいわけじゃないと思うけど
こういうのってseedに総プレイ時間とか総ダメージ量を使うのじゃだめなんかね?
なんらかの手段で局所的な乱数列のループから抜け出す手段は必要ですね
手っ取り早いのは仰る通りSEEDリセットすることだけど、そうしなかったのはポケモンように乱数調整の温床にされたくなかったからと思われ
あと自分もごちゃまぜにしてたけど、3系と同じ処理と仮定するならライズの乱数ループ要因が
①生成器がもつ周期によるテーブル(3系の12+αのテーブルはこれが要因、LCGでは仕方ない)
②乱数消費の規則性が要因のループ(今回の消費契機は鑑定時のみっぽいし)
ていう2種類あるんじゃないかな
痛風合流は②で説明できると思う
ループはともかく、読み物として面白いね(思考放棄)
こりゃ絶対にPC版でお守り生成ツールが出るね
使うなら実在するものだけを作るんだぞ!
PC版はそもそもMOD使ってナンボなところあるから…
Switch版でこのお守りは乱数上ありえないとかひと悶着起きそう
スイッチ版も既に野良で超会心2弱点特効2 3-1-1とかつけてる奴いるんだよなあ
護石で攻撃7発動をしてる中国人いて笑ったわ
本当にテーブルがあるならさ、ネットの暇人の物量で検証すればテーブルの内容が完全にわかるはずじゃん?
だけど痛風護石みたいな特定のものでしか今のところテーブル判定してないじゃん?それが側から見ててすごく違和感あるんだよね
今頃痛風テーブルからはこの護石が出るって一覧が作られてなきゃおかしい
それがないってことは、考えが足りないってことだろうなと思うよ
このテーブルって考え方は攻略サイトでも当然のように採用してるけどさ、どこにも確たる証拠が無いのに当然のように信じてるのが宗教みたいで不気味だわ
有名な乱数生成手法のメルセンヌツイスタの周期なんかは2の19937-1乗とかだぞ
特定の条件下でループしだしてそれ以外では正常に乱数が機能してるならこんなものでしょ
一覧ならとっくにでてるじゃん
あとテーブルって皆んながわかりやすい言葉使ってるだけでしょ
ずいぶんと捻くれた人がいてびっくり
わかりやすい言葉(聞いた人が勘違いする言葉)
ループ入ってなくてもいくつか一緒だから俺もループしてるって勘違いしてる人いるんだろうな
少なくとも痛風テーブルもとい痛風ループに関しては既に順番と一覧は作られてる
一度予約10回分(護石50個)程度でいいから記録つけてみるとどんだけ手間がかかるかよく分かると思いますよ
それぞれの自宅(初期seed)から最寄り駅まで向かう(錬金初期のユニークな護石群)
駅についたら鉄道(有名な出現パターン)で環状線へ向かう
環状線へ向かう鉄道はいくつかある(弱特2s2ループの場合壁面線や特攻線など)
環状線についたら一生環状線を回り続ける(乱数ループ)
環状線もいくつかある(痛風線から行くループ、弱特2s2ループ、極小ループなど)
線形合同法使うにしてもせめて最大周期になるように定数設定してほしい
定数設定ミスってるのが今回の短期間でループする原因やろ
ん?
別に自分で検証した訳ではなく、5chの話を書いただけ?
一人でこんな検証できるかよw
いや、少なからず検証にかかわったのか、それとも5ch書き込み情報「だけ」で判断したのかでは全く違うだろ、と。
カプコン『完全ランダムはやーや〜なのー!!』
これが一番の間違いなのにな。
余計なプログラム組むからバグが起こる。
残念ながらそもそもコンピューター上で完全なランダムは実現できないんだよ
コンピューター上でランダムと呼ばれている物は全て疑似乱数と呼ばれるランダムっぽく見せた規則性のある計算だけなんだ
その見せかけのランダムの作り方が悪いと今回のように規則性が見えてしまう物が出来るってだけなのさ