今天小編給大家帶來的是玩家"ZJU_moon"分享的《俠客風雲傳》戰鬥系統及傷害數值分析攻略,詳盡地分析如何創造一個合理的資料系統以及戰鬥系統,有興趣的玩家一起來看看吧!
一.前言
由於本文名為詳談,為了邏輯的嚴謹性,請允許我在細節上多廢話幾句。首先我們要明確什麽叫做 “合理” 。不同的玩家有不同的愛好,有不同的需求,而我們要做到的合理,就是要讓遊戲體驗符合遊戲面向的玩家群體中的多數。就以俠客為例,玩家群體可以大致分為這麽幾種:
1. 休閒玩家,以看劇情、體驗遊戲生活為主。對於戰鬥系統要求是盡量簡化,尤其不能卡關,讀檔重複一遍不能跳過的劇情是這種玩家深惡痛絕的。
2. 武俠情懷黨。這種玩家最希望得到遊戲體驗是還原一個心目中的武俠江湖,比較重視遊戲中資料系統的 “真實性” 。所謂的真實性並不是要求跟現實世界吻合,而是戰鬥系統中展現出來的江湖盡量跟劇情設定保持一致,假如劇情設定中的武林前幾高手在戰鬥中打不過幾個山賊,那麽對於這類玩家來說體驗就非常糟糕。
3. 追求難度的自虐黨。對於這類玩家來說,所有的遊戲體驗就是追求自虐,真實與否並不重要。難度越高越好,挑戰極限就是這類玩家最喜歡做的事情。
4. 龍傲天型,追求一路碾壓。修改器可以滿足此類需求,因此戰鬥系統不需要考慮這類人。
還有其他類型的我就不細分了。所謂眾口難調,要同時滿足各個類型的玩家需求是比較困難的,本文重點從資料系統入手,來談一談如何在現有的系統上合理化資料,以及提出現有系統的改進意見。
二.戰鬥系統的分析和合理化建議
現在進入正題,談一談現在的戰鬥系統及數值系統存在哪些問題,怎樣改動才能變得更合理。下一部分則談談在不改變當前系統的條件下,mod製作者要如何設計資料才能實現合理化。
1. 先來定義一下最基本的概念。所謂收益必須是一個可以量化的數值,對於玩家來說,最好是一個可以直觀感受的最終變量。最常見的錯誤理解是把減傷百分比理解為收益,比如認為30%減傷到40%減傷,和40%減傷到50%減傷的收益是等同的,這顯然是錯誤的。
舉一個具體的例子。比如1000生命值的一個角色,傷害值為100、沒有減傷的情況下需要攻擊10下。減傷10%的時候需要11.11下(實際為12,表現為傷害溢出,暫不討論,下同),減傷20%的時候為12.5下,減傷50%的時候為20下,減傷100%的時候為無窮多下。用哪個數值能更直觀的衡量人物的抗擊打能力呢?顯然並不是減傷百分比,而是傷害值不變的情況下能承受多少次攻擊。
定義 EHP(Effective Health Point)= HP/(1-減傷百分比)
EHP系數 = 1/(1-減傷百分比)
在這個定義下,我們可以很方便的把所有抗擊打能力歸結為一個值EHP,在比較人物抗擊打能力的時候用這個數值即可。在引入其他變量的條件下,相同EHP、不同HP的人物亦有可能表現出不同的生存能力,比如1000HP和100HP、90%減傷的EHP相同,但在回復量固定的情況下顯然是後者的生存能力更強。但這並不影響把EHP作為最直觀的衡量人物生存能力的單一數值。
(1)當我們需要表述某一個防禦屬性的收益的時候,需要將其轉化成EHP,或者EHP系數處理。一般討論收益的變化的時候,是指某一個數值本身的變化;當需要討論收益的百分比變化的時候,最好在表述上用 “相對收益” 的概念加以區分。
舉例:假定傷害=攻擊力*招式系數。那麽招式系數固定的情況下,傷害就跟攻擊力正相關。取招式系數=10,則傷害=10*攻擊力。這時候我們稱 “攻擊力的收益是線性的” 。當攻擊力為100的時候,增加10攻擊力,傷害百分比提高了10%;當攻擊力為200的時候,增加10攻擊力,傷害百分比提高了5%;所以我們稱 “單位攻擊力的相對收益遞減” 。注意,相對收益不變的情況,原函數為指數函數。
(2)當我們要表述一個變量相對於另一個變量遞增或者遞減的時候,嚴格明確所表述的變量的具體含義。舉例:傷害=sqrt(攻擊力)*招式系數,其中sqrt表示開根號。取招式系數=10,當攻擊力為1的時候傷害=10,當攻擊力為25的時候傷害=50,當攻擊力為50的時候傷害=70.71。這時候會有人稱 “攻擊力的收益遞減” ,這個表述是錯誤的。嚴謹的表述是 “單位攻擊力的收益遞減” ,或者 “攻擊力收益函數的一階導數單調遞減” 。
不能理解本條的人,請翻開高中數學教材或者高數教材,翻到函數和導數的章節,看看單調遞增和單調遞減的定義是什麽。
2. 來分析一下遊戲中常見的兩種傷害結算系統。第一種是傷害=攻擊力-防禦力,第二種是先將防禦力轉為一個減傷百分比,然後計算傷害=攻擊力*(1-減傷百分比)。第一種公式在早期遊戲中用的比較多,現在已基本被淘汰,或者轉為成格擋系統輔助存在。第二種公式是目前絕大多數遊戲採用的計算方式。
(1)為何第一種公式基本被淘汰了呢?想像一下,攻擊力剛好等於防禦力的時候,則需要擊殺的攻擊次數是無窮大;當攻擊力-防禦力分別等於1和2的時候,則需要擊殺的次數前者是後者的兩倍。攻擊力以及防禦力的收益會在攻擊-防禦=0的附近發生極大的偏離,而在無窮大處則趨向於線性。用圖象來直觀的表示(假定生命值為10000,每秒攻擊1次):
那麽在什麽時候需要用來作為輔助存在的系統呢?當需要展現 “蟻多也咬不死象” 或者 “你們這些渣渣,數量再多破不了我的防有什麽用” 的時候,可以引入格擋系統(只是直觀的命名為格擋系統,遊戲裡未必要展現為格擋)。這點在武俠RPG裡沒有必要展現,在仙俠RPG或者魔幻RPG裡可以適當的使用,使得戰鬥系統更符合劇情邏輯。
更多相關資訊請關注:專題
來源:遊俠網