All Mods Resource Packs Data Packs Shaders Modpacks Plugins
EternalCombat

EternalCombat

by Piotrulla • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

Information

EternalCombat requires PacketEvents plugin to work.

You can download it from here

EternalCombat 2.0 has been tested on Minecraft versions 1.17.1 to 26.2, but it should work seamlessly on most other versions too. If you run into any compatibility issues, please let us know in the Issues tab. The plugin requires Java 21 or later, so ensure your server is ready. Ready for action? Install EternalCombat and dive in now!

How Does EternalCombat Work?

Take your server’s PvP experience to epic heights with EternalCombat 2.0! Our robust combat logging system ensures fair, heart-pounding battles that keep players on their toes. Here’s a rundown of what makes it stand out:

  • Combat Logging
    No more dodging fights by logging out! Once players are in combat, they’re committed until the showdown ends. Watch it in action:

    Combat log anti logout feature
  • Support for newest features
    Our plugin features cooldown and delays for tridents, spears and much more. With out of the box configurable feats.

    Trident and spear cooldown feature
  • Customize combat experience
    Add custom effects to players in combat or death. Everything should be configurable and user-friendly:

    Lightning strikes when players die Flare indicates players death location
  • Spawn Protection (Configurable)
    Stop players from fleeing to safety! Block access to spawn or safe zones during combat – tweak it to fit your server’s rules. See how it works:

    Border around protected region
  • Crystal PvP support
    Engage in intense Crystal PvP battles without worrying about players logging out mid-fight! EternalCombat keeps everyone in the game until the last anchor hit. Check it out:

    Crystal PvP showcase
  • Fully Customizable Combat
    Tailor the combat experience to your liking with a ton of options! From disabling elytra to setting drop rates for defeated players, you’re in control. Here’s what you can tweak:

    Feature Description
    Elytra & Inventory Disable elytra or inventory access during combat.
    Commands Whitelist or blacklist specific commands in combat.
    Damage & Projectiles Customize damage causes and projectile tagging settings.
    Ender Pearls Add cooldowns to pearl usage in fights.
    Block Placement Enable or disable block placement during combat.
    Drop Rates Set a percentage of items dropped by defeated players.
    Temporary Effects Apply special effects to players in combat for added intensity.
    And More! Dive into the config for even more fine-tuning options!

Curious for more? Check out our quick and exciting YouTube presentation here to see EternalCombat in full swing and learn why it’s a game-changer for your server!

Permissions for EternalCombat

Control who can use EternalCombat’s powerful features with these permissions:

Permission Description
eternalcombat.status Check a player’s combat status with /combatlog status <player>.
eternalcombat.tag Start a fight between players using /combatlog tag <player> [player2].
eternalcombat.untag Remove a player from combat with /combatlog untag <player>.
eternalcombat.untagall Remove all players from combat with /combatlog untagall.
eternalcombat.stats View combat statistics with /combatlog stats.
eternalcombat.reload Reload the plugin with /combatlog reload.
eternalcombat.receiveupdates Receive notifications about new plugin versions on join.
eternalcombat.bypass When exclude excludeAdminsFromCombat is set to true users with this permission will not be tagged

PlaceholderAPI

EternalCombat 2.0 fully supports PlaceholderAPI, letting you integrate placeholders into other compatible plugins. Follow the PlaceholderAPI instructions to get started. Here are the available placeholders:

Placeholder Description
%eternalcombat_opponent% Returns the name of the player you’re fighting.
%eternalcombat_opponent_health% Returns the opponent’s health in 00.00 format.
%eternalcombat_remaining_seconds% Returns seconds remaining until the player exits combat.
%eternalcombat_remaining_millis% Returns milliseconds remaining until the player exits combat.

If a player isn’t in combat, placeholders return an empty string. If combat wasn’t triggered by another player, opponent-related placeholders will also return empty.

Developer API

1. Add repository:

With Gradle:

maven {
    url = uri("https://repo.eternalcode.pl/releases")
}

With Maven:


<repository>
    <id>eternalcode-reposilite-releases</id>
    <name>EternalCode Repository</name>
    <url>https://repo.eternalcode.pl/releases</url>
</repository>

2. Add dependency:

With Gradle:

compileOnly("com.eternalcode:eternalcombat-api:2.5.2")

With Maven:


<dependency>
    <groupId>com.eternalcode</groupId>
    <artifactId>eternalcombat-api</artifactId>
    <version>2.5.2</version>
    <scope>provided</scope>
</dependency>

Contributing

We’d love your help to make EternalCombat even better! Check out our contributing guide for details on how to get involved and our code of conduct.

Reporting Issues

Found a bug? Report it in the Issues tab. Please include as much detail as possible, like your Minecraft and plugin versions, along with any error messages or logs. Ready to transform your server’s combat experience? Download EternalCombat 2.0 now and let the battles begin!

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
26.2 26.1.x 1.21.x +2
Folia Paper Purpur
1d ago 1
26.2 26.1.x 1.21.x +2
Folia Paper Purpur
1d ago 1
26.2 26.1.x 1.21.x +2
Folia Paper Purpur
1d ago 1
26.2 26.1.x 1.21.x +2
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
26.1.x 1.21.x 1.20.x +1
Folia Paper Purpur
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.4
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.4
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.4
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.4
Folia Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +2
Folia Paper Purpur
1d ago 1
1.21.x 1.20.x 1.19.x +1
Paper Purpur
1d ago 1
1.21.x 1.20.x 1.19.x +1
Paper Purpur
1d ago 1
1.21.x 1.20.x 1.19.x +1
Paper Purpur
1d ago 1
1.21.x 1.20.x 1.19.x +6
Paper Purpur
1d ago 1
1.21.x 1.20.x 1.19.x +6
Bukkit Paper Purpur
1d ago 1
1.21.x 1.20.x 1.19.x +6
Bukkit Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +6
Bukkit Paper Purpur Spigot
1d ago 1
1.21.x 1.20.x 1.19.x +1
Bukkit Paper Purpur Spigot
1d ago 1
1.21 1.20.x 1.19.x +6
Bukkit Paper Purpur Spigot
1d ago 1
1.20.x 1.19.x 1.18.x +5
Bukkit Paper Purpur
1d ago 1
1.20.x 1.19.x 1.18.x +5
Bukkit Paper Purpur Spigot
1d ago 1
1.20.x 1.19.x 1.18.x +5
Bukkit Paper Purpur Spigot
1d ago 1
1.20.x 1.19.x 1.18.x +5
Bukkit Paper Purpur Spigot
1d ago 1
1.20.x 1.19.x 1.18.x +2
Bukkit Paper Purpur Spigot
1d ago 1
1.19.x 1.18.x 1.17.x +9
Bukkit Paper Purpur
1d ago 1
1.19.x 1.18.x 1.17.x +9
Bukkit Paper Purpur Spigot
1d ago 1
dependency: Update Gradle to v9.8.0 (#441)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Bump version to 2.6.0-SNAPSHOT
[2.5.2] 2.5.2 by Piotrulla on Oct 12, 2026
Download
![EternalCombat v2](https://github.com/EternalCodeTeam/EternalCombat/blob/master/assets/readme-banner.png?raw=true)

# ✨ Improvements & New Features

  • Added **pearl stasis prevention** for Ender Pearls during combat.
  • Added configurable **Ender Pearl cooldowns**, delays and an option to extend the combat tag after throwing a pearl.
  • Added configurable **Riptide restrictions**, cooldowns and combat tag extension.
  • Added support for the new **Spear Lunge** mechanic with configurable cooldowns.
  • Added the {OPPONENT} placeholder to combat notifications and tag messages.
  • Added an option to keep the combat tag active below a configurable void height to prevent escaping combat through the void.
  • Added an optional **sign editing blocker during combat**, useful for preventing sign based Ender Pearl exploits.
  • Added native **GriefPrevention support** for restricted regions and PvP protected claims.

# 🐛 Fixes

  • Fixed EntityMountEvent compatibility on modern Paper versions.
  • Fixed incorrect combat handling on **Folia** in some damage events.
  • Improved Folia detection and scheduler handling.

# 🧩 Compatibility & Other Notable Changes

  • Added and verified support for **Minecraft 26.2**.
  • Minecraft **26.3** should also work once PacketEvents adds support for it.
Update dependencies for Minecraft 26.2 compatibility and improve README
Rename crystalpvp classes and update package structure for clarity
Fix README for improved formatting and clarity
GH-180 Add GriefPrevention region support for combat restrictions (#423)
dependency: Update dependency java-jdk to v25 (#432)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update dependency com.github.ben-manes.caffeine:caffeine to v3.3.0 (#435)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update Gradle to v9.7.1 (#426)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update dependency org.jetbrains.kotlin:kotlin-stdlib-jdk8 to v2.4.20 (#428)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Fix PacketEvents version in gradle Versions declaration (#434)
GH-414 feat: add spear with lunge cooldown (#414)

  • add spear cooldown and lunge support based on new api handling without building against it due to support for older versions

Signed-off-by: Michał Wojtas <wojtas.michal90@gmail.com>

  • Resolve AI review. Add gif to readme

Signed-off-by: Michał Wojtas <wojtas.michal90@gmail.com>

  • Optimise SpearLungeController

Signed-off-by: Michał Wojtas <wojtas.michal90@gmail.com>

  • Update eternalcombat-plugin/src/main/java/com/eternalcode/combat/fight/spear/SpearLungeController.java

Co-authored-by: Jakub Kędziora <77227023+Jakubk15@users.noreply.github.com>

  • Update eternalcombat-api/src/main/java/com/eternalcode/combat/fight/spear/SpearService.java

Co-authored-by: Jakub Kędziora <77227023+Jakubk15@users.noreply.github.com>


Signed-off-by: Michał Wojtas <wojtas.michal90@gmail.com>
Co-authored-by: Jakub Kędziora <77227023+Jakubk15@users.noreply.github.com>
dependency: Update dependency xyz.jpenilla:run-task to v3.1.0 (#420)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update dependency xyz.jpenilla:run-task to v3.1.0 (#420)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
GH-422 Keep combat tag active below void height to prevent evasion (#422)

  • Keep combat tag active below void height to prevent evasion

  • Respect ignored worlds for void combat
Add opponent placeholder to combat tag chat message (#421)

  • Add opponent placeholder to combat tag chat message

  • Pass opponent UUID when tagging for combat
dependency: Update junit-framework monorepo to v6.1.3 (#418)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
GH-395 Add combat sign editing blocker (#395)

  • Add combat sign editing blocker

  • Fix.
dependency: Update Gradle to v9.7.0 (#419)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update dependency com.gradleup.shadow:com.gradleup.shadow.gradle.plugin to v9.6.1 (#413)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update junit-framework monorepo to v6.1.2 (#411)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update dependency org.jetbrains.kotlin:kotlin-stdlib-jdk8 to v2.4.10 (#412)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update Gradle to v9.6.1 (#405)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update Versions.PACKETS_EVENTS (#402)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update dependency me.clip:placeholderapi to v2.12.3 (#407)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update dependency com.gradleup.shadow:com.gradleup.shadow.gradle.plugin to v9.5.1 (#409)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dependency: Update junit-framework monorepo to v6.1.1 (#408)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
GH-400 Resolve EntityMountEvent registration failure on modern Paper (#400)

  • Fix: Resolve EntityMountEvent registration failure on modern Paper

Newer Paper builds (e.g. 26.1.2) removed org.spigotmc.event.entity.EntityMountEvent, causing KnockbackRegionController registration to fail and region knockback protection to be disabled.

Resolve EntityMountEvent at runtime (checking Bukkit, Paper, and Spigot packages) and register it reflectively while preserving the 1.19.3 compile target for compatibility.

  • Optimize dynamic mount event handling


Co-authored-by: Martin Sulikowski <vluckyyy.biznes@gmail.com>
dependency: Update Gradle to v9.6.0 (#397)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
EternalCombat Icon
Download EternalCombat
Select game version
Select platform