Overview
RARX Fishing is a complete fishing activity: players grab a rod and bait, head to one of several map zones, cast, beat a reel-in skill-check and land fish whose rarity scales with the zone. Caught fish can be sold to an NPC for cash, and a recurring tournament rewards the top anglers automatically. The whole catch flow is server-authoritative — the server decides the zone (from the player’s real position) and the fish before the line is even cast, so the client can only report whether the skill-check succeeded. There is nothing to spoof.Menus use ox_lib (context menus, input dialogs, text UI, notifications). There is no qb-menu / qb-input dependency.
Features
Multi-Framework
QBCore, QBox (qbx_core) and ESX — auto-detected
Multi-Inventory
ox_inventory, qb-inventory or ESX — auto-detected
Server-Authoritative Catch
Server picks zone & fish; client only reports the skill-check result
Fishing Zones
Multiple polygon zones, each with its own fish pool and wait time
Rods & Bait
Buyable rods and bait, where better bait shortens the wait
Sell Fish
Sell your catch to an NPC at a randomized per-fish price
Live Tournaments
Scheduled, server-run tournaments with a top-3 prize payout
ox_lib UI
Context menus, input dialogs and a Vue NUI panel/skill-check
Requirements
Installation
1
Download & Extract
Extract the resource into your
resources folder.2
Add to server.cfg
3
Set the Language
4
Register the Items
Add the fishing items (rod, bait and every fish) to your inventory’s item list. See Required Items below.
5
Restart & Test
Buy a rod + bait from the shop NPC, head to a fishing zone, and cast.
Required Items
All items handed out by the script must exist in your inventory’s item database (ox_inventory/data/items.lua or qb-core/shared/items.lua). Item names are
defined in shared/config.lua.
Item Definitions
Copy the block for your inventory and paste it into the item list. Labels and weights are suggestions — tweak them freely. (Item images aren’t included; the inventory will show a placeholder until you add your own.pngs.)
Configuration
All settings live inshared/config.lua.
Integration
Fishing Zones
Each zone is a polygon with its own wait time and fish pool. The server checks the player’s real position against these polygons — the client never tells the server which zone it is in.Fish
Each fish has a sale price range, a spawnchance (weight within its zone) and
its tournament point value.
Rods & Bait
waitDivisor = shorter wait before a fish bites.
Tournament
[1] = { money = 10000, account = 'bank', item = { name = 'goldbar', amount = 1 } }.
How It Works
1
Buy gear
Talk to the shop NPC and buy a
fishingrod plus some bait.2
Go to a zone
Head to a fishing zone marked on the map. Using the rod outside a zone does nothing.
3
Cast
Use the rod. The server confirms your zone, consumes one bait, and secretly picks the fish you’ll get.
4
Reel in
Wait for the bite, then beat the skill-check (press Space in the target area). Hold E at any point to cancel.
5
Sell or keep
Sell your catch to the NPC for cash, or hold onto it.
Tournaments
When a tournament is live, every catch awards points based on the fish’s rarity. The tournament is fully server-run: points can only be granted by a real server-verified catch, prizes are paid from a stable per-character identifier (so a reconnect can’t misdirect a payout), and the public leaderboard never leaks server IDs to clients. Admin commands (ACEgroup.admin):
Exports:
Localization
Set the language with the sharedrarx-lang convar:
translates/ (en.lua, es.lua) and use the RARX Lang (Locale) system. The NUI panel labels are pushed from the same locale.
Troubleshooting
Items aren't given (catch/buy does nothing)
Items aren't given (catch/buy does nothing)
The fishing items aren’t in your inventory’s database. Add every item from
Required Items to
ox_inventory/data/items.lua (or
qb-core/shared/items.lua), and make sure fishingrod is usable.Using the rod does nothing
Using the rod does nothing
Confirm
fishingrod is a usable item and that you are standing inside a
fishing zone — casts outside a zone are rejected by the server.No framework detected
No framework detected
The resource requires QBCore, QBox or ESX. Start one before
rarx_fishing,
or pin Framework in shared/config.lua.Wrong inventory backend
Wrong inventory backend
Set
Inventory in shared/config.lua to 'ox_inventory', 'qb' or
'esx' instead of 'auto' if detection picks the wrong one.No NPC interaction prompt
No NPC interaction prompt
With
Config.Target = false, stand close to the NPC for the [E] prompt. To
use a target system instead, set Config.Target to 'ox_target' or
'qb-target'.Support
Need help? Reach out:- Discord: discord.gg/rarxnetwork
- Store: rarxnetwork.com

