Player Owned Vending

19.99 USD

Player Owned Vending Machines

Description

🥤 Elixir Player Owned Vending Machines | v2.0 | QBCore · QBox · ESX

Not another vending script. Players buy a machine, place it, stock it, hire staff, defend it from thieves — and actually have to make it profitable. AI customers keep it earning while they're offline.

▶️ Showcase  |  📖 Documentation  |  💬 Discord Support


⭐ What makes it different

  • 🤖 AI Customers — NPCs walk up, buy items and pay the owner. Machines earn passively, even with nobody around. The sale is processed server-side before the NPC is even rendered, so it can't be exploited.
  • 👔 AI Employees — Hire NPC staff who restock, clean and pay the power bill for a salary. They have moods: underpay them and they'll demand raises, slack off, skim cash from the machine, or quit on you.
  • 🕵️ Crime & Defence — Tamper to cut the power, then rob it. Requires police online. Owners repair with items — or buy the Security upgrade and the machine electrocutes thieves.
  • 📊 Real Profit Accounting — A chart that counts everything: upgrades, wages, supply, electricity, repairs and theft losses. Not just revenue — actual profit.
  • 💰 Economy Protection — Per-machine earnings caps, payout limits on theft, and dirty-money support. Vending stays a business, not a money printer.

🎮 Full features

Core

  • Place, name, stock, price and carry machines — with a cinematic move (walk over → pick up → carry → set down)
  • Cash or bank payment · buy by quantity · per-machine custom pricing
  • Public map blips with a per-machine hide/show toggle
  • Searchable item pickers everywhere — no typing spawn names

Economy

  • Tax · employee commission · happy-hour discounts
  • Dynamic supply & demand pricing (optional)
  • Per-cycle earnings cap to protect your server's economy
  • /vendingcollect — gather cash from every machine at once

Maintenance & upgrades

  • Machines get dirty — dirty machines pay more tax, drain power faster, and turn customers away
  • Cleaning is a scripted routine around the machine
  • 4 upgrade tracks: Capacity · Power Efficiency · Cleanliness Retention · Security

Crime

  • Tampering and robbery, optionally chained (cut the power first — a planned job, not a smash-and-grab)
  • Police requirement across all three frameworks · dispatch alerts (rate-limited)
  • Payout caps, cooldowns, and an in-progress lock so two players can't rob the same machine
  • Repair with items, via progress bar or minigame

Owner tools

  • Profit/loss analytics chart · receipts (on-screen + a readable item) · per-machine sales log
  • Transfer or sell machines to other players · recruit employees
  • Stock rules — whitelist/blacklist what can be sold, from config or live in-game
  • Leaderboard · low-stock alerts · Discord webhook logging
  • One tidy command: /vending opens a role-aware menu — owners, employees and admins each see only what applies to them

🧰 Compatibility

  • Frameworks: QBCore · QBox (qbx_core) · ESX — auto-detected, one build, no separate versions
  • Inventories: ox_inventory · qb-inventory · qs-inventory · codem · ESX inventories
  • Targets: ox_target · qb-target · qtarget — or keyless textui / 3dtext modes
  • Dispatch: ps-dispatch · cd_dispatch · qs-dispatch · core_dispatch · rcore_dispatch · linden_outlawalert

Dependencies

  • Required: ox_lib · oxmysql · a framework (QBCore / QBox / ESX) · an inventory
  • Optional: a target system (only for target mode) · a dispatch script

⚡ Performance

  • ~0.01ms idle. State is pushed on change instead of polled, NPCs are proximity-gated and capped, and the machine list is served from memory — no database hit per request.

🔓 Escrow — what you can edit

Escrow-protected, but everything you'd reasonably change is open:

  • config.lua — every setting, price and toggle
  • locales.lua — all wording / translations
  • bridge/server.lua + bridge/client.lua — framework & inventory adapters (add your own)
  • bridge/dispatch.lua — dispatch adapter (add your own)
  • server/logs.lua — Discord webhook embeds
  • client/open_client.lua + server/open_server.lua — progressbar / notify / drawtext wrappers

Only the core logic (client/prop.lua, server/main.lua) is encrypted. Even every animation is configurable — you never need protected code to configure, translate, re-skin, or add support for your framework, inventory or dispatch.

📄 View the full config before buying