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
- Download: grab the script as a zip file or clone the Git repository.
- 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.
- 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]/. - Configure: open the
config.luaorshared/config.luafile inside the script folder and adjust the settings. Language, prices, locations and permission levels are typically set here. - Add to server.cfg: add
ensure scriptnameto yourserver.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.examplethat you need to rename toconfig.luabefore 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.