
Infinite Use
Toggle any held item to be infinite — totems revive forever, blocks place endlessly, tools have no durability loss. One command, one tag, every item.
InfiniteUse
Make any item infinite with one command. Totems become unlimited. Blocks place forever. Tools never break.
Features
A single command turns the item in your main hand into an infinite item:
- Stack count never decreases — eat food, place blocks, throw splash potions, shoot arrows, fire ender pearls, drink potions, use buckets... the stack never goes down.
- Durability never decreases — swords, pickaxes, shears, bows, fishing rods, crossbows, elytra... the bar stays full.
- Totems of Undying — survive death as many times as you want from a single totem.
- End Crystals, Boats, Eggs, Snowballs, Splash Potions, all subclass items — covered via a unified
ItemStackdispatch hook.
The marker is stored as an NBT tag (1.16.5–1.20.4) or as a custom DataComponent (1.20.5+), so it persists across save/load and works on dedicated servers.
Move duplication is fixed
Earlier naive implementations duplicate items when you shift-click them in inventories (the source stack doesn't decrement, but the destination still receives the items). InfiniteUse uses a thread-local consume context: cancellation only triggers when the stack is actually being consumed (use / place / eat / totem trigger), not during inventory transfers. Move freely without duplication.
Commands
Requires OP permissions (level 2).
| Command | Description |
|---|---|
/infiniteuse or /iu | Toggle InfiniteUse on the held item |
/iu on | Mark the held item as infinite |
/iu off | Remove the mark |
/iu toggle | Same as no argument |
/iu status | Show current state of the held item |
Requirements
- Fabric Loader
- Fabric API
Each jar targets one Minecraft version. Use the jar that exactly matches your Minecraft version.
Jar / Minecraft compatibility table
| Jar file | Compatible Minecraft version |
|---|---|
infiniteuse-mc1.16.5-1.0.0.jar | 1.16.5 |
infiniteuse-mc1.17.1-1.0.0.jar | 1.17.1 |
infiniteuse-mc1.18.2-1.0.0.jar | 1.18.2 |
infiniteuse-mc1.19.4-1.0.0.jar | 1.19.4 |
infiniteuse-mc1.20.1-1.0.0.jar | 1.20.1 |
infiniteuse-mc1.20.4-1.0.0.jar | 1.20.2 / 1.20.3 / 1.20.4 |
infiniteuse-mc1.20.6-1.0.0.jar | 1.20.5 / 1.20.6 |
infiniteuse-mc1.21.1-1.0.0.jar | 1.21 / 1.21.1 |
infiniteuse-mc1.21.2-1.0.0.jar | 1.21.2 |
infiniteuse-mc1.21.3-1.0.0.jar | 1.21.3 |
infiniteuse-mc1.21.4-1.0.0.jar | 1.21.4 |
infiniteuse-mc1.21.5-1.0.0.jar | 1.21.5 |
infiniteuse-mc1.21.6-1.0.0.jar | 1.21.6 |
infiniteuse-mc1.21.7-1.0.0.jar | 1.21.7 |
infiniteuse-mc1.21.8-1.0.0.jar | 1.21.8 |
infiniteuse-mc1.21.9-1.0.0.jar | 1.21.9 |
infiniteuse-mc1.21.10-1.0.0.jar | 1.21.10 |
infiniteuse-mc1.21.11-1.0.0.jar | 1.21.11 |
Versions not listed (1.16.0-1.16.4, 1.17.0, 1.18.0/1.18.1, 1.19.0-1.19.3, 1.20.0, etc.) are not supported — Minecraft's APIs differ enough between point releases that a mismatched jar will fail to load or crash.
How it works
A Mixin on ItemStack#decrement and ItemStack#setDamage cancels the operation only when:
- The stack carries the InfiniteUse marker, AND
- We are inside a "consume" path (
Item#use,useOnBlock,finishUsing,onStoppedUsing, orLivingEntity#tryUseDeathProtector/tryUseTotem).
Inventory operations (drag, shift-click, hopper transfer, drop) take place outside this context, so counts decrement normally — no duplication.
Links
YouTube: MC clip
Subscribe for updates and tutorials!
日本語
コマンド一発でメインハンドのアイテムを 無限化 するFabric MOD。
特徴
- スタック数が減らない — 食べる・置く・スプラッシュポーション投擲・矢発射・エンダーパール・ポーション飲み・バケツ使用…全部減りません
- 耐久値が減らない — 剣・ピッケル・ハサミ・弓・釣竿・クロスボウ・エリトラ…バーは常に満タン
- トーテム・オブ・アンダイング無限 — 1個のトーテムで何度でも蘇生
- エンドクリスタル / ボート / 卵 / 雪玉 / スプラッシュポーション / その他サブクラス系アイテム —
ItemStackの統一エントリで全部カバー
マーカーは NBT タグ(1.16.5〜1.20.4)または カスタム DataComponent(1.20.5以降)で保存。セーブ&ロードを跨いでも維持され、専用サーバでも動作します。
アイテム移動時の複製を解決済み
素朴な実装だとシフトクリック移動時に「移動先には入る・移動元は減らない」で複製になります。本MODは スレッドローカルの消費コンテキスト を使い、実際にアイテムを 消費 する経路(使用/設置/食べる/トーテム発動)でのみキャンセルが発動します。インベントリ移動・ホッパー輸送・ドロップは通常通りに進むので複製しません。
コマンド
OP権限(レベル2)が必要。
| コマンド | 動作 |
|---|---|
/infiniteuse または /iu | メインハンドのアイテムを無限化トグル |
/iu on | 無限化をON |
/iu off | 無限化をOFF |
/iu toggle | 引数なしと同じ |
/iu status | 現在の状態を表示 |
対応バージョン
各 jar は 1 つの Minecraft バージョン専用 です。お使いの Minecraft バージョンに合った jar を選んでください。
jar と対応 Minecraft バージョン対応表
| jar ファイル | 対応 Minecraft バージョン |
|---|---|
infiniteuse-mc1.16.5-1.0.0.jar | 1.16.5 |
infiniteuse-mc1.17.1-1.0.0.jar | 1.17.1 |
infiniteuse-mc1.18.2-1.0.0.jar | 1.18.2 |
infiniteuse-mc1.19.4-1.0.0.jar | 1.19.4 |
infiniteuse-mc1.20.1-1.0.0.jar | 1.20.1 |
infiniteuse-mc1.20.4-1.0.0.jar | 1.20.2 / 1.20.3 / 1.20.4 |
infiniteuse-mc1.20.6-1.0.0.jar | 1.20.5 / 1.20.6 |
infiniteuse-mc1.21.1-1.0.0.jar | 1.21 / 1.21.1 |
infiniteuse-mc1.21.2-1.0.0.jar | 1.21.2 |
infiniteuse-mc1.21.3-1.0.0.jar | 1.21.3 |
infiniteuse-mc1.21.4-1.0.0.jar | 1.21.4 |
infiniteuse-mc1.21.5-1.0.0.jar | 1.21.5 |
infiniteuse-mc1.21.6-1.0.0.jar | 1.21.6 |
infiniteuse-mc1.21.7-1.0.0.jar | 1.21.7 |
infiniteuse-mc1.21.8-1.0.0.jar | 1.21.8 |
infiniteuse-mc1.21.9-1.0.0.jar | 1.21.9 |
infiniteuse-mc1.21.10-1.0.0.jar | 1.21.10 |
infiniteuse-mc1.21.11-1.0.0.jar | 1.21.11 |
上記に載っていないバージョン(1.16.0〜1.16.4、1.17.0、1.18.0/1.18.1、1.19.0〜1.19.3、1.20.0 など)は 非対応 です。Minecraft の API がポイントリリース間で十分に変化するため、合わない jar はロードに失敗するかクラッシュします。
仕組み
ItemStack#decrement と ItemStack#setDamage をMixinで横取りし、以下の条件を両方満たす場合にだけキャンセルします:
- 対象スタックに InfiniteUse マーカーが付いている
- 「消費パス」内(
Item#use/useOnBlock/finishUsing/onStoppedUsing/LivingEntity#tryUseDeathProtector・tryUseTotem)
インベントリ操作(ドラッグ・シフトクリック・ホッパー輸送・ドロップ)はこの条件外なので普通にスタックが減り、複製しません。
YouTube
チャンネル: MCクリップ
チャンネル登録よろしく!
