Parachute System | Wear & Tear | Skill-Based Folding | NPC Shop | 8 Styles
Bring dynamic realism to your RP server with this fully-featured parachute system , supporting both ESX and QBCore . Includes item-based parachute logic, skill-based folding, wear-and-tear mechanics, and an integrated NPC shop. Fully customizable and localized.
Key Features
Parachute Item Logic
- When a player picks up a parachute, it’s converted into an “in-use” parachute item.
- Upon deployment and safe landing:
- There’s a chance the parachute breaks (configurable), or becomes a “used” version.
- Players can only use a parachute if it’s visibly equipped.
- If removed mid-air: no recovery on landing.
Skill-Based Folding
- Players can attempt to repack used parachutes.
- Two folding systems supported:
- Skill check via ox_lib (e.g., press W/A/S/D)
- Simple time-based repack
8 Customizable Parachute Styles
Choose from 8 distinct parachute colors and matching backpack visuals:
- Rainbow, Dark Red, Blue, Black-Yellow, and more
- Each has its own usage item, used item, and in-game price
Equipped Parachute Restriction
- Players may carry multiple parachutes in inventory.
- Only one can be equipped at a time (visually worn on the back).
- Equipping another is blocked until the current one is removed.
NPC Shop Integration
- Add a parachute NPC to your world (custom model and blip supported)
- Players can purchase parachutes from a configurable shop UI
- Supports money item-based economy
Fully Configurable
- Adjust parachute durability and break chances
- Localize to English, German, French, Hungarian (easily expandable)
- Supports 3D text,
ox_target, orqb-targetinteraction systems - Modular notification support:
ox_lib,t-notify,okokNotify, or custom
Preview
Easy configuration
Install
- Download the Keymaster.
- Add the azakit_parachutesystem to your resources folder.
- Add
ensure azakit_parachutesystemto your server.cfg.
OX Inventory Items
['parachute_rainbow'] = {
label = 'parachute_rainbow',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useItem"
}
},
['parachute_rainbow_use'] = {
label = 'parachute_rainbow_use',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsageItem"
}
},
['parachute_rainbow_used'] = {
label = 'parachute_rainbow_used',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsedItem"
}
},
['parachute_dark_red'] = {
label = 'parachute_dark_red',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useItem"
}
},
['parachute_dark_red_use'] = {
label = 'parachute_dark_red_use',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsageItem"
}
},
['parachute_dark_red_used'] = {
label = 'parachute_dark_red_used',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsedItem"
}
},
['parachute_white_blue_yellow'] = {
label = 'parachute_white_blue_yellow',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useItem"
}
},
['parachute_white_blue_yellow_use'] = {
label = 'parachute_white_blue_yellow_use',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsageItem"
}
},
['parachute_white_blue_yellow_used'] = {
label = 'parachute_white_blue_yellow_used',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsedItem"
}
},
['parachute_black_red_white'] = {
label = 'parachute_black_red_white',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useItem"
}
},
['parachute_black_red_white_use'] = {
label = 'parachute_black_red_white_use',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsageItem"
}
},
['parachute_black_red_white_used'] = {
label = 'parachute_black_red_white_used',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsedItem"
}
},
['parachute_red_white_blue'] = {
label = 'parachute_red_white_blue',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useItem"
}
},
['parachute_red_white_blue_use'] = {
label = 'parachute_red_white_blue_use',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsageItem"
}
},
['parachute_red_white_blue_used'] = {
label = 'parachute_red_white_blue_used',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsedItem"
}
},
['parachute_blue'] = {
label = 'parachute_blue',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useItem"
}
},
['parachute_blue_use'] = {
label = 'parachute_blue_use',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsageItem"
}
},
['parachute_blue_used'] = {
label = 'parachute_blue_used',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsedItem"
}
},
['parachute_black'] = {
label = 'parachute_black',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useItem"
}
},
['parachute_black_use'] = {
label = 'parachute_black_use',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsageItem"
}
},
['parachute_black_used'] = {
label = 'parachute_black_used',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsedItem"
}
},
['parachute_black_yellow'] = {
label = 'parachute_black_yellow',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useItem"
}
},
['parachute_black_yellow_use'] = {
label = 'parachute_black_yellow_use',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsageItem"
}
},
['parachute_black_yellow_used'] = {
label = 'parachute_black_yellow_used',
weight = 2500,
stack = false,
close = true,
description = nil,
client = {
export = "azakit_parachutesystem.useUsedItem"
}
},
Requirements
- ESX or QBCore
ox_lib(for UI & skill checks)- Optional:
ox_targetorqb-target, or fallback to 3D text
Tebex: Introductory price — limited time only.
https://azakit-development.tebex.io/package/6542923
Help:
You need help, join my Discord server
https://discord.com/invite/DmsF6DbCJ9
| Code is accessible | No (only config.lua) |
| Subscription-based | No |
| Lines (approximately) | 1000 |
| Requirements | ESX or QBCore, ox_lib, ox_target or qb-target (optional) |
| Support | Yes |
My other works:
Paid:
[PAID][ESX/QBCore] Backpack System for ox_inventory – Wearable, Transferable, Fully Customizable
[PAID][ESX/QBCore] Gate Control System | Swing & Prop-Based Gates
[PAID][ESX/QBCore] Dynamic Vending Machine & Job System | City Job + Crime Economy
[PAID][ESX/QBCore] Ghost Summoner: Buster Edition | Ghost Summoning & Capture System
[PAID][ESX/QBCore] Blood Bank & Reward System
[PAID][ESX/QBCore] Clothing Store Robbery | Steal & Sell Clothes
Free:
[FREE] [STANDALONE] AutoMove
[FREE] [ESX & QBCore] Milking a cow
[FREE] [ESX] Vehicle key and lock
[FREE] [ESX & QBCore] Collecting eggs from hens
[FREE] [ESX & QBCore] Moneywash with tickets, licenses, tax levels, transport
[FREE] [ESX] Sell item with delivery
[FREE] [ESX] Scrap metal from old air conditioners
[FREE] [ESX] NPC for launching events


