About this script
Rentable storages that run themselves.
Players rent a storage at the harbor or in the city and pay a weekly rent. The server charges it automatically, even while the tenant is offline. If the money is missing, a grace period starts instead of an instant loss. Tenants share their storage with friends, and factions rent their own storage through the faction account.
Goliath Storage gives your players a place to keep what they earned and gives your economy a steady money sink that feels fair.
How it works
1. Walk up to a storage and press E. Size, slots and rent are right there.
2. Rent it with one confirmed click. The first rent is paid right away.
3. Open it whenever you want. The rent is charged every week on its own.
4. Give friends access, or cancel and clear it out in time.
Features
• Four sizes: Small, medium, large and faction storages with capacity in kg, slots and rent, all configurable. 44 locations at the harbor and in the city are ready to use.
• Weekly rent, also offline: The first rent is paid when renting, then at the set interval from bank or cash. If the tenant is offline, the rent is charged straight in the database.
• No polling: One timer per storage fires exactly at the next event: due date, end of the grace period, end of the cancellation or inactivity. Events from downtime run right on start, and a long downtime is only charged once.
• Grace period: If the rent cannot be charged, a grace period starts (default 48 hours). The tenant can still open and clear the storage. At the end it is checked exactly once: money there, the rent goes on. Otherwise the storage is cleared and free again.
• Cancellation with time to clear out: After cancelling, the storage stays with the tenant for a while (default 24 hours) and no more rent is charged. Then whatever is left is taken.
• Inactivity: A storage nobody opens for a long time (default 30 days) is cleared and freed. Can be turned off.
• Shared access: Tenants give up to 5 players access by player ID. They can open the storage, but never cancel it or share it further. Access can be removed at any time and ends when the rental ends.
• Faction storages: Factions rent their own storage, by job or gang (gang on QBCore and Qbox). Separate ranks to rent and to open. The rent comes from the faction account or from the player who rents.
• Notices: Players are told about every payment, open rent and cancellation, and get a reminder on login while rent is open.
• Admin command: /storage list, info and release for admins and the server console.
• Discord log: Rentals, payments, open rent, cancellations, releases, shared access and admin actions, each switchable.
• Own interface: A custom NUI in the Goliath design with usage, contract, time until the next payment, shared access and cancelling with confirmation. English and German included, every text editable.
Security
• The NUI only sends what the player wants to do. Prices, limits and rights are decided by the server.
• The server checks distance, rights, limits and money for every action. Double requests are locked.
• Every rental gets its own secret stash key. A new tenant always starts with an empty storage, and storages cannot be guessed.
• With ox_inventory a hook blocks anyone without access, even direct calls. With qb, ps, lj and qs inventory the storage gets a new key when access is removed.
• Renting only charges once the rental is saved. Two players can never rent the same storage at once.
• Sharing only works while the person stands with the tenant at the storage.
Compatibility
• Frameworks: ESX Legacy, QBCore, Qbox, custom bridge
• Inventories: ox_inventory, qb-inventory, ps-inventory, lj-inventory, qs-inventory, codem-inventory, tgiann-inventory, origen_inventory, core_inventory, ak47_inventory, jaksam_inventory, chezza_inventory, custom bridge
• Faction accounts: esx_addonaccount, Renewed-Banking, qb-banking, qb-management
• Interaction: ox_target, qb-target or TextUI with a key
• Requires: ox_lib, oxmysql and OneSync
• Auto setup: framework, inventory and interaction are detected, the tables are created on first start
Configuration
• Sizes with capacity, slots and rent
• Billing interval, grace period, cancellation time and inactivity
• Account (bank or cash), limits per player, per faction and shared players
• Locations with label, size, position and optional ped model
• Factions with label, rank to rent and rank to open, payment from the faction or the player
• Ped, blip, interaction, admin command and permissions
For developers
• Hooks: CanRent, CanOpen, OnRent, OnPayment, OnCancel, OnRelease and your own logging in the editable files.
• Exports: IsOpen (client) and GetRental, HasAccess, GetPlayerStorages, ReleaseStorage (server).
Installation
1. Put goliath_storage into your resources folder.
2. Add "ensure goliath_storage" after your framework, inventory, oxmysql and ox_lib.
3. Start the server. The tables are created on their own.
4. Adjust sizes, prices and locations in config.lua.
Escrow edition
Protected core through Tebex escrow. Open to edit: config.lua, locales, bridges for frameworks, inventories, targets and faction accounts, client and server editable.lua, sv_config.lua (Discord webhook, server only) and the SQL file. An Open Source edition with the complete source code is available in the Open category.
Support
Questions? The Goliath Scripts support on Discord helps you out. Join the Discord






