Skip to content

Releases: kernitus/BukkitOldCombatMechanics

v2.0.4

28 Oct 16:42
bf3077b
Compare
Choose a tag to compare

2.0.4 (2024-10-28)

Bug Fixes

  • avoid ghost items after sword block restore (822fb1f), closes #749
  • don't prevent moving shield to chests in disable offhand module (b299df2)
  • error when right clicking air while holding block in <1.13 (cbc0c4b), closes #754
  • listen to dynamically loaded worlds for modesets (f5b59d7), closes #747
  • resolve elytras always unequipped by removing out-of-scope module (07106e6), closes #725
  • fix sword blocking shield ending up in inventory on world change (8aa3fa3), closes #753

2.0.3 - 1.21 loading error & empty message fix

21 Sep 14:38
954cc32
Compare
Choose a tag to compare

Fixes

  • Fix Reflector loading error when running Spigot 1.21
  • Fix setting empty message in config sending the message anyway instead of disabling (thanks @SrBedrock)

2.0.2 - Full 1.20.6 support & bug fixes

03 Jun 17:18
f744ff1
Compare
Choose a tag to compare

Features

  • Full support for Spigot 1.20.6, including new potion and enchantment names. This fixes potion, golden apples, fishing knockback, and damage modules on newest version
  • You can now disable messages by setting relevant string in config.yml to empty ""

Changes

  • Minimum Java version required is now Java 17, but plugin still supports Spigot 1.9 through 1.20.6
  • Removed player-collisions module. This module relied on NMS and kept breaking with almost every new version of the game, or when running with badly-coded scoreboard plugins. You can use the enable-player-collisions option in paper.yml instead.
  • Removed SpartanAPI dependency. Library repository for API disappeared and this was breaking builds.

Bug Fixes

  • Account for fake overdamage from environmental sources. This was causing issues with players getting large amounts of damage too quickly if they received non-combat damage and then were hit by another player again, bypassing damage immunity.
  • Fix NullPointerException when sending custom sounds (e.g. using resource pack with sound modules). Thanks @Waischbrot
  • Fix no getPlayer method for BlockCanBuildEvent when using sword-blocking module in Spigot 1.12.2 or lower
  • Fix gapple module effects overriding pre-existing but longer effects of same strength (e.g. regen would be reset down even if player already had longer regen effect)
  • Fix splash potions being thrown in the sky not being affected by old-potion-effects module

2.0.1 - Modesets bugfix + more placeholders

12 Jan 20:00
fab515b
Compare
Choose a tag to compare

Bug Fixes

  • Fix error using /ocm mode when current world not in config
  • Fix mode.own permission not working

New Features

  • Added placeholders for enderpearl, gapple, and napple cooldowns. See wiki for more details.

2.0.0 - Modesets: per-user module combat modes

08 Jan 15:59
Compare
Choose a tag to compare

Features

  • Added per-user combat mode modesets supporting all modules, not just attack speed
  • You can now configure as many modesets as you like, and specify which modules should be enabled when a player is in that modeset
  • You can specify which modesets are allowed in which worlds
  • Modesets are persistent across server restarts
  • Players can switch between allowed modesets with /ocm mode for their current world
  • This allows players to choose what combat mode to be in, as long as they have the permission. The mode of the attacker takes precedence for any given damage calculation, to allow for a fair fight.
  • PlaceholderAPI support has been updated to display the player's current modeset for the player they are in with %ocm_modeset%

Important Changes

  • Fixed last damage calculations not taking into account non-entity damage. Improves compatibility with other plugins and fixes problems with damage immunity.
  • Moved worlds section from individual module configs to new modesets section
  • Removed toggle, enable, and disable commands. These have been replaced by the mode command.
  • sword-sweep-particles and disable-attack-sounds modules now require ProtocolLib. This allowes for faster updates and greater inter-plugin compatibility.

Smaller changes

  • Allow configuring message prefix
  • Added denied message when offhand is disabled
  • Added ability to disable randomness in old armour strength calculations
  • Allow configuring projectiles affected by projectile randomness module

Bug Fixes

  • Fixed issues with sword blocking module, including duplication
  • Fixed fishing knockback module not getting picked up by other plugins as entity damage (e.g. WorldGuard)
  • Fixed projectile randomness module launching items at a right angle sometimes
  • Remove offhand item if player switches world and is not allowed

1.12.2 - Damage plugins compat & Spigot 1.20

09 Jun 10:18
Compare
Choose a tag to compare

Build changes

  • Switched from building with Maven to Gradle
  • Updated to build against Spigot 1.20 API

Compatibility

  • Improved compatibility with other plugins that extensively modify damage e.g. McMMO. This should fix remaining issues with high click rate/no immunity.

Fixes

  • Fixed being able to shift-click shield into offhand slot when disabled
  • Fixed sword blocking not triggering when right-clicking air
  • Fixed certain potion effects being removed and re-applied with old gapple module, including health boost hearts being reset
  • Fixed Spartan anticheat compatibility throwing console error

1.12.1 - Auto updater + fixes

28 May 11:51
Compare
Choose a tag to compare

New features

  • Added auto-updater, can be configured in config.yml
  • Added option to force config update even when on Spigot < 1.18.1 (warning: this will remove all config comments)
  • Removed list of interactive blocks from config

Bug Fixes

  • Fixed issues with fishing rods being able to be used in Worldguard & Residence restricted areas
  • Fixed damage calculation not being applied when running Spigot < 1.16 and having attack cooldown enabled
  • Fixed errors with get absorption method when running Spigot < 1.15
  • Fixed problems with eating golden apples being reset when damage taken

1.12.0 - Damage Calculations Rework

18 Apr 16:49
Compare
Choose a tag to compare

This release is the culmination of a lot of work in making sure the damage calculations in the plugin are as accurate as possible. Extensive automated testing was conducted in order to make sure the weapon behaviour is accurate, and a lot of problems were found. They have now been fixed, and you will find the damage reflects the configuration as closely as possible. Additionally, compatibility with other plugins modifying damage was improved significantly.

New features

  • Add option to use old sharpness calculations to OldToolDamage module
  • Add automated config.yml upgrader for Spigot 1.18.1 and above. This means you config will not longer be reset when updating and all your options will be carried over to the new config

Bug fixes

  • Fix error on offhand swap with DisableElytra module
  • Fix error on /ocm enable command on Spigot >1.16
  • Added backwards compatibility for certain methods not existing, supports back to 1.9
  • Fix DisableAttackSounds module errors on 1.19.3
  • Improve compatibility with scoreboard plugins

Damage Changes

  • Changed minimum attack speed to disable cooldown to 40
  • Fix overdamage and last damage calculations
  • Fix overdamage calculations interactions with other modules
  • Correctly scale attack damage by cooldown, including enchantment damage
  • Fix critical hit detection in 1.9, by checking player is not sprinting
  • Fix critical hit calculation to be 1.5 multiplier of damage
  • Fix weakness potions causing damage calculations not to run for overdamage
  • Fix lingering & dispensed potions not being included by OldPotionEffects module
  • Fix OldArmourStrength module not taking resistance and absorption into account
  • Updated list of damages that bypass armour to 1.19
  • Allow greater compatibility with custom weapons, especially MCMMO and Crackshot
  • Fix successful overdamage not updating last damage value
  • Fix absorption modifier always being applied even when not needed

1.11.0 - New commands, full 1.18 compatibility & many fixes

12 May 14:36
Compare
Choose a tag to compare

New features

  • Allow toggling cooldown via console
  • Allow configuring cooldown messages
  • Add /ocm command tab completion
  • Add oldcombatmechanics.swordblock permission for sword blocking (if turned on in config)
  • Add /ocm <enable/disable> world-wide and server-wide commands for toggling pvp version
  • Add /ocm test command to run automated damage tests in game (still a work-in-progess)
  • Check wiki for all details on new commands

Bug fixes

  • Fix console error with freeze damage when running Spigot < 1.17
  • Add Player Collisions module support for 1.18 (plugin still worked fine if disabled)
  • Avoid random knockback being applied in certain situations
  • Fix enderpearl fall damage not being applied correctly in Projectile Knockback module
  • Make plugin use less memory if the server is running out of it
  • Allow non-nms packets through with a warning for greater compatibility with other plugins
  • Allow gapple cooldown to be applied even if old effects are disabled
  • Fix console error in Disable Projectile Randomness module if running Spigot < 1.14
  • Fix brewing stand refueling on Spigot 1.17 and above
  • Update SpartanAPI dependency for compatibility with newer versions

Fixes to damage calculations

  • Set correct last damage when player invulnerable to include base damage + strength modifier + crits
  • Rearrange overdamage order calculation
  • These fix problems with spamming attacks when a player or an entity should have invulnerability overdamage

From this version onwards, project licence was changed to Mozilla Public Licence 2.0

1.10.0 - Old knockback & crits, 1.17 support

27 Jul 17:47
Compare
Choose a tag to compare

Updated dependencies, reflection and added freeze damage to work with Spigot 1.17 (with great help from I-Al-Istannen)

New features:

  • Added old player knockback module (with MWHunter's help)
  • Added old critical hits module
  • Added golden apple cooldown messages (with M0diis's help)

Fixes:

  • Fixed shield-blocking damage reduction & armour durability
  • Fixed compatibility with plugins that modify item damage, e.g. EpicBosses and MMOItems
  • Fixed thorns causing too much damage through armour
  • Fixed ignoring invulnerability overdamage, which caused repeated attacks to be too strong
  • Fixed errors with netherite tools and shovels caused by Spigot 1.13+ item name changes
  • Accounted for zombie horse and zombie villagers when calculating smite enchantment damage