🛡️ Instant-Shield-Break

🔍 Auto-breaks enemy shields in nethpot PvP by swapping to an axe at the exact moment of attack, then reverting instantly — all within a single tick. No GUI, no keybinds, always on.

72

Quick challenge

How far can you run before the mobs catch you?

🛡️ Instant-Shield-Break

Text Description (Accessibility Transcription)

Instant-Shield-Break v1.0

NETHPOT PVP · FABRIC MOD · CLIENT-SIDE

Auto-breaks enemy shields in nethpot PvP by swapping to an axe at the exact moment of attack, then reverting instantly — all within a single tick. No GUI, no keybinds, always on.

Tags: Fabric API · Java · MC 1.19–1.21 · 1-tick swap · Always active · Zero flicker

---

⚙️ How the Swap Works

A five-step process that occurs within a single tick:

1. Revert slot — player hits enemy 2. Revert slot — `isUsingItem()` detects if the target is raising a shield 3. Revert slot — `@Inject HEAD` swaps the held item to an axe 4. Revert slot — shield is disabled 5. Revert slot — `@Inject RETURN` swaps back to the original item instantly

---

📦 Module Breakdown

ShieldDetector (`util/ShieldDetector.java`) Checks if the target player is actively raising a shield via `isUsingItem()` + item identity check. Catches the intent before the 5-tick raise delay, ensuring no missed hits.

InventoryScanner (`util/InventoryScanner.java`) Scans hotbar slots `0–8` first, then main inventory slots `9–35`. Maintains a cached last-used axe slot for instant lookup on repeated attacks. Supports any modded axe extending `AxeItem`.

SwapHandler (`handler/SwapHandler.java`) Orchestrates the full swap sequence. Guards against spam with a `150ms` cooldown. Sends a vanilla `UpdateSelectedSlotC2SPacket` for server sync. Reverts in the same call-stack frame — zero extra ticks.

Attack Mixin (`mixin/ClientPlayerInteractionManagerMixin.java`) Hooks into `attackEntity()` at `HEAD` (pre-packet) and `RETURN` (post-packet). Only intercepts `PlayerEntity` targets — mob attacks pass through unmodified.

Config (`config/ShieldBreakConfig.java`) GSON-backed JSON config at `config/instant-shield-break.json`. Supports `enabled` toggle, `cooldownMs` tuning, and `debugLogging` for verbose output. Auto-creates defaults on first launch.

---

📊 At a Glance

| Stat | Value | |------|-------| | Tick swap window | 1 | | Spam cooldown | 150ms | | Visible flicker frames | 0 | | Inventory slots scanned | 35 | | Mixin inject points | 2 | | Source modules | 5 |

---

*by Shubham96 · MIT License · Fabric 1.19–1.21 · instant-shield-break v1.0*

ADS