Setup guide

Gold Panning

Players pan the rivers for gold, sift their finds out of the gravel on a sifting table mini-game, and sell them to a Gold Buyer.

  • Version 2.0.1
  • Works on VORP, RSG Core, QBCore RedM
  • Resource Britannia_Goldpanning
  • Updated 19 Oct 2026

Overview

Gold Panning lets players take a pan into shallow water, scoop gravel and tip it onto the sifting table. They brush and shake the gravel through the screen and pick out anything worth keeping before the daylight runs out. The server decides what is in each pan, so skill only decides how much of it a player keeps.

  • The sifting table: a black and gold mini-game. Drag to brush gravel aside, press Space to shake sand through the mesh, and click glinting finds into your pouch. Anything left on the table is lost.
  • Pans wear out: 25 pans of gravel by default, with the uses left shown on the item.
  • A lucky rabbit's foot makes the good finds more likely.
  • A Gold Buyer, marked on the map, with prices that change once a day.
  • Key prompts (E to pan, R to put the pan away), a splash and a scooping bar.

Requirements

  • poggy_core (free), version 0.14.0 or newer.
  • One of VORP, RSG Core or QBCore RedM (poggy_core connects the script to it).

Install

  1. Download Britannia_Goldpanning from portal.cfx.re → Assets → Granted Assets.
  2. Put the Britannia_Goldpanning folder in your server's resources folder.
  3. Copy every picture from installation/images/ into your inventory's item image folder (VORP: vorp_inventory/html/img/items/). Keep the names exactly as they are.
  4. VORP: run SQL.sql in your database (HeidiSQL, phpMyAdmin and so on). It's safe to run more than once, and items your server already has are left unchanged. RSG Core / QBCore RedM: add the same items to your shared items list (see Items).
  5. Add ensure Britannia_Goldpanning to server.cfg, after ensure poggy_core.
  6. Restart the server.
  7. Set the Gold Buyer's position, the prices and what a pan can hold in config.lua.

The script has no database tables of its own. You can also open installation/install.html in your browser: it shows every item with its picture, a download button for each image, and the SQL with a copy button.

Items

PictureItemLabelUsed for
goldpanGold PanUsable: take it out to pan
goldnuggetGold NuggetFound in the pan; the buyer pays for it
goldflakeGold FlakesThe buyer pays for it
smallgemSmall GemThe buyer pays for it
goldcoinGold CoinFound in the pan
silvercoinSilver CoinFound in the pan
bronzecoinBronze CoinFound in the pan
tinTinFound in the pan
rockRockFound in the pan
sandSandFound in the pan
crawdadCrawdadFound in the pan
rabbitfootRabbit's FootCarry it for better luck

VORP SQL (the same as SQL.sql):

sql
INSERT IGNORE INTO `items` (`item`, `label`, `limit`, `can_remove`, `type`, `usable`) VALUES
	('goldpan',    'Gold Pan',       1,  1, 'item_standard', 1),
	('rock',       'Rock',           50, 1, 'item_standard', 0),
	('sand',       'Sand',           50, 1, 'item_standard', 0),
	('tin',        'Tin',            50, 1, 'item_standard', 0),
	('goldnugget', 'Gold Nugget',    50, 1, 'item_standard', 0),
	('goldflake',  'Gold Flakes',    50, 1, 'item_standard', 0),
	('smallgem',   'Small Gem',      50, 1, 'item_standard', 0),
	('goldcoin',   'Gold Coin',      50, 1, 'item_standard', 0),
	('silvercoin', 'Silver Coin',    50, 1, 'item_standard', 0),
	('bronzecoin', 'Bronze Coin',    50, 1, 'item_standard', 0),
	('crawdad',    'Crawdad',        20, 1, 'item_standard', 0),
	('rabbitfoot', 'Rabbit''s Foot', 1,  1, 'item_standard', 0);

Many servers already have rock, sand, the coins or crawdad. The SQL leaves those as they are. If you rename an item in config.lua, rename it in the SQL too.

RSG Core / QBCore RedM: add the same items (names, labels and limits above) to your shared items list instead of running the SQL. The gold pan must be usable.

Configuration

The script is encrypted with Cfx.re asset escrow. config.lua stays editable, and every option in it is commented. All the words players see are in Config.Locale in the same file.

SettingWhat it doesDefault
Config.DebugPrints what the script is doing to the server and F8 consolesfalse
Config.CommandChat command that takes out (or puts away) your pan. false turns it off'goldpan'
Config.RequirePanItemtrue: players need the pan item to pantrue
Config.PanItemNameThe pan item's name'goldpan'
Config.PanDurability.MaxUsesPans of gravel before a pan breaks (Enabled = false turns wear off)25
Config.CooldownSecondsSeconds after finishing before you can pan again15
Config.AllowWhileSwimmingtrue: players can pan while swimmingfalse
Config.WaterDepthHow deep the water may be where you standMinDepth = -0.25, MaxDepth = 1.35
Config.Sift.SecondsTime on the sifting table before it is cleared away25
Config.Sift.MinSecondsA pan finished faster than this is refused4
Config.Sift.Grains / Config.Sift.PebblesSand grains and pebbles on the table (fewer is easier, and lighter on old PCs)1400 / 240
Config.FindsPerPanHow many times the loot table is rolled for each pan{ min = 2, max = 4 }
Config.NoFindChance.PercentChance (0 to 100) that a roll finds nothing30
Config.LootTableWhat can be in a pan: item, label, weight, pieces and whether luck helps8 entries
Config.LuckyItemThe lucky item and how much it multiplies the lucky finds' chancerabbitfoot, 1.75
Config.KeysPrompt keys (RedM control hashes)Pan = E, PutAway = R
Config.Trader.InteractionDistanceHow close to stand to trade2.0
Config.BuyersEach Gold Buyer: name, position, heading, model, on/off, map blip1 buyer, at Valentine
Config.PricesWhat the buyer pays per item: a price between min and max, rolled once a daygoldflake 1–3, goldnugget 2.50–3.50, smallgem 12–25
Config.SellAmountsChoices when selling{ 1, 5, 'all' }

A loot table entry looks like this:

lua
{ item = 'goldnugget', label = 'Gold Nugget', chance = 8, amount = {1, 1}, lucky = true },

chance is a weight compared with the other entries, amount is the number of pieces (min, max), and lucky = true means the rabbit's foot helps it.

Commands and permissions

Command / keyWhoWhat it does
/goldpanEveryoneTakes out your pan, or puts it away. The name is Config.Command.
Use the gold panEveryoneTakes out your pan (Config.UsePanItemOnUse)
E in shallow waterEveryone holding a panPans here
REveryone holding a panPuts the pan away
Space on the sifting tableEveryoneShakes sand through the screen
E at a Gold BuyerEveryoneOpens the buyer's menu

How it works

  1. Take out your pan with /goldpan or by using it from your inventory.
  2. Stand in shallow water and press E. Your character scoops gravel from the stream.
  3. The sifting table opens. Drag the mouse to brush gravel aside, and press Space to shake sand through the mesh. Finds glint once they are uncovered: click them into your pouch.
  4. Press Finish, or wait for the daylight to run out. You keep only what you picked out. Whatever is left on the table is lost.
  5. Each pan of gravel uses up one use of the pan. When it reaches 0, the pan breaks.
  6. Take your finds to a Gold Buyer, press E, and pick what to sell and how many. You're paid in cash at today's price.

Carrying a rabbit's foot makes the lucky finds (nuggets, coins and crawdads by default) more likely, and players are told when their luck helped.

Fair play. The server rolls what is in each pan when the player scoops, and only gives pieces that were in that pan. A pan finished too fast, too late, or more than 15 metres from where it was scooped is refused. Players must stand at the buyer to sell. If the buyer can't pay, the goods are returned.

Troubleshooting

"You need a gold pan."

The player has no goldpan, or their pan is worn out. With Config.RequirePanItem = false, no pan item is needed.

"You need to stand in shallow water to pan for gold."

The water must be between Config.WaterDepth.MinDepth and MaxDepth deep where the player stands. Swimming doesn't count unless Config.AllowWhileSwimming is true.

"You must wait a bit before panning again."

There's a cooldown of Config.CooldownSeconds seconds after each pan.

A pan gave nothing, with no message

The server refused it: it was finished faster than Config.Sift.MinSeconds, much later than the timer allows, or the player moved more than 15 metres away.

Using the gold pan from the inventory does nothing

The goldpan item must be usable (usable = 1 in VORP, usable in your shared items list on RSG or QBCore). Make sure poggy_core starts before Britannia_Goldpanning.

The Gold Buyer won't open

The player must stand within Config.Trader.InteractionDistance of the buyer. Check that Config.Trader.Enabled is true and the buyer's enabled is not false.

Item pictures are missing

Copy the pictures from installation/images/ into your inventory's image folder, and keep their names exactly as they are.

Version history

  • 2.0.1: current release.

Still stuck?

Open a ticket on our Discord with your framework, your poggy_core version and what you see, and we'll help you get it running.

Get help on Discord