如何做好回合制遊戲的戰鬥體驗? 戰鬥數值公式設計詳解

遊資網發表於2019-09-19
如何做好回合制遊戲的戰鬥體驗? 戰鬥數值公式設計詳解


1確定傷害公式型別
1.1減法公式
1.2除法公式
1.3乘法公式
1.4採用哪種公式
1.5公式變種
2確定二級屬性
3確定一級屬性
4確定職業
5確定二級屬性計算公式
6確定三級屬性
7設定技能屬性
8設定技能效果
9確定計算步驟
10確定最終公式
11確定技能

本文中的公式並不僅僅適用於回合制,也可以用在其他遊戲型別,只不過我對回合制更加熟悉,因此以回合制舉例。

1.確定傷害公式型別

說到傷害公式,只要是個遊戲策劃,多多少少都會有一些瞭解,而網上關於傷害公式的研究也非常多,這裡只是簡單說一下。

1.1減法公式

(攻擊–防禦)*係數

特徵是公式中有攻擊-防禦這一項,主要代表作有《夢幻西遊》《神武》《問道》,雖然是攻擊-防禦,但實際上有很多變種,其中最出名的就是《問道》,他的物傷和法傷演算法非常複雜,涉及到五行相性,算是《問道》戰鬥的一大特色,《夢幻西遊》跟《神武》則是在攻擊-防禦的基礎上額外增加戰鬥係數,從而豐富戰鬥內容。

1.2除法公式

攻擊/(攻擊+防禦)*係數

特徵是公式中有攻擊/(攻擊+防禦)這一項,主要代表作是《天龍八部》,但實際上《天龍八部》在這一項之後,還有很多係數演算法。

1.3乘法公式

攻擊*(1–免傷率)

特徵是沒有防禦屬性,或者有,但是變成免傷率的一個引數,主要代表作是《大話西遊》,《大話西遊》沒有防禦屬性,以五行相剋、抗性作為免傷率引數。

1.4採用哪種公式

事實上,國內的大部分遊戲公式,採用哪種公式一般都不是數值策劃或主策一句話說了算了,而是根據參考的遊戲或者今後預備挖的坑來決定的,當然,一般都是在立項之初就定好,如果專案開始之後還要改傷害公式,那麼這個專案的週期至少延長1-3個月。

1.5公式變種

但即便是有遊戲參考,公式也不會是一成不變的,事實上,知道三大戰鬥公式的意義並不大,因為真正的遊戲戰鬥公式受到很多方面的影響,比如屬性加成、成長的擴充套件、付費點的預估等等,所以真正的戰鬥公式,一定是從上面1-2條公式進行變種而來的。以減法公式為例,最簡單的,就可以將攻防拆分成物理和法術,然後分成兩條公式:

(物理攻擊-物理防禦)*係數

(法術攻擊-法術防禦)*係數

當然,還有更簡單的變種,比如卡牌MT,取消防禦,直接變為攻擊*係數,這也是近幾年很多卡牌遊戲的做法,因為摒棄複雜的公式運算,讓戰鬥結果更直觀是讓玩家更快了解培養方向的一個好辦法,那麼這樣一來就會少了一個屬性?其實並不會,我們可以在係數上做文章,相比於防禦、係數同時培養,不如專注係數來得直觀,比如:

原公式:(A-B)*C

防禦係數同時有培養:(A-(B+D))*(C+E)

只培養係數:(A-B)*(C+D+E)

而且由於有防禦這個屬性,上面的減法公式和除法公式很容易出現極端。

但是,並不是說防禦屬性就不好,因為有防禦屬性的存在,可以減少因係數失衡導致的戰鬥崩盤。

那麼,該怎麼變種公式呢?

答案是需要你自己定,是的,在最初確定採用哪一種公式後,剩下的變種需要你根據遊戲題材、以後想挖的坑來決定,可能有人會說坑還沒想全怎麼辦?沒關係,坑的平衡之後再說,如果還是不知道怎麼變種怎麼辦?那麼可以參考其他遊戲,並不是說要抄,而是可以看看他們用了怎樣的變種方式,比如:

《赤壁》

[(我方攻擊-對方防禦)*技能傷害百分比+技能附加傷害]*攻擊強度*(100-對方抗性)/100

這是一條很普通的變種公式,這裡面有3個屬性定位

第一,攻擊、防禦,會直接影響角色的戰鬥結果,姑且稱為二級屬性

第二,抗性,會間接影響角色的戰鬥結果,姑且稱為三級屬性

第三,技能傷害百分比、技能傷害加成、攻擊強度,會影響角色的戰鬥結果,但這些都是技能的屬性,不是角色的,與角色採用哪一個技能有關。

這條公式很完美地做到了2點

第一,技能特色,三個技能屬性,可以讓每一個技能都有各自的攻擊特色,之後再給部分技能增加額外效果,比如封印、中毒這些,那麼就可以很好地形成一整套技能數值。

第二,職業區分,因為有了抗性,所以每個職業必然需要不一樣的初始抗性,為職業平衡和以後要挖的坑做預備。

《放置奇兵》

攻擊者攻擊*(1-((受擊者護甲*(1-攻擊者破甲))/(200+20*(受擊者等級-1))*技能傷害率

這是一條較為複雜的變種公式,它變的是免傷率,雖然這個遊戲本身也有免傷率這個屬性,但免傷率是作為係數存在的,這裡面有4個屬性定位

第一,攻擊

第二,護甲(數值)、破甲(百分比,達到100%時,受擊者護甲強制為0)

第三,等級,之所以引入等級概念,是因為護甲值是根據等級而提升的,也就是說對於特定的英雄來說護甲/(200+20*(受擊者等級-1))將是一個定值

第四,技能傷害率,是技能屬性,與赤壁相比,放置奇兵的技能只有傷害率的一個屬性,但是,它的技能有很多效果,比如中毒、燃燒、冰凍、眩暈等等,畢竟兩個遊戲的型別不一樣,放置奇兵有幾百個英雄,每個英雄有1個主動技3個被動技,如果技能屬性太多,那玩家記起來就會很麻煩,不如在效果上做文章,而效果的屬性數值大部分可以相同。

如何做好回合制遊戲的戰鬥體驗? 戰鬥數值公式設計詳解

綜合上面兩個例子你會發現,公式變種就只能由你自己來定,因為遊戲的設計多種多樣,就算你是抄了某款遊戲,也會想要做出一點不同的——除非你100%照搬。但總的來說,有兩個原則:

1.初期不要過於複雜,一來方便玩家瞭解,二來方便以後擴充套件

2.公式要穩定,是說這條公式要100%考慮到各種情況,最簡單的例子,放置奇兵的破甲達到100%時,會強制受擊者護甲為0。

注意,公式變種在整個戰鬥公式設計過程中是一直在進行的,並不是一開始就完全確定,你只能先確定公式型別以及公式中用到的二級屬性。

2. 確定二級屬性

所謂二級屬性,是指攻擊、防禦、速度、HP、MP這幾個,當然,根據遊戲題材和公式型別,有可能會有不同的名稱和數量,比如沒有防禦、沒有MP、攻擊變成物理攻擊和法術攻擊等等,但不管有多少種二級屬性,都需要先確定,假設我們們有物理攻擊、法術攻擊、物理防禦、法術防禦、速度、MP、HP這7個(因為是回合制,所以速度概念一般都會有)。

3.確定一級屬性

一級屬性,會影響二級屬性的數值,比如體質、力量、敏捷等等,也就是我們常說的加點值。一級屬性需要根據已經確定的二級屬性來設計,這裡有個設計小規則,就是速度這個屬性,儘量不要只受敏捷的影響,否則會導致敏捷的加點收益變低。以上面7個二級屬性為依據,我們設計以下5個一級屬性

體質:影響HP和速度

力量:影響MP、物理傷害和速度

魔力:影響MP、法術傷害和速度

耐力:影響物理防禦、法術防禦和速度

敏捷:影響速度

4.確定職業

一級屬性和二級屬性已經設計完成,那麼遊戲職業的範圍基本也就可以確定了,遊戲職業建議在4-8個,因為職業過多,會增加玩家的選擇和認知難度,當然,有進階職業系統的除外,因為玩家要進階,一般對遊戲已經有了很深的瞭解,這時候增加進階職業不僅不會對玩家造成影響,反而會延長遊戲的生命週期。假設我們設定的職業有戰士、法師、術士、牧師、刺客5種。

5.確定二級屬性計算公式

為什麼要先確定職業再確定二級屬性的計算呢?因為二級屬性一般都會對職業進行修正加成,最明顯的例子,就是《夢幻西遊》的種族(雖然不是職業,但是它的設計流程跟職業類似),人族、魔族、仙族的每個一級屬性對二級屬性的影響係數都不同,比如1點體質,人族+5HP,魔族+6HP,仙族+4.5HP。當然,有一些遊戲會採用更復雜的演算法,比如:

HP=體質*8+50

物理攻擊=力量*1+20+LV*1+職業附加

其中,職業附加=LV*係數,而根據不同的職業,係數不同,比如戰士係數=1.5,刺客係數=2.5,法師係數=0等等。

但是,上面公式看似簡單,其實涉及到很多方面的問題

1.初始一級屬性點和每級可獲得多少點一級屬性點,並且是否能夠自由加點

2.提升等級是否也會增加二級屬性

3.職業附加如何計算

4.裝備附加如何計算

5.各系數怎麼確定

接下來,我將對這些問題進行一一解答。

初始一級屬性點和每級可獲得多少點一級屬性點,並且是否能夠自由加點?

初始一級屬性點一般=每級可獲得的總一級屬性點,比如每級可獲得10點屬性點,那麼初始一級屬性點就是體質、力量、魔力、耐力、敏捷各10點。

每級可以獲得的一級屬性點一般由多少個一級屬性決定,一般來說,都是以平均配點*1或*2,或者之後的模擬配點為準。

是否能夠自由加點,這個要看遊戲具體的設計,一般來說,為了讓玩家前期更專注遊戲,或者避免極限配點,都會先設定達到某個等級才能開啟自由加點,當然,有些遊戲一開始就可以自由加點。

提升等級是否也會增加二級屬性?

主要是看提升等級時是否會增加固定的一級屬性點,比如原本有10點屬性點,但是其中5點是固定平均加點的,那麼就只剩下5個自由點,這時就不需要額外增加二級屬性了,而如果沒有固定屬性點,那麼通過提升等級來增加二級屬性點是另外一個方案,比如

《天龍八部》的基礎物理攻擊=初始物理攻擊+力量*係數+LV*係數

《神武》寵物的攻擊=((攻擊資質*LV*2*(成長率/2000+0.7)+力量*0.75*成長率)/1000+50)*4/3

為什麼要這樣子呢?因為如果不做這個處理,會導致玩家極限加點時出現極端效果,比如10點全加攻擊,但因為提升等級沒有生命,會導致生命值一直不變的情況。

當然,也可以既有固定屬性點,也可以增加等級加成,但這個通常都只會在攻擊上做額外的加成。

職業附加如何計算?

職業附加有兩種方式,一種是一級屬性*係數,另一種是等級*係數,以控制難易度來說,推薦等級*係數,但是一級屬性*係數可以讓職業定位更加分明。

那麼係數究竟是多少呢?主要是看你的職業定位和每級屬性點,比如每級可自由分配5個屬性點,那麼職業附加的影響係數就可以定為5點,假設戰士的定位是高HP中攻擊中防禦,那麼最終職業附加如下

如何做好回合制遊戲的戰鬥體驗? 戰鬥數值公式設計詳解

職業定位中的高中低是相對各個職業而言的,不是相對係數,所以2HP可以認為是高,而2物理攻擊則認為是中。

裝備附加怎麼計算?

裝備屬性一般都可以認為=裸身屬性*係數,也就是說裝備物理攻擊=裸身物理攻擊*係數,根據裝備是否有職業限定,又可設計為是否增加職業附加。因為裝備一般都是固定等級的,所以屬性不會受到角色等級的影響,也就是說不會有LV*係數這個因子。我們可以採用模擬配點的方式來設計裝備屬性數值,如果會有10個屬性點,那麼如何配點呢?為了突顯裝備的等級效益,可以大大加強攻擊屬性的效果,也就是力量和魔力,比如體質、力量、耐力以1:8:1、2:7:1、3:6:1或2:7:2的方式分配,這樣子一來可以降低戰鬥回合數,二來在戰鬥效果上會有更明顯的裝備更換效果。假設我們們以1:8:1的方式分配,那麼最終裝備附加就會變為

物理攻擊=力量*A1=(10+LV*8)*A1

HP=體質*A2=(10+LV*1)*A2

物理防禦=耐力*A3=(10+LV*1)*A3

注意,這裡的裝備屬性是指所有的屬性效果,包括寶石、套裝效果等等,有人會說套裝效果是增加百分比的怎麼辦?其實反向逆推得出百分比就可以了,比如40級裝備,除了增加HP外,套裝效果還會額外增加10%的HP,那麼就需要先算出40級總HP是多少,然後*10%,反向得出40級裝備的基礎HP。

各系數怎麼確定?

通過模擬加點來確定,比如假設每級5個一級屬性點固定+1,並且留有5點自由屬性點,提升等級會增加攻擊,那麼根據

物理攻擊=力量*A1+LV*B1+初始物理攻擊+職業附加+裝備附加

HP=體質*A2+LV*B2+初始HP+職業附加+裝備附加

物理防禦=耐力*A3+LV*B3+初始物理防禦+職業附加+裝備附加

以1:3:1作為標準分配體質、力量、耐力(這個標準是最平衡的,或者自己設定一個最平衡的配點標準也行,同時這也是速度不能只受敏捷影響的原因),假設當前計算的是戰士,職業附加攻擊=LV*2,HP=LV*2,物理防禦=LV*1,那麼

物理攻擊=(10+LV+LV*3)*A1+LV*B1+C+LV*2+(10+LV*8)*A1=LV*(12*A1+B1+2)+A1*20

HP=(10+LV+LV*1)*A2+LV*B2+LV*2+(10+LV*1)*A2=LV*(3*A2+B2+1)+A2*20

物理防禦=(10+LV+LV*1)*A3+LV*B3+LV*1+(10+LV*1)*A3=LV*(3*A3+B3+1)+A3*20

也就是最終目的是轉化成一個等級相關的公式,然後進行拉表演算,以確定各個AB值。

那麼如何演算呢?

作為回合制遊戲,一個很重要的特徵就是回合,而根據平衡原理,最簡單的演算法就是兩個完全相同的個體進行戰鬥,所以你需要先定好一場戰鬥需要打幾回合,因為每回合雙方各出手1次,所以HP/(物理攻擊–物理防禦)正好會等於你設定的回合數,假設是7回合,那麼最終就是

(LV*(3*A2+B2+1)+A2*20)/((LV*(12*A1+B1+2)+A1*20)–(LV*(3*A3+B3+1)+A3*20)=7

接下來,設定一個遊戲平衡等級,所謂平衡等級,就是在這個等級時,遊戲初期設計的全部系統都已完成,玩家真正進入遊戲的週期閉環,注意不一定是等級上限,有可能還沒達到等級上限,但一般用等級上限來確定就可以,如果還是不知道怎麼做,有一個最簡單的方法,就是你想讓玩家在6個月內(遊戲生命週期短的甚至可以2個月)達到哪一個等級。假設我們們設為100級。

設定平衡等級之後,就可以用excel拉表的方式來確定這6個引數了,總的來說,有兩個原則:

1.根據你想要的加點影響權重來分配A、B值,A值主要用於影響加點,A值越大,加點收益越高,B值主要用於影響等級收益,B值越高,提升等級後獲得的效果越強,但是注意,B值的影響效果要比A值的小,也就是說,同樣一個效果,A值+1的效果要比B值+1的大。

2.根據你想要的戰鬥效果數值來確定A、B值的大小,通俗地說,就是你想要戰鬥中掉血的數值有多大,目前國內遊戲正在向兩個極端發展,往小的好處是精煉簡潔,玩家容易看出數值變化,壞處是預留的坑擴充套件難度較大,比如掉落生命值額外增加0.05%,那麼原本掉落100生命跟掉落10生命的效果在顯示上就會差很多,而大數值在將屬性拆分到各個系統時會更加方便。

確定好6個引數之後,再演算出初始值,各初始屬性值主要是用來平衡低等級時的戰鬥演算效果,下面3圖是3種不同的係數效果

如何做好回合制遊戲的戰鬥體驗? 戰鬥數值公式設計詳解

如何做好回合制遊戲的戰鬥體驗? 戰鬥數值公式設計詳解

如何做好回合制遊戲的戰鬥體驗? 戰鬥數值公式設計詳解

可以看到,圖1的數值最大,屬性增加也最快,圖2最小,圖3居中,而以設定的7回合效果來看,圖1效果最好。

如果單看上圖,回合數是平衡的,但實際上,我們採用的平衡等級和回合數都是理想狀態,所以根據玩家的加點以及裝備的收集程度,回合數肯定會有波動的。

法術攻擊的公式通常與物理攻擊相同,只不過各職業加成會不一樣,法術防禦同理。

那麼MP和速度該如何確定呢?

確定速度

速度主要用於確定戰鬥中的先手,公式通常為

速度=體質*A+力量*B+魔力*C+耐力*D+敏捷*E+初始速度+職業附加+裝備附加

其中ABCD一般都是同一個值,當然,如果你想讓法師類職業不加速度的話,可以C=0。

E的值通常是其他幾個值的N倍,具體倍數可自己設定,推薦5-9倍,主要是限定敏捷的加點收益。

A值如何確定呢?(假設4值都相等),答案是由你自己確定就可以,因為速度不會影響到傷害,但是,建議不要過大或過小,因為技能屬性中可能有速率的概念,戰鬥中可能也有影響速度的效果,過大或過小容易出現效果過強。推薦0.1-0.5之間就可以了。

裝備附加的演算法同樣採用模擬加點的方式來確定。

確定MP

MP主要用來限定戰鬥中可釋放的技能個數,公式為

MP=力量*A+魔力*B+LV*C+初始MP+職業附加+裝備附加

ABC的值主要由回合數和技能來決定,因為技能通常是有技能等級這個概念,也因此,每個技能的MP消耗會設計成與技能等級相關,比如SLV*1.2+20這種,所以我們的思路是:設計一個最平衡的MP消耗公式——>以平衡等級(即上面的100級)算出需要消耗的量——>以7回合施放技能來算出基礎MP總量——>乘以一個額外係數來算出最終MP總量。

之所以要再乘以一個額外係數,是因為我們使用的MP消耗公式和回合數都是理想型。

那麼MP消耗公式要怎麼設計呢?公式通常為

SLV*X+Y

XY由你自己確定就可以了,但一般來說當SLV=15~25時,SLV*X=Y,這樣可以保證玩家前期戰鬥不會太過消耗MP。

至此,戰鬥公式的第一部分已經完成了,接下來,需要設定三級屬性。

6.確定三級屬性

所謂三級屬性,就是指命中、閃避、治療暴擊、暴擊、免暴、暴傷、降低暴傷、封印、抗封、抗性、攻擊加成、攻擊減弱等等。

這些三級屬性,可以在多種途徑上增加,比如裝備、符文、神器等等,而在戰鬥中也可以增加,比如技能、光環。

如此之多的效果,很容易出現不平衡,因此我們需要採用2個思路

1.效果抵消,比如你想在裝備上增加暴擊屬性,那麼就同時在裝備上增加免暴屬性,讓裝備效果平衡,這是最簡單的抵消方式,但實際上,根據各個屬性的收益不同,增減的效果可能會不一樣,但思路是沒變的。

2.三級屬性儘量避免過於影響戰鬥效果的數值,比如閃避,你可以在裝備上增加50%閃避、50%命中,雖然結果是平衡了,但是在實際戰鬥中,50%閃避要比50%命中更加影響體驗,因為命中在玩家看來不一定是增加的那50%造成的,但是閃避玩家就會認為是,雖然可能還會有其他多種因素的影響。

三級屬性建議都設定一個範圍,比如閃避,最大閃避只能達到80%,封印,最小封印只能達到20%,這樣子可以避免意外狀況的發生。

7.設定技能屬性

所謂技能屬性,就是除了各種技能效果外,需要用來計算最終傷害的屬性,比如上文說的技能傷害率、技能強度、技能傷害百分比、技能附加傷害、技能威力等等。

一般來說,根據你的遊戲型別,技能屬性1-3個已經足夠了,比如多英雄培養的卡牌類,1個技能屬性就夠了,多於1個,玩家會增加成倍的理解和記憶負擔,而像回合制這種少職業的遊戲型別,2-3個技能屬性玩家還是能夠接受的。

那麼該如何設定技能屬性呢?

需要先明確你想如何進行技能效果加成,按加成方式,有兩種型別:

(攻擊-防禦)*A

(攻擊-防禦)+B

A一般為百分比定值,容易控制戰鬥結果,B一般隨技能等級提升而增加,有技能培養的效果,當然,也可以兩者一起配合,最終為

(攻擊–防禦+B)*A

而《赤壁》則更加一步,變成了

((攻擊-防禦)*A+B)*C

這裡面C一般為百分比,主要用於突顯技能的傷害效果,區分技能強弱,A同樣為百分比,但會根據技能等級而提升,A和C的作用相同,但更能體現雙方的實力差距,B為普通數值,也會根據技能等級而提升,它主要用於體現技能提升等級的效果,也就是說,B其實可以理解為固傷。

假設我們設定技能屬性為

(攻擊-防禦+技能附加傷害)*技能強度

8.設定技能效果

這裡所說的技能效果,可以從狹義上簡單理解為各種buff,一般來說,即使在設計技能時沒有用到但以後可能用到的效果,也儘量先定下來,這樣子可以先形成計算公式,之後擴充套件也方便。

技能效果從廣義上來說,也可以指其他加成效果,比如神器、裝備、符文、光環之類的效果,而這些效果,大部分都可以在技能的效果中出現。

之所以在這一步設定技能效果,是因為部分效果需要用到戰鬥公式中,那就是二級屬性的增益減益效果和傷害結果的加成衰弱效果。這些效果通常需要遵循1個思路,那就是對加成係數採用連加,對衰弱係數採用連乘,也就是

攻擊力*(1+攻擊力加成係數1+攻擊力加成係數2+攻擊力加成係數3)*(1–攻擊力衰弱係數1)*(1–攻擊力衰弱係數2)*(1–攻擊力衰弱係數3)

這是因為對於攻擊加成,如果採用連乘,那麼攻擊力的上限將遠遠大於預設的地步,攻擊加成係數1*攻擊加成係數2*攻擊加成係數3的情況下,可以達到10倍於正常攻擊力的水平,而對於攻擊衰弱,如果採用連加形式,將很快減少到0%以下,即使沒有到0,在這種狀況下,任何一點攻擊衰弱都將對戰鬥力造成極大的影響。

9.確定計算步驟

進行回合制戰鬥計算,需要先明確幾個概念:回合、回合開始前、回合開始後、回合結束前、回合結束後、指令下達期

回合:從前一次彈出回合數字到下一次彈出回合數字之間。

回合開始前:從彈出回合數字之後到第一個戰鬥單位出手之前,這裡隱含了“指令下達期”,也就是通常玩家進行戰鬥操作的30s時間

回合開始後:第一個戰鬥單位出手之後

回合結束前:最後一個戰鬥單位出手之前

回合結束後:最後一個戰鬥單位出手之後到下一個回合數字彈出之前。

具體名稱以程式為主,因為他們不一定把“最後一個戰鬥單位出手之後到下一個回合數字彈出之前”的這一段稱為回合結束後。

之所以要明確這幾個概念,是因為你需要確定各種效果的觸發、減少回合。

中毒等dot傷害要在哪一步觸發?

一般來說dot傷害在附上去的時候會觸發1次,之後每回合開始前再觸發1次,同時持續回合-1,也可以附上去時不觸發,之後每回合開始前觸發1次,同時持續回合-1,兩者的區別,在於附上去時是否觸發並讓持續回合-1。

這裡的每回合開始前會再額外區分成兩種,一種是在指令下達期之前,一種是在指令下達期之後,兩者的區別是玩家是否需要預估dot傷害的結果,比如dot觸發了死亡,如果是在下達期之前,那麼玩家就可以進行復活操作,如果是在下達期之後,那麼玩家就需要預估該次dot是否會觸發死亡,從而決定是使用復活技能還是回覆技能。

回覆類效果、dot傷害和復活通常都在同一步驟。

注意,這裡的復活不是指技能類復活,而是死亡達到一定回合之後再復活,比如《夢幻西遊》的鬼魂,技能類復活通常都是即時的。

回覆類效果、dot傷害、復活哪一個先觸發?

這個順序其實影響很大,但一般都會先回復再dot,主要考慮到假如dot傷害時戰鬥單位正好死亡的情況,這時候回覆類效果其實就是失效的,當然,反過來其實也可以。

復活通常也放在最後,因為有些狀態不一定會死亡清除,可以避免復活後的各種複雜情況,比如復活後立即因dot再次死亡。

暴擊傷害在哪一步計算?

觸發暴擊時,傷害結果會有額外加成,加成效果一般在0.2~1.5之間,主要根據你想設定的暴擊傷害收益來確定,不過目前大部分回合制都是1.5,而卡牌遊戲大部分都是2。

暴擊傷害有2種計算方式:

由公式計算出的基礎傷害*暴擊傷害加成+各種額外傷害

(由公式計算出的基礎傷害+各種額外傷害)*暴擊傷害加成

也就是要不要把額外的傷害數值計算在內,注意這裡的額外傷害是指具體的數值,不是百分比。

群攻效果如何計算?

遊戲都會有群體技能,而群體技能的傷害計算理論上有兩種型別

1.所有受擊者的傷害演算法完全相同

2.根據受擊者個數,在各個受擊者傷害演算法結束之後再分別乘上係數

目前卡牌類遊戲多采用第一種型別,而回合制通常採用第二種,比如

如何做好回合制遊戲的戰鬥體驗? 戰鬥數值公式設計詳解

具體各傷害係數可以由你自己決定,但有一個原則,傷害係數=1要放在個數=1或2上,不然群攻技能的收益就會降低。

10.確定最終公式

以上幾步完成之後,基本就可以把戰鬥相關的公式資訊提交給程式了。

一級屬性

體質:影響HP和速度

力量:影響MP、物理傷害和速度

魔力:影響MP、法術傷害和速度

耐力:影響物理防禦、法術防禦和速度

敏捷:影響速度

二級屬性

物理攻擊、法術攻擊、物理防禦、法術防禦、速度、MP、HP

三級屬性

命中、閃避、治療暴擊、暴擊、免暴、暴傷、降低暴傷、封印、抗封、抗性、攻擊加成、攻擊減弱

需要解釋各個屬性的作用並限定部分屬性的範圍,這裡不再贅述。

職業

戰士、法師、術士、牧師、刺客

職業附加

如何做好回合制遊戲的戰鬥體驗? 戰鬥數值公式設計詳解

裝備附加不需要提交給程式,那是你自己以後用來挖坑的數值。

屬性計算

HP=體質*16+LV*35+200+職業附加+裝備附加

MP=力量*1+魔力*1+LV*5+200+裝備附加

物理攻擊=力量*1+LV*10+80+職業附加+裝備附加

法術攻擊=魔力*1+LV*10+80+職業附加+裝備附加

物理防禦=耐力*2+LV*5+職業附加+裝備附加

物理防禦=耐力*2+LV*5+職業附加+裝備附加

速度=體質*0.2+力量*0.2+魔力*0.2+耐力*0.2+敏捷*1.5+職業附加+裝備附加

計算步驟

回合開始前,回覆傷害結算——>dot傷害結算——>戰鬥單位復活

技能效果

中毒、復活、封印、反擊、追擊、連擊、降低傷害、增加傷害、扣除目標MP、吸血……

需要解釋各個技能效果

加成效果採用連加,衰減效果採用連乘

戰鬥公式

基礎傷害=(施法者攻擊力-目標防禦力+技能附加傷害)*技能強度*加成效果*衰弱效果

最終傷害=基礎傷害+額外傷害

暴擊傷害=最終傷害*(1+暴擊傷害加成)

治療效果=(施法者攻擊+技能附加傷害)*技能強度*加成效果*衰弱效果

命中率=施法者命中率-目標閃避率,最小不能低於20%

……………………

11.確定技能

確定完戰鬥公式、技能屬性和技能效果之後,接下來就需要為各個職業設計戰鬥技能了。

除了已經確定的技能附加傷害和技能強度外,戰鬥技能通常還需要以下各種引數:學習等級、作用人數、持續回合、命中率、技能速率、MP消耗。

因為是有等級概念的回合制技能,所以各種引數通常會和技能等級、目標等級有關。

技能附加傷害

SLV*X+Y

以SLV=LV來確定XY的值,一般來說,技能附加傷害=(攻擊-防禦)*係數,而根據技能的強弱,係數的值通常在15%-30%之間,假設我們們設定在20%,則

技能附加傷害=SLV*2+20

技能強度

技能強度是一個百分比數值,普通技能都是100%,只有高階技能或部分特色技能會有強弱之分,比如有額外效果的技能,技能強度要小於100%。

當然,如果採用的是群攻技能所有目標傷害相同,那麼群攻技能的技能強度就不能採用100%,一般是50%~70%。

作用人數

SLV/X+Y

群攻技能才需要的引數,除非是全體技能,否則都會有一個上限值,比如最多5人。

初始人數為Y,之後技能每提升X級增加1人

XY的值比較好定,而且可以做出不同的特色,比如

SLV/15+1:初始人數少,但隨著技能等級提升會快速增加人數

SLV/60+3:初始人數多,但人數增加很慢

持續回合

(SLV–ELV+A)/B+SLV/C+D

ELV為目標人物等級

初始回合為D,之後技能每提升C級增加1回合,技能等級每大於目標(B-A)級額外再加1回合,當然,有些技能只需要其中某一項就可以,比如只需要D,也就是固定回合。

持續回合需要設定上下限。

ABCD的值由你自己設定就可以,但通常會有以下幾個思路:

1.增益效果持續回合比減益的多1回合

2.平衡等級下,作用人數多的持續回合少

3.封印類效果持續回合比一般減益的少1回合

4.召喚物持續回合比一般增益的多1-3回合

命中率

大部分技能都是100%,部分特色技能會有變化,比如《夢想世界》中有兩個技能,一個高攻低命中,一個低攻超高命中。

成功率

(SLV–ELV)*A+SLV*B+C

主要是指附加減益效果或封印效果的命中率.

初始成功率為C,之後技能每提升1級增加B成功率,技能等級每大於目標1級,成功率額外加。

成功率一般也需要設定上下限,通常是10%~100%。

初始成功率不能過低,一般都不小於50%。

技能速率

要說技能速率,首先要明白一個概念:亂敏

所謂亂敏,是指將每一個戰鬥單位的速度*係數,然後重新排列出手順序,這個係數通常是90%~110%,也可以擴大或縮小範圍,但不能太大或太小。

亂敏有兩種計算方式,一種是進入戰鬥時計算一次,之後整場戰鬥的速度都是如此,另一種是每回合計算一次,主要是有速度增益減益狀態的存在,但這樣子效率會比較低。

技能的速率會對亂敏值進行修正,也就是說,每回合一定會重新排列出手順序,通常

最終速度=亂敏速度*技能速率

技能速率一般為100%,方便玩家控制,而針對部分特色技能,可以讓速率進行增減,比如高速技能或低速技能。

至此,一個回合制遊戲的戰鬥數值框架基本就已經設計完成,但是,並不是說這就是最終結果,還需要細調和實際操作才能逐步完善。

以上就是設計回合制遊戲戰鬥數值的基本步驟,如果你有興趣,不妨自己手動設計一次?

作者:燦洲

2019.09.19

相關文章