![在乘法體系下設(shè)計屬性成長及職業(yè)相克的一種_第1頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/16/88d93d3d-6066-4106-835a-c22cb5a0e064/88d93d3d-6066-4106-835a-c22cb5a0e0641.gif)
![在乘法體系下設(shè)計屬性成長及職業(yè)相克的一種_第2頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/16/88d93d3d-6066-4106-835a-c22cb5a0e064/88d93d3d-6066-4106-835a-c22cb5a0e0642.gif)
![在乘法體系下設(shè)計屬性成長及職業(yè)相克的一種_第3頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/16/88d93d3d-6066-4106-835a-c22cb5a0e064/88d93d3d-6066-4106-835a-c22cb5a0e0643.gif)
![在乘法體系下設(shè)計屬性成長及職業(yè)相克的一種_第4頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/16/88d93d3d-6066-4106-835a-c22cb5a0e064/88d93d3d-6066-4106-835a-c22cb5a0e0644.gif)
![在乘法體系下設(shè)計屬性成長及職業(yè)相克的一種_第5頁](http://file1.renrendoc.com/fileroot_temp2/2020-10/16/88d93d3d-6066-4106-835a-c22cb5a0e064/88d93d3d-6066-4106-835a-c22cb5a0e0645.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、在乘法體系下設(shè)計屬性成長及職業(yè)相克的一種思路 這里,即將討論的是一個(一類)游戲?qū)傩缘仍O(shè)計的點滴思路。由于筆者的癖好,較多使用數(shù)學(xué)語言。 一、基本屬性及攻防公式 人物屬性及對應(yīng)表達(dá): 基礎(chǔ)攻防公式: = (1 ) (1 + ) (1 )實際傷害顯示:將如上的傷害值進(jìn)行正態(tài)浮動處理,浮動區(qū)間為 (1 , 1 + ) 其中: 浮動區(qū)間半徑 =基礎(chǔ)傷害值二、戰(zhàn)力表達(dá)及屬性成長規(guī)律 攻防屬性向量化的理由及結(jié)果。將攻防屬性向量化的主要意圖是為了方便設(shè)計職業(yè)相克, 從而增加游戲復(fù)雜度及可玩性。假設(shè)攻防向量都有個分量(也即攻防種類)。 由如上的設(shè)定,通過簡單的計算,可以得到對于人物 1 和人物 2,如果兩者
2、存在對戰(zhàn)平衡,那么有如下的等式成立: (1)(2) (1 (1) (1 + (2) (2) (1 (1)=1(2)= (1) (1 (2) (1 + (1) (1) (1 (2)=1然而這和理想中的平衡形式相差較遠(yuǎn),原因是由于攻防屬性向量化概念的引入,導(dǎo)致如上的等式無法將雙方的屬性分離到等式的兩端,從而也就無法得到一個“美妙”的平衡表達(dá)以及表征人物戰(zhàn)斗力()的式子。 無法得到絕對平衡表達(dá)實際上是“職業(yè)相克”的必然結(jié)果,而為了得到戰(zhàn)斗力的一個近似、合理的表達(dá),可以通過設(shè)定一個假想中的標(biāo)準(zhǔn)人物來達(dá)到。該標(biāo)準(zhǔn)人物和任意由其衍生出的特定人物(比如人物 1 和人物 2)都滿足對戰(zhàn)平衡條件,另外,其攻防向
3、量的所有分量都分別相同,即: = = , = = , 給出特征人物和衍生特定人物(人物 1)的對戰(zhàn)平衡等式: = (1 )(1 + ) ( 1 )(1 )(1 + )(1 )=1 =11 / 15屬性名稱 英文 簡寫 數(shù)據(jù)類型 全屬性點 生命 h整型標(biāo)量 攻擊 整型向量 防御 浮點向量 破甲 浮點標(biāo)量 追蹤 浮點標(biāo)量 逃逸 浮點標(biāo)量 從而:(1 + )( )(1 + ) (1 + )=1 =(1 )(1 )(1 )(1 ) (1 )(1 )=1在和標(biāo)準(zhǔn)人物的對戰(zhàn)平衡中,特定人物攻防屬性的向量化特征被削弱了,代之以標(biāo)量特征較強的算術(shù)平均值。 觀察標(biāo)準(zhǔn)人物戰(zhàn)力表達(dá): (1 + ) = (1 )(1
4、 )從理論上來說,有無數(shù)種(, , , , , )的組合可以保持恒定不變,即從一個值, 可以衍生出各種屬性特征偏重不同的標(biāo)準(zhǔn)人物,且其中任意兩個都滿足對戰(zhàn)平衡條件,這樣似乎是得到了一個理論上的“絕對平衡模型”,但其所導(dǎo)致的“天下大同”的局面對游戲可玩度的提高有弊無利,而且也不能滿足“職業(yè)相克”的設(shè)計初衷,故應(yīng)盡可能避免。 沿著攻防屬性向量化的思路繼續(xù)走下去。在確定一個標(biāo)準(zhǔn)人物之后,令由其衍生出的特定人物的屬性滿足如下設(shè)定: = = = = = = 進(jìn)一步微調(diào)和的分布,便能夠得到一個從屬于該標(biāo)準(zhǔn)人物的特定人物集合,為了表 述方便,稱標(biāo)準(zhǔn)人物為“父對象”,稱由其衍生出的特定人物為“子對象”。父對象
5、和其任意子對象都滿足對戰(zhàn)平衡條件,但是,任意兩個同父子對象卻不一定滿足對戰(zhàn)平衡條件。 要得到特征各異的子對象集合,首先需要得到對應(yīng)的父對象,從而父對象各屬性的成長規(guī)律必須給出,為此需要事先將各個屬性效果的單位統(tǒng)一(換種說法就是將各屬性進(jìn)行價值量化),這里用“屬性點”作為這個單位,不過既便如此,各個屬性的單位仍然會保留其自 身的權(quán)值。而且各屬性值被表達(dá)成對應(yīng)屬性點的函數(shù),即: 從而:()()1 + ()()(, , , , , ) =1 ()1 ()現(xiàn)在,作如下重要設(shè)定(不唯一,根據(jù)需求各稍有不同): 戰(zhàn)力相對于各屬性點的彈性系數(shù)相同翻譯成數(shù)學(xué)表達(dá)就是: = 化簡一下,即: = 1 + 1 1
6、2 / 15屬性值 全屬性點 凈屬性點 = () = () = () = () = () = ()并設(shè):|=0 = 0|= 0 = 0|=0 = 0|=0 = 0|=0 = 0|=0 = 0解上面的方程組,得到: = 0 () = 0 (1 +)00 = 0 () = 0 (1 +)00 = 1 (1 0) ()= 1 (1 0) (1 +)00 = (1 + 0) ( ) 1 = (1 + 0)(1 +) 100 = 0 ( ) = 0 (1 +)0 0 = 1 (1 0 )()= 1 (1 0) (1 +)00回顧前面的設(shè)定: = 和 = 由于在攻防公式中的位置及其成長效果的線性化,各分量
7、的成長規(guī)律依然滿足上面的形式,即: = () = (1 +),0,000對于,雖然其作用效果與不同,但是作如下變形及設(shè)定后,各分量依然可以滿足上 所以 =0 ,從,0 而: 面的成長規(guī)律。實際上,由于 = ,1 (1 ) ()= 1 (1 )(1 +) =( = 1,2,3 ),0,000即:11 1 =( = 1,2,3 ) 0(1 ) (),0即:(1 ) =( = 1,2,3 ) =1(1 ) ()=1,00顯然,如果令:1 = (1 ) ()( = 1,2,3 ),00則可以滿足上式,而且這種表達(dá)也具有高度的統(tǒng)一性。將這種處理方法附加給,總結(jié)一下,得到子對象各屬性的成長規(guī)律如下:3 /
8、 15 = ( ) = (1 +)0000 = 0 () = 0 (1 +)( = 1,2,3 )00 = 1 (1 ) ()= 1 (1 ) (1 +)( = 1,2,3 )0000 = (1 + ) () 1 = (1 + )(1 +) 10000 = ( ) = (1 + )0000 = 1 (1 )( )= 1 (1 ) (1 +)0000得到各屬性的成長規(guī)律后,應(yīng)該關(guān)心的還有“如何顯示”的問題。迄今為止,已經(jīng)有兩級屬性:屬性點和屬性值。至于具體顯示點還是顯示值,此處不做過多討論,一切依需求而定。 三、對破甲(值)的解釋 在基礎(chǔ)攻防公式中,的效果以1 + 的形式體現(xiàn),即以的比例加深傷害
9、。表面上,似乎用“傷害加深”之類可以望文生義的名稱比較恰當(dāng),但為什么偏偏用“破甲”? 實際上,六個屬性兩兩構(gòu)成一對矛盾(實際上,兩兩對抗的設(shè)計使對戰(zhàn)斗節(jié)奏的控制變得更靈活方便,對此的解釋這里不便展開),而破甲的設(shè)計初衷就是用以達(dá)到削弱防御的效果,并將這一效果展示給玩家。之所以用1 + 的形式表達(dá),是因為其有利于戰(zhàn)力表達(dá)式的順利導(dǎo)出(當(dāng)然,滿足此要求的的表達(dá)形式不唯一)。 由: (1 )(1 + ) = 1 (1 )即在考慮破甲的影響之后,實際的防御效果為: = (1 )這個表達(dá)可以理解為“防御以其自身的初始效果作用于外來的破甲,以減小破甲對防御自身的削弱程度”,從這個意義上來說,將命名為“破甲
10、”再合適不過。 由于防御的均值和各分量的成長規(guī)律相同,因此可以隨便使用一種來計算,這里使用均值。即: 1 (1 ) () =,0001 (1 ) ( =),0而根據(jù)上面的結(jié)果:0 (1 ) = 1 (1 + )(1 ) ( = ),0從而:1 = (1 + )那么防御點的變化量:1 = = 1 (1 + )4 / 15在展示的時候,可以使用 ,也可以直接使用。 四、職業(yè)相克設(shè)計及論證 上面提出了通過攻防屬性向量化實現(xiàn)職業(yè)相克的概念,并推導(dǎo)出各屬性的成長規(guī)律函數(shù)。至此,還需要關(guān)心的是,這種職業(yè)相克現(xiàn)象是否會隨著人物的成長而保持不變?為此,假設(shè) 攻擊方初始攻擊向量為: 0 = 0(1, 2, 3,
11、 , ) , = 1=1第個分量的成長規(guī)律為: , = 0 ( )0防御方初始防御向量為:0= 0(1, 2, 3, , ) , = 1=1第個分量的成長規(guī)律為: 1 , = (1 0) ()0那么,成長后防御方對攻擊方的防御效率為: 0 (0) (1 0) (0) (1 ),1 = 1 , 0 ( ) 0= 1 ( ) + 0 ()( )00很顯然,這是一個關(guān)于( )的一次正相關(guān)函數(shù),從而前面設(shè)計的職業(yè)相克現(xiàn)象不會隨著人物的成長而變化。 以此為必要性鋪墊,下面繼續(xù)細(xì)化設(shè)計過程。 給定攻防種類數(shù),那么職業(yè)數(shù)目也確定為是合理的,然后,通過確定攻防種類的比例以達(dá)到職業(yè)相克的效果。為了討論方便,下面
12、總假定 4。實際上, = 2時,2 種職業(yè)談不上相克; = 3時,不需要特殊細(xì)致的設(shè)定就可以能夠達(dá)到相克效果。 而且,根據(jù)前面的討論,決定子對象攻防種類分配的分別為一個元素和為 1 的維非負(fù) 向量。例如,對于職業(yè) 1,其初始擊力為(1)(由于此處所謂的各職業(yè)都衍生于同一父0對象,故() = () = 0),那么攻擊分配向量為: 00(1) = (1, 2, 3, , ) , = 1=1那么其攻擊向量就是: 0 = () = ( , , , , )()100123同時,為了突出職業(yè)對比,其余 1種職業(yè)的攻擊分配比例行向量全部由(1)輪滾得出, 5 / 15即:0 = () = ( , (), ,
13、 , , , , )00+1121將各 ()寫成一個 的矩陣,并記作,即: (1)(2)(3) ()1= 1 221321121 =3 4同理,對()作相同處理,略有不同的是,這里的每一個()都是列向量,并有: 011212( ) = 31212341 = (1)(2) (3)職業(yè)對職業(yè)的防御效率為: 0 () (1 0()= 0 () ()1 0其中0為初始防御向量各分量之和,為一常數(shù)。從而,職業(yè)對職業(yè)的防御效率完全由 ()決定,此值越大,則說明職業(yè)對職業(yè)的克制效果越明顯。 令: = 則完全體現(xiàn)出各職業(yè)之間的相克信息。 現(xiàn)將各職業(yè)排成一個封閉的環(huán),每個職業(yè)都只克制前一職業(yè),且只被后一職業(yè)克制
14、,與其他不相鄰的任意職業(yè)滿足對戰(zhàn)平衡條件。那么的樣子(元素大小關(guān)系信息)為: () 中 中大 中中 中中小大中小中中小中中大中中中大 =中 中中 小假定已經(jīng)確定了(1),那么也隨之確定,同理如果確定了(1),那么也確定了。而且 可以證明,如果(1)滿足第一列,1的大小關(guān)系,那么()也滿足第列,的大小關(guān)系。 實際上,(1)和()只相差一個初等變換矩陣,即:(1) = ()而通過觀察顯然:, = ,16 / 15下面來確定(1)。由于,1中除第2個和第個元素外,其他元素都相等,從而: ( () () (1) = 0 , 且, (1,3, , 1)()所張成的子空間的直和空間,或者說零空間。 即(1
15、) ,這里為由 () ()的個數(shù)及關(guān)系,其中最大可能的線性無關(guān)組為: 考慮到 () (1) () (3, , 1)從而:() 3() 3設(shè)由(1) ()構(gòu)成的( 3) 矩陣為(1),那么(1)就是如下線性方程組的解: (1) = 或者說(1) (1)的零空間。又由(1)分量之和1,所以(1)進(jìn)一步約束為如下線性方程 組的解: (1) = 1再根據(jù):0 0(1) 1以及第一列,1相關(guān)元素的大小關(guān)系: ,1(2) ,1(1) 0,1(1) ,1(2) 00 0(1) 0(1) (2)0 0(1) 0(1) (2)0 0(1) 13、非必要的等式約束條件: () + (2) 2(1) (1) = 0
16、補充:假如能夠解出此方程組: (1) (1) = 1的一個特解 ,以及其對應(yīng)其次方程組:(1) = (1)的通解,這里用的零空間基向量組成的矩陣 來表達(dá): (1) = ()那么原方程組的通解就是:(1) = + 其中 是自由參數(shù)組成的列向量。實際上,在很多情況下可以確保| 0,即的各個行向量線性無關(guān),從而 的自由參數(shù)個數(shù)進(jìn)一步固定為2,并且后面的實現(xiàn)也建立在這一假設(shè)上。 五、求()的實現(xiàn) 根據(jù)前面的算法,給出動態(tài)調(diào)節(jié)(1)的Matlab實現(xiàn)函數(shù): =主函數(shù)=function DefVec=DefendVector(a,Do)% 根據(jù)攻擊向量 a 和初始防御向量元素和 Do,計算防御向量 % 生
17、成 A A=Crea(a);% 判斷 A 各行是否線性無關(guān) if det(A)=0 | size(A,1)3 DefVec=;else% 計 算 dx 和 do dx,do=Solv(A,Do);% 計算 N 和 B N,B=Subj(A);% 計算三個約束條件的系數(shù)矩陣和對應(yīng)系數(shù)向量 NeqCo=Modify(N*do); NeqCn=Modify(N*dx); BeqCo=Modify(B*do); BeqCn=Modify(B*dx);8 / 15LeqCo=Modify(-N*do); LeqCn=Modify(1-N*dx);% 計算均分判定條件系數(shù)及常數(shù) ax=A(end,:)+A
18、(2,:)-2*A(1,:);JeqCo=Modify(ax*do); JeqCn=Modify(ax*dx);% 繪圖準(zhǔn)備h1=figure; set(h1,visible,off); hold on;OK=0;% 繪制0 的不等式組 for k=1:size(NeqCo,1) LineColor,LineStyle,isOK=CheckLine(NeqCo(k,:),NeqCn(k),1,0); OK=OK+isOK;DrawLine(NeqCo(k,:),NeqCn(k),LineColor,LineStyle);end% 繪制0 的不等式組 for k=1:size(BeqCo,1)
19、LineColor,LineStyle,isOK=CheckLine(BeqCo(k,:),BeqCn(k),0,0); OK=OK+isOK;DrawLine(BeqCo(k,:),BeqCn(k),LineColor,LineStyle);end% 繪制1 的不等式組 for k=1:size(LeqCo,1) LineColor,LineStyle,isOK=CheckLine(LeqCo(k,:),LeqCn(k),0,0); OK=OK+isOK;DrawLine(LeqCo(k,:),LeqCn(k),LineColor,LineStyle);end% 繪制兩種非克制傷害相對克制傷
20、害偏移相同的判定條件線LineColor,LineStyle,isOK=CheckLine(JeqCo,JeqCn,1,1); DrawLine(JeqCo,JeqCn,LineColor,LineStyle);% 若有解,顯示圖像并繼續(xù)計算 hold off;if OKsize(NeqCo,1)+size(BeqCo,1)+size(LeqCo,1) DefVec=;elseset(h1,visible,on);% 手 動 輸 入 兩 個 參 數(shù) , 計 算 DefVec disp() x1=input( 輸入第一個參數(shù) x1 = );x2=input( 輸入第二個參數(shù) x2 = ); De
21、fVecTem=Modify(Do*(dx+do*x1;x2); T=A*(1-Crea(DefVecTem);Rg=T(1,2) T(2,1)/T(1,1)-1;disp(Rg);9 / 15disp()% 循環(huán)選擇 while 1ConCtrl=input( 繼續(xù)選擇?1/0 = ); if ConCtrl=1% 手 動 輸 入 兩 個 參 數(shù) , 計 算 DefVec disp() x1=input( 輸入第一個參數(shù) x1 = );x2=input( 輸入第二個參數(shù) x2 = ); DefVecTem=Modify(Do*(dx+do*x1;x2); T=A*(1-Crea(DefVec
22、Tem);Rg=T(1,2) T(2,1)/T(1,1)-1;disp(Rg); disp()elsebreak;endend DefVec=DefVecTem;endend=主函數(shù)完=其中調(diào)用的各個子函數(shù): =子函數(shù)=function Mat=Crea(Vec)% 由指定向量輪滾成方陣的函數(shù) n=numel(Vec); Mat=zeros(n); for k=1:nMat(k,:)=Vec(n-k+2:n) Vec(1:n-k+1);end=function dx,do=Solv(A)% 根據(jù)攻擊矩陣 A 和初始防御向量元素和 % 計算防御向量 d=dx(特解)+do(通解)。 % 計算 A
23、1 n=size(A,1); if n4A1=; m=0;elseInd=setdiff(1:n),1 2 n); m=numel(Ind); A1=zeros(m,n);for i=1:m10 / 15A1(i,:)=A(1,:)-A(Ind(i),:);endend% 計 算 dx 和 do Equal=A1;ones(1,n);b=zeros(m,1);1; dx=Modify(Equalb); do=Modify(null(Equal);=function N,B=Subj(A,Do)% 根據(jù)攻擊矩陣 A,計算兩個不等式約束矩陣 % 其中 N 為0 的不等式系數(shù)矩陣;B 為0 的不等式
24、系數(shù)矩陣。 n=size(A,1); if n3N= Do*eye(n); B=;elseN= Do*eye(n); B=A(n,:);A(1,:)-A(1,:);A(2,:);end=function R=Modify(M,eps)% 在適當(dāng)?shù)木确秶鷥?nèi)修改矩陣 if nargin2eps=1e-12; end R=zeros(size(M); for i=1:numel(M)if abs(M(i)0 | (v(1)=0 & v(2)=0)LineColor=b;elseLineColor=r;endend% 是否有解 if v(1)=0 & v(2)=0if (canbezero & c=0) | (canbezero & c0) isOK=1;elseisOK=0;endelseisOK=1;end=function DrawLine(v,c,LineColor,LineStyle)% 根據(jù)系數(shù)及常數(shù)繪制直線 % 繪圖區(qū)域 x1=-1:0.0001:1;x2=-1:0.0001:1;% 分情況繪圖 if v(1)=0 & v(2)=0line(-1,1,1 1*(-c/v(2),linestyle,LineStyle,color,LineColor,linewidth,2)endif v(1)=0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆安徽省合肥市蜀山區(qū)琥珀中學(xué)中考生物考試模擬沖刺卷含解析
- 四川省樂山市五通橋區(qū)2025屆中考生物考前最后一卷含解析
- 廣東省汕頭市潮南區(qū)陳店明德學(xué)校2025屆中考二模生物試題含解析
- 黑龍江省哈爾濱道里區(qū)七校聯(lián)考2025屆中考四模生物試題含解析
- 2025年計生協(xié)會工作計劃報告2
- 房屋中介服務(wù)合同模板
- 廣東省深圳市福田區(qū)十校聯(lián)考2025屆中考生物全真模擬試卷含解析
- 小型貨物運輸合同協(xié)議書
- 蘇州住房裝修合同范本
- 以房屋作擔(dān)保的借款合同
- 醫(yī)院消防安全培訓(xùn)課件
- 質(zhì)保管理制度
- 《00541語言學(xué)概論》自考復(fù)習(xí)題庫(含答案)
- 2025年機關(guān)工會個人工作計劃
- 2024年全國卷新課標(biāo)1高考英語試題及答案
- 華為經(jīng)營管理-華為激勵機制(6版)
- 江蘇省南京市、鹽城市2023-2024學(xué)年高三上學(xué)期期末調(diào)研測試+英語+ 含答案
- 小學(xué) 三年級 科學(xué)《觀測風(fēng)》教學(xué)設(shè)計
- JJF1664-2017溫度顯示儀校準(zhǔn)規(guī)范-(高清現(xiàn)行)
- 第二講共振理論、有機酸堿理論
- 高考英語聽力必備場景詞匯精選(必看)
評論
0/150
提交評論