
GZ Beach Detector
A complete treasure hunting experience for the beaches of Los Santos.
I built this script because I wanted prospecting to feel like an actual gameplay loop, not a “press E on a glowing thing” mini-game.
So I started from scratch: real metal detector prop in hand, directional sonar that gets louder as you close in, cinematic dig animations with skill check, physical chests that pop out of the sand with slow-mo on legendary finds.
Then I added a full progression system on top — 10 levels, 7 trophies, 9 daily quests rotating every day at 4 AM.
Then treasure maps as rare drops that send you off-beach to hidden spots across the map.
Then a weekly leaderboard.
Then an NPC merchant at Del Perro Pier who buys, sells and upgrades detectors.
Then a multi-framework bridge so it works on QBCore, QBox, ESX Legacy or standalone.
It’s been about 6 months of development and rewrites. I think it’s ready.
See it in action






What you get
Core gameplay loop
- 3 detector tiers with different stats (range, battery, signal quality)
- 4-phase cinematic dig: sweep → dig → kneeling skill check → reward chest
- Directional sonar HUD with intensity beeps (faint → strong → locked)
- Physical chests that spawn from the sand based on rarity, with VFX and camera shake on legendaries
Full progression system
- 10 XP levels with unlockable zones, battery bonuses, rare-find bonuses
- 7 trophies with cash + XP rewards (and you can add your own)
- 9 daily quests rotating every day (and you can add your own types)
- Weekly leaderboard with gold/silver/bronze medals and automatic reset
- All progress persisted in MySQL, survives restarts
Treasure maps
- Rare drop chance on regular digs
- GPS auto-waypoint + dedicated “ancient map unrolled” reveal banner
- Hot/cold gauge with 5 intensity levels as you approach
- 10 hidden spots across the map, deliberately placed far from beach zones to avoid overlap
NPC Merchant
- Located at Del Perro Pier (configurable)
- Buys items at configurable prices
- Sells consumables, batteries, treasure maps
- Sells detector upgrades
Truly extensible
Not just configurable — extensible. Three hooks let you plug your own server-side logic into the gameplay loop:
- Custom trophy conditions — write a function, reference it in a trophy. Example: “100 digs at Vespucci specifically”.
- Custom quest types — write a tracker, reference it in a quest. Example: “Find 5 items between 8 PM and midnight”.
- Custom zone access rules — restrict zones by job, job grade, gang, or your own check function. Server-side enforced, anti-cheat by design.
Each hook ships with documented example code commented in config.lua. Copy, adapt, ship.
Internationalization
- EN + FR included
- Easy to add other languages (one file per locale, around 130 keys)
Performance & quality
- Idle below 0.01ms - Working about 0.10ms
- Server-authoritative for all rewards (no client-side cash injection)
- Full audit log of digs, level-ups, trophies — for debugging or transparency
Frameworks supported
| Framework | Status |
|---|---|
| QBCore | |
| QBox | |
| ESX Legacy | |
| Standalone |
The script auto-detects your framework via the bridge system. No config needed.
Dependencies
Required:
Recommended:
- ox_inventory (also works with qb-inventory and esx_inventory)
- ox_target (for merchant + chest interactions)
- gz_ui (for the premium themed menus — falls back to ox_lib dialogs if absent)
What this version gives you
| Escrow | Open Source | |
|---|---|---|
| Use on your server | ||
Edit config.lua |
||
| Edit locales | ||
| Edit the HUD theme | ||
| Edit core gameplay logic | ||
| Read the full source code | ||
| Lifetime updates | ||
| Discord support |
If you just want to deploy it and configure beaches/loot/economy → Escrow is enough.
If you want to audit the code, integrate it deeply, or modify the core gameplay → Open Source.
Support
- Discord: join the GZ Scripts community
- Bug reports: open a ticket on Discord
- Suggestions: suggestions channel on Discord
- Community forum: customers share their custom configurations and snippets
I read every message. Response times can vary because I’m also a full-time dev with other projects, but I do read everything.
Purchase
A word from me
I’m not a big studio. I’m one dev who builds scripts on the side while juggling a day job and two SaaS products. Every script I release is something I actually wanted for my own server and decided to share. If you buy it and you have feedback (good or bad), tell me — that’s how the next versions get better.
Thanks for reading this far.
— GrapsZ
Changelog
v3.5.2 — Chest model fallback chain, no more “model failed to load” errors
v3.5.1 — Critical fix: trophies persistence (Lua scoping bug in JSON deserialization)
v3.5.0 — Extensibility hooks (custom trophies, quests, zone access rules)
v3.4.0 — Zone cache validation, resource-stop flush
v3.3.0 — “NO SIGNAL” out-of-zone realistic detector behavior
v3.2.x — Treasure map premium UX (banner, hot/cold gauge, GPS)
v3.1.x — Queue notifications + burst mode
v3.0.0 — Initial public release
| Code is accessible | Yes (Open Source)/No (Escrow) |
| Subscription-based | No |
| Lines (approximately) | ≈ 11000 lines |
| Requirements | Cf in ## Dependencies section |
| Support | Yes |