Description
A working QBCore tiered crafting workbench system: benches exist at multiple tiers and each tier unlocks a higher band of recipes, so a player must find or earn a better bench to craft advanced items. The server validates the bench tier, consumes the materials and grants the output, making the progression unspoofable. This is the recipe-gating layer servers sell on top of a base inventory crafting export.
Prompt Template
You are writing a FiveM resource for qb-core (exports['qb-core']:GetCoreObject()).
The full prompt template and its reference Lua are part of a one-time pack. Pick your depth β both are lifetime access, no subscription, ever.
- 60 prompts + syntax-validated reference Lua
- Lifetime access β pay once
- All 510 prompts β the full library
- Per-prompt profit/trend intelligence (CSV + playbook)
- Lifetime free updates β new niches as the market moves
$49 for 60 Β· $199 for all 510 + intelligence β one-time, no subscription.
Expected Output
The reference Lua lives at content/expected-outputs/crafting/08-tiered-crafting-benches.lua. It implements proximity bench detection that passes the bench tier to the UI, a craft anim with a loadβ¦
The full prompt template and its reference Lua are part of a one-time pack. Pick your depth β both are lifetime access, no subscription, ever.
- 60 prompts + syntax-validated reference Lua
- Lifetime access β pay once
- All 510 prompts β the full library
- Per-prompt profit/trend intelligence (CSV + playbook)
- Lifetime free updates β new niches as the market moves
$49 for 60 Β· $199 for all 510 + intelligence β one-time, no subscription.
Known Failure Modes & Corrective Prompt
- Client-trusted tier/materials β Claude checks
benchTierand edits inventory on the client; a modder crafts above their tier. Keep tier gating, RemoveItem and AddItem on the server. - Anim before load β
TaskPlayAnimno-ops if the dict is not loaded; alwaysRequestAnimDict+while not HasAnimDictLoaded(dict) do Wait(0) end. - One-sided net event β defining
benches:craftResulton only one side breaks the round-trip; both client and server useRegisterNetEvent+AddEventHandler.
Corrective re-prompt: "Move the recipe table and all gating to the server: reject the craft if benchTier is below recipe.tier and verify every material with GetItemByName before RemoveItem, then AddItem the output. The client only sends the recipeId and the bench tier it stood at."
Framework Integration
- ESX: swap to
exports['es_extended']:getSharedObject()and usexPlayer.getInventoryItem(item).count/xPlayer.removeInventoryItem/xPlayer.addInventoryItem. - QBCore: as written β
Player.Functions.GetItemByName,RemoveItem,AddItem. - QBox: use
exports.qbx_core:GetPlayer(src)with ox_inventory exports (exports.ox_inventory:GetItem/RemoveItem/AddItem); tier logic is identical.
Profit Potential
$250β$3200/mo on Tebex (expected ~$900). [INFERRED] priced inside the $50-389 script band against the signal-scraper tebex_snapshot corpus (n=100, median seller $11.85K/mo); a rising progression-extension niche on top of existing crafting exports.
Trend Signal
β rising β corpus: signal-scraper corpus shows ox_inventory ships a crafting export, and tiered-bench gating is the common paid extension layered on it.
Sales Angle
The progression layer on top of base inventory crafting β bench tiers that gate recipes and give players a reason to grind toward a better station. Recommended Tebex price $189.
Difficulty & Ship Time
intermediate Β· ships in 4-6h.