Skip to content

QuickCast PvP

Fast PvP quickcast on middle click: instantly use Ender Pearl, Wind Charge, or place End Crystal and return to your previous hotbar slot.

Fabric
Loaders
Fabric
Downloads on Modrinth
1.8K
Followers on Modrinth
1
versions
9
Updated
September 29, 2026Sep 29
Published
in 2026

At a glance

Runs on Fabric
For Minecraft 26.1, 26.2–26.3 …
Client only — no need to install it on the server
Latest version — 1.0.2 from September 29, 2026
License MIT — free
Where it's needed
In gamerequiredOn servernot needed

Install in the game only; not needed on the server

Game versions1.20–1.21.4, 26.1, 26.2–26.3

QuickCast PvP

Lightning-fast, desync-free hotbar casting for competitive Minecraft PvP.

QuickCast PvP is a lightweight, high-performance client-side Fabric mod for Minecraft 26.3 ("Wilderness Bound"). It enables players to bind keys or mouse buttons to instantly select, cast/use/place, and restore items from their hotbar in a single seamless action within 1–2 client ticks.

Designed specifically for competitive PvP environments, QuickCast PvP introduces zero custom packets, respects all vanilla cooldown and reach constraints, and operates with monotonic nanosecond precision to prevent desynchronization or misfires.


Features

  • Three Independent Actions:

    • Quick Ender Pearl: Default binding Mouse Middle Click (Button 3).
    • Quick Wind Charge: Default unbound.
    • Quick End Crystal: Default unbound.
  • Smart Hotbar Search:

    • Scans hotbar slots 0–8 in sequential order for target items (Items.ENDER_PEARL, Items.WIND_CHARGE, Items.END_CRYSTAL).
    • Off-hand is strictly untouched and never inspected.
  • 1-Tick Slot Switch & Restore State Machine:

    • Switches to the matching item slot and triggers vanilla use (useItem or useItemOn).
    • Under RESTORE mode, reverts to your original slot on the subsequent client tick.
    • Player Input Preservation: If you manually scroll or press a hotbar number key while a restore is pending, the mod detects the change and cancels the restore, never fighting your manual inputs.
  • Trigger Modes (Press vs Hold-and-Release):

    • PRESS: Executes immediately upon keydown.
    • HOLD_AND_RELEASE: Primes on keydown and casts upon keyup. Automatically cancels after a 3-second safety window or if you manually switch hotbar slots while holding.
  • Latency-Aware Safety Guard:

    • Configurable ping ceiling (highPingGuardMs, default 250 ms, 0 = disabled).
    • Protects against slot desync on unstable connections by preventing casts when real-time latency (PlayerInfo.getLatency()) exceeds your limit.
    • Automatically bypasses latency checks on singleplayer and LAN worlds.
  • Keybind Conflict Detection:

    • Scans all vanilla and modded KeyMapping entries at startup and runtime.
    • Logs warnings to console, notifies the player once via action bar if a conflict occurs, and displays real-time warning banners in the YACL config screen.
  • Crystal Placement Validation:

    • Supports TRY_PLACE (direct server-side validation) and PLACE_AT_CROSSHAIR_IF_POSSIBLE (client-side pre-check verifying Obsidian/Bedrock, top face, air above, and entity bounding box clearance).
  • Flexible Feedback & Low-Stock Alerts:

    • Multiple feedback styles: NONE, ACTION_BAR, TITLE, SOUND, or ALL.
    • Configurable low-stock alert (lowStockWarningThreshold, default 1 item, 0 = disabled) warning you when hotbar supply is running low.
  • Monotonic Cooldowns & Overrides:

    • Uses System.nanoTime() for lag-immune timing.
    • Configurable global cooldown (default 120 ms, slider 0–2000 ms).
    • Rapid key repeat protection on misses (50 ms cooldown) prevents hotbar scanning spam when out of items.
    • Per-action cooldown overrides (cooldownOverrideMs, -1 = inherit global).
  • Profile Management:

    • Save, load, and switch between named configuration profiles stored in `.minecraft/config/quickcastpvp/profiles/.json`.
    • Manage profiles in-game through the YACL config screen or via chat commands (/quickcastpvp profile [save|load|list]).
  • Typing & Screen Protection:

    • allowWhileScreenOpen: When false, any open GUI blocks casting. When true, non-text screens (e.g. inventory) allow casting while ChatScreen and active text boxes (EditBox) remain strictly protected.
  • In-Game Configuration:

    • Powered by YetAnotherConfigLib (YACL v3).
    • Integrates seamlessly with Mod Menu if installed.
    • Accessible via /quickcastpvp config command or a dedicated rebindable keybind.
    • Schema v2 with automatic backward-compatible migration from v1.0.0 configurations.

Installation Requirements

  • Minecraft: 26.3 ("Wilderness Bound")
  • Fabric Loader: >= 0.19.5
  • Java: 25
  • Required Dependencies:

  • Optional Dependencies:

    • Mod Menu (21.0.0-beta.1 or newer) for access via the "Mods" screen.

Drop quickcastpvp-1.0.1.jar and required dependencies into your .minecraft/mods directory.


Configuration Reference

Configuration is stored at .minecraft/config/quickcastpvp.json (Schema v2).

{
  "configVersion": 2,
  "pearl": {
    "enabled": true,
    "cooldownOverrideMs": -1,
    "triggerMode": "PRESS"
  },
  "windCharge": {
    "enabled": true,
    "cooldownOverrideMs": -1,
    "triggerMode": "PRESS"
  },
  "endCrystal": {
    "enabled": true,
    "cooldownOverrideMs": -1,
    "triggerMode": "PRESS",
    "crystalPlaceMode": "TRY_PLACE"
  },
  "afterUseBehavior": "RESTORE",
  "requireHotbarOnly": true,
  "cooldownMs": 120,
  "highPingGuardMs": 250,
  "feedbackStyle": "ACTION_BAR",
  "lowStockWarningThreshold": 1,
  "allowWhileScreenOpen": false
}

Config Options Table

FieldJSON PathDefaultRange / OptionsDescription
Config VersionconfigVersion2IntegerInternal schema version for automatic migrations.
Pearl Enabledpearl.enabledtruetrue, falseEnables or disables Quick Ender Pearl.
Pearl Cooldown Overridepearl.cooldownOverrideMs-1-1 – 2000 msSpecific cooldown for pearls. -1 inherits global cooldown.
Pearl Trigger Modepearl.triggerModePRESSPRESS, HOLD_AND_RELEASECast on key press vs key release.
Wind Charge EnabledwindCharge.enabledtruetrue, falseEnables or disables Quick Wind Charge.
Wind Charge Cooldown OverridewindCharge.cooldownOverrideMs-1-1 – 2000 msSpecific cooldown for wind charges. -1 inherits global cooldown.
Wind Charge Trigger ModewindCharge.triggerModePRESSPRESS, HOLD_AND_RELEASECast on key press vs key release.
End Crystal EnabledendCrystal.enabledtruetrue, falseEnables or disables Quick End Crystal.
End Crystal Cooldown OverrideendCrystal.cooldownOverrideMs-1-1 – 2000 msSpecific cooldown for crystals. -1 inherits global cooldown.
End Crystal Trigger ModeendCrystal.triggerModePRESSPRESS, HOLD_AND_RELEASECast on key press vs key release.
Crystal Placement ModeendCrystal.crystalPlaceModeTRY_PLACETRY_PLACE, PLACE_AT_CROSSHAIR_IF_POSSIBLETRY_PLACE sends the placement interaction to the server whenever looking at any block. PLACE_AT_CROSSHAIR_IF_POSSIBLE validates Obsidian/Bedrock, top face, and entity clearance locally first.
After-Use BehaviorafterUseBehaviorRESTORERESTORE, KEEP_NEW_SLOTRESTORE returns to your original hotbar slot on the next tick. KEEP_NEW_SLOT leaves the cast item selected.
Require Hotbar OnlyrequireHotbarOnlytruetrue (greyed out)Restricts search to hotbar slots 0–8. (See Known Limitations).
Global CooldowncooldownMs1200 – 2000 msMonotonic cooldown between successful quickcast actions.
High Ping GuardhighPingGuardMs2500 – 1000 msMaximum latency (ms) before quickcast aborts to prevent slot desync. 0 disables. Bypassed on local singleplayer/LAN.
Feedback StylefeedbackStyleACTION_BARNONE, ACTION_BAR, TITLE, SOUND, ALLPresentation method for casting notifications.
Low Stock ThresholdlowStockWarningThreshold10 – 8Warns if remaining hotbar count is at or below this threshold after casting. 0 disables.
Allow While Screen OpenallowWhileScreenOpenfalsetrue, falseWhen true, allows casting while non-text GUIs (e.g. inventory) are open. Chat and text fields are always protected.

Note: Keybindings are stored in vanilla Minecraft's options.txt and can be customized under Options > Controls > Key Binds > QuickCast PvP.


Commands

QuickCast PvP provides client-side commands:

  • /quickcastpvp config — Opens the in-game configuration screen.
  • `/quickcastpvp profile save — Saves active settings to.minecraft/config/quickcastpvp/profiles/.json`.
  • `/quickcastpvp profile load ` — Loads settings from the specified profile and applies them immediately.
  • /quickcastpvp profile list — Lists all available saved configuration profiles in chat.

Opening the Config Screen

  1. Via Mod Menu: Open the Mods menu in-game, select QuickCast PvP, and click the Settings icon.
  2. Via Command: Execute /quickcastpvp config in chat.
  3. Via Keybind: Bind the "Open QuickCast Config" key under Controls > Key Binds.

Known Limitations & Design Constraints

  • Hotbar Only (requireHotbarOnly = true): Searching the entire main inventory and swapping items into the hotbar via click-slot packets introduces network round-trip delays, container state ID updates, and desynchronization risks in intense PvP. To uphold the "No Fake Options" rule, this toggle is visibly disabled in the YACL menu with an explanatory tooltip and currently defaults strictly to hotbar-only.
  • Vanilla Fair Play: QuickCast PvP does not alter vanilla attack cooldowns, item cooldowns, reach distances, or server packet validation. End Crystals placed on invalid blocks or occupied spaces will be rejected by the server according to vanilla mechanics.

Building from Source

To compile the mod from source:

git clone https://github.com/quickcastpvp/quickcastpvp.git
cd quickcastpvp
./gradlew build

The compiled artifact will be located at build/libs/quickcastpvp-1.0.1.jar.

FAQ

How to install QuickCast PvP?

Install Fabric for your Minecraft version, download QuickCast PvP for the same version and loader, put the file into the mods folder and launch the game with the loader profile.

Which Minecraft versions does QuickCast PvP support?

QuickCast PvP has builds for Minecraft 1.20–1.21.4, 26.1, 26.2–26.3.

Is QuickCast PvP needed on the server?

Client only — no need to install it on the server

License and source
MIT Licensefree to use and share with credit to the author
Original — Modrinth↗Files unchanged, verified with SHA-512Is this your mod? For rights holders

The site uses cookies: the necessary ones for sign-in and the theme, plus the Yandex Metrica and LiveInternet visit counters — they show us how the site is used. We have no advertising cookies. More