PetDragonPro | Ridable Enderdragons | SQL Dragon Registry | 1.14-1.21.4 icon

PetDragonPro | Ridable Enderdragons | SQL Dragon Registry | 1.14-1.21.4 -----

Fly EnderDragons and destroy your foes in a premium experience! + Seamless migration!



This plugin allows you to control custom Enderdragons as if they are your pets! Mount the dragon just like you would a horse. Ride them using WASD for movement and the mouse for directions. You can also press the space bar to shoot dragon breath and 'F' to cycle abilities! This plugin completely rewrites Enderdragon behavior from scratch to be more performant and is extremely configurable.

This premium version is an improved version of the original PetDragon by the same author. For the first time ever it features a full MySQL or SQLite database registry to keep track of PetDragons wherever they are, meaning it is no longer possible to bypass the player limits, a highly requested feature. For a full breakdown of the improvements, see the section below.


[​IMG]

Making plugins takes a lot of time and effort. By purchasing this plugin you support me in the development of both the free and premium version, where I will try to focus new features on the latter. Below are some advantages of the premium plugin.

+ SQL based PetDragon registry
The biggest criticism of the original plugin was that the maximum amount of dragons per player could easily be bypassed, since only PetDragons in loaded chunks were tracked. This premium version features an SQL database registry which always tracks PetDragons, with your choice of either SQLite or MySQL. Players can therefore no longer bypass the maxima you set, and the locate command will always be accurate. As an additional bonus, it is possible to share dragon data across Bungeecord servers by using MySQL storage! (all world names need to be different)

+ Cosmetic passenger position
Don't like the fact that players seem to be multiple blocks above their dragons, as per vanilla's passenger location? Now you can change that so players are seated right on the body of their dragon! This feature is experimental and requires ProtocolLib to function. While it is heavily optimized it takes slightly more computing power, which is why it is disabled by default. Note: Due to a recent update in the Vanilla passenger position, this feature is redundant for Minecraft 1.19.4 or above.

+ Seamless migration
This premium plugin is able to automatically detect the configuration of the free version and copy over its settings, see "Getting started" below. Should you require assistance, I will happily help you transfer to this improved product.

+ Improved support - private support
As this is a premium product, I will try to provide even more support than I normally do. Unlike the free version where I from now on offer only public support, for the premium plugin I also offer private support if necessary.

+ Faster updates - play on new Minecraft versions sooner!
Due to the nature of this plugin (see below), I have to update it for almost every new Minecraft version that is released. When I do so, the premium plugin will be updated first. I will then wait a couple of days before releasing an update to the free version. This means that when a new Minecraft version is released, you get to use PetDragon on it sooner.

+ More features
New features I create will always be added to the premium product first and usually exclusively! Here are some new features which have already been added on top of the SQL dragon registry:
  • Multiple abilities! Instead of just shooting fireballs, dragons now also have other abilities! You cycle abilities by pressing 'F' and trigger them using spacebar. Abilities are highly configurable and have optional cooldowns. All current abilities include:
    • Fireball (default)
    • Knockback: knocks back all entities near the dragon when used
    • Ender army: Spawn a configurable number of endermen that attack any foe!
  • Give a custom entity name to PetDragons! This will even work for already spawned dragons
  • Control the number of dragons a player can spawn using player specific permissions!
  • Dragons properly ignore the thorns enchantment and armour will not lose durability incorrectly
  • Compatibility with plugins that block entity spawning
  • Execute commands when a player mounts or dismounts their PetDragon
  • Locate dragons spawned by other players
  • Have players automatically mount their PetDragon when they spawn it
  • Clear all your/someone else's PetDragons using a single command
  • A hatch delay setting to control how long a PetDragon spawn egg takes to hatch
  • Change the plugin's name as prefixed in chat messages
  • Give PetDragon spawn eggs to other players, for example from console.
  • A command to despawn PetDragons, which gives you back their egg. You can configure this to happen automatically when a player dismounts a PetDragon.
  • A command to automatically ride your nearest PetDragon in the current world.

Requirements and supported versions
This plugin works on Java 8 or higher, on both Spigot and Paper.
To be able to modify EnderDragons, this plugin has to dig much deeper into Minecraft than most plugins. For this reason every new internal Minecraft version requires a full recode. The plugin currently supports every major Minecraft version from 1.14 until 1.21.4, but I will add support for upcoming Minecraft versions! Since this is a premium product, it will be quicker to receive updates than its free counterpart.


Installation
Download the jar file from the top of this page and put it in your plugins folder. There are no required dependencies, although you need a permission management plugin (like LuckPerms) to use the permissions. If you want to use the cosmetic passenger offset modifier, ProtocolLib is also required. Restart your server and you are done! Read the section below to configure the plugin to your liking.

Migration from PetDragon (free version)
I have tried my absolute best to make this migration as seamless as possible. This plugin will automatically handle all migration, but should anything fail, please feel free to contact me!
  • Before launching the server, remove the lite version’s PetDragon-1.x.jar but NOT its folder.
  • Download the jar file from the top of this page and put it in your plugins folder. Launch the server.
  • Done! My plugin will automatically copy your old configuration file, add all missing settings and move it to the new correct location!
  • (Optional) You can now throw away the PetDragon folder from the lite version of this plugin.

This plugin allows you to change every message sent in chat and much more. A lot of properties of the PetDragons, their behavior and the spawning system can be altered as well. This is all optional, since it has sensible defaults. The configuration's header explains how it works in general. See the comments above certain settings for a more specific explanation.

What sets this premium version apart most, is the SQL based dragon registry. By default SQLite will be used, but you can also choose to use MySQL by changing the configuration. Keep in mind that if you change the database type the data in the old database is not copied over. However, when my plugin comes across a dragon that is not yet in the database when a chunk loads, it will add it.

By default this plugin will collect anonymous data using the bStats framework, to help me further improve this plugin. If you truly do not want this, it can be disabled either in the global bStats configuration folder, or for this plugin specifically.


All arguments in gray are optional and can be replaced by a value / player name.
  • /dragon spawn - Spawn a new PetDragon above you
  • /dragon ride - Automatically teleports you to the passenger position of your nearest dragon in the current world.
  • /dragon remove [range]- Remove the nearest PetDragon which is within the specified range. If no range is specified, this will default to 3 blocks.
  • /dragon clear [player_name]- Clear all PetDragons spawned by you or the specified player in all worlds.
  • /dragon locate [player_name] - See where dragons spawned by you are currently located! If enabled, you can click the text to remove them! Optionally you can specify a player name to locate dragons spawned by another user, which requires an additional permission (see below).
  • /dragon egg [player_name]- Gives you a PetDragon spawn egg. Each egg hatches into a single PetDragon. Optionally you can specify a player name to give a PetDragon spawn egg to someone else.
  • /dragon despawn - Despawns the nearest PetDragon which is within 5 blocks of the player. Unlike removing, this puts the PetDragon back into its egg which is given to the player.
  • /dragon reload - Reload the configuration without having to restart the server.
Below is a list of all permissions. The default setting for a permission is put between brackets. To properly manage permissions, I highly advise to use a permission management plugin.
  • petdragon.command.spawn (op) - Allows you to spawn a PetDragon using the spawn command.
  • petdragon.command.ride (op) - Allows you to use the ride command.
  • petdragon.command.remove (op) - Allows you to remove PetDragons using the remove or clear command.
  • petdragon.command.locate (anyone) - Shows a list to help you locate your PetDragons. If configured players can also click them in this list to remove them.
  • petdragon.command.locate.others (op) - Allows you to view dragons spawned by another player.
  • petdragon.command.egg (op) - Allows you to give yourself PetDragon spawn eggs. These eggs have a separate use permission, see below.
  • petdragon.command.despawn (op) - Allows you to despawn PetDragons using the despawn command.
  • petdragon.command.reload (op) - Allows you to reload the configuration.
  • petdragon.dragonlimit.<x> (nobody) - Allows a player to spawn exactly <x> dragons, must be a positive integer.
  • petdragon.bypass.dragonlimit (op) - Allows a player to spawn as many dragons as they want (spawn limit is in the configuration)
  • petdragon.bypass.owner (op) - Allows a player to ride dragons spawned by other people (not allowed by default)
  • petdragon.bypass.remove (op) - Allows a player to remove dragons they don't own by using the remove or clear command.
  • petdragon.bypass.despawn (op) - Allows a player to despawn dragons they don't own by using the despawn command.
  • petdragon.ride (anyone) - Allows you to ride a PetDragon.
  • petdragon.spawnegg (anyone) - Allows a player to use PetDragon spawn eggs, each egg will hatch a single dragon when placed down.
  • petdragon.hurt.self (anyone) - Whether a player can damage his own PetDragons.
  • petdragon.hurt.others (op) - Whether a player can damage PetDragons spawned in by other players
  • petdragon.ability.fireball (anyone) - Whether a player's dragon can shoot fireballs
  • petdragon.ability.knockback (op)- Whether a player's dragon can use the knockback ability
  • petdragon.ability.ender-army (op) - Whether a player's dragon can use the ender army ability.
Want to make another plugin compatible with PetDragonPro? This plugin features a developer API allowing you to properly hook into this plugin. The API is highly similar to that of the free version, but some of the return types of its methods differ. To build against this API, see the Github wiki, but instead add the premium plugin jar as a dependency.

Please DO NOT use the review section for bugs. I can and will not give a proper response or help you in the review section.
In both cases I will try to respond as soon as possible and usually within 24 hours. If there is anything you want to know before buying this plugin feel free to ask me beforehand!
These terms can change at any moment and by buying this plugin, you agree to them in full. You are buying the plugin in its current state, there is no guarantee on how long and to which extent it will be maintained/supported. If a feature is not listed on this page, there is no guarantee it is a part of the plugin, unless it is confirmed in a written message by the author.

You are not allowed to redistribute this plugin, its description/artwork or its code, either partially or fully, in any form. The plugin can only be used on servers which you (co)own. On violation of these terms, I reserve the right to report this to Spigot and to revoke your access to my support channels.

Support will only be given to the account which has bought this plugin.

There are no refunds, as you have gained access to this product irrevocably and there is no way for you to hand the product back. By issuing a PayPal charge back, you lose access to the resource automatically, regardless of the outcome.


Do not use the reviews for questions or bug reports please!
Resource Information
Author:
----------
Total Downloads: 96
First Release: Feb 17, 2022
Last Update: Yesterday at 2:21 PM
Category: ---------------
All-Time Rating:
12 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings