Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for kernitus

Configure combat-related mechanics from 1.9 onwards

Report OldCombatMechanics?

by kernitus and Rayzr522

Fine‑tune Minecraft combat, movement, and item balance without breaking your server. OldCombatMechanics is a free, open‑source toolkit for Spigot and Paper that lets you mix 1.8‑style snappiness with modern features, per world and per player.

Why servers pick OCM

  • 🧩 Modular: enable only what you need: cooldowns, tool damage, knockback, shields, potions, reach, sounds, more.
  • 🚀 Performant: lean listeners only enabled as needed; reflection lookups are cached and recurring tasks are minimised (shared where possible) to keep tick time low on busy PvP servers.
  • 🗺️ Modesets: ship different rules for different worlds or players; perfect for mixed PvP/PvE, minigames, or duels.
  • Backwards‑friendly: runs on Java 8+, supports 1.9 to latest; integrates cleanly with PlaceholderAPI and PacketEvents.
  • Tested for you: live integration tests run real Paper servers across multiple versions every build.
  • 💸 Zero cost: fully open source, optional basic telemetry (bStats only), no paywalls.

Quick start

  1. Drop the jar into plugins/ (Spigot or Paper-derivatives 1.9+).
  2. Restart and edit config.yml to pick your modules and modesets.
  3. Use /ocm reload to apply changes instantly.
  4. Hand players /ocm modeset <name> to let them choose their ruleset.

GitHub Spigot Bukkit Paper


🧰 Modesets

  • Per-player/per-world presets that decide which features are active; each world has an allowed list and a default modeset.
  • Let players pick ( /ocm modeset <name> ) to run, for example, 1.8-style PvP in an arena world whilst keeping vanilla rules in survival.

⚙ Configurable Features

Features are grouped in modules as listed below, and can be individually configured and disabled. Disabled modules will have no impact on server performance.

⚔ Combat

Tweak timing, damage, and reach.

  • Attack cooldown: adjust or remove 1.9+ cooldown
  • Attack frequency: set global hit delay
  • Tool damage: pre-1.9 weapon values
  • Attack range (Paper 1.21.11+): 1.8-style reach
  • Critical hits: control crit multiplier
  • Player regen: tune regen rates
🤺 Armour

Balance defence and wear.

  • Armour strength: scale armour protection
  • Armour durability: change durability loss
🛡 Swords & Shields

Control block and sweep behaviour.

  • Sword blocking: restore old right-click block; on Paper 1.21.2+ we also add the native sword blocking animation via the consumable component
  • Shield damage reduction: scale shield protection
  • Sword sweep: enable or disable sweeps
  • Sword sweep particles: hide or show sweep visuals
🌬 Knockback

Shape knockback per source.

  • Player knockback: adjust PvP knockback
  • Fishing knockback: fishing-rod knockback
  • Fishing rod velocity: pull speed
  • Projectile knockback: arrows and other projectiles
🧙 Gapples & Potions

Change consumable power.

  • Golden apple crafting and effects: notch and normal
  • Potion effects and duration: old-style values
  • Chorus fruit: teleport behaviour and range
❌ New feature disabling

Toggle later-version mechanics.

  • Item crafting: block selected recipes
  • Offhand: disable offhand use
  • New attack sounds: mute new swing sounds
  • Enderpearl cooldown: enable or remove cooldown
  • Brewing stand refuel: alter fuel use
  • Burn delay: adjust fire tick delay

🔌 Compatibility & Testing

  • OCM targets Spigot 1.9+ and runs on Java 8 and up.
  • We stick to Spigot/Paper APIs for forward compatibility; NMS/reflection is used only when necessary.
  • Integration tests boot real servers on 1.9.4, 1.12, 1.19.2, and 1.21.11 each build to verify behaviour.
  • Most plugins work fine with OCM. Explicitly tested integrations include PlaceholderAPI (see wiki).

🧾 Licence

  • Source code in the GitHub repository is under the Mozilla Public License 2.0 (MPL‑2.0).
  • Pre-built jars bundle PacketEvents (GPLv3). Those binary distributions are provided under GPLv3 terms due to the included dependency.
  • If you build a jar without PacketEvents, you may distribute that build under MPL‑2.0, subject to its terms.

⚡ Development Builds

Oftentimes a particular bug fix or feature has already been implemented, but a new version of OCM has not been released yet.

If you are looking for the newest changes, use the Snapshot channel on this page, or check GitHub Actions: https://github.com/kernitus/BukkitOldCombatMechanics/actions

🤝 Contributions

If you are interested in contributing, please check this page first.


bStats

Information

CategoryGameplay
Published onJune 3, 2024
LicenseMPL 2.0
Downloads1,694
Stars6
Watchers4

Members