OmniTool [The Ultimate Multitool Plugin] [1.8-1.21.4] icon

OmniTool [The Ultimate Multitool Plugin] [1.8-1.21.4] -----

The perfect plugin to give your players the ultimate tool!



My project-1.png
OmniTool is a FREE multitool plugin for your server!


features.png

This plugin allows players to have a tool that will change to the most efficient tool to complete any action.
Mining: Pickaxe
Excavating: Shovel
Woodcutting: Axe
Farming: Hoe
Leaves: Shears
PvP/PvE/Cobwebs/Bamboo: Sword

Commands:
/omni gui (player)
/omni <Player> <efficiency> <unbreaking> <fortune> <sharpness> (displayname)
/crystal <player> (success[default=100])
/extractor <player>

<> - Required
( ) - Optional


You are also able to change the lore for the tool and crystals in the config.yml

Permissions:
omni.tool
omni.crystal
omni.extractor
omni.reload
*

CustomModelData (1.14+)
CustomModelData is now supported by OmniTool. You can enable this by updating to the newest version of the config (make sure you take a backup first), toggling "tool.useCustomModelData", and then editing the section under "tool.customModelData", where you can add different customModelData tags for each tier of tool: wood, stone, etc... Anything else having to do with CustomModelData, ie resource packs, needs to be done how you would normally do that. You can also see the CustomModelData tag for the item if you enable the "debug-mode" field in the config, and executing "/nbtdebug". You can use this to verify that each of your tools are being imported properly in your custom resource pack. If you decide to change your CustomModelData after initially setting it, all existing OmniTools will update to the new data the next time they are updated, whether that be by breaking a block, or hitting a player/entity.

Developer API
- isOmniTool(ItemStack item) - determine whether an item is an omni tool or not, returns boolean
- isOmniCrystal(ItemStack item) - determine whether an item is an omni crystal or not, returns boolean
- isOmniExtractor(ItemStack item) - determine whether an item is an omni extractor or not, returns boolean
- addBlockToTable(ToolType type, Material material) - did I miss a block you wanted to be added to a certain tool? add it here if you want it to be different than the base plugins values
- removeBlockFromTable(ToolType type, Material material) - remove a block from a BlockTable to create a more customized experience with the supported blocks
- openOmniToolBuilder(Player player) - Opens the OmniBuilder for a player that is logged into the server
- getOmniCrystal(int success) - returns an OmniCrystal with a given success rate
- getOmniExtractor() - returns an OmniExtractor
- OmniCrystalApplyEvent - event called when players apply an OmniCrystal onto an item
- OmniExtractorApplyEvent - event called when players apply an OmniExtractor onto an OmniTool
- OmniToolChangeEvent - event called when an OmniTool changes states​


comingsoon.png
Coming Soon (05/06/2025):
-Drops go to inventory Automatically
-In game GUI for BlockTables
-In game GUI for plugin configuration
-Extensive Developer API
-(Request features by DMing me or messaging me on discord @subnet.mask)

Config

This plugin now fully runs without external dependencies! This significantly increases the performance of the plugin and creates a much more optimized solution.

Bugs:
If you encounter any bugs, do not leave a review with the bug, please send me a PM on this site, or a DM on discord and I will get the bug fixed and push an update.​

Please DM me on discord if your server uses this plugin, and I will advertise it here! (@subnet.mask)
Resource Information
Author:
----------
Total Downloads: 3,846
First Release: Jun 24, 2020
Last Update: May 6, 2025
Category: ---------------
All-Time Rating:
11 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings