← Blog

Qu'est-ce que txAdmin et comment l'utiliser pour gérer un serveur FiveM ?

Par Benjamin D. · PDG

· Lecture 10 min

Illustration de l'article : Qu'est-ce que txAdmin et comment l'utiliser pour gérer un serveur FiveM ?
Sommaire

txAdmin FiveM est l'interface web de supervision livrée avec FXServer : elle lance, arrête et surveille le process du serveur, applique les sanctions, planifie les redémarrages et remonte les performances thread par thread. Aucune ressource à installer manuellement, tout passe par un navigateur et un compte administrateur protégé par mot de passe ou par identifiant Cfx.re.



txAdmin FiveM : le rôle exact de ce panel dans l'administration

txAdmin n'est pas un script que l'on glisse dans resources/. C'est un superviseur : il enveloppe le binaire FXServer, le démarre avec ton server.cfg, lit sa sortie console et le relance s'il tombe. La ressource monitor chargée en jeu n'est que son bras armé côté client, pour le menu in-game et la récupération des identifiants.

Concrètement, il remplace trois outils que les administrateurs bricolaient avant : un watchdog de process, un système de bans persistants et un planificateur de redémarrages. Il y ajoute une console live, un éditeur de configuration, un explorateur de ressources et des graphiques de santé du thread principal.

Ce que txAdmin gère, et ce qu'il ne gère pas

Pris en chargeHors périmètre
Démarrage, arrêt, redémarrage du serveurOptimisation du code de tes scripts
Bans, warns, kicks, whitelist, historiqueAnticheat complet et détection côté client
Déploiement d'une recipe (framework prêt à l'emploi)Administration de MySQL au quotidien
Planificateur de redémarrages et annoncesSauvegardes de la base hors export manuel
Graphiques de tick time et détection des hitchesProfilage détaillé par ressource (rôle de resmon)

Retenir cette frontière évite beaucoup de faux diagnostics. Quand txAdmin affiche un thread en souffrance, il te dit qu'un problème existe, pas quelle ressource le cause : c'est resmon 1 en jeu et le profiler qui répondent.



Accéder à l'interface web et verrouiller le compte maître

Sur une machine dédiée à un hébergement FiveM, txAdmin tourne en parallèle du panel de la plateforme : le panel gère l'instance et les fichiers, txAdmin gère le jeu. Les deux cohabitent sans conflit tant qu'un seul des deux pilote le démarrage du process FXServer.

Premier accès et code PIN

Au premier lancement, txAdmin écoute par défaut sur le port 40120 et affiche dans la console un PIN à quatre chiffres valable quelques minutes. Tu ouvres http://IP:40120, tu saisis le PIN, puis tu crées le compte maître avec un mot de passe long ou en le liant à ton compte Cfx.re.

# Lancement manuel sous Linux (artifacts FXServer)
cd /home/fivem/server
./run.sh

# Forcer un autre port si 40120 est déjà pris
./run.sh +set txAdminPort 40125

Si tu passes par un panel qui expose déjà un port web, vérifie la redirection : l'interface doit être joignable depuis ton navigateur, pas ouverte à tout Internet sans mot de passe solide. Un compte maître avec un mot de passe faible donne un accès total au système de fichiers du serveur via l'éditeur de configuration.

Ajouter des administrateurs avec des droits limités

La page des administrateurs permet de créer un compte par membre du staff, avec des permissions granulaires. Un modérateur n'a pas besoin de manage.admins ni de server.cfg.editor. Donne players.kick, players.warn, players.ban et l'accès à la console en lecture, rien de plus.

  • Chef de staff : gestion des admins, bans, whitelist, ressources.
  • Développeur : contrôle des ressources, console, éditeur de configuration.
  • Modérateur : joueurs, sanctions, annonces, consultation des logs.
  • Support : lecture seule des joueurs et de l'historique.


Déployer une recipe et initialiser les données du serveur

Le deployer de txAdmin lit un fichier recipe.yaml qui décrit une suite d'opérations : téléchargement de dépôts Git, copie de fichiers, remplacement de variables et import de fichiers SQL. C'est ce mécanisme qui installe un framework RP complet en une poignée de minutes, base de données incluse.

Les trois modes de déploiement

  1. Depuis une recipe : ESX Legacy, QBCore, ou une recipe personnalisée fournie via URL.
  2. Dossier existant : tu pointes vers un serveur déjà installé, txAdmin reprend son server.cfg.
  3. Serveur vide : txAdmin génère l'arborescence minimale et un server.cfg de base.

Avant de lancer une recipe de framework, prépare la base : une instance MySQL ou MariaDB accessible, un utilisateur dédié et une base vide. Le deployer demande la chaîne de connexion et refuse de continuer si l'accès échoue. Note le mot de passe, il finit écrit en clair dans la configuration.

mysql://fivem_user:[email protected]:3306/fivem_rp?charset=utf8mb4

Une recipe se déploie sur un serveur propre. La relancer sur une installation existante écrase des fichiers et peut réimporter des tables déjà remplies. Si tu veux tester un autre framework, crée un second dossier de données plutôt que de recycler l'ancien. La documentation officielle détaille chaque étape du deployer : Source.

Après le déploiement

Le dossier txData contient les profils, les bans, les logs d'action et la configuration de txAdmin. Sauvegarde-le en même temps que resources/ et que ton dump SQL. Perdre txData revient à perdre l'historique des sanctions et la liste des administrateurs. D'autres jeux exigent la même rigueur de sauvegarde : voir tous nos serveurs de jeux.



Éditer server.cfg sans casser le démarrage

L'éditeur intégré écrit directement dans le fichier réel. Il ne valide pas la syntaxe : une ligne mal formée passe à l'enregistrement et bloque le boot. Prends l'habitude de copier le contenu ailleurs avant une modification lourde, ou d'éditer par petits blocs commentés.

Structure d'un server.cfg propre

# Bloc généré par txAdmin, ne pas supprimer
# (endpoints, sv_maxclients et chemins sont injectés ici)

endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"

sv_hostname "Nexus RP | Serious Roleplay FR"
sv_projectName "Nexus RP"
sv_projectDesc "Roleplay francophone"
sv_maxclients 48
sv_enforceGameBuild 3095
sets locale "fr-FR"

set onesync on
set steam_webApiKey ""
set mysql_connection_string "mysql://fivem_user:[email protected]/fivem_rp?charset=utf8mb4"

ensure mapmanager
ensure chat
ensure spawnmanager
ensure sessionmanager
ensure basic-gamemode
ensure hardcap

exec resources.cfg

add_ace group.admin command allow
add_principal identifier.license:0000000000000000000000000000000000000000 group.admin

sv_licenseKey "ta_cle_keymaster"

Les erreurs de configuration les plus fréquentes

  • Clé de licence absente ou révoquée : la clé se génère sur le Keymaster Cfx.re et doit correspondre à l'IP déclarée. Sans elle, le serveur refuse de démarrer.
  • sv_maxclients au-dessus de 32 sans Element Club : le programme de soutien Cfx.re est ce qui débloque les paliers supérieurs et OneSync Infinity.
  • ensure d'une ressource inexistante : le nom du dossier doit être exact, la casse compte sous Linux.
  • Ordre des ensure : un framework se charge avant ses dépendances métier, sinon les exports partent en erreur.
  • Guillemets manquants autour d'une valeur contenant un espace ou un caractère spécial.

Après chaque enregistrement, garde la console live ouverte et relance le serveur. Les lignes en rouge donnent le nom du fichier et le numéro de ligne fautifs. Une modification, un redémarrage, une vérification : c'est plus lent que dix changements d'un coup, mais tu sais toujours ce qui a cassé quoi.



Modérer les joueurs : sanctions, whitelist et historique

La page des joueurs liste les connectés en temps réel avec leurs identifiants : license, Discord, Steam, Xbox Live, IP. Cliquer sur un nom ouvre sa fiche complète, avec le nombre de sessions, le temps de jeu cumulé, les notes du staff et les sanctions passées. Le tout reste consultable même hors connexion.

Kick, warn, ban : quand utiliser quoi

ActionUsageEffet technique
KickJoueur AFK, bug de session, avertissement immédiatDéconnexion simple, retour possible aussitôt
WarnNon respect des règles RP, première dériveMessage plein écran forcé, trace dans l'historique
Ban temporaireRécidive, comportement toxiqueBlocage des identifiants pour une durée fixée
Ban permanentCheat, exploit, fuite de donnéesBlocage définitif, révocable par un admin autorisé

Les modèles de ban évitent au staff de rédiger un motif à chaque fois. Crée une liste courte et sans ambiguïté : cheat, VDM répété, mégaphone publicitaire, contournement de sanction. Le motif s'affiche au joueur bloqué, il sert aussi de preuve lors d'un appel sur ton Discord.

Configurer la whitelist

txAdmin propose plusieurs modes de whitelist : désactivée, approbation par license, appartenance à un serveur Discord, ou rôle Discord précis. Le mode par rôle est le plus lisible pour une communauté RP : le passage de l'entretien donne le rôle, le rôle donne l'accès, aucune manipulation de fichier.

# Requêtes utiles depuis la console live txAdmin
refresh                  # recharge la liste des ressources
ensure ma_ressource      # démarre ou redémarre une ressource
stop ma_ressource        # arrête une ressource
status                   # liste les joueurs connectés côté FXServer

Le journal d'actions conserve qui a sanctionné qui, et depuis quel compte. Sur une équipe de plusieurs modérateurs, c'est ce log qui tranche les litiges internes. La commande /tx en jeu ouvre le menu de modération pour agir sans quitter la partie : téléport, heal, spectate, freeze.



Planifier les redémarrages et surveiller la santé du serveur

Un serveur RP chargé accumule des fuites mémoire, des entités orphanes et des véhicules abandonnés. Le planificateur de txAdmin programme des redémarrages à heures fixes, avec des annonces automatiques avant coupure. Trois créneaux quotidiens conviennent à la plupart des communautés, à placer aux heures creuses.

Réglages du planificateur

  • Horaires : format 24 h, plusieurs entrées possibles (par exemple 06:00, 14:00, 22:00).
  • Annonces : avertissements à 15, 10, 5 et 1 minute, message personnalisable.
  • Redémarrage automatique sur crash : txAdmin relance le process si FXServer ne répond plus.
  • Boot timeout : délai au-delà duquel un démarrage figé est considéré comme échoué.

Préviens tes joueurs plutôt que de couper sèchement : une déconnexion brutale en pleine action fait perdre des données non sauvegardées côté framework. Beaucoup de scripts persistent l'inventaire à intervalle régulier, pas à chaque changement, donc l'annonce sert aussi de fenêtre de sauvegarde.

Lire les graphiques de performance

La page de diagnostics affiche l'usage CPU, la mémoire du process et un graphique de santé du thread principal. Les zones colorées signalent les tick times élevés : le serveur met plus de temps qu'un frame à traiter sa boucle. Des pics isolés sont normaux, une bande continue trahit une ressource qui bloque le thread.

Quand le graphique se dégrade, croise trois informations : l'heure d'apparition, le nombre de joueurs connectés et la dernière ressource ajoutée. Un script qui boucle en while true do sans Citizen.Wait suffisant reste la cause numéro un. Utilise resmon 1 en jeu pour isoler le coupable côté client.

Le matériel joue aussi : un CPU à forte fréquence par cœur comme le Ryzen 9 7950X3D, de la DDR5 ECC et du SSD NVMe absorbent bien mieux les pics d'un serveur peuplé que du matériel mutualisé, parce que FiveM concentre l'essentiel du travail sur un seul thread. D'autres tutoriels d'administration sont regroupés sur le Blog Nexus Games.



Conclusion

Configure trois choses le jour même de ton installation : un mot de passe maître long sur le compte txAdmin, des permissions restreintes pour chaque membre du staff, et un planificateur avec annonces. L'erreur qui coûte le plus cher reste de relancer une recipe sur un serveur déjà peuplé : tu écrases des fichiers et réimportes des tables. Sauvegarde txData avec tes ressources et ton dump SQL, sinon l'historique des sanctions disparaît au premier incident.



FAQ

Comment récupérer l'accès si le mot de passe du compte maître txAdmin est perdu ?

Arrête le serveur, va dans le dossier txData et renomme le fichier admins.json en admins.json.bak. Au redémarrage, txAdmin considère l'installation comme neuve et affiche un nouveau code PIN dans la console, ce qui permet de recréer un compte maître. Tu peux ensuite recopier manuellement les autres comptes administrateurs depuis la sauvegarde. Cette manipulation demande un accès aux fichiers, ce qui justifie de protéger aussi le panel qui donne cet accès.

Peut-on lancer FXServer sans passer par txAdmin ?

Oui. En appelant directement le binaire avec l'argument +exec server.cfg, FXServer démarre en mode historique, sans interface web ni supervision. Tu perds alors le watchdog, le planificateur, les bans persistants et les graphiques de performance, et tu dois gérer les redémarrages via un service systemd ou un script externe. Ce mode reste utile pour un serveur de développement local, ou quand un panel externe assure déjà la surveillance du process.

Que vérifier quand txAdmin annonce que le serveur ne démarre pas dans le délai imparti ?

Lis la console live du début à la fin, la première ligne rouge donne la cause réelle. Les trois origines les plus fréquentes sont une clé de licence invalide ou liée à une autre IP, une base de données injoignable qui bloque le chargement du framework, et un ensure pointant vers un dossier de ressource mal nommé. Vérifie aussi que le port de jeu n'est pas déjà occupé par une autre instance restée active.

À lire aussi

Location de serveur FiveM

txAdmin et clé Patreon inclus

à partir de 2,99€/mois

Louer mon serveur FiveM