版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、在乘法體系下設(shè)計(jì)屬性成長及職業(yè)相克的一種思路 這里,即將討論的是一個(gè)(一類)游戲?qū)傩缘仍O(shè)計(jì)的點(diǎn)滴思路。由于筆者的癖好,較多使用數(shù)學(xué)語言。 一、基本屬性及攻防公式 人物屬性及對(duì)應(yīng)表達(dá): 基礎(chǔ)攻防公式: = (1 ) (1 + ) (1 )實(shí)際傷害顯示:將如上的傷害值進(jìn)行正態(tài)浮動(dòng)處理,浮動(dòng)區(qū)間為 (1 , 1 + ) 其中: 浮動(dòng)區(qū)間半徑 =基礎(chǔ)傷害值二、戰(zhàn)力表達(dá)及屬性成長規(guī)律 攻防屬性向量化的理由及結(jié)果。將攻防屬性向量化的主要意圖是為了方便設(shè)計(jì)職業(yè)相克, 從而增加游戲復(fù)雜度及可玩性。假設(shè)攻防向量都有個(gè)分量(也即攻防種類)。 由如上的設(shè)定,通過簡(jiǎn)單的計(jì)算,可以得到對(duì)于人物 1 和人物 2,如果兩者
2、存在對(duì)戰(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)致如上的等式無法將雙方的屬性分離到等式的兩端,從而也就無法得到一個(gè)“美妙”的平衡表達(dá)以及表征人物戰(zhàn)斗力()的式子。 無法得到絕對(duì)平衡表達(dá)實(shí)際上是“職業(yè)相克”的必然結(jié)果,而為了得到戰(zhàn)斗力的一個(gè)近似、合理的表達(dá),可以通過設(shè)定一個(gè)假想中的標(biāo)準(zhǔn)人物來達(dá)到。該標(biāo)準(zhǔn)人物和任意由其衍生出的特定人物(比如人物 1 和人物 2)都滿足對(duì)戰(zhàn)平衡條件,另外,其攻防向
3、量的所有分量都分別相同,即: = = , = = , 給出特征人物和衍生特定人物(人物 1)的對(duì)戰(zhàn)平衡等式: = (1 )(1 + ) ( 1 )(1 )(1 + )(1 )=1 =11 / 15屬性名稱 英文 簡(jiǎn)寫 數(shù)據(jù)類型 全屬性點(diǎn) 生命 h整型標(biāo)量 攻擊 整型向量 防御 浮點(diǎn)向量 破甲 浮點(diǎn)標(biāo)量 追蹤 浮點(diǎn)標(biāo)量 逃逸 浮點(diǎn)標(biāo)量 從而:(1 + )( )(1 + ) (1 + )=1 =(1 )(1 )(1 )(1 ) (1 )(1 )=1在和標(biāo)準(zhǔn)人物的對(duì)戰(zhàn)平衡中,特定人物攻防屬性的向量化特征被削弱了,代之以標(biāo)量特征較強(qiáng)的算術(shù)平均值。 觀察標(biāo)準(zhǔn)人物戰(zhàn)力表達(dá): (1 + ) = (1 )(1
4、 )從理論上來說,有無數(shù)種(, , , , , )的組合可以保持恒定不變,即從一個(gè)值, 可以衍生出各種屬性特征偏重不同的標(biāo)準(zhǔn)人物,且其中任意兩個(gè)都滿足對(duì)戰(zhàn)平衡條件,這樣似乎是得到了一個(gè)理論上的“絕對(duì)平衡模型”,但其所導(dǎo)致的“天下大同”的局面對(duì)游戲可玩度的提高有弊無利,而且也不能滿足“職業(yè)相克”的設(shè)計(jì)初衷,故應(yīng)盡可能避免。 沿著攻防屬性向量化的思路繼續(xù)走下去。在確定一個(gè)標(biāo)準(zhǔn)人物之后,令由其衍生出的特定人物的屬性滿足如下設(shè)定: = = = = = = 進(jìn)一步微調(diào)和的分布,便能夠得到一個(gè)從屬于該標(biāo)準(zhǔn)人物的特定人物集合,為了表 述方便,稱標(biāo)準(zhǔn)人物為“父對(duì)象”,稱由其衍生出的特定人物為“子對(duì)象”。父對(duì)象
5、和其任意子對(duì)象都滿足對(duì)戰(zhàn)平衡條件,但是,任意兩個(gè)同父子對(duì)象卻不一定滿足對(duì)戰(zhàn)平衡條件。 要得到特征各異的子對(duì)象集合,首先需要得到對(duì)應(yīng)的父對(duì)象,從而父對(duì)象各屬性的成長規(guī)律必須給出,為此需要事先將各個(gè)屬性效果的單位統(tǒng)一(換種說法就是將各屬性進(jìn)行價(jià)值量化),這里用“屬性點(diǎn)”作為這個(gè)單位,不過既便如此,各個(gè)屬性的單位仍然會(huì)保留其自 身的權(quán)值。而且各屬性值被表達(dá)成對(duì)應(yīng)屬性點(diǎn)的函數(shù),即: 從而:()()1 + ()()(, , , , , ) =1 ()1 ()現(xiàn)在,作如下重要設(shè)定(不唯一,根據(jù)需求各稍有不同): 戰(zhàn)力相對(duì)于各屬性點(diǎn)的彈性系數(shù)相同翻譯成數(shù)學(xué)表達(dá)就是: = 化簡(jiǎn)一下,即: = 1 + 1 1
6、2 / 15屬性值 全屬性點(diǎn) 凈屬性點(diǎn) = () = () = () = () = () = ()并設(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對(duì)于,雖然其作用效果與不同,但是作如下變形及設(shè)定后,各分量依然可以滿足上 所以 =0 ,從,0 而: 面的成長規(guī)律。實(shí)際上,由于 = ,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é)一下,得到子對(duì)象各屬性的成長規(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)有兩級(jí)屬性:屬性點(diǎn)和屬性值。至于具體顯示點(diǎn)還是顯示值,此處不做過多討論,一切依需求而定。 三、對(duì)破甲(值)的解釋 在基礎(chǔ)攻防公式中,的效果以1 + 的形式體現(xiàn),即以的比例加深傷害
9、。表面上,似乎用“傷害加深”之類可以望文生義的名稱比較恰當(dāng),但為什么偏偏用“破甲”? 實(shí)際上,六個(gè)屬性兩兩構(gòu)成一對(duì)矛盾(實(shí)際上,兩兩對(duì)抗的設(shè)計(jì)使對(duì)戰(zhàn)斗節(jié)奏的控制變得更靈活方便,對(duì)此的解釋這里不便展開),而破甲的設(shè)計(jì)初衷就是用以達(dá)到削弱防御的效果,并將這一效果展示給玩家。之所以用1 + 的形式表達(dá),是因?yàn)槠溆欣趹?zhàn)力表達(dá)式的順利導(dǎo)出(當(dāng)然,滿足此要求的的表達(dá)形式不唯一)。 由: (1 )(1 + ) = 1 (1 )即在考慮破甲的影響之后,實(shí)際的防御效果為: = (1 )這個(gè)表達(dá)可以理解為“防御以其自身的初始效果作用于外來的破甲,以減小破甲對(duì)防御自身的削弱程度”,從這個(gè)意義上來說,將命名為“破甲
10、”再合適不過。 由于防御的均值和各分量的成長規(guī)律相同,因此可以隨便使用一種來計(jì)算,這里使用均值。即: 1 (1 ) () =,0001 (1 ) ( =),0而根據(jù)上面的結(jié)果:0 (1 ) = 1 (1 + )(1 ) ( = ),0從而:1 = (1 + )那么防御點(diǎn)的變化量:1 = = 1 (1 + )4 / 15在展示的時(shí)候,可以使用 ,也可以直接使用。 四、職業(yè)相克設(shè)計(jì)及論證 上面提出了通過攻防屬性向量化實(shí)現(xiàn)職業(yè)相克的概念,并推導(dǎo)出各屬性的成長規(guī)律函數(shù)。至此,還需要關(guān)心的是,這種職業(yè)相克現(xiàn)象是否會(huì)隨著人物的成長而保持不變?為此,假設(shè) 攻擊方初始攻擊向量為: 0 = 0(1, 2, 3,
11、 , ) , = 1=1第個(gè)分量的成長規(guī)律為: , = 0 ( )0防御方初始防御向量為:0= 0(1, 2, 3, , ) , = 1=1第個(gè)分量的成長規(guī)律為: 1 , = (1 0) ()0那么,成長后防御方對(duì)攻擊方的防御效率為: 0 (0) (1 0) (0) (1 ),1 = 1 , 0 ( ) 0= 1 ( ) + 0 ()( )00很顯然,這是一個(gè)關(guān)于( )的一次正相關(guān)函數(shù),從而前面設(shè)計(jì)的職業(yè)相克現(xiàn)象不會(huì)隨著人物的成長而變化。 以此為必要性鋪墊,下面繼續(xù)細(xì)化設(shè)計(jì)過程。 給定攻防種類數(shù),那么職業(yè)數(shù)目也確定為是合理的,然后,通過確定攻防種類的比例以達(dá)到職業(yè)相克的效果。為了討論方便,下面
12、總假定 4。實(shí)際上, = 2時(shí),2 種職業(yè)談不上相克; = 3時(shí),不需要特殊細(xì)致的設(shè)定就可以能夠達(dá)到相克效果。 而且,根據(jù)前面的討論,決定子對(duì)象攻防種類分配的分別為一個(gè)元素和為 1 的維非負(fù) 向量。例如,對(duì)于職業(yè) 1,其初始擊力為(1)(由于此處所謂的各職業(yè)都衍生于同一父0對(duì)象,故() = () = 0),那么攻擊分配向量為: 00(1) = (1, 2, 3, , ) , = 1=1那么其攻擊向量就是: 0 = () = ( , , , , )()100123同時(shí),為了突出職業(yè)對(duì)比,其余 1種職業(yè)的攻擊分配比例行向量全部由(1)輪滾得出, 5 / 15即:0 = () = ( , (), ,
13、 , , , , )00+1121將各 ()寫成一個(gè) 的矩陣,并記作,即: (1)(2)(3) ()1= 1 221321121 =3 4同理,對(duì)()作相同處理,略有不同的是,這里的每一個(gè)()都是列向量,并有: 011212( ) = 31212341 = (1)(2) (3)職業(yè)對(duì)職業(yè)的防御效率為: 0 () (1 0()= 0 () ()1 0其中0為初始防御向量各分量之和,為一常數(shù)。從而,職業(yè)對(duì)職業(yè)的防御效率完全由 ()決定,此值越大,則說明職業(yè)對(duì)職業(yè)的克制效果越明顯。 令: = 則完全體現(xiàn)出各職業(yè)之間的相克信息。 現(xiàn)將各職業(yè)排成一個(gè)封閉的環(huán),每個(gè)職業(yè)都只克制前一職業(yè),且只被后一職業(yè)克制
14、,與其他不相鄰的任意職業(yè)滿足對(duì)戰(zhàn)平衡條件。那么的樣子(元素大小關(guān)系信息)為: () 中 中大 中中 中中小大中小中中小中中大中中中大 =中 中中 小假定已經(jīng)確定了(1),那么也隨之確定,同理如果確定了(1),那么也確定了。而且 可以證明,如果(1)滿足第一列,1的大小關(guān)系,那么()也滿足第列,的大小關(guān)系。 實(shí)際上,(1)和()只相差一個(gè)初等變換矩陣,即:(1) = ()而通過觀察顯然:, = ,16 / 15下面來確定(1)。由于,1中除第2個(gè)和第個(gè)元素外,其他元素都相等,從而: ( () () (1) = 0 , 且, (1,3, , 1)()所張成的子空間的直和空間,或者說零空間。 即(1
15、) ,這里為由 () ()的個(gè)數(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、補(bǔ)充:假如能夠解出此方程組: (1) (1) = 1的一個(gè)特解 ,以及其對(duì)應(yīng)其次方程組:(1) = (1)的通解,這里用的零空間基向量組成的矩陣 來表達(dá): (1) = ()那么原方程組的通解就是:(1) = + 其中 是自由參數(shù)組成的列向量。實(shí)際上,在很多情況下可以確保| 0,即的各個(gè)行向量線性無關(guān),從而 的自由參數(shù)個(gè)數(shù)進(jìn)一步固定為2,并且后面的實(shí)現(xiàn)也建立在這一假設(shè)上。 五、求()的實(shí)現(xiàn) 根據(jù)前面的算法,給出動(dòng)態(tài)調(diào)節(jié)(1)的Matlab實(shí)現(xiàn)函數(shù): =主函數(shù)=function DefVec=DefendVector(a,Do)% 根據(jù)攻擊向量 a 和初始防御向量元素和 Do,計(jì)算防御向量 % 生
17、成 A A=Crea(a);% 判斷 A 各行是否線性無關(guān) if det(A)=0 | size(A,1)3 DefVec=;else% 計(jì) 算 dx 和 do dx,do=Solv(A,Do);% 計(jì)算 N 和 B N,B=Subj(A);% 計(jì)算三個(gè)約束條件的系數(shù)矩陣和對(duì)應(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);% 計(jì)算均分判定條件系數(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% 繪制兩種非克制傷害相對(duì)克制傷
20、害偏移相同的判定條件線LineColor,LineStyle,isOK=CheckLine(JeqCo,JeqCn,1,1); DrawLine(JeqCo,JeqCn,LineColor,LineStyle);% 若有解,顯示圖像并繼續(xù)計(jì)算 hold off;if OKsize(NeqCo,1)+size(BeqCo,1)+size(LeqCo,1) DefVec=;elseset(h1,visible,on);% 手 動(dòng) 輸 入 兩 個(gè) 參 數(shù) , 計(jì) 算 DefVec disp() x1=input( 輸入第一個(gè)參數(shù) x1 = );x2=input( 輸入第二個(gè)參數(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% 手 動(dòng) 輸 入 兩 個(gè) 參 數(shù) , 計(jì) 算 DefVec disp() x1=input( 輸入第一個(gè)參數(shù) x1 = );x2=input( 輸入第二個(gè)參數(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)用的各個(gè)子函數(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 和初始防御向量元素和 % 計(jì)算防御向量 d=dx(特解)+do(通解)。 % 計(jì)算 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% 計(jì) 算 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,計(jì)算兩個(gè)不等式約束矩陣 % 其中 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等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度年福建省高校教師資格證之高等教育心理學(xué)真題練習(xí)試卷B卷附答案
- 2024年交通運(yùn)輸設(shè)備項(xiàng)目資金需求報(bào)告代可行性研究報(bào)告
- 一年級(jí)數(shù)學(xué)計(jì)算題專項(xiàng)練習(xí)1000題匯編
- 2024年個(gè)人房產(chǎn)抵押貸款協(xié)議范本
- 文書模板-《勞務(wù)用工合同》
- 2024年度安置性質(zhì)房產(chǎn)購買協(xié)議典范
- 2024老年專家返聘協(xié)議詳細(xì)條款
- 2024屆安徽省皖南八校聯(lián)盟高三4月(二診)調(diào)研測(cè)試卷(康德版)數(shù)學(xué)試題
- 2024年度建筑資產(chǎn)轉(zhuǎn)讓協(xié)議樣例
- 2024精簡(jiǎn)型牛肉購銷協(xié)議文本
- 20以內(nèi)進(jìn)位加法100題(精心整理6套-可打印A4)
- 陜西師范大學(xué)學(xué)位英語試題
- 中小學(xué)反恐風(fēng)險(xiǎn)評(píng)估報(bào)告
- 品牌營銷策略和品牌策略
- 視力矯正商業(yè)計(jì)劃書
- 醫(yī)學(xué)課件:臨床決策分析
- 幼兒園優(yōu)質(zhì)公開課:中班音樂韻律《打噴嚏的小老鼠》課件
- 質(zhì)量管理體系品質(zhì)保證體系圖
- 人教版(新插圖)三年級(jí)上冊(cè)數(shù)學(xué) 第9課時(shí) 用乘除兩步計(jì)算 解決-歸總問題 教學(xué)課件
- 《現(xiàn)代漢語》考試復(fù)習(xí)題庫及答案
- 13J104《蒸壓加氣混凝土砌塊、板材構(gòu)造》
評(píng)論
0/150
提交評(píng)論