Jeux Tarifs Pro Guides Blog Partenariat À propos
Arma Reforger : le guide du moddeur pour tester, déboguer et publier ses mods sur un serveur dédié

Arma Reforger : le guide du moddeur pour tester, déboguer et publier ses mods sur un serveur dédié

11 min de lecture Mis à jour le 8 novembre 2026
En bref

Comment tester un mod Arma Reforger sur un serveur dédié ?

Publiez le mod depuis Workbench (Publish Project), puis ajoutez son identifiant de 16 caractères dans la liste mods de serverconfig.json. Au démarrage, le serveur le télécharge dans workshop/addons/<Nom>_<ID>/ et l'écrit dans la console (Addon Download started, puis Required addons are ready to use). Les erreurs de script sont dans profile/logs/logs_<date>/script.log et console.log. Chez EsoterHost, l'onglet Paramètres accepte aussi -logStats et -logLevel pour mesurer et déboguer.

Ce guide s'adresse aux créateurs de mods Arma Reforger : scripteurs, créateurs de scénarios, d'armes ou de véhicules, et aux équipes qui maintiennent un serveur moddé. Il couvre tout ce qui se passe entre Workbench et un vrai serveur dédié : publier, charger, lire les journaux, mesurer, corriger.

Tout ce qui concerne le serveur a été vérifié sur un serveur dédié EsoterHost en novembre 2026, avec la version 1.9.0.37 du jeu : chemins, lignes de journal, paramètres, identifiants. Pour simplement installer des mods existants, le guide mods et scénario sur Arma Reforger suffit.

Le parcours d'un mod, en un coup d'œil

ÉtapeOùCe qu'on vérifie
1. DévelopperArma Reforger Tools (Workbench), sur votre PCLe mod se lance en local
2. PublierWorkbench → Publish ProjectUne version est en ligne sur le Workshop
3. Chargerconfigs/serverconfig.json du serveur, liste modsLa console affiche le téléchargement
4. Déboguerprofile/logs/logs_<date>/Aucune erreur (E) liée à votre mod
5. MesurerParamètre -logStatsImages par seconde et mémoire stables
6. DiffuserWorkshop, puis serveurs de la communautéVersion figée sur les serveurs de production

Les outils

Les mods se créent avec Arma Reforger Tools, l'outil de Bohemia Interactive disponible dans la bibliothèque Steam (Windows). Il contient Workbench, l'environnement du moteur Enfusion : gestionnaire de ressources, éditeur de monde, éditeur de scripts (langage Enforce Script) et outils de publication.

Pour publier, connectez-vous à votre compte Bohemia depuis Workbench (option Login). Seul le propriétaire d'un mod peut publier ses nouvelles versions.

L'anatomie d'un mod

Chaque mod est un projet Workbench, décrit par un fichier addon.gproj. Voici celui d'un vrai mod du Workshop, tel que le serveur le télécharge :

addon.gproj
GameProject {
 ID "WhereAmI"
 GUID "5965550F24A0C152"
 TITLE "Where Am I?"
 Dependencies {
  "58D0FB3206B6F859"
 }
}

Les identifiants des projets officiels, lus dans les journaux du serveur :

ProjetGUID
ArmaReforger (le jeu)58D0FB3206B6F859
core (le moteur)5614BBCCBB55ED1C
RallyDLC6566A2D70498DA6B

Dans le moteur, une ressource se désigne par le GUID de la ressource suivi de son chemin : {ECC61978EDCC2B5A}Missions/23_Campaign.conf. Ce GUID-là est celui du fichier, pas celui du mod. C'est le format d'un scenarioId.

Une fois téléchargé par un serveur, un mod occupe un dossier workshop/addons/<ID>_<GUID>/ :

FichierContenu
addon.gprojLa description du projet ci-dessus
data.pakLes données empaquetées du mod
resourceDatabase.rdbLa table des ressources (GUID et chemins)
*_manifest.jsonLes empreintes de la version téléchargée, avec son numéro (addon.gproj_1.2.0_manifest.json)
metaLes informations du Workshop : versions, dépendances (dependencies) et scénarios (scenarios)
thumbnail.pngLa vignette du Workshop

Publier une version

  1. Dans Workbench, ouvrez votre projet et vérifiez qu'il se lance sans erreur en local.
  2. Menu Workbench → Publish Project. Workbench empaquette le projet, puis le bouton Publish envoie la version.
  3. Pour une mise à jour, remplissez Change Notes avec les changements : vos utilisateurs et les responsables de serveur les lisent avant de mettre à jour.

À savoir :

Charger le mod sur un serveur dédié

Serveur arrêté, ouvrez configs/serverconfig.json (onglet Fichiers) et complétez la liste mods de la section game :

serverconfig.json
"mods": [
  { "modId": "5965550F24A0C152", "name": "Where Am I" },
  { "modId": "VOTRE_GUID_DE_MOD", "name": "Mon mod (test)", "version": "1.0.3" }
]
ChampRôle
modIdLe GUID du mod, obligatoire
nameUn nom pour vous y retrouver, facultatif
versionFacultatif : fige une version. Sans lui, le serveur prend la dernière à chaque démarrage
requiredFacultatif : indique si le mod est indispensable au démarrage du serveur. La valeur par défaut se règle pour tous les mods avec modsRequiredByDefault

Démarrez le serveur. Dans l'onglet Console, ces lignes confirment le téléchargement et le chargement :

console du serveur
BACKEND      : Addon Download started 5965550F24A0C152 - Where Am I
BACKEND      : Downloading 5965550F24A0C152 version 1.2.0
BACKEND      : Required addons are ready to use.
ENGINE       : gproj: '/reforger/workshop/addons/WhereAmI_5965550F24A0C152/addon.gproj' guid: '5965550F24A0C152' (packed)

La ligne version indique exactement ce que le serveur a chargé : vérifiez-la après chaque publication, pour être sûr de tester la bonne.

Deux serveurs, deux usages

Sur votre serveur de production, figez la version de chaque mod : une mise à jour publiée un vendredi soir ne casse pas votre partie. Sur un serveur de test, laissez la dernière version. Un essai gratuit de 24 h suffit pour valider une mise à jour avant de la déployer.

Et un mod qui n'est pas encore publié ?

Le serveur charge les mods déclarés dans serverconfig.json à partir du Workshop. Pour un mod qui n'y est pas encore, la documentation de Bohemia Interactive décrit un lancement local sur votre PC, avec le serveur d'Arma Reforger Tools : -server suivi d'un monde, -addonsDir vers votre dossier de mods et -addons suivi du mod. Dans ce mode, le fichier de configuration est ignoré. C'est la méthode à suivre pour les tout premiers essais. Sur un serveur hébergé, publiez une version non répertoriée.

Lire les journaux du serveur

Où sont-ils ?

Chaque démarrage crée un dossier daté. Chez EsoterHost, il est dans l'onglet Fichiers :

arborescence
profile/
  logs/
    logs_2026-11-08_22-50-00/
      console.log      tout ce qu'affiche le serveur
      script.log       les messages des scripts (Enforce Script)
      error.log        les erreurs
      crash.log        en cas de plantage
      .backend/        les échanges avec les services de Bohemia

L'onglet Console du panel affiche le contenu de console.log en direct. Pour une analyse après coup, téléchargez le dossier du démarrage concerné en SFTP.

Repérer les erreurs de votre mod

Les lignes portent une catégorie et un niveau : (W) pour un avertissement, (E) pour une erreur. Les messages de script indiquent le fichier et la ligne :

console.log
SCRIPT    (W): @"scripts/Game/Workshop/SCR_AddonManager.c,876": 'GetRefCount' is obsolete: Will be removed
ENTITY    (E): GenericEntity component Hierarchy cannot be combined with component Hierarchy

Le jeu de base produit lui-même des avertissements et quelques erreurs à chaque démarrage, comme les deux lignes ci-dessus. Pour isoler les vôtres :

  1. Notez les messages d'un démarrage sans votre mod.
  2. Ajoutez votre mod et redémarrez.
  3. Cherchez les nouvelles lignes, en filtrant sur le chemin de vos scripts ou le préfixe de vos classes. L'onglet Console a un champ de recherche et des filtres Avertissements et Erreurs.

Les messages d'erreur à connaître, tels qu'ils figurent dans le programme du serveur :

MessageCause probable
Addon '…' not foundLe GUID est faux, ou le mod n'est pas dans la liste
Addon was not found on workshop.Le mod n'est pas publié, a été retiré, ou n'est pas accessible
Addon loading failed {…}Le mod est présent mais n'a pas pu être chargé : dépendance absente, fichiers corrompus
Can't compile "…" script module!Une erreur de compilation dans les scripts. La ligne précédente donne le fichier
LoadSessionSave id '…' was not found.La sauvegarde de session demandée n'existe pas

Écrire dans les journaux depuis vos scripts

En Enforce Script, Print écrit dans les journaux, avec un niveau facultatif. Préfixez vos messages pour les retrouver d'un coup d'œil :

MonMod_Debug.c
// Code à n'exécuter que sur le serveur (dédié ou hébergé)
if (!Replication.IsServer())
	return;

Print("[MonMod] Initialisation côté serveur", LogLevel.NORMAL);
Print("[MonMod] Valeur inattendue, vérifier la configuration", LogLevel.WARNING);

Un serveur dédié n'a ni écran ni joueur local : le code d'interface (widgets, caméra du joueur) n'y a pas sa place. Vérifiez toujours qui a l'autorité avant de modifier l'état du jeu.

Mesurer les performances de votre mod

Chez EsoterHost, l'onglet Paramètres d'un serveur Arma Reforger a un champ Paramètres de lancement (avancé). Il accepte une liste fermée de paramètres, vérifiés dans le programme du serveur :

ParamètreEffet
-logStats 10000Écrit les statistiques du serveur toutes les 10 000 millisecondes (1 000 au moins)
-logLevel warningNe garde que les avertissements et les erreurs. Valeurs : normal, warning, error, fatal
-freezeCheck 60Délai, en secondes, avant que le serveur ne s'arrête s'il reste figé. 0 désactive la détection
-aiLimit 40Nombre maximum d'IA. -1 retire la limite

Avec -logStats, la console affiche une ligne de ce type :

console du serveur
DEFAULT      : FPS: 116.6, frame time (avg: 8.6 ms, min: 2.2 ms, max: 178.2 ms, mean: 8.3 ms, median: 8.3 ms), Mem: 1046448 kB, Player: 0, AI: 11, AIChar: 0, Veh: 0 (5), …

Comparez ces lignes avec et sans votre mod, à charge égale :

Retirez -logStats une fois les mesures faites : les journaux grossissent vite.

Scénarios : identifiants officiels et scénarios de mods

Le scénario d'un serveur se règle avec scenarioId dans serverconfig.json. Les identifiants ci-dessous ont été lus dans les fichiers du jeu, et ceux marqués ✓ chargés un par un sur un serveur dédié EsoterHost (version 1.9), avec le bon mode de jeu :

ScénarioscenarioIdTesté
Conflict, Everon{ECC61978EDCC2B5A}Missions/23_Campaign.conf✓
Conflict, Arland{C41618FD18E9D714}Missions/23_Campaign_Arland.conf✓
Conflict, Kolguyev{9C6054B42A044DEC}Missions/23_Campaign_Cain.conf✓
Conflict HQ Commander, Everon{0220741028718E7F}Missions/23_Campaign_HQC_Everon.conf✓
Combat Ops, Everon{DFAC5FABD11F2390}Missions/26_CombatOpsEveron.conf✓
Combat Ops, Arland{DAA03C6E6099D50F}Missions/24_CombatOps.conf✓
Combat Ops, Kolguyev{CB347F2F10065C9C}Missions/CombatOpsCain.conf✓
Game Master, Everon{59AD59368755F41A}Missions/21_GM_Eden.conf
Game Master, Arland{2BBBE828037C6F4B}Missions/22_GM_Arland.conf✓
Game Master, Kolguyev{F45C6C15D31252E6}Missions/27_GM_Cain.conf✓
Capture & Hold, Morton{2B4183DF23E88249}Missions/CAH_Morton.conf✓

La liste complète des 35 scénarios multijoueurs officiels, avec toutes les variantes de Conflict, de Capture & Hold et de Rally, est dans le guide mods et scénarios Arma Reforger. Dans les fichiers du jeu, Kolguyev porte le nom interne Cain, et Everon le nom Eden.

Pour un scénario venant d'un mod :

Sauvegardes de session

Pour les scénarios persistants, la case Reprendre la session sauvegardée de l'onglet Paramètres ajoute -loadSessionSave : le serveur recharge la dernière partie du scénario à chaque démarrage. Les sauvegardes sont rangées par scénario :

arborescence
profile/profile/.save/game/ECC61978EDCC2B5A-23-Campaign/

Testez la persistance de votre mod ainsi : jouez, arrêtez proprement le serveur depuis le panel, redémarrez, puis vérifiez que l'état est revenu. Supprimez le dossier du scénario pour repartir d'une partie neuve.

Faire le ménage dans les mods

Le serveur ne supprime pas tout seul les mods que vous retirez de la liste : leurs dossiers restent dans workshop/addons/ et occupent de l'espace. Après un gros changement de liste, supprimez les dossiers <ID>_<GUID> des mods retirés depuis l'onglet Fichiers, serveur arrêté. Ils seront retéléchargés s'ils reviennent dans la liste.

Check-list avant de publier une version

Questions fréquentes

Où trouver l'identifiant d'un mod Arma Reforger ?

Sur sa page du Workshop Arma Reforger, ou dans le champ GUID de son fichier addon.gproj. C'est une suite de 16 caractères hexadécimaux, à mettre dans modId.

Où sont les journaux d'un serveur Arma Reforger ?

Dans le dossier du profil, sous logs/logs_<date>/ : console.log, script.log, error.log et crash.log. Chez EsoterHost, ils sont dans profile/logs de l'onglet Fichiers.

Comment voir les FPS d'un serveur Arma Reforger ?

Ajoutez le paramètre de lancement -logStats suivi d'un intervalle en millisecondes, par exemple -logStats 10000. Le serveur écrit alors ses FPS, sa mémoire et le nombre d'IA dans la console.

Comment figer la version d'un mod sur un serveur Arma Reforger ?

Ajoutez "version": "1.2.3" à l'entrée du mod dans la liste mods de serverconfig.json. Sans ce champ, le serveur prend la dernière version à chaque démarrage.

Peut-on tester un mod non publié sur un serveur dédié Arma Reforger ?

La configuration du serveur charge les mods depuis le Workshop. Pour un mod non publié, Bohemia Interactive décrit un lancement local avec -server, -addonsDir et -addons. Sur un serveur hébergé, publiez une version non répertoriée.

Pourquoi mon serveur Arma Reforger affiche-t-il « Addon was not found on workshop » ?

Le mod n'est pas publié, a été retiré du Workshop, ou son identifiant est faux. Vérifiez le modId sur la page du mod.

Où sont les sauvegardes de session d'un serveur Arma Reforger ?

Dans profile/profile/.save/game/, un dossier par scénario. Chez EsoterHost, la case Reprendre la session sauvegardée de l'onglet Paramètres recharge la dernière partie à chaque démarrage.

Pour aller plus loin

Image : Arma Reforger, Bohemia Interactive

Ce guide vous a aidé ?

Vous n'avez pas trouvé ?

Notre équipe répond 7j/7 sur les tickets et sur Discord.

Vous maîtrisez un jeu ?

Proposez votre propre guide : notre équipe le relit, puis le publie avec votre nom.