~/docs/tattoo-shop-v2/configuration/pricing
tattoo shop v2 docs›
Tattoo shop V2
Pricing
-- 4 code blocks · 1 min read
Default prices
Config.Pricing seeds the database once, on the first start:
Config.Pricing = {
seedVersion = 1, -- bump to re-seed the defaults
currency = '$',
account = 'cash', -- 'cash' | 'bank'
vanilla = 250,
image = 400,
freehand = 300,
}
After the first start, editing these values changes nothing. Prices live in the database and are edited in game. To force a re-seed from the config, increment
seedVersion.
The admin studio
/tattooadmin
Opens a separate admin panel. You get access with any of these:
- the ace permission
vartattoo.admin - your identifier listed in
Config.Admins - an admin group on your framework
Config.Admins = {
-- 'license:xxxxxxxx',
}
The price cascade
A tattoo price is resolved in this order, first match wins:
single tattoo > collection > zone > mode default
Leave a level empty and it falls back to the one below. That is what makes bulk pricing fast: setting a price on the torso zone or on the mpbiker_overlays collection prices hundreds of tattoos in one action, and you can still override one specific tattoo on top of it.
The admin panel has three tabs matching the cascade:
| Tab | What you price |
|---|---|
| Zones | Head, torso, back, arms, legs |
| Collections | Any of the 25 GTA collections |
| Tattoos | One specific tattoo, searchable |
Each row shows where its current price comes from (custom, collection price, zone price or default), so you always know what you are overriding.
Enabling and disabling modes live
The Available modes section of the admin panel toggles vanilla, image and freehand. A disabled mode is hidden in the player UI and rejected server-side, so it cannot be triggered by a crafted event.
Everything is saved in the database immediately. No restart, no config edit.