Setup Redistribution Notice
DonutWarps is a lightweight and feature-rich warp management plugin designed for Minecraft servers running Paper / Spigot 1.21+. Whether you run a small survival community or a large-scale network, DonutWarps offers seamless and customizable teleportation with countdowns, sounds, and smart anti-spam protection — all built with performance and ease-of-use in mind.
Features
Easy Warp Management- /setwarp <name> – Create warps effortlessly
- /delwarp <name> – Delete warps instantly
- /warp <name> – Teleport to warps with optional countdown
- /warp – List all available warps
Teleport Countdown- Prevent instant warps in PvP or survival worlds
- Cancel teleport on player movement
- Configurable per world
Sound Effects- Sounds on teleport start, success, or cancel
- Fully customizable in config.yml
Anti-Spam- Blocks teleport spam while countdown is active
Custom Messages- Modify all messages in messages.yml
- Supports & color codes and hex formatting (1.16+)
Smart Tab Completion- Fast warp name suggestions for /warp and /delwarp
Async Teleportation- Handles teleporting off the main thread to reduce lag
Permission-Based Access- Granular control for admin/player commands
Hot Reload Support- Reload config and messages on the fly:
- /reloaddonutwarpsconfig
- /reloaddonutwarpsmessages
- Reload config and messages on the fly:
Bypass Worlds- Skip teleport countdown in defined worlds (e.g., lobby)
Commands & Permissions
| Command | Permission | Description |
|---|---|---|
| /warp | donutwarp.use | List all warps |
| /warp <name> | donutwarp.use | Teleport to a specific warp |
| /setwarp <name> | donutwarp.admin | Create a new warp |
| /delwarp <name> | donutwarp.admin | Delete an existing warp |
| /reloaddonutwarpsconfig | donutwarp.admin | Reload config.yml |
| /reloaddonutwarpsmessages | donutwarp.admin | Reload messages.yml |
Configuration Overview
YAML:
[HEADING=3]config.yml[/HEADING]
teleport_countdown: 5
messages-chat: false
messages-action-bar: true
countdown-bypass-worlds:
- spawn
- spawn2
sounds:
enable: true
teleport_start: ENTITY_EXPERIENCE_ORB_PICKUP
teleport_cancel: BLOCK_NOTE_BLOCK_BASS
teleport_success: ENTITY_ENDERMAN_TELEPORT
messages.yml
YAML:
messages:
no_permission: "&cYou don't have permission to use this command."
warp_set: "&7Warp &b%warp% &7has been set to your location."
warp_already_exists: "&7Warp &b%warp% &7already exists."
setwarp_usage: "&7Correct usage: &b/setwarp [warp name]"
warp_deleted: "&b%warp% &7warp has been removed from the database."
warp_not_found: "&7Warp &b%warp% &7does not exist."
warp_usage: "&7Correct usage: &b/warp [warp name]"
teleport_countdown: "&7Teleporting in &b%seconds% &7seconds..."
teleported_to_warp: "&7Teleported to warp &b%warp%."
teleport_cancelled: "&cTeleportation cancelled because you moved."
delwarp_usage: "&7Correct usage: &b/delwarp [warp name]"
available_warps: "&cUsage: /warp (destination) \n&cDestinations: %warps%"
no_warps_set: "&cNo warps have been set yet."
already_teleporting: "&cYou are already teleporting to a warp!"
warps.yml
Automatically generated and stores world, X/Y/Z, yaw, and pitch for each warp.
Installation
- Download the plugin from this page.
- Drop the .jar file into your server’s /plugins folder.
- Restart the server or reload via plugman.
- Edit config.yml and messages.yml to your preferences.
- Start creating warps using /setwarp <name>!
Why Choose DonutWarps?
Lightweight & Async – Optimized for performance with non-blocking teleport logic.
Player Friendly – Easy to use with full tab completion and feedback.
Fully Customizable – Messages, sounds, behaviors — all configurable.
Reliable – Handles chunk loading, cancelled teleports, and edge cases.
Ongoing Development – Actively maintained for latest Minecraft versions.
Support
Having issues or want to request a feature?
Tested Minecraft Versions
Other versions may work but are not officially supported.
