透鏡設計和萬智牌的簡化(上):三種複雜度
當萬智牌變難,我們該怎麼辦?
現在我剛把車開上馬路,這也就意味著,新一期的《行路雜談》正式開始了!我一直有一個想要在廣播中談論的話題,但是我之前打算等到和這個主題相關的文章釋出以後再在廣播中談論它。我關於這個主題寫的文章今天應該就會發布,所以我今天應該能在廣播中談論這個話題了,順便給你們看一下我的廣播大概是提前多少時間錄製好的。
這個主題叫“透鏡設計”,今天我將介紹一下什麼是透鏡設計,我們究竟是如何想出這個概念的,以及這個概念對於萬智牌設計的影響。透鏡設計實際上是一個非常重要的概念,雖然我在其他地方從來沒看到過相關的內容,但是我知道有些設計師應該想過這個概念。我發現我在寫專欄的過程中很有意思的一個地方就是我喜歡介紹這些非常有趣的概念,因為我經常在我的專欄中介紹萬智牌的設計,所以我很喜歡聊一些萬智牌設計中的概念。而透鏡設計是萬智牌設計中的一個非常重要的概念,我對於這個概念其實非常自豪,今天我們就來談論一下它。
要想理解透鏡設計,我們就得首先回過頭去聊一下“新世界秩序”誕生的原因。我之前關於“新世界秩序”這個概念做過一整期廣播,關於“新世界秩序”簡單來說就是我們發現越來越少的人開始入坑萬智牌了,萬智牌的新人數量在逐漸下降,這是一個非常不好的兆頭。我們探索了一下這個現象出現的原因,然後我們意識到萬智牌這個遊戲開始變得過於複雜了,這使得人們變得越來越難學會這個遊戲了。當人們第一次玩萬智牌的時候,他們對於整個遊戲的概念接觸都是0,他們都是不知道任何內容的。但是萬智牌在變得越來越複雜,新人要想學會萬智牌得了解的東西變得越來越多,他們入坑的難度也開始變得越來越大。
所以“新世界秩序”的目的是限制萬智牌中的普通牌的複雜程度。對於新手來說,他們接觸的大部分牌都是普通牌,如果我們能夠讓萬智牌中的普通牌變得簡單的話,那麼新手們學會萬智牌的難度就會下降很多,與此同時我們還能在非普通牌和稀有牌上提供進階玩家所需要的萬智牌的複雜度。簡單來說“新世界秩序”就是為了這個目的而設立的。
而當時我接到的一個任務就是,去找出什麼東西讓萬智牌變得如此複雜。然後我意識到,萬智牌這個遊戲中包含了三種不同的複雜度,第一種是“理解上的複雜度”,這意味著當你讀一張牌的時候你是否能夠理解這張牌所要表達的意思。我記得我在我的文章中提到過,理解層面的複雜度其實分為很多種不同的型別。
所以第一種,我們發現我們在遊戲中加入了很多新手們難以理解的“專業術語”。這也就是為什麼我之前說過將一些概念命名也會有副作用,每當你讀到一些你不知道的單詞的時候,你就會面臨一些閱讀上的障礙。當你在讀書的時候遇到一兩個你不認識的單詞的時候,你可以去查字典嘗試瞭解它的意思,但是如果你在閱讀過程中一直遇到不認識的單詞的話,閱讀就會變成一件很讓人頭疼的事情了。這也就是為什麼你在寫文章的過程中要小心使用專業術語的原因。
我們發現萬智牌中的有些概念對於新手來說特別難以理解。我記得我在文章中舉的一個例子是“堆疊”。進階玩家可能感覺:“我知道堆疊是什麼啊,這並不是一個很難的概念啊,首先......”但是其實堆疊的作用對於很多玩家來說是無形的,難以理解的。很多玩家都知道他們操控的咒語是怎麼互動的,但是如果你去問他們什麼是堆疊,堆疊中的咒語怎麼互動的話,他們其實並不能完全解釋清楚這些概念。事實上我們發現很多玩家並不會使用“堆疊”這個詞語。
我們經常聽到的一個反對聲音是說:“如果我們從來不提‘堆疊’這個概念的話,那麼人們又怎麼去知道,學習這個概念?”而問題在於,堆疊事實上是一個非常進階的概念,事實上你並不用知道這個概念就能玩萬智牌。這也是另一個非常重要的內容,那就是如果你想要教別人一個遊戲(不一定是萬智牌)的話,那麼你不需要告訴他們這個遊戲當中的所有內容,你只要教會他們玩這個遊戲時所必須知道的內容就足夠了。
這也是我們對待新手所一直持有的一個態度,萬智牌是一個非常複雜的遊戲,所以當新手來接觸這個遊戲的時候,我們只教會他們玩這個遊戲所必須知道的知識。像“堆疊如何互動”這樣的內容,我們只教會他們一些非常基礎的概念,讓他們能夠以正確的方式進行遊戲就行了。而這些相對較難的概念我們並不會直接教他們,因為這對於新手來說實在是過於複雜,讓人頭疼了。
如果一個新人想學萬智牌,而我們扔給他一本黃頁那麼厚的規則書說:“先去把這本書讀了。”的話,大多數人都會覺得:“算了,我還是去玩別的遊戲吧。”所以當新人來學習這個遊戲的時候,我們的態度一直都是:“好吧,首先你要知道以下這些內容......”當新手進入到這個遊戲的時候,他們會慢慢地學到更多,更深的內容的。
而如果我們直接讓新手們接觸到萬智牌中比較複雜的一部分的話,這會讓他們難以接受這個遊戲。萬智牌是一個非常有趣的遊戲,並且萬智牌的核心事實上並沒有很多人所想的那麼複雜。萬智牌之所以複雜是因為它包含了很多非常特殊的情況,要了解這些特殊情況是非常複雜的。而要想了解萬智牌這個遊戲基礎的部分並不是一件很難的事情,而要想保證萬智牌的基礎部分足夠簡單的話......
所以總而言之,我們第一個注意到的就是萬智牌的詞彙,我們必須在描述異能的時候非常小心。有些異能非常直接,比方說飛行,這些異能能夠在幫助新人入坑的時候起到很大的作用。因為很多詞彙本身就帶有一些意義,而這些詞彙本身的意義能夠幫助新手理解這些詞彙在萬智牌中所表達的內容。
而另一些詞彙本身並沒有任何含義,人們一直希望我們能夠用“mill”這個詞作為磨牌庫的關鍵詞(譯註:mill這個單詞來源於millstone這張萬智牌早期非常經典的磨牌庫單卡,它本身的含義是研磨),或許有一天我們能夠想到一個合適的磨牌庫的關鍵詞。“mill”這個單詞的最大問題在於,很多牌手會問我們為什麼會用這麼一個單詞作為磨牌庫的關鍵詞?
而這背後的原因在於萬智牌中的一張叫做“millstone”的單卡,而mill這個詞本身是指碾磨小麥的意思,雖然磨牌庫有一點點“碾磨對手的思想”的含義,但是說到底mill這個詞還是和磨牌庫之間沒有任何關聯。當然如果你玩過一段時間的萬智牌的話你是知道為什麼磨牌庫被稱為mill的,但是如果你是一個新手而對手對你說“我要mill你兩張牌”的話,你會完全不知道對手再說些什麼。萬智牌之前出現過很多這樣的情況,這些內容會讓新手們感到非常難以適應。
所以理解上的複雜度的第一個體現的地方在於詞彙,而第二個體現得地方在於,我記得我在文章中說過,你不應該設計出一張讓玩家在讀過一遍後覺得“嗯,我可能得再讀一遍這張牌”的牌。這表明了這張牌上面有一些問題,這張牌過於複雜了。
我記得我在文章中舉了“相弒”這張牌的例子,這張牌來源於啟示錄這個系列。這張牌是由我設計的,我一開始設計的異能是“消滅兩個具有相同顏色的目標生物”,這個異能其實非常直白,這個生物是白色的,那個生物也是白色的,你能夠釋放相弒消滅這兩個生物,非常直接。
然後由於啟示錄是一個多色環境,他們不希望這張牌讓有些特定顏色的單卡受到壓制,所以他們打算把這張牌的異能改成“能夠消滅兩個具有完全相同的顏色組合的生物”。最後他們把這張牌的規則敘述改成了現在這個樣子,如果你之前沒有見到過相弒這張牌的話,你第一次讀它的時候肯定會覺得“嗯?嗯?”你肯定完全不知道這張牌在說什麼,這其實並不是一個設計的很好的牌。
所以如果牌手們不能了理解你設計的一張牌的意思的話,這代表了兩種情況,要麼這張牌的規則敘述有問題,你得尋找一種更加簡潔的規則敘述方法,不然你不能讓這張牌印出來。我們在設計萬智牌的過程中意識到的一點就是,如果我們想做出一張牌的話,我們就必須得保證這張牌能夠在規則的框架下被合理地描述出異能。如果我們寫出來的異能不能夠讓你們理解的話,那麼我們就無法做出這張牌來。這就是第二種理解層面上的複雜度。
而另一種情況則是第三種理解層面上的複雜度,我記得我在文章中用延緩做了一個例子。有些時候即便你能夠用合理的規則敘述將這張牌的異能描繪出來,但是這張牌上面的內容實在是太多了,玩家們還是無法理解這張牌究竟是做什麼的。延緩就是一個典型的例子,其實延緩說白了是一個非常直接的概念,我以為這張牌的規則敘述也會這麼直白。延緩說白了就是拿時間換取法術力,這張牌的法術力費用可以減少,但是代價就是你等幾個額外的回合才能真正釋放它。這事實上是一個非常直觀,非常簡潔的概念,你就是拿時間換取法術力。
但是在實際使用過程當中,你會發現情況完全不同。首先你得把這張牌放到放逐區去,這時候你先得理解放逐區的概念。然後你再得在上面放上時間指示物,在每個回合你還得記得從這張牌上面挪走時間指示物。然後當這張牌上面所有的時間指示物都被諾走的時候,你才能夠真正釋放這個咒語。延緩是一個很典型的例子,對於進階玩家來說,他們對於這個異能毫無問題,他們能夠很輕鬆地理解這個異能。
但是對於新手來說,這個異能真的非常,非常讓人糾結。這張牌上面發生的內容實在是太多了,它還包含了很多區域的轉換,它需要你使用指示物,修改指示物的數量,同時還需要你理解維持階段的概念,然後這裡面還包含了一些其他內容。這一切加起來對於新手來說實在是包含了太多東西了,這對於他們來說太難理解了。
而第四種理解層面上的複雜度的話,最典型的例子就是無何有。無何有是神河環境中的一張牌,它的效果是“棄掉你的手牌。”有些人可能會覺得:“這張牌怎麼會有理解上的複雜度?這張牌的效果一共就3個單詞,棄掉(discard)你的(your)手牌(hand),這哪裡難了?你只要把你的手牌扔掉就好了。”其實這張牌在理解層面上的複雜度體現在這張牌非常不合理。當玩家們讀過這張牌之後,他們會覺得:“棄掉我的手牌,我能夠理解這個效果。我只需要扔掉我的手牌就行了。但是我為什麼要這麼做?這不合理啊?這張牌到底想要我們做什麼?”
所以另一個我要在透鏡設計中談到的內容就是,很多遊戲出現讓人困惑的地方是因為玩家們無法理解這些地方是做什麼的,當玩家們無法理解的時候,他們會嘗試編造出一些東西來幫助他們理解這些內容。
而有些時候遊戲當中的部分內容其實非常直接,非常直白,但是玩家們還是無法理解。無何有就是一個很棒的例子,這張牌的效果非常直接,非常直白,但是它的效果實在是太反直覺了,所以玩家們還是不能理解它到底是用來做什麼的。玩家們能夠知道這張牌的效果,但是他們會覺得:“這張牌也太奇怪了,我是不是錯過了一些資訊?”他們會花上很多時間和精力去尋找他們究竟錯過了這張牌上面的哪些隱藏資訊。
當然我並不是說我們不應該設計像無何有這樣的單卡,但是大多數還是希望我們別設計這樣的單卡。我認為我們應該設計一些讓玩家覺得:“什麼?這張牌是什麼?”的牌,但是我們應該讓這些牌的稀有度保持在稀有及以上。我們偶爾會做一些讓玩家非常困惑的牌,但是我們絕對不會讓這些牌出現在普通的稀有度上。當然無何有本身並不是一張普通牌,我只是想給你們介紹一下不同的理解層面上的稀有度的例子。
好的接下來來介紹第二種複雜度,那就是場面的複雜度。場面的複雜度意味著你是否能夠理解場上出現的永久物,以及是否理解這些永久物和其他永久物之間的互動。我記得我在文章中舉的例子是放蕩烈焰術士,對於老玩家來說就是放蕩的術士,我們在當年把這一類效果都是做在藍色的生物上的。這些生物能夠橫置自己來對對手的生物或者牌手造成一點傷害。
有些人可能會覺得:“這有什麼複雜的?你橫置這個生物,它能夠打一點,僅此而已啊。”而事實是這是一個非常複雜的異能,每次戰鬥階段中我都能夠利用這個異能來對對手或者他的生物造成一點額外的傷害。假設現在場面上有很多生物,對手進行了一次進攻,然後我就有一個非常複雜的阻擋局面需要處理。假設我現在再在場上加上一張放蕩烈焰術士或者放蕩的術士,這時候我的阻擋的選擇一下子會變得複雜很多。
當然對於那些有經驗的玩家來說,他們能夠非常快地找到正確的阻擋方式。很多人沒有意識到的一點就是,當你在玩一個遊戲,或者做生活中的其他事情的時候,你的大腦會不斷地記憶你做這些事情的過程。久而久之,你在做這些事情方面的速度就會提升很多。
比方說我現在正在開車去公司的路上,有些人會問我你是如何做到一遍開車一遍錄製廣播的?答案就是我已經開了很長一段時間車了,從我家到公司這段路我已經不知道開過多少次了,所以說這段路程對我來說就像是自動駕駛一樣輕鬆。我的大腦早就已經習慣開車上班這段過程了,這也就是為什麼我能夠在這個過程中用額外的經歷來做廣播。
如果我是一個新手駕駛員的話,那麼我就絕對不可能一遍開車一遍做廣播,除非我做的是一期非常非常短的廣播。“現在我已經...”,“在設計的過程中...”你可能會在廣播中聽到我這樣不斷地停下來關心交通。
所以當牌手們在玩萬智牌的時候,他們會慢慢記住遊戲中的內容。而當牌手玩了很長一段時間萬智牌後,他們會忘掉這段記憶操作技巧的過程。所以他們會覺得:“這看上去並不難啊?”的確,當你玩過數千把對局的時候你並不會覺得如何阻擋是一件很難的事情,而這是因為你在這麼多對局中學到了足夠的經驗。你因此能夠看一眼場面就知道是否要和對手進行生物上的交換。而對於新手來說,他們必須從頭開始學習這些內容。他們首先得知道怎樣做才能和對手的生物進行交換,然後他們接著得學習這麼交換是否是正確的操作,這對於新手來說其實是一件很複雜的事情。
而放蕩烈焰術士的問題就在於它給遊戲的場面新增了太多複雜的東西了,如果你很擅長這個遊戲的話,那麼你可能覺得沒有什麼問題,但是大多數玩萬智牌的人都不是完全擅長戰鬥階段的阻擋的。不過一旦當他們瞭解瞭如何阻擋的內容之後,他們會越來越快地熟悉這個技巧的。
所以總而言之第一種場面上的複雜度指的是那些能夠影響場面上其他內容的牌。而第二種則是我提到過的那些會被場面上其他牌給影響的單卡。我記得我在文章中提到過,萬智牌有一種生物,它的攻擊力和防禦力等於你在場上所操控的生物數量。而這些生物可能會變得非常複雜,比方說當你牽扯到數個生物進行攻擊的過程的時候。
這時候當其他生物死去的時候,這個生物會變小。而當你進入戰鬥階段的時候,你會發現如果這幾個生物進行進攻的話,那麼對手很可能會用他的生物把這兩個生物擋死,那樣的話我的另一個生物可能會變得只有這麼大了。然後情況就可能會變得非常複雜,你會發現如果你想要這個生物活下來的話,那麼你就得考慮你該用哪幾個生物進行進攻,它們是否可能會死?如果它們死掉的話這個生物又會變成多大?對手是否能用一些阻擋把我的生物給換死?我究竟該如何進攻?
所以場面上的複雜度意味著“牌手們是否能夠理解場上出現的所有東西,以及是否能夠理解這些東西之間互動的內容”。當時空漩渦系列發售之後,我們意識到萬智牌的複雜度變得太高了,我們在逐漸流失新手牌手。然後我們意識到:“牌手們開始無法理解場上究竟發生了什麼事。”
然後當我們在設計洛溫系列的時候,我們讓這些牌的異能變得更加簡單,更加容易去理解。牌手們能夠在讀完牌面後一下子就知道發生了什麼。但是這些牌之間有著太多細小的互動了,我們雖然降低了這些牌在理解層面上的複雜度,但是我們沒有降低這些牌在場面上的複雜度。洛溫系列,尤其是洛溫/晨光系列的限制環境的場面非常複雜,我們發現很多新手都完全無法解釋場上究竟發生了什麼。他們經常會看不見對手場上一些並不明顯的戰鬥Trick,從而輸掉對局。
我們所說的第三種複雜度則是策略上的複雜度。策略上的複雜度意味著你是否能從策略的角度上理解遊戲對局中究竟發生了什麼。我們發現透鏡設計其實很大程度上來源於牌手們對於遊戲策略上的複雜度的理解。
我認為最好的用來解釋策略上的複雜度的單卡就是真偽莫辨。這張牌簡單來說就是:“這張牌很大程度上取決於你使用它的方法,這張牌可能會非常強,也可能會非常弱,這一切取決於你如何使用它。”你是否知道該如何進行分堆?你是否又知道該選擇哪一堆牌?你是否能夠在看了對手場面上的情況之後知道你的對手是如何衡量這五張牌的價值的?
有些牌在遊戲前期可能毫無用處,但是它在遊戲的中後期會變得非常強力。而有些牌的強度取決於對手所擁有的其他資源和對手可能的遊戲計劃。這些都是你在面對遊戲策略上的複雜度時需要考慮的。我記得Mike Turian曾經和我說,如果你想要讓你的牌技更上一層的話,那麼你不僅僅應該關注於你自己的遊戲計劃,你不僅僅應當關注於你所擁有的卡牌,你同時還得關注你的對手。你的對手是否在看了自己的牌很長一段時間之後才決定做事?你的對手在你釋放咒語之後是否等了一段時間?
很多進階玩家都會嘗試去閱讀自己的對手,他們都會嘗試瞭解對手所想的東西。如果你能夠猜到對手所想的東西的話,你就能夠知道對手手牌的內容。你的對手是否想要嘗試釋放咒語然後又不那麼做了呢?這應該就意味著他手上捏著一張反擊咒語,他想要留下費用。類似於這方面的內容。
所以我們發現的一點就是,對於新手來說,理解上的複雜度要比場面上的複雜度更重要,而場面上的複雜度要比策略上的複雜度重要。所以對於新手來說,他們首先想要知道一張牌是幹什麼用的,然後他們接著去了解這張牌在戰場上有什麼樣的作用,最後他們再去學習遊戲上的策略。對於新手來說,他們首先得去學習第一件事再去學習第二件事,學完第二件事之後才能去學第三件事。
現在我已經看到路程的一半了,但是我還沒有正式講到稜鏡設計。當初我在設計新世界秩序的時候,我想要找到究竟該如何降低萬智牌的複雜度。我最後得出了以下發現:你首先得在理解上的複雜度上非常謹慎,因為如果新手無法理解一張牌是做什麼的話,你的遊戲就完蛋了。所以你在處理理解層面的複雜度上必須額外謹慎。
而對於場面上的複雜度來說,你也得非常謹慎地處理,因為新手們遲早會接觸場面上的複雜度。如果你創造出了一個新手們無法理解的場面的話,這也會導致非常糟糕的後果。你可以讓你的場面上出現一定程度的複雜度,但是總體而言你必須得在處理場面複雜度的時候更加小心一點。
(文源自威世智官網)
前文:透鏡設計的六條規則(下):設計更多的禁牌
作者:Mark Rosewater
來源:旅法師營地編譯
譯者:Shibuya_Rin
原地址:https://www.iyingdi.com/web/article/mtg/essence/recommend79/38765
相關文章
- 萬智牌開發故事之設計地牌的6條限制
- 軟體設計的複雜度複雜度
- 一文講透演算法中的時間複雜度和空間複雜度計算方式演算法時間複雜度
- 簡化UI複雜度的基本步驟UI複雜度
- 關於計算時間複雜度和空間複雜度時間複雜度
- 來自萬智牌設計師的經驗分享:限制自己的設計
- 時間複雜度和空間複雜度時間複雜度
- 易被忽略的知識點之 ---- 各種時間複雜度和空間複雜度時間複雜度
- 時間複雜度O(n)和空間複雜度時間複雜度
- 時間複雜度和空間複雜度 順序時間複雜度
- 時間複雜度的計算時間複雜度
- 架構設計複雜度的6個來源架構複雜度
- 【資料結構】-時間複雜度和空間複雜度資料結構時間複雜度
- 演算法複雜度分析(上)演算法複雜度
- 複雜度分析的套路及常見的複雜度複雜度
- 簡單程式的時間複雜度分析時間複雜度
- 時間複雜度怎麼算?如何計算時間複雜度?時間複雜度
- 萬字通俗講解何為複雜度複雜度
- 那些年忽略的知識:時間複雜度和空間複雜度詳解時間複雜度
- 時間複雜度跟空間複雜度時間複雜度
- 時間複雜度與空間複雜度時間複雜度
- 資訊化建設中的 複雜度 規模 度量問題複雜度
- 日常分享:關於時間複雜度和空間複雜度的一些優化心得分享(C#)時間複雜度優化C#
- 122 演算法的時間複雜度和空間複雜度詳解演算法時間複雜度
- 時間複雜度計算和舉例說明時間複雜度
- 《萬智牌:傳奇》上手體驗——《暗黑》化的經典卡牌遊戲遊戲
- 複雜度分析複雜度
- 超實用乾貨!互動設計中如何簡化複雜操作?
- PHP 演算法基礎----時間複雜度和空間複雜度(轉載)PHP演算法時間複雜度
- 領域驅動設計對軟體複雜度的應對複雜度
- 說說你對演算法中時間複雜度,空間複雜度的理解?如何計算?演算法時間複雜度
- 密碼複雜度設定函式密碼複雜度函式
- 網路模型複雜度計算方法模型複雜度
- 如何把一個簡單的Web專案複雜化——垂直劃分——設計篇Web
- 淺析程式碼圈複雜度及認知複雜度複雜度
- 複雜混亂系統的三種應對方式
- 【簡單演算法】什麼是複雜度?演算法複雜度
- 面試中的複雜度分析面試複雜度