COWMODSКаталог модов

Spear Config

A plugin that provides various customizations for the spear on SMPs.

Автор: NullKeeper2451обновлён 29 июл. 2026 г.
СнаряжениеУправлениеУтилиты

Описание

Spear Config icon

One polished control surface for every vanilla spear on Paper and compatible forks.

Paper and Purpur Server versions 26.1–26.2 GPL-3.0-only

Tier-aware limitsCombat controlsEnchantment policyWielder awareness
Seven independently enabled crafting caps with blocked-recipe feedbackSeparately enabled Paper-native jab and lunge cooldownsRuntime-discovered allow-list and maximum levelsColored glow, tab names, dropped items, and position broadcasts
Online inventory, ender chest, and nested-shulker recountingNatural mob spear-drop suppressionEnchanting-table and anvil enforcementA vertically and horizontally balanced 45-slot GUI

See it in action

Configure everything in one centered menu

Eight mirrored categories keep every setting within a predictable click path.

Spear Config main menu

Stop crafting cleanly at each tier limit

The recipe result becomes an explanatory barrier, while the craft event remains protected against bypasses.

Blocked spear recipe

Control only the enchantments Paper says are valid

Compatible enchantments are discovered from the running server and presented as readable, paginated book rows with individual allow and exact-level controls.

Spear enchantment controls

Reveal current spear owners

Optional interval broadcasts show each inventory owner's name, dimension, and coordinates.

Spear owner position broadcast

Install

  1. Install Paper, Purpur, or another server fork that preserves compatibility with the Paper 26.1 API.
  2. Download Spear Config from Modrinth.
  3. Drop the downloaded jar into the server's plugins/ folder.
  4. Start or restart the server, then edit plugins/SpearConfig/config.yml if desired.

Supported platforms: Paper and Paper-compatible downstream forks, including Purpur, on server versions 26.1–26.2 with Java 25. Spear Config is packaged as a Bukkit-style plugin, but its combat and registry features use Paper-only APIs; plain CraftBukkit and Spigot are therefore not supported.

Use

  1. Give administrators spearconfig.admin; operators receive it by default.
  2. Run /spearconfig gui to open the symmetric settings menu. Click a numeric item, type an exact non-negative integer in chat, or type cancel; the same page reopens automatically.
  3. Set a tier's number with /spearconfig set limit <tier> <amount>, then independently enable or disable enforcement with /spearconfig toggle limit <tier>. Valid tiers are wood, stone, copper, iron, gold, diamond, and netherite. An enabled amount of 0 blocks every craft; a disabled limit is unlimited.
  4. Set a combat delay with /spearconfig set cooldown <jab|lunge> <seconds>, then control its master switch with /spearconfig toggle cooldown <jab|lunge>. A value of 0 is a real zero-second delay and does not change the switch.
  5. Use /spearconfig toggle <setting> for blockmobdrop, enchantable, glow, tab, or reveal. Use /spearconfig toggle announcements <chat|title> for the two independent announcement channels; /spearconfig toggle announcements sets both together.
  6. Configure the shared visual color with /spearconfig set color <color> and the reveal task with /spearconfig set revealinterval <seconds>. The reveal minimum is 5 seconds.
  7. Manage the dynamic enchantment policy with /spearconfig whitelist add|remove|list and /spearconfig enchantlevel <enchantment> <max-level>. The GUI groups three readable enchantment rows per page and places the master enchanting switch on the last page.
  8. Run /spearconfig refresh to recount, or /spearconfig reload after editing config.yml.

The root command also accepts /spearcfg and /scconfig. Every command and argument supports tab completion.

The default configuration enables mob-drop blocking, spear enchanting, chat announcements, and title announcements. Every craft-limit and cooldown master switch starts disabled with a value of 0; the shared color is gold, position reveals run every 300 seconds when enabled, and compatible enchantments start allowed at their natural maximum levels.

Tip: Upgrading from 0.1 automatically migrates scalar limits, cooldowns, and the former announcement switch. Existing positive values become enabled; existing zero values become disabled with a retained value of zero. A refresh scans online player inventories, their ender chests, and nested shulker boxes, but not offline players or arbitrary world containers.

Build from source

Requires JDK 25. The 26.1 and 26.2 APIs are binary-compatible neighbors, so one build targets the full supported range:

./gradlew clean build

On Windows PowerShell:

.\gradlew.bat clean build

The distributable jar is written to build/libs/SpearConfig-<version>.jar. The build does not create a sources jar.


GPL-3.0-only · 2026 · NullKeeper-dev

Галерея

Spear Config main menuBlocked spear recipeSpear enchantment controlsSpear owner position broadcast

Последние версии

Все версии →
release

Spear Config 1.0.0

1.0.0
29 июл. 2026 г.245Minecraft: 26.1, 26.1.1, 26.1.2, 26.2paper, purpur
Скачать
Что нового
## [1.0.0] ### Breaking changes - Replaced scalar `limits.<tier>` values with independent `enabled` and `amount` fields. An enabled amount of `0` now blocks every craft; disabling the tier's master switch makes it unlimited. - Replaced scalar `cooldown.jab` and `cooldown.lunge` values with independent `enabled` and `seconds` fields. Zero is now a valid zero-second value instead of changing whether the cooldown is enabled. - Replaced the global `announcements` boolean with independent `announcements.chat` and `announcements.title` switches, both enabled by default. - Added automatic migration from the 0.1 schema: positive legacy limits and cooldowns become enabled, zero values become disabled, and the legacy announcement value is copied to both channels. ### Added - Added `/spearconfig toggle limit <tier>`, `/spearconfig toggle cooldown <jab|lunge>`, and `/spearconfig toggle announcements <chat|title>` with full tab completion. - Added exact integer entry through chat for every numeric GUI control, including `cancel`, validation, timeout handling, and return to the originating page. - Added title announcements for successful crafts and newly reached tier limits. - Added automated tests for 0.1-to-1.0 configuration migration. ### Changed - Redesigned every category page around both horizontal and vertical symmetry, with values above the true center and matching switches below. - Rebuilt the enchantment browser as paginated three-row book controls with readable names, five visual level indicators, per-enchantment allow switches, and the global enchanting switch on the final page. - Removed click-spam numeric adjustments in favor of direct integer entry. - Made every custom crafting-barrier name and lore line explicitly non-italic. ### Compatibility notes - `CraftLimitListener` still changes `PrepareItemCraftEvent` results and cancels `CraftItemEvent` when an enabled limit would be exceeded; recipe or crafting plugins acting at the same priority may compete with it. - `AttackCooldownListener` still cancels Paper's `PrePlayerAttackEntityEvent` and `EntityLungeEvent`; combat plugins or ProtocolLib listeners can be sensitive to event/listener ordering. - `ChatInputManager` consumes an administrator's next `AsyncChatEvent` while exact numeric input is pending; chat-formatting or moderation plugins at other priorities may observe or compete with that cancelled message. ## [0.1.0] ### Added - Seven tier-aware spear crafting limits with tracked counts, explanatory blocked-recipe barriers, successful-craft tracking, announcements, and online inventory/ender-chest/nested-shulker refreshes. - Natural spear-drop suppression for zombies, husks, zombie villagers, zombie horse and camel husk encounters, piglins, and zombified piglins. - Independent Paper-native jab and lunge cooldowns using `PrePlayerAttackEntityEvent` and `EntityLungeEvent`. - Runtime discovery of spear-compatible enchantments through `Enchantment#canEnchantItem`, with allow-list and maximum-level enforcement at enchanting tables and anvils. - Inventory-owner glow, tab-list color, dropped-item names, and interval-based position broadcasts using one shared color. - Complete `/spearconfig` command tree, `/spearcfg` and `/scconfig` aliases, `spearconfig.admin`, and full argument tab completion. - Symmetric 45-slot GUI with eight categories, consistent borders, centered controls, and uniform left/right/shift numeric adjustments. - Java 25 Gradle build, Paper 26.1–26.2 metadata, default configuration, automated logic tests, and GPL-3.0-only project files. ### Compatibility notes - `CraftLimitListener` changes `PrepareItemCraftEvent` results and cancels `CraftItemEvent` when limits would be exceeded; recipe or crafting plugins acting at the same priority may compete with it. - `MobDropListener` filters `EntityDeathEvent#getDrops`; mob-loot plugins that rewrite drops later can reintroduce or override spear drops. - `AttackCooldownListener` cancels Paper's `PrePlayerAttackEntityEvent` and `EntityLungeEvent`; combat plugins or ProtocolLib listeners can be sensitive to event/listener ordering. - Colored glow uses the main scoreboard team `sc_wielders`; scoreboard, nameplate, or permissions plugins that manage player teams can override it or be temporarily displaced while a player owns a spear.