MashFlightManager
World-based timed flight manager for Paper 1.21+ with per-mode limits, restricted worlds, bypass permissions, browse GUI, and admin controls.
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
MashFlightManager
MashFlightManager
Core Features
- Restrict flight by world (`restricted-worlds`) - Bypass support: - `mashflight.bypass` - `mashflight.bypass.<world>` - Two time modes: - `COUNT-FLYING` (consumes only while flying with plugin flight) - `COUNT-ONLINE` (consumes while actively flying with plugin flight) - Prevents mixing both modes at the same time - BossBar with clean time display - Per-mode max caps via `max-flight-time` - Async YAML storage (minimal data only) - Strong admin tools with tab completion - Browse all configured flight items in-game (`/flight browse`) - Click items in browse GUI to receive them - Sound feedback for success/error/click actions
Important Behavior
- Time does not consume in Creative/Spectator - Time does not consume for bypass players - Time does not consume in restricted worlds - Item use denied if it would exceed mode cap - Item metadata is non-italic and consistent
---
Commands
Player
- `/flight` Shows your remaining flight time.
Admin (`mashflight.admin`)
- `/flight browse` Opens item browser (click to receive item). - `/flight give <player> <item-id> [amount]` - `/flight give <player> <amount> <item-id>` (also supported) - `/flight set <player> <type> <seconds>` - `type`: `count-flying` or `count-online` - `/flight add <player> <seconds>` - `/flight remove <player> <seconds>` - `/flight reload` - `/flight restriction add <world>` - `/flight restriction remove <world>` - `/flight restriction list`
---
Permissions
- `mashflight.use` - `mashflight.admin` - `mashflight.bypass` - `mashflight.bypass.<world>`
---
Default Config (example)
```yml restricted-worlds: - world - pvp
bossbar: title: "&8✦ &bFlight &8✦ &f%time% &8✦" color: BLUE style: PROGRESS
max-flight-time: count-flying: 3600 count-online: 7200
flight-items: small-fly: material: FEATHER custom-model-data: 1 name: "&bSmall Flight Token" lore: - "&7Grants 10 minutes of flight" - "&7Counts only while flying" time: 600 mode: COUNT-FLYING
big-fly: material: PHANTOM_MEMBRANE custom-model-data: 2 name: "&dPremium Flight Token" lore: - "&7Grants 30 minutes of flight" - "&7Counts while online" time: 1800 mode: COUNT-ONLINE ```
---
Data Storage
- File: `plugins/MashFlightManager/data.yml` - Stores only: - Player UUID - Remaining time by item ID
---
Installation
1. Put `MashFlightManager-1.2.0.jar` in your `plugins` folder. 2. Restart server. 3. Edit `config.yml` and `messages.yml` if needed. 4. Run `/flight reload`.