🪂 Airdrop System

Airdrop System

This is a step-by-step installation guide, configuration preview, and full explanation of all settings for legends_airdrop.

⚠️

If you lack programming experience, ensure you read each step thoroughly without skipping, as all documentation is essential!

Before submitting a support ticket or following the guides in this documentation, please make sure that you are running the latest version of the resource.

What is legends_airdrop?

legends_airdrop is an advanced airdrop system that creates exciting PvE events on your server. Players can request airdrops through an NPC, complete a minigame, then battle AI guards to secure valuable loot. The system includes custom map props that spawn at drop locations for an immersive experience.

Key Features

  • NPC Interaction - Request airdrops through an interactive NPC
  • Skill-Based Minigame - Complete a minigame to call in the airdrop
  • Dynamic Plane Animation - Watch the plane fly overhead and drop the crate with a parachute
  • Armed AI Guards - Fight AI guards that spawn to protect the airdrop
  • Custom Map Props - 6 unique building sets that spawn at drop locations
  • 7 Pre-configured Locations - Ready-to-use drop zones with unique rewards
  • Percentage-Based Rewards - Configurable loot tables with chance, min, and max quantities
  • Player Tracking Blip - Optional blip to mark players who looted the crate
  • Scheduled Airdrops - Automatic airdrops at specified server times
  • Admin Command - Force spawn airdrops with /airdrop [location]
  • Framework Auto-Detection - Works with QBox, QB-Core, ESX, or standalone
  • Target System Support - Compatible with ox_target and qb-target
  • Discord Webhook Logging - Log all airdrop events to Discord
  • Multi-Language Support - Localization via JSON files

Interaction Methods

The resource supports three ways to trigger airdrops:

  1. NPC Interaction - Players talk to an NPC, provide a required item, complete a minigame
  2. Admin Command - Admins can spawn airdrops with /airdrop
  3. Scheduled Airdrops - Automatic airdrops at configured server times

Pre-configured Locations

Each location has unique themed rewards:

LocationThemeRewards
1MedicalBandages, Painkillers, Armor
2AmmunitionVarious ammo types
3PistolsCombat pistols, revolvers
4SMGsMicro SMG, SMG, Machine Pistol
5ShotgunsPump, Sawed-off, Double Barrel
6RiflesAssault rifles, Gusenberg
7High-tierMK2 weapons, Advanced Rifle

Need help? Join our Discord (opens in a new tab) for support!

FAQ

How do I add a custom airdrop location with its own themed loot table?

Open config.lua and append a new entry to Config.Locations with coords, theme name, propSet and a rewards array of { item, chance, min, max } rows. Set a unique id so admins can target it with /airdrop [id]. Saved locations survive restarts and are picked up by the scheduled airdrop rotation automatically.

How do I override the reward handler so loot grants custom XP or currency?

Edit editable/server.lua. The OnAirdropLooted function is intentionally outside escrow so you can hook your own XP, currency or logging system after the default payout runs. It receives the playerId, locationId and the awarded item list so you can do framework-agnostic accounting.

Can I disable armed NPC guards for one specific location while keeping them elsewhere?

Yes. Every entry in Config.Locations supports a guards boolean. Set it to false on the locations where you want a peaceful pickup (useful for low-population time windows or PVE-only servers). Global Config.Guards.enabled acts as a master switch if you want them off everywhere.

How do I translate legends_airdrop into another language?

Copy lang/en.json to lang/your_locale.json, translate every string value (leave the keys intact), then set Config.Locale to the new locale name. The resource reads the file at runtime, so no rebuild is needed. You can ship multiple locale files and swap at any time.

Why do airdrop crates occasionally stay on the ground after being looted?

This is almost always caused by Config.CrateDespawnDelay being too high or a client disconnecting mid-loot. The server-authoritative cleanup loop removes orphan crates after that delay. Lower the value or call exports.legends_airdrop:ForceCleanup() from an admin script to wipe them instantly.

Which exports let other resources react to airdrop events?

legends_airdrop exposes server exports GetActiveDrops and IsPlayerLooting, plus the event legends_airdrop:airdropLooted with payload { source, locationId, rewards }. Subscribe from any other resource to plug the airdrop into scoreboards, Discord logs or custom reward systems.


Legends Store - Premium FiveM Scripts