Skip to content

Releases: CoolLord22/OtherAnimalTeleport

Huge optimization, better messaging, new config values!

28 Oct 03:45
3be7de2
Compare
Choose a tag to compare

Introduction:

This update adds in new config features so please read the drafted notes carefully! Large optimizations have been made to reduce server impact during entity detection. New messages to distinguish which entity failed teleporting have been added. Please see config changes at the end of this changelog!

IMPORTANT If you do not wish to delete your entire config file, please see the section at the very bottom of these update draft notes to see config changes and what needs to be added to your current file.

Installation:

  1. Stop the server.
  2. Save a copy of your current folder
  3. Delete the old jar (in /plugins folder) and copy the new jar in place of it.
  4. Start the server.
  5. Modify the config to your liking, and restart the server (or run /oat reload) to update the changes.
  6. Report bugs you discover!

Additions

  • Added much more console logging w/ improved entity ID's. Can increase verbosity in config to see enhanced logging. d82f258 be43f96 b9e8d7a 5066b40 02d2d11
  • Adds longer delay for entity to be invulnerable after teleporting. d761865
  • Adds plugin chunk ticket to teleport location to help prevent entity disappearing/having no tracking by keeping that location loaded before TP is sent. c8bdad2
  • Added negative entity matching for allowed entity types. Entities can be denied with a - See usage below. dcab4c9
# Allow all entities except pigs and cows
allowed_entities: [ANY, -PIG, -COW]
# Teleport causes we should ignore
ignore_causes: [DISMOUNT, EXIT_BED, UNKNOWN]
  • Adds new metrics chart for list of allowed/denied entities. See the respective data on bStats page. cc3d77d
  • Adds better messaging to log exactly which entity (regular, tamed, leashed) was left behind to the player. See config values at the bottom of this commit message. Any message can be set to "" to disable. 81a013f 2be51c2 6c8d940

Deletions

  • Removed 1.19 dependency as 1.20 should be backwards compliant
  • Removed ignore_unknown_causes config flag, as it is replaced by new ignore_causes setting.

Modifications

  • Bumping plugin version to 2.3. 4fa9bd3
  • Updating dependencies to latest snapshot. d442504
  • Delayed update checker by a tick to prevent message from showing up before playerjoin. d9a837b
  • Plugin correctly exits entity loop when the entity is successfully teleported, preventing the error message from being logged when it shouldn't have been sent. ddd6652
  • Plugin previously used ArrayLists to track entity types that were allowed to be teleported. This has very high time complexity and would cause severe lag when many entities were processed. We changed over to HashMaps for this storage which greatly relieves the server load. 63de3f8 27d09a2
  • Delays plugin enabling until all worlds have been loaded by the server to help reduce issues with worlds not being found. 1ea62d1
  • Optimized code, removed unnecessary statements, fixed improper types, etc. 2c7d863 8a875f3 6ce2cda 90f5edf

Config Changes

#######################
# Add the following to your config to ignore error causing teleport events
# Teleport causes we should ignore
ignore_causes: [DISMOUNT, EXIT_BED, UNKNOWN]

#######################
# Edit the messages section to contain the following
fail_teleport: "&7An entity could not be teleported and is located near (&c%x&7, &c%y&7, &c%z&7)."
entity_left: "&7An entity was left behind near (&c%x&7, &c%y&7, &c%z&7)."
leashed_entity_left: "&7A leashed entity was left behind near (&c%x&7, &c%y&7, &c%z&7)."
tamed_entity_left: "&7A tamed pet was left behind near (&c%x&7, &c%y&7, &c%z&7)."

Lots of code cleanup and listener logic changes

02 Feb 09:14
17c1759
Compare
Choose a tag to compare

Introduction:

This update adds in new config features so please read the drafted notes carefully! Optimizations to the detection and teleportation of entities have been made. The plugin now distinguishes entities being left due to plugin errors (something in the code throws an error), vs the player failing a check (world group, region, permission, etc.).

If you do not wish to delete your entire config file, please see the section at the very bottom of these update draft notes to see config changes and what needs to be added to your current file.

Installation:

  1. Stop the server.
  2. Save a copy of your current folder
  3. Delete the old jar (in /plugins folder) and copy the new jar in place of it.
  4. Start the server.
  5. Modify the config to your liking, and restart the server (or run /oat reload) to update the changes.
  6. Report bugs you discover!

Additions

  • Added new message to player for an entity being left behind. Distinguishes this from the message sent when an entity wasn't teleported due to an error. 4b440e2 c1c09d5
  • Adds a short delay of invulnerability to the entity being teleported to prevent unintended damage. 22fdb61
  • Added new flag to ignore unknown teleport causes. IMPORTANT This may help solve vehicle dismount left messages on versions < 1.19.3. In version 1.19.3 and above, a dismount event was added to teleport cause, so this can safely be ignored. Fixes #7 6483295

Deletions

  • Removed 1.18 dependency as 1.19 should be backwards compliant
  • Removed player update notifications when plugin is already up-to-date. Only logged in console now on startup. Closes #9 89f7c9a
  • Removed unused code. 8194f45

Modifications

  • Bumping plugin version to 2.2. 0181d5b
  • Updating dependencies to latest snapshot. 0a45160 e1d8a34
  • Removed player messenger for entities not teleported due to a blocked WG region. Logged in console instead now. c0c2c4e
  • Created new checks for entity teleportation. Fixes some logic issues that previously existed with players getting error messages when they should not have. Closes #5 6dee8ec
  • Fixing some .gitignore files. 430cd66
  • Fixing a typo in update checker. 2709f49
  • Using parseInt instead of valueOf to prevent unnecessary type casting. 383146b
  • Moved player message to be handled by OATCommon methods. 6edaad4 b989c47
  • Updated config to clean up some notes and typos. c82a092 68adb8b
  • Code cleanup for teleport listener and moving some code to common methods. 1553160

Config Changes

#######################
# Should we ignore unknown teleport causes? This may help solve vehicle dismount left messages on versions < 1.19.3
# In version 1.19.3 and above, a dismount event was added to teleport cause, so this can safely be ignored.
ignore_unknown_causes: false

#######################
# Add the following section to Message handling
entity_left: "&7An entity was left behind near (&c%x&7, &c%y&7, &c%z&7)."

WorldGuard support, Optimizations, Fixes, and more!

05 Dec 17:37
eea0a0c
Compare
Choose a tag to compare

Introduction:

This update adds in a new config features so please read the drafted notes carefully! Other changes include optimizations to detection and teleportation.

Installation:

  1. Stop the server.
  2. Save a copy of your current folder
  3. Delete the old jar (in /plugins folder) and copy the new jar in place of it.
  4. Start the server.
  5. Modify the config to your liking, and restart the server (or run /oat reload) to update the changes.
  6. Report bugs you discover!

Additions

  • Added plugin.yml to GitHub Closes #2 682efce
  • Added WorldGuard region support. See config changes below. Closes #1 fd91e9d ff1d06a 985f9bf
  • Added config optimization to check if values exist before parsing them 985f9bf
  • Added more verbose logging messages for console at the HIGHEST level to log what conditions/checks passed or failed (debug use only) 399c36d
  • Added backwards compatibility since chunk tickets did not exist pre-1.14 e7434a0

Deletions

  • Remove 1.16 dependency as 1.18 should be backwards compliant

Modifications

  • Fixed Updater to check the major.minor build format before resorting to build number comparisons 98ec187
  • Fixed teleportation of entities without leads, accidentally would re-leash tamed pets regardless of prior leash status d9e09df
  • Fixed null check for Tameable owner, which could be Null when the event's player was not 2ce5300
  • Bumped 1.16 dependency to latest 1.18-R0.1-SNAPSHOT cd54764
  • Added new Travis build badges into README 4fbc2c8 2ffb6cb

Config Changes

#######################
# List of regions to deny teleporting animals into and out of. Requires world and region name separated by @
#
# The format is "worldName@regionName" where worldName is the name of world containing the regionName. Note if a 
# region cannot be found it will be logged in console so please check that the name and region are written correctly! 
#
# Ex. blocked_regions: ["world@region1", "world@region2"]
blocked_regions: []

Bug fixes, Metrics, and more!

27 Jul 22:12
Compare
Choose a tag to compare

Introduction:

This update adds in a couple new features and permissions so please read the drafted notes carefully!

Installation:

  1. Stop the server.
  2. Save a copy of your current folder
  3. Delete the old jar (in /plugins folder) and copy the new jar in place of it.
  4. Start the server.
  5. Modify the config to your liking, and restart the server (or run /oat reload) to update the changes.
  6. Report bugs you discover!

Additions:

  • [Addition] New metrics tracker to keep track of plugin usage data. Can be disabled via bStats/config.yml
  • [Addition] Added tab completion for the /oat command (suggests [reload, help]
  • [Addition] Adding in chunk tickets to temporarily force the from/to chunks to remain loaded in while the entities are teleported
  • [Addition] Added in new permission nodes to the plugin for restriction teleportation further! Permission nodes are as follows:
Permission Node Details
otheranimalteleport.player.help Gives access to the help command
otheranimalteleport.player.use Gives access to teleporting animals
otheranimalteleport.player.teleportpets Gives access to teleporting pets (requires otheranimalteleport.player.use)
otheranimalteleport.player.teleportleashed Gives access to teleporting leashed entities (requires otheranimalteleport.player.use)

Deletions:

  • [Deletion] 1.15 dependency as 1.16 automatically is backward compliant

Modifications:

  • [BUG FIX] Fixed the update checker as it was incorrectly parsing the build number (trying to compare the b in addition to the numerical value)
  • [BUG FIX] Fixed bug that prevented leashed entities from being teleported (if using a plugin like Lasso) Do note, this does NOT make it so any entity can be attached via a lead, this makes it so if you have a plugin that allows other entities to be leaded, they will teleport with the player!
  • [BUG FIX] Fixed bug that was incorrectly casting entities to Animal when we should have been casting to LivingEntity
  • [BUG FIX] Fixed issue with plugin not finding worlds loaded by a multiworld plugin; the startup of OAT is delayed until server has fully started
  • [Modification] Bumped 1.15 dependency to 1.16.1-R0.1-SNAPSHOT adding support for new mobs