Status
Not open for further replies.

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
Main Menu Manager

Features and How to Use




Have more control over your main menu straight from the Plugin Manager. Add, remove, hide, show, enable, disable commands from your main menu altogether!

Plugin: http://yanfly.moe/plugins/en/YEP_MainMenuManager.js

Instructions

Introduction

 

For those who wish to alter the various aspects of the main menu commands without needing to touch the source code can use this plugin to do so. Although this plugin mostly ports the menu creation process to the Plugin Manager parameters, it allows for a cleaner way to handle the menu command management process.

 

How to Use This Plugin

 

Each section in the parameters is divided up into various parts. Each of these parts play a role in how the menu command functions. Here’s what each part does:

 

Name

– This is how the command will appear visually in the main menu. This is an eval, which means, it’s code driven. If you want the command to appear just as it is, use ‘quotes’ around it.

 

Symbol

– This is the identifier for the command. Each command should have a unique symbol, so much as to not cause conflicts with each command. However, shared symbols are perfectly fine as long as you’re fine with them performing the same function when selected.

 

Show

– This is an eval condition for whether or not the command shows up in the main menu. If you wish for this to always show up, simply use ‘true’ without the quotes.

 

Enabled

– This is an eval condition for whether or not the command is enabled. The difference between showing a command and enabling a command is that a command can show, but it can’t be selected because it isn’t enabled. If you wish for this command to always be enabled, use ‘true’ without the quotes.

 

Ext

– Stands for extension. This serves as a secondary symbol for the command and it can be used for pretty much anything. It has no direct impact on the command unless the command’s objective is related to the extension value. The majority of commands do not need to make use of the Ext value.

 

Main Bind

– This is an eval function that is to be ran when this command is selected straight from the main menu. The function that is to be bound to this command needs to be accessible from Scene_Menu is some way or another. For commands that are meant to select an actor first, use ‘this.commandItem.bind(this)’ without the quotes.

 

Actor Bind

– This is an eval function that is to be ran when an actor is selected after choosing this command, usually to push a scene. This function isn’t needed for any menu commands that don’t require selecting an actor.

 

Examples

 

The following are some examples to help you add/alter/change the way commands appear for your main menu.

 

Name: TextManager.item

Symbol: item

Show: this.needsCommand(‘item’)

Enabled: this.areMainCommandsEnabled()

Ext:

Main Bind: this.commandItem.bind(this)

Actor Bind:

 

The item command is made using the above example. ‘TextManager.item’ is how the command name will appear. It draws the name information from the database Text Manager entry for ‘Item’ and uses whatever you put into the database in here. The symbol ‘item’ is used to make the item command’s unique identifier. In order for the command to show, it will run a ‘needsCommand’ function to check if it will appear. This ‘needsCommand’ function is related to your database on whether or not you want the item to appear there. In order for this command to be enabled, it will check for whether or not the main commands are enabled, which is related to whether or not there are actors in the current party. And finally, the line of code ‘this.commandItem.bind(this)’ is the command that will run once the item entry is selected.

 

Name: TextManager.skill

Symbol: skill

Show: this.needsCommand(‘skill’)

Enabled: this.areMainCommandsEnabled()

Ext:

Main Bind: this.commandPersonal.bind(this)

Actor Bind: SceneManager.push(Scene_Skill)

 

The skill command is made using the above example. ‘TextManager.skill’ is how the command name will appear. It draws the name information from the database Text Manager entry for ‘Skill’ and uses whatever you put into the database in here. The symbol ‘skill’ is used to make the skill command’s unique identifier. In order for the command to show, it will run a line code ‘needsCommand’ function to check if it will appear. This ‘needsCommand’ function is related to your database on whether or not you want the skill option to appear there. In order for this command to be enabled, it will check for whether or not the main commands are enabled, which is related to whether or not there are actors in the current party. This time, the main bind command is to send the player to the actor selection process using ‘this.commandPersonal.bind(this)’ instead. Once the player selects an actor, ‘SceneManager.push(Scene_Skill)’ is then ran to send the player to Scene_Skill to manage the actor’s skills.

 

Name: ‘Common Event 1’

Symbol: common event

Show: false

Enabled: true

Ext: 1

Main Bind: this.callCommonEvent.bind(this)

Actor Bind:

 

This is a customized command that is included by default with the plugin. This command’s name is ‘Common Event 1’, but it can be changed to whatever you want by simply changing what’s in between the ‘quotes’ in the parameter settings. The symbol is the identifier for all common events. However, by default, this common event item does not show in the main menu. If you want it to appear, set the Show option to ‘true’ without the quotes and it will appear. Because the Enabled option is ‘true’, the command can always be selected by the player. The Ext actually has a role with this command. The Ext determines which common event is to be played. In this example, the Ext value is 1, which means common event 1 will be ran when this command is selected. Should the Ext value equal to 25, it will be common event 25 that will run once this command is selected. The reason is because the Main Bind for this command option is ‘this.callCommonEvent.bind(this)’, which is a function included in this plugin to allow for common events to be ran.
 
Last edited by a moderator:

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
Base Troop Events

Features and How to Use




Wanted to place an event in every single battle but copy/pasting it is too inefficient? Now, you can do it using Base Troop Events, where every single battle takes a template of events from the selected troop you want it to!

Plugin: http://yanfly.moe/plugins/en/YEP_BaseTroopEvents.js

Instructions

Introduction

 

For all the eventers out there who love to customize their battles through custom event pages, you can now save yourself some time by drawing all the event pages from a base troop event to occur in every fight. All of the events will be present in every single battle.
 
Last edited by a moderator:

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
Battle A.I. Core

Features and How to Use




Tired of dumb enemies that turn your otherwise challenging game into an easy-peasy walk in the park? The Battle A.I. Core plugin allows you to manually adjust the settings and patterns of your enemies so that they can deliver MANLY poundings onto your players.

Plugin: http://yanfly.moe/plugins/en/YEP_BattleAICore.js

Instructions

Introduction

 

RPG Maker MV’s default enemy AI is a bit lackluster even if you managed to have it based completely on the rates and switches. There is no way to control the way the enemy chooses targets by default, nor are the conditions imposed by the default editor enough to satisfy the majority of checks. This plugin enables you to set a priority list of conditions, actions, and the targets selected for the enemy to go through before making a decision on how to participate in battle.

 

These conditions contain all of the default editor’s conditions plus more, such as determining the parameter values of a target, whether or not a state exists on a target, the target’s elemental weakness (or resistances), and more before deciding an action. Furthermore, you can set an AI level for the enemies to make them more consistent in the way they go about fighting your players or more random in the way the enemies treat the priority list, too.

 

Parameters

 

Dynamic Actions

By default, the enemy’s actions are determined at the start of the turn. While this works in its own right, enabling Dynamic Actions allow enemies to make a decision when the enemy’s turn comes up instead. This prompts enemies to be more flexible and to appear more intelligent in battle, thus, giving your players a bit more of a challenge.

 

Element Testing

If this is disabled, enemies will automatically know the elemental weakness, resistance, etc. about all actors. If enabled, enemies will need to test out the skills on various actors first before making a decision. Until the enemy learns about the actor’s elemental rates, the enemy is always willing to try using the skill on the target actor. However, if the skill itself does not possess an element, then no information will be registered. All elemental data is reset at the start of each battle for all enemy parties.

 

Default AI Level

Not all enemies are intelligent. In fact, some of them are dumb or random. Setting the AI Level of a foe at a low number means the foe is more random while a higher AI Level foe is more consistent. How the AI Level works is, a random number will be checked from 0 to 99. If that enemy’s AI Level is higher than that number, that action is checked to see if the condition is fulfilled or not. If the AI Level is lower than that number, the condition is automatically deemed false and continues on to the next action. The check is ran each time a new action is checked upon. This random factor is only applied to <AI Priority> lists and do not apply to default actions.

 

Enemy AI Level

 

Enemy AI levels do not determine how difficult they are. Instead, they determine how strictly they will follow the <AI Priority> lists. An AI Level of 80 means it has an 80% chance of following the prioritized action on the AI Priority list before moving onto the next one where there will be another 80% chance and so on. If the AI level is lower, the chance is lower, making the AI to be more random.

 

Enemy Notetag:

<AI Level: x>

Sets the enemy’s AI level to x. The lower x, the more random the enemy. The higher for x, the more strict the enemy is about following the AI Priority list found in its notebox, too.

 

Enemy AI Priority

 

If an enemy has an AI Priority list, the enemy will go down that list from top to bottom (giving the actions at the top more priority than the ones at the bottom) looking for any actions whose conditions are fulfilled. If that condition is fulfilled, then that action will be the action the enemy will partake in.

 

To set up a Priority List for the enemy, you must place inside the enemy’s notebox notetags that match the following format:

 

<AI Priority>

condition: SKILL x, target

condition: SKILL x, target

</AI Priority>

 

or

 

<AI Priority>

condition: skill name, target

condition: skill name, target

</AI Priority>

 

Any number of conditions and skills can be placed in between the two <AI Priority> tags. You can choose to use skill ID’s or the skill names. However, if you use the skill names, keep in mind that it is not case sensitive and if any skills in your database have matching names, the skill with the larger skill ID will be the action used.

 

Conditions

 

The following is a list of ways you can format your conditions for the enemy to choose the right skill. In addition to deciding whether or not the skill will be used, the condition also selects the enemy target. The following list will tell you how the conditions are met and what targets will be selected for battle.

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

ALWAYS

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

This condition will always be fulfilled. The valid target group is all targets within scope.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: Always: Skill 10, Lowest HP%

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

ELEMENT X case

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

This allows you to match the element rate of element X (use either a number or the name of the element in place of ‘X’) to see whether or not the conditions for the action are fulfilled. Replace ‘case’ with ‘Neutral’ for normal element rate, ‘Weakness’ for anything above 100% element rate, ‘Resistant’ for below 100% element rate, ‘Null’ for 0% element rate, and ‘Absorb’ for below 0% element rate. Valid targets will be those with the matching element rates.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: Element Fire Weakness: Fireball, Lowest HP%

Element Water Resistant: Water Cancel, Highest MAT

Element 4 Null: Earthquake, Lowest MDF

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 EVAL eval

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

This allows you to use any kind of code to check and fulfill a condition. This condition uses all alive members of the skill’s scope as valid targets.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: Eval user.name() === ‘Bat A’: Skill 10, Highest HP%

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

group ALIVE MEMBERS eval

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Replace ‘group’ with either ‘party’ for the player’s party or ‘troop’ for the enemy party. This runs the number of party alive members or troop alive members in a check to see if the conditions can be fulfilled.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: Party Alive Members > 2: Skill 10, Lowest HP%

Troop Alive Members <= 4: Skill 11, Highest HP%

Troop Alive Members === $gameVariables.value(3): Skill 12, Random

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

group DEAD MEMBERS eval

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Replace ‘group’ with either ‘party’ for the player’s party or ‘troop’ for the enemy party. This runs the number of party dead members or troop dead members in a check to see if the conditions can be fulfilled.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: Party Dead Members > 2: Undead, Highest ATK

Troop Dead Members <= 4: Life, Highest ATK

Troop Dead Members === $gameVariables.value(3): Skill 12, Random

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

stat PARAM eval

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Replace ‘stat’ with either ‘atk’, ‘def’, ‘mat’, ‘mdf’, ‘agi’, ‘luk’, ‘maxhp’, ‘maxmp’, ‘hp’, ‘mp’, ‘hp%’, ‘mp%’, or ‘level’ to run it in a condition check again to see if the action gets passed. The group that it checks will be based on the skill’s scope. If the skill targets foes, then all foes will take a check to see if they fulfill the conditions. Likewise for party members if the skill is for allies. The valid targets will be those who pass the condition check.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: HP% param <= 50%: Heal, Lowest HP%

MP param > 90: Mana Drain, Highest MP

ATK param > user.atk: Power Break, Highest ATK

LEVEL param > 10 && target.notState(5): Blind, Random

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

type PARTY LEVEL eval

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Replace ‘type’ with either ‘highest’, ‘lowest’, or ‘average’ to get the respective party level for the skill’s scope. This will reference the entire party’s level. If this condition is fulfilled, all targets would will become valid targets.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: Highest Party Level > 10: Skill 10, Lowest MP%

Lowest Party Level < 12: Skill 11, Lowest HP%

Average Party Level > 15: Skill 12, Highest HP%

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

RANDOM x%

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

This will make the condition based on a random x percent chance. This condition allows all possible targets to be valid for targeting.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: Random 50%: Skill 10, Lowest HP%

Random 75%: Skill 11, Highest HP%

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

STATE === state x

STATE === state name

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

This will detect if the target scope has state x (or state name if you use that instead). If the target does, that target is added into the pool of valid targets. Any targets not affected by the state will be ignored.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: State === State 5: DeBlind, Highest ATK

State === Knockout: Life, Random

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

STATE !== state x

STATE !== state name

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

This will detect if the target scope does not have state x (or state name if you use that instead). If the target doesn’t, that target is added into the pool of valid targets. Any targets affected by the state will be ignored.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: State !== State 12: Haste, Random

State !== Courage: Cowardice, Highest ATK

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

SWITCH X case

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Replace ‘x’ with the ID of the switch you wish to check. Replace ‘case’ with either ‘on’ or ‘off’ (you may also use ‘true’ or ‘false’). If the switch matches the case, the condition is fulfilled and all skill targets become valid targets.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: Switch 5 On: Skill 10, Lowest HP%

Switch 6 Off: Skill 11, Highest HP%

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

TURN eval

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

This will make the condition based on the turn count to be fulfilled by an eval statement. This condition allows all possible targets to be valid for targeting.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: Turn > 3: Skill 10, Lowest hp%

Turn === 4: Skill 11, Highest hp%

Turn <= $gameVariables.value(2): Skill 12, Random

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

VARIABLE X eval

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

This will call forth the value of variable ‘x’ to partake in an eval comparison to see if the condition is fulfilled. If it is, all skill targets become valid targets.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

Example: Variable 3 > 10: Skill 10, Lowest HP%

Variable 5 <= 100: Skill 11, Highest HP%

Variable 2 === user.atk: Skill 12

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

 

Targeting

 

Targeting is optional but can be done via a small change to the condition. All you have to do is add a ‘,’ after the skill to indicate which target in the valid target group you would like to target. For example:

 

Random 50%: Fire, Highest HP%

 

The condition to be met is the 50% random chance, but if it is fulfilled, the target selected will be the member on the targeting scope’s team with the highest HP percentage. When that happens, the ‘Fire’ skill will be used upon that target.

 

If no target is specified, a random target will be selected amongst the group of valid targets. Otherwise, refer to the following list:

 

—————————————————————————-

 

<<nothing>>

Selects a random member of the valid target group.

 

First

Selects first member of the valid target group.

 

Highest MaxHP

Selects highest MaxHP valid target.

 

Highest HP

Selects highest HP valid target.

 

Highest HP%

Selects highest HP% valid target. *Note1

 

Highest MaxMP

Selects highest MaxMP valid target.

 

Highest MP

Selects highest MP valid target.

 

Highest MP%

Selects highest MP% valid target. *Note1

 

Highest ATK

Selects highest ATK valid target.

 

Highest DEF

Selects highest DEF valid target.

 

Highest MAT

Selects highest MAT valid target.

 

Highest MDF

Selects highest MDF valid target.

 

Highest AGI

Selects highest AGI valid target.

 

Highest LUK

Selects highest LUK valid target.

 

Highest Level

Selects highest Level valid target. *Note2

 

Lowest MaxHP

Selects lowest MaxHP valid target.

 

Lowest HP

Selects lowest HP valid target.

 

Lowest HP%

Selects lowest HP% valid target. *Note1

 

Lowest MaxMP

Selects lowest MaxMP valid target.

 

Lowest MP

Selects lowest MP valid target.

 

Lowest MP%

Selects lowest MP% valid target. *Note1

 

Lowest ATK

Selects lowest ATK valid target.

 

Lowest DEF

Selects lowest DEF valid target.

 

Lowest MAT

Selects lowest MAT valid target.

 

Lowest MDF

Selects lowest MDF valid target.

 

Lowest AGI

Selects lowest AGI valid target.

 

Lowest LUK

Selects lowest LUK valid target.

 

Lowest Level

Selects lowest Level valid target. *Note2

 

Note1: This is calculated by dividing the current HP with the MaxHP or the current MP with the MaxMP.

 

Note2: If this is used on an enemy without a proper enemy level plugin installed, this will return the player party’s highest level.
 
Last edited by a moderator:

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
Region Events

Features and How to Use




Apply common events to specified regions! Simply by stepping on a tile marked by that region will trigger a specific common event!

Plugin: http://yanfly.moe/plugins/en/YEP_RegionEvents.js

Instructions

Introduction and Instructions

 

There are 255 Regions you can mark on your map. You can set it so that when players step on those specific Regions, a Common Event will play each time they step on it. To do so, bind a Common Event’s ID to the Region number in this plugin’s parameters. It will make it so that any tile with that very specific Region ID to trigger an on-Player Touch event using the Common Event ID that you have marked for it.

 

Keep in mind that if any common event occurs during a touch input, it will clear the touch input as intended by the game engine.

 

Notetags

 

You can use this notetag inside of your maps.

 

Map Notetags:

<Region x Event: y>

If the player steps onto a tile marked by Region x, it will run the common event y. This will override the default settings marked in the editor specifically for that map.
 
Last edited by a moderator:

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
Region Restrictions

Features and How to Use




Don’t like having NPC’s wandering into places they don’t belong? Feel like the player shouldn’t have access to certain parts of the map? The Region Restrictions plugin lets you do just that by simply planting regions onto the map to prevent those nosy events from going to places they shouldn’t.

Plugin: http://yanfly.moe/plugins/en/YEP_RegionRestrictions.js

Instructions

Introduction and Instructions

 

Not everybody wants NPC’s to travel all over the place. With this plugin, you can set NPC’s to be unable to move pass tiles marked by a specified Region ID. Simply draw out the area you want to enclose NPC’s in on and they’ll be unable to move past it unless they have Through on. Likewise, there are regions that you can prevent the player from moving onto, too!

 

A new change from the RPG Maker VX Ace version of this plugin is now, there exist Regions that can allow players and events to always travel through.
 
Last edited by a moderator:

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
Save Event Locations

Features and How to Use




NPC’s often reset their map locations when a player reenters a map. However, you can change that using this plugin by having the game save their event locations!

Plugin: http://yanfly.moe/plugins/en/YEP_SaveEventLocations.js

Instructions

Introduction

 

Normally in RPG Maker MV, leaving a map and returning to it will reset the map positions of all the events. For certain types of maps, such as puzzles, you would want the map to retain their locations.

 

Notetags

 

Map Notetag:

<Save Event Locations>

This will cause the map to save every event’s location on that map. After leaving and returning to that map, the events will be reloaded onto their last saved positions in addition to the direction they were facing.

 

Event Notetag:

<Save Event Location>

This will enable this specific event to save its location on this map. After leaving and returning to the map, the event will be reloaded onto its last saved position in addition to the direction it was facing.

 

If you wish to reset the position of the Event, simply use the Event Editor and use “Set Event Location” to anchor the event’s location to the desired point as if you would normally.

 

Plugin Commands

 

Plugin Command

 

ResetAllEventLocations

This resets all the event locations on the map.
 
Last edited by a moderator:

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
Event Chase Player

Features and How to Use




Events have a typically bland movement behavior. They either stand in one place, always chase you, always run from you, move randomly, or always just move in specified patterns. This plugin lets your events suddenly switch from their norm to chasing or fleeing from the player.

Plugin: http://yanfly.moe/plugins/en/YEP_EventChasePlayer.js

Instructions

Introduction

 

This plugin allows you to make events that will chase the player or flee from the player when the player enters within range of the event or when the event sees the player.

 

How to Use

 

Insert these lines into the script call window within the Movement Route event to give an event the chase or flee flag.

 

Note: This doesn’t work with players.

 

Script Call lines

 

this._chaseRange = x

Event will chase player if reaching x range.

 

this._fleeRange = x

Event will flea from player if reaching x range.

 

this._chaseSpeed = x

Event’s movement speed when chasing.

 

this._fleeSpeed = x

Event’s movement speed when fleeing.

 

this._sightLock = x

Event will flee/chase player for x frames.

 

this._seePlayer = true

Requires the event to be able to see player.

 

this._seePlayer = false

Doesn’t require event to be able to see player.

 

this._alertBalloon = x

This balloon will play when player is seen.

 

this._alertSound = x

This sound will play when player is seen.

 

this._alertCommonEvent = x

This event will play when player is seen.

 

It is best to play this inside of a custom move route for the event at a high frequency rate. Keep in mind these effects only occur after the setting is made and ran, which means upon loading a map, if the event with a low frequency hasn’t loaded up ‘this._chaseRange = x’ in its movement queue yet, the event will not chase the player just yet.
 
Last edited by a moderator:

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
External Links

Features and How to Use




Add a way to access your website (or any) from within your game using this plugin! This plugin will also notify the player if the access attempt was also blocked.

Plugin: http://yanfly.moe/plugins/en/YEP_ExternalLinks.js

Instructions

Introduction

 

This plugin allows you to place a “link” to your home page at the title screen’s command window towards the bottom. To adjust where the link goes, change the Home Page URL in the plugin’s parameters.

 

Plugin Commands

 

If you wish to send players to other links, you can use the following plugin commands.

 

Plugin Command

 

OpenNewTab http://www.google.com/

Opens link in a new tab.

 

OpenNewWindow http://www.google.com/

Opens link in a new window.

 

Some web browsers may not differentiate these commands too much.
 
Last edited by a moderator:

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
Instant Cast

Features and How to Use




A popular request from the RPG Maker VX and Ace versions of Yanfly Engine, Instant Cast makes its way into RPG Maker MV’s plugin library with a few more features now! Instant Cast allows for skills and items to be instantly used after being selected without using up the user’s turn!

Plugin: http://yanfly.moe/plugins/en/YEP_InstantCast.js

Instructions

Introduction

 

When an action has an instant cast property, that action is used immediately on the spot without needing to wait for the turn to start. After using it, the actor can perform another action. This can add a whole new dimension of battle depth to your game as instant cast actions do not consume a turn. Note that if your actors can perform multiple actions, the instant cast will only occur if it is the very first action selected and not a subsequent one.

 

In the event an enemy uses an instant cast skill, once the enemy’s turn comes up, it will perform the instant cast skill and then immediately after, perform another skill.

 

It is highly recommended to use this plugin with another plugin that enables skill restrictions.

 

Notetags

 

The following are some notetags you can use to apply Instant Cast properties to your actions.

 

Skill and Item Notetags:

<Instant>

<Instant Cast>

Both notetags work the same. This causes this action when selected as the first action for an actor to be instantly cast. When used by an enemy, this will cause the enemy to have a follow up action without consuming the enemy’s turn.

 

Actor, Class, Enemy, Weapon, Armor, and State Notetags:

<Instant Skill: x>

<Instant Skill: x, x, x>

<Instant Skill: x to y>

This makes skill(s) x into having instant cast properties for the actor, class, enemy, or whenever the weapon or armor is equipped, or whenever the state is applied. If using ‘x to y’, it will be applied to all the skills from x to y.

 

<Instant Item: x>

<Instant Item: x, x, x>

<Instant Item: x to y>

This makes item(s) x into having instant cast properties for the actor, class, enemy, or whenever the weapon or armor is equipped, or whenever the state is applied. If using ‘x to y’, it will be applied to all the items from x to y.

 

<Cancel Instant Skill: x>

<Cancel Instant Skill: x, x, x>

<Cancel Instant Skill: x to y>

This makes skill(s) x unable to be instantly cast. This will take priority over all other properties that may influence instant casting if the actor, class, enemy, equipment, or states possess this notetag. If using ‘x to y’ then it will be applied to all skills from x to y.

 

<Cancel Instant Item: x>

<Cancel Instant Item: x, x, x>

<Cancel Instant item: x to y>

This makes item(s) x unable to be instantly cast. This will take priority over all other properties that may influence instant casting if the actor, class, enemy, equipment, or states possess this notetag. If using ‘x to y’ then it will be applied to all items from x to y.

 

Lunatic Mode – Conditional Instants

 

In the event you wish to have an action be dynamic in whether or not it is an instant cast, you can use this notetag setup:

 

Skill and Item Notetags:

<Instant Eval>

code

code

</Instant Eval>

The code can be anything. However, what you want to define is the variable ‘instant’ to be true or false. ‘instant = true’ means the action will be instant cast while ‘instant = false’ means the action will not. If the variable ‘instant’ comes to no conclusion, it will resume like normal to determine instant properties via other modifiers. It is recommended to use an if/else statement with this notetag.

 

*Note: This will take priority over <Cancel Instant> notetags. This is the only exception to the rule, but only because it can function as its own <Cancel Instant> if done in such a way.

 

Example:

<Instant Eval>

if (user.atk >= 300) instant = true;

</Instant Eval>

 

In the above example, if the user’s ATK value is equal to or greater than the value of 300, the action with this notetag will be considered to have instant cast properties.

 

Instant Cast Priority Settings

 

Since there are a lot of properties now that determine if a skill or item will have instant cast properties, here’s the priority order:

 

1. Instant Eval Notetags

If a skill/item’s <Instant Eval> notetag dictates ‘instant = true’ or ‘instant = false’, that setting will take priority over everything else.

 

2. Cancel Instant Notetags

If there’s a property that will cancel out instant casting on the actor, class, enemy, weapon, armor, or state, this will take priority over all except for anything dictated by the Instant Eval notetag.

 

3. Instant Skill/Item Granting Notetags

The actor, class, enemy, weapon, armor, and state notetags that grant Instant Cast properties will to skills and items will take priority over all except those shown above in this list.

 

4. Inherent Instant Cast Property

If nothing above is used or applied, whether or not a skill or item will have an Instant Cast property will be determined by it having <Instant Cast> in its notebox.
 
Last edited by a moderator:

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
Taunt

Features and How to Use




Taunts have become a mainstream game mechanic for many games. It’s only natural to port something like that over to RPG Maker MV! Included in this plugin are taunt effects and taunt nullification effects!

Plugin: http://yanfly.moe/plugins/en/YEP_Taunt.js

Instructions

Introduction

 

Taunts add a new mechanic to battle. Whenever a unit has a member with a taunt trait, the opposing unit’s single target attacks and skills must focus on the taunting unit. This adds aggro control for either unit and can add a new level of depth for battle. Taunts are divided up into physical, magical, and certain hit taunts which respectively aggro physical actions, magical actions, and certain hit actions.

 

If there are multiple users with taunt, the rival party can select which taunt user to attack. This is to prevent a lockdown caused by a rival unit making the battle impossible to progress.

 

Notetags

 

The following are some notetags you can use to add taunt traits to your various database objects.

 

Actor, Class, Weapon, Armor, State, Enemy Notetags:

<Physical Taunt>

<Magical Taunt>

<Certain Taunt>

These three notetags enable the database object of choice to have the respective taunt mechanic against those types of actions. Physical taunts will cause the user to aggro all physical type of actions from the rival team. The same goes for magical taunts and certain taunts of their nature.

 

<Null Physical Taunt>

<Null Magical Taunt>

<Null Certain Taunt>

This nullifies the respective taunt trait on the user (not the attacker). What this means is if a user originally has taunt through some form or means, having a null taunt trait applied will remove that taunt effect and the user will be treated as a normal target.

 

<Ignore Physical Taunt>

<Ignore Magical Taunt>

<Ignore Certain Taunt>

This allows an attacker with this trait to ignore any taunts of the respective nature and gain access to all possible targets as if no taunts are in place.

 

Skill and Item Notetag:

<Bypass Taunt>

This causes this skill/item to ignore taunts altogether and the skill/item is able to select single targets as if no taunts existed on the field.
 
Last edited by a moderator:

RyanBram

Veteran
Veteran
Joined
May 13, 2012
Messages
184
Reaction score
188
First Language
Indonesian
Primarily Uses
RMMV
Put the Motion Walk after the Move User: Return.
Dear Yanfly.

Thanks for your reply.

I tried your method and it does make change, but unfortunately it still not compatible with my custom battler. I am really sure that my battler is adjusted properly as mentioned by official F1 Manual, except that there is a mistake in manual that has been reported by me in this thread. If your script is designed base on the manual, then I hope you want to fix it.


As we can see that the default sv_battler is very ambiguous as it has many similar motion which likely just copy pasted from one frame to others (we can even see that character foot is not moving when stepping to attack which make it ambiguous between stepping and standby). If you don't mind, please use battler that attached in your PM by me several days ago. It has complete movement for every motion.

Best regards,

RyanBram
 
Last edited by a moderator:

Marcio

Roadrunner for Lighnting and Strike Detonator
Veteran
Joined
Jan 2, 2013
Messages
63
Reaction score
2
First Language
German
Primarily Uses
Hey Yanfly, thank you for your awesome scripts.

Just one little suggestion for the Corescript: In Germany the thousand seperator is a . instead of a , 

Changing it via Code isn't difficult, but could you maybe add an option so we can edit in the plugin manager right away? :)
 
Last edited by a moderator:

SilverDash

Veteran
Veteran
Joined
Oct 11, 2015
Messages
424
Reaction score
171
First Language
Dutch
Primarily Uses
RMMV
Found a possible bug for the EventChasePlayer plugin.



http://s24.postimg.org/xllhx4051/bug.png

It seems that the B-tile between the player and the enemy counts as "no visibility". Which makes no sense. It does work correctly for the black 'abyss-tiles' but not for a bit of rubble that is passable by default.

The sensor does not detect the player if the player is 'behind' or next of the sensor. The image below with a sensor with a range of 4 does not detect the player at all. I'm not sure if this is intended. I think it is.



http://s29.postimg.org/n1h9h94nn/no_detection.png
 
Last edited by a moderator:

DoctorMolotov

Adrenochrome...
Veteran
Joined
Jun 17, 2015
Messages
222
Reaction score
120
First Language
English
The amount of plugins here is just staggering. Fantastic work Yanfly, and thanks for hooking us up with all these plugins!

 

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
Dear Yanfly.

Thanks for your reply.

I tried your method and it does make change, but unfortunately it still not compatible with my custom battler. I am really sure that my battler is adjusted properly as mentioned by official F1 Manual, except that there is a mistake in manual that has been reported by me in this thread. If your script is designed base on the manual, then I hope you want to fix it.


As we can see that the default sv_battler is very ambiguous as it has many similar motion which likely just copy pasted from one frame to others (we can even see that character foot is not moving when stepping to attack which make it ambiguous between stepping and standby). If you don't mind, please use battler that attached in your PM by me several days ago. It has complete movement for every motion.

Best regards,

RyanBram
The motion names were named after what they were named in the source code:



If anything, it'd be better if you refered to the Help File found within the Action Sequences themselves as they give a clearer meaning on what to expect.

 

Found a possible bug for the EventChasePlayer plugin.



http://s24.postimg.org/xllhx4051/bug.png

It seems that the B-tile between the player and the enemy counts as "no visibility". Which makes no sense. It does work correctly for the black 'abyss-tiles' but not for a bit of rubble that is passable by default.

The sensor does not detect the player if the player is 'behind' or next of the sensor. The image below with a sensor with a range of 4 does not detect the player at all. I'm not sure if this is intended. I think it is.



http://s29.postimg.org/n1h9h94nn/no_detection.png
 

The detection is actually done by reference of how RPG Maker's source code detects if an event is within range of another event (deltaXFrom and deltaYFrom). The things are a little off center by default, however, I choose to not modify the detection method so it would not cause trouble for other plugin makers who may have things in mind with it (like pixel movement or movement effects).
 
Last edited by a moderator:

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
To make a bug report, simply report it in this thread. Chances are, I will find out about the bug in this thread than by making one in the JS Support forum.


NOTE: Read this before submitting a bug report on this thread:

  • I will only support my own plugins and code that I, myself have provided. If there are bugs with other people's plugins and/or bugs with the RPG Maker MV base code itself, I am not responsible for it. Report it in their own threads if it is a bug for their plugin or the official bug report forum if it is a bug with the RPG Maker MV base code.
  • I am not responsible for bugs created by plugins created by other makers. There will be no compatibility patches made between my plugins and non-YEP plugins. This is not because I disrespect other plugin makers. If I did, I wouldn't go so far as to maximize compatibility with my plugins when possible. The reason behind this is because of my lack of time, and I'd like to put my undivided attention to errors caused by my own plugins.
  • I am not responsible for any Lunatic Mode that you, yourself, have made. If you have created your own Lunatic Mode code that isn't running, go visit the JavaScript Support Forum instead.
  • I am not obligated to explain to you how to code in JavaScript. There are plenty places online to learn it but this thread is not that place.
  • I am not obligated to explain to you how to use all the various functions inside of my plugins. If a function added by my plugins is not listed in the Help File, it means I do not deem that function to be used for script calls. Therefore, if you choose a function outside of the ones listed in the help files to use in a script call, I am NOT responsible for it not working properly for you. No script call support will be provided for functions not listed within the help file.
  • I am not going to "fix" my plugins to work with the Exclude unused files feature that comes with RPG Maker MV. The feature exists primarily for games that don't use plugins or games that use plugins that do not reference other game files. Read about it here in detail.



    ALL bug reports MUST follow these guidelines and use this template:


    Plugin Name: (What is the name of the plugin?)


    Do you have all the latest updates for the plugins in question? (Click here for all of the latest updates and install themIf you do not have the latest updates, I will ask you to remake the bug report)


    Plugin Parameter Changes: (Mention ALL of the changes you've made to the plugin's parameters. Otherwise, I will revert every single plugin's settings to the default setting)


    Bug Explanation: (What is the bug in your own words? Keep this detailed. "It isn't working right" is not a valid bug report.)
    Are you a coder who understands the problem in code as to why this bug is caused? If so, please leave the line(s) of code in question and your suggested fix for it. Otherwise, please proceed to the following steps. If you've provided a code fix, you may omit the rest of the steps. Thank you!


    Create a Sample Project Reproducing the bug: The sample project MUST follow all of these guidelines:

    1. Create a new project. Do NOT just copy over your game project folders. This should be just a stock, empty, new RPG Maker MV project. If I do not see an empty project with Harold, Therese, Marsha, and Lucius, I will not look any further.
    2. The project's file size must be 200 MB or LESS. Remove unnecessary audio and image files until you reach that size or use MV Stripper if you need help doing so.
    3. Install -only- the affected plugins. Do NOT copy/paste them over from your project's Plugin Manager. If you're using non-YEP plugins, do NOT include them. That said, I apologize that both ATB and CTB are no longer supported by Yanfly, so if you're using them, please remove them from the project used for the bug report.
    4. Do -NOT- rename the plugins' filenames. They will not work if you do so. MAKE SURE you DO NOT change the filename from the file downloaded from the website.
    5. Make sure they're in the EXACT order listed on Yanfly.moe. The correct ordering of plugins is important. Some plugins will not work if they aren't in the right order.
    6. Do -NOT- deploy the project through File > Deployment. Do -NOT- box the sample project. If I cannot open up the sample project when I get it, you will have to redo it all.

    Error Report: (If you received an error message, press F8 when the message is received to open up the debug console, then copy/paste the entire error log and paste it here).


    Exact Steps on How to Replicate Bug: (Write out IN DETAIL, a step-by-step guide on how to replicate the bug.)


    Did you recreate the bug on the sample project? (If not, do so. MAKE SURE you are using notetags in the right place and haven't misspelled anything. DO NOT USE SAVES. I need to know exactly how to recreate the problem from start to finish. Simply giving me a save file tells me nothing.)


    Upload the sample project and share the link (ABSOLUTELY REQUIRED):
    1. Use WinZip or WinRAR to archive the project. Do -NOT- archive it multiple times.
    2. Upload it on a website like Mediafire.com or Dropbox. Do -NOT- use a website that involves timers like 4shared, RapidShare, etc. If I am time-gated from downloading the project, I will ask you to reupload it somewhere else.
    3. Post the link here. If you do not include a sample project that meets these guidelines, the bug report will be invalid. There are NO exceptions.



    WHY I NEED A CLEAN SAMPLE PROJECT FOR BUG REPORTS:


    If you're wondering why I make it an absolute requirement for sample projects containing to be made, it's because in the past, I've chased and hunted bugs that do not exist either because a user had a conflicting error with a non-Yanfly plugin, has not updated the plugins, using the plugin incorrectly, or think something is a bug when it really isn't. The amount of time I've wasted chasing these "bugs" is unfathomable as that time could have been spent developing new content. To mitigate this issue, I made it an absolute requirement for bugs to be reported in such a manner because of the following:
    1. It makes the user go through all of the troubleshooting steps to reduce the amount of user errors. If the user identifies it as a user error, then the user would also have gained troubleshooting skills, which are essential for game development. If you cannot be bothered to learn how to troubleshoot, I'm afraid RPG Maker will be giving you a whole lot more stress later on.
    2. Isolate the bugs caused by Yanfly plugins away from non-Yanfly plugins. As stated above, I do not provide support for non-Yanfly plugins due to my lack of time to create compatibility patches for non-Yanfly plugins. Having over 100+ plugins, making a compatibility patch for each one of those with every other plugin out there is absolute insanity.
    3. It shows that the user is serious about getting the bug fixed as I am. Being able to put out time to isolate a problem so it can be fixed means the user is serious about getting their game made. If you are not serious about getting a bug fixed for your game, then I have no reason to be serious about getting it fixed for you. As a user's time is important to them, my time is also important to me, and this is our mutual agreement to get things done cooperatively.



    Thank you for understanding.


    BASIC TROUBLE SHOOTING


    1. Are all your plugins up to date? If they're not, download the updated versions from here: http://yanfly.moe/yep/changelog/


    2. Did you rename any of their plugins from their default filenames? If you did, then the plugins won't work. Do NOT rename them.


    3. Did you make sure all of the plugins are placed in order as http://yanfly.moe/yep/ inside of the Plugin Manager?


    4. When you updated the plugin, did you /open up/ the plugin within the Plugin Manager? 


    You are getting the error because you updated the plugin and did not go into the plugin itself like the instructions here in the first video: http://yanfly.moe/yep/changelog/


    Why is this important? Because whenever new parameters are added to a plugin upon a new update, you have to enter the plugin in order for the Plugin Manager to add those new parameters into your game. Otherwise, you will get undefined errors and "random" crashes. Skipping that step is not optional and is very crucial to getting updated plugins to work.


    5. If you are using non-Yanfly plugins, turn off ALL of the non-Yanfly plugins to see if there are any conflicts.


    6. If you are testing your project in Battle Test and aren't seeing any changes made after updating your plugin, make sure you -save- your project. RPG Maker MV does not carry over changes to Battle Test until you save your project.


    F.A.Q. ABOUT ATB AND CTB PLUGINS


    The ATB and CTB plugins are custom battle systems that do NOT involve a turn-based system that you're used to with the default turn-based battle system (DTB). They function off of a tick-based system, which means it does not work off standard means. This also means you have to adjust either the plugin or your game to fit these means. Here are some frequently reported "issues" with the system. None of these are bugs so do not report them as bugs.
  • If ATB bars are taking too long to fill up, then change your battlers' AGI values to higher or change the plugin parameters to fit your game.
  • If ATB states are dropping in turns too quickly, this is because you didn't adjust the proper state turn settings within the Battle Engine Core to fit your game.
  • For ATB, no, I will NOT make Active Mode. It's not because I can't (I've made it before in VX's Yanfly Engine Melody). It's because RPG Maker MV's code structure for the battle system makes it more likely to break everything if it does so. If this is something you absolutely need, the Plugin Request Forum is your place to visit, if DoubleX RMMV Popularized ATB Core(which is at least compatible with my Battle Engine Core with the compatibility fix) can't meet your demands already.
  • If there is "lag" between CTB turns, this isn't because of the plugin. This is because your low AGI values is making the game go through hundreds to thousands of CTB updates per tick. Once again, either you increase the AGI values or change the plugin parameters to fit your 
  • In CTB, States "skipping" multiple turns when updating isn't a bug. It is because in between the previous battler next battler, there was a huge gap in time, enough to go through two state turn cycles. Adjust the state turn settings within the Battle Engine Core to fit your game.
  • For CTB, no, I will NOT make multiple instances of turn icons appearing for multiple actors. If you want something like that made, you can request it in the Plugin Request Forum.

If all of these issues are beyond you, then I'm afraid the ATB and CTB plugins aren't for you. As a developer, it is your responsibility to understand the plugins and systems you are using. You are not doing your players any favor by using a system that you, yourself, do not fully comprehend. I will not educate anyone how ATB and CTB systems work. My plugins work based on the ATB and CTB systems of existing Final Fantasy games with slight tweaks to fit RPG Maker MV's system. Please study them on your own accord. 
 
Last edited by a moderator:

gamerxp

Veteran
Veteran
Joined
Oct 28, 2015
Messages
30
Reaction score
5
First Language
Russian
Primarily Uses
Hi there. Great plugins you got there, really.

Got one question about your Battle AI Core. Does it use Target Rate battler parameter? I used it to make character untargetable by single-target attacks by setting it to 0, but when I added some advanced AI - enemies started to target that character all the time (since it corresponded to the criteria)
 

SilverDash

Veteran
Veteran
Joined
Oct 11, 2015
Messages
424
Reaction score
171
First Language
Dutch
Primarily Uses
RMMV
<removed> found it.
 
Last edited by a moderator:

Yanfly

Veteran
Joined
Mar 15, 2012
Messages
1,723
Reaction score
2,564
Hi there. Great plugins you got there, really.

Got one question about your Battle AI Core. Does it use Target Rate battler parameter? I used it to make character untargetable by single-target attacks by setting it to 0, but when I added some advanced AI - enemies started to target that character all the time (since it corresponded to the criteria)
If an AI makes the decision for choosing an action from within the priority list, they will choose targets that match their scope, regardless of the target's target rate. If an AI makes a decision for choosing an action from outside of the priority list (ie. within the editor's action pool), it will correspond to the the target rate.
 
Status
Not open for further replies.

Users Who Are Viewing This Thread (Users: 0, Guests: 6)

Latest Threads

Latest Profile Posts

if you want learn free cool stuff for game dev .
Your jumping works great, self. Now onward! Let's add to some of those dungeon tilesets that are looking a tad sparse.
Gotta vent a minute: "Move routes" have been unintuitive and clunky since the 90's and I absolutely cannot believe there is no built-in functionality to direct an event to an x, y coordinate. Thank you for coming to my TED talk.
I watched a local Amish community hold a cart and buggy presidential rally that passed by my worksite this afternoon and it really got me thinking...how do the Amish keep up with national news?
trying to wrap up the boat/ship/castaway tilesets with a great galleon - no promises

Forum statistics

Threads
103,106
Messages
997,373
Members
134,580
Latest member
RetroKevin
Top