Hey ![]()
I’ve been working on this one for a while and I think it’s finally ready to share. It’s an Ammunation script, but I
tried to build it the way I always wished these scripts worked — less “press E to buy a gun,” more like an actual gun
store with real procedures behind it.
What it actually does
When a player walks into the store, they don’t just open a menu and walk out armed. They put in an order. The store
manager sees it and either approves or rejects it. If it’s a licensed weapon, LSPD gets pinged and has to verify the
license before anything moves. Only after that can the player come back and collect.
It sounds like a lot of steps, but in practice it makes weapon purchases feel like they mean something. And it gives
your PD something to actually do on quiet nights.
A few other things I built in:
- Stores can be owned by players. You hand someone the keys with /ammuadmin and they run it — stock, sales history,
the whole thing. - Recoil that scales with experience. New players shoot like they’ve never held a gun. Veterans control their weapons
properly. XP is per weapon group, so being good with a pistol doesn’t magically make you good with a sniper. - Shooting ranges that aren’t just decoration. Two locations included (Legion Square, Vespucci), pay per session, and
the price scales by weapon type. You can add more ranges in the config — props or NPC instructors, your call. - Discord webhooks for everything important, split into separate channels so your admin chat doesn’t get drowned out
by range sessions.
The boring but important stuff
- Works on QBCore and ESX — auto-detects, no config switch needed
- Works with qb-target and ox_target — same deal
- Plays nice with ox_inventory, qs-inventory, codem-inventory, qb-inventory, or the framework defaults
- Notification systems: native QB/ESX, okokNotify, mythic_notify, ox_lib
- Rate limiting and anti-exploit protection are already in there — I’m not going to leave you to figure that out
If you use something I haven’t listed, Config.Functions exposes the integration hooks. Swap one function, you’re done.
Honest notes
- The config file has comments explaining what every setting does. I wrote it the way I wish other devs wrote configs.
- SQL installer is safe to re-run, so if you mess up you can just run it again.
- I’m around here if something breaks or you need help wiring it into your server.
Video: https://www.youtube.com/watch?v=Z4NmOYeuqQQ&t=48s
Tebex: https://sas-scripts.tebex.io/category/2562205
That’s it. If you’ve got questions before you buy, just DM me — I’d rather you ask than end up with something that
doesn’t fit your server.
| Code is accessible | no |
| Subscription-based | No |
| Lines (approximately) | +2000 |
| Requirements | no |
| Support | Yes |







