Native Minecraft Version:
Legacy (< 1.13)
Tested Minecraft Versions:
NOTICE -
IF PLAYERS CANT OPEN THE HOPPER GUI, MAKE SURE THEY HAVE THE PERMISSION! CHECK THE PERMISSIONS SECTION BELOW!
&
READ THE FAQ BEFORE ASKING QUESTIONS!
ABOUT
Allow filters for your server's hoppers! This will allow players to either prevent items from entering hoppers, delete items entirely, or only allowing certain items to pass through a hopper system.
Similarly, you can link hoppers to directly transfer their items to containers such as chests, trapped chests, and ender chests.
DONT LIKE THE GUI DESIGN? DON'T WORRY, YOU CAN CHANGE IT!
FEATURES
✔ Filter per-hopper
✔ Gui support
✔ Gui customizability
✔ AutoUpdate checker
✔ Anti-dupe proof
✔ Detects Multiverse & Multiworld to load worlds before hopper checks
✔ Choose to load chunks if they're unloaded during a hopper transfer
✔ No-lag hopper cleanup
✔ Link your hoppers to containers: chests, trapped chests, and ender chests
✔ Offline player support for ender chests (NEW FEATURE)
✔ Fast & optimized data saving & loading
✔ Multi-version support (1.8-1.14)
✔ Fast chunk scanning for hoppers (8.5x faster than Bukkit's regular implementation)
✔ Stop items from going into hoppers (Pressing Q)
✔ Efficiently made - No nasty reflection that will slow down the program
✔ Debugging capabilities to track & troubleshoot issues
✔ Custom message customization
✔ Auto-Updating configuration and messages file
✔ Easy to setup: install -> profit!
✔ Friendly developer API
✔ Item filter menu that lets you specify which items are in the filter
✔ Clean and friendly console formatting & interface
✔ Drop items in the filter if the hopper is destroyed
✔ Smart inventory transferring to prevent item-loss between transfers
✔ Various filters to select from
✔ Smart & efficient hopper data storage. Frees up RAM when possible
✔ Constantly updated with optimizations & kept up-to-date with latest MC software
MENU (HOW TO ACCESS)
Shift + Right Click on the hopper with an empty hand to open the custom Hopper Net GUI
FILTERS
CONTAINERS
There are currently 3 types of containers you can link to a hopper. When a container is linked, items transferred into the hopper will be automatically transferred into the linked container.
Possible containers:
COMMANDS
PERMISSIONS
CONFIGURATION
Code (YAML):
[/SIZE]settings:
hopper:
linking:
enabled: true
load-chunk-if-unloaded: false
hopperGui:
title: 'Hopper Net'
rows: 5
cosmeticItems:
border_1:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 1
border_2:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 2
border_3:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 3
border_4:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 4
border_5:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 6
border_6:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 7
border_7:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 8
border_8:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 9
border_9:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 10
border_10:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 18
border_11:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 19
border_12:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 27
border_13:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 28
border_14:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 36
border_15:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 37
border_16:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 38
border_17:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 39
border_18:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 40
border_19:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 41
border_20:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 42
border_21:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 43
border_22:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 44
border_23:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 45
info:
material: BOOK
data: 0
amount: 1
meta:
displayName: '&6&lHopper Net'
lore:
- '&eFilter items coming into the hopper!'
slot: 5
settingItems:
applicables:
material: ENDER_CHEST
data: 0
amount: 1
meta:
displayName: '&6&lFiltered Items'
lore:
- '&ePlace items to apply to your filter in here.'
slot: 20
filterType:
material: COMPASS
data: 0
amount: 1
meta:
displayName: '&6&lFilter Type'
lore:
- '&eClick to change the filter type!'
- ' '
- '&e&nCurrent Type:&f&l %filter%'
slot: 22
linkables:
material: REDSTONE_TORCH_ON
data: 0
amount: 1
meta:
displayName: '&6&lLink a Container'
lore:
- '&a&lLEFT-CLICK &eto link a container!'
- '&c&lRIGHT-CLICK &eto unlink from container!'
- ' '
- '&e&nLinked:&f&l %linked%'
- ' '
- '&e&nCoordinates:&f %linked_x%&7,&f %linked_y%&7,&f %linked_z%'
- '&e&nType:&f %linked_block%'
slot: 24
filterGui:
title: 'Applicable Items'
rows: 5
debug: false
MESSAGES
Code (YAML):
prefix: '&6[HopperNets]'
commands:
no-permission: '&cYou do not have permission.'
reload:
success: '%prefix% &eConfiguration has been reloaded.'
debugging:
enabled: '%prefix% &eDebugging is now enabled.'
disabled: '%prefix% &eDebugging is now disabled.'
usage:
- '&f&m--------------------------------------------------'
- '&6&lHopperNets'
- ' '
- '&e/hoppernets reload &fReloads the plugin data.'
- '&e/hoppernets debug &fToggle debugging for plugin systems.'
- '&f&m--------------------------------------------------'
hoppers:
filters:
names:
global: '&a&lGlobal'
blacklist: '&0&lBlacklist'
whitelist: '&f&lWhitelist'
void: '&8&lVoid'
linkage:
container:
none: '&cThere is no container linked.'
unlinked: '&cYou have unlinked a container.'
linked: '&aYou have linked a container.'
select: '%prefix% &eRight click a container within the next 30 seconds to link it to the hopper.'
invalid: '&cThis is not a valid container.'
API
To grab the API instance, you will need to access it through Bukkit's Services Manager.
Code (Java):
RegisteredServiceProvider<HopperNetsApi> rsp = Bukkit.getServicesManager().getRegistration(HopperNetsApi.class);
HopperNetsApi hopperNetsApi = rsp.getProvider();
OTHER
FAQ
Legacy (< 1.13)
Tested Minecraft Versions:
- 1.8
- 1.9
- 1.10
- 1.12
- 1.13
- 1.14
NOTICE -
IF PLAYERS CANT OPEN THE HOPPER GUI, MAKE SURE THEY HAVE THE PERMISSION! CHECK THE PERMISSIONS SECTION BELOW!
&
READ THE FAQ BEFORE ASKING QUESTIONS!
ABOUT
Allow filters for your server's hoppers! This will allow players to either prevent items from entering hoppers, delete items entirely, or only allowing certain items to pass through a hopper system.
Similarly, you can link hoppers to directly transfer their items to containers such as chests, trapped chests, and ender chests.
DONT LIKE THE GUI DESIGN? DON'T WORRY, YOU CAN CHANGE IT!
FEATURES
✔ Filter per-hopper
✔ Gui support
✔ Gui customizability
✔ AutoUpdate checker
✔ Anti-dupe proof
✔ Detects Multiverse & Multiworld to load worlds before hopper checks
✔ Choose to load chunks if they're unloaded during a hopper transfer
✔ No-lag hopper cleanup
✔ Link your hoppers to containers: chests, trapped chests, and ender chests
✔ Offline player support for ender chests (NEW FEATURE)
✔ Fast & optimized data saving & loading
✔ Multi-version support (1.8-1.14)
✔ Fast chunk scanning for hoppers (8.5x faster than Bukkit's regular implementation)
✔ Stop items from going into hoppers (Pressing Q)
✔ Efficiently made - No nasty reflection that will slow down the program
✔ Debugging capabilities to track & troubleshoot issues
✔ Custom message customization
✔ Auto-Updating configuration and messages file
✔ Easy to setup: install -> profit!
✔ Friendly developer API
✔ Item filter menu that lets you specify which items are in the filter
✔ Clean and friendly console formatting & interface
✔ Drop items in the filter if the hopper is destroyed
✔ Smart inventory transferring to prevent item-loss between transfers
✔ Various filters to select from
✔ Smart & efficient hopper data storage. Frees up RAM when possible
✔ Constantly updated with optimizations & kept up-to-date with latest MC software
MENU (HOW TO ACCESS)
Shift + Right Click on the hopper with an empty hand to open the custom Hopper Net GUI
FILTERS
- Global Filter - This will allow all kinds of items to pass
- Void Filter - This filter will delete any items that come into the hopper
- Blacklist Filter - This will disallow specific items to pass into the hopper, they will either remain outside of the hopper or in the source inventory
- Whitelist Filter - This will allow specific items to pass into the hopper, everything else will either remain outside of the hopper or in the source inventory
CONTAINERS
There are currently 3 types of containers you can link to a hopper. When a container is linked, items transferred into the hopper will be automatically transferred into the linked container.
Possible containers:
- Chest
- Trapped Chest
- Ender Chest
COMMANDS
- /hoppernets reload - Reloads the configuration & messages file.
- /hoppernets debug - Toggles plugin debugging. This is mainly for troubleshooting
PERMISSIONS
- hoppernets.command - Allows players to run /hoppernets
- hoppernets.update - Receive notifications about new versions of the plugin that are available
- hoppernets.use - Allow the opening the GUI by sneaking and right clicking with an empty hand
CONFIGURATION
Code (YAML):
[/SIZE]settings:
hopper:
linking:
enabled: true
load-chunk-if-unloaded: false
hopperGui:
title: 'Hopper Net'
rows: 5
cosmeticItems:
border_1:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 1
border_2:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 2
border_3:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 3
border_4:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 4
border_5:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 6
border_6:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 7
border_7:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 8
border_8:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 9
border_9:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 10
border_10:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 18
border_11:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 19
border_12:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 27
border_13:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 28
border_14:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 36
border_15:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 37
border_16:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 38
border_17:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 39
border_18:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 40
border_19:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 41
border_20:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 42
border_21:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 43
border_22:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 44
border_23:
material: STAINED_GLASS_PANE
data: 15
amount: 1
meta:
displayName: ' '
slot: 45
info:
material: BOOK
data: 0
amount: 1
meta:
displayName: '&6&lHopper Net'
lore:
- '&eFilter items coming into the hopper!'
slot: 5
settingItems:
applicables:
material: ENDER_CHEST
data: 0
amount: 1
meta:
displayName: '&6&lFiltered Items'
lore:
- '&ePlace items to apply to your filter in here.'
slot: 20
filterType:
material: COMPASS
data: 0
amount: 1
meta:
displayName: '&6&lFilter Type'
lore:
- '&eClick to change the filter type!'
- ' '
- '&e&nCurrent Type:&f&l %filter%'
slot: 22
linkables:
material: REDSTONE_TORCH_ON
data: 0
amount: 1
meta:
displayName: '&6&lLink a Container'
lore:
- '&a&lLEFT-CLICK &eto link a container!'
- '&c&lRIGHT-CLICK &eto unlink from container!'
- ' '
- '&e&nLinked:&f&l %linked%'
- ' '
- '&e&nCoordinates:&f %linked_x%&7,&f %linked_y%&7,&f %linked_z%'
- '&e&nType:&f %linked_block%'
slot: 24
filterGui:
title: 'Applicable Items'
rows: 5
debug: false
MESSAGES
Code (YAML):
prefix: '&6[HopperNets]'
commands:
no-permission: '&cYou do not have permission.'
reload:
success: '%prefix% &eConfiguration has been reloaded.'
debugging:
enabled: '%prefix% &eDebugging is now enabled.'
disabled: '%prefix% &eDebugging is now disabled.'
usage:
- '&f&m--------------------------------------------------'
- '&6&lHopperNets'
- ' '
- '&e/hoppernets reload &fReloads the plugin data.'
- '&e/hoppernets debug &fToggle debugging for plugin systems.'
- '&f&m--------------------------------------------------'
hoppers:
filters:
names:
global: '&a&lGlobal'
blacklist: '&0&lBlacklist'
whitelist: '&f&lWhitelist'
void: '&8&lVoid'
linkage:
container:
none: '&cThere is no container linked.'
unlinked: '&cYou have unlinked a container.'
linked: '&aYou have linked a container.'
select: '%prefix% &eRight click a container within the next 30 seconds to link it to the hopper.'
invalid: '&cThis is not a valid container.'
API
To grab the API instance, you will need to access it through Bukkit's Services Manager.
Code (Java):
RegisteredServiceProvider<HopperNetsApi> rsp = Bukkit.getServicesManager().getRegistration(HopperNetsApi.class);
HopperNetsApi hopperNetsApi = rsp.getProvider();
OTHER
- Questions or Concerns? PM me with it!
FAQ
- How do I disable a GUI item such as the hopper linking item? To disable any item in the GUI, set the slot in the config to -1.
- Why can't my players open the GUI? Make sure they have the right permission! Check the permissions section above!