Description
A working ESX rival bounty system: a player escrows their own cash to place a hit on a specific rival, the open contracts show on a hit-list, and the escrow pays out to whoever lands the server-confirmed kill. Because the money is deducted up front and paid from escrow, the economy stays balanced — a clean way to monetize rivalry that sells well standalone.
Prompt Template
You are writing a FiveM resource for esextended (stable, exports getSharedObject).
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/gangs/18-rival-bounty-contract.lua. It implements a place-bounty command that escrows the placer's money server-side, a broadcast hit-list, and a…
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
- Minted payouts — paying without escrowing the placer's money creates cash; deduct on place and pay only from the held escrow, all server-side.
- Anim before load — the confirm
TaskPlayAnimno-ops if the dict is not loaded;RequestAnimDict+while not HasAnimDictLoaded(dict) do Wait(0) end. - Double / self pay — a stale bounty or self-kill double-pays; clear
Bounties[victim]atomically on payout and rejectkiller == victim.
Corrective re-prompt: In bounty:place, removeMoney from the placer before recording the escrow and reject on insufficient funds. In bounty:claimKill, read Bounties[victim], reject when it is nil or killer == victim, addMoney to the killer from the stored escrow, then set Bounties[victim] = nil before broadcasting so the contract can never be claimed twice.
Framework Integration
- ESX:
exports['es_extended']:getSharedObject();xPlayer.getMoney(),removeMoney,addMoney. - QBCore:
exports['qb-core']:GetCoreObject();Player.Functions.RemoveMoney/AddMoney('cash', amount). - QBox:
exports.qbx_core:GetPlayer(src);player.Functions.RemoveMoney/AddMoney('cash', amount).
Profit Potential
$250–$3500/mo on Tebex (expected ~$900). [INFERRED] priced inside the $50-389 FiveM script band against a corpus median seller of $11.85K/mo (signal-scraper tebex_snapshot n=100), scaled for a rising rivalry-economy niche.
Trend Signal
↗ rising — inferred: Bounty/hit contracts are a popular cross-server mechanic that monetizes rivalry; inferred-rising.
Sales Angle
Position as a live hit-list economy that turns grudges into cash flow. Recommended Tebex price $99-149.
Difficulty & Ship Time
intermediate · ships in 2-4h.