Particle Type | You can now set the type of particle that a gravity tube uses. Please note that only a few particle types are colorable and even then some might behave incorrectly depending on your server version. You can set the type with /gt settings type <type>. This does support tab completion.
UpdateChecker | Fixed a version parsing issue. You will only get notified of a new version if the version on Spigot is "greater" than the version you have installed.
Fix | Gravity Tubes is now compiled against a newer version of Matrix anticheat which should eliminate the exceptions some users have been experiencing.
Fix | Due to a slight mistake the active anti-cheat reference was overridden in the startup logic. The result of this is effectively only supporting AAC. This has been fixed and NCP and Matrix are now properly supported again.
Improvement | Due to caching changes on Spigot the latest version of a plugin returned from the websites API can take multiple hours before updating to the correct version. E.g. your version is 1.0.1 but Spigot still incorrectly returns 1.0.0 as the latest version.
Due to the large number of "The plugin says there is a new version available, but I already downloaded the latest version" messages I've been receiving I've gone ahead and implemented a parser that'll only notify you of updates if the version on your server is less than the one on Spigot. If you're on 1.0.1 and Spigot returns 1.0.0 you'll no longer get an incorrect notification.
CombatLogX | GravityTubes now support the CombatLogX plugin. When a player is in combat they can't use GravityTubes. The following has been added to the config.yml file:
Code (YAML):
# Should players be allowed to use Gravity Tubes when in combat? # Requires the CombatLogX plugin. DisableInCombat: false
You'll have to add the above manually and set the option to true. If you do not wish to make use of this you do not have to add the above. (The default is false)
Please note that you need the new beta build of CombatLogX in order for this to work. This can be found here. Anything that is version 10 or above will work.
Permissions | You can now give users permission to use specific /gt settings commands. E.g. if you want your users to be able to set the color of gravitytubes you can give them the permission "gravitytubes.commands.settings.color". You can still use "gravitytubes.commands.settings" to give permission to all settings commands. The following are valid sub permissions: height, power, color
Height Permission | You can control how high a player may make their gravity tubes. This is done with the permission gravitytubes.commands.settings.height.<height> e.g. permission gravitytubes.commands.settings.height.50 - this means that a user will only be able to set a tubes height to 50. If a player has multiple permissions the permission with the highest <height> parameter takes precedence.
This permission also applies to the /gt create command.
Actionbar | The actionbar utility class has been completely rewritten. Prior to this update NMS classes, constructors, methods, and fields were all accessed directly via reflection every time a message was sent to a player; that is quite resource-intensive if used frequently.
This update ensures that all of those code related entities are cached and reused. This means that they are only accessed during startup and then reused as needed when messages are requested. This will have a significant positive impact on performance.
Please note that this only concerns 1.8, and 1.9 servers. 1.10 and up use the built-in method in the Spigot API for sending these kinds of messages.
Owners | GravityTubes created from here on out has an owner with the possibility of multiple in future updates. Currently, this does not have a purpose, but in future updates, this will allow players to control their own Gravity Tubes based on who owns them. E.g. I can only edit my own Gravity Tubes (also based on permissions).
Please note that even though this doesn't have a purpose yet I'd suggest updating as soon as possible to this version as "old" Gravity Tubes won't have an owner assigned. In other words the sooner you update the more prepared you are for what is to come
NCP Support | GravityTubes now support NoCheatPlus. GT will automatically detect NCP and do the necessary operations when players use the gravity tubes.
Chunk Load Fix | It appears that checking a block will keep chunks loaded. Gravity Tubes does this in order to make sure the source block isn't removed by world modifying plugins such as WorldEdit. This update will only perform the block check if the chunk the gravity tube is in is loaded.
[Major] Tube Fix | The check that should determine whether a player was in a tube was only based on x, y, and z coordinates leaving out a quite important detail; the world. The result of this was that the tube invisibly existed in all worlds. The check now correctly resolves this based on the world, x, y, and z.
Teleport Fix | If you had tubes in multiple worlds trying to use the teleport feature in the /gta list command could cause an exception. Tubes are now filtered based on the inputted world before distances are calculated.
Flight Control | Prior to this update a gravity tube wouldn't gravitate a player if they were in flight mode. This update revokes flight from a player when they fly into a gravity tube and reapplies flight once they leave again.
Plugin.yml | All permissions have been migrated to the plugin.yml file.
Fix | Some plugins instantly teleport players to some location when they rejoin the server. In some cases that could cause a player to be left with the levitation effect applied when rejoining. The only way to remove the effect was to reenter a gravity tube. This has been fixed.
Tab Completion | All main commands will now suggest their subcommands or those that start with the current input.
All subcommands with additional parameters will suggest those. E.g. /gravitytubes settings color command will suggest all the colors available to choose from.
Feature | GravityTubes will now automatically remove gravity tubes when the base block of a tube is removed with e.g. WorldEdit or other world modifying plugins.
Lombok | GravityTubes now make use of Project Lombok to achieve a cleaner codebase.
ActionBar | By prepending any message in the messages.yml file with <ActionBar> you can send the message as an ActionBar message instead of a chat message.
Fix | If the server was reloaded when a player was in a GravityTube the player would get elevated for as long as the reload took. Another issue was the newly introduced GravityBar. If the server was reloaded when a player was in a GravityTube the GravityBar would not get removed and would persist until relog. Both of these issues have been fixed.
# Set the message above the BossBar. Supported placeholder: # %percentage% - Shows how far the player is in percentage. BossBarTitle: '&l
%percentage%%'
These are all default values. If you do not wish to change them you do not have to add them. If you wish to disable the BossBar you'll have to add the above and set BossBarEnabled to false.
Command | This version features the /gta info command. This command is useful for easily checking if you're up to date, checking versions, and quick links for new versions and support.
New Permission | "gravitytubes.use" has been added. Players without this permission will receive the invalid permission message when entering a gravity tube.
Remember to give your players/groups this permission in your permissions plugin when updating.
Fix | Fall damage would accumulate if bouncing/hovering at the top of a gravity tube to the point where it would simply instantly kill the player once they left the gravity tube. This has been fixed and fall damage is correctly reset once you leave a gravity tube.
Metrics Fix | Metrics has been in the plugin since one of the first updates, however, for some reason, it has not worked. After quite a number of attempts to fix it, it seems to work from this update and onwards.
List Fix | If specifying a negative value in the [page] parameter in the /gta list [page] command you'd get an exception. This has been fixed and it will simply default to the invalid arguments message.
Teleport | This update features a teleport function to the /gta list command. When you click on any of the list entries you are now able to teleport to any of the gravity tubes. The implementation has been done thoughtfully i.e. when teleporting the plugin will find a safe location at the gravity tube (solid block to stand on and 2 air blocks above); it will even make you look at the source block of the gravity tube!
The implementation makes use of a "hidden" command (not listed in the help menu), however, it has been implemented in a way that makes it impossible to abuse it. When executing the command it will only teleport you if there is a gravity tube within a 1 block range. You can't use it to teleport anywhere in the world by executing the command manually with arbitrary parameters
Message | As mentioned the plugin will find a safe location at the gravity tube i.e. any of the surrounding 8 blocks. If all locations are obstructed you'll be prompted with the following message:
Code (YAML):
Messages:
Admin:
UnsafeTeleport: '
%prefix% &cThere are no safe destination at the gravity tube!'
The message is automatically added to the messages.yml file.
AIOOBE Fix | When using the /gt settings color command without a parameter for which color it should reset to the default; which is white. This was not implemented and this resulted in an ArrayIndexOutOfBoundsException. This has been fixed and it will now correctly reset the gravity tube's color back to white.
Height Default | Instead of having the default tube height be the distance from the block to the top of the world is now 20. There aren't many cases where you'd want a tube to span the entire height of the world and has thus been changed.
Update Checker | You can now disable the update checker if you do not wish to receive notifications of new updates. The following has been added to the config.yml file:
Code (YAML):
# Enable or disable the update checker. UpdateCheckerEnabled: true
The default is true. If you wish to disable the update checker you'll have to manually add the option above and set it to false.
List Command | This version features a new list command accessed with: /gta list [page]
This command will print a list of all configured gravity tubes and their info in a hover message. There are 8 entries per page. Using the page parameter allows you to open a specific page. The permission for using this command is the gravitytubes.admin permission.
Update Checker | This update features an update checker. This will automatically notify you in the console when a new update is available here on Spigot. Furthermore, it will notify certain players based on a config setting and a permission. The update checker checks asynchronously at a fixed interval.
Config | You can control whether all OPs should be notified of an update or only certain players based on the setting below.
Code (YAML):
# Update Checker. # false: All OPs are notified of a new update when they join. # true: OPs are only notified if they have the gravitytubes.update permission as well. # N.B. any user with the gravitytubes.update permission is notified; OP or not. UpdateCheckerPermissionOnly: false
You'll have to add the above manually. The default is false. If you do not wish to change the default you do not have to add it.
Permission | A new permission has been introduced: gravitytubes.update
Any player with this permission is notified when a new update is available.
Metrics | BStats metrics has been enabled for Gravity Tubes. The statistics can be found here. You can opt out in the bStats folder found within your servers plugins folder.