Installer des scripts et des ressources sur votre serveur FiveM
Métiers, véhicules, interfaces, jobs… tout passe par des scripts. Voici comment en installer proprement sur votre serveur FiveM, sans casser votre server.cfg.
Trouver des scripts FiveM fiables
Installer un script FiveM permet d’ajouter un métier, un véhicule, un système d’inventaire, une interface ou une fonctionnalité complète à votre serveur RP. Pour éviter les erreurs et les failles de sécurité, commencez toujours par vérifier l’origine du fichier.
Privilégiez les sources suivantes :
- le forum officiel Cfx.re, dans les sections consacrées aux releases ;
- le Marketplace Cfx.re ;
- le dépôt GitHub officiel du développeur ;
- une boutique reconnue proposant une documentation et un support ;
- le site officiel du framework ou de la ressource.
Avant de télécharger, contrôlez :
- la date de la dernière mise à jour ;
- la compatibilité ESX, QBCore ou standalone ;
- la version minimale du framework ;
- les dépendances requises ;
- la présence d’une documentation ;
- les avis et problèmes signalés par les autres utilisateurs ;
- la licence d’utilisation.
Évitez les scripts présentés comme « leak », « cracked » ou « nulled ». En plus de violer les droits de leur créateur, ces fichiers peuvent contenir une porte dérobée, un collecteur de données, un mineur de cryptomonnaie ou du code permettant de prendre le contrôle du serveur.
Un script gratuit et open source n’est pas la même chose qu’un script payant piraté. Vérifiez toujours la licence et le dépôt d’origine.
Pour administrer le serveur, consulter la console et relancer les ressources, utilisez txAdmin. Le guide démarrer avec txAdmin présente ses principales fonctions.
Comprendre le dossier resources/
Toutes les ressources chargées par FXServer sont placées dans le dossier :
resources/
Une ressource peut être un script Lua, JavaScript ou C#, un mapping, un véhicule, une interface NUI, un système de voix ou un framework complet.
Les dossiers entourés de crochets servent à classer les ressources :
resources/
├── [cfx-default]/
├── [standalone]/
├── [esx]/
├── [qb]/
├── [vehicles]/
├── [maps]/
└── [local]/
Ces catégories sont facultatives, mais elles facilitent l’organisation :
| Catégorie | Contenu habituel |
|---|---|
[standalone] | Scripts indépendants d’un framework |
[esx] | Ressources prévues pour ESX |
[qb] | Ressources prévues pour QBCore |
[vehicles] | Véhicules ajoutés |
[maps] | Mappings et intérieurs |
[local] | Scripts propres à votre serveur |
Chaque ressource doit contenir un manifeste, généralement nommé :
fxmanifest.lua
Une structure correcte ressemble à ceci :
resources/
└── [local]/
└── mon_script/
├── fxmanifest.lua
├── config.lua
├── client/
├── server/
└── locales/
L’ancien fichier __resource.lua peut encore apparaître dans des scripts abandonnés, mais les ressources modernes utilisent fxmanifest.lua.
Le dossier qui contient directement
fxmanifest.luaest le dossier de la ressource. Une mauvaise imbrication empêche souvent FXServer de la détecter.
Installer un script FiveM dans resources/
Arrêtez le serveur avant de modifier ses fichiers. Avant toute intervention, des sauvegardes automatiques sont incluses pour vous aider à restaurer. Conservez aussi vos propres exports réguliers : vous restez responsable de vos données.
Téléchargez ensuite l’archive du script sur votre ordinateur. Elle est généralement fournie au format .zip, .rar ou .tar.gz.
Décompressez-la avant de l’envoyer dans resources/, sauf lorsque votre panel propose explicitement une fonction d’extraction après l’envoi.
Vérifiez immédiatement l’arborescence obtenue. Cette structure est correcte :
resources/[local]/mon_script/fxmanifest.lua
Cette structure contient un niveau inutile :
resources/[local]/mon_script/mon_script/fxmanifest.lua
Dans le second cas, déplacez le dossier intérieur afin que fxmanifest.lua se trouve directement dans le répertoire mon_script.
Utilisez un nom de dossier simple :
mon_script
Évitez les espaces, accents et noms ajoutés automatiquement par GitHub :
mon_script-main
mon script version finale
mon_script_v2 (copie)
Ne renommez toutefois pas systématiquement une ressource. Certains scripts vérifient leur nom, utilisent des exports associés à ce nom ou dépendent d’une configuration Asset Escrow précise. Consultez la documentation avant toute modification.
Ajouter la ressource au server.cfg avec ensure
Le simple fait de placer un script dans resources/ ne garantit pas son démarrage. Vous devez demander à FXServer de le charger depuis :
server.cfg
Ajoutez une ligne utilisant le nom exact du dossier :
ensure mon_script
Par exemple, pour cette ressource :
resources/[local]/garage_entreprise/
ajoutez :
ensure garage_entreprise
La commande ensure démarre la ressource si elle est arrêtée. Si elle est déjà active, elle la redémarre.
Respecter l’ordre de démarrage
Les connecteurs, bibliothèques et frameworks doivent démarrer avant les scripts qui en dépendent.
Exemple pour ESX :
# Base de données et bibliothèques
ensure oxmysql
ensure ox_lib
# Framework
ensure es_extended
# Scripts dépendants
ensure esx_addonaccount
ensure esx_society
ensure garage_entreprise
Exemple pour QBCore :
# Base de données et bibliothèques
ensure oxmysql
ensure ox_lib
# Framework
ensure qb-core
# Ressources complémentaires
ensure qb-target
ensure qb-menu
ensure garage_entreprise
Vous pouvez démarrer une catégorie complète :
ensure [local]
Cette méthode est pratique, mais des lignes individuelles donnent davantage de contrôle sur l’ordre. Pour les ressources essentielles et leurs dépendances, préférez donc des directives explicites.
Si
garage_entreprisedépend deox_lib,oxmysqlet du framework, ces trois composants doivent être chargés avant lui.
Après une modification importante, redémarrez complètement le serveur. Pendant un test, vous pouvez aussi utiliser la console txAdmin :
refresh
ensure mon_script
refresh demande à FXServer de relire les manifestes présents dans resources/. Un redémarrage complet reste préférable après l’installation d’une bibliothèque, d’un framework ou d’un fichier SQL.
Installer les dépendances du script
Une dépendance est une autre ressource indispensable au fonctionnement du script principal. Elle doit être installée et démarrée avant lui.
Les dépendances fréquentes comprennent :
oxmysql
ox_lib
es_extended
qb-core
qb-target
ox_target
qb-menu
PolyZone
Lisez le fichier README, la page de téléchargement et le contenu de fxmanifest.lua. Un manifeste peut déclarer une dépendance de cette manière :
dependency 'ox_lib'
ou :
dependencies {
'oxmysql',
'ox_lib'
}
Certains scripts fournissent également un fichier .sql à importer dans la base de données :
installation.sql
items.sql
vehicles.sql
job.sql
Importez-le dans la base utilisée par votre serveur avant le premier démarrage du script. Vérifiez toujours son contenu et effectuez un export de la base avant l’opération.
Contrôlez aussi le framework attendu. Un script ESX ne fonctionnera pas nativement sur QBCore. Une version adaptée ou un bridge peut être nécessaire.
Pour comparer les deux écosystèmes, consultez ESX ou QBCore : quel framework choisir ?.
Vérifier le fonctionnement du script
Redémarrez le serveur depuis txAdmin et gardez la console ouverte. Recherchez le nom de la ressource et vérifiez qu’elle est démarrée.
Un lancement correct peut afficher un message proche de :
Started resource mon_script
Les erreurs les plus fréquentes sont :
Couldn't start resource mon_script
Couldn't find dependency ox_lib
No such export in resource oxmysql
SCRIPT ERROR
Failed to load script
Après le démarrage, connectez-vous et testez concrètement la fonctionnalité :
- ouvrez le menu ajouté ;
- essayez la commande prévue ;
- vérifiez le métier ou l’objet installé ;
- contrôlez les permissions ;
- déconnectez-vous puis reconnectez-vous ;
- vérifiez que les données sont enregistrées.
Ne vous contentez pas de constater l’absence d’erreur rouge. Certaines ressources démarrent correctement mais échouent lorsqu’un joueur utilise une fonction précise.
Dépanner l’installation
Le script n’est pas détecté
Vérifiez la présence du manifeste :
resources/[local]/mon_script/fxmanifest.lua
Contrôlez aussi le nom utilisé dans server.cfg :
ensure mon_script
Une dépendance est manquante
Une erreur comme celle-ci indique que la bibliothèque demandée n’est pas disponible :
Couldn't find dependency ox_lib
Installez la dépendance, ajoutez son ensure et placez-la avant le script principal.
Le script utilise le mauvais framework
Un script ESX peut rechercher :
es_extended
alors qu’un script QBCore attend :
qb-core
Téléchargez la variante correspondant à votre framework. Ne tentez pas de convertir le script uniquement en renommant les fonctions.
Une erreur SQL apparaît
Vérifiez que le fichier .sql a été importé dans la bonne base et qu’oxmysql démarre avant le script :
ensure oxmysql
ensure mon_script
Deux scripts entrent en conflit
Deux inventaires, systèmes de ciblage, garages ou gestionnaires de personnages peuvent modifier les mêmes fonctions. Désactivez temporairement l’une des ressources, redémarrez, puis testez à nouveau.
Installez vos scripts un par un. Vous pourrez ainsi identifier immédiatement le dernier changement responsable d’une erreur.
En résumé
- Pour installer un script FiveM, téléchargez-le depuis une source fiable et respectez sa licence.
- Évitez les scripts leakés ou crackés, qui présentent des risques juridiques et de sécurité.
- Décompressez l’archive et placez la ressource dans
resources/. - Vérifiez que
fxmanifest.luase trouve directement dans le dossier de la ressource. - Ajoutez
ensure nom_du_scriptdansserver.cfg. - Démarrez oxmysql, ox_lib et le framework avant les scripts dépendants.
- Vérifiez la compatibilité ESX, QBCore ou standalone.
- Installez toutes les dépendances et importez les fichiers SQL nécessaires.
- Redémarrez le serveur et lisez la première erreur affichée dans la console.
- Testez la ressource en jeu et contrôlez la persistance des données.
- Ajoutez les scripts un par un pour faciliter le dépannage.
- Pour installer un script FiveM depuis un panel de gestion avec stockage NVMe, Anti-DDoS L3/L4/L7 inclus et support francophone, consultez l’offre serveur FiveM TalCloud.