如何判斷一個玩法是否合格?
首發知乎,https://zhuanlan.zhihu.com/p/417216094
對於幾乎所有已經在遊戲行業和想加入遊戲行業的人來說,一定動過這樣一個念頭“我有一個XXX玩法的創意,做出來了一定很好玩”。
但是,真的好玩麼?
雖然所有涉及到coding的行業裡都有一句話,叫能落地的創意才叫創意,不能落地的創意就是垃圾(當然學術界對這句話並不認可,並造成了工業界與學術界的巨大鴻溝,但是這裡就不展開了),因為很多時候創意的落地難度之大,甚至能超過這個創意本身的價值。
所以在很多關於“遊戲創意”的討論中,大家都會告訴提問者“先去學習一下怎麼用遊戲引擎,做出來了再說,”“Talk is cheep,show me the code”
不過即使拋開創意的落地難度,給你無限的資源(錢+人),把這個創意做出來了,它真的就好玩麼?
如果你堅信自己有一個“絕妙的遊戲創意”,不妨先問自己這樣一個問題:這個玩法創意給玩家提出的挑戰是什麼?
其實這個問題在上一篇文章https://zhuanlan.zhihu.com/p/413864444裡就提出過,這篇文章我將會詳細說明一下怎麼“挑戰”的視角來分析遊戲創意,以及這麼思考的重要性。
首先必須說明一個“公理”,遊戲的本質是玩家面對挑戰→完成挑戰→獲得獎勵→面對挑戰→完成挑戰→獲得獎勵→……的迴圈
遊戲之所以能吸引玩家玩下去,甚至讓人沉迷,就是因為相比於現實世界中的挑戰和獎勵,遊戲中挑戰、獎勵的迴圈遠快於現實。在現實中你必須辛苦學習很長時間,才能感知到自己能力有提升,獲得獎勵(成績提升);但遊戲中如果刷了1個小時怪還沒升級你都會懷疑這個遊戲數值有問題。
因此,當我們腦子裡有一個“創意”時,首先我們就得弄清楚,這個“創意”的本質是什麼,它提出的挑戰是什麼?
下面我以前段時間很火的“人生重開模擬器”為例來說明這個分析方法的3個要點。
一、挑戰,意味著得有玩家可以操作可以控制的部分
如果一個挑戰中玩家無法控制(沒有輸入手段),或者玩家能控制的部分根本不影響挑戰結果(車在路上開,玩家在車上蹦迪),那無法構成對玩家的挑戰,叫“看戲”或者“聽天由命”。
例如人生重開模擬器裡的控制部分是開始模擬前的抽卡和加點,而非後面點選螢幕看結果。如果沒有了前面的部分,這就構不成一個挑戰,而是純粹的隨機扔色子。
可能有的朋友會問純隨機又怎麼了?我的答案是,人的本能心理是“控制”,如果一件事完全不受控制,那麼人會要麼放棄它(跳過抽卡動畫),要麼求助玄學、鬼神,無論哪種都和“有趣”不沾邊。
而正是有了前面可控制的部分,玩家才有反覆嘗試人生重開模擬器,因為玩家會嘗試從之前的隨機結果裡總結規律,來指導自己下一次的加點。
反面例子
二、玩家可以操作和控制後,需要有一個“目標”,即到底“圖什麼”。
- 目標可以非常明確,例如擊殺敵人
- 可以比較模糊,比如“活下去”(模糊的目標往往是多個明確目標的組合)
- 甚至有的目標是玩家自發產生的,比如探究一下這張地圖的邊界在哪裡
見過一些所謂“開放世界”“模擬現實”的玩法,羅列了很多機制和邏輯,但是唯獨沒有說明一件事叫做——玩家到底圖什麼。
是在遊戲裡賺很多錢?還是在遊戲裡控制一座城市?還是大殺四方?體驗現實中不敢做的事情?
人生重開模擬器裡的目標是玩家自發產生的,有人想活得久一點,有的想要發家致富,有的想要一夜成名,不一而足。
而正是因為有了目標,玩家在開始的加點裡才會有思考“怎樣的加點容易達成這個目標呢?”
當然也有另一撥人是希望體驗不同的隨機結果,因此他們也會從這個目標出發,每次選擇儘量不同、差異巨大的加點策略,從而走上儘量不同的模擬結果。
可以說,正是因為有了目標,玩家才會有不同操作
三、有了目標和操作,但並不是所有操作都能達成目標
- 目標:打敗大魔王
- 控制:隨便按一個鍵
- 效果:按鍵後魔王就死了
上面這個挑戰顯然不成立,那怕必須在開始戰鬥後1秒內按鍵,否則大魔王就跑了;或者必須按A鍵才能殺死,其他鍵不行,那樣也算個挑戰
人生重開模擬器裡,假設你的目標是成為富翁,顯然不能什麼加點方案都能成為富翁,至少概率上是不一樣的。
玩家會反覆嘗試,總結認識規律,猜測某種加點成為富翁的概率更大,最終成功。
為什麼不能讓所有操作都能達成目標?
因為“有錯誤選項”是構成挑戰獎勵的一部分。
有的人會狹義地認為挑戰的獎勵是挑戰成功後給的那些具體的東西,比如經驗、金錢、裝備。但實際上,成功完成挑戰這件事本身就是獎勵的一部分,而這部分獎勵成立的前提,就是並不是所有操作都能完成挑戰,玩家選擇了正確的操作,因此通過了挑戰,這本身就會讓玩家獲得正反饋,感受到快樂。
挑戰成功觸發忍殺的時候,很爽很快樂
反過來,如果“成功完成挑戰這件事本身就是獎勵的一部分”這一條不成立,比如一些刷子游戲,擊殺boss易如反掌,那“單次擊殺boss”就構不成一次挑戰,必須要多次擊殺,直到出貨才算挑戰成功,此時玩家就不再以單次擊殺作為挑戰目標去加點、配裝,而是以“最快擊殺/出貨”為挑戰目標去加點、配裝。
總結一下,我們可以發現,上述3個要素是彼此關聯的:
- 有可操作可控制的部分,因此玩家有了選擇
- 有目標,所以玩家需要去選擇
- 並不是所有選擇都是對的,因此玩家的選擇有意義,選對了會開心
其實,很多不成立的遊戲創意,如果經過上面這一系列的思考和拆解,基本上就不攻自破了,其挑戰的三要素可能根本就不成立。
因為作為創意的產生者,我們會很容易過多關注在“挑戰的包裝上”,即這個挑戰看上去的樣子,會覺得這個樣子很酷。例如“在一個修仙世界裡最終自己的角色一統天下,多牛逼啊”“在MOBA裡有格鬥ACT遊戲一樣的打擊感和連招,多有趣啊”。
但如果拋開包裝、樣子,去深入解析一下挑戰的核心,可能很快就會發現這個挑戰完全沒意思、不就是個XXX、挑戰3要素不成立。但如果挑戰不成立,包裝就是浮雲,玩家玩的是挑戰和挑戰的過程,不是挑戰後的獎勵。
反過來,一些遊戲,看上去很簡單樸素,但是卻意外的好玩,例如人生重開模擬器、2048、flyppy bird,因為他們的挑戰核心是完善且有趣的。
以我隨便搜尋到的一些遊戲創意為例進行分析,給大家打個樣:
https://www.zhihu.com/question/278418335/answer/402001262
- 操作:將道具賦予遊戲內的角色(角色的行為是完全不可控的),從而間接控制角色的後續行為
- 目標:自發確定目標,讓自己控制的角色成為自己想要讓他成為的樣子
- 操作和目標的關係:有較大的不確定性,從描述裡的說明者極為模糊,涉及到比較龐大和複雜的AI設計,目前看來是主要難點和風險點
總結:將操作後置的人生重開模擬器
https://www.zhihu.com/question/395240216/answer/1228916653
- 操作:選擇出牌,3大類,5種牌,選1個
- 目標:戰勝對手
- 操作和目標的關係:牌之間有剋制關係和使用條件,選到了剋制對方的,就能獲得優勢最終獲勝
總結:升級版石頭剪刀布
當然,有的創意很大很複雜,融合了很多玩法和機制,那就不能全部合在一起去考慮,需要將每個玩法機制拆解開來分析。
例如:
https://zhuanlan.zhihu.com/p/33974485
拋開大逃殺這個基礎玩法,其中包含的特色設計為:
1.帶延遲的範圍普攻
2.搶奪有限的升級道具
3.無法戰勝且鎖定最近玩家攻擊的中立生物
4.中立生物產生臨時隔斷(火焰路徑傷害高於玩家生命)
上述4個特色設計均可以認為是一種挑戰,這裡留給有興趣的朋友自己思考
當然,在我搜尋的過程中,更多的遊戲“創意”甚至都沒法展開分析,因為基本上啥都沒說,例如:
https://zhuanlan.zhihu.com/p/341598564
https://www.zhihu.com/question/330050383
這樣的“創意”還停留在較為初級且不合格的層次上,即使是創意產生者本人也沒有一個清晰明確的想法,只是從感性上猜測這個玩法有趣。
總結一下上面的這些“創意”:
其實很多遊戲,如果拋開描述和包裝,去拆解它的核心玩法,會發現似乎“不過如此”,甚至於和某個已有的遊戲十分相似。這個實際上非常正常,對於99%的普通人來說,當你腦子裡有一個“絕妙的創意”時,這個創意其實已經被人做出來過了。更有可能的情況是,你腦子裡這個創意其實就是融合了好幾個你玩過的遊戲後雜交出來的產物,並不是什麼新東西。
另一些朋友會選擇做加法甚至於做乘法,設計一個非常龐大複雜的玩法,描繪一個十分豐富完善的遊戲世界。但作為個人的經驗,不建議新人上來就設計極為複雜的玩法,設計複雜玩法不僅僅是要自己遊戲玩得多玩得深,更需要有足夠的設計經驗和設計“方法論”,把握不住只會適得其反。
如果你非常喜歡設計遊戲玩法,也想逐漸練習、入門當一個遊戲策劃,我最推薦的一個訓練方法是,挑一個你熟悉且流行的遊戲,在這個遊戲中加入一個非常簡單但普適的機制,甚至可以是另一個遊戲裡你覺得設計得很好的某個機制。
例如,在MOBA里加入一個會全圖遊走的Boss?在吃雞裡增加一個可以透視牆後敵人的道具?
思考這些機制的挑戰3要素是什麼?對已有玩法有什麼影響?有哪些細節問題需要注意?
思考題
1.挑一個你熟悉且流行的遊戲,在這個遊戲中加入一個非常簡單但普適的玩法,分析這個玩法的三要素,以及與其他已有機制的聯絡
2.分析2048、flyppy bird的挑戰3要素是什麼
原文:https://zhuanlan.zhihu.com/p/417216094
相關文章
- 如何判斷一個物件是否為空?物件
- 如何判斷一個元素文字是否換行?
- python如何判斷一個物件是否是列表Python物件
- 判斷一個物件是否為空物件,判斷一個物件中是否有空值物件
- python如何判斷一個數是否是整數Python
- 如何判斷一個 interface{} 的值是否為 nil ?
- JS如何判斷一個陣列是否為空、是否含有某個值JS陣列
- javascript中如何判斷一個字串是否為JSON格式JavaScript字串JSON
- 如何判斷一個元素是否在可視區域中?
- 如何判斷一個js物件是否存在迴圈引用JS物件
- 判斷一個陣列是否排好序陣列
- 如何判斷一個元素在億級資料中是否存在?
- 如何在億級資料中判斷一個元素是否存在?
- JavaScript 中,如何判斷兩個物件是否相等?JavaScript物件
- mysql如何判斷是否存在某個欄位MySql
- 判斷字串是否唯一字串
- PHP 判斷一個字元是否在字串中PHP字元字串
- 判斷一個有向圖是否有環
- PHP判斷一個字串是否包含亂碼PHP字串
- 如何判斷一項技術是否有前途?
- mysql如何判斷是否為空MySql
- postgresql如何判斷表是否存在SQL
- JDK是如何判斷兩個物件是否相同的?判斷的流程是什麼?JDK物件
- 判斷Map集合中是否存在某一個key
- 對一個連結串列判斷是否有環
- 判斷一個數是否為質數(程式碼)
- 如何從10億資料中快速判斷是否存在某一個元素
- python如何判斷一列是否有資料Python
- 判斷是否遵守某個協議協議
- js判斷兩個物件是否相等JS物件
- nginx判斷路徑是否含有某個引數做判斷Nginx
- 如何判斷 JavaScript 物件是否為空?JavaScript物件
- 如何判斷是否遭到DDOS攻擊
- java面試一日一題:如何判斷一個物件是否為垃圾物件Java面試物件
- golang中判斷兩個slice是否相等與判斷值下的 陣列是否相等Golang陣列
- Linux判斷上一個語句是否執行成功Linux
- C語言:判斷一個字串是否為迴文C語言字串
- 如果精確判斷一個IP是否被佔用