Excel:macに移植しました
1.ダウンロード
4桁の数字をあてるゲームです。
マスターマインドなんていう名前で呼ばれたりもします。
けっこう論理的な推理能力が必要なゲームです。
インターフェイスがすべてマウスなのでサクサクした感じの仕上がりです。
エクセルでツールバーを作成したい人にもオススメです。
バージョン2.0ではエクセルと対戦ができます。
バージョン3.0はExcel:mac版です。
マクロにプロテクトをかけていませんので、興味のあるかたは以下の解説とあわせてご覧ください。
こちらから
2.ヒット&ブローの歴史
ヒット&ブローの歴史は古い。
あまりにも古く、その詳細な沿革は不明である。。。
という冗談はさておき、ヒットとブローいって真っ先に思い浮かべるのがボクシング。
ヒットアンドアウェイ戦法、ローブロー、ボディブロー、カウンターブローにキドニーブロー。。。。
でもたぶん無関係ですね。
ヒットはもちろん”大当たり!”の意味。スマッシュヒットのヒットです。
ブローにも、一撃、強打なんていう強い意味もありますが、
風の一吹きというブローから”かすった!”という程度のの意味でしょう。
さてさて、ヒット&ブローの商品としては、
1970年代前半にイギリスのインビクタ社から
『マスターマインド』という名前で発売されています。
そのためヒット&ブローよりもマスターマインドと言ったほうが通じるかもしれません。
その後、アメリカに上陸。
雑誌メディアが取り上げたことで、一層のブームとなり、1976年にはレスリー・H・オールト著『オフィシャル・マスター・マインド・ハンドブック』という研究書まで出版されました。
日本では(株)河田やモノポリーでお馴染みのハスブロージャパンから発売されています。
ところで、モノポリーといえば熱心なコレクターがいることでも知られていますが、Macの世界ではモノポリーのコマ=トークンを象ったアイコンなんかもありました。
3.遊び方
この『マスターマインド』は6色ピンを使用します。
遊び方はこんな感じです。
①まず出題者と解答者を決めます。
②出題者は6色ピンのなかから異なる4色のカラーピンを選び、ピンシェードの陰に並べます。
②解答者は出題者が並べたと思う順にカラーピンを並べます。
③出題者は解答に対して、判定ピンを立てます。
ヒットのときは、黒ピン。ブローのときは、白ピンです。
④解答者は出題者の判定ピンを手掛かりに、次の解答を行います。
③〜④を当たるまで繰り返します。
遊び方のバリエーションとして、カラーピンを置かない(無色という色を加える)ことも可としたり、カラーピンの重複を認めたりするようなルールもあります。
マスターマインド類似の商品は多数あるようです。
8色バージョン、5桁バージョン、数字バージョン、アルファベットバージョン、色と形バージョンなどなど。
コンピュータゲームの習作の題材としてもよく使われているようです。
このゲームの問題は出題者=人間がヒットとブローの判定を間違えてしまう可能性があることでしょう。
故意ではないとしても、判定を間違えてしまったらゲームになりませんね。
正確な判定をするという意味でも、コンピュータに馴染み易いゲームといえるでしょう。
4.エクセル版デザイン(フォント)
デザインというにはオコガマシイですが、xillionのつくったエクセルのヒット&ブローの解説です。
まずはフォント。
Westminsterという書体をベースにしています。
でもこれって一般的なフォントなんですかね。たまたまあったから使っちゃたんだけど。。
皆さんのパソコンではきちんと表示されていますか?
やっぱりWestminsterといえばあの寺院を思い浮かべますね。
何か関係があるのかな。
5.エクセル版デザイン(スクリーン)
ゲーム画面は全画面表示を使用しています。
実は、これにはちゃあんと理由があるんです。
画面1行目を見ください。
左の青い4マスには、何があるのかわかりますか?
そう、あなたが当てるべき数字がはいっているんです。
ということは、すぐそこに答えがある状態なのです!!
でも、丸見えじゃあパズルにならないから、ちょっと意地悪をしちゃいました。
それは、青いマスに青い字で解答を書く!!ってことなんです。
そうすれば見えなくなりますよね。
でもこの数字、当てない限り、永遠に答えを知ることができないのです!
だから途中でギブアップしても、答えはわからず終い。
ちょっとフラストレーション・パズルですね。
まあ、当たらないことなんてありえないですから、ね。。
バージョン2.0では、負けた時に正解を表示するようにしてあります。
青いマスに青い字で書いた数字ですが、実は簡単に見えてしまいます。
それぞれのマスにカーソルをもって行くだけです。
というのも、カーソルを持って行くと、そのセルは”編集モード”になります。
そうするとエクセルの画面上部の編集エリアにその内容が表示されてしまうのです。
勘のいいあなたならもうお解りですね。
この編集エリアの表示をさせないために全画面表示を採用したのです。
さらにシートに魔法をかけて、この4マスにはカーソルを
持っていけないようにしちゃいました。
こんな風に小手先でプロテクトをしましたが、
単に文字の色を変更するだけでも見えちゃうし、
なんだか片手落ちです。。。ひょうっとしたら両手落ちかも。。。
6.ツールバーとエフェクト
お次の話題はツールバーです。
実は、このゲームの一番の売り。
なんといっても、サクサク感が抜群です(自画自賛です)。
シートに直接解答を入力した場合を想像してみてください。
入力が終わってEnterを押したら、カーソルがいつも一定方向に(デフォルトは右に)動いてしまいます。
これだと、一桁ごとの数字の入力が、とてもやりにくくなってしまいます。
思ったより矢印キーでカーソルを動かさなくっちゃいけないんですよね。
最後にちょっとしたスパイスをふりかけたました。
それは光るセルです。あなたの解答の数字をシートに貼り付けるときに、一瞬マス目が緑色に輝きます。
光っているように見えないですか?うーん。。。そうかも。。
あ、それからもうひとつ。(コロンボさんみたいでしょ?)
バージョン1.0では、青い能書きシートがありますが、これはヘルプファイルの前身です。
気にしないでください。
あと、目には見えないのですが、シートに入力規則を設けて数字以外入力不可としています。
でもツールバーから入力するようになったので、数字以外の入力はありえず、無用の長物となってしまいました。
ではゲームをお楽しみください。
7.二手目補完方式
ここからは思考ルーチンの解説です。
といっても非常に簡単な思考ルーチンです。
ソースコードが1スクロール以内に収まるぐらいの分量なので。。。。
これで結構優秀なロジックで、だいたい5〜7回で当てます。
実際に自分が数字をあてる時に行っていることを、そのままソースコードにしました。
こんなロジックです。二手目が特徴的ですので二手目補完方式と名付けました。
①初手はランダムな解答を作成
②二手目は①で使用していない数字のみ使用して解答を作成
③三手目以降は前回までの結果に合致する解答を作成
④③を繰り返す
はい、たったこれだけ。単純、単純。
1回目の解答で、使用している4つの数が解ってしまうような場合
(24通り、うち1つはビンゴ!)には
②の手法は不要ですが、たった0.5%の確率のために回避ロジックを入れるようなことは
しませんでした。(実は面倒くさがり屋さんなんです)
③の細かな方法ですが、まずランダムに仮の解答を作ります。
次に、この仮の解答を今までの答えとその結果に合致するかチェックをします。
もし合致した場合はそれを今回の正式な解答とします。
合致しない場合は仮の解答に1を足していき、チェックを繰り返します。
単純計算ですが、1回の思考ルーチンで最大、1万回の答えのチェックを行います。
そのためループさせている間がちょっと長く感じられることがあります。
まあ、エクセルが頑張っているのだなと優しく見守ってくださいね。
8.ゲームの確率
ゲーム自体の数学的基礎を少し。
4桁の数字というと0000から9999までしかありません。1万通りです。
しかも同じ数字を使っちゃいけないのですから、実際の答えのバリエーションは
5040通りしかないのです。
1桁目には0〜9までの10種類の数字がはいる可能性があります
2桁目は、1桁目で使用していない数字ということで、
9種類の数字がはいる可能性があります
3桁目は、1桁目でも2桁目でも使用していない数字ということで、
8種類の数字がはいる可能性があります
4桁目は、1桁目〜3桁目で使用していない数字ということで、
7種類の数字がはいる可能性があります
これらの組み合わせは
10 × 9 × 8 × 7 = 5040
なのです
意外と少ないと思いませんか?
さらに、1回目の解答で使用している数字が判る(ヒットもしくはブロー)組み合わせは、以下の通りです
4個判明− 24通り
3個判明− 576通り
2個判明−2160通り
1個判明−1920通り
判明せず− 360通り
また、1回目の解答で位置が正しいと判る(ヒットする)組み合わせは、以下の通りです
4個Hit− 1通り
3個Hit− 24通り
2個Hit− 262通り
1個Hit−1424通り
HITせず− 360通り
単なる確率を列記してみましたが、特に思考ロジックには無関係です。
9.完全合致方式
と、ここまで書いたものの、二手目補完方式はそれほど有効な方法ではないようです。
こちらをご覧ください
うん??確率論は難しいから実験しちゃえ!!
ということで実験してみたら、やはり完全合致方式(1手目のみランダムで以後は判定に合致するもののみ)の方が良い結果となりました。
2手目補完方式と完全合致方式で6000回対戦させてみたのですが、結果は2188勝1999敗1813分で完全合致方式の方が優秀でした。
正解する平均回数でも完全合致方式が5.51回、2手目補完方式が5.58回と微妙ながら完全合致方式が勝っていました。
たぶん2手目補完方式は、解答者の自己満足をくすぐるだけなのでしょうね。
私もだまされてしまいました。
この実験に使用したマクロもバージョン2.0に同梱してありますが、とても時間がかかるので、実行はしないほうがよいです。
マクロの名前は『思考実験』です。
で、結局、思考ルーチンも完全合致方式に変えちゃえました。
10.Mac移植版
ソースの日本語が文字化けしてエラーとなったので、全て英数字にかえました。
WestminsterのフォントがなかったのでAmerican Typewriterにしてみました。
ツールバーのtoolメニューにFitNumberボタンを設けました。Win版にはない新機能です。
現状をもとにあなたが入力すべき候補を挙げてくれます。
ツールバーを自動的に動かすようにしました。
shell命令が使用できなかったのでmacscript命令に変えました。こんな感じ。
Private Sub LinkXillion()
Dim str As String
str = "open location " & Chr(34) & "http://www.xillion.net" & Chr(34)
MacScript (str)
End Sub
ウェストミンスター寺院。イギリス国教会の聖堂。世界でも有数のゴシック建築。その基礎を築いたのは、最後のアングロ・サクソン系のイングランド王エドワード懺悔王でした。その後、イングランドを征服したノルマン系ウイリアム1世がここで戴冠式を行って以後、代々のイングランド国王がそれに続いてます。また世界的に有名なこの寺院には、歴史上有名な人物のお墓が多くあります。 万有引力の発見で有名なアイザック・ニュートンや、進化論で有名なチャールズ・ダーウインのお墓もここにあります。「ウエストミンスター」という名前は、文字通り「西の僧院」。西暦970年にベネディクト派の修道士が僧院(ミンスター)を建てた。それがシティ(つまり当時のロンドン)の西(ウエスト)にあったものだから、ウエストミンスターなんですって。 |

よれよれのレインコート、片時も離さない葉巻、そしてもじゃもじゃの頭。
この野暮ったい格好がトレードマーク。
さらには、冒頭部分で犯罪が描かれたあとに、
緻密な推理でトリックを暴いていく独特なスタイルがたまらないですね。
世界一有名な刑事ドラマです。
|
アイコンといってもGIFファイルですが。。。
これがwestminster。なかなか味があるでしょ。