RDragonRide lets players mount and fully control an Ender Dragon directly in Minecraft. Built on pure Bukkit API with ProtocolLib for smooth client synchronisation โ zero NMS required. Movement is replicated via packets, giving pixel-perfect control with no version-specific internals to maintain. Summon timed or permanent dragons, configure every stat, and hook into the clean public API in minutes.
- Zero NMS โ pure Bukkit API + ProtocolLib for smooth client sync
- Full directional control: forward, strafe, vertical, pitch
- Configurable HP, speed, duration, fireball cooldown & boss bar
- Permanent or timed dragons with auto-despawn
- Clean public API: summon, dismiss, query state, fire fireballs
- Cancellable
DragonRideEvent&DragonDismissEvent - Boss bar with live HP display
- Requires ProtocolLib 5.3.0+ and Java 21+
Add RDragonRide as a soft- or hard-dependency and use the RDragonRideAPI class to summon, dismiss, and query dragons from your own plugin.
// Get the API instance RDragonRideAPI api = RDragonRideAPI.getInstance(); // Summon a timed dragon for a player (seconds) api.summonDragon(player, 120); // Summon a permanent dragon (no auto-despawn) api.summonDragon(player, -1); // Dismiss the player's current dragon api.dismissDragon(player); // Check if a player is currently riding boolean riding = api.isRiding(player); // Fire a fireball in the dragon's look direction api.fireDragonFireball(player);
depend: [RDragonRide, ProtocolLib] # or soft-depend if optional: softdepend: [RDragonRide]
Both events are fired on the Bukkit event bus and are cancellable.
| Event | Fired when | Cancellable | Key getters |
|---|---|---|---|
| DragonRideEvent | A player successfully mounts a dragon | โ Yes | getPlayer(), getDragon() |
| DragonDismissEvent | A dragon is dismissed (timer, API call, or player quit) | โ Yes | getPlayer(), getDragon(), getReason() |
@EventHandler public void onRide(DragonRideEvent event) { event.getPlayer().sendMessage("You mounted a dragon!"); // event.setCancelled(true); // deny the mount }
RDragonRide is completely free and open-source under the MIT license. Grab the latest release from GitHub or find it on your favourite plugin platform.
// Make sure ProtocolLib 5.3.0+ is installed.
// Restart the server โ no reload needed.