忍者ブログ

しいたけサイクロン

主にRPGツクールVXAceを扱うブログです。 ここに公開してあるスクリプトは全部自由に使用してもらってかまいません。 改造なり何なりして好きに使ってください。

敵のAIスクリプト

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

ただいまコメントを受けつけておりません。

敵のAIスクリプト

ツクールAceにおいて敵のAIをもう少し細かく設定するスクリプトです。
結構前に作って、テストゲームなどに使っていたものです。
解毒や回復などターゲットを指定できるようにしました。
それから2つ以上の条件を設定できるようにしました。
(AかつBが成り立つとき行動を行うといった感じです。)

・テストゲーム
ダウンロード(1.83MB)

・スクリプト
DataManager

Game_Enemy
RPG::Enemy::Action
Game_Action

上のスクリプトの内,DataManager以外をまとめたもの
composed_enemy_ai_scripts


・導入方法
上のスクリプトたちを導入した後、本体のDataManager内のself.initのcreate_game_objectsの下にload_normal_databasetako3eeedqaを挿入してください。


・使い方
新しく付け加えたDataManager内のload_normal_databasetako3eeedqaにおいて
$data_enemies[eid].actions[act_id].plus_condition_list = [[act_typeparam1param2]]
で敵の行動パターンを指定します。
[act_typeparam1param2]は条件と設定で、 [[act_type, param1, param2]]の配列内のすべての条件を満たすとき実行可能になります。

eidは行動パターンを設定する敵のIDです。
act_idは敵の行動パターンのリストのidです。0から始まることに注意してください。

act_type で敵の行動条件を指定します。(act_typeは8以下の自然数で指定)
1~6はデータベースで行動パターンを指定するときと同じ順で
ターン数、HP、 MP、ステート、パーティレベル、スイッチとなります。
7~8は新たに付け加えた行動パターンです。
詳細:
1:ターン数が param1 + param2 * Xの時。
2: HPの値が param1%以上 param2%以下の時。
3: MPの値が param1%以上 param2%以下の時。
4: IDparam1のステートである時。
5:パーティレベルがparam1以上の時。
6: IDparam1のスイッチがONである時。
7: 味方にIDparam1のステートのキャラクターがいる時。
8:味方にHPがparam1%以下になったキャラクターがいる時。(味方へのスキル用です、ターゲットは味方になります)
param2が0の場合は条件を満たす味方からランダムに選択。
param2が1の場合はHPが最小の味方を選択。
9:味方にIDparam1のステートのキャラクターがいる時。(味方へのスキル用です、ターゲットは味方になります)
param2が0の場合は条件を満たす味方からランダムに選択。
param2が1の場合はステートのターンカウント(解除されるまでのターン数)が最大のキャラを選択。
param2が2の場合はステートのターンカウント(解除されるまでのターン数)が最小のキャラを選択。

例:

    $data_enemies[31].actions[1].plus_condition_list = [[8,80,1]]
で、ID:31の敵キャラのID:1の行動(ここではヒール)を行う条件は
味方にHPが80%以下になったキャラがいるときで、
もっともHPが低いキャラをターゲットにします。

もっといろいろ出来そうなので多分いずれ更新します。
PR

コメント

プロフィール

HN:
tentako
性別:
非公開

P R

フリーエリア