大學教授演講:遊戲平衡這門課都講了些什麼?

語言: CN / TW / HK

【GameLook專稿,未經授權不得轉載!】

GameLook報道/經過了幾十年的發展之後,遊戲行業已經逐漸被主流所認可,而作為第九藝術,也開始有越來越多的教育機構將遊戲研發相關的技巧納入課程範圍。

我們可能聽說過遊戲設計、遊戲程式設計、遊戲美術甚至是遊戲音訊、作曲或者劇情寫作相關的課程。然而在大多數遊戲裡都存在的另一個領域–遊戲平衡,卻很少有相關課程,甚至業內討論的頻率也遠不如其他研發技能。

此前的GDC大會上,羅切斯特理工學院助理教授Ian Schreiber基於自己多年的教學經驗,向業內同行介紹了遊戲平衡這門課程,並詳細解釋了每個階段需要學習的東西,希望能夠幫助遊戲業培養更多的遊戲平衡相關的人才。

以下是GameLook聽譯的完整內容:

Ian Schreiber:

並不是每個專案做的都是嚴肅遊戲,但我們有很多這樣的課程;也不是很多遊戲都需要大量的劇情寫作,我們同樣設立了很多類似課程;幾乎所有的遊戲都需要某種形式的平衡,但我們卻沒有太多這樣的課程。

所以,這就是我們今天的目的,主要是講案例分析和我教這堂課的方式。

這是2010年我寫的第一個版本的10周遊戲平衡概念課,目前它還在網上,任何想要訪問或者覺得有用的同行都可以拿去使用,不需要獲得我的允許。

這是最新版本的第一頁內容,我用技能樹的方式將這核心內容列了出來,以便讓學生們可以直觀看到他們學到了哪裡。

1、從重要的概念定義開始

我們最初是從關鍵單詞開始的,也就是對一些概念的定義,比如我說遊戲平衡的時候,它到底意味著什麼、與節奏和氛圍有什麼區別?提醒所有人遊戲系統是什麼,良性的遊戲反饋是什麼,不過我們今天主要說的是遊戲平衡。

在我看來,遊戲平衡就是給遊戲創造公平與外觀。外觀在這裡很重要,它指的是玩家理解以及事實,因為作為遊戲開發者,我們創造的是體驗,這個體驗才是最重要的。因此,遊戲平衡一部分是數學、一部分是系統,還有一部分是心理學。

我們做遊戲平衡通過多種方式實現,一是遊戲策劃的直觀經驗,遊戲策劃選擇特定方式設計特定的事情,因為他們覺得這樣是對的;另一種是玩家測試,你快速打造了一個創意原型,通過自己和好友的試玩,並且基於測試結果進行調整;第三種是分析,從遊戲獲取真正的資料,並用分析工具得出結論;第四種是數學建模,用數學來理解遊戲裡所有數字之間的關係,以找到最合適的那個。

2、遊戲裡的數字關係

今天我們大部分內容都是聚焦數學建模方式來做遊戲平衡,讓學生們可以用表單形式理解遊戲平衡並給出解決方案。我們還用了一些時間在分析學上,因為這也是很有用的。在建立了他們自己的直覺和測試技巧之後,我們通過實際案例來做遊戲平衡,不管是對已經上線的遊戲還是他們自己的專案。

我在第一天就告訴我的學生們,數學是一項技能,就像其他技能一樣是可以學習的。擅長或者不擅長數學這個概念只是美國文化裡的一個虛構說法,大量的研究都已經證明了這件事,所以,是否擅長數學並不是這堂課能否學好的藉口。如果真正應用這裡的技巧,每一個學生都可以做遊戲平衡設計。

當所有人都瞭解了課程結構和基本概念之後,我們就開始學習數字關係。因為,只知道“我剩下5點生命值”是沒有意義的,除非你知道其它事情帶來的是0傷害、1點傷害,還是1-5點傷害、抑或是1000點傷害,最重要的是這些數字之間的關係。

所以我們瞭解線性關係、三角關係以及指數關係、還有關係鏈等等,比如在RPG遊戲裡,如果玩家的數值出現指數級增長,怪獸的屬性也發生同步增長,那麼玩家與怪獸之間的能力關係就是線性的。

我們還關注資源流圖表,因為這可以用視覺化的方式呈現數字之間的關係。我還有一堂課是讓學生們玩曲奇點選遊戲,玩法機制上來說它只是數字之間的關係展示,曲奇每秒都會增長,你用已有的曲奇以更低的頻率不斷增長曲奇,這種方式在放置遊戲裡非常受歡迎。

學生們為此多次抱怨我把這種遊戲介紹給他們,因為它的玩法非常傻、但又很令人沉迷,而且往往會繼續玩下去,所以這就是遊戲設計的魅力,這也是我把它講出來的原因。

3、分析資源系統

隨後,我們開始瞭解資源系統和經濟系統,因為這些系統在遊戲裡非常普遍。我們在課堂裡還專門討論了遊戲相關的一件事,比如資源的供應和需求如何影響MMO遊戲裡的物價、如何造成通脹以及如何解決遊戲經濟裡的通脹問題,我們還談到了歐洲遊戲裡非常普遍的交易系統和拍賣行系統,我鼓勵他們親自去體驗這些型別的遊戲。

4、遊戲裡的傳遞機制

在這之後,我們解除到了第一個真正的遊戲平衡機制,也就是不同遊戲元素之間的傳遞關係。最明顯的一個案例就是《爐石傳說》或者《萬智牌》這樣的TCG遊戲,你需要一套卡牌才能玩,然後會出現更多、更強大的卡牌,你在平衡的時候要做的就是把(魔法)消耗與效果以數字的形式做對比,如果一張卡的消耗與它帶來的效果對等,那麼它就是平衡的。

我們通過實際案例的方式讓學生分析現有遊戲的平衡性,比如哪些卡過於強大、哪些卡太弱,哪些卡是最平衡的,然後用數學方式進行對比。

5、概率問題

這之前,我們已經對遊戲平衡技巧進行了足夠多的討論,但還沒有觸及概率問題,所以我們現在開始瞭解基本的概率。比如一個骰子對一拍骰子的影響,從一堆紙牌抽到某張牌的概率,然後用遊戲裡的案例實際分析。

另外,我還告訴學生們,概率問題並不總是很直觀的,而且並不會每次都出現不同的結果。因此,如果做的不夠謹慎,概率問題很可能給遊戲帶來麻煩。當然,概率問題實際上並沒有用很長時間,大約一週左右,另外的一週時間我們都在課堂上玩骰子和紙牌遊戲並且對它們進行分析。

5、當概率行不通的時候

在學生們瞭解了概率背後的機制之後,我又給他們澆了一盆涼水,因為概率並不能解決所有問題。原因有兩個:其一,人類並不擅長概率問題,有時候遊戲策劃計算起來很好,但玩家往往覺得不對,席德梅爾也曾在2010年的GDC演講時提到過這個問題。除了計算概率之外,你還需要知道為什麼人們把很直觀的概率搞錯、以及什麼時候容易誤解。

我們還談到了遊戲設計策略來解決玩家認為概率有bug的問題,在打撲克的時候,你可以通過計算的方式知道對手的牌,但有時候心理學技巧往往會讓人混淆。我們還提到了道德問題,比如作為遊戲策劃,你是對玩家坦誠概率問題,還是利用他們對概率的誤解設計變現手段?

第二個原因是,即便我們對概率問題很誠實,但隨即生成器卻並不會這樣,實體骰子實際上是不完美的,得出的數字會受到力度和環境的影響,並不是完全隨機,所以在電腦上設計概率的時候也不應該完全隨機。

你應該設計一些能夠預測的規律,讓玩家去發現,不管是在拉斯維加斯作弊還是在RPG遊戲裡改變某個檔案以獲得不公平的優勢。

我希望在意識到其侷限之前,學生們不要過於依賴概率,在這之後,我介紹了幾個比較有用的概率工具,特別是蒙特卡羅模擬和馬爾科夫鏈。

蒙特卡羅模擬只是重複上千次甚至百萬次隨機嘗試,然後看會發生什麼,在這些結果當中找出平均值,就會比較接近數學解決方案。這個方案是有用的,因為操作起來很容易,你不需要數學知識,只需要做表格和簡單計算就行,它可以用在計算解決方案不可能的時候或者學生不知道怎麼做的時候。即便是你有一個解決方案,這個工具也是很有用的,因為它可以確保你的方案是正確的。

馬爾科夫鏈則適合解決一些比較特定的情況。比如在桌遊選擇策略的時候,你可以使用蒙特卡羅模擬不斷嘗試,找到最優策略,但還可以把每個節點看作一個狀態,計算這些狀態之間的關係,然後以倍數關係計算,就可以知道每個回合在哪個地方有多少可能性。

與課程裡的其他方法相比,這有點複雜,但卻非常強大,因為它能夠帶來一些其他方法無法得到的方案。

6、情景平衡

我們研究了隨機和非隨機性的情況以及概率,接下來就是把它們混合在一起,看遊戲平衡與這些元素有什麼關係,這是很多學生在玩TCG或者類似遊戲的時候已經遇到的問題。比如一張卡只有在特定情況下才能得到收益,簡短的答案是你要計算這個收益被觸發的頻率是多大。

或許情景平衡最具代表性的是塔防遊戲,比如一款古老的塔防遊戲裡,有些防禦塔當地人聚集的時候傷害最大,分散的時候就沒那麼大,還有些塔只能對付飛行或者非飛行敵人,有的塔能夠對地對空但傷害沒那麼高,還有些塔沒有能力但卻可以給其他防禦塔帶來加成。這一切都取決於塔防桌面的狀態,比如下一波敵人的屬性是什麼、用什麼塔防對付它們。

如果讓學生們深入研究這些東西,他們甚至可以給你找到最佳塔防佈局,還能做一場GDC演講。

7、獎勵系統

隨後,我們把上面學到的東西融合起來,檢查遊戲裡的獎勵系統,以確定遊戲節奏。比如RPG遊戲裡的隨機掉落寶箱,你可以通過概率確保玩家至少要5次或者更多才能得到一個地牢的最佳資源掉落。

我們還研究了進度系統,比如升級曲線、需要多久才能達到特定等級,以便觸發危險、事件或者其他活動,還有故事本身也是一種獎勵,如果想投入更多,這會讓專案持續很長時間。

還有一個是道德問題,比如在社交遊戲、手遊當中都有大量的獎勵系統,它們作為操控玩家付費以繼續遊戲的一種方式,作為遊戲策劃我們該怎麼做?

8、資料分析

接下來我們學的是分析,你知道了概率的本質,然後用具體資料來看它具體是怎樣產生的,這比概率難一些,因為它不是那麼直觀、而且很容易搞錯。有人說資料不會說謊,但實際上,大量的數字往往會誤導你。

我們需要在大量的資料當中,找到應該給遊戲記錄的數字,我們如何用這些資料來決定遊戲是否平衡。大亂鬥、MOBA遊戲裡的戰鬥是非常好的案例,因為你要處理大量角色,他們彼此之間必須平衡,而這是通過純粹的表單或者對比無法得到的結果。

你可能做更多的是小專案,但如果你要做一個需要上千人測試的遊戲,你該問什麼問題、收集哪些資料來確定這個遊戲的平衡問題?如果你發現修改了某個資料可以大幅提升遊戲收入但降低了玩家愉悅感,這是好現象嗎?這是不道德的還是必要的?

在這些課堂當中,我並沒有給出很多的答案或者觀點,我只是指出這些問題是遊戲策劃應該思考的,是應該有自己觀點的問題,因為如果你不這麼做,那就會有其他人替你做決策。

9、非轉移機制

我們講的最後一個問題是非轉移機制,就像是石頭剪刀布,比如有些東西對某一個事物很強大,但對另一個事物就顯得很弱小,這時候我們談到了遊戲理論,我覺得這很神奇,比如你可以問一個問題:在玩石頭剪刀布的時候,如果我用石頭贏了算雙倍、你用石頭贏了只按正常計算,那麼10次遊戲下來,這會給我帶來多大的優勢?

當然,這是不那麼實用的東西,因為很多遊戲都不會使用,就像馬爾科夫鏈一樣,雖然它的使用率很低,但在對的情況下是一個非常強大的工具。

最後我要說的是,無論是在課堂還是課外,玩遊戲都是很重要的一個學習方式,如果你只是從桌面看不同的方程,數學是沒那麼直觀的,但如果你能從實際動作當中看到,就跟更容易理解到底發生了什麼。

在這麼多年的教學過程中,我不止一次被學生問到,“我們什麼時候才會用到它?”學生們同時在看理論和應用,另外,他們也非常喜歡這個課程,因為它需要玩遊戲,而且可以讓我介紹一些他們平時不會玩到的遊戲。

課堂上玩的遊戲

這門課另一個優勢就是PvP機制,也就是讓學生們彼此競爭,去分析一些遊戲的平衡性問題,當答案不是那麼清晰、明顯的時候,我往往會把這些遊戲的限制簡化,以便讓他們更容易得出分析結果,也能防止學生通過網路搜尋照搬別人的策略。

學生競賽專案

另外就是如何在課堂上使用表格,很多的遊戲平衡問題都可以通過Excel來解決,我把這些平衡問題劃分為很多部分,然後讓學生們每次解決一些,通常是在Excel裡指出哪些功能有用,然後在遊戲設計的時候讓他們使用。

用表格解決平衡問題

唯一的例外是,我沒有提到指令碼或者語言,因為絕大多數情況下這是不必要的,而且會讓問題更加複雜。我有很多學程式設計的同學寧願用程式碼寫東西也不願意用表格,我希望學生以形式化的方式思考問題,而非程式碼。

比如有個同學用了一千行程式碼寫了一個AI運作的程式,並且一行行向我解釋具體的意義,但我告訴他只需要用50行Excel表格內容就可以搞定這些,而且更容易理解和閱讀。

這個課程還有一個特點是做比較長期的專案,讓學生們分析現有遊戲的設計,比如通過數學方式推算《爐石傳說》背後的設計思考,找到這些卡牌之間的消耗與收益關係,然後為這款遊戲設計5-10個微型資料片。

課程中的專案型別

有時候我會讓學生們直接與遊戲策劃溝通,參與實際遊戲的資料片設計,雖然這樣的事情還沒有發生,但還是有可能的。對於做自己遊戲的同學,讓他們分析自己的專案,創造數學模型來證明遊戲的平衡性。

或者,直接給他們遊戲讓他們去平衡。比如我做了一款非常簡單的TCG遊戲,故意破壞了遊戲平衡性,然後學生們通過合作與討論最終解決了這些問題。

在這門課程當中,專案是證明和練習所學技巧的必要部分。因為做遊戲是一件事,平衡則是另外一件事。

過去幾年來,我也一直致力於記錄課堂上發生的事情,並且相關的書籍已經寫出了草稿,所以,如果你想要開這麼一門課,我可以給你提供課本。另外,很多內容實際上可以在網站上看到,如果你們看完之後有任何問題,都可以及時討論。

如若轉載,請註明出處:http://www.gamelook.com.cn/2022/01/470332

「其他文章」