透過Baba is you看「玩點敘述」
注:需要點語言學基礎才能看得懂……
一言蔽之,Baba is you是新增了「語義箱」的推箱子。玩點的表現形式是推箱子,但關卡設計的重心並不在於推箱子。之所以如此,一是因為傳統的推箱子不能連推(即傳統推箱子一次只能推動一個箱子),而遊戲中可以一次推動多個箱子;二是動態的規則與固定地圖結構的設計互相排斥。
「語義箱」指代表一定含義的箱子。在遊戲中一個語義箱就是一個語素,通過語素的組配來構成一句話。比如Baba is you就是由「BABA」「IS」「YOU」這三個語素構成的一個句子。單個語義箱不只代表單個語素,它還可以擴充套件為片語、句段等,如「BABA AND KEKE」就可以作為一個語義箱,而不是分為三個語素。為敘述方便,語素亦指語義箱。
遊戲裡的文字只借了英語的殼,各個語素的組配有遊戲系統的一套內在邏輯。英文只是一個玩家和機制之間的媒介,所以用自然語言的思路去理解遊戲機制是不科學的。打個比方,英文的基本語序是SVO,即主謂賓,「YOU」按英文的思路理解應該是主語,可它實質是屬性,這也是為什麼玩家會產生「You is win」的解謎思路。開發者的靈感來源於程式設計,正確的思路應該是SVA,即主語+謂語+屬性,按照程式設計理解應該是物件+運算子+屬性。
為區分遊戲中的文字(TEXT)和實體(Object),S、V、A、O、T分別代指主語/物件、謂語/運算子、屬性、實體、文字。
S(Subject)與O(Object)相對應。S、O可以自由創造無窮多個,不同的S、O只代表不同的實體。玩家會因為現實世界的固有認知與遊戲定義的規則的差異而限制解謎思路,利用這一點設計的關卡有Level lake 13.burglary(將DOOR認知為WALL)等等。
V(Verb)與A(Attribute)是玩點的關鍵。
Level.0 baba is you
[baba][flag][rock][flag][wall]
baba is you
flag is win
wall is stop
rock is push
第零關不改變規則也可以通關,看起來很簡單。
但是這一關的語素組配自由度非常高,可以推理出的遊戲機制包括不限於:
- 規則的組配結構為SVA。
- 規則的組配有方向性,由左至右和由上至下的語素順序允許組配,另外兩個方向則不允許。
- 對於「IS」可以進行十字組配。
- 當「YOU」是以多個物體的時,可以重疊。
- A類語素的優先度為「PUSH」>「STOP」>「WIN」。
- 「IS」不對A類語素接續。
- 同時將O1轉為O2和O3(比如WALL同時接受WALL IS ROCK和WALL IS FLAG),O1會變為O2和O3的重疊(ROCK和WALL的重疊)。
接下來的關卡就是把第零關可以推理出來的遊戲機制弄碎作為剩下關卡的設計思路,讓玩家逐步學習和理解遊戲機制。
level.1 where do i go
(掌握A的組配)
<area 1>
[baba]
wall is stop
<area 2>–wall block
flag/is/win
baba is you
[flag]
level.2 now what is this
(掌握S的組配)
<area 1>
[wall]
flag is stop
<area 2>–flag block
baba/is/win
wall is you
level.3 out of reach
(引入新語素「SINK」,理解它的含義)
//wall is stop
//baba is you
//water is sink
<area 1>
[baba]
[rock]*2
<area 2.1>–water.1 blank
Rock is push
Flag is win
<area 2.2>–water.2blanks
[flag]
Level 4.still out of reach
(引入新語素「DEFEAT」,理解它的含義,理解T和O可重疊)
//flag is win
//baba is you
<area 1>
[baba]
[rock]*3
Rock is push
<area 2>– skull block– skull and [skull] .1 blank
[flag]
Skull is defeat
level.5 volcano
(引入新語素「MELT」和「HOT」,理解它的含義,可能理解語素優先度)
//wall is stop
//lava is hot
//baba is melt
<area 1>
Baba is you
Rock* is push
lava
[baba]
[rock]
<area 2>–lava block.5 blanks
Flag is win
[flag]
Level.6 off limits
(深入理解A的組配)
//rock is stop
//skull is defeat
//flag is win
<area 1>
[baba]
Wall is stop
<area 2>–skull block
[flag]
<area 3>–wall block
Baba is you
Level.7 glass yard
(理解十字組配)
<area 1>
//grass is stop
Baba is you
Flag/win
[flag]
Level lake.1 icy waters(引入新語素「AND」)
Level lake.3 affection(引入新語素「MOVE」和WAIT的概念)
Level lake.6 lock(引入新語素「SHUT」和「OPEN」)
Level lake.9 changeless(理解規則優先順序)
Level lake-extra 1 submerged ruins(掌握共同控制多個實體的思路)
可以看到Level.0的資訊量看起來不大,但隱含的推理資訊直到初始關卡組和Lake組全部完成才完整地、透明地呈現出來,整個過程是循序漸進的。
還有一點,Baba is you並不是完全自由的改變規則的遊戲,它的底層是有一系列的元規則的:
- 「.. IS YOU」是固定的組配,遊戲開始就已經初始化。能改變的只有這條規則的S類語素,而且只能從行或列方向推動。
- 被類似「IS STOP」規則所保護的文字(IS STOP本身也被保護)。儘管最後可能還是有方法改變這個元規則,但可以改變的時候已經可以贏了,這時元規則的目的已經達到了。
- 語素優先度和組合方式的問題。e.g 「MOVE」>「PUSH」>「WEAK」
- 規則優先度的問題。e.g A是S類語素,當「A IS A」成立的時候,A無法轉換為其他S類語素。
- O和T可以重疊。
這些元規則成為一些關卡解題的關鍵,我看了幾個比較有名的播客的視訊,當第五條元規則首次作為解題關鍵時,無一例外都把他們給困住了。但其實這個元規則在之前的關卡已經暗示了,island組的第5關已經展示了O和T可以重疊的元規則。而第一次需要理解這個元規則並使用這個技巧是在island組的第11關。
Hempuli提到在開發早期,曾設想過一些元規則,包括「YOU IS YOU」「GAME IS WIN」,「RIGHT IS DEFEAT」。
前者是無實體的元規則,對關卡設計而言意義不大,「GAME IS WIN」和「FLAG IS WIN」本質是一樣的,無非是是否新增一個旗幟實體而已。倒是後者打破第四面牆更有意思。
Baba is you的關卡設計是值得研究的,開發者很聰明也很有經驗。
比如island組的ex.4,是island.10和Base.4的組合。整個關卡的目標在右方非常明瞭,要組成「FLAG AND ROCK AND ICE IS WIN」的規則,即將三個V類語素推到右方。兩個V類語素通過MOVE的機制推到右方,最後一個V類語素要把其他語素排成一列再推過去,這時候要數格子看,距離夠不夠。本身地圖沒有網格線,作者新增了相間的棕色草輔助玩家計數。右方管道預留的格子也考驗了玩家時機把控的技巧。
玩點與敘述相結合
一般的遊戲敘述或講故事的方式有過程動畫、npc對話、環性語音(Ambience voiceover)、環境敘述(Environmental storytelling)以及書、信等文字載體。它們都是無一例外都是玩點外部的敘述方式。
有一些遊戲,玩點本身就是敘述的載體,比如「致命框架」和「Will:美好世界」,前者的玩點和敘述載體同是圖片,後者同是句段。
Baba is you則分離得更徹底,敘述載體變成了語素組配(自然語言)。
自然語言本身的作用就是傳遞資訊,而遊戲的玩點機制包括了自然語言,這也使得玩點內部與敘述融合在了一起。
這類玩點和敘述組合的遊戲都有一個特點:重新排列若干個擁有一定表現形式的元素,組合成一個故事。
對比傳統Puzzle,例如推箱子、填字遊戲、數獨,難讓玩家沉浸。伴隨遊戲元素、邏輯鏈和複雜度的增加,後期通關的成本和收穫往往不成正比。這點Baba is you也是一樣的,僅憑通關後的一句Congratulations顯然無法給予玩家足夠的動力去一關接一關地玩下去。
普通的解決方法是做個斯金納箱。最簡單的,通一關解鎖一個新的語素(特別是S類語素,僅僅通過做兩張圖片就可以實現)。
但是Baba is you這類遊戲和傳統Puzzle不一樣,它的機制決定了它能提供更多的資訊,並利用這些資訊敘述,提高玩家的內在激勵。
傳統Puzzle,推箱子提供牆體構造、箱子和放置位置、角色位置;填字遊戲和數獨提供單一的文字和數字。傳統Puzzle可以通過一定的方法提供資訊,但是難度不小——如何保證遊戲的趣味性和複雜性的前提下,在填字遊戲中做藏頭詩、在數獨中做摩斯電碼、在推箱子中做拼字?
而且如果實現語義網,這樣的遊戲所敘述的故事對於每一個玩家來說都是獨一無二的。
作者:喚嗒
來源:喚嗒
地址:https://umbrecall.com/index.php/2020/08/27/透過baba-is-you看「玩點敘述」/
相關文章
- 透過等待看資料庫資料庫
- 透過三消看遊戲本質遊戲
- 使用者互動聊天,看陪玩平臺原始碼怎麼透過html實現原始碼HTML
- 在玩客雲上透過docker部署transmissionDocker
- 在玩客雲(armbian)上透過docker部署jellyfinDocker
- 回憶那些年我玩過的ide,看看哪些你也玩過,看圖回憶IDE
- 透過 3.0 Preview 看 Dubbo 的雲原生變革View
- 作為故事敘述夥伴的生成性遊戲·上篇遊戲
- 故事敘述和遊戲體驗該如何並存?遊戲
- 說實話,玩過這款敘事解謎遊戲後,我想奶奶了......遊戲
- 透過現象看本質,圖解支援向量機圖解
- CRM透過四點提高辦公效率
- 透過Geth搭建多節點私有鏈
- PHP 真的不行了?透過 PHP 的前世今生看真相PHP
- 透過華為軍團看科技之變(六):智慧公路
- 匯調研:透過車展看車市-濟南篇
- bitcoin: 透過 rpc 請求節點資料RPC
- 10 款你可以透過 Wine 在 Linux 上玩的遊戲Linux遊戲
- 在玩客雲上透過docker部署zabbix(PostgreSQL資料庫)DockerSQL資料庫
- 透過華為軍團看科技之變(五):智慧園區
- 化繁為簡,透過迷霧看“網路安全”本質
- 從《heaven burns red》看敘事驅動設計
- 透過websocket,實現遊戲陪玩系統的聊天室Web遊戲
- 群邑:透過CES鏡頭看2023年科技趨勢
- 如何透過K線圖看漲跌趨勢?有什麼技巧?
- 透過華為軍團看科技之變(一):廣域網路
- 透過華為軍團看科技之變(二):機場軌道
- 如何透過 open-local 玩轉容器本地儲存? | 龍蜥技術
- MySQL 透過set global設定變數的注意點MySql變數
- CRM系統透過三點提高客戶粘性度
- 透過監管要求,看驗證碼的安全與適老化的平衡
- 透過華為軍團看科技之變(三):資料中心底座
- 透過谷歌當機事故看儲存運維三大重要趨勢谷歌運維
- Are you sure you understand the responsive layout?
- 你玩過凌晨三點的《英雄聯盟》手遊嗎?
- 《Where the Heart Leads》在其框架下敘述了一段別樣的人生故事框架
- Verilog 過程結構簡述
- 一篇文章玩透awk