Sueta

[1.7.10 - 26.2] Knockback Manager | Best free custom knockba

2.3.0

Multiple KB Profiles, Misplace, KB Sync, Server-Side Hit Detection & More!

·Plugin

Knockback Manager
Best free custom knockback plugin

Knockback Manager is a free and open-source knockback plugin that supports using different knockback profiles for different players, even better than some custom spigot.

Features:

  • Supports All Server Versions
  • Multiple Knockback Profiles with Per-Player Assignment
  • Knockback & Punch Enchantment Support
  • Exclude Players from Knockback Modifications
  • API Support
  • Full Tab Completion Support
  • Anti-Cheat Compatibility
    • Theoretically Compatible with All Major Anti-Cheat Plugins
    • Tested: Grim, Vulcan, Matrix, Verus, AntiHaxerman, etc.
  • Two Misplace Modes
    • Helps maintain longer combo chains
    • Video
  • Server-Side Hit Detection
    • Customizable Hitbox Size & Attack Range
    • Video
  • Knockback Sync
    • Synchronizes player knockback for smoother gameplay
  • Custom Hit Delay
  • Disable Netherite Knockback Resistance

To use packet features, you need to install ProtocolLib version 5.0 or higher.

Commands:

  • /kbm create - Create a kb profile.
  • /kbm delete - Delete a kb profile.
  • /kbm list - View all kb profiles.
  • /kbm edit - Edit a kb profile's value.
  • /kbm view - View a kb profile's value.
  • /kbm reload - Reload a kb profile / reload all kb profiles.
  • /kbm gui - Open GUI.
  • /kbm getprofile - Get a player's current knockback profile.
  • /kbm setprofile - Set a player's current knockback profile.
  • /kbm setexcluded - Set whether the player should be excluded from modifications.


Permissions:

  • kbm.use - Grants full access to all plugin features and commands.


Please read the documentation before using the plugin!

Config:

Main Config
#### KBM - Main Configuration
#
# Before using this plugin, make sure you have fully read the plugin documentation.
# Plugin documentation & example configurations can be found in the QQ group files. (673765463)
#
# Configuration file below:


# ======================================
# Knockback Sync
# Description: Fixes inaccurate ground-state detection for high-latency players.
# ======================================
kb_sync:
  # Enable? (Requires ProtocolLib)
  enabled: false


# ======================================
# Server-Side Hit Detection
# Description: When enabled, attack hit registration is handled server-side.
# ======================================
# Note: This feature is incompatible with packet.misplace
# Note: This feature may cause issues with attack events in some plugins, see the documentation for details!
server_side_hit_detection:
  # Enable? (Requires ProtocolLib)
  enabled: false

  # --------------------------------------
  # Attack Hitbox Size Settings
  # --------------------------------------
  hitbox_size:
    # Hitbox length/width
    # Vanilla values: 1.8 = 0.8, 1.9+ = 0.6
    length: 0.8

    # Hitbox height
    # Vanilla values: 1.8 = 1.9, 1.9+ = 1.8
    height: 1.9

  # --------------------------------------
  # Maximum Attack Distance Settings
  # --------------------------------------
  max_distance:
    # Survival / Adventure mode
    survival: 3.0

    # Creative mode
    creative: 5.0
Knockback Config

* Default kb config is 1.8 vanilla kb.

# KBM - Knockback Configuration

horizontal:
  # Horizontal knockback on ground
  ground: 0.4

  # Horizontal knockback in air
  air: 0.4

  # Additional horizontal knockback while sprinting
  sprint_extra: 0.5


vertical:
  # Vertical knockback on ground
  ground: 0.36075

  # Vertical knockback in air
  air: 0.24775

  # Additional vertical knockback while sprinting
  sprint_extra: 0.1


projectile:
  # Enable projectile knockback modification
  enabled: false

  # Multiplier for projectile horizontal knockback
  horizontal_multiplier: 1.0

  # Multiplier for projectile vertical knockback
  vertical_multiplier: 1.0

  # Use projectile shooter position to calculate knockback direction
  direction_override: false


packet:
  misplace:
    # Misplace position update packets
    enabled: false

    # Misplace distance (in blocks)
    distance: 0.1

  delay:
    # Delay position update packets
    enabled: false

    # Delay duration (in ticks)
    ticks: 2


# Reset sprint after attack
stop_sprint: true

# Maximum Y-axis knockback limit (in blocks)
y_limit: 0.675

# Attack cooldown delay (in ticks)
hit_delay: 20


potion:
  # Enable throwable potion motion modification
  enabled: false

  # Multiplier for potion horizontal motion
  horizontal_multiplier: 1.05

  # Multiplier for potion vertical motion
  vertical_multiplier: 1.0

  # Compensation multiplier when the potion hits the thrower
  compensation_multiplier: 1.15


modern:
  # Whether attack cooldown affects knockback
  cooldown_affects_kb: true

  # Apply Netherite knockback resistance
  netherite_kb_resistance: true

API Example:

StrikePractice Per-Mode KB Profile
package me.dw1e.strikemultikb;

import ga.strikepractice.events.DuelEndEvent;
import ga.strikepractice.events.DuelStartEvent;
import me.dw1e.kbm.KnockbackManager;
import me.dw1e.kbm.api.KnockbackManagerAPI;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.HandlerList;
import org.bukkit.event.Listener;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.java.JavaPlugin;

public final class StrikeMultiKB extends JavaPlugin implements Listener {

    private final KnockbackManagerAPI kbmAPI = KnockbackManager.getInstance().getAPI();

    @Override
    public void onEnable() {
        Bukkit.getPluginManager().registerEvents(this, this);
    }

    @Override
    public void onDisable() {
        HandlerList.unregisterAll((Plugin) this);
    }

    @EventHandler
    public void onDuelStart(DuelStartEvent event) {
        Player p1 = event.getPlayer1();
        Player p2 = event.getPlayer2();

        String kitName = event.getKit().getName();

        if (kbmAPI.isProfileExists(kitName)) {
            kbmAPI.setProfile(p1, kitName);
            kbmAPI.setProfile(p2, kitName);
        }
    }

    @EventHandler
    public void onDuelEnd(DuelEndEvent event) {
        Player p1 = event.getWinner();
        Player p2 = event.getLoser();

        kbmAPI.setProfile(p1, "default");
        kbmAPI.setProfile(p2, "default");
    }
}

Example KB Profile:

minemen.club

* MMC all mode is same kb.

# Minemen-like - 2025/10/30

horizontal:
  ground: 0.5274
  air: 0.5274
  sprint_extra: 0.327
vertical:
  ground: 0.361375
  air: 0.361375
  sprint_extra: 0.0
projectile:
  enabled: false
  horizontal_multiplier: 1.0
  vertical_multiplier: 1.0
  direction_override: false
packet:
  misplace:
    enabled: false
    distance: 0.2
  delay:
    enabled: true
    ticks: 3
stop_sprint: false
y_limit: 0.675
hit_delay: 20
potion:
  enabled: true
  horizontal_multiplier: 1.05
  vertical_multiplier: 1.0
  compensation_multiplier: 1.15
modern:
  cooldown_affects_kb: true
  netherite_kb_resistance: true
syuu.net
# Syuu nodebuff & boxing - 2025/10/30

horizontal:
  ground: 0.7
  air: 0.7
  sprint_extra: 0.1232
vertical:
  ground: 0.35075
  air: 0.35075
  sprint_extra: 0.0
projectile:
  enabled: false
  horizontal_multiplier: 1.0
  vertical_multiplier: 1.0
  direction_override: false
packet:
  misplace:
    enabled: false
    distance: 0.2
  delay:
    enabled: false
    ticks: 3
stop_sprint: false
y_limit: 0.675
hit_delay: 20
potion:
  enabled: true
  horizontal_multiplier: 1.05
  vertical_multiplier: 1.0
  compensation_multiplier: 1.15
modern:
  cooldown_affects_kb: true
  netherite_kb_resistance: true
coldpvp.com
# ColdPVP nodebuff & boxing - 2025/10/30

horizontal:
  ground: 0.5
  air: 0.5
  sprint_extra: 0.35
vertical:
  ground: 0.3635
  air: 0.3635
  sprint_extra: 0.0
projectile:
  enabled: false
  horizontal_multiplier: 1.0
  vertical_multiplier: 1.0
  direction_override: false
packet:
  misplace:
    enabled: false
    distance: 0.1
  delay:
    enabled: false
    ticks: 2
stop_sprint: true
y_limit: 0.675
hit_delay: 20
potion:
  enabled: true
  horizontal_multiplier: 1.05
  vertical_multiplier: 1.0
  compensation_multiplier: 1.15
modern:
  cooldown_affects_kb: true
  netherite_kb_resistance: true

❤ If you find this plugin useful, please consider leaving a 5-star review. Thank you! ❤

Similar projects

Plugin →