Tool Switcher
Tool Switcher is a simple utility mod that enables you to automatically switch tools depending on what block you are trying to break.
Features
- Automatically selects the optimal tool for mining, taking into account factors such as efficiency.
- Switches to tools outside the hotbar by temporarily swapping them into your current slot.
- Disables itself while you are sneaking, if enabled.
- Optionally prevents switching if the current tool has Silk Touch or Fortune.
- Fully customisable list of disabled blocks and tools.
- Server-side disabling, just install the mod onto the server to stop clients from using it on your server.
Config
All configuration options can be edited in the config file at config/tool-switcher.toml or through Mod Menu & McQoy (recommended).
General Settings
| Option | Type | Default | Description |
|---|---|---|---|
enabled |
true/false | true |
Enable/disable the mod. Can be toggled with a keybind (default: Period). |
showMessage |
true/false | true |
Whether to show a message on the screen when keybind is pressed. |
Behaviour Settings
| Option | Type | Default | Description |
|---|---|---|---|
sneaking |
true/false | true |
Whether Tool Switcher turns off while sneaking. |
goBack |
true/false | true |
Whether to restore the previous tool/slot after releasing the attack key. |
respectSilkFortune |
true/false | true |
Whether to not switch tools if you are holding a silk touch/fortune tool. |
ignoreInventory |
true/false | false |
Whether to ignore tools in the inventory and only swap with hotbar ones. |
delay |
Integer | 0 |
Delay before swapping back or again after the block is finished breaking. |
Filter Settings
| Option | Type | Default | Description |
|---|---|---|---|
disabledToolsMode |
String | "BLACKLIST" |
How disabledTools is applied: BLACKLIST, WHITELIST, or DISABLED. |
disabledTools |
String Array | [] |
Tools that don't get switched to. Supports tags prefixed with #. |
disabledBlocksMode |
String | "BLACKLIST" |
How disabledBlocks is applied: BLACKLIST, WHITELIST, or DISABLED. |
disabledBlocks |
String Array | [] |
Blocks that don't trigger a switch. Supports tags prefixed with #. |
customBindings |
Table | {} |
Maps block IDs or tags to item IDs or tags to select a specific tool for a specific block. |
How to Configure Filters
Tools and blocks must be specified using Minecraft's identifier format in the TOML array syntax.
Example config file (config/tool-switcher.toml):
# Enable or disable the mod. Can be toggled with a keybind.
enabled = true
# Whether Tool Switcher turns off while sneaking
sneaking = true
# Whether to show a message on the screen when keybind is pressed
showMessage = true
# Whether to switch back to the slot you were on before mining
goBack = true
# Whether to not switch tools if you are holding a Silk Touch or Fortune Tool
respectSilkFortune = true
# Whether to ignore tools in the inventory and only swap with hotbar ones.
ignoreInventory = false
# Delay before swapping back/again after block break finished (in ticks (seconds*20))
delay = 0
# How the disabledTools field should function: BLACKLIST, WHITELIST, or DISABLED
disabledToolsMode = "BLACKLIST"
# Tools that don't get switched to
disabledTools = ["minecraft:diamond_pickaxe"]
# How the disabledBlocks field should function: BLACKLIST, WHITELIST, or DISABLED
disabledBlocksMode = "BLACKLIST"
# Blocks that don't trigger a switch
disabledBlocks = ["minecraft:dirt"]
# Optional custom block-to-tool mappings; IDs and tags are supported
[customBindings]
"#minecraft:planks" = "minecraft:diamond_hoe"
Format:
- Each entry must be in quotes
- Entries are separated by commas
- Use Minecraft's identifier format:
"namespace:id" - Works with modded items:
"create:wrench","botania:mana_tablet" - Works with tags:
"#minecraft:shovels"
Common Tool IDs:
minecraft:wooden_pickaxe,minecraft:stone_pickaxe,minecraft:iron_pickaxeminecraft:wooden_shovel,minecraft:stone_shovel,minecraft:iron_shovelminecraft:wooden_axe,minecraft:stone_axe,minecraft:iron_axeminecraft:golden_pickaxe,minecraft:golden_shovel,minecraft:golden_axe
Common Block IDs:
minecraft:diamond_ore,minecraft:deepslate_diamond_oreminecraft:ancient_debris,minecraft:gilded_blackstoneminecraft:spawner,minecraft:end_portal_frame
How It Works
Hotbar Tools: If the best tool is in your hotbar, Tool Switcher selects that slot.
Inventory Tools: If the best tool is outside your hotbar, Tool Switcher temporarily swaps it into your current slot. When you release the attack key (or finish mining), it swaps back automatically (if goBack is enabled).
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 14d ago | 1 | ||||
| 15d ago | 1 | ||||
| 25d ago | 1 | ||||
| 1mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| 5mo ago | 1 | ||||
| 6mo ago | 1 | ||||
| 7mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 8mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 9mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| 11mo ago | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 |
- Fixed the mod triggering when other players mined blocks
- Fixed shear-mineable blocks not working on non-fabric/non-neoforge servers
- Fixed swapping to previous tool slot when chaining mining blocks.
- Changed the internal config format to allow editing of the blacklists in-game, and allow them to be used as whitelists.
- Added custom bindings to map items to blocks
Add a cache for the tools per block, might give a bit of a performance boost on really, really crappy PCs.
Update to 26.3-rc-1
- Add server side disabling, just install the mod onto the server to stop clients from using it on your server.
- Fix issue where tools were not being switched correctly in some cases ([#8](https://codeberg.org/Maganoos/tool-switcher/issues/8)).
- Fix it not always switching back if a click is too fast
- Update to 26.2 Pre release 2
- Fix inventory swapping to work on servers and properly on singleplayer
- Fix delay not working properly
- Add zh_cn translation, by [HowardZHY](https://codeberg.org/HowardZHY)
- Finally fix efficiency calculation for good (ts pmo)
Update efficiency calculation and use a codec for the lists of ignored.
Add feature requests from Discord - Delay for tool switching & ignore inventory mode and refactor codebase
Change config system (yet again) & update to 26.1
Search in whole inventory
Search in whole inventory
Search in whole inventory
Search in whole inventory
Update to 1.21.11
Minor refactors
Fixed issue [#3](https://github.com/Maganoos/tool-switcher/issues/3)
Update to 1.21.11
Minor refactors
Fixed issue [#3](https://github.com/Maganoos/tool-switcher/issues/3)
Update to 1.21.11
Minor refactors
Fixed issue [#3](https://github.com/Maganoos/tool-switcher/issues/3)
Update to 1.21.11
Minor refactors
Fixed issue [#3](https://github.com/Maganoos/tool-switcher/issues/3)
Update to 1.21.11
Minor refactors
Fixed issue [#3](https://github.com/Maganoos/tool-switcher/issues/3)
Update to 1.21.11
Minor refactors
Fixed issue [#3](https://github.com/Maganoos/tool-switcher/issues/3)
Added stonecutter for multiversion development, and refactored most of the (tiny) codebase to reflect that decision, hence the big 3.0.0 :)
I will now continue releasing tool switcher for multiple versions!
Added stonecutter for multiversion development, and refactored most of the (tiny) codebase to reflect that decision, hence the big 3.0.0 :)
I will now continue releasing tool switcher for multiple versions!
Added stonecutter for multiversion development, and refactored most of the (tiny) codebase to reflect that decision, hence the big 3.0.0 :)
I will now continue releasing tool switcher for multiple versions!
Added stonecutter for multiversion development, and refactored most of the (tiny) codebase to reflect that decision, hence the big 3.0.0 :)
I will now continue releasing tool switcher for multiple versions!
Added stonecutter for multiversion development, and refactored most of the (tiny) codebase to reflect that decision, hence the big 3.0.0 :)
I will now continue releasing tool switcher for multiple versions!
- Full Changelog**: https://github.com/Maganoos/tool-switcher/compare/v1.1.0...v2.0.0
- Full Changelog**: https://github.com/Maganoos/tool-switcher/compare/v1.0.6...v1.1.0