⛏️ NB Mining & Blacksmith
A complete mining-to-blacksmith economy for VORP (RedM)
Swing a pickaxe, blast an ore seam, wash the rock, smelt it, forge it, repair it, sell it. NB Mining & Blacksmith is one resource that runs the whole loop. Players can also buy and run their own mines and blacksmith shops.
[Preview video / screenshots here] -- coming soon
🔁 The Loop
- Mine: pickaxe rock nodes, blast ore seams with pipe charges, wash rock at gold cradles or in rivers, and pan for gold.
- Smelt: the furnace turns ore into bars, and coal burns as fuel.
- Craft: the anvil forges bars into nails, horseshoes, knives and pickaxes, which feed straight back to miners.
- Repair: tools wear down. Paid repairs are a blacksmith job trade, and repair kits are sold at the supply shop.
- Sell: buyer NPCs pay for ore, bars and gems, with prices that move.
- Own: players buy mines and blacksmith businesses, hire staff and earn from the work.
⛏️ Mining
- Pickaxe mining on rock nodes. Rocks crumble, shed chunks, sink a little with each hit, then shatter into flying pieces on the last swing.
- Blast mining on ore seams using pipe charges, with a rumble and screen shake for players nearby.
- Gold washing at craftable gold cradles, plus river panning.
- Pickaxe tiers. The best working pickaxe you carry is used. The Steel Pickaxe swings faster, finds more and wears slower. Nodes can require a minimum tier.
- Durability and repair for tools, with repair kits and blacksmith repairs.
-
Sound effects tied to the swing animation (pick hits, crumble, shatter). Replace them with your own
.oggfiles if you like. - Co-op mining. Miners working the same area speed each other up and find a little more. Everyone near a blast shares the ore, and the blaster always keeps at least one chunk.
📈 Progression & Quality
- XP and levels with perks: faster swings, extra yield, better rare-find luck and less tool wear. Loot can be locked behind a level.
- Ore quality: Poor / Standard / Fine / Pristine, stored in item metadata. Smelting keeps the grade, so a bar gets the average grade of the ore used. Grade multiplies the sell price. It can be switched off completely.
🔥 Blacksmithing
- Furnace with recipes and fuel.
- Anvil crafting for bars into goods and tools.
- Grindstone for repairs.
- Placeable stations with a placement ghost (rotate and cancel).
- Supply shop NPCs with map blips.
- Player-owned blacksmith businesses: buy, hire and run the trade.
-
Anvil weapons. None ship by default, but you can add recipes that deliver a weapon via
vorp_inventory.
🏭 Player-Owned Mines
Players buy a mine office and run it from its menu. Four sample mines ship: Heartlands Quarry, Grizzlies Iron Mine, Annesburg Coal Pit and Gaptooth Ridge Mine.
- Each business claims rock by node/seam IDs, an ID prefix, or a zone (centre and radius).
- Access control: the owner switches the mine between open to everyone and employees only.
- Stockpile income: visitors leave a royalty and employees leave a share. The owner withdraws from the stockpile, which has a configurable cap.
- Staff: hire nearby players, fire employees (even offline ones), transfer, rename or sell the mine. Employees can quit.
- One mine per player by default, and you can configure it.
- Optional VORP job for owners and employees, applied and removed automatically.
-
Mine map blips use a mine shaft / hitching post sprite and show “Mine for Sale” or the owner’s chosen name. They are toggleable: the server can turn them off in config, and players can hide or show them with
/mineblips.
💰 Market, Buyers & Contracts
- Dynamic prices. Each unit sold lowers the price. Prices recover over time and drift randomly, and they are saved to the database. Dumping a stack isn’t free, because the price slides down during the sale.
- Shop price cap. Buyers never pay more than a set factor of the cheapest shop price for an item, which stops buy-low / sell-high loops.
- Delivery contracts. A board of orders at a premium that players fill over several trips. The completion bonus goes to whoever delivers the last unit.
- All prices are calculated server-side. The client never sends one.
⚠️ Hazards
- Cave-ins on a swing in configured zones, and unstable seams that can collapse after a blast.
- Optional light requirement and toxic gas zones with mask protection.
- Hazards never kill unless you enable
canKill. Everything is decided on the server.
🧨 Dynamite Crates
- Register the red crates already in the mines through an in-game flow, either per model or per spot.
- Crates restock after they run dry, with a per-player hourly cap.
- Player-placeable
dynamite_crateitem with limits and crew restocking. - Public crates that anyone can take from and that refill over time.
🛠️ Admin Tools
-
/miningedit, an in-game node and seam editor. Add, list and remove nodes without touching config files, with changes live for all players immediately. -
/mining status | reset | give | validate | market | mines | minefree - Startup validator that reports missing items, broken node entries, missing sound files and prices a shop undercuts.
- Setup helpers:
/minecoords,/mineofficehere,/bsshophere,/bsplothere.
🔒 Security & Logging
- Every client→server event is rate limited and distance and ownership checked.
- Offence counting with optional auto-kick.
- Furnaces work only for the player who opened them, while standing next to them. Item amounts are validated.
- Discord webhook logs per category: sales, big payouts, business purchases, admin actions and security flags.
🎨 UI & Menus
- Western NUI for furnace, shop, stations, menus and inputs.
- Four themes: western, parchment, saloon, midnight. The whole UI follows one theme.
-
Swappable menu system: NB menu,
vorp_menu, ox_lib, or a custom provider. Other resources can register their own provider through an export. - Restart-safe. Stopping the resource cleans up props, peds, blips and NUI first.
🌍 Languages
English · Español · Português (BR) · Français · Deutsch. Switch with one config line. You can add your own language by copying locales/en.lua.
🔌 Developer Friendly
-
Server exports:
GetMiningLevel,GetMiningXP,AddMiningXP,GetPerks,GetNodeState,ResetNode,GetItemPrice,GetMarketMultiplier,GetContracts,GetOreGrade,GetOreMultiplier,GetMineBusiness,IsMineMember -
Server events:
onMined,onBlast,onSold,onContract,onCaveIn,onDynamite,onMineBusiness - Every feature has an
enabledswitch inconfig_features.lua.
📦 Requirements
Dependency
Needed for
vorp_core
Framework
vorp_inventory
Items
ox_lib
Shared library
oxmysql
Database
vorp_inputs
Text inputs
vorp_menu
Only if you use the vorp menu provider