|
Mastermind遊戲乃由以色列電訊專家Mordecai Meirowitz發明,本程式沿襲這套規則,並予以大大擴充。這是一個供兩人(或人機)對玩的猜謎,其中一方是出謎者,另一方是猜謎者。謎底由一組顏色組成,謎底的顏色組合須符合遊戲設定(詳見下文說明)。猜謎者每次猜謎後,出謎者須給予「提示」(亦稱「分數」)。提示由一組黑色和白色球(或方塊)組成,每個黑色代表猜謎者猜中了一個顏色而且位置正確;每個白色代表猜謎者猜中了一個顏色但位置不正確。當猜謎者所猜的顏色組合與謎底完全吻合(即所有顏色和位置均正確)時,他便贏了該局。舉例說,假設謎底是「1231」而猜謎者在某回合所猜為「1134」(這裡用數字代表顏色),則猜謎者在該回合所得分數應為兩黑一白。 |
![]() |
在載入遊戲後,你首先會看見一個標題頁面。在等待一會(或作出某些指定動作)後,你便會來到遊戲的背景畫面。以下介紹本程式的各種功能選單及控鈕。由於本人的程式有VBSrcipt、JavaScript、Flash和Visual Basic四個版本,各個版本的外觀和功能略有不同。以下僅介紹通用於大部分版本的功能。
Status Bar (狀態列)位於畫面的底部,用來向使用者提供一些有用的訊息,提示他採取某些行動。如果你在使用本程式時一時不知怎樣做,不妨看看狀態列的提示。

你會在背景畫面中找到一個「遊戲設定選單」。這個選單可供你選擇各種遊戲設定(本程式共有1,424種不同設定)。你可以在選單中找到九個下拉式選單(或按鈕),其中七個("Who guesses?, "Number of Colours", "Start from", "Length of Code", "Hints contain error(s)", "Order Type", "Colour repeated?")控制遊戲設定,其餘兩個("Display Mode", "Input Method")則控制遊戲的顯示模式和輸入方式。以下說明各個下拉式選單(或按鈕)的功能。
本選單有三個選擇:"You guess"(由你來猜), "Computer guesses"(由電腦猜)以及"Watch computer play"(看電腦自己跟自己玩)。第一個選擇是讓你做猜謎者,你需要猜電腦所出的謎底。第二個選擇是讓你做出謎者並讓電腦做猜謎者,電腦會根據你給的提示猜你的謎底。第三個選擇是讓電腦同時做出謎者和猜謎者(請注意,電腦不會「偷看」謎底),你可以觀看電腦如何猜謎。
這個選單控制謎底所能包含的顏色種類,由五種顏色至十種顏色不等。出謎者所能選用的顏色限於COLOUR PANEL (色板)所示的顏色(詳見下文說明)。
這個選單有兩個選擇:"Trial 1" (起局)和"Middle" (中局)。「起局」表示遊戲是從第一回合開始,像一般的Mastermind遊戲一樣。「中局」則表示遊戲並非從第一回合開始,而是從某個中間回合開始,在遊戲開始時已有若干個回合的猜謎結果。假如你是玩You guess或Watch computer play,電腦會首先隨機產生若干個回合的猜謎結果,然後由你或電腦根據已有的結果及提示繼續猜下去。假如你是玩Computer guesses,則電腦會詢問你想從第幾(2至9)個回合開始,並會請你輸入開首若干個回合的猜謎結果,讓電腦繼續猜下去。請注意,如為中局遊戲,電腦會在RECORD Area (紀錄區)以較淺的顏色或特殊符號表示預先產生的猜謎結果,以資識別。
這是指謎底所含顏色的數目。謎底長度分兩種類型:specified (確定的)或unspecified (不確定的)。前者是指謎底所含顏色的數目剛好等於某一數字("3"至"8"),後者則是指謎底中可能含有空白。不確定的謎底長度由"Unspecified (3 - 4)"至"Unspecified (3 - 8)"不等(即謎底中可以含有一至五個空白)。惟請注意,空白不算是一種顏色,在計分時亦不會把空白計算在內。例如,假設謎底為「bb345」而猜謎者在某回合所猜為「b304b」(這裡用"b"代表空白),則該回合分數應為一黑一白。
這個選單有兩個選擇:No error (沒有錯誤)和May contain error(s) (可能有錯)。若選擇前者,則電腦所提供的所有提示均無錯誤,與一般的Mastermind無異。若選擇後者,則部分提示可能會含有(一或多個)錯誤。遊戲進程會視乎你是玩You guess還是Watch computer play而有所不同。
若是玩You guess,則在第一回合完成後會出現一個Error (錯誤)按鈕。倘若你認為所給的提示互相矛盾,你便可按下該Error按鈕。電腦接著會判斷現有的提示是否真的互相矛盾。若是,電腦會把所有錯誤改正,讓你繼續猜下去。倘若現有的提示並不含有矛盾,或者你太遲才發現矛盾,則你在該局便算輸。因此,對猜謎者來說,May contain error(s)是一個要求頗高的遊戲設定,因為猜謎者不僅要能判斷提示是否含有矛盾,還要在「適當時機」發現矛盾。
若是玩Watch computer play,則電腦會如常猜謎。在發現錯誤時,電腦會發作一個訊息,告訴你它發現了錯誤,並請你按下OK按鈕。你按下按鈕後,電腦便會自行把所有錯誤改正,然後根據更正後的提示繼續猜謎。
請注意,Computer guesses和May contain error(s)是一對「不相容」的選擇,即你不能同時選取這兩個選擇。假如你在遊戲中有意或無意提供了錯誤的提示,電腦早晚會發現提示中含有矛盾而不能繼續猜下去。
共有兩種排序類型:"Fixed order" (固定次序)和"Random order" (任意次序)。前者是指謎底所含的顏色須按照Colour Panel (色板)的既定順序排列,而空白須放在最後。後者則是指謎底所含顏色(包括空白)可按任意順序排列。
此一選項決定謎底中顏色所能重複出現的次數,可供選擇的選項包括"No repetition" (不可重複)、"Each colour at most n times" (每種顏色最多出現n次)和"May be repeated any times" (重複次數不限),其中"n"是2至7之間的整數。
共有兩種顯示模式:"Colour" (顏色)和"Number" (數字). (Flash版還有第三種顯示模式: "Both" (兩者)即前述兩種模式的結合。)在"Colour"模式下,所有猜謎結果和謎底均以顏色球(或方塊)表示。在"Number"模式下,所有顏色均以數字(0至9)表示,而空白則以字母"b"表示。各種顏色所對應的數字以Colour Panel (色板)上所示的數字為準。請注意,JavaScript版並無這項功能。
你可在遊戲進行的任何階段更改Display Mode,遊戲結束時電腦亦會提示你更改Display Mode。
共有兩種輸入方法:"Mouse" (滑鼠)和"Keyboard" (鍵盤)。"Mouse"方法是指遊戲者須用滑鼠透過dragging (拖曳)、double-clicking (雙按)、clicking (單按)等方式進行猜謎或給予提示。"Keyboard"方法則是指遊戲者透過鍵入數字(或用"b"代表空白)進行猜謎或給予提示。請注意,JavaScript版並無這項功能。
這個選項只適用於You guess和Computer guesses遊戲。你可在遊戲進行的任何階段更改
Input Method。
在選定遊戲設定後,你便可以按此按鈕,開始遊戲。
除了遊戲外,本程式亦包含一個示範功能。按下此按鈕後,你便可看到電腦不斷以隨機選取的遊戲設定自行出謎並猜謎(電腦不會作弊!)。請注意,假如你讓程式停留在背景畫面達五分鐘,電腦亦會自動啟動示範功能。
此按鈕讓你開關背景音樂和音效。只有Flash版和VB版才支援這項功能。
此按鈕讓你開關背景動畫。只有Flash版和VB版才支援這項功能。

你按下Start Game按鈕或Start Demo按鈕後,便會進入這個畫面。以下介紹出現在這個畫面的功能。
畫面的下方為RECORD Area (紀錄區),此區用以記錄先前各回合的猜謎結果和提示。
畫面的右上方為Game Setting Frame (遊戲設定提示框),用以提示遊戲者當前的遊戲設定。
Colour Panel (色板)位於畫面左上方的下半部。色板顯示謎底所能含有的顏色種類。色板內每個顏色球(或方塊)上的數字是每種顏色的對應數字。
在遊戲進行的整個過程(如為Watch computer play遊戲)、遊戲結束後或在示範程式運行期間,Colour Panel的位置會被一個Answer Frame (謎底顯示框)或Possible Answer Frame (可能謎底顯示框)取代,此顯示框會顯示該局遊戲的謎底或可能謎底。
Input / Message Area (輸入/訊息區)位於畫面左上方的上半部,是遊戲者輸入所需資訊或電腦提供資訊的範圍。本區的外觀會隨著遊戲的進程而變化。在電腦顯示分數或請遊戲者輸入分數時,本區會擴大至覆蓋畫面的整個上半部(並因而遮蓋了Game Setting Frame和Colour Panel)。
在運行示範程式時,此滑桿/選鈕會出現於Input / Message Area。此滑桿/選鈕能讓你控制示範程式的運行速度。在Flash和VB版本中,它顯示為滑桿;在VBScript和JavaScript版本中,它顯示為一組選鈕。
此按鈕讓你在遊戲進行的任何階段結束該局遊戲,但在電腦正在猜謎或顯示訊息方塊時則不能使用此功能。請注意,如果你是玩"You guess"遊戲,並且已玩了至少一個回合,則在按下此按鈕後,Answer Frame會顯示該局的謎底。
此按鈕讓你結束示範程式,並返回背景畫面。
以下為執行本程式時可能會經歷的各種Game Statuses (遊戲階段)。
此遊戲階段最常出現,是指猜謎者嘗試破解謎底的階段。
此遊戲階段只出現於Computer guesses遊戲。在此階段中,電腦會提示你準備一個謎底。如果遊戲設定是middle (中局遊戲),在此階段中電腦會請你在遊戲開始前預先輸入若干組猜謎結果和提示。
此遊戲階段是指猜謎者已成功破解謎底。
此遊戲階段是指猜謎者在適當時間(既不早也不遲)正確判斷現有的提示存在矛盾。在出現此情況時,如果你是在玩Computer guesses遊戲,電腦便不能繼續猜下去;否則電腦會把所有錯誤改正,讓猜謎者繼續進行遊戲。
此遊戲階段是指電腦已把所有錯誤改正,猜謎者正繼續猜謎。
此遊戲階段是指遊戲者在遊戲中途結束某局遊戲。
如果你是玩You guess遊戲,你必須在一小時內(VBScript和JavaScript版沒有時間限制)破解謎底,最多可猜的次數(包括遊戲開始前已預先設定的猜謎結果)因應不同版本而有不同:VB版為27次,其餘三個版本為18次。假如你不能在指定次數或時間內猜中謎底,你便輸了該局遊戲。
此遊戲階段只有在你玩You guess遊戲且遊戲設定為May contain error(s)時才有可能出現。假如你錯誤判斷所給提示存在矛盾而實際上並無矛盾,遊戲便會進入此一階段。此時電腦會在Possible Answer Frame (可能謎底顯示框)中顯示一個可能謎底(即符合現有提示的一組顏色組合)。
此遊戲階段只有在你玩You guess遊戲且遊戲設定為May contain error(s)時才有可能出現。假如你太遲才發現錯誤,遊戲便會進入此一階段。電腦會告訴你錯誤出在哪一回合,以及你應在哪一回合發現錯誤。

