《帕特里克的無窮箱子奇遇》:“推箱子”與數(shù)學(xué)奇遇記

當(dāng)游戲的熱情遇見智慧的美妙。

編輯祝思齊2022年04月18日 16時01分

在各種各樣的益智解謎游戲中,“推箱子”可以算是最經(jīng)典、知名度最高的類型之一,有點(diǎn)類似于《掃雷》和《蜘蛛紙牌》。它玩起來簡潔明快,沒什么壓力,即使是不了解電子游戲的人,也能從中體會到樂趣。

不過,也許是因?yàn)樘^經(jīng)典,“推箱子”在大多數(shù)人心目中被打上了休閑、輕度、碎片化之類的標(biāo)簽,他們可能會在通勤路上、飯后睡前,花一點(diǎn)時間玩?zhèn)€幾局,不會特別鉚足了勁嘗試解決問題或者獲得什么成就——甚至不太介意游戲的名字。而換個角度看,對休閑、益智的重視也讓許多“推箱子”游戲在玩法上趨于雷同,只有那些最天馬行空的創(chuàng)新——比如《Baba Is You》——才能給人留下深刻印象。

《帕特里克的無窮箱子奇遇》(Patrick’s Parabox)就是一款能給人留下深刻印象的游戲。

不就是“推箱子”么……等等,還能這么推的嗎?

腦洞大開的關(guān)卡設(shè)計

《帕特里克的無窮箱子奇遇》賣相非常可愛,上手也非常簡單。玩家只需要將作為“主角”的笑臉箱子和其他一些箱子推到指定地點(diǎn),就大功告成。

然而,我很快發(fā)現(xiàn)這款游戲并不像看上去那么普通。它的確擁有經(jīng)典“推箱子”游戲的一切要素:一些箱子、一個推箱子的“人”,以及不小心把箱子推到墻角就會陷入死局的基本規(guī)律。但游戲還引入了一種“嵌套”的概念——一些箱子可以嵌套進(jìn)鏤空的箱子里,箱子還可以通過縮放、映射等等機(jī)制,通過非常意想不到的方式到達(dá)其他地方。

換句話說,各種鏤空的箱子和嵌套機(jī)制,相當(dāng)于把原本的地圖拓展了好幾倍,讓這個經(jīng)典的滑塊問題的解法變得更加復(fù)雜有趣。這種用很小的點(diǎn)子撬動了很大創(chuàng)意的作品,讓人十分佩服。

箱子之間的嵌套關(guān)系是游戲創(chuàng)新的核心

整個游戲一共有350關(guān),每個大章節(jié)主推一種玩法,越到后來越腦洞大開。比如你有可能要用一些鏤空箱子造出原本不存在的推動路線,或者讓箱子放大、縮小,在同步嵌套中“遠(yuǎn)程操控”一些箱子到達(dá)指定地點(diǎn)……

游戲的開發(fā)者是Patrick Traynor,在之前的一些采訪中,他提到過這部作品的創(chuàng)意來源。Patrick讀大學(xué)時是美國加利福尼亞州大學(xué)圣地亞哥分校游戲開發(fā)俱樂部的一員,當(dāng)時他和朋友們一起在游戲社團(tuán)中創(chuàng)作過一個小型Demo,基本玩法也是推箱子,但是加入了一些潛行元素。之后,他自己根據(jù)最初的想法做了一個雙人游戲的模型,其中一位玩家控制的角色個子很小,而且可以穿墻——畢竟要“潛行”嘛。

沒過多久,Patrick暫時對這個項(xiàng)目失去了興趣,將它擱置起來。過了4年多,他才在陰差陽錯之間又把當(dāng)初的代碼找出來,想在一次朋友聚會上展示。剛好,當(dāng)時另一位開發(fā)者juner在某次Game Jam中公布了一款同樣帶有多層嵌套元素的推箱子游戲《Sokosoko》。Patrick很受啟發(fā),決定將這個點(diǎn)子繼續(xù)做下去,最后形成了現(xiàn)在的樣子。

雖然創(chuàng)意的雛形誕生很早,但這款游戲大概花了Patrick兩年多的集中開發(fā)時間。在自己的社交動態(tài)和采訪中,Patrick提到了好幾個重要的靈感來源。除了juner的游戲,還有之前同樣以燒腦著稱的獨(dú)立游戲《Baba Is You》以及另一款久負(fù)盛名的“推箱子”游戲變體《Stephen’s Sausage Roll》。

先來說說相對較老的那個。《Stephen’s Sausage Roll》是一款2016年發(fā)售的解謎游戲。游戲中的“箱子”被設(shè)定為香腸,玩家的目標(biāo)是將香腸全部烤熟。為此,玩家必須控制小人將這些香腸推到散布在地圖中的烤架上。

把香腸妥善地烤熟是一項(xiàng)技術(shù)活

這款游戲的解謎難點(diǎn)在于,香腸有上下兩個面,每個面必須經(jīng)過且僅能經(jīng)過烤架一次,次數(shù)多了就會被烤焦,游戲失敗。與此同時,香腸一般占據(jù)并排的兩個格子,而烤架的形狀和尺寸多種多樣……所以,嚴(yán)格意義上講,香腸需要烤的并非只有上下兩個面,而是有4個“面”,或者說“格子”,玩家在“將箱子推到指定地點(diǎn)”的經(jīng)典目標(biāo)之外,還多了一個如何讓它每個面都在指定地點(diǎn)滾一遍的難題。

相信我,這個小小的設(shè)計為玩家增加的障礙難以估量。

另外,在《Stephen’s Sausage Roll》中,小人可以站在任何方位,用叉子將香腸前后左右移動,而不是像經(jīng)典的“推箱子”游戲那樣只能向前推。在站位合理的情況下,也可以同時移動多個香腸。借助地圖中的梯子,小人還可以站在香腸以及場景中的其他高臺上,香腸之間也可以堆疊——沒錯,這是一款有立體地圖的推箱子游戲!而這些機(jī)制究竟是開發(fā)者的“憐憫”,還是讓解謎關(guān)卡變得更加復(fù)雜,就見仁見智了。

作為《帕特里克的無窮箱子奇遇》的另一個重要靈感來源,2019年發(fā)售的游戲《Baba Is You》對“推箱子”類型的創(chuàng)新看起來要更激進(jìn)一些。在Steam評論區(qū)里能夠看到不少玩家表示,這個游戲玩到后來讓他們對自己的智商產(chǎn)生了懷疑……

這種感覺太正常了,因?yàn)椤禕aba Is You》將游戲的基本規(guī)則也變成了箱子——游戲里需要推動的“箱子”實(shí)際上是寫著文字的方塊,方塊根據(jù)文字顯示不同具有不同功能,把“箱子”推成不同順序就能夠改變游戲規(guī)則。這樣一來,玩家的目標(biāo)不再是老老實(shí)實(shí)把箱子從一個地方推到另一個地方,而是直接將構(gòu)成規(guī)則的名詞“推”成新的順序,組成新的句子以贏得游戲。比如把規(guī)則改成“Baba Is Win”就能原地過關(guān)。而在解謎過程中,原本構(gòu)成障礙物的“wall”和“rock”也能通過這種方式變成別的工具,還有“shift”和“flag”之類的輔助型“箱子”能幫助你想辦法調(diào)整單詞的順序等等,形式非常多樣,游戲機(jī)制靈活得叫人嘖嘖稱奇。

當(dāng)游戲規(guī)則也變成了箱子,玩家可能會和小兔子主人公一樣陷入茫然

就個人感受而言,《Baba is You》對我這種普通玩家來說足夠吸引人,但有些關(guān)卡確實(shí)有些太難,游戲的難度曲線過陡、缺乏適應(yīng)過程也是許多玩家重點(diǎn)反饋的問題?!杜撂乩锟说臒o窮箱子奇遇》在這個方面做得比較好,基本每一章引入一種新機(jī)制,“手把手”地教上一陣子,循序漸進(jìn)地解釋本章的主要玩法之后再出一些綜合性比較強(qiáng)的謎題,所以整體難度曲線比較平滑。這并不是一件容易的事,Patrick也在采訪中表示,難度曲線是設(shè)計過程中遇到的最大困難之一,給朋友們試玩過很多遍才慢慢定下來。

不過,總體而言,這些小瑕疵都不妨礙這幾款游戲在謎題設(shè)計上的獨(dú)樹一幟,它們?yōu)楸姸嗤婕液烷_發(fā)者們打開了新世界的大門。

當(dāng)“益智”游戲遇上數(shù)學(xué)

歷史上最早的“推箱子”游戲《倉庫番》(Sokoban)誕生于1982年,由日本Thinking Rabbit公司首次發(fā)行。游戲?qū)儆诨瑝K謎題的一種,最初的版本有10個經(jīng)典關(guān)卡和10個帶隱藏墻壁的演化關(guān)卡。1984年,Thinking Rabbit推出了有50個關(guān)卡的《倉庫番2》,之后又有了1989年的《倉庫番完美篇》和1991年的《倉庫番復(fù)仇篇》,兩者各有306個關(guān)卡,有點(diǎn)類似于總集篇。

游戲最初是在日本非常古老的家用PC上發(fā)行的,后來通過Thinking Rabbit的授權(quán)移植到了一些別的平臺和操作系統(tǒng)上,因此也衍生出了各種各樣不同的版本,包括Game Boy、SFC、PS和手機(jī)平臺的版本,但是游戲本身并沒有特別大的變化,甚至可以說一直再沒有官方新作誕生,反而是各種各樣的衍生和創(chuàng)意作品越來越多。

但不管怎樣,游戲本身以及它被后輩們模仿的核心沒太大變化?!皞}庫番”系列基本奠定了此后大多數(shù)推箱子游戲的基本規(guī)則,比如箱子只能推不能拉,以及人不能同時推兩個箱子。當(dāng)然這些規(guī)則上的細(xì)節(jié)在后來者的設(shè)計中都可以被打破。

古早的《倉庫番》游戲已經(jīng)具備了“推箱子”游戲的基本雛形

那么,為什么“推箱子”如此長盛不衰,吸引了一代又一代開發(fā)者和玩家呢?原因也許在于,“推箱子”雖然經(jīng)常被當(dāng)作休閑益智游戲,但它本質(zhì)上是個非常復(fù)雜的問題,比表面看上去復(fù)雜得多,而人們樂于通過戰(zhàn)勝這些難關(guān)獲得樂趣和滿足感。

就像所有類型的游戲都會有孜孜不倦,探索各種可能性和最優(yōu)解的硬核玩家,“推箱子”游戲也有一批忠實(shí)擁躉。有些特別的是,很多致力于研究“推箱子”的人是數(shù)學(xué)專業(yè),尤其是專注于研究算法的人。如果你在網(wǎng)絡(luò)上搜索“推箱子”,會發(fā)現(xiàn)有相當(dāng)一部分結(jié)果指向“推箱子游戲自動求解算法”,“箱子推動路徑搜索算法”乃至“判斷推箱子關(guān)卡是否有解的多項(xiàng)式空間的算法”等等看起來令人生畏的東西。

實(shí)際上,“推箱子”這種表面上很簡潔和基礎(chǔ)的解謎游戲,其復(fù)雜的本質(zhì)很早就受到了數(shù)學(xué)家們的關(guān)注。

這個問題究竟有多復(fù)雜?在維基百科“推箱子”詞條的頁面上能看到這樣一段描述:“推箱子的解的復(fù)雜度被數(shù)學(xué)家證明了達(dá)到NP難(NP-hard)的程度,后來更被證明了它是PSPACE完全的?!?/p>

描述中這兩個看起來很專業(yè)的名詞都涉及到計算復(fù)雜度理論??床欢矝]關(guān)系,一般人只要知道,要用數(shù)學(xué)方法去證明一個推箱子關(guān)卡有解,是這一領(lǐng)域最困難的問題之一。如果要編寫程序去自動求解某個推箱子關(guān)卡,運(yùn)算量也十分龐大,甚至量子計算機(jī)也不能快速解決……

面對“推箱子”游戲的變數(shù),人腦比計算機(jī)更擅長處理

一位“推箱子”愛好者,同時也是數(shù)學(xué)專業(yè)領(lǐng)域的博主曾經(jīng)寫過不少博文,專門討論相關(guān)的數(shù)學(xué)問題,比如“推箱子”關(guān)卡文件和正則表達(dá)式、“推箱子”路徑搜索算法……他也在實(shí)際操作中發(fā)現(xiàn),“我們舉辦了好幾年的MF8(魔方吧)‘推箱子’網(wǎng)絡(luò)比賽,尚未見到有人或者組織能夠用計算機(jī)快速解出我們的比賽主關(guān)”,而且,“在實(shí)踐中,大多推‘箱子’求解程序使用大量的內(nèi)存,往往是隨‘推箱子’關(guān)卡大小呈指數(shù)增長”。

在這一點(diǎn)上,人腦可能比計算機(jī)更神奇。玩家們往往憑借直覺和反推的邏輯思維去解決游戲中的謎題,并且非常享受過程中的挑戰(zhàn)。而對開發(fā)者來說,這意味著他們有大量毫不重復(fù)的關(guān)卡可用,在設(shè)計上擁有非常廣闊的創(chuàng)作空間。在經(jīng)典機(jī)制之外加上各種變數(shù),就更加千變?nèi)f化。

當(dāng)然,這也可能造成一些困難。比如《Baba Is You》在很長時間中一直在更新關(guān)卡,小修小補(bǔ),因?yàn)橥婕以趯?shí)際游玩的過程中推出了很多開發(fā)者都沒想到的路線,有些容易導(dǎo)致關(guān)卡出現(xiàn)Bug。關(guān)卡編輯器也是在推箱子游戲愛好者中很受歡迎的更新,大佬們紛紛自己上手,設(shè)計出各種精彩的謎題。

回到《帕特里克的無窮箱子奇遇》,如果說它在我眼中有什么在同類游戲中獨(dú)樹一幟的特殊魅力,大概就是那種毫不掩飾的“Geek感”。游戲中的嵌套機(jī)制必定會在某個時刻造成“套娃”的效應(yīng),在后面的關(guān)卡中會出現(xiàn)“無窮大”和“無窮小”兩個悖論。這意味著玩家在游戲中將某個箱子無限地推出了現(xiàn)有的嵌套箱外,或者將某個箱子無限地推進(jìn)現(xiàn)有的嵌套箱里面,非常有意思。網(wǎng)絡(luò)上還出現(xiàn)了如何同時推出兩個悖論的教程。這種感覺還挺奇特的,仿佛自己一不小心在游戲中造出了什么神秘時空……就像小時候總喜歡盯著相對而立的兩面鏡子中無限延伸的空間那樣。

在游戲中,有時候能推出悖論共存的神秘時空

這些機(jī)制將游戲和數(shù)學(xué)的聯(lián)系在明面上表現(xiàn)了出來,搭配上可愛的美術(shù)風(fēng)格和關(guān)卡本身的樂趣,有點(diǎn)痛快地展示“Geek的浪漫”的意思。而且,這種浪漫是錦上添花,一點(diǎn)也不高高在上,并不會影響普通玩家通關(guān);硬核玩家則可以深挖這些機(jī)制,比如B站上就出現(xiàn)了計算數(shù)學(xué)專業(yè)的UP主發(fā)出的視頻《如何用“集合論”知識玩“推箱子”》,感覺就是用理論知識解釋了各種關(guān)卡為什么要這么解。在評論區(qū)中,不少同好開始熱烈地討論集合論是不是最適合用在這款游戲上的理論,讓我覺得自己仿佛誤入了數(shù)學(xué)興趣小組。

一個令人驚喜的好例子

總而言之,我想,最精巧、最具生命力的解謎游戲的魅力,除了關(guān)卡本身的創(chuàng)意,還在于這種智性的浪漫。你能感覺到它背后有更深層的東西,能隱約地瞥見其中的奧秘,但你不需要變得很專業(yè)或者很聰明就能體會到樂趣,何況還有關(guān)卡編輯器這種參與感和互動感很強(qiáng)的元素存在。

《帕特里克的無窮箱子奇遇》是一個令人驚喜的好例子。它某種意義上的確是站在巨人肩膀上的產(chǎn)物,在它之前,各種各樣的開發(fā)者們已經(jīng)為“推箱子”這一地基般的游戲類型添磚加瓦了40年,但《帕特里克的無窮箱子奇遇》依然展現(xiàn)出了自己的特性。我喜歡開發(fā)者展現(xiàn)出的對游戲的熱情,還有在過程和結(jié)果中展現(xiàn)出的智慧的美妙。

未來它會不會像《Baba Is You》那樣進(jìn)行大幅更新,或者玩出什么新花樣呢?目前還沒有這種跡象,但這種可能性始終值得期待。

0

編輯 祝思齊

zhusiqi@chuapp.com

咖啡因驅(qū)動型碼字機(jī)。

查看更多祝思齊的文章
關(guān)閉窗口