Monday, 31 August 2009

Ch. 2.3 RPG的數值系統

分析: 假設當以下等式成立時,雙方實力均等: (ODEF: 對方防禦能力,opponent’s defends SPD = 速度,speed) c(ATK-kODEF) * DEF * f(SPD) 當中c和k是正實數,分子是攻擊效率,分母為防禦效率。 (註:c和k不一定大於一。) f(x)為一函數,即角色速度與對方速度比為x時角色成功避開對方攻擊的比率函數。此函數的表現為:當x大於某一個數c時,f(x)=1,即一定能閃避。而x小過該數時從0升到1。設該數為y。當0 =< x < y時,f’(x)>0,即函數會只加不減。大部分時間f(x)都會以[(x/k)^n]或類似的形式出現,甚至類似n[sin^-1(x/k)]的形式。目的是使兩者不太懸殊時閃避率都不會特別高。當SPD>kOSPD時f(x)為1。 當 c(ATK-kODEF)*DEF *f(SPD/OSPD) = c(OATK-kDEF)*ODEF*f(OSPD/SPD) 時c可以消掉。由於我們設雙方實力相若,所以kOSPD>SPD。另一方面,我們設f(x) = (x/k)^n,有f(x) = x^2n f(1/x)。 相約得 DEF(ATK-kODEF) = ODEF(OATK-kDEF)(OSPD/SPD)^2n 相除(DEF*ODEF)得 (ATK/ODEF – k) = (OATK/DEF – k)(OSPD/SPD)^2n 這條看似沒意義的式子其實說明了其運作原理,影響其攻擊效率的是攻防的比值而不是差;只要比值超過某一個數(k),攻擊就開始有效率,而攻擊效率低的則要以閃避彌補,雖然戰鬥時間會拖長了,但在實力上沒分別。 以上是「沒有職業」是的情況。 當職業出現時,屬性值會變得更為複雜。加入不同的延伸屬性,但要保持實力均等是很困難的。我們首先知道不同職業在「互毆」時會有相剋的關係,然而,對於共同的「無屬性」敵人其攻防效率均等。 對於RPG遊戲來說,延伸屬性只會影響五方面,也就就是最基本的「攻、防、速、血、氣」。其加乘方法,按字面,也不外乎加和乘吧!加的情況,基本上可以不理,因為永遠有一個常數的話,隨著級數上升,影響會趨向零。隨著時間而變化的「加」,也可歸進乘。 至於乘的話,亦分作兩類,第一是乘上一個常數,第二就是改變增長(多項式)的次數。一個延伸屬性也可能影響多於一個基本屬性,而其影響能力的比例是不變的。例如在屬性A上增加一點,會令HP加五,令MP加五。而在屬性B加一點,可能只會令HP加十,而不會加二十的。 另外一方面,延伸屬性在不同基本屬性可能也有不同比重。例如一個「屬性點」能使HP增加5,但只能令攻擊加一,因為攻擊和HP的「比重」是5比1。 如果「屬性點」是可以持續供應的話(例如每次升級),屬性的加乘就是「乘」了。在這個情況下,同級玩家(不計裝備)的能力符合: aHP+bMP+cATK+dDEF+eSPD相等,當中a~e是基本屬性的比重。 理論上,「職業」同樣可當作一些額外的配點。要使其增長一樣而總能力一樣,唯一方法就是玩家的aq+br+cs+dt+eu一樣,當中q~u是延伸屬性增加的量。

No comments:

Post a comment