[CGMZ] Conditional Drops (Patreon)
Downloads
Content
Allow enemies to drop certain items based on conditions being met, such as a switch being ON.
! SEE BOTTOM OF POST FOR UPDATES !
Hi all,
Conditional Drops allows you to set up additional drop items attached to enemies via the plugin manager. These drops can have conditions attached to them before they can be included in the drop.
Conditions you can currently set up include:
Switches
Variables
Party has item
Actor is in party
Actor is in battle
Troop ID
Map ID
Weapon is equipped by someone
Armor is equipped by someone
Defeated By Skill
Quest status from [CGMZ] Quest System
[CGMZ] Professions level
Custom JS
Would you like to see any conditions for a drop not mentioned above? Let me know in the comments or via the #suggestions channel on my Discord server!
Happy RPG Making!
Alpha Update 2/27/2023: This plugin has been updated to add troop ID to the possible conditions of a drop. Have an enemy that you want to drop something, but only if they are in one troop and not another troop? Now you can!
This update adds the map id condition, so you can now have drops that are only possible when the battle begins from specific maps.
This update also added an integration with [CGMZ] Currency System, so you can now have conditional custom currency drops. Your previous currency drops should still function as expected. As a reminder, default currency drops need to be marked as default for their id even if not using the currency system.
This update also makes the plugin warn instead of crash when it runs into invalid JSON in plugin parameters. This is a result of the parameter being set up incorrectly, so these warnings are still important to fix. Usually this occurs when you delete an array or object parameter, but could have other causes.
This version adds an integration with [CGMZ] Drop Tables so you can now have conditional drop tables! Set up a drop table id in your conditional drop, and then it will award something from the drop table if the conditions are met just like any other conditional drop.
For this integration, only items, weapons, or armors are supported. Conditional currency or exp drops are not part of this integration. Make sure any drop tables you set up for use with this plugin do not include currency drops. Drop table drops will use the amount set by the drop table, not the amount set within this plugin.
This version adds the condition of equipped weapons or armors. This is a party-wide check and can allow you to ensure the player has at least one actor using a specific weapon or armor before an item will drop.
This update also added the battle actor condition, which is similar to the regular actor condition except that the actor must be participating in battle.
This version adds a condition for defeating the enemy with a specific skill id to the drops. Perhaps you want to make your actors defeat a cow enemy with a fire spell before it will drop the steak item, for example. You can now do that. Each drop can have multiple possible skills that all lead to the drop being possible, so you can make it work for all fire spells in your game if desired.
This version adds an integration with [CGMZ] Quest System so you can make conditional drops based on quest status. Available options are completed quests, failed quests, and in progress quests. This means you can make drops that only drop after a quest is completed (or failed). It also means you can make drops that only drop while a quest is in progress. To use the integration, you simply type your quest name into a list in the drop conditions. It is a list of quests, so you can make it require multiple quests if desired.
This update also adds a Note parameter to your drops. This is not used by the plugin, and meant for your own note keeping.
This version adds an integration with [CGMZ] Professions to allow you to have drops with profession level requirements. This could be used to make a skill like Slayer where the player can obtain better drops from monsters the higher level they are in the skill.
This update also adds a JavaScript condition which allows you to make any drop condition as long as you can code it in JS. Your JS conditions should return either true or false. If left blank, it will be counted as true and pass the condition check.