Impound Heist Payouts & Reputation

•7 min read

Payouts & Reputation

Every number in a payout is worked out by the server, from its own tables, and pinned to the contract when it is signed. An admin re-pricing a category in the Creator mid-job changes the next contract, not the money a crew out on a job was promised.

Where the money comes from

SourceWho gets itHow much
The buyerSplit evenly across the crewThe car's category price, minus the damage penalty, times the standing multiplier
The safe (optional)Every crew member, in fullA percentage of the car's category price, times the standing multiplier
Safe loot (optional)Whoever opened the safeConfigured items, each rolled on its own

Everyone who was on the crew is paid, wherever they are standing at the time. Money is paid as cash: the money account on ESX, cash on QBCore and Qbox. The supplier also takes cash in hand.

The car's price

The buyer pays for what kind of car it is, not for the badge on it. Each car on the list is filed under one category, and each category has one price (Config.Prices, or the Creator's Rewards tab):

CategoryDefault price
Compacts$6,000
Sedans$8,000
SUVs$11,000
Coupes$12,000
Muscle$13,000
Sports Classics$20,000
Sports$16,000
Super$25,000
Motorcycles$9,000
Off-road$10,000
Vans$7,000

The five cars on the shipped list are all Sports, so every default contract is worth $16,000 clean.

The delivery payout

pay   = category price × (1 − damage × damagePenaltyPercent / 100) × payoutMult
share = pay ÷ crew size   (rounded down, paid to each crew member)
  • damage is read from the car's body health on the server: 0 for a clean car, 1 for a wreck. With the default 40% penalty, a totally wrecked car still sells for 60% of its price.
  • payoutMult comes from the starter's tier (below). Standing is applied after the damage, so a trusted crew is paid more for the car they delivered, not shielded from having wrecked it.

The safe bonus

bonus = category price × safeBonusPercent / 100 × payoutMult   (paid to EACH crew member)

The safe uses the clean category price, whatever state the car is in. A tier with its own safeBonusPercent replaces the default 25% for that run (it is not added to it), and the tier's payoutMult applies on top.

Worked examples

A $16,000 Sports car, crew of four:

SituationEach member from the buyerEach member from the safe
Stranger, clean car$4,000$4,000 (25%)
Stranger, body health at half$3,200$4,000
Known (×1.15), clean$4,600$5,520 (30% × 1.15)
Made (×1.60), clean$6,400$10,240 (40% × 1.60)

Solo, the same Stranger run pays $16,000 from the buyer and $4,000 from the safe.

Because the buyer's money is split and the safe's is not, the safe matters more the bigger the crew. With four people it pays each member as much as the car does at Stranger, and more at higher tiers. Lower safeBonusPercent (and the tiers' values) if you want the car to stay the main prize.

Reputation

Standing with the fixer is one number per character, earned by finishing jobs, that moves you up a ladder of tiers.

  • Earned by every crew member on a delivered car: Config.Reputation.perJob, default +1.
  • Never lost. A failed or lapsed contract costs nothing. The contract ending is already the punishment.
  • The starter's standing sets the terms. The tier is read once, from the player who took the job, when the contract is signed, and pinned to that run. The crew is whoever happened to be nearby, and the highest-rep bystander does not get to lend their standing.
  • Visible in game. Ask the fixer "How do we stand?" to open the Standing panel: current tier, rep, rep to the next tier, rep earned per job, and the perks of every tier reached.

The ladder

A tier is matched by minRep, the highest one you still clear.

TierMin repPayoutDelivery clockPrep clockSafe cutCrewCooldownDecoys
Stranger0×1.00--25% (default)---
Known3×1.15+3 min-30%---
Trusted8×1.35+6 min+10 min35%+1--
Made20×1.60+10 min+15 min40%+2−3 h−1

Perk fields

Every field below is read by the server, and the Standing panel builds its perk cards from the same fields, so it never advertises a perk that is not paid. Leave a field out to not grant it.

FieldEffect
payoutMultMultiplies what the buyer pays, and the safe with it
extraPrepMinutesAdded to the preparation clock
extraDeliverMinutesAdded to the delivery clock
crewBonusMore people swept into one crew
safeBonusPercentReplaces Config.Payout.safeBonusPercent for this run
cooldownReduceHoursThe robbed yard goes quiet for that much less
fewerDecoysOne less car in the yard to tell the mark apart from

The first tier is what a stranger gets and should grant nothing. Add, remove or rename tiers freely in Config.Reputation.tiers.

Where it is stored

Reputation lives in vs_heist_reputation, keyed by (citizenid, clan). On ESX the citizenid column holds the ESX identifier. The heist's clan is Config.Reputation.clan, default the_fixer.

CREATE TABLE IF NOT EXISTS `vs_heist_reputation` (
    `citizenid` VARCHAR(64) NOT NULL,
    `clan` VARCHAR(64) NOT NULL,
    `rep` INT NOT NULL DEFAULT 0,
    `updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    PRIMARY KEY (`citizenid`, `clan`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Shared with the Laundromat Heist. This is the same table the Laundromat Heist creates, with the same schema. Give both scripts the same clan id and they build one standing. As shipped they use different clans (the_fixer here), so each contact trusts you on his own terms.

If the database is unavailable, every lookup answers 0 and nothing is written: the heist runs, everyone is a Stranger, the console says so once, and the Standing panel warns that progress is not being remembered. With Config.Reputation.enabled = false, there is no ladder at all and the fixer answers "He does not keep a ledger."

Cooldowns and limits

LimitDefaultNotes
Contracts at once1 per serverA second crew is told "Something is already running."
Yard cooldown6 hoursSet only when a car is delivered from that yard. Made standing takes 3 hours off. Held in memory, so a restart clears it.
Preparation clock30 minutesStops while the crew waits for the green light. Running out has no penalty.
Delivery clock20 minutesCounted from the green light. Running out ends the contract with no pay.

There is no per-player cooldown: once a contract ends, the next can be taken a few seconds later, against any yard that is not cooling down.