當前位置:編程學習大全網 - 編程語言 - 遊戲 2048 的基本遊戲策略是什麽?

遊戲 2048 的基本遊戲策略是什麽?

最近很受大學生,高中生歡迎的壹款遊戲“2048”,幾乎在每個學生手裏都有這個遊戲。但是有很多人並不知道這個遊戲基本策略。

基本的思想就是遞歸生成,要嚴格按照壹定步驟,就像解九連環那樣,決不能碰運氣。

壹開始的步驟是這樣,如果左下角第壹個數字是,那麽就在他的右邊放,依次類推,直到剩下4或者2,此時只要往末尾的數字填壹個4或者2,頂端數字就會變成。然後在頂端數字旁邊,再用同樣的方法構造,……直到逐格降冪後出現4或者2。如果最後壹行用完了,就轉彎繞上來。

下圖是壹個遊戲剛開始的例子,我只要在右下角合並壹個2,頂端數字就可以變成32,然後我繼續再頂端數字旁構造16、8……

格子裏的總數字會隨著步數增加而以2或4地增加。所以,要達到2048,必須有足夠多的步數作為支撐。即玩家堅持的步數越多,勝利希望也越大。四個方向地位相等。.要持續遊戲,需要方格之間的“密度”(即數字大小)相對壹致。這樣才能使得合並變得可能。遊戲系統選擇壹個空格隨機出現2或4。所以當任何壹個方塊被移動時,它原來的位置都有壹定概率出現新的數字,從而可能打亂玩家的安排。

基於以上分析,可以得到下面的想法:

使得方格之間的“密度”趨於壹致。由於有壹個最大的目標(即2048),在完成這個目標前,這個方格的數值是相當大的。為了使得方格之間“密度”趨於壹致,我們需要盡量減少與之交接的格子數量。所以,壹個最大的數只能放在角上。既然只能放在角上,那麽就註定它不能移動(見分析4)。類似的,次大的數(如1024 512之流)只能放在最大數的直接鄰域,且順序固定或無大變化(如最底壹行是2048 1024 512 256)。同時,由於角點處有兩個方向(如左下角,有最左邊和最下邊兩個方向),而達到目的只需要壹個方向的排列就夠了,所以我們可以舍棄壹個方向(如舍棄最左邊,即保留最底壹行的排列是2048 1024 512 256,則“up”的操作被舍棄,否則會使得左下角最大數發生可能的位置變化,即我們只用三個方向完成遊戲。只要控制好,可以保證不出現非up不可的情況,下面都基於舍棄up來實現)。同時,為了生成和將最大數壓在左下角,left和down優先級相對比right高。

為了實現想法;在達到目標前,我們需要保持這樣的排列而無變化(註意,是無變化。即無論怎樣操作最底壹行的排列永遠是類似2048 1024 512 256這樣的大小順序),我們需要保證左右移動時最下壹行的排列不變,同時也是整個4乘4矩陣中最大的壹排。所以,在選擇left還是down的時候,當最下壹排沒有被填滿時,用down。填滿後視用left將最下壹排合並,出空格後繼續down,直到用left對最後壹排壓不出來空格。此時left和right隨便用,但是要控制好不出現非up的情況。

不斷重復以上過程。同時註意不斷提高最下壹排的密度。註意微調防止死。達到目標只是時間和耐心的問題。

總而言之,開局胡亂down+left,穩定後微調使得最下壹排按序排列成等比數列,再按思路走就行了。壹般2048用8分鐘,斐波那契慢壹點但也在15分鐘內吧。完全無腦直接按,只有瀕死狀態才微調,很快又能出無腦按。

  • 上一篇:軟件編程開發好學嗎
  • 下一篇:java編程語言有哪些特點
  • copyright 2024編程學習大全網