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
- Download
Britannia_Goldpanningfrom portal.cfx.re → Assets → Granted Assets. - Put the
Britannia_Goldpanningfolder in your server'sresourcesfolder. - 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. - VORP: run
SQL.sqlin 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). - Add
ensure Britannia_Goldpanningtoserver.cfg, afterensure poggy_core. - Restart the server.
- 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
| Picture | Item | Label | Used for |
|---|---|---|---|
![]() | goldpan | Gold Pan | Usable: take it out to pan |
![]() | goldnugget | Gold Nugget | Found in the pan; the buyer pays for it |
![]() | goldflake | Gold Flakes | The buyer pays for it |
![]() | smallgem | Small Gem | The buyer pays for it |
![]() | goldcoin | Gold Coin | Found in the pan |
![]() | silvercoin | Silver Coin | Found in the pan |
![]() | bronzecoin | Bronze Coin | Found in the pan |
![]() | tin | Tin | Found in the pan |
![]() | rock | Rock | Found in the pan |
![]() | sand | Sand | Found in the pan |
![]() | crawdad | Crawdad | Found in the pan |
![]() | rabbitfoot | Rabbit's Foot | Carry it for better luck |
VORP SQL (the same as 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.
| Setting | What it does | Default |
|---|---|---|
Config.Debug | Prints what the script is doing to the server and F8 consoles | false |
Config.Command | Chat command that takes out (or puts away) your pan. false turns it off | 'goldpan' |
Config.RequirePanItem | true: players need the pan item to pan | true |
Config.PanItemName | The pan item's name | 'goldpan' |
Config.PanDurability.MaxUses | Pans of gravel before a pan breaks (Enabled = false turns wear off) | 25 |
Config.CooldownSeconds | Seconds after finishing before you can pan again | 15 |
Config.AllowWhileSwimming | true: players can pan while swimming | false |
Config.WaterDepth | How deep the water may be where you stand | MinDepth = -0.25, MaxDepth = 1.35 |
Config.Sift.Seconds | Time on the sifting table before it is cleared away | 25 |
Config.Sift.MinSeconds | A pan finished faster than this is refused | 4 |
Config.Sift.Grains / Config.Sift.Pebbles | Sand grains and pebbles on the table (fewer is easier, and lighter on old PCs) | 1400 / 240 |
Config.FindsPerPan | How many times the loot table is rolled for each pan | { min = 2, max = 4 } |
Config.NoFindChance.Percent | Chance (0 to 100) that a roll finds nothing | 30 |
Config.LootTable | What can be in a pan: item, label, weight, pieces and whether luck helps | 8 entries |
Config.LuckyItem | The lucky item and how much it multiplies the lucky finds' chance | rabbitfoot, 1.75 |
Config.Keys | Prompt keys (RedM control hashes) | Pan = E, PutAway = R |
Config.Trader.InteractionDistance | How close to stand to trade | 2.0 |
Config.Buyers | Each Gold Buyer: name, position, heading, model, on/off, map blip | 1 buyer, at Valentine |
Config.Prices | What the buyer pays per item: a price between min and max, rolled once a day | goldflake 1–3, goldnugget 2.50–3.50, smallgem 12–25 |
Config.SellAmounts | Choices when selling | { 1, 5, 'all' } |
A loot table entry looks like this:
{ 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 / key | Who | What it does |
|---|---|---|
/goldpan | Everyone | Takes out your pan, or puts it away. The name is Config.Command. |
| Use the gold pan | Everyone | Takes out your pan (Config.UsePanItemOnUse) |
E in shallow water | Everyone holding a pan | Pans here |
R | Everyone holding a pan | Puts the pan away |
Space on the sifting table | Everyone | Shakes sand through the screen |
E at a Gold Buyer | Everyone | Opens the buyer's menu |
How it works
- Take out your pan with
/goldpanor by using it from your inventory. - Stand in shallow water and press E. Your character scoops gravel from the stream.
- 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.
- 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.
- Each pan of gravel uses up one use of the pan. When it reaches 0, the pan breaks.
- 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










