/
Early development
Version 1.0.6
Licensed under the Apache-2.0 License.
Physical drone deliveries for Minecraft Paper servers: visible flight, package inventories, sockets, animal transport, blacklists, Discord webhooks, and fully configurable GUIs.
🗺️ Roadmap
- ✅ Hierarchical permission system — fine-grained permissions for all commands
- ✅ Feature toggles — enable/disable sockets and player-to-player deliveries
- ✅ Translation files —
languages/*.yml(de_DE, en_EN, es_ES, fr_FR, ru_RU, zh_CN)- ✅ Cross-dimension delivery — drones between Overworld, Nether, and End
- ✅ Landing improvements (1.0.1) — elytra/airborne follow, pre-landing safety check, distance-based landing notification
- ✅ Performance (1.0.2) — cached landing spots, optimized ground scan, velocity-based cruise flight
- ✅ Cooldown system (1.0.3) — configurable send cooldowns for players and sockets
- ✅ Self-send blocking (1.0.4) — prevent sending to yourself and own sockets
- ✅ MySQL & Offline Players (1.0.6) — MySQL database option, offline player support, and automatic config updaters
launch-animation.*)startup-seconds at startup-speedspeed (blocks per tick)approach-distance at approach-speedfollow-gliding-player): while the receiver glides, the drone tracks them in the air; when they land, the target is relocated once and the drone lands therefollow-airborne-player-before-landing): before landing, if the receiver is significantly in the air (e.g. long fall, not a normal jump), the drone follows until they touch the ground, relocates once, then lands — controlled by airborne-follow-min-height (default 5 blocks above solid ground)/drone preview <uuid>) with item and animal summarydespawn-time-minutes)DELETE (remove contents) or COLLECT (return unopened items to sender)collection-animation.enabled)hologram.*)bossbar.*)DUST:R,G,B:SIZE)flight-sound)/drone locate — particle trail toward your nearest landed drone in the current world (locate-particles.*, permission drone.locate)/drone toggle, GUI)/drone decline)/drone cancel)max-active-per-sender)blocked-worlds)send-cooldown-seconds-player, send-cooldown-seconds-socket) — configurable cooldown in seconds between drone sendsallow-send-to-self-player, allow-send-to-self-socket) — prevent sending drones to yourself and your own socketsplayers-enabled — allow/disable player-to-player deliveries (GUI + commands)sockets-enabled — allow/disable socket system/drone blacklist …)/drone socket place <name>)/drone socket send <name>)/drone socket manage)container-integration.search-radius, blacklist skips permanently)socket-pending-returns.yml)carry-leashed-animals)max-leashed-animals-per-dronediscord.* in config.yml)gui.yml)/drone reload (no restart)players.yml — receive toggleblacklists.yml — player blacklistssockets.yml — sockets, trust, socket blacklistssocket-pending-returns.yml — stranded socket deliveriesdrones.yml — active in-flight/landed drones (survives restarts where applicable)PerformanceOptimizer: throttling when many drones are activecomputeLandingFrom() runs once per target, not every tick during smooth landingsetVelocity() (armor stand ticks only while moving); teleport only for snap/dimension/landplugins/AdvancedDeliveryDrones/languages/ (not in config.yml)language: in config.yml (de_DE, en_EN, es_ES, fr_FR, ru_RU, zh_CN)/drone reload<distance>), not delivery radiusRoot command: /drone (players only — opens the main GUI when run without arguments).
| Command | Description | Permission |
|---|---|---|
/drone send <player> | Open compose flow and send to a player | drone.send.players |
/drone cancel | Cancel all your outgoing drones | drone.cancel |
/drone preview <uuid> | Preview an incoming drone (read-only) | drone.preview |
/drone toggle | Enable/disable receiving drones | drone.toggle |
/drone decline | Decline all incoming drones | drone.decline |
/drone locate | Particle trail to nearest landed drone (this world) | drone.locate |
| Command | Description | Permission |
|---|---|---|
/drone blacklist | Open blacklist GUI | drone.blacklist |
/drone blacklist player add [player] | Block a player (GUI if name omitted) | drone.blacklist.player.add |
/drone blacklist player remove [player] | Unblock a player | drone.blacklist.player.remove |
/drone blacklist player list | List blocked players | drone.blacklist.player.list |
| Command | Description | Permission |
|---|---|---|
/drone socket place <name> | Place a socket at your location | drone.socket.place |
/drone socket remove <name> | Remove your socket | drone.socket.remove |
/drone socket list | List your sockets | drone.socket.list |
/drone socket send <name> | Send to a socket (global name) | drone.socket.send |
/drone socket manage | Socket management GUI | drone.socket.manage |
/drone socket rename <old> <new> | Rename a socket | drone.socket.rename |
/drone socket trust <socket> <player> | Allow pickup on your socket | drone.socket.trust |
/drone socket untrust <socket> <player> | Revoke trust | drone.socket.untrust |
/drone socket blacklist add <socket> [player] | Block sender for a socket | drone.socket.blacklist |
/drone socket blacklist remove <socket> [player] | Unblock sender | drone.socket.blacklist |
/drone socket blacklist list <socket> | List socket blacklist | drone.socket.blacklist |
| Command | Description | Permission |
|---|---|---|
/drone admin send <x> <y> <z> [world] | Send to coordinates (admin as receiver) | drone.admin.send |
/drone list | List active drones + teleport links | drone.admin.list |
/drone reload | Reload config.yml, gui.yml, and language files | drone.admin.reload |
Parent permissions (drone.send, drone.use, drone.socket, drone.admin, drone.blacklist) grant their children — see plugin.yml.
| Permission | Description | Default |
|---|---|---|
drone.send | Send and cancel drones (parent) | true |
drone.send.players | Send to players | true |
drone.cancel | Cancel outgoing drones | true |
drone.use | Preview, toggle, decline, blacklist (parent) | true |
drone.preview | Preview incoming drones | true |
drone.toggle | Toggle receiving drones | true |
drone.decline | Decline incoming drones | true |
drone.locate | Locate landed drones | true |
drone.blacklist | Blacklist management (parent) | true |
drone.blacklist.player.* | Add / remove / list player blacklist | true |
drone.socket | All socket commands (parent) | true |
drone.socket.* | Individual socket subcommands | true |
drone.admin | Admin commands (parent) | OP |
drone.admin.send | Admin coordinate send | OP |
drone.admin.list | List active drones | OP |
drone.admin.reload | Reload configs | OP |

🛸 Advanced Delivery Drones is a comprehensive Minecraft plugin for real-time item and animal transport via customizable physical drones.