side menu
Edited by Yu Kanduki
行動系設定
AIの読み込みから1秒間は、何もせずに待機します。設定がアクティブ状態であっても、テレポートなどで着地した時にいきなり攻撃しにいったりすることは無くなります。反面、攻撃されても反撃しませんが、1秒経てば即座に行動します。余談ですが、オートフリットなどを使っているときに連続テレポで無駄にSP消費してしまうことも避けられます。こっこAIは戦闘状態に入るとスキル使用しますが、1秒以内ならスキル使用もありませんので、即座に次のテレポを行えばフリットムーブを使わせないまま飛ぶことが出来ます。
「その他の変数」カテゴリ内、以下の変数によって設定。 SleepFlag = true 起動後一定時間スリープするか否か SleepTime = 1000 スリープする時間(ミリ秒)
ホムンクルスを呼び出したとき、基本的には待機状態で呼び出されます。呼び出し時に休息状態にしたい場合は、Set.luaエディタ「行動系3」から、「呼び出し時の状態に関する設定」でロード時の状態の休息状態の方にチェックを入れてください。
各種Mobに対する個別設定を、操作するホムンクルスごとに分けたい場合は、ホムンクルスの種類ごとにMob.luaのファイル名を変更します。 MobFilenameのファイル名はデフォルトでは「Mob」ですので、例えばバニルミルト用のMob.luaをMob_vanil.luaというように変更すれば、バニルミルトはMob_vanil.lua、それ以外のホムンクルスはMob.luaを読み込むようになります。
「平均戦闘時間に関する変数」カテゴリ内、以下の変数によって設定。 MobFilename = "Mob"
こっこAIでは、「○○の時に、□□をする」といった条件と行動の組み合わせをある程度カスタマイズ可能です。例えば従来の「HPが減った時に、退避行動をする」や、「敵の数が多い時に、AS発動率を上げる」というのもこれに当てはまります。
※用意されている条件 MANY_ENEMYS -- 敵の数がEnemyBorder_N以上 TOUGH_ENEMY -- 平均戦闘時間がEnemyBorder_T以上 ALT_T_TO_REST -- Alt+Tで休息状態になった時 ALT_T_TO_IDLE -- Alt+Tで待機状態になった時 ALT_MY_CLICK -- 自分の居るセルをAlt+右クリックした時 ALT_OWNER_CLICK -- 主人の居るセルをAlt+右クリックした時 ALT_FRIEND_CLICK -- 友達の居るセルをAlt+右クリックした時 MY_HP_UNDER_SAFETY -- 自分のHPがHomunculusSafetyHP(%)以下の時 MY_SP_UNDER_SAFETY -- 自分のSPがHomunculusSafetySP((%)以下の時 OWNER_HP_UNDER_SAFETY -- 主人のHPがOwnerSafetyHP(%)以下の時 OWNER_SP_UNDER_SAFETY -- 主人のSPがOwnerSafetySP((%)以下の時 MY_HP_EMERGENCY -- 自分のHPが1秒間でFallMyHpRateで指定した%以上減った時の行動 MY_SP_EMERGENCY -- 自分のSPが1秒間でFallMySpRateで指定した%以上減った時の行動 OWNER_HP_EMERGENCY -- 主人のHPが1秒間でFallOwnerHpRateで指定した%以上減った時の行動 OWNER_SP_EMERGENCY -- 主人のSPが1秒間でFallOwnerSpRateで指定した%以上減った時の行動 OWNER_MOTION -- 主人のモーションがT_OwnerMotionで指定した状態である時の行動
「トリガーに関係する設定変数」カテゴリ内、以下の変数によって設定。 EnemyBorder_N = 3 MANY_ENEMYS条件に使用:敵の数 EnemyBorder_T = 7000 TOUGH_ENEMYに使用:平均戦闘時間(ミリ秒) HomunculusSafetyHP = 30 MY_HP_UNDER_SAFETYに使用:HPの% HomunculusSafetySP = 30 MY_SP_UNDER_SAFETYに使用:SPの% OwnerSafetyHP = 30 OWNER_HP_UNDER_SAFETYに使用:HPの% OwnerSafetySP = 30 OWNER_SP_UNDER_SAFETYに使用:SPの% T_OwnerMotion = -1 OWNER_MOTIONに使用:主人のモーション
※用意されている行動 TRIGGER_OnESCAPE -- 退避状態化 TRIGGER_OnSEARCH -- サーチング TRIGGER_OnFORWARD -- 先行移動化 TRIGGER_OnSHOOTING -- 援護射撃化 TRIGGER_ACTIVE -- アクティブ化 TRIGGER_CHANGE_OWNER -- オーナーチェンジ TRIGGER_ASP_INC -- AS時の確率増加 TRIGGER_ASL_INC -- AS時のレベル増加 TRIGGER_OnMOVE -- 指定座標へ移動 TRIGGER_CHANGE_MODE -- モードチェンジ TRIGGER_PRIORITY_oENEMY -- 主人の敵優先 TRIGGER_PRIORITY_mENEMY -- 自分の敵優先 TRIGGER_ASP_DEC -- AS時の確率低下 TRIGGER_ASL_DEC -- AS時のレベル低下 TRIGGER_FOLLOW_CMD_ST -- 休息状態に切り替え
条件に対して行動を割り当てていくことで設定できます。例えば、
>MANY_ENEMYS = {TRIGGER_ASP_INC, TRIGGER_ASL_INC}
これは、「敵の数が指定数以上(MANY_ENEMYS)の時、AS確率上昇(TRIGGER_ASP_INC)とASレベル上昇(TRIGGER_ASP_INC)を行う」という意味になります。これを「敵の数が指定数以上の時、退避行動をとる」としたい場合は、
>MANY_ENEMYS = {TRIGGER_OnESCAPE}
このように書き換えます。特に何も割り当てない場合は、
>MANY_ENEMYS = {}
このようにしておきます。{}は決して消さないでください。複数の行動を割り当てる場合は、最初の様にカンマ( , )で区切って書きます。デフォルトの設定は以下のようになっています。
「トリガー系編集に関する変数」カテゴリ内、以下の変数によって設定。 MANY_ENEMYS = { TRIGGER_ASP_INC, TRIGGER_ASL_INC } TOUGH_ENEMY = { TRIGGER_ASP_INC } ALT_T_TO_REST = {} ALT_T_TO_IDLE = {} ALT_MY_CLICK = { TRIGGER_OnSEARCH } ALT_OWNER_CLICK = {} ALT_FRIEND_CLICK = { TRIGGER_CHANGE_OWNER } MY_HP_UNDER_SAFETY = { TRIGGER_OnESCAPE } MY_SP_UNDER_SAFETY = {} OWNER_HP_UNDER_SAFETY = {} OWNER_SP_UNDER_SAFETY = {} MY_HP_EMERGENCY = {} MY_SP_EMERGENCY = {} OWNER_HP_EMERGENCY = {} OWNER_SP_EMERGENCY = {} OWNER_MOTION = {}