Imagine that you have to make a simple GUI inventory for simple functionality. What's your plan? First choice will be downloading GUI providing plugins and change the .yml files. Unfortunately, these plugins can do whatever it is already programmed in the plugin. Then, what's the next option to overcome that problem? You probably now have to create your own plugin to support GUI. But how much code and time you have to spend on making just simple GUI?

With Trigger Reactor, you don't have to do such non-sense:

Lets say you are creating a very very simple plugin that will do the GUI work. First thing you need is making a plugin and write your plugin.yml, you will need to create your main class extending JavaPlugin, you have to create inventory with Bukkit.createInventory(), create item with new ItemStack(), change title and lores, etc. blah blah just too much work!

But with Trigger Reactor, it can be very simplified. First you create Inventory Trigger, change title and lores as you want with /trg misc command, put it in the inventory with the /trg i <name> item command, and finally, the code:

IF slot == 0
#SERVER "lobby"
#BROADCAST "&8[&6Server&8]&7 &6"+player.getName()+" &7-> &6Lobby"

How easy? Now all you need to do is just add up more items and add some similar codes below the IF statement there.

You can also create trigger for walking on the block, clicking the block, command, enter/exit area, and all of the Bukkit Events, Custom Permissions, and Third party plugin's Event! (I'm not lying. You really can hook up Events from plugins like Factions, MCMMO, etc. and do whatever you want. I personally am giving Guild experience based on Guild members' portion of MCMMO experience)

Have Questions?

You may ask questions in discord



Common Features:

  • Multi-threading capability (No lagging guaranteed)
  • Dynamic variables
  • You can either choose to use placeholder or directly access the BukkitAPI. Instead of $playername, player.getName() will do the exact same thing for you. Or any other methods you can find in
  • Commonly used plugins support. For example, you can use PlaceholderAPI by #MESSAGE placeholder.parse("Hi %player%), or use Vault by #MESSAGE "You have "+vault.balance(player), or any other plugins that is supported by plugin. If it's not predefined, you can use plugin("PluginName") to directly access the plugin you want to support.
  • Connect multiple plugins together. Even two plugins doesn't know each other, TriggerReactor can be the bridge between them. For example, you may gather player information from Jobs-Reborn plugin and use it for other plugins. Perhaps prevent some players to enter the Worldguard region only if they have specific 'jobs' of Jobs-Reborn plugin. There are so much application possible with TriggerReactor.


/trg - type it to see more commands


triggerreactor.admin - give access to all of the /trg commands, and TriggerReactor tools.


There are some tool to make your life easier

1. Bone : inspection tool. Left click with it to delete the trigger at the clicked location or Right click to see the brief information

2. Shear: cut tool. Right click to cut a trigger at clicked location and Left click to paste it on another place.

3. Paper: copy tool. Right click to copy a trigger at clicked location and Left click to paste it on another place.

A lot of Information You Must See:

Can be found in Wiki

Bug report/Suggestions:

Please report/suggest it on the Issue tab of github site. (will be greatly appreciated.)


overload : $50 - Surprisingly huge amount of money. Thank you!


  • To post a comment, please or register a new account.
Posts Quoted:
Clear All Quotes

About This Project



Recent Files