How to install FiveM scripts and resources

Everything your FiveM server does beyond the base game comes from resources: scripts that add police cars, bank robberies, fuel stations, garages, clothing shops and everything else a roleplay server needs. Installing them follows a predictable pattern, but there are pitfalls that can break your server if you are not aware of them. This guide walks you through the full process.

Where to find scripts

Three main sources supply almost every resource you will ever need:

  • Cfx.re forums: free community releases. Browse by category or search for a specific feature.
  • Tebex stores: paid premium scripts from developers like Renewed Scripts, the ox team and QBCore contributors. Quality varies, so read reviews before buying.
  • GitHub: open-source repositories. Search for "fivem qbcore" or "fivem esx" followed by the feature you need.

Always confirm that the script matches your framework (ESX, QBCore, Qbox or standalone) before downloading. Running an ESX script on a QBCore server produces confusing errors that look unrelated to the actual problem.

Installation in five steps

  1. Download: grab the script as a zip file or clone the Git repository.
  2. Extract and rename: unzip the file and rename the folder if necessary. The folder name becomes the resource name that FiveM uses internally. Use only letters, numbers and hyphens. Spaces or dots in the name will prevent the resource from loading.
  3. Upload: upload the folder to resources/ on your server via SFTP or the file manager in the panel. Most servers organise scripts into subfolders: resources/[esx]/, resources/[qb]/, resources/[standalone]/.
  4. Configure: open the config.lua or shared/config.lua file inside the script folder and adjust the settings. Language, prices, locations and permission levels are typically set here.
  5. Add to server.cfg: add ensure scriptname to your server.cfg. Order matters: dependencies must be listed before the scripts that need them.

Understanding dependencies

Most scripts rely on other resources to function. The most common dependencies are:

  • oxmysql or mysql-async: the database connector that lets scripts read and write data.
  • ox_lib: a utility library used by many modern scripts for notifications, menus and input dialogs.
  • ox_inventory or qb-inventory: the inventory system tied to your framework.
  • ox_target or qb-target: the targeting system that places 3D interaction points on objects and NPCs.

You can find the required dependencies in the fxmanifest.lua file of every script. If a dependency is missing, the console prints an error at startup and the resource will not start.

Getting the load order right

The ensure order in server.cfg determines which resources load first. A reliable structure looks like this:

ensure oxmysql
ensure ox_lib
ensure es_extended    # or qb-core / qbx_core
ensure ox_inventory
ensure ox_target
ensure esx_policejob  # your scripts

The rule of thumb: database first, then libraries, then the framework, then every script that builds on top of it.

Importing SQL files

Scripts that store data (garages, property, jobs) need database tables. The SQL file is usually in the root folder of the script. Import it through phpMyAdmin, which you can open from the panel next to your database. You only need to do this once per script; the tables persist after restarts.

Common mistakes

  • Folder name contains spaces or dots: FiveM silently refuses to load the resource. Stick to alphanumeric names with hyphens.
  • Duplicate resource name: two folders with the same name. FiveM loads the first one and ignores the second without any warning.
  • Wrong framework: an ESX script on a QBCore server, or the other way around. The errors rarely mention the framework mismatch directly.
  • Missing config file: some scripts ship a config.lua.example that you need to rename to config.lua before starting.
  • Forgetting the SQL import: the script starts but throws database errors whenever a player interacts with it.

Hot-reloading scripts

You do not always need a full restart. Type ensure scriptname in the server console or in txAdmin to reload a single resource on the fly. Be aware that not every script supports hot-reloading cleanly. If something behaves oddly after a reload, restart the entire server to be safe.

How many scripts can my server handle?

That depends on script quality and server memory. A 4 GB server comfortably runs 50 to 80 lightweight scripts. Heavy scripts with large map interiors or many streamed assets consume significantly more. Monitor server FPS in txAdmin: anything below 30 means you need to optimise or upgrade.

Are paid scripts better than free ones?

Not necessarily. Some of the best resources in the ecosystem are free and open-source (ox_inventory, qb-target, Renewed scripts). At the same time, some paid scripts are poorly optimised. Always check forum reviews and community feedback before spending money.

Can I mix ESX and QBCore scripts?

No. The two frameworks use different player objects, different events and different database structures. A script written for ESX will not function on QBCore, and vice versa. Standalone scripts work on both, because they do not depend on either framework.

Every HostValues FiveM plan includes a database and txAdmin, so you can start installing scripts right away.


Still stuck? Open a support ticket and our team will help you out.

Back to the blog