A plugin adaptation of the Items Filter datapack, created with the help of an AI to fix duplication bugs encountered with GriefPrevention.
An alternative plugin version of KawaMood's original Items Filter datapack.
If you are using GriefPrevention, WorldGuard, or Towny on your server, you might have encountered duplication bugs or land-claim issues with the original datapack. This plugin completely rewrites the system's mechanics to make it fully compatible with your usual region protections.
CONTINUE (green chain), BLOCK (red hold), or DROP (blue drop under the filter).plugins/ItemsFilter/Message/.plugins folder and restart your server.This project is based on the original concept of the "Items Filter" datapack created by KawaMood.
To convert this concept into a plugin and fix the region-protection bugs, this project was developed with the assistance of an AI.
.jar file.plugins folder.The plugin functions exactly like the original datapack. To learn how to use it and explore all the filtering possibilities, please refer to the video and documentation created by KawaMood:
Main Command: /itemsfilter (aliases: /if, /itemfilter)
true)| Command | Description | Permission |
|---|---|---|
/if help |
Displays the full help guide with commands, recipe, and chunk-based model | itemsfilter.help |
/if recipe |
Gives a 4-page recipe book (readable black text) | itemsfilter.command.recipe |
op)| Command | Description | Permission |
|---|---|---|
/if info |
Target a filter → displays its mode (Lax/Strict), owner, position, and transferred items counter | itemsfilter.command.info |
/if debug |
Target a filter → full diagnostic: counters, live preview of inventories, remaining cooldown | itemsfilter.command.info |
/if give [player] |
Gives an Items Filter. If no player is specified, gives it to yourself | itemsfilter.command.give |
/if cooldown <ticks> |
Sets the transfer cooldown in ticks (default 4 = matching datapack speed) | itemsfilter.command.cooldown |
/if list |
Lists all loaded filters in the current world (or all worlds from the console) | itemsfilter.command.list |
/if reload |
Reloads config + restarts tick task + respawns missing display entities | itemsfilter.command.reload |
| Command | Description | Permission |
|---|---|---|
/if chunkload on |
Enables keep-chunks-loaded (filters will keep their chunks loaded) |
itemsfilter.command.chunkload |
/if chunkload off |
Disables keep-chunks-loaded and removes all active chunk tickets |
itemsfilter.command.chunkload |
/if chunkload list |
Lists all chunks currently kept loaded by the plugin | itemsfilter.command.chunkload |
/if chunkload status |
Displays tick config status and active tickets count | itemsfilter.command.chunkload |
/if chunkload add <world> <chunkX> <chunkZ> |
Manually adds a chunk ticket | itemsfilter.command.chunkload |
/if chunkload remove <world> <chunkX> <chunkZ> |
Manually removes a chunk ticket | itemsfilter.command.chunkload |
| Command | Description | Permission |
|---|---|---|
/if uninstall |
Displays a confirmation message with the total number of filters to delete | itemsfilter.command.uninstall |
/if uninstall confirm |
Confirms and executes total deletion (filters + entities + configs) | itemsfilter.command.uninstall |
Note on
/if uninstall confirm: Forces synchronous loading of chunks to clean up all display/interaction entities, clearsfilters.yml, and removes active tickets. Chiseled Deepslate blocks remain on the map to be broken manually.
itemsfilter.use (default: true) - Allows placing an Items Filter.itemsfilter.craft (default: true) - Allows crafting an Items Filter.itemsfilter.break (default: true) - Allows breaking an Items Filter (GriefPrevention/WorldGuard/Towny remain prioritized).itemsfilter.overflow (default: true) - Allows players to interact with the per-filter overflow GUI.================================================================================
Une version Plugin de Item Filter.
Si vous utilisez GriefPrevention, WorldGuard, ou Towny sur votre serveur, vous avez peut-être rencontré des bugs de duplication avec la version originale. Ce plugin remplace le fonctionnement du système pour le rendre compatible avec vos protections habituelles.
CONTINUE (vert, l'item continue dans la ligne), BLOCK (rouge, l'item se bloque), ou DROP (bleu, l'item tombe sous le filtre).plugins/ItemsFilter/Message/.plugins et redémarrez votre serveur.Ce projet est basé sur l'idée originale du datapack "Items Filter" créé par KawaMood.
Pour transformer ce concept en plugin et corriger les bugs rencontrés, ce projet a été réalisé avec l'aide d'une IA.
.jar.plugins de votre serveur.Le fonctionnement du plugin est identique au datapack original. Pour apprendre à l'utiliser et découvrir toutes les possibilités de filtrage, vous pouvez vous référer à la vidéo et à la documentation créées par KawaMood :
Commande principale : /itemsfilter (alias : /if, /itemfilter)
true)| Commande | Description | Permission |
|---|---|---|
/if help |
Affiche l'aide complète (FR) avec les commandes, la recette, et le modèle chunk-based | itemsfilter.help |
/if recipe |
Donne un livre de recette de 4 pages (texte noir lisible) | itemsfilter.command.recipe |
op)| Commande | Description | Permission |
|---|---|---|
/if info |
Vise un filtre → affiche son mode (Lax/Strict), owner, position, date de pose, et compteur d'items | itemsfilter.command.info |
/if debug |
Vise un filtre → diagnostic complet (compteurs, aperçu live des inventaires, cooldown restant) | itemsfilter.command.info |
/if give [joueur] |
Donne un Items Filter. Si aucun joueur n'est spécifié, se donne à soi-même | itemsfilter.command.give |
/if cooldown <ticks> |
Définit le cooldown de transfert en ticks (défaut 4 = vitesse identique au datapack) | itemsfilter.command.cooldown |
/if list |
Liste tous les filtres chargés du monde courant (ou tous les mondes depuis la console) | itemsfilter.command.list |
/if reload |
Recharge la config + redémarre le tick task + respawn les display entities manquantes | itemsfilter.command.reload |
| Commande | Description | Permission |
|---|---|---|
/if chunkload on |
Active keep-chunks-loaded (les filtres maintiendront leurs chunks chargés) |
itemsfilter.command.chunkload |
/if chunkload off |
Désactive keep-chunks-loaded et retire tous les tickets actifs |
itemsfilter.command.chunkload |
/if chunkload list |
Liste tous les chunks actuellement maintenus chargés par le plugin | itemsfilter.command.chunkload |
/if chunkload status |
Affiche la config tick (keep-chunks-loaded, nombre de tickets actifs, etc.) |
itemsfilter.command.chunkload |
/if chunkload add <world> <chunkX> <chunkZ> |
Ajoute manuellement un chunk ticket | itemsfilter.command.chunkload |
/if chunkload remove <world> <chunkX> <chunkZ> |
Retire un chunk ticket | itemsfilter.command.chunkload |
| Commande | Description | Permission |
|---|---|---|
/if uninstall |
Affiche un message de confirmation avec le nombre de filtres à supprimer | itemsfilter.command.uninstall |
/if uninstall confirm |
Confirme et exécute la suppression totale (filtres + entités + filtres.yml + tickets) | itemsfilter.command.uninstall |
Comportement de
/if uninstall confirm: Force le chargement synchrone de tous les chunks avec des filtres pour nettoyer proprement les entités orphelines, vide le fichierfilters.ymlet retire les tickets de chunks. Les blocs Chiseled Deepslate restent sur la map et doivent être cassés manuellement.
itemsfilter.use (default: true) - Permet de placer un Items Filter.itemsfilter.craft (default: true) - Permet de crafter un Items Filter.itemsfilter.break (default: true) - Permet de casser un Items Filter (GriefPrevention/WorldGuard/Towny restent prioritaires).itemsfilter.overflow (default: true) - Permet aux joueurs d'ouvrir et d'interagir avec l'interface d'overflow.