Adds charge attacks, jab, Lunge support, and a Heavy Mace to vanilla spears, with a bundled resource pack for Paper serv
⚔️ ChargeSpear
ChargeSpear brings charge attacks, jab, Lunge support and a Heavy Mace to vanilla spears on Paper servers. Hold right click to charge and release to strike, left click for a quick jab, use the Lunge enchantment to launch yourself at enemies, or craft a Heavy Mace. The plugin works with a resource pack that provides the animations and models, and players receive it automatically when they join.
🇬🇧 English and 🇹🇷 Turkish language support. The language is chosen from each player's client language.
✨ Features
- Charge attack: Hold right click to charge the spear and release to strike. Damage and speed follow vanilla-style formulas. A charge bar appears in the action bar while you charge.
- Jab (left click): A quick spear strike with a cooldown that depends on the spear tier.
- Lunge support: Spears with the Lunge enchantment launch you toward your target on attack. The impulse per level is configurable.
- Seven spear tiers: Wooden, Stone, Copper, Iron, Golden, Diamond and Netherite, each with its own durability.
- Heavy Mace: Crafted with a Heavy Core and a Breeze Rod. The recipe can be disabled in the config.
- Resource pack: Animations and models are provided by the official ChargeSpear resource pack on Modrinth: https://modrinth.com/resourcepack/spear-pack
- Client version handling: The spear material is chosen for each player's client version, and spears in inventories are converted automatically.
- Statistics: Jab, charge and kill counts are tracked per player (
/spear stats). - Kill broadcast: Optionally announces when a player kills someone with a spear.
- Charge particles: Optional visual effect while charging.
🧩 Requirements
| Component | Requirement |
|---|---|
| Server | Paper or Purpur 1.21 or newer, Java 21 |
| Client | Vanilla Minecraft. The resource pack is downloaded automatically |
| Optional | ViaVersion and ViaBackwards, for supporting older client versions |
ChargeSpear works without ViaVersion and ViaBackwards. They are only needed if you want older clients to connect.
📦 Installation
- Put
ChargeSpear-1.0.jarin your server'splugins/folder. - Start the server. The
plugins/ChargeSpear/folder will containconfig.ymland the language files. - Edit
config.ymlif needed, then run/spear reload.
🎮 Commands
| Command | Description | Permission |
|---|---|---|
/spear give <type> [player] [amount] |
Gives a spear or a mace | chargespear.give |
/spear list |
Lists available items | chargespear.list |
/spear reload |
Reloads the config and language files | chargespear.reload |
/spear pack [player|*] |
Resends the resource pack | chargespear.pack |
/spear stats [player] |
Shows jab, charge and kill statistics | chargespear.stats (everyone) |
Aliases: /chargespear and /cs.
<type> can be spear, wooden, stone, copper, iron, golden, diamond, netherite or mace.
By default, all permissions are given to operators. chargespear.* grants all of them at once. chargespear.stats is granted to everyone.
⚙️ Configuration
The main options are:
language:auto,enortrpremium.*: Toggle statistics, kill broadcasts and charge particlesspear.default-tier: The tier given by/spear give spearspear.auto-convert: Automatically convert spears in inventories to match the client versionresource-pack.*: Enable or disable the pack and set its URLrecipes.*: Enable or disable the spear and Heavy Mace recipeslunge.*: Enable Lunge and set the impulse per levelcombat.*: Reach, knockback, minimum charge time, maximum targets per hit (default 3) and Lunge hunger cost
Each option is explained in config.yml.
🎯 How to use
- Charge: Hold right click with a spear, then release to strike. Quick taps under 3 ticks do not count as a charge.
- Jab: Left click to strike. The cooldown depends on the spear tier.
- Lunge: With a Lunge enchanted spear, you are pushed toward the target when you attack. Each Lunge attack costs hunger and durability.
- Heavy Mace: Craft it with a Heavy Core and a Breeze Rod in the crafting grid as shown in the recipe.
⚠️ Known limitations
This is version 1.0. Please keep these in mind:
- On 1.21.2 to 1.21.10 clients, the client's own attack swing still plays alongside the jab animation. This cannot be turned off from the server.
- On 1.21.11 clients, the native vanilla spear is used, so the plugin's custom models have limited visual effect.
- Maximum targets per hit is 3. Vanilla has no limit. This is a balance setting and can be changed in the config.
- Knockback is calculated by the plugin's own formula rather than vanilla's stab attack.
If you find a bug, please open an issue.
🙏 Credits
Thanks to the PaperMC team and everyone who tested the plugin on their servers.
License: All Rights Reserved. Developer: Rotex
Platforms
Dependencies
- ViaBackwards Optional
- ViaVersion Optional