FivePD : transformer un serveur FiveM en simulation police RP
FivePD est une ressource pour serveur FiveM qui transforme GTA V multijoueur en simulation de police en monde ouvert, comparable a LSPDFR mais en multijoueur. Les joueurs incarnent des agents de police ou d'urgence, patrouillent en ville, recoivent des appels d'intervention (callouts) generes automatiquement et redigent des rapports dans un terminal de donnees embarque (MDT). FivePD gere ses propres departements de police, un systeme de grades, des citations, des amendes et une base de donnees de PNJ persistante.
Contrairement aux frameworks de roleplay generalistes comme ESX Legacy ou QBCore, FivePD cible exclusivement le gameplay policier et les services d'urgence. La ressource genere des scenarios d'intervention (braquages, accidents, differends entre PNJ, poursuites) sans qu'un administrateur doive les scripter manuellement. Un serveur FivePD peut fonctionner seul ou aux cotes d'un framework RP pour combiner economie et simulation police.
Ce tutoriel s'adresse aux administrateurs de serveur FiveM qui veulent installer et configurer FivePD sur un serveur existant ou sur une installation fraiche. Vous y trouverez les prerequis, l'installation pas a pas, la configuration de la base de donnees MySQL ou SQLite, l'ajout de callouts personnalises, les reglages de performance et la strategie de sauvegarde. Si vous n'avez pas encore de serveur FiveM operationnel, commencez par la configuration initiale de FiveM.
Prerequis pour installer FivePD
Avant d'installer FivePD, verifiez que votre environnement serveur remplit ces conditions :
- Un serveur FiveM fonctionnel avec FXServer et txAdmin installes et configures. Le serveur doit demarrer sans erreur et accepter les connexions de joueurs. Si ce n'est pas encore le cas, suivez notre guide de configuration txAdmin. txAdmin sert de panneau d'administration pour gerer les ressources, consulter les logs et redemarrer le serveur ;
- Une cle de licence FiveM valide, obtenue depuis le portail Cfx.re ;
- Des artifacts FXServer a jour. FivePD utilise des composants .NET qui necessitent des artifacts recents. Consultez notre guide sur les artifacts et le gamebuild FiveM pour choisir la bonne version et eviter les erreurs de chargement ;
- Un acces en lecture et ecriture au repertoire
resources/du serveur (via SFTP, un gestionnaire de fichiers dans le panneau d'administration, ou un acces shell direct) ; - Optionnel : un serveur MySQL ou MariaDB si vous souhaitez utiliser une base de donnees relationnelle. FivePD fonctionne aussi avec SQLite par defaut. Pour configurer MySQL, suivez notre guide MySQL pour serveur FiveM.
Choisir l'hebergement adapte a FivePD
FivePD genere des PNJ, des vehicules et des evenements en temps reel pour chaque joueur connecte. Le choix de l'hebergement determine directement la fluidite des patrouilles et le nombre de callouts que le serveur peut gerer sans ralentissement.
| Critere | Serveur de jeu heberge | VPS | Serveur dedie |
|---|---|---|---|
| Acces admin | Panneau de gestion fourni par l'hebergeur | Acces root complet (shell, sudo) | Acces root complet (shell, sudo) |
| Performance CPU | Partagee entre clients | vCPU dedies, variable selon l'offre | CPU physique complet |
| Stockage | SSD, espace souvent limite | SSD ou NVMe, extensible | NVMe, grande capacite |
| Base de donnees | MySQL fourni par l'hebergeur | MySQL/MariaDB a installer soi-meme | MySQL/MariaDB a installer soi-meme |
| Sauvegardes | Automatiques selon l'offre | A configurer manuellement | A configurer manuellement |
| Ideal pour | Serveur de test, petites communautes | Serveur FivePD de 10 a 32 joueurs | Serveur RP charge, 32+ joueurs |
Pour un serveur FivePD de production avec 10 joueurs ou plus, un hebergement avec processeur cadence a 3,5 GHz ou plus par coeur et au minimum 8 Go de RAM donne de bons resultats. FiveM est principalement mono-thread : la frequence CPU par coeur compte plus que le nombre de coeurs. Prevoyez un disque SSD pour que la base de donnees FivePD reponde rapidement. Pour dimensionner votre serveur, consultez les exigences d'hebergement d'un serveur FiveM et comment choisir un hebergeur pour FiveM.
Telecharger et installer le package FivePD
FivePD est distribue sous forme d'archive contenant la ressource complete. Telechargez la derniere version disponible depuis une source fiable et verifiez sa compatibilite avec vos artifacts FXServer. Apres extraction, le package fivepd contient :
fxmanifest.lua: le manifeste de la ressource FiveM (ne pas modifier) ;config.json: le fichier de configuration principal de FivePD ;config/: un sous-repertoire avec les fichiers de configuration secondaires (callouts.json, vehicles.json, menu.json, coordinates.json) ;callouts/: le repertoire des fichiers de callouts (.net.dll) ;fivepd.sql: le schema de base de donnees pour MySQL (uniquement si vous utilisez MySQL comme backend).
Transferez le dossier fivepd complet dans le repertoire resources/ de votre serveur FiveM via SFTP ou le gestionnaire de fichiers de votre panneau d'administration. La structure finale doit ressembler a ceci :
resources/
fivepd/
fxmanifest.lua
config.json
config/
callouts.json
vehicles.json
menu.json
coordinates.json
callouts/
(fichiers .net.dll)Conservez la structure des dossiers telle quelle. Ne renommez pas le dossier racine et ne deplacez pas les fichiers internes : le manifeste FiveM s'attend a cette arborescence exacte.
Configurer le server.cfg pour FivePD
Ouvrez le fichier server.cfg de votre serveur FiveM depuis le panneau txAdmin ou via un editeur de texte en acces shell. Ajoutez la ligne de demarrage de FivePD. Elle doit figurer apres les autres ressources de base (mapmanager, chat, sessionmanager) et apres votre framework RP si vous en utilisez un :
ensure fivepdLa commande ensure demarre la ressource si elle est arretee ou la redemarre si elle est deja active. Ce n'est pas un mecanisme de surveillance automatique : si la ressource plante, il faut la relancer manuellement depuis la console FXServer ou le panneau txAdmin.
Si vous utilisez MySQL comme base de donnees, ajoutez la chaine de connexion (connection string) dans votre server.cfg avant la ligne ensure fivepd :
set mysql_connection_string "mysql://utilisateur:motdepasse@127.0.0.1:3306/fivepd_db"Remplacez les valeurs par vos identifiants reels. Si votre base de donnees MySQL tourne sur un serveur distant, remplacez 127.0.0.1 par son adresse IP. Assurez-vous que le pare-feu autorise les connexions sur le port MySQL (3306 par defaut). Pour un guide complet sur la liaison MySQL, consultez notre article lier une base de donnees MySQL a un serveur FiveM.
Configurer le config.json de FivePD
Le fichier fivepd/config.json controle le comportement general de la ressource FivePD. Editez-le avec un editeur de texte (pas en le remplacant par un fichier vierge). Conservez les parametres existants et modifiez uniquement ce dont vous avez besoin. Validez la syntaxe JSON avant de sauvegarder pour eviter une erreur de chargement au demarrage.
SQLite ou MySQL : choisir la base de donnees
Le parametre db determine le backend de stockage des donnees FivePD (rapports de police, PNJ, vehicules, grades). Le choix impacte les performances et la facilite d'administration et de sauvegarde :
| Critere | SQLite | MySQL / MariaDB |
|---|---|---|
| Installation | Aucune, fichier fivepd.db cree automatiquement | Necessite un serveur MySQL ou MariaDB installe et configure |
| Performances sous charge | Suffisant pour 1 a 10 joueurs simultanes | Recommande des 10 joueurs simultanes |
| Sauvegardes (backup) | Copier le fichier fivepd.db (serveur arrete) | Commande mysqldump (serveur en marche) |
| Acces concurrent | Verrouillage fichier, un seul ecrivain a la fois | Connexions simultanees, verrouillage par ligne |
| Administration | Aucun outil supplementaire requis | phpMyAdmin, HeidiSQL ou en ligne de commande |
Pour un serveur de test ou une petite communaute, SQLite suffit et evite toute configuration supplementaire. Pour un serveur FivePD en production avec des joueurs reguliers, MySQL ou MariaDB offrent de meilleures performances sous charge et permettent d'administrer et de sauvegarder la base de donnees sans arreter le serveur.
Si vous choisissez MySQL, renseignez les parametres de connexion dans l'objet database du fichier config.json :
{
"db": "mysql",
"database": {
"username": "fivepd_user",
"password": "votre_mot_de_passe",
"host": "127.0.0.1",
"port": 3306,
"database": "fivepd_db"
}
}Creez un utilisateur MySQL dedie avec des droits limites a la base FivePD. N'utilisez jamais le compte root pour une ressource FiveM : un script compromis aurait acces a toutes vos bases de donnees. Pour sauvegarder et restaurer cette base, suivez notre guide sauvegarder et restaurer une base MySQL sur serveur FiveM.
Importer le schema SQL initial
Si vous utilisez MySQL, importez le fichier fivepd.sql fourni dans l'archive pour creer les tables necessaires. Lisez le contenu du fichier SQL avant de l'executer : certains schemas incluent des instructions DROP TABLE qui supprimeraient des tables existantes portant le meme nom.
mysql -u fivepd_user -p fivepd_db < resources/fivepd/fivepd.sqlAutres parametres du config.json
| Parametre | Type | Description |
|---|---|---|
stationBlips | boolean | Afficher les marqueurs de commissariat sur la carte |
dutyNotification | boolean | Notifier quand un joueur prend ou quitte son service de police |
allowlist | boolean | Restreindre l'acces FivePD aux joueurs autorises dans la liste |
maxReportLength | number | Longueur maximale des rapports de police rediges dans le MDT |
maxFine | number | Montant maximal d'une amende delivree par un agent |
maxChargeCount | number | Nombre maximal d'accusations par arrestation |
Ajouter des callouts a FivePD
Les callouts sont les interventions de police generees automatiquement par FivePD : braquages, accidents de la route, poursuites, differends entre PNJ, controles routiers, signalements de vehicules voles. FivePD inclut des callouts de base, mais la communaute propose des packs supplementaires qui enrichissent le gameplay policier avec des scenarios varies.
Pour installer un pack de callouts supplementaires :
- Telechargez le fichier
.net.dlldu callout depuis une source fiable ; - Placez-le dans le repertoire
resources/fivepd/callouts/de votre serveur ; - Ne creez pas de
fxmanifest.luapour le callout : les fichiers.net.dlldans le dossiercallouts/sont charges automatiquement par la ressource FivePD principale au demarrage ; - Redemarrez la ressource avec la commande
restart fivepddans la console du serveur FXServer ou depuis le panneau txAdmin.
Ajoutez les callouts un par un et verifiez que le serveur demarre sans erreur apres chaque ajout. Un callout incompatible avec vos artifacts FXServer peut empecher le chargement de FivePD et bloquer toutes les interventions de police.
Regler les parametres des callouts
Le fichier fivepd/config/callouts.json controle la frequence et le comportement des interventions de police generees par le dispatch FivePD :
{
"minCallTimeout": 30,
"maxCallTimeout": 180,
"expirationTime": 30,
"probability": 65,
"enableAmbientEvents": true
}| Parametre | Description | Valeur par defaut |
|---|---|---|
minCallTimeout | Delai minimum (secondes) entre deux callouts de police | 30 |
maxCallTimeout | Delai maximum (secondes) entre deux callouts | 180 |
expirationTime | Duree (secondes) avant qu'un callout non accepte par un agent expire | 30 |
probability | Probabilite (%) qu'un callout soit genere a chaque cycle du dispatch | 65 |
enableAmbientEvents | Activer les evenements ambiants spontanes (bagarres, vols de vehicules) | true |
Ajustez ces valeurs selon votre nombre de joueurs en patrouille. Pour un serveur FivePD avec peu de joueurs, augmentez probability (80-90) et reduisez minCallTimeout (15-20) pour maintenir l'action et eviter les temps morts entre les interventions. Sur un serveur charge avec 20 joueurs ou plus, espacez les callouts (probability a 40-50, minCallTimeout a 60) pour eviter la surcharge CPU et le spawn excessif de PNJ.
Configurer le pare-feu pour un serveur FivePD
FivePD n'ouvre aucun port supplementaire au-dela de ceux utilises par FiveM. Verifiez que votre pare-feu (firewall) autorise les ports suivants :
| Port | Protocole | Usage |
|---|---|---|
| 30120 | TCP + UDP | Port principal du serveur FiveM (connexion des joueurs) |
| 40120 | TCP | Interface web txAdmin (panneau d'administration du serveur) |
| 3306 | TCP | MySQL (uniquement si la base de donnees est sur un serveur distant) |
Le port MySQL (3306) ne doit jamais etre expose sur Internet. Si MySQL tourne sur le meme serveur que FiveM, laissez-le ecouter uniquement sur 127.0.0.1. Si votre base de donnees est sur un serveur dedie separe, autorisez uniquement l'adresse IP de votre serveur FiveM dans les regles du pare-feu. Pour la configuration detaillee de la securite reseau, consultez notre guide securiser un serveur FiveM (anti-cheat et anti-DDoS).
Optimiser les performances du serveur FivePD
FivePD ajoute des PNJ, des vehicules de patrouille et des evenements en temps reel a chaque cycle. Sur un serveur hebergeant de nombreux joueurs en service simultane, cela peut impacter les performances. Les points a surveiller :
- Processeur (CPU) : FiveM est principalement mono-thread. Un processeur avec une frequence elevee par coeur (3,5 GHz ou plus) est plus important que le nombre de coeurs. Surveillez le tick rate dans le panneau txAdmin. Si le tick rate descend sous 30, le serveur lag pour les joueurs en patrouille ;
- Memoire (RAM) : prevoyez au minimum 4 Go pour FXServer seul, plus 1 a 2 Go supplementaires si MySQL tourne localement. Pour un serveur FivePD de 20 joueurs ou plus avec de nombreux callouts actifs, 8 Go de RAM sont un minimum ;
- Disque SSD : un SSD (ou NVMe) reduit les temps d'acces a la base de donnees FivePD et aux fichiers de configuration. Un disque dur classique peut provoquer des lenteurs dans le MDT quand plusieurs agents redigent des rapports de police simultanement ;
- Callouts simultanes : reduisez
probabilityet augmentezexpirationTimesi le nombre de callouts actifs provoque des ralentissements ou un spawn excessif de PNJ ; - Base de donnees : MySQL est plus performant que SQLite sous charge avec plusieurs joueurs. Si les rapports de police ou le MDT ralentissent, migrez vers MySQL ;
- Ressources concurrentes : chaque script FiveM consomme du temps CPU. Desactivez les ressources inutiles et auditez les scripts tiers. Consultez notre guide optimiser les performances d'un serveur FiveM pour un audit complet des ressources.
Sauvegarder les donnees de FivePD
Les donnees de FivePD (rapports de police, PNJ, vehicules, grades des agents, historique des callouts) sont stockees dans la base de donnees. Un backup regulier evite de tout perdre en cas de crash serveur, de migration ou de mise a jour qui tourne mal.
- SQLite : copiez le fichier
fivepd.dbdans un repertoire de backup. Arretez le serveur FiveM avant la copie pour eviter un fichier corrompu. Planifiez cette copie avec une tache automatique (cron sur Linux, planificateur de taches sur Windows) ; - MySQL : utilisez
mysqldumppour exporter les donnees MySQL sans arreter le serveur FiveM. Stockez le fichier SQL de sauvegarde sur un support distant (NAS, stockage SFTP, disque externe).
mysqldump -u fivepd_user -p fivepd_db > backup_fivepd_$(date +%Y%m%d).sqlPour mettre en place des sauvegardes automatiques, consultez notre article sauvegardes automatiques d'un serveur FiveM.
Premier lancement et verification
Demarrez votre serveur FiveM depuis le panneau txAdmin ou en ligne de commande et surveillez la console FXServer. Si FivePD se charge correctement, un message de confirmation apparait dans les logs. En cas d'erreur au demarrage :
- Verifiez que
fxmanifest.luaest present a la racine du dossierfivepd/; - Controllez que
ensure fivepdfigure bien dans leserver.cfg; - Consultez les logs de la console FXServer pour identifier l'erreur exacte ;
- Ouvrez la console F8 en jeu pour les erreurs cote client ;
- Verifiez les identifiants de la base de donnees MySQL dans
config.jsonsi vous utilisez MySQL ; - Assurez-vous que vos artifacts FXServer sont compatibles avec la version de FivePD.
Connectez-vous au serveur, ouvrez le menu FivePD avec la touche F11 (par defaut, modifiable dans config/menu.json) et selectionnez un departement de police. Le menu ne s'ouvre que si votre personnage est affecte a un departement. Effectuez une patrouille, acceptez un callout et redigez un rapport de police dans le MDT pour valider le fonctionnement complet.
Un test en solo ne suffit pas. Testez avec au moins deux joueurs la reconnexion au serveur, la persistance des donnees dans la base (rapports sauvegardes, grade conserve) et le fonctionnement du MDT en conditions reelles avant d'ouvrir le serveur FivePD au public.
Resolution de problemes courants
Les erreurs les plus frequentes lors de l'installation et de l'administration de FivePD sur un serveur FiveM :
| Symptome | Verification |
|---|---|
| FivePD ne se charge pas | Verifiez le nom du dossier (fivepd), la presence du fxmanifest.lua et la ligne ensure fivepd dans le server.cfg |
| Menu F11 inactif en jeu | Votre personnage n'est pas affecte a un departement de police. Verifiez dans la console FXServer que la ressource est demarree sans erreur |
| Erreur de connexion a la base de donnees MySQL | Controllez les identifiants dans config.json, verifiez que MySQL est demarre et que le pare-feu autorise le port 3306 |
| Les callouts ne se declenchent pas | Verifiez callouts.json (probability > 0), assurez-vous d'etre en service (duty) et lisez les logs pour les erreurs de callouts |
| Donnees perdues apres redemarrage | Verifiez le parametre "db" dans config.json et l'integrite du fichier de base de donnees SQLite ou de la connexion MySQL |
| Performances degradees | Auditez le nombre de callouts actifs, reduisez probability, desactivez les ressources FiveM inutiles, surveillez le tick rate dans txAdmin |
| Un callout bloque le demarrage de FivePD | Retirez le dernier fichier .net.dll ajoute dans callouts/ et redemarrez. Ajoutez les callouts un par un pour identifier le package incompatible |
Aller plus loin avec votre serveur FivePD
Une fois FivePD installe et fonctionnel sur votre serveur FiveM, vous pouvez enrichir votre serveur police RP :
- Ajouter un framework RP (installer ESX Legacy ou comparer ESX et QBCore) pour combiner FivePD avec une economie et des metiers de roleplay ;
- Installer des scripts complementaires : vehicules de police personnalises, uniformes, sirenes, mapping de commissariats et postes de police (ou trouver des scripts FiveM fiables) ;
- Planifier des sauvegardes automatiques de votre base de donnees et de vos fichiers serveur (guide sauvegardes serveur FiveM) ;
- Configurer un nom de domaine pour faciliter la connexion des joueurs a votre serveur FivePD (enregistrement SRV pour serveur FiveM) ;
- Securiser votre serveur contre les tricheurs et les attaques reseau (anti-cheat et anti-DDoS pour FiveM).
FiveM
Minecraft
Rust
RedM
Hytale