Skip to content

Releases: plushmonkey/JedCore

JedCore 2.6.5

26 Jan 04:03
Compare
Choose a tag to compare
  • Fix version check so it works with Java 9.
  • Significantly improve some collision checks.
  • Use AABB/Sphere collision tests for AirPunch, Combustion, FireBall, and FireShots.
  • Make ability and entity collision radii configurable for AirBlade, AirPunch, SonicBlast, Combustion, Discharge, and EarthKick.
  • Make ability collision radius configurable for DaggerThrow.
  • Improve AirBlade.
    • Improve AirBlade ability collisions by properly implementing getLocations and getCollisionRadius.
    • Change AirBlade to use Sphere-AABB entity collision detection. This allows it to hit the player's head when aimed above.
  • Change SonicBlast to use Sphere-AABB entity collision detection.
  • Improve Discharge.
    • Change Discharge to use Sphere-AABB entity collision detection.
    • Fix Discharge ability-ability collision detection by properly implementing getLocations and getCollisionRadius.
    • Make duration and slot swapping configurable for Discharge.
  • Improve EarthKick.
    • Change EarthKick to using AABB-AABB entity collision detection.
    • Update EarthKick to use the new collision system. Everything is configurable under Abilities.Earth.EarthKick.Collisions. All of the old hardcoded collisions are set by default.
  • Fix EarthShard and MudSurge collisions.
    • Check all falling blocks when these abilities collide. The collision system only detects a single collision from the location set every update, so they all must be checked. This fixes collisions with shields.
  • Fix collision initialization for SubElement abilities.
  • Add config option to EarthSurf and WaterFlow for removing them when any damage is taken instead of dropping below initial health.
  • Fix FrostBreath lava interaction.
    • Don't create non-TempBlock snow layer when the block is a lava TempBlock. This fixes an interaction with LavaFlow where it could create a giant permanent hole in the ground.
  • Improve WaterGimbal.
    • Improve WaterGimbal so the speed can be a double.
    • Fix WaterGimbal blasts so they properly end when colliding with blocks.
    • Change WaterGimbal blasts so they use AABB-AABB entity collision.
    • Implement getLocation and getCollisionRadius for WaterGimbal blasts. This fixes ability collisions.
    • Remove WaterBlast enabled configuration and set it to be a hidden ability.
    • Fix WaterGimbal collision initializer so it properly attaches collisions to WaterBlast.
  • Make FireSki more configurable
    • Add configuration option for changing required height for activation.
    • Add configuration option for changing the activation to require punching. This makes it so FireSki only activates when the player jumps in the air and punches while also sneaking. This is to make it harder to accidentally activate.
  • Fix CollisionInitializer so it properly loads element combo collisions.
  • Fix CollisionInitializer so it doesn't override disabled collisions.
  • Clean up log messages
    • Add configuration option for logging debug messages.
    • Hide collision initialization and fire tick method by default.
    • Remove the updater log output.

JedCore 2.6.4

21 Dec 07:08
Compare
Choose a tag to compare

Note: This is an important performance update if used with ProjectKorra 1.8.5 or 1.8.6 as those versions cause constant bending board updates.

  • Should work with ProjectKorra 1.8.3 - 1.8.6.
  • Should work with Spigot 1.9.4 - 1.12.2.
  • Fix bending board toggle.
    • Ensure that the bending board isn't redrawn after being hidden.
    • Ignore FastSwim cooldown events because it constantly spams them.
  • Refactor and improve LavaDisc.
    • Add config option for blocking lava spread from destroyed blocks. This will prevent players from creating large lava fountains.
    • Add config option for selecting source range.
    • Change config location for several options. They are moved under Source or Destroy depending on what they are used for.
  • Improve DaggerThrow by adding a config option for requiring multiple arrows to hit to activate DaggerThrow interactions.
  • Improve MudSurge by adding a config option for earthbenders taking fall damage on MudSurge source blocks.
  • Add CooldownEnforcer utility.
    • Copies over cooldowns from a player's previous session. This stops players from logging off to reset their cooldowns.
    • The cooldowns continue ticking down when the player is offline.
    • Add config option to enable this at Properties.CooldownEnforcer.Enabled. It is disabled by default.
    • Add config option for enabling it on plugin reload. This is useful to disable when needing to reset a cooldown to test it out.

JedCore 2.6.3

01 Dec 22:28
Compare
Choose a tag to compare
  • Should work with ProjectKorra 1.8.3 - 1.8.6.
  • Should work with Spigot 1.9.4 - 1.12.2.
  • Fix MetalFragments bypassing edge of protections. (PhanaticD)
  • Improve DaggerThrow.
    • Add configuration section to DaggerThrow for destroying abilities when the target player is hit by an arrow. This is configurable under Abilities.Chi.DaggerThrow.Interactions.
    • Make DaggerThrow knock players off spouts. This is configurable under Abilities.Chi.DaggerThrow.Interactions. (StrangeOne101)
    • Fix a bug where DaggerThrow would automatically shoot an arrow when the target takes damage.
  • Add per world configurations.
    • All ability configuration is first checked under the section Worlds.[worldName] before checking the global config section. It falls back to the global config if that section isn't defined.
      • Example: Worlds.world.Abilities.Earth.EarthSurf.Speed can be set to 1.0 and it will be 1.0 in the world "world", but it will be whatever Abilities.Earth.EarthSurf.Speed is set to in other worlds.
  • Improve MudSurge.
    • Improve MudSurge by adding OutOfRange policy. This makes it so the ability is removed if the player moves too far away from the source block before surging. This is configurable.
    • Improve MudSurge by adding SwappedSlots policy. This makes it so the ability is removed if the player changes selected ability before surging. This is configurable.
  • Improve Combustion.
    • Add config option for waiting for regen to finish. Setting this to false makes Combustion follow the cooldown instead of requiring the player to wait until regen is finished. This is set to true by default to keep it the way it was before.
    • Add removal policies. Add SwappedSlots removal policy. This makes it so you can't swap slots while charging. This is disabled by default to keep it the way it was before.
    • Add ExplodeOnDeath config option to Combustion. This causes the projectile to explode if the player controlling it dies. If this is disabled, it has old behavior where it will just disappear.
    • Fix bug where the projectile wouldn't collide with protected terrain.
    • Fix bug where the explosion would damage players in protected areas.
    • Fix bug where players would have to wait for RegenTime even if no blocks were destroyed.
    • Fix misfire calculation. Now properly reads the MisfireModifier.
  • Add ChiRestrictor. This tries to stop chi abilities from being activated from ranged attacks. Only works on Chi abilities that have a public method with the signature "Entity getTarget()". This should work with most of the core Chi attacks.
    • Add config option for enabling ChiRestrictor. It is disabled by default.
    • Add config option for a whitelist. This makes it ignore certain Chi attacks. This is a comma separated array of ability names.
    • Add config option for resetting the cooldown. The PK Chi abilities will set the cooldown even if the AbilityStartEvent is cancelled. Setting this to true will reset the cooldown, so it will seem like nothing happened at all.
    • Add config option for melee distance. The ChiRestrictor will stop any Chi attacks that are activated farther away than this distance.

JedCore 2.6.2

28 Aug 16:28
Compare
Choose a tag to compare
  • Fix Discharge permission spelling. This will enable Discharge with the jedcore.fire permission node.
  • Fix ElementSphere so it works for non-opped players. (PhanaticD)
  • Fix exception with Bloodbending and BloodPuppet. (PhanaticD)

JedCore 2.6.1

06 Aug 16:59
Compare
Choose a tag to compare
  • Add support for ProjectKorra 1.8.6.
    • Continues to work with 1.8.5, 1.8.4 and 1.8.3.
  • Continues to work with 1.9.4 - 1.12.
    • ProjectKorra 1.8.6 requires 1.10 to work.

JedCore 2.6.0

04 Aug 10:16
Compare
Choose a tag to compare
  • Add support for ProjectKorra 1.8.5.
    • Continues to work with 1.8.4 and 1.8.3.
  • Add support for Spigot 1.12.1.
    • Continues to work with 1.9.4 - 1.12.
    • ProjectKorra 1.8.5 doesn't support 1.12.1, but a custom build might.
  • Improve FireSki activation.
    • Use the new collision methods for detecting if player is on the ground before activating. This fixes the bug where FireSki would activate when standing on the edge of a block.
  • Add option to start AirGlide cd when on ground .
    • Add config option Abilities.Air.AirGlide.RequireGround that makes it so AirGlide will continuously reset the cooldown until the user touches the ground. This is disabled by default.

JedCore 2.5.6

31 Jul 00:05
Compare
Choose a tag to compare
  • Improve EarthSurf
    • Add a config option for scaling the cooldown based on the duration.
    • Add a config option for a minimum cooldown when using scaling.
    • Add a config option for using relaxed collision detection. This will just check the block directly in front of the player instead of a column.
    • Use spring equation to keep the player at the target height. This is configurable with SpringStiffness.
    • Disable reverting allowFlight because it almost always resulted in giving the player real flight.
    • Improve the method for getting distance from ground by storing the temp air blocks and counting them as solid blocks.
  • Fix EarthSurf lag
    • Set TempFallingBlocks to expire when created from EarthSurf. This fixes the bug where they would be tracked in the instances list forever, causing a lot of lag.
    • Use MaterialUtil#isTransparent to avoid unnecessary region protection checks.
  • Make EarthSurf height check more tolerant
    • Add a height tolerance config value. This is used to smooth the player's height for the max height check. Larger values will allow the player to climb down hills without removing the ability.

JedCore 2.5.5

25 Jul 23:11
Compare
Choose a tag to compare
  • Improve MagmaBlast
    • Properly load the configuration values.
    • Only start cooldown if sources were successfully raised.
    • Improve the way random source blocks are selected. Max source blocks will always be selected if they are available.
    • Only use source blocks if they have the space to fly upwards.
    • Add configuration option for requiring LavaFlow to not be on cooldown.
    • Remove TempFallingBlocks when they are no longer active. This fixes a bug where MagmaBlast instance would not end until swapping slots.
    • Fix a bug where it would try to damage any entity instead of only LivingEntities.
  • Make FrostBreath ice meltable
    • Use Torrent as the container for the ice blocks. This will make it so the ice created from FrostBreath properly melts when the player moves far enough away from it. It also fixes the bug where HeatControl couldn't melt it.
  • Improve WaterGimbal and WaterFlow sourcing
    • Change WaterGimbal and WaterFlow so they can source from water bendable TempBlocks.
    • Add config option to WaterFlow for sourcing from plants.
    • Add config option to WaterGimbal for requiring adjacent sources. This is enabled by default to keep it the same as it was.
    • Add config option to both WaterFlow and WaterGimbal for using water bottles.
  • Fix bending board lag
    • There's a bug with ProjectKorra 1.8.4 that never kills IceWave abiilty, so it spams cooldown event. This gets worse every time someone uses IceWave, and lasts until server restarts. Add a catch to the PlayerCooldownChangeEvent handler that ignores IceWave. This will fix bending board lag.

JedCore 2.5.4

18 Jul 21:10
Compare
Choose a tag to compare
  • Improve performance of WaterFlow
    • Use a custom isTransparent method that doesn't do a region protection check. The default pk version does the check with "WaterFlow" as the ability, but WaterFlow uses "Torrent". This results in a cache miss, doubling the amount of work that needs to be done.
  • Change WaterGimbal so it can source from water bendable TempBlocks.

JedCore 2.5.3

16 Jul 23:43
Compare
Choose a tag to compare
  • Track hidden cooldowns on bending board.
    • The list of abilities to watch can be configured in boards.yml.
  • Improve Backstab.
    • Change the implementation so it uses dot product instead of cardinal directions. This will make it more accurate.
    • Add configuration option for selecting the max activation angle. Configurable with Abilities.Chi.Backstab.MaxActivationAngle.