這裡的AI不是指練功的時你的寵物的AI
而是野外戰鬥、任務戰鬥NPC的AI

以下是程式碼的部分

#define B_AI_NORMAL_ATTACKOPTION "at" //普通攻擊設定
#define B_AI_NORMAL_GUARDOPTION "gu" //防禦設定
#define B_AI_NORMAL_MAGICOPTION "ma" //魔法設定
#define B_AI_NORMAL_ESCAPEOPTION "es" //逃脫設定
#define B_AI_NORMAL_WAZAOPTION "wa" //使用技能設定
#ifdef _ENEMY_ATTACK_AI
  #define B_AI_NORMAL_RANDAOPTION "rn" //隨機設定
  #define B_AI_NORMAL_RANDOMOPTIONNUM 1 //rn 可以設定的參數有1個
#endif

#define B_AI_NORMAL_ATTACKSUBOPTIONNUM 3 //at 可以設定的參數有3個
#define B_AI_NORMAL_GUARDSUBOPTIONNUM 1 //gu 可以設定的參數有1個
#define B_AI_NORMAL_MAGICSUBOPTIONNUM 1 // ma 可以設定的參數有1個
#define B_AI_NORMAL_ESCAPESUBOPTIONNUM 1 //es 可以設定的參數有1個
#define B_AI_NORMAL_WAZASUBOPTIONNUM 7 //wa 可以設定的參數有7個


舉個例來說 薩登,at:2;4;4|gu:0|es:0|rn:|wa:3;2;1;2;0;0;0;

at = 普通攻擊設定
at:2;4;4 => at[0] = 2、at[1] = 4、at[2] = 4

//at[0] 設定值可以是0與正整數,當at[0]=0的時候,幾乎就是不進行普通攻擊,而數字越高越容易進行普通攻擊 (若搭配其他參數設定的話)

//at[1]可以用的參數設定是 1~4
#define B_AI_NORMAL_TARGET_ALL 1 //不分玩家人物或者寵物,沒有優先攻擊
#define B_AI_NORMAL_TARGET_PLAYER 2 //先攻擊玩家人物
#define B_AI_NORMAL_TARGET_PET 3 //先攻擊玩家寵物
#ifdef _ENEMY_ATTACK_AI
  #define B_AI_NORMAL_TARGET_LEADER 4 //先攻擊玩家隊長人物
#endif

//at[2]可以用的參數設定是 1~7
//會從at[1]所選出的種類再由以下條件選擇先攻擊誰
#define B_AI_NORMAL_SELECT_RANDOM 1 //隨機攻擊一個
#define B_AI_NORMAL_SELECT_HP_MAX 2 //先攻擊血最多的
#define B_AI_NORMAL_SELECT_HP_MIN 3 //先攻擊血最少的
#ifdef _ENEMY_ATTACK_AI
  #define B_AI_NORMAL_SELECT_STR_MAX 4 //先攻擊力量最高的
  #define B_AI_NORMAL_SELECT_DEX_MAX 5 //先攻擊敏捷最高的
  #define B_AI_NORMAL_SELECT_DEX_MIN 6 //先攻擊敏捷最低的
  #define B_AI_NORMAL_SELECT_ATT_SUBDUE 7 //先攻擊有利的屬性
#endif

gu = 

 

ma = 

 

es = 

 

wa = 

 

rn = 隨機的設定

rn 可以設定1個參數,共0、1兩種,不設定的話預設是1
當at[2]設定的對象都沒了,攻擊對象要怎麼隨機
 

arrow
arrow

    GM-99 發表在 痞客邦 留言(0) 人氣()