“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

遊資網發表於2019-11-07
隨機數一直如同一個幽靈一樣影響著我們生活的方方面面,在遊戲裡中也不例外。最常見的應用非暴擊傷害莫屬。無論是即時戰略、戰棋還是RPG、射擊,無論是主機、pc還是手遊,幾乎每一款遊戲總會有那麼一個暴擊設計在裡面。

我們經常能夠看到的技能說明就是“**英雄的攻擊有20%的機率造成額外100%的暴擊傷害。”玩家對於暴擊的痴迷真可謂達到了無以復加的地步!

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

不知道有多少人還記得當年這個非常嫻熟非常NB的高階戰士蒼天哥,他的口頭禪就是“暴了!看到沒有!1000多!”


為什麼一定需要20%的暴擊?

大家可能會疑惑,反正都是提供額外輸出,一局遊戲怎麼也得砍幾百下,暴不暴擊有什麼區別嗎?你直接把每次攻擊的傷害增加20%不行嗎?

答案是還真不行……

因為遊戲是虛擬的,所有數值都沒有太多現實意義,所以每次輸出造成10點傷害還是12點又有什麼區別呢?這裡面需要加入一些心理學的概念,那就是我們的大腦需要通過變化獲得刺激。

在腦電波的研究中有一個東西叫做“事件相關電位”(ERP,event-related potential),它是指給予神經系統(從感受器到大腦皮層)特定的刺激,或使大腦對刺激的資訊進行加工,在該系統和腦的相應部位產生的可以檢出的、與刺激有相對固定時間間隔(鎖時關係)和特定位相的生物電反應。簡單來說就是外部刺激在大腦特定區域所造成的反應。EPR其實有很多種,其中被學術界認為最有意義,最能代表人類情緒波動的一類EPR又稱為P300,也就是一種在刺激發生後300ms可觀測到的EPR。它被廣泛的應用於測謊,心理干預等領域。

P300有這麼一個特性,如果你向同一感覺通道反覆給予兩種不同概率的刺激,那麼小概率的刺激將激發更明顯的P300。這一實驗正規化又被稱為Oddball正規化,具體操作標準如下:

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

之所以將小概率刺激的發生概率設定為20%左右是因為它能既頻繁又明顯的激發P300。現在你知道為什麼大多數被動技能的觸發概率都在20%附近了吧?知道為什麼爐石傳說一包5張卡必暴一張非普通了吧!

在遊戲中平砍起到的就是標準刺激的作用,而暴擊則代表偏差刺激。所以暴擊激發效果較平砍要明顯的多。這也就是為什麼直接將傷害增加20%可以帶來等價於暴擊的傷害提升,卻無法帶來等價的興奮感。

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

正是因為這種刺激,才讓我們覺得遊戲好玩,才肯為遊戲掏錢。我們早已被資本家研究透了。在資本面前,我們都只是小白鼠而已。

為什麼還要限制20%的暴擊?

既然暴擊這麼好,為什麼很多遊戲又要精心的調整暴擊發生的概率和傷害水平呢?你讓我暴到爽不好嗎?

這裡就要說到我們為什麼而玩遊戲。對動物而言,遊戲應該是一種生存技能學習的過程。雖然人類今天玩遊戲已經和生存技能沒什麼太大關係了,但是我們對遊戲與技能提升的關聯需求是寫在DNA裡的。因此在遊戲過程中玩家除了獲得刺激,往往還需要感覺到成長。單人RPG遊戲,你大可以通過技能數值系統或者裝備裝備系統來達到這種目的。問題是多人對抗類的遊戲呢?此時遊戲就需要兼顧遊戲性和平衡性兩方面的考慮。

因為只有平衡的遊戲才能說明玩家的實力,才能讓玩家的實力得到他人的認可,比如國際象棋,圍棋。人們一局一局從相同的起點出發,整個過程毫無隨機性可言,成王敗寇沒什麼可爭辯的。你可以憑藉這類遊戲登上人類鄙視鏈的巔峰,一個國際象棋世界冠軍的頭銜甚至可以提升到民族自信心的高度!

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

1991年,謝軍擊敗保持世界冠軍頭銜達13年之久的喬治亞棋手齊布林達尼澤,成為中國第一個女子國際象棋世界冠軍。也是國際象棋史上第一位歐洲以外的國際象棋女子世界冠軍。有興趣看看當年的報紙你就能感受到什麼叫民族自豪感。

問題是這樣的遊戲別說遊戲性了,就連觀賞性都要打個大大的問號。如果不是為了升學加分,當年又有多少人是真心的因為喜歡而下國際象棋呢?

相反,倒是那些充滿了隨機性的遊戲才是大眾中最普及的遊戲,比如鬥地主,麻將。這類遊戲在要求玩家的技巧的同時,又保留了極大地隨機性。你就是牌技再高,能不能胡十三么也只能拼運氣。你就是牌技再差,倆王四個2在手,這地主你也敢叫。這樣的遊戲才會收穫大量的玩家參與,因為無論水平高低,你都有贏的可能性。無論是遊戲性還是觀賞性都不錯,問題是這平衡性就很成問題了。因為輸贏很大程度上由運氣決定,贏了不代表強,輸了不代表弱。那你說還比個什麼勁呢?就像一個人中了1億的彩票,你頂多也就捶胸頓足感嘆為什麼這個人不是自己,但是你絕不會產生他比你強的感受。

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

此時不但不能給勝利者帶來任何認可,甚至還會造成對方勝之不武的負面影響。

所以很多時候,遊戲性和平衡性是有矛盾的。當遊戲過多的依靠隨機性來創造刺激感進而提升遊戲性時,就會貶損遊戲的平衡性。因為玩家的點滴的能力差距被掩蓋在運氣的波動中,玩家自身微小的成長也變得非常難以察覺。這樣別說遊戲的電競化,就連排位機制都會變的缺乏說服力,這也是遊戲公司所不想看到的。所以很多遊戲設計中不但要新增隨機性,還不得不想方設法的控制隨機性。

這裡舉一個典型的例子,曾經魔獸世界為保證PVP的競技性而增加了一個專門的屬性。具體操作就是PVE中給你一大堆裝備堆疊暴擊,砍的boss數字飛濺。5萬,10萬隨便暴,看上去那叫一個爽。(反正boss上億的血……)但是等到了PVP,又給你加了一個專門的屬性“韌性”來降低玩家受到的暴擊率和暴擊傷害。

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

在給人一種脫了褲子放屁的感覺同時,韌性確實極大地降低了隨機性以達到PVP需要的基本的競技公平性。


20%的暴擊一般是如何實現的?

通常我們心理上認為的暴擊應該是純隨機的,它需要計算機通過生成隨機數來實現。但是遊戲公司因為這樣那樣的原因又會刻意的對暴擊進行控制,於是就出現了玩家語境中的真隨機和偽隨機。雖然之前已經有玩家討論過,但是我還是想從概率論的角度嘮叨幾句。

我們所說的隨機數本質上是一次“隨機試驗”中決定某個特定“隨機事件”發生的決策方式。

聽上去有點一頭霧水是吧。還是說20%暴擊的例子。技能上說**英雄的攻擊有20%的機率造成額外100%的暴擊傷害。於是我們在心理上就將“一次攻擊”叫做一次“隨機試驗”,將造成暴擊叫做一個(或者也可以叫一種)“隨機事件”。(相對應的未造成暴擊則是一種“隨機事件”只不過大家不關心了而已)觸發機制上我們可以想象每次攻擊後,系統會給出一個1-10之間的正整數,如果結果是1-2,那麼就暴擊,如果結果是3-10就平砍。

在這個例子中,“隨機數”指的就是指這個正整數,所謂真隨機還是偽隨機應該討論的是這個數怎麼來和怎麼用。理論上真隨機要求每次隨機試驗(每次攻擊)都應該有獨立的隨機數,而且這個隨機數應該是不可預判的。

但在大家的口語中所說的偽隨機往往討論的並不是同一個事情。下面我會反覆使用這一個例子來解釋若干種所謂偽隨機的不同。

1使用隨便什麼預先存在的數字作為隨機數,比如攻擊發生時計時器上秒針的最後一位數作為隨機數。那麼理論上我們可以看著秒錶操作,確保每次攻擊都是暴擊。只不過當所取數值變化非常頻繁時(比如精確到0.001秒)給人的感覺就和不可預期差不多了。

這種方法幾乎被所有的遊戲使用。這種場景下大家口語上的真偽隨機往往說的是同一個隨機數是否會被用來判斷多次攻擊的結果。一般情況下,如果一個隨機數沒有讓玩家感受到可預判或被反覆使用,我們就會說它是真隨機,如果被感受到了又會被稱為偽隨機。

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

比如wow,如果只是平A,那麼感覺上暴擊的發生確實是真隨機;但是當我們發現同時發生的傷害總是同時暴擊時,我們又會傾向於稱它為偽隨機……

從概率論學術層面來說,電腦中幾乎就沒有真隨機數,因為實際上隨機數的產生本身就需要一次隨機試驗。而目前電腦的硬體還無法獨立進行這樣的隨機試驗。你總不能在電腦裡做一個機械結構扔色子吧?所以如果深究學術概念,所有遊戲中的隨機性都應該被稱為偽隨機。而在玩家的語境下,對於有每次攻擊都由獨立隨機數判斷,觸發機制也沒有經過人工調整的暴擊就算是真隨機了。

PS:當然我們也可以通過一些外接裝置來獲得真正意義上的真隨機數,比如連線射電望遠鏡獲得宇宙中某一狹小區域的實時輻射資訊作為隨機數。但是這成本太高,主要用於一些重要檔案的加密使用,不太可能用於遊戲中。

2粗暴的控制輸入結果,比如我們可以限定隨機數按照1,3,5,7,9順序迴圈出現。這樣我們看到的結果就是1次暴擊跟著4次平砍的迴圈往復。這種方式可以說毫無隨機性可言。這時候我們一定會毫無爭議的說它是偽隨機。

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

比如魔獸爭霸混亂之治早期版本中劍聖的跳劈就是這麼一個邏輯,我可以數著劍聖的攻擊次數預測下一次攻擊是否暴擊。

3一次性生成若干個順序的隨機數,認定其中有且只有若干次可觸發暴擊。比如我們每次將1-10這10個數字進行隨機排序,剛好1、2這兩個數字被排在了第3和第8位,於是玩家的第3,8次攻擊會暴擊。然後每10次攻擊系統就重新再排一次序。最常見的此類應用就要數撲克牌了,理論上每張牌都有1/54的概率抽到大王,但是實際上一副牌抽下來只會且一定會抽到1次大王,不同的僅僅是抽到大王的順序而已。這種方法用的好給人的感覺就是真隨機,比如撲克牌。用的不好被人鑽了空子就變成徹頭徹尾的偽隨機了,比如盲盒抽卡(這一點等下細講)……

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

這種方法下已經將暴擊從一種概率問題變成了一種排列問題,輸出的結果是固定的,只是輸出的順序不同而已。

4將方法1和3結合再加入複雜的公式。

依然使用上面的例子,但我們可以通過複雜的公式對每一次攻擊暴擊的概率調整一下,第1-2次攻擊暴擊的概率為10%,如果沒有暴擊第3-5次攻擊提升為20%,6-8次提升為30%,第9次提升為50%,第10次提升為100%。在這個過程中如果出現暴擊,下一次攻擊就視為第一次攻擊。這種方式可以有效地控制隨機試驗在各個方面的表現。因此被廣泛的應用於各種對抗類遊戲中。

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

這裡最好的例子要數dota2中**英雄的暴擊公式。(詳見“雲玩家hotspot”的文章《玄不救非,氪不改命:教你分清“偽隨機”和“真隨機”》,雖然我不是很認同他對於真偽隨機的分類方式,但不妨礙這是一篇好文章) 有很多朋友在評論裡問C值是怎麼算出來的,我只想說那得講一節概率課才能說明白。

方法3,4實際上都已經改變了“一次攻擊”這一隨機實驗的定義。3是將隨機實驗定義成了“10次攻擊”,4則變為一直攻擊直到暴擊出現。這兩種方法往往也會被稱為偽隨機,原因在於它帶給玩家的感覺與技能描述給玩家的認知是不一樣的。

其實這兩種方法想被玩家在感性上認定為真隨機也不難,只要把3的描述應該改為“**英雄的每十次攻擊視為一組攻擊,每組攻擊在隨機位次包含2次暴擊。”,4的描述則應該改為“**英雄每兩次暴擊間隨機間隔若干次平砍。最大攻擊間隔是9次,最小間隔是0次,平均間隔大約為4次,詳細資料太複雜請到遊戲社群查閱。” 這麼說倒是清楚了,問題是這遊戲玩的得多糟心呀……

所以,我們稱方法1,2是偽隨機主要是因為它破壞了“隨機數”的不可預期性。而方法3,4被嫌棄則主要是它將多次攻擊視為一次隨機試驗,與我們感情上理解的技能描述不一致。這也就是為什麼既往的文章中,大家對於真偽隨機的定義總是有很多爭議的原因。因為在不同的語境下,大家認定偽隨機的原因根本不是一個東西。通常情況下,只有方法1有可能在玩家的口語上被稱為真隨機。但是請注意,說一千道一萬這四種方法造成的額外傷害都是20%,這一點其實都是一樣的。

哪種20%暴擊隨機性更大呢?

聽上去這些方法給出的暴擊結果都差不多呀,那麼這些方式的區別又如何體現呢?哪種方法更適合競技公平,那種更拼運氣呢?這我們就需要了解一下如何從概率論來評價一個隨機事件的發生概率了。

一般概率論會使用均值和方差兩個引數來描述一個隨機事件的發生概率。還是以標準的一次攻擊20%暴擊為例,我們認為暴擊造成的額外傷害為1,平砍為0,暴擊傷害均值就是0.2。方差是20%*(1-0.2)^2+80%*(0-0.2)^2=0.16 。請大家記住,這是真隨機應有的狀態。

如果我們以每10次攻擊造成暴擊的次數作為衡量標準,那麼理論上我們是將隨機實驗擴充套件到10次攻擊,如果保證每次攻擊都是相互獨立的,均值就應該是2(平均造成2次暴擊),方差應該是1.6(這個就很難直觀感受了)。

我們再來評估一下上述四種方式對於10次攻擊中暴擊次數的均值和方差。

1均值2,方差1.6。

2均值2,方差0。

3均值2,方差0。

4均值2,方差1.43(這裡的方差計算並不正確,我只是將一次攻擊的0.143乘了10,但是理論上在這種模式下這麼算並不太合適,但是方差變小的趨勢肯定是正確的。具體這個方差怎麼算還請大佬指教)。

可以看到無論是那種方法,開發者都會保證均值不變,畢竟人家已經把20%寫在技能說明裡了,再改變這個就真是忽悠玩家了。所以開發者一般都只會在方差上做文章。而方差越大我們感受到的隨機性越強,方差越小,輸出結果就越穩定。開發者絞盡腦汁調整引數,其實無非就是要將方差控制在一個適當的區間,既保證一般玩家遊玩時能夠享受到大腦帶來的刺激,又保證競技中玩家個人能力不會被隨機性喧賓奪主。

問題是心理上的東西很難用理性來解釋,玩家有時候會被直觀感覺所左右。所以相對於10次攻擊的統計,大家有時候看到連續出現的兩次暴擊就會開始往運氣上扯。那麼如果以一次暴擊出現後的下一次攻擊作為隨機試驗(也就是是否會出現連續暴擊),這四種方法的表現又如何呢?

1均值0.2,方差0.16

2均值0,方差0

3均值0.12,方差0.105

4均值0.1,方差0.09

大家不難發現,方法1的均值和方差依然和標準實驗是一模一樣的,這也就是它通常會被稱為“”真隨機“”的原因,因為變更隨機試驗的定義一般不會影響到它的表現。方法2因為毫無隨機性可言就不討論了。關鍵是方法3和4。從10次攻擊的傷害來看,方法3帶來了無與倫比的穩定性,但是造成連續兩次攻擊的概率反而比4還要高。也就是說方法三在犧牲掉極大隨機性的情況下,仍然沒有很好地解決玩家直觀感受的問題。而方法4看似對隨機性削減的不多,但是卻更難造成連續地暴擊。翻譯一下就是兩個英雄對砍,方法4即保留了一組攻擊輸出的隨機性,又很大程度的削減了玩家感覺上的運氣成分。這在電子競技中可以說是非常重要的,兩大哥對砍時既保留了最後輸贏的懸念,又保證玩家在局勢不利時有一定的機會做出反應。這也就是為什麼對抗類遊戲的引數設定往往牽扯到上述dota2中那種複雜到看不懂的公式。

因為只有這樣的公式才能保證比賽中既有令人難忘的天命瞬間。

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

TI6決賽的第三局,在一波肉山團戰中Wings眾人分工明確。虛空果斷跳下肉山坑緊跟白虎,隨後雙方對嘍虛空天命被動五下暈三錘敲死白虎!這一幕也讓眾多玩家永遠記住了這個虛空。

但無論多麼天命,最後大家還是會承認選手輸贏看的還是實力。

“20%暴擊”!為什麼在遊戲裡的各種增益總需要一個百分比?

TI8決賽最後一局LGD基地被推掉的那一瞬間,導播將畫面給到了LGD戰隊的四號位選手FY,FY面無表情讓人無法猜到他的想法,背後絢爛的煙花升起可惜不是為LGD所綻放。

寫了這麼多隻是想說作為一名普通玩家,我們只需要盡情的享受開發者為我們準備的大餐就好了,但是開發者所需要考慮的東西遠比我們想象的要複雜的多。因為在我們自己都不知道自己想要什的麼的情況下,開發者卻要猜出玩家想要的到底是什麼。這是相當藝術的。

所以請不要動不動就在Steam上對遊戲開發者惡語相向。有時候你感覺上細微的差別,在程式碼層級真的是很難琢磨的。(比如歌曲的迴圈播放)這不僅僅是用不用心的主觀意願問題,也不是會不會程式碼的技術問題,更多的是感性與理性相關聯的經驗問題。它需要反覆的試錯和打磨才能實現,就是神仙來也不可能一次性做好。

最後說一下盲盒問題,這裡要感謝“好大一團”的文章《如何成為一個遊戲王實體卡片收集高手?這是一份無助提高競技水平的買卡指南》,讓我終於明白盲盒散包是如何騙人的了。盲盒本質上採用的是上述方法3的做法,將若干次抽取視作一次隨機試驗。而散包等於是將一次隨機試驗又分拆成了若干次相關聯的隨機試驗。要保持分拆後的隨機試驗的均值和方差不變是有前提的,那就是不能知道之前試驗的結果。而實際上商人為了追求利潤,是在知道之前結果的情況下還賣給我剩下的散包。等於大佬抽的是概率,我抽的是大佬玩剩下的條件概率……大佬的均值永遠高於平均水平,我的均值無限接近於零,除非大佬自己算錯了才會留給我一些牙慧。這是赤裸裸的搶劫呀!

和媳婦去抽盲盒也是,一盒開了之後一群人上來又搖又捏,然後就看到熱門形象紛紛被抽走了。我一開始還傻傻的以為是自己運氣不好,現在我才知道是被人打劫了!消費者這麼幹也就算了,商家竟然還配合!這還有天理嗎!


來源:機核
原文:https://www.gcores.com/articles/116394

相關文章