LBカウンタと護衛とか一切関係ありませんが何か?
ペットのAIを作ってみました。
マビノギです。
主人orペットが警戒されるとアタックしてからLBカウンターを開始する仕組みなんですが・・・暴発しやすいなこれw
アタックするべきところで固まってたりスマッシュしちゃったり・・・面倒です。
なんかこうもうちょっと簡単に作れる仕組みとか無いもんかねw
まあいいや、赤字になりながら作った試作AI「攻めたりしない。」。適当に公開してみます。
AI得意な方見てたら修正お願いします><
+
|
攻めたりしない。 |
<rules>
<rule name="主人が認識される アタック">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="master_targeted" targeting_type="alert"/>
</rule>
<rule name="主人が警戒される スマッシュ">
<conditions>
<condition name="skill_preparable" pet_skill="smash"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="prepare_skill" pet_skill="smash" try_cnt="0" timeout="5000"/>
<cmd name="process_skill" target="enemy" timeout="5000"/>
</sequence>
</pattern>
<event name="master_targeted" targeting_type="attack"/>
</rule>
<rule name="ペットが認識される アタック">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="targeted" targeting_type="alert"/>
</rule>
<rule name="ペットが警戒される スマッシュ">
<conditions>
<condition name="skill_preparable" pet_skill="smash"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="prepare_skill" pet_skill="smash" try_cnt="0" timeout="5000"/>
<cmd name="process_skill" target="enemy" timeout="5000"/>
</sequence>
</pattern>
<event name="targeted" targeting_type="attack"/>
</rule>
<rule name="アタック→追撃アタック">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="attack" pet_attackable_skill="basic" down="false"/>
</rule>
<rule name="アタック後、カウンター">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="counter" try_cnt="0" timeout="5000"/>
<cmd name="process_skill" target="enemy" timeout="0"/>
</sequence>
</pattern>
<event name="attack" pet_attackable_skill="basic" down="true"/>
</rule>
<rule name="カウンター後、LB">
<conditions>
<condition name="skill_preparable" pet_skill="lightningbolt"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="stackmagic_attack" stack_magic="lightningbolt" charge="1" timeout="5000"/>
</sequence>
</pattern>
<event name="attack" pet_attackable_skill="counter" down="true"/>
</rule>
<rule name="LB後、カウンター">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="counter" try_cnt="0" timeout="5000"/>
<cmd name="process_skill" target="enemy" timeout="0"/>
</sequence>
</pattern>
<event name="attack" pet_attackable_skill="lightningbolt" down="false"/>
</rule>
<rule name="LBで倒した 戦闘終了">
<conditions/>
<pattern>
<param_decl/>
<sequence/>
</pattern>
<event name="attack" pet_attackable_skill="lightningbolt" down="true"/>
</rule>
<rule name="アタック後 ダウン 暴発防止">
<conditions/>
<pattern>
<param_decl/>
<sequence/>
</pattern>
<event name="attack" pet_attackable_skill="basic" down="true"/>
</rule>
<rule name="スマッシュ後 ダウン 暴発防止">
<conditions/>
<pattern>
<param_decl/>
<sequence/>
</pattern>
<event name="attack" pet_attackable_skill="smash" down="true"/>
</rule>
<rule name="タゲ中 相手が吹っ飛んだらカウンター">
<conditions>
<condition name="target_state" state="blowaway"/>
<condition name="target_state" state="shoved"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="counter" try_cnt="1" timeout="5000"/>
<cmd name="process_skill" target="enemy" timeout="0"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="タゲ中 カウンターの為待機">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="wait" min="1000" max="1000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="被ダメージ ダウンした→カウンター">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="prepare_skill" pet_skill="counter" try_cnt="0" timeout="5000"/>
<cmd name="process_skill" target="enemy" timeout="0"/>
</sequence>
</pattern>
<event name="attacked" master_skill="all" down="true"/>
</rule>
<rule name="被ダメージ ダウンしなかった→アタックカウンター">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="5000"/>
<cmd name="prepare_skill" pet_skill="counter" try_cnt="0" timeout="5000"/>
<cmd name="process_skill" target="enemy" timeout="0"/>
</sequence>
</pattern>
<event name="attack" pet_attackable_skill="all" down="false"/>
</rule>
<rule name="対遠距離攻撃用LB&アタック">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="stack_skill" stack_magic="lightningbolt" charge="1"/>
<cmd name="stackmagic_attack" stack_magic="lightningbolt" charge="1" timeout="1000"/>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="aimed"/>
</rule>
<rule name="対魔法攻撃用アタック">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="target_magic_prepare"/>
</rule>
<rule name="ヒール">
<conditions>
<condition name="master_damaged_life_greater" life="40"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="healing" try_cnt="0" timeout="5000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
</sequence>
</pattern>
<event name="seek_target"/>
</rule>
</rules>
|
これコメ欄に入らんかw
改良版は↓にお願いします
しかし護衛用のはずのにゃんこ(前世の前世の・・・えっと?)が全然活躍しないんだがどうしようw
護衛は接近の方が良かったかな?
お豆腐かぁ・・・