PLEASE DO NOT EDIT THIS PAGE
- Please use the Discussion page to talk with me instead. Thank you!
- I am using this page as a sandbox and data storage arena.
Who I Am
Launa of Tarlach server, currently affiliated with Pinnacle Guild and normally on Channel 5. I have eight pets--Laredo, a male Labrador Retriever dog; Isi, a female Siamese cat; Rho, a male Dalmatian dog; Adella, a female Shire horse; Duardo, a male Shire horse; Aevanushia, a female Unicorn; Zulaena, a female Holiday Bear; and Arber, a male Herb Pig. I can normally be found in or around Tir Chonaill, doing dungeon runs in Ciar (Beginner, Basic, etc), or sitting AFK somewhere. I am becoming known for randomly healing people around me.
Personally Transcribed / Edited Music Scores
For those of you that are curious the coding for the Nexon composer works like this: ">" raises the tone an octave, "<" lowers the tone an octave, "&" ties one note to another, "-" lowers the tone half a note (causing a flat [b] note), "+" apparently makes a slur from one note to a different note, and to make triplets, use "x32+x32.+x32" where x is the desired note. And, to compose in any key, you must transpose your music to a flat key, such as Time's Scar is in F#, but working with flats, F# becomes "G-". An eighth F# note would be written "G-8". Grace notes are best written as "x64+x64+x", which is for two eighth-note graces and the actual note afterward. You can also change the tempo and volume of your song at any point, so you're not limited to just one tempo or volume per song! ^.^ I hope this information helps the aspiring composers out there.
Please keep in mind that this coding is UNTESTED in Mabinogi (I don't have high enough Composition or Instrument Playing levels to do it myself). If someone would give me feedback, it would be appreciated. Leave a note for Launa in Tarlach server, or a comment in the Discussion Tab.
Chrono Cross -- Time's Scar Flute Solo
Chrono Cross -- Time's Scar Flute Solo for Flute, Rank D. Melody: 521 characters
t92v08o5ebba8+g8g-8+g8a2g64+a64+g8g-8g-8.g16e2.&e2.rebbb8>d-8d8e8d64+e64+d8d-8<ba8g8a8b8a64+b64+a2.&a2abg8g-8g2.&grgab4.g8a2g4.g-32+g32.+g-32e4.d8b4.b32+>c32.+<b32a8.g16&g8g-8e2.re64+g-64+e8d8e1&e1t115v10r1r1r1r1r1r2rr8e8b4.e8a2&a8g32+a32.+g32g-8g8g-8d8e8<b8>b4.e8a4.g32+a32.+g32g-8g8>d&d.<r8e8b4.e8a2&a8g32+a32.+g32g-8g8g-8d8e8<b8>b4.e8a.g32+a32.+g32g-8g8>d2r8d8e2.r8d16+c16<b2a2g2.r8g-16+g16>d2<b2>e2.r8d16+c16<b2a2g.a16b16a.g-8g16g-16e8&e2.>e2.r8d16+c16<b2a2g2.r8g-16+g16>d2<b2>e2.r8d16+c16<b2a2g.a16+b16a.>d16+d16e2<
|
- There is a break in the music, where there are a few measures of rests--totaling to approximately 10 seconds--then the faster part of the song picks up.
Pet AI Setting Coding
To access the Pet AI:
With your chat dialog box closed, press the "T" key, click on the "AI Settings" button on the lower right of the box that comes up. The new box that appears is titled "Animal Character AI Settings," and it has four pre-programed AIs--Auto Attack Mode, Collaborative Attack Mode, Healing Mode, and Command Mode--in it. To altar these four Base AIs (as I will call them), you must select the one you wish to copy, and press the Copy button. The Copy function will create a copy of the AI, renaming it by putting (1) after the name. You can then select the copy and access the Edit function.
At this moment, any custom coding is in Alpha Testing. No code is promised to work perfectly, unless it has gone through extensive testing--and even then, some bugs may creep in--but I will do my best to keep the code sprayed and inoculated. ^.^
The four Base AIs have been taken directly from the Animal Character AI Settings and work as well as they do in the game. They are a decent starting template for User-Defined AIs and are listed below.
Auto Attack Mode Base AI
<rules>
<rule name="Counter if attacked">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="attacked" event_skill="all" down="false"/>
</rule>
<rule name="Counter if knocked down">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="attacked" event_skill="all" down="true"/>
</rule>
<rule name="Successful Icebolt - Melee Attack">
<conditions>
<condition name="target_state" state="hit"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="attack" event_skill="icebolt"/>
</rule>
<rule name="Successful Lightning Bolt - Melee Attack">
<conditions>
<condition name="target_state" state="hit"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="attack" event_skill="lightningbolt"/>
</rule>
<rule name="If the target is running after triggering the skill, use melee attack to combat it">
<conditions>
<condition name="target_state" state="run"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="target_skill_prepare"/>
</rule>
<rule name="If the target is walking after triggering the skill, use Smash">
<conditions>
<condition name="target_state" state="walk"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="smash" try_cnt="2" timeout="5000"/>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="target_skill_prepare"/>
</rule>
<rule name="If the target stopped after triggering the skill, use Windmill">
<conditions>
<condition name="target_state" state="stop, walk"/>
<condition name="skill_preparable" pet_skill="windmill"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="windmill" try_cnt="3" timeout="5000"/>
<cmd name="wait" min="2000" max="4000"/>
<cmd name="process_skill" target="enemy" timeout="0"/>
<cmd name="cancel_skill"/>
</sequence>
</pattern>
<event name="target_skill_prepare"/>
</rule>
<rule name="If the target stopped after triggering the skill, use Lightning Bolt">
<conditions>
<condition name="target_state" state="stop"/>
<condition name="target_distance" min_distance="300" max_distance="1000"/>
<condition name="skill_preparable" pet_skill="lightningbolt"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="stackmagic_attack" stack_magic="lightningbolt" charge="1" timeout="0"/>
</sequence>
</pattern>
<event name="target_skill_prepare"/>
</rule>
<rule name="If the target stopped after triggering the skill, use Counter">
<conditions>
<condition name="target_state" state="stop"/>
<condition name="skill_preparable" pet_skill="counter"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="counter" try_cnt="1" timeout="5000"/>
<cmd name="wait" min="9000" max="10000"/>
<cmd name="cancel_skill"/>
</sequence>
</pattern>
<event name="target_skill_prepare"/>
</rule>
<rule name="Targetting - If the enemy is running, use melee attack">
<conditions>
<condition name="target_state" state="run"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - If the enemy stops, and is far away, use lightning bolt">
<conditions>
<condition name="skill_preparable" pet_skill="lightningbolt"/>
<condition name="target_distance" min_distance="500" max_distance="1000"/>
<condition name="target_state" state="stop"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="stackmagic_attack" stack_magic="lightningbolt" charge="1" timeout="8000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - If the enemy is walking, use Smash">
<conditions>
<condition name="target_state" state="walk"/>
<condition name="skill_preparable" pet_skill="smash"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="smash" try_cnt="1" timeout="5000"/>
<cmd name="melee_attack" timeout="10000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - If the enemy is close, use melee attack">
<conditions>
<condition name="target_distance" min_distance="0" max_distance="500"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - If the target has stopped, use Windmill">
<conditions>
<condition name="target_state" state="stop"/>
<condition name="skill_preparable" pet_skill="windmill"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="windmill" try_cnt="3" timeout="0"/>
<cmd name="wait" min="2000" max="4000"/>
<cmd name="process_skill" target="enemy" timeout="0"/>
<cmd name="cancel_skill"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - If the enemy has stopped, use Lightning Bolt">
<conditions>
<condition name="skill_preparable" pet_skill="lightningbolt"/>
<condition name="target_state" state="stop"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="stackmagic_attack" stack_magic="lightningbolt" charge="1" timeout="5000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - Melee Attack">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="melee_attack" timeout="10000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="If the enemy's range-attacking, use melee attack">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="aimed"/>
</rule>
<rule name="If the target is moving after the master has targetted it, use melee attack">
<conditions>
<condition name="target_state" state="walk, run"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="10000"/>
</sequence>
</pattern>
<event name="master_aimed"/>
</rule>
<rule name="If the master is knocked down, use melee attack">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="10000"/>
</sequence>
</pattern>
<event name="master_attacked" event_skill="all" down="true"/>
</rule>
<rule name="If the master's taget is using Smash, use melee attack to combat it">
<conditions>
<condition name="target_state" state="run"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="7000"/>
</sequence>
</pattern>
<event name="master_target_skill_prepare"/>
</rule>
<rule name="If the master is attacked">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="10000"/>
</sequence>
</pattern>
<event name="master_attacked" event_skill="all" down="false"/>
</rule>
<rule name="If the master's target is using Defense">
<conditions>
<condition name="target_state" state="walk"/>
<condition name="skill_preparable" pet_skill="smash"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="smash" try_cnt="1" timeout="8000"/>
<cmd name="melee_attack" timeout="7000"/>
</sequence>
</pattern>
<event name="master_target_skill_prepare"/>
</rule>
<rule name="If the master's attacking, then attack with the master">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="master_attack" event_skill="all"/>
</rule>
<rule name="If the enemy's in Defense, use melee attack">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="defence" event_skill="all"/>
</rule>
<rule name="Knock down the enemy">
<conditions>
<condition name="skill_preparable" pet_attackable_skill="all"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="defence" try_cnt="4" timeout="10000"/>
<cmd name="wait" min="8000" max="10000"/>
</sequence>
</pattern>
<event name="attack" event_skill="all" down="true"/>
</rule>
</rules>
|
Collaborative Attack Mode Base AI
<rules>
<rule name="Counter if attacked">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="attacked" event_skill="all" down="false"/>
</rule>
<rule name="Counter if knocked down">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="attacked" event_skill="all" down="true"/>
</rule>
<rule name="Successful Icebolt - Melee Attack">
<conditions>
<condition name="target_state" state="hit"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="attack" event_skill="icebolt"/>
</rule>
<rule name="Successful Lightning Bolt - Melee Attack">
<conditions>
<condition name="target_state" state="hit"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="attack" event_skill="lightningbolt"/>
</rule>
<rule name="If the target is running after triggering the skill, use melee attack to combat it">
<conditions>
<condition name="target_state" state="run"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="target_skill_prepare"/>
</rule>
<rule name="If the target is walking after triggering the skill, use Smash">
<conditions>
<condition name="target_state" state="walk"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="smash" try_cnt="2" timeout="5000"/>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="target_skill_prepare"/>
</rule>
<rule name="If the target stopped after triggering the skill, use Windmill">
<conditions>
<condition name="target_state" state="stop, walk"/>
<condition name="skill_preparable" pet_skill="windmill"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="windmill" try_cnt="3" timeout="5000"/>
<cmd name="wait" min="2000" max="4000"/>
<cmd name="process_skill" target="enemy" timeout="0"/>
<cmd name="cancel_skill"/>
</sequence>
</pattern>
<event name="target_skill_prepare"/>
</rule>
<rule name="If the target stopped after triggering the skill, use Lightning Bolt">
<conditions>
<condition name="target_state" state="stop"/>
<condition name="target_distance" min_distance="300" max_distance="1000"/>
<condition name="skill_preparable" pet_skill="lightningbolt"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="stackmagic_attack" stack_magic="lightningbolt" charge="1" timeout="0"/>
</sequence>
</pattern>
<event name="target_skill_prepare"/>
</rule>
<rule name="If the target stopped after triggering the skill, use Counter">
<conditions>
<condition name="target_state" state="stop"/>
<condition name="skill_preparable" pet_skill="counter"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="counter" try_cnt="1" timeout="5000"/>
<cmd name="wait" min="9000" max="10000"/>
<cmd name="cancel_skill"/>
</sequence>
</pattern>
<event name="target_skill_prepare"/>
</rule>
<rule name="Targetting - If the enemy is running, use melee attack">
<conditions>
<condition name="target_state" state="run"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - If the enemy stops, and is far away, use lightning bolt">
<conditions>
<condition name="skill_preparable" pet_skill="lightningbolt"/>
<condition name="target_distance" min_distance="500" max_distance="1000"/>
<condition name="target_state" state="stop"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="stackmagic_attack" stack_magic="lightningbolt" charge="1" timeout="8000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - If the enemy is walking, use Smash">
<conditions>
<condition name="target_state" state="walk"/>
<condition name="skill_preparable" pet_skill="smash"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="smash" try_cnt="1" timeout="5000"/>
<cmd name="melee_attack" timeout="10000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - If the enemy is close, use melee attack">
<conditions>
<condition name="target_distance" min_distance="0" max_distance="500"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - If the target has stopped, use Windmill">
<conditions>
<condition name="target_state" state="stop"/>
<condition name="skill_preparable" pet_skill="windmill"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="windmill" try_cnt="3" timeout="0"/>
<cmd name="wait" min="2000" max="4000"/>
<cmd name="process_skill" target="enemy" timeout="0"/>
<cmd name="cancel_skill"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - If the enemy has stopped, use Lightning Bolt">
<conditions>
<condition name="skill_preparable" pet_skill="lightningbolt"/>
<condition name="target_state" state="stop"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="stackmagic_attack" stack_magic="lightningbolt" charge="1" timeout="5000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Targetting - Melee Attack">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="melee_attack" timeout="10000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="If the enemy's range-attacking, use melee attack">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="aimed"/>
</rule>
<rule name="If the target is moving after the master has targetted it, use melee attack">
<conditions>
<condition name="target_state" state="walk, run"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="10000"/>
</sequence>
</pattern>
<event name="master_aimed"/>
</rule>
<rule name="If the master is knocked down, use melee attack">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="10000"/>
</sequence>
</pattern>
<event name="master_attacked" event_skill="all" down="true"/>
</rule>
<rule name="If the master's taget is using Smash, use melee attack to combat it">
<conditions>
<condition name="target_state" state="run"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="7000"/>
</sequence>
</pattern>
<event name="master_target_skill_prepare"/>
</rule>
<rule name="If the master is attacked">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="10000"/>
</sequence>
</pattern>
<event name="master_attacked" event_skill="all" down="false"/>
</rule>
<rule name="If the master's target is using Defense">
<conditions>
<condition name="target_state" state="walk"/>
<condition name="skill_preparable" pet_skill="smash"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="smash" try_cnt="1" timeout="8000"/>
<cmd name="melee_attack" timeout="7000"/>
</sequence>
</pattern>
<event name="master_target_skill_prepare"/>
</rule>
<rule name="If the master's attacking, then attack with the master">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="master_attack" event_skill="all"/>
</rule>
<rule name="If the enemy's in Defense, use melee attack">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="defence" event_skill="all"/>
</rule>
<rule name="Knock down the enemy">
<conditions>
<condition name="skill_preparable" pet_attackable_skill="all"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="prepare_skill" pet_skill="defence" try_cnt="4" timeout="10000"/>
<cmd name="wait" min="8000" max="10000"/>
</sequence>
</pattern>
<event name="attack" event_skill="all" down="true"/>
</rule>
</rules>
|
Healing Mode Base AI
<rules>
<rule name="Recover master's HP when there's a target">
<conditions>
<condition name="skill_preparable" pet_skill="healing"/>
<condition name="master_damaged_life_greater" life="20"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="chase" chase_target="master" timeout="5000" run="true"/>
<cmd name="prepare_skill" pet_skill="healing" try_cnt="3" timeout="10000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Run away when there's a target">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="move_against" distance="500" run="true" timeout="8000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
<rule name="Use Healing when the master's attacked">
<conditions>
<condition name="skill_preparable" pet_skill="healing"/>
<condition name="master_damaged_life_greater" life="20"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="chase" chase_target="master" timeout="5000" run="true"/>
<cmd name="prepare_skill" pet_skill="healing" try_cnt="3" timeout="10000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
</sequence>
</pattern>
<event name="master_attacked" event_skill="all" down="false"/>
</rule>
<rule name="Use Healing when the master's knocked down">
<conditions>
<condition name="skill_preparable" pet_skill="healing"/>
<condition name="master_damaged_life_greater" life="20"/>
</conditions>
<pattern>
<param_decl/>
<sequence>
<cmd name="chase" chase_target="master" timeout="5000" run="true"/>
<cmd name="prepare_skill" pet_skill="healing" try_cnt="3" timeout="10000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
<cmd name="wait" min="500" max="1000"/>
<cmd name="process_skill" target="master" timeout="5000"/>
</sequence>
</pattern>
<event name="master_attacked" event_skill="all" down="false" master_skill="all"/>
</rule>
</rules>
|
Command Mode Base AI
<rules>
<rule name="Counter if attacked">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="attacked" event_skill="all" down="false"/>
</rule>
<rule name="Counter if knocked down">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="cancel_skill"/>
<cmd name="melee_attack" timeout="0"/>
</sequence>
</pattern>
<event name="attacked" event_skill="all" down="true"/>
</rule>
<rule name="Attack all the time">
<conditions/>
<pattern>
<param_decl/>
<sequence>
<cmd name="melee_attack" timeout="5000"/>
</sequence>
</pattern>
<event name="now_targeting"/>
</rule>
</rules>
|
AI Rule Wizard Information
This information has been taken directly from the game. Some context and grammatical errors have been corrected for easier understanding, as the aim of this section is to teach players how to make their own Pet AI.
The "Rule Text" is what the AI Rule Wizard displays in the lower section labeled "Edit Rule," after you select an option.
Portions in [brackets] denote a drop-down box that allows you to select between the options listed there. Default time limits are normally good for most rules, with the usual exception to that being the use of the Counterattack skill.
A brief explanation of what each selection means to the overall rule and/or selection usefulness will be given after each hide/show box, as I gain an understanding of each.
Trigger Events
01 Pet finds the enemy
Rule Text: Pet finds the enemy
Rule
1. Animal Character looks for a target to attack once.
2. If already engaged in a battle against an enemy, this will not occur again until the battle is over and a new target is spotted.
Recommended Strategy
1. If attacking first
Recommended Rule
1. If standing close to the enemy, we highly recommend using a regular attack (3 hits) which will allow you to immediately attack the enemy.
2. If the enemy is standing afar, first, use Lightening Bolt/Firebolt/Icebolt and other Range Attack skills to keep the enemy at bay, then transition to regular attacks (3 hits), which will allow you to apply immediate damage on the enemy.
Tip
1. We recommend using this tactic against monsters that do not attack the animal character first.
2. This is all about locating your target before the enemy recognizes you, so for monsters that attack first, the Animal Character may find itself in a 2:1 situation. This sequence will allow for a speedy battle, but with it comes a good amount of risk, so this type of strategy is not really recommended.
|
- Your pet, when given enough time, will locate and target an enemy--including closed Mimic chests. If this command is used with an attack command--"Pet attacks the enemy with Melee Attack" for example--then your pet will be capable of engaging enemies as fast as it can recognize them. This selection does not work well if attempting to target enemies that will attack you or your pet first, however. (It normally results in just enough 'lag' time for the enemy to achieve the first attack, which normally spells danger for your enemy's target.)
02 Pet is targeting the enemy
Rule Text: Pet is targeting the enemy
Rule
1. This strategy entails what to do when the Animal Character is either in battle, or at least
recognizes the enemy.
Recommended Strategy
1. If attacking first
2. If attacking with others
Recommended Sequence
1. If the enemy is running, the enemy is probably going to attack using Smash or regular
attack, so first, use Lightening Bolt/Firebolt/Icebold and other Range Attack skills to keep the
enemy at bay, then transition to regular attack (3 hits), which will allow you to apply
immediate damage on the enemy.
2. If the enemy is walking, it's highly likely that it is using Defense, so we highly recommend
using Smash.
3. If the enemy is standing still, it is highly likely that the enemy is gearing up for Windmill or
Counterattack, so first use Lightening Bolt/Firebolt/Icebolt and other Range Attack skills to
keep the enemy at bay, then transition to regular attack (3 hits), which will allow you to apply
immediate damage on the enemy.
4. If the enemy is running or standing still, we also recommend using Lightening
Bolt/Firebolt/Icebolt and other Range Attack skills to draw the enemy in, then counter the
enemy's attack using Counterattack or Windmill.
Tip
1. If the enemy is too far, then the tactic of using Lightening Bolt/Firebolt/Icebolt and other
Range Skills to acquire an opportunity to attack, followed by a barrage of regular attacks
may fail.
|