文章出處

前景:數獨游戲,是一種數學智力拼圖游戲,是“獨立的數字游戲”的簡稱,源自18世紀末的瑞士,后在美國發展,在日本得以發揚光大。

數獨游戲可以訓練玩家的邏輯推理能力,不少教育者皆認為數獨是鍛煉腦筋的好方法。

然而如何制作出這個游戲?首先要了解它的規則:

1.游戲會從一個部分帶有數字的九宮格開始。 在9×9的大九宮格(即3格寬×3格高)方陣里,每一格又細分為一個小九宮格。

2.游戲開始,已給定若干數字,其它宮位留白,玩家需要自己按照邏輯推敲出剩下的空格里是什么數字。

3.填數字時必須滿足以下條件:在空白的小格子里填上1~9中的數字,使得每個數字在“九宮格”的每行、每列、每個小九宮格中均只出現一次。

數獨的數字排列方式千變萬化,玩法邏輯簡單,每個數獨游戲的解答方案都是獨一無二的。

 

制作過程:首先明白數獨是分為3*3的9個大宮格,然后9個大宮格里面再分3*3的小宮格,這個就是數獨表,然后就在排列數字在里面,我設置的為500*500的大小,

但是怕玩家不習慣,所以設置的可以自由調整大小的功能,即為可以自由拉縮窗口,表格就會跟著其變化。

我選擇使用2個圖,一個是根據遍歷算法隨機排列出一份數獨表,這里我稱為答案吧,另外一個是把大部分數字隱藏,僅顯示部分數字的數獨表,這里稱為游戲表吧。

然而玩家只能看到游戲邊,答案表是被隱藏在下面的,其中顯示的數字背景色為灰色,并且是不能修改的,然而白色背景色的格子是允許填充數字的,然而,在游戲表上面填的數字,也許與答案的不一樣,

但是因為便歷算法,在判斷行,列,每個大宮格,符合條件沒有相同數字都算符合,反正答案只有一個,滿足游戲的本性,讓玩家自己探索,直達出現相同數字,即為錯誤,隨即

不能再次輸入數字了,但是沒有出現游戲結束的提示,因為游戲還是要繼續的。只有知道所有格子都填充完,并且沒有出現錯誤,游戲表就會和答案表相比較,其實一般都是正確的了,隨即就會彈出通關成功的提示。

 

困難與解決:因為數獨游戲的核心代碼很多,我的代碼大部分也是參考網上得來的,其中有個比較麻煩的是沒有辦法調整出多一個界面,原本是想像制作五子棋一樣,制作2個界面,一個為大界面,另外一個就是數獨界面,在數獨界面外,有選擇按鈕,比如“重置游戲”、“退出游戲”、“查看答案”、“難度”等。可是我在最初制作界面時候選擇的語句就是界面的3*3平均分配的語句,如果要改,可能就是需要把游戲界面填充在大界面,由于時間問題,沒有去實現。

還有比較多的問題是理解網上代碼的用法吧,因為數獨的核心代碼都是遍歷算法判斷是否正確,先設定好的答案,再根據顯示的數字去不斷判斷填的數字是否正確而已,主要是理解該實現的思想。

 

體會:其實很多游戲的開發都必須要詳細的分析和明確目標,因為在制作途中,你會發現,困難不可怕,可怕的是突發奇想的東西,往往你會想實現這些東西的時候,你會發現很難去調整你當初制作的方向和目標,拿數獨游戲來做比如吧,制作出來并不難,根據網上的參考還有自己Java的知識,融合在一起就能實現了,但是麻煩的是,你想多點新玩法,你就會犧牲很多東西的,有可能是和自己的目標沖突,所以,在制定好目標時候,應該先去實現了,在去找第二個目標,不然兩頭都無法到岸,只會活在瓶頸中。


文章列表




Avast logo

Avast 防毒軟體已檢查此封電子郵件的病毒。
www.avast.com


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()