ロン・フォスターさんにメールした
2011年12月26日 TCG全般 コメント (16)唐突だが、ロン・フォスターさんにメールを送った。
内容はMOのシャッフラーについて。
正直、俺はロンさんがWotCの中でどのようなポジションにあるのかを正確に把握はしていない。
でも、MOを管理している部署がWotC内にあるのは確実だ。いつかはそこに辿り着く事が出来るだろう。
かなり以前に「MOのシャッフラーがどれだけランダム性を確保出来ているか」について書かれた英文の記事が公開された事があるらしい。
俺の第一目標はその記事だ。
MOは様々な意味でリアルで行われるMTGとは違うものだが、その中でも良く耳にするのが「MOでは事故が多すぎる」と言うものだ。
・土地2枚、スペル5枚でキープしたらそれ以降スペルしか引かずに死んだ。
・《森/Forest(ISD)》が10枚入っているのに10t経過しても1枚も引かなかった。
・初手がノーランドだったのでマリガンしたら、次手もノーランドだったのでダブルマリガンしたら5枚ともランドだった・・・etc。
例を挙げていけばきっとキリがないだろう。
確かにMOでプレイしているとこう言った事象は経験するし、単に耳にしたものを含めると、その10倍にはなるだろうし、実際に各プレイヤーが経験したものをカウントしていけば、もう何倍になるのか分からない。
だからMOでの事故は確実に存在する。
これは確かだ。
でも、だからと言ってリアルのMTGよりもMOの方が事故りやすいとはならないし、MOのシャッフラーが恣意的にカードを配っていると言う事にはならない。
そもそもMOが恣意的に事故を起こしていると仮定すると、そこには様々な判断基準が必要になるはずなのだ。
現状でプレイヤーが必要としているのは、土地なのか、それともスペルなのか、2色以上で組まれたデッキなら《森/Forest(ISD)》が欲しいのか《平地/Plains(ISD)》が欲しいのか。
これらを判定してドローに反映させるなんて、考えるだけで馬鹿げた発想だと分かるはずだ。
単に無作為化したいなら、そのカードが何であるかを判定する必要はないし、プログラムとして実装する場合にはこちらの方が遥かにハードルが低い。
でも、だからと言ってMOのシャッフラーが恣意的でないとは言い切れない。
どのような機構がシャッフラーにランダム性を担保させているかを俺は知らないからだ。
例えば以下のようなまとめも存在する。
でも、これも経験則と推測でしか書かれていない。
これをもってMOのシャッフラーの正当性を主張するには全く足りていない。
だから俺は上述の英文記事を探している。
正式にWotCが「MOのシャッフラーはランダム性が担保されている。」と書けば、少なくとも日常的に体験する経験則や無駄な推測よりもよほど信用できるだろう。
俺はMOが好きだ。
週末はほとんど出勤確定のサービス業と言う生活形態でそれでも俺がMTGから辛うじて離れずに、モチベーションを維持できているのは紛れもなくMOのお陰だ。
MTGと言う1人では楽しむ事の出来ないゲームを楽しむためのフィールドと人を、場所や時間に縛られず提供してくれるMOと言うツールに恩義を感じている。
だからMOが、今回はそのシャッフラーの評価が不当なものならその正当性を主張したい。
「MOのシャッフラーは壊れている!」
そう言った叫びに対して「そうじゃない」と回答し得るのはMOのシャッフラーが確かに無作為化されていると言う事実だけだろう。
リアルと比較して。
他のMTGがプレイ出来るツールと比較して。
「事故が少ない」
と言う主張はそのゲームの根幹から考えて決して正しくはないのだ。
まぁロンさんからのメールが返ってきて
「ごめん。その質問には答えられない」
とか言われた場合は道がなくなってしまうのだけれど。
そうはならない事を祈りつつ。
内容はMOのシャッフラーについて。
正直、俺はロンさんがWotCの中でどのようなポジションにあるのかを正確に把握はしていない。
でも、MOを管理している部署がWotC内にあるのは確実だ。いつかはそこに辿り着く事が出来るだろう。
かなり以前に「MOのシャッフラーがどれだけランダム性を確保出来ているか」について書かれた英文の記事が公開された事があるらしい。
俺の第一目標はその記事だ。
MOは様々な意味でリアルで行われるMTGとは違うものだが、その中でも良く耳にするのが「MOでは事故が多すぎる」と言うものだ。
・土地2枚、スペル5枚でキープしたらそれ以降スペルしか引かずに死んだ。
・《森/Forest(ISD)》が10枚入っているのに10t経過しても1枚も引かなかった。
・初手がノーランドだったのでマリガンしたら、次手もノーランドだったのでダブルマリガンしたら5枚ともランドだった・・・etc。
例を挙げていけばきっとキリがないだろう。
確かにMOでプレイしているとこう言った事象は経験するし、単に耳にしたものを含めると、その10倍にはなるだろうし、実際に各プレイヤーが経験したものをカウントしていけば、もう何倍になるのか分からない。
だからMOでの事故は確実に存在する。
これは確かだ。
でも、だからと言ってリアルのMTGよりもMOの方が事故りやすいとはならないし、MOのシャッフラーが恣意的にカードを配っていると言う事にはならない。
そもそもMOが恣意的に事故を起こしていると仮定すると、そこには様々な判断基準が必要になるはずなのだ。
現状でプレイヤーが必要としているのは、土地なのか、それともスペルなのか、2色以上で組まれたデッキなら《森/Forest(ISD)》が欲しいのか《平地/Plains(ISD)》が欲しいのか。
これらを判定してドローに反映させるなんて、考えるだけで馬鹿げた発想だと分かるはずだ。
単に無作為化したいなら、そのカードが何であるかを判定する必要はないし、プログラムとして実装する場合にはこちらの方が遥かにハードルが低い。
でも、だからと言ってMOのシャッフラーが恣意的でないとは言い切れない。
どのような機構がシャッフラーにランダム性を担保させているかを俺は知らないからだ。
例えば以下のようなまとめも存在する。
MOは事故りやすいのか
http://togetter.com/li/146223
でも、これも経験則と推測でしか書かれていない。
これをもってMOのシャッフラーの正当性を主張するには全く足りていない。
だから俺は上述の英文記事を探している。
正式にWotCが「MOのシャッフラーはランダム性が担保されている。」と書けば、少なくとも日常的に体験する経験則や無駄な推測よりもよほど信用できるだろう。
俺はMOが好きだ。
週末はほとんど出勤確定のサービス業と言う生活形態でそれでも俺がMTGから辛うじて離れずに、モチベーションを維持できているのは紛れもなくMOのお陰だ。
MTGと言う1人では楽しむ事の出来ないゲームを楽しむためのフィールドと人を、場所や時間に縛られず提供してくれるMOと言うツールに恩義を感じている。
だからMOが、今回はそのシャッフラーの評価が不当なものならその正当性を主張したい。
「MOのシャッフラーは壊れている!」
そう言った叫びに対して「そうじゃない」と回答し得るのはMOのシャッフラーが確かに無作為化されていると言う事実だけだろう。
リアルと比較して。
他のMTGがプレイ出来るツールと比較して。
「事故が少ない」
と言う主張はそのゲームの根幹から考えて決して正しくはないのだ。
まぁロンさんからのメールが返ってきて
「ごめん。その質問には答えられない」
とか言われた場合は道がなくなってしまうのだけれど。
そうはならない事を祈りつつ。
コメント
土地2キープして5ターン連続スペル=およそ30回に1回
森10枚で10ターン経過しても森引かない=およそ80回に1回
ノーランド→ノーランド→オールランド=およそ28万回に1回
こんな確率になりますね。
ドロー関連は極端な例でもこの確率なので、「土地が詰まる」といったことだと
もっと起こるはずですね。
なので、MOが事故りやすいのではなく、リアルが事故りにくい?のかと自分は思いますね。
MOの事故が多く感じる原因としては、
・リアルのシャッフルは、人間が無意識に事故らないようにシャッフルしてしまっている?
・リアルのシャッフルは自分でやるが、MOの事故はシャッフラーが原因と感じ、記憶に残りやすい?
・MOでは次々に相手と対戦できるので、時間あたりの対戦の数も多く、時間あたりの事故回数も多い。しかし、事故った記憶だけが残るので、MOは事故の回数が多い=事故りやすい。と誤認識している?
みたいなことが考えられますね。
コンピュータ・プログラムでシャッフルする場合は、多くの場合、Fisher-Yatesアルゴリズム(または、その改良版)を使います。
このアルゴリズムを使うと、実用上十分に無作為で不偏のカード列が得られます。
つまり、上からめくっていって次のカードが何であるかは、シャッフルを始める前のカードの並び順に関係なく、残ったカードすべてが等しい確率になります。
MOも、そうしない理由は特に思いつかないので、Fisher-Yatesを使っているでしょう。
一方で、紙のマジックで人間がやっている、1回のパイル・シャッフル(ショットガン・シャッフル)にそれぞれ10回前後のヒンズー・シャッフルとリフル・シャッフルを組み合わせる方法ですと、偏りのある並び順になります。
つまり、シャッフルを始める前のカードの並び順が、シャッフル後の並び順に影響します。
例えば、デッキの12枚目と24枚目と36枚目と48枚目に《鍛えられた鋼》を入れてシャッフルを始めたとします。
コンピュータ・シャッフルの場合は、シャッフル終了後にデッキの一番下にそれら4枚がすべて固まる確率はちゃんと(4!)/((60!)/(56!))=0.0002%になりますが、人間のシャッフルをシミュレートした場合は、ずっと低い確率になります(具体的な値はシャッフル手順によりますが)。
これは、コンピュータが実用上十分な長さの無作為な数列を生成できるのに対して、人間の手が数分の間に作り出せる無作為さには限界があるからです。
MOのシャッフラーを紙マジック並みに劣化させれば、同じくらい事故らなくなるかもしれません。
が、計算機にとっては、人間のシャッフル手順を再現するよりも、より完全なシャッフルをする方が、プログラムも簡単だし高速なのです。
>俺の第一目標はその記事だ。
Magic Online Wiki for JapaneseのFAQより
シャッフラーが壊れてる!なぜこんな具合の悪いシャッフルのシステムを使ってるの?
www15.atwiki.jp/magiconline/pages/151.html
(略)
Chris Green(マジックオンラインをデザインした主任プログラマー、Leaping Lizards社所属)がシャッフルのプログラムに関する非常に詳細な記事を書いていたのですが、プログラムがWizards社自身に帰属するに当たって、残念ながら記事の原文は取り除かれてしまいました。記事のインターネット上のイメージはこちらで見られます。
Magic Online’s Shuffle Algorithm...get the technical low down... March 15, 2002
web.archive.org/web/20021218144631/http:/www.lplizard.com/mtgo/developer/shuffle.htm
現在も全く同じアルゴリズムが使われ続けているかは分かりませんが。
リアルだと大抵はゲームの終了時に土地とスペルは分かれていますし、シャッフルの仕方次第ではきれいに土地・スペル・土地・スペルとかなりやすいのかも。
俺はやらないけど《不屈の自然/Rampant Growth(M12)》をプレイした時に《原始のタイタン/Primeval Titan(M12)》が固まっていると、ライブラリにばらけさせて突っ込んでからシャッフルする人とかいるもんね。
それがどの程度ドローに影響するのかはその後行われるシャッフル方法と回数によるんだけど。
後は、実際には自分の手を使わずにシャッフルが行われるってのは確かにイライラポイントになっている気はする。
MOだとクリックするだけだもんね。
>ペレルマンさん
俺は密かにシャッフルが十分だと本当に事故率があがるの?と疑問に思っていたけど《鍛えられた鋼/Tempered Steel(SOM)》の例を読むと確かに納得・・・かなぁ。ちょっと確率が小さすぎて感覚的には理解し難い。
でも分かったような気はする。
俺もMOのシャッフラーは何らかの方法で無作為化を行いランダム性を確保していると思うんだけど、その事実がもっと広く広報されて周知されるべきだと考えている。
実際には負けたゲームから学ぶべき事柄は多いはずなんだけど
「またMO事故かよ!やってらんねーよ。死ね。クソ。」
と言ってMOからログアウトして終わるってケースがほとんどだと思うし、これではあまりにもMOが不当に評価されていると感じる。
もちろんシャッフラーの他にも、杓子定規なフェイズ進行だったり、クリックミスだったり、言語の壁で感想戦が出来ないとか他にも問題は色々あるんだけど、出来るだけMOとの上手な付き合い方を模索して公表する事で、MOの地位向上に寄与出来ればと考えている。
でも「事故りやすい完全ランダム」と「事故りにくいランダムっぽいカード配置」で比較すると後者の方が人気が出そうだ。
難しい。
おおっ!情報感謝!
英語読めないから、実際はどんな事が書いてあるのか分からないけど、取りあえず死力を尽くして和訳してみる所存です。
「ランダム化にはFisher-Yatesアルゴリズムを使っててるよ。」
「プログラマーの1人がおかしいって色々実験したけど、完璧っぽいランダムと比べても特に差は見られなかったよ」
的なことが書かれてますね。
やっぱり感覚的に「多いような気がする」か、人間のシャッフルの方が不完全なのでしょうね。
自分は、鋼使ってる時に、「メムナイト*4、飛行機械*3」の初手が来たことがあるのですが、
十分にシャッフルしてて、相手にカットもしてもらっていたので、
逆に「完璧なランダムならこういうことも起こるはずだよなー。」と思った記憶があります。
俺もプログラマの1人が色々やったけど大丈夫だったっぽいよ的なところまではエキサイトさんに教えてもらったw
シャッフラーはランダムを実現しているとなると問題は受け手である人間の方にあると思って良さそう。
MTGプレイヤー的には「積み込み等のイカサマはNG」「シャッフルは十分に行うべき」と言う意識が浸透しているはずだから、これでMOのシャッフラーは受け入れてもらえる・・・んだろうか?
さっきも書いたけど「事故しやすい完全ランダム」よりも「正確にはランダムじゃないけど事故しにくいよ」の方が支持される気がする。
結局MOのシャッフラーはクソ呼ばわりされる運命なのか・・・?
community.wizards.com/go/thread/view/75846/19201726/The_Shuffler_Thread_For_a_New_Generation
リアルとMOのシャッフラーの優劣はわかりませんが、MOで事故った方が格段に悲しくなるのは間違いないですね、、、
リアルで事故るのは神様にお願いするくらいしかw
もしくは自分の心の中で置き所を見つけて処理するくらいでしょうか。
Limitsはお疲れ様でした。
ベスト8おめでとうございます・・・とは気軽に言えない悔しい終わり方でしたね。
次の活躍も楽しみにしています。
>しょっとこさん
情報感謝です!
現在、エキサイト先生に頼んで四苦八苦して読んでますが、人間の直感と、確率と言うものの相性の悪さが根底にあるよって言うような内容でしょうか。
まぁMOでは相手の顔が見えなかったり、感想戦が出来なかったりと「負けた時の救いの無さ」がツールとしての根本的な問題としてあるのは認めざるを得ないですね。
それを考えると、リアルMTGの存在もあって、MOが叩かれやすいのも仕方の無い事として受け入れるべきなのかも・・・。
ごめんなさい。
drk2718.diarynote.jp/201106100045539927/
個人的には上のコメントのいくつかで出ているのとほぼ同意見で、リアルの方が「完璧な」シャッフラーより相当(少なくとも有意に)事故りにくいのではないかと考えています。ただ、もちろん MO のシャッフラーが完全に無作為であるという証拠は一切持っていません。もしこの件で何らかの回答があったとしたら意義のあることだと思いますので、公開できる範囲で公開して頂けると嬉しいです。
個人的な結論は
「基本的にMOはシャッフル回数が極端」
「シャッフル前のカード並びが必ず固定」
じゃないかなーと思ってます。
リアルだと1戦終わったあとはある程度カードの並びがバラバラになるけど
MOだと、毎回元のソートに戻してからシャッフルされているような。
単純に例えたら
1スペル 2生物 3土地の並びに毎回戻るとして
1
1
1
1
2
2
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
のような並びをザックリ回すから土地が固まりやすく
「土地がこない」or「土地ばかり来る」が発生しやすくなってるのかと。
手札のマナが極端に軽いときと、極端に重い時とあるのでマナ順ソートかなとも。
シャッフル回数もランダムだろうから、「5回シャッフルした」時みたいなので
塊が大きく、「15回シャッフルした」のを普通に感じたりとか?
素人考えを長々とすいません。
初めまして。
勝手ながらリンクさせていただいております。
高潮のさんがチョイスする英文記事や、和訳が好きなので以前より拝見させて頂いておりました。
リンク先の記事も拝見させて頂いております。
無断でまとめのリンクを貼り付けて申し訳ありません。
今のところMagic Online Wiki for Japaneseや公式フォーラムなどで見る限りシャッフラーにはFisher-Yates法が使われています。
今のところありませんが、今回の件で何かレスポンスがあった場合は報告のエントリを上げたいと考えています。
>興味ありさん
上述にもありますが、MOのシャッフラーにはFisher-Yates法が使われているとの事です。
ちょっと調べてみましたが、高速で個々の要素の出現率をほぼ等しくするアルゴリズムのようです。
この方法が現在も使われているとすると、ランダム性は確保されているように思います。
Fisher-Yates法について、もっと詳しく説明できればより良かったのですが、アルゴリズムが理解できる言語が無かったので、出来ませんでした。
javaやVB.NETが分かる方ならぐぐればサンプルがすぐ出てくるので、ご一読をお勧めします。