カテゴリー: AI機能

ホムンクルスごとにMob.luaデータを分ける

各種Mobに対する個別設定を、操作するホムンクルスごとに分けたい場合は、ホムンクルスの種類ごとに
Mob.luaのファイル名を変更します。
MobFilenameのファイル名はデフォルトでは「Mob」ですので、例えばバニルミルト用のMob.luaをMob_vanil.lua
というように変更すれば、バニルミルトはMob_vanil.lua、それ以外のホムンクルスはMob.luaを読み込むようになります。

「平均戦闘時間に関する変数」カテゴリ内、以下の変数によって設定。
MobFilename = "Mob"

カテゴリー : AI機能, 戦闘系設定, 操作系設定 タグ : , ,

行動系カスタマイズ

こっこ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に使用:主人のモーション
FallMyHpRate = 20       1秒間に自分のHPが低下する時の閾値%
FallMySpRate = 5       1秒間に自分のSPが低下する時の閾値%
FallOwnerHpRate = 20       1秒間に主人のHPが低下する時の閾値%
FallOwnerSpRate = 5       1秒間に主人のSPが低下する時の閾値%

※用意されている行動
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 = {}

カテゴリー : AI機能, 行動系設定 タグ : , , ,

先制攻撃設定

Mob個別設定の対応を先制攻撃に設定したMobに対してのみ、アクティブに攻撃しにいく機能です。
先制攻撃Mobの設定の仕方は、「先制攻撃する敵の登録」を参照してください。
もしくは、総合ツールのMob設定エディタから設定できます。

この設定がONであるとき、ノンアクティブ状態であっても索敵範囲内に先制攻撃設定したMobが居ると、
アクティブに攻撃しに行きます。狩場で特定の敵に対してのみ、タゲを取らせたかったり、
積極的に攻撃させたい場合はこの機能を使うと良いでしょう。

デフォルトではHalfAvtiveはON(true)になっており、Mob設定の対応初期設定は基本的に「普通」です。

「アクティブ状態に関する変数」カテゴリ内、以下の変数によって設定。
HalfActive = true     先制攻撃登録Mobにアクティブに攻撃するか否か

カテゴリー : AI機能, 戦闘系設定 タグ : , , , ,

友達登録操作

主人と一緒に戦う他プレイヤーを登録します。
通常は横殴りなどを考慮し、他プレイヤーのターゲットには触らない仕様ですが、
友達登録されたプレイヤーとは共闘するようになります。
索敵条件に含まれていれば「友達が攻撃しているMobへ援護」「友達を攻撃しているMobへ反撃」を行います。
登録操作はゲーム中でなければ出来ません。登録したデータは全てFriend.luaに保存されていきます。

ゲーム内操作で登録したリストは、総合ツールの友達リストエディタでも削除・一時停止などの編集が可能です。
(※エディタでは新規登録はできません)

友達登録・削除

友達にしたいキャラクターの居るセル(地面)をAlt+Shift+右クリックすることで登録されます。
既に友達であるキャラクターの場合は、友達リストから削除されます。
友達登録が成立すると、主人の1マス左へ移動して合図をします。
削除の場合は、1マス右へ移動して合図します。

AIフォルダまたは指定ディレクトリ内にFriend.luaというファイルを生成し、友達登録の記録をします。
このため、AIの再読み込みがあっても登録した友達を忘れることはありません。
逆に、意図的に削除しなければ、友達の登録記録はずっと残ってしまいますので、注意してください。
ただし、他のホムンクルスを登録した場合は、ロード時に相手が画面内にいない場合登録を解除します。
(ホムンクルスはリログ・MAP移動・安息コールなどでIDが変わってしまうため)

一括友達登録

画面内に居るプレイヤーキャラクターまたはホムンクルスで、現在友達ではない者を全て一括して友達登録します。
デフォルトではAlt+Shift+主人の居るセルを右クリックの操作に割り当てられています。
既に友達になっているキャラクターが画面内に居ても登録解除されることはありません。
登録を受け付けると、ホムンクルスが主人の1マス北へ移動して合図します。

友達リストクリア

友達リストに登録されている全てのIDを消去します。
デフォルトではAlt+Shift+自分の居るセルを右クリックの操作に割り当てられています。
操作を受け付けると、ホムンクルスが主人の1マス南へ移動して合図します。
(※友達リストエディタで停止中にしているIDは削除されません)

カテゴリー : AI機能, 操作系設定 タグ : , , ,
top