2048 (遊戲)

《2048》是一款單人滑塊類遊戲，由義大利網路開發者加布里埃萊·奇魯利（Gabriele Cirulli）編寫，並在GitHub上發布。遊戲的目標是在網格上讓相同的數值的方塊碰撞合併，最終取得數值為2048的方塊；在達成目標後，玩家可以繼續遊戲，創造出更大數值的方塊。作者花費一個周末，使用JavaScript和CSS編寫了這款遊戲，於2014年3月9日將其作為自由及開放原始碼軟體發布，採用MIT許可證。iOS和Android版本隨後於2014年5月發布。

《2048》在兩款《Threes!》仿製遊戲的基礎上做了改進，實際上借鑑了《Threes!》的概念。與2013年《Flappy Bird》變體泛濫的情況類似，《2048》發行後也有眾多變體遊戲湧現。遊戲受到評論家的普遍好評，同時被稱「如病毒般傳播」。但《Threes!》的創作者們對此表示不滿。由於《2048》的數學性質，眾多人工智慧研究者對該遊戲做了研究。

## 玩法

<image>

《2048》在4×4的網格上進行。玩家可以使用上、下、左、右四個方向鍵移動所有方塊。但在部分情形下，不可向某些方向移動。遊戲開始時，網格上會出現兩個數值為2或4的方塊。每次移動後，另一個數值為2或4的新方塊會隨機出現在空方格上。方塊會沿著指定的方向滑動，直到被其它方塊或網格邊緣阻擋。如果兩個相同數值的方塊碰撞，它們將合併成一個方塊，其數值等於兩個方塊的數值之和。如果三個數值相同的方塊碰撞，則只會合併靠近終點方向的兩個方塊，距起點最近的方塊的數值不變。若一行或一列中的方塊數值均相同，則沿著該行或該列滑動會合併前兩個和後兩個方塊。在同一移動過程中，新生成的方塊不能再與其他方塊合併。數值較高的方塊會發出柔和的光芒；但隨著得分增加，光芒會不斷變暗。方塊數值都是2的冪，最大為131072。界面右上方的記分牌會記錄玩家的分數。玩家的初始分數為零，每當兩個方塊合併時，分數會增加，得分取決於合併後方塊的數值。

玩家取得勝利的條件是獲得數值為2048的方塊。達到這一目標後，玩家可以繼續遊戲，以獲得更高的分數。當玩家沒有合法的移動方法時，即出現了網格上沒有空方格，且相鄰方塊的數值均不相同的情況，遊戲就直接結束。

### 策略

《2048》的一種策略是將最大數值的方塊保持在特定的角落，並且儘量避免移動它。對於其他方塊，應儘可能讓相鄰方塊的數字大小接近，並按照數字大小的線性順序排列方塊，以形成蛇形或是直角形。此外，儘量選擇能夠合併多個方塊的移動方式。

## 開發

19歲的加布里埃萊·奇魯利（Gabriele Cirulli）在部落格中自稱，在開發遊戲之前，他沉迷於《1024!》和《2048》這兩款遊戲。其中，《1024!》由位於北京的Veewo Studio開發，是《Threes!》的仿品，其App Store的描述曾寫著「無需為《Threes!》付費」；《2048》由Saming開發，是《1024!》的仿品，與奇魯利開發的遊戲同名，但在機制上略有不同。奇魯利在《2048》的自述文件中提到，他的遊戲基於Saming開發的《2048》。隨後，為了「創建自己的版本」，並想要測試自己是否能從零開始編寫一款遊戲，他用了一個周末製作出了這款遊戲，並於2014年3月9日在GitHub上發布，採用MIT許可證開源。他認為他製作的遊戲結合了先前兩款遊戲的功能，因此起名為「2048」。他說：「這是打發時間的一種方式。」並稱其與最近發布的iOS遊戲《Threes!》「在概念上相似」，是《1024!》的仿製遊戲。但《2048》對《1024!》的美術風格和遊戲玩法做了一些改良。

這一周末項目在一周內就獲得了超過400萬的訪問量，奇魯利對此感到驚訝。奇魯利表示他不願意從其他人創造的概念中賺錢，因此遊戲免費。他在部落格中稱，最初雖考慮開發移動端的應用程式，但因沒有經驗作罷；在Ketchapp開發移動版《2048》後，他後悔浪費了這個機會，並決定開發移動版應用。2014年5月，他發布了iOS和Android移植版本。

### 改編

<image>

《2048》控制方式簡單，因此它能夠在MYO手勢控制手環的推廣影片中使用，且由於原始碼開放，它還可以作為編程教學輔助工具使用。在2014年的Matlab Central Exchange編程比賽中，獲得第二名的是可以自動遊玩《2048》的人工智慧系統。其他人為原始遊戲添加了許多內容，包括得分排行榜、撤銷功能，以及對觸控螢幕操作的適配等。

《2048》的衍生版本已在網上發布，例如包含Doge表情包、《超時空奇俠》、《Flappy Bird》和《俄羅斯方塊》元素的版本，以及3D版和網格大小不同的版本。奇魯利將這些衍生作品視為「開源軟體之美的一部分」，並且「只要它們在原始遊戲上做出了新的、創造性的修改」，就不會反對。2014年，Ketchapp在iOS應用商店中發布了該遊戲的非官方仿品，並通過廣告獲利。遊戲還有《超時空奇俠》的衍生版本。任天堂3DS的eShop上也有一個仿品，由Cosmigo在2014年6月19日發行。

## 反響

《華爾街日報》形容這款遊戲是「專為數學極客準備的《糖果傳奇》」，而《商業內幕》則將其視為「《Threes!》的升級版」。《華盛頓郵報》的凱特琳·杜威（Caitlin Dewey）稱其為「一款讓人上癮的、極簡主義的、讓人懊惱的遊戲」，同時英國的《獨立報》認為它「極富吸引力」。《洛杉磯時報》的評論家將《2048》發布後的現象與《Flappy Bird》相提並論。這兩款遊戲都取得了巨大成功，其簡單易上手的操作方式導致許多衍生遊戲迅速湧現。它們都「如病毒般傳播」，且「非常容易讓人著迷」。虎嗅網也稱，「《2048》是一款現象級的遊戲，其在全球的風靡程度甚至超越了《Flappy Bird》」。然而，《Flappy Bird》的迅速爆紅給創作者阮河東帶來了巨大的壓力，因此他隨即決定將遊戲下架。當奇魯利被問及是否可能會遇到類似的情況時，他表示，儘管《2048》的規模遠不及《Flappy Bird》，但他已經「經歷了這個階段」；並且一旦決定不在這款遊戲上盈利，他就「不再感到尷尬」。

《獨立報》的James Vincent將《2048》稱為「仿品的再仿品」。面對廣泛的模仿現象，《Threes!》的創作者們在遊戲官網發表了一份約45000字的聲明，並附上了遊戲在14個月中的開發日誌。在聲明中，他們透露曾嘗試過《2048》的方塊合併玩法，但最終決定不採用，因為這樣會使遊戲變得過於簡單。他們也聲稱，《2048》太容易通關，是一款「失敗的遊戲」；而《Threes!》的設計目的是「持續數月，甚至數年」。虎嗅網的評論認為，《2048》比《Threes!》更加簡單，而這正是它的優勢，玩家可以在碎片時間裡遊玩。同時，評論中也提到，《Threes!》不敵《2048》，很大程度上是設計及定價的問題。

## 人工智慧

《2048》的數學性質使其成為人工智慧研究者感興趣的遊戲。截至2022年，人工智慧就有超過95%（可能超過98%，但測量存在噪聲）的機率合成數值為16384的方塊，超過75%（可能超過80%）的機率合成數值為32768的方塊，並且超過3%的機率合成數值為65536的方塊（相比於之前的研究結果有所提升）。由於遊戲的隨機性，以及空餘空間的缺乏，合成數值為65536的方塊的最佳機率預計會較低；這也印證了受限棋盤的最優解。

《2048》的AI策略使用期望最小最大演算法搜索到指定的深度，並使用換位表以避免重複。與終局資料庫類似，換位表可用於估計很多數值較大的方塊在合適的位置上時成功的機率（即構建數值足夠大的方塊，同時不破壞方塊的布局）。位置評估函數會優先選擇空方格，傾向於選擇有更多合併可能性的移動方式，並儘量將較大的方塊放置在邊緣，同時會考慮方塊大小的單調性，尤其是數值較大的方塊。一些論文使用了時序差分學習。

## 基本資料

- 頭銜：2048
- 開發者：加布里埃萊·奇魯利（Gabriele Cirulli）
- 出版社：Solebon llc、Cosmigo（3DS）
- 發行日期：網頁iOS、Android任天堂3DS
- 類型：益智
- 模式：單人