[1.21.*] ☁ EzFlyTime ☁ Vouchers - Placeholders - SMP - Skyblock icon

[1.21.*] ☁ EzFlyTime ☁ Vouchers - Placeholders - SMP - Skyblock -----

Sell the thrill of flight with polished, time-limited vouchers



[​IMG]

Turn flight into a premium experience players can't resist. EzFlyTime gives you the tools to turn limited-time flight into a high-converting reward or store product. Drop irresistible voucher items into your economy, control every second of airborne time, and deliver reliable flight sessions that survive restarts while honoring staff bypass permissions. Hook it into your webstore, event crates, or loyalty ladders and watch player engagement soar.

Try the plugin out on mc.skyblockexp.com

[​IMG]

Features
  • Voucher-based flight – craft limited-time flight passes with your own branding, lore, materials, and durations so every reward feels premium and on-brand.
  • Persistent timers – guarantee uptime with autosaving timers that survive restarts, ensuring paying customers always get the flight they bought.
  • Smart flight toggles – deliver a polished UX with intuitive commands like /fly time, automatic expiry handling, and instant feedback when time runs out.
  • Bypass support – reward VIPs, staff, and influencers with permanent flight through the ezflytime.bypass permission.
  • Clean messaging – customize every prefix, actionbar, and chat line so announcements match your brand voice and store copy.
  • PlaceholderAPI integration – showcase live flight stats in scoreboards, GUIs, leaderboards, or chat using placeholders like %ezflytime_time_remaining% and %ezflytime_time_remaining_raw%.
  • Duplicate protection – protect your economy with unique voucher IDs that eliminate re-use exploits while still letting you opt-in to multi-claim promos.
  • Flexible activation – sell classic creative flight, premium double-jump Elytra gliding, or mix both per voucher profile for tailored experiences.
  • Custom bossbar – surface remaining time in a color-coded bossbar with configurable titles, colors, and styles to keep buyers engaged.
  • Storage your way – start simple with YAML saves or scale up to MySQL (SSL-ready with table prefixes) to match any infrastructure.
  • (coming soon) Optional flair – upsell dazzling particle trails via the companion EzFlyTimeAnimations add-on and bundle it with high-tier ranks.
Reward Playbooks
  • Rank ladders – bundle hour-long flight vouchers with top-tier ranks to give a meaningful perk without breaking your economy.
  • Seasonal events – drop limited 5–15 minute vouchers as scavenger hunt rewards or battle pass milestones to drive participation.
  • Vote streaks – turn daily or weekly vote streaks into flight time to keep players returning and voting for your server.
  • Store flash sales – pair premium vouchers with weekend-only bundles or crate keys to boost average basket size.
  • Creator partnerships – give influencers unique, short-lived codes that redeem for flight so you can track campaign performance.
Reward Delivery Tips
  • Stackable rewards – configure vouchers to stack remaining time so players feel progress instead of waste when they win multiple.
  • Timed exclusivity – set shorter durations for event rewards and longer timers for store buyers to underscore premium value.
  • Onboarding hooks – gift newcomers a sample voucher via your join tutorial to convert them into long-term buyers once they taste flight.
  • Retention loops – combine PlaceholderAPI stats with leaderboards to celebrate top flyers and keep them chasing the next milestone.
Voucher Dupe Protection
  • Unique IDs on every voucher – each item carries a tamper-resistant identifier, so the plugin can spot re-used claims instantly.
  • Instant detection & messaging – when a player tries to redeem a duplicate, EzFlyTime blocks the grant, alerts them in chat, and logs the attempt for staff review.
  • Configurable tolerance – keep detect-voucher-dupes enabled for airtight protection, or toggle it off when you intentionally want stackable redemptions for marketing campaigns.
  • Audit-ready logging – every blocked redemption appears in console and storage so you can trace the origin of suspicious vouchers and respond quickly.
  • Play nice with promos – multi-claim giveaways still work thanks to the optional bypass flag that treats specific voucher profiles as reusable while others remain locked down.
Getting Started
  1. Drop the jar into your server's plugins folder and restart.
  2. Adjust config.yml to fit your ranks, events, or store packages, then set your auto-save, storage, and bossbar preferences.
  3. Use /flyvoucher give to hand out test vouchers and experience the player journey end-to-end before launch.
  4. Ready to upsell? Build and install the optional EzFlyTimeAnimations plugin alongside the core jar for instant particle add-ons.
Command Description
/flyvoucher give <player> <voucherId> [amount] Give a voucher item to a player.
/fly Toggle flight or view remaining time with the optional time argument.
/flytime Quick alias to show remaining flight time, plus /flytime reload for hot configuration updates.

Permission Default Purpose
ezflytime.give OP Allow staff to distribute vouchers.
ezflytime.fly True Let players toggle flight while they have time remaining.
ezflytime.flytime True Allow players to check their remaining flight time.
ezflytime.bypass False Grant unlimited flight (time is ignored).
ezflytime.reload OP Reload vouchers, messaging, bossbars, and storage settings without a restart.

Edit config.yml to add or tweak vouchers in seconds and align them with seasonal events, rank perks, or limited store drops:
Code (YAML):

vouchers
:
  basic
:
    material
: PAPER
    name
: '&aBasic Fly Voucher'
    lore
:
     - '&7Redeem for 5 minutes of flight.'
    duration-seconds
: 300
  premium
:
    material
: FEATHER
    name
: '&bPremium Fly Voucher'
    lore
:
     - '&7Redeem for 15 minutes of flight.'
    duration-seconds
: 900
 
Messages like flight-enabled and flight-time-remaining support color codes (&) and placeholders such as {time}, {minutes}, and {seconds}, so your promotions always match your marketing copy.

Control the overall experience with the flight.activation-mode option to tailor the vibe of each voucher:
Code (YAML):

flight
:
  activation-mode
: NORMAL # NORMAL or DOUBLE_JUMP_ELYTRA
 
NORMAL delivers classic creative flight, while DOUBLE_JUMP_ELYTRA unlocks a head-turning double-jump gliding launch that keeps players coming back for more.

Fine-tune persistence with the auto-save.interval-seconds option and swap storage backends at any time using the storage.type toggle (YAML or MySQL with SSL and prefix controls).

Hook into PlaceholderAPI to show live data with placeholders such as:

  • %ezflytime_time_remaining% / %ezflytime_formatted% – formatted remaining time (e.g. 02:05)
  • %ezflytime_time_remaining_raw% / %ezflytime_seconds% – raw remaining seconds
  • %ezflytime_minutes% – whole remaining minutes
Set detect-voucher-dupes to false if you want to allow multiple redemptions of the same physical voucher while still logging the claim—perfect for limited events, influencer partnerships, or store coupons.

Polish the in-game experience further by customizing the built-in bossbar under the bossbar section, or disable it entirely for minimalist servers.

Need help or have ideas? PM me on SpigotMC.org and let's make EzFlyTime even better!​
Resource Information
Author:
----------
Total Downloads: 8
First Release: Oct 25, 2025
Last Update: Oct 26, 2025
Category: ---------------
All-Time Rating:
0 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings