Advanced AI Conditions
Version 1.0d
What is this?
This script allows the developper to exert better control on how the AI handles the enemies' action patterns.
Script configuration is almost entirely made via noteboxes and no RGSS3 knowledge is required to use it.
Features and Instructions
PART 1: DEFAULT AI CONFIGURATION
- TGR settings
TGR determine the frequency a target will be chosen during random targeting rolls. The configuration module below allows you to set how damage and healing affects TGR to make a character more threatening to the eyes of the AI.
- Skill settings
Every skill can be given default AI *targeting* conditions all enemies will use. To do it, you have to create an "AI block" in the skill's notebox.
Notetags explanation:
Code:
- <ai_conditions>
- Explanation: You always start the block with this one.
- target_hpgt: n
- Explanation: The target HP must be greater or equal to n%.
- target_hplt: n
- Explanation: The target HP must be lesser or equal to n%.
- target_states: n, n...
- Explanation: The target must have the specified states already inflicted.
- target_states_not: n, n...
- Explanation: The target must NOT have the specified states already inflicted.
- only_if_target
- Explanation: If no suitable target is found, the skill won't be used AT ALL.
- </ai_conditions>
- Explanation: You always end the block with this one.
复制代码
PART 2: ENEMY AI CONFIGURATION
On top on a default AI, you can setup individual AI conditions for every different enemy. In case of conflict with the default targeting AI, these settings will take precedence.
All these settings make use of the enemy's notebox.
NOTE: the term "action index" refers to the order of the action pattern you enter for enemies in the database. For instance, if your list is like this:
Attack
Fire II
Poison
Attack will be index 1, Fire II will be index 2 and Poison index 3. And so on.
Notetags explanation:
Code:
- <ai_conditions: n, n...>
- Explanation: One way of starting an AI block.
- `n` must be an action index. If you include multiple indices (comma-separated), the conditions will apply to each one.
- use_id
- Explanation: Same as above, but `n` refers to skill IDs instead of action indices. `n` must be a valid skill ID.
- switches: n, n...
- Condition: The specified switches must be ON.
- variables: x, y, x, y...
- Condition: Variables `x` must be equal to the corresponding values `y`.
- states: n, n...
- Condition: The acting enemy must have *all* of the specified states.
- hpgt: n
- Condition: Acting enemy has HP greater than or equal to `n%`.
- hplt: n
- Condition: Acting enemy has HP less than or equal to `n%`.
- mpgt: n
- Condition: Acting enemy has MP greater than or equal to `n%`.
- mplt: n
- Condition: Acting enemy has MP less than or equal to `n%`.
- party_level: n
- Condition: Party level is greater than `n`.
- turns_order: a+bx
- Condition: Matches the turn formula as seen in the database (e.g., `a + b * x`).
- target_hpgt: n
- Condition: Target HP must be greater than or equal to `n%`.
- target_hplt: n
- Condition: Target HP must be less than or equal to `n%`.
- target_states: n, n...
- Condition: The target must already have the listed states.
- target_states_not: n, n...
- Condition: The target must *not* have the listed states.
- only_if_target
- Condition: If no suitable target is found, the skill will not be used at all.
- </ai_conditions>
- Explanation: You must end the block with this one.
复制代码
- Creating Turn Patterns
Turn patterns is a special AI setting which completely replace an action pattern with another one at the designated turns. During a turn pattern, the "normal" actions (the ones you entered into the database) won't be taken into consideration, ever.
You need to create another block to make a Turn Pattern.
Code:
- <turn_pattern: a+bx>
- Used to define the turn pattern.
- - `a` is the first turn when the action will occur.
- - `b` is the interval between turns after the first.
- skill: a, b
- - `a` is the skill ID to be used.
- - `b` is the rating (priority) of the skill.
- </turn_pattern>
- End the pattern.
复制代码
NOTE 1: You can put as many skill tags as you want.
NOTE 2: In order to assign conditions to a skill inside a turn pattern, you have to create a new AI block with that skill's ID.
- Absolute Rating
The absolute rating is a special rating you assign to an action during databasing your enemy. An action with this rating will take absolute priority, ignoring all others (even higher ones) provided it can be used.
If you have several actions with an absolute rating, one will be chosen randomly.
Download and Terms of Use
- Contact me for commercial usage.
- I will not be giving support or fixing bugs for you. I don't have time for that.
- Please do not distribute them in one huge zip/rar/.7z/whatever compression without my permission.
- You may use or edit the code as you please as long as it has proper attribution. However, you cannot change the license for the script e.g. removing the permission to use for commercial projects.
- Please add me in your credits either as Archeia Nessiah/Division Heaven. It can be in the ReadMe/Game Credits/etc.
- I am not liable for any destructive behavior that the materials could have caused you, such as, but not limited to, computer damage, incontinence, explosion of user’s head, coma, death, and/or halitosis. So edit or use at your own risk.
本贴来自国际rpgmaker官方论坛作者:Archeia处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:
https://forums.rpgmakerweb.com/threads/archeias-advanced-ai-conditions.36877/