Atelier des moddeurs · guide · 57 min de lecture
RPFM, le guide : ajouter une unité, une faction et un seigneur dans Total War: Warhammer III
RPFM (Rusted PackFile Manager) ouvre et fabrique les packs de Total War. Ce guide montre pas à pas comment s'en servir, puis déroule trois procédures complètes pour Total War: Warhammer III : ajouter une unité, une faction, un seigneur légendaire ou jouable. Les pièges viennent de la communauté et de notre chantier.
Relu le 25 septembre 2026, mise à jour 9.0. Écrit contre ses sources, le code et le manuel de RPFM 5.0.6 (libellés et emplacements), les données du jeu et l'Assembly Kit au patch 8.1 ; ce que la 9.0 a changé sur notre chantier y est ajouté, le reste n'a pas été revérifié point par point. Dans le doute, vérifiez, et dites-le-nous.
Ce que fait RPFM, et ce qu'est un pack§
Un mod de Total War est un fichier .pack, une archive que le jeu lit dans son dossier data. RPFM (Rusted PackFile Manager, de Frodo45127, sous licence MIT) ouvre les packs du jeu en lecture et fabrique les vôtres. Un pack range des tables (db/), des textes (text/), des scripts Lua (script/), des images (ui/), des définitions de modèles (variantmeshes/) et, pour une campagne, sa position de départ (campaigns/).
Ce guide suit RPFM 5.0.6, dernière version stable au 24 septembre 2026, et des tables relevées sur le patch 8.1. Pour la mise à jour 9.0, sortie le même jour, les schémas de RPFM ont été publiés dès ce jour-là ; les tables citées ici n'ont pas été relues une à une depuis : dans le doute, vérifiez. Toute modification suit ces six étapes :
- Trouver
La ligne du jeu la plus proche.
View → Toggle Global Search Window (Ctrl+Shift+F)
- Copier
Dans votre table (
db/), sous une clé à vous (la même pour modifier une ligne du jeu).<table>_tables/ <fichier> clic droit sur le pack → Create… → Create DB, puis Paste as New Row
- Nommer
Les textes affichés au joueur, dans
text/.db/ <fichier>.loc clic droit sur le pack → Create… → Create Loc
- Contrôler
Références, clés, champs vides.
panneau Diagnostics → Check PackFile
- Essayer
Le pack installé dans
<jeu>\, en jeu.data\ clic droit sur la racine du pack → Install
- Publier
La version optimisée.
clic droit sur la racine du pack → Save Pack For Release… (sur une copie)
Les mots du métier§
| Mot | Sens |
|---|---|
| Pack | l'archive d'un mod, posée dans le dossier data du jeu |
| Table | un tableau de la base du jeu, rangé dans db/ |
| Clé | ce qui identifie une ligne, unique dans sa table (parfois plusieurs colonnes) |
| Fragment | un fichier de table ; le jeu lit tous les fragments d'une table, les siens et ceux des mods |
| Datacore | un fragment nommé comme celui du jeu (data__), qui remplace la table entière |
.loc | un fichier de textes : une clé par phrase affichée |
| Schéma | la description des tables : colonnes, clés, liens (celle de RPFM, ou celle du kit : TWaD_*.xml) |
| Cache des dépendances | les données du jeu, préparées par RPFM pour chercher et contrôler |
| Assembly Kit | le kit officiel de Creative Assembly (Steam → Bibliothèque → Outils) |
| Sous-type | le type exact d'un personnage (agent_subtypes) |
| Art set | l'ensemble des apparences d'un personnage (campaign_character_art_sets) |
| Startpos | startpos.esf, la sauvegarde du tour 0 d'une campagne |
| Racine du pack | la première ligne de l'arbre du pack, à son nom ; son clic droit porte Install, Uninstall, Save Pack For Release… et Build Startpos |
| Palette | la recherche par nom de RPFM : Ctrl+Shift+P pour une action, Ctrl+P pour un fichier |
%APPDATA% | le dossier des réglages de votre compte Windows : tapez %APPDATA% dans la barre d'adresse de l'Explorateur |
| Groupe militaire | military_group, le groupe de recrutement d'une faction : une unité permise à un groupe l'est à toutes ses factions (chez CA, les factions de Bretonnie ont wh_main_group_bretonnia) |
twad_key_deletes | la table qui retire des lignes du jeu au lancement (Warhammer III, depuis le patch 6.3) : colonnes table_name et key |
| Mixer | MIXER – Mixu's Unlocker, un mod de Mixu : son startpos rend jouables toutes les factions des Empires Immortels et des Royaumes du Chaos ; selon le wiki, c'est le seul mod de startpos de la plupart des joueurs |
| Error / Warning / Info | les trois gravités des diagnostics : Error, un problème en jeu ; Warning, un problème probable ; Info, à savoir. Visez zéro Error |
Installer et configurer RPFM 5.0.6§
Téléchargez RPFM depuis ses versions publiées, puis, une fois pour toutes :
- PackFile → Settings. Game Paths : le Game Folder (le dossier de l'exécutable du jeu) et l'Assembly Kit Folder. Extra Paths : le MyMod's Folder, hors de Program Files, où Windows protège l'écriture. Default Game : Warhammer 3.
- About → Check Updates, puis, dans le gestionnaire de mises à jour, le bouton de la ligne Schema Updates : le schéma dit à RPFM comment lire chaque table du patch en cours (vous pouvez aussi cocher Check Schema Updates on Start dans les réglages).
- Game Selected → Generate Dependencies Cache, quelques minutes : RPFM prépare les données du jeu pour ses recherches et ses contrôles. Sans Assembly Kit configuré, il prévient que ses diagnostics donneront de faux positifs.
Les gestes de base§
La fenêtre de RPFM 5.0.6, zone par zone :
- 1Les menusPackFile, MyMod, View, Game Selected, Tools, About. Les réglages : PackFile → Settings (Ctrl+,) ; les schémas : About → Check Updates ; le cache : Game Selected → Generate Dependencies Cache.
- 2Les ongletsun par fichier ouvert.
- 3Pack Contentsl'arbre du pack ; sa première ligne, la racine, porte le nom du pack.
- 4Le clic droit sur la racineSave Pack As…, Save Pack For Release…, Install, Uninstall, Change PackFile Type, Optimize PackFile, Build Startpos (et d'autres actions) : ce qui touche au pack entier.
- 5Dependenciesles fichiers du jeu, des mods parents et de l'Assembly Kit, en lecture seule ; clic droit → Import en amène un dans votre pack.
- 6La table ouvertevotre ligne, surlignée ; en rouge, une référence invalide : aucune ligne de land_units ne porte encore cette clé. Le fichier atlas_main_units n'a pas de @ : il ajoute une clé neuve.
- 7DiagnosticsCheck PackFile relit le pack ; chaque ligne a sa gravité : Error, Warning ou Info. Visez zéro Error.
- 8Global Searchmasquée au départ : View → Toggle Global Search Window (Ctrl+Shift+F) ; sources Game Files ou Assembly Kit Tables.
- 9La barre d'étatles messages brefs de la dernière opération.
Créer son mod§
MyMod → New MyMod. Choisissez le jeu (Warhammer 3) et un nom avec des soulignés, sans espace ni .pack (auteur_description). RPFM crée le pack <MyMod>\ et, à côté, le dossier <MyMod>\ pour vos fichiers de travail (plus un dépôt Git ou un projet VSCode si vous les cochez), puis ouvre le pack. Le dossier MyMod doit être réglé avant, sinon RPFM refuse.
Trouver une donnée du jeu§
View → Toggle Global Search Window (Ctrl+Shift+F) : source Game Files (ou Assembly Kit Tables), type DB (Loc pour les textes), puis la clé, soulignés compris ; un clic ouvre la table à la bonne ligne, en lecture seule. Autres voies : PackFile → Load All CA Packs (lecture seule ; grisée quand le cache des dépendances est chargé), ou View → Toggle Dependencies Window, clic droit → Import, qui amène un fichier du jeu dans votre pack : renommez aussitôt une table amenée ainsi (F2), car sous le nom data__ elle remplacerait celle du jeu.
Créer une table§
Clic droit sur le pack → Create… → Create DB ; choisissez la table (land_units_tables) et nommez le fichier avec votre préfixe : db/. Le nom compte : quand votre fichier et celui du jeu (data__) donnent la même clé, celui dont le nom trie en premier gagne. Pour ajouter des lignes (clés neuves), tout nom à vous convient ; pour modifier une ligne du jeu (même clé), commencez le nom par @ ou !.
- Ne renommez ni ne déplacez jamais un dossier
_tables(« NEVER RENAME/MOVE THE TABLE FOLDERS », écrit RPFM) : c'est lui qui dit au jeu de quelle table il s'agit. - Ni chiffre final ni espace dans un nom de fichier de table : selon RPFM, un chiffre final fait planter le mod chez tout le monde sauf chez son auteur, et une espace empêche parfois la table d'être chargée.
Partir d'une ligne du jeu§
- Dans la table du jeu, sélectionnez la ligne modèle (cliquez son numéro) : Copy… → Copy.
- Dans votre table : Paste as New Row (Ctrl+Shift+V). Pour ajouter une ligne, changez la clé en premier : sinon votre ligne n'ajoute rien, elle entre en concurrence avec celle du jeu.
- Pour dupliquer une de vos lignes : Clone… → Clone and Append.
Suivre une clé§
Clic droit sur une cellule → Go To… → Go To Definition (la ligne citée), Go To Loc Entry (son texte) ou Find References (tout ce qui cite cette clé) ; Rename References renomme une clé partout (le manuel l'appelle Cascade Edition). C'est ainsi qu'on démonte une unité ou un seigneur, table après table.
Écrire les textes§
- Clic droit sur le pack → Create… → Create Loc, par exemple
text/.db/ atlas.loc - Trois colonnes : key (la clé), text (le texte affiché) et tooltip, dont le rôle est inconnu selon le manuel de RPFM : faites comme les lignes de CA.
- La clé a la forme
<table>_<colonne>_<clé de la ligne>. Exemple : le nom de l'unitéatlas_chevaliers(colonneonscreen_namedeland_units) a pour cléland_units_onscreen_name_atlas_chevaliers. - Clic droit sur le pack → Generate Loc Data produit deux fichiers.
zzz_…: les clés qui manquent à vos tables ; renommez-le ou recopiez ses lignes dans votre.loc, puis remplissez-les.aaa_…: les textes du jeu que vos tables citent ; n'en gardez que ce que vous changez. Ne publiez aucun des deux sous son nom d'origine : RPFM les réécrit à chaque génération, et l'optimiseur retireaaa_…(etzzz_…s'il est vide).
Vérifier, tester, publier§
Les diagnostics§
View → Toggle Diagnostics Window → Check PackFile, avant chaque essai : un défaut repéré ici épargne un lancement du jeu pour rien. Chaque ligne porte une gravité : Error (un problème en jeu), Warning (un problème probable), Info (à savoir) ; visez zéro Error. La figure suit un mod du diagnostic jusqu'au jeu.
RPFM contrôle :
- les tables : version périmée ; référence invalide, l'une des premières causes de plantage au lancement selon RPFM ; clé vide ou en double ; ligne vide ; champ obligatoire vide, qui peut faire planter le jeu (RPFM), souvent sans message d'erreur (Casualfield) ; nom de fichier finissant par un chiffre ou contenant une espace ; table qui écrase celle du jeu (« datacoring ») ; table interdite (Banned Table), que le jeu vérifie et qui le fait planter si elle est modifiée ;
- les fichiers : chemin cité mais introuvable, texte manquant ;
- les portraits : art sets et variantes non déclarés ;
- la configuration : cache des dépendances absent ou périmé.
Essayer en jeu§
- Ctrl+S (enregistre les packs ouverts), puis clic droit sur la racine du pack (la première ligne de l'arbre, à son nom) → Install : RPFM copie le pack dans
<jeu>\.data\ - Cochez le mod dans le lanceur de Creative Assembly, ou dans un gestionnaire tiers (Kaedrin's Mod Manager, Runcher).
- Même menu → Uninstall : retire la copie.
Publier§
Gardez votre pack de travail : copiez-le d'abord (ou Save Pack As… sous un autre nom), car Save Pack For Release… enregistre la version optimisée à la place du pack ouvert. Clic droit sur la racine du pack → Save Pack For Release… : l'optimiseur s'ouvre, puis le pack est enregistré ; Optimize PackFile, au même menu, fait le même travail sans enregistrer, pour relire avant. L'optimiseur ne fait que ce que vous cochez :
- retirer les fichiers et les lignes identiques au jeu, les doublons, les fichiers vides ;
- compresser le pack ;
- retirer les art sets et variantes inutilisés des portraits (décoché par défaut) ;
- pour Warhammer III, Import datacores into twad_key_deletes : il inscrit dans une table
twad_key_deletesles lignes qu'une table recopiée du jeu a supprimées. Vérifiez cette table, renommez-la (RPFM la réécrirait au prochain passage), puis supprimez vous-même la table recopiée.
Après une mise à jour du jeu§
- About → Check Updates, bouton des schémas.
- Game Selected → Generate Dependencies Cache : sinon RPFM compare vos tables à un jeu périmé.
- Sur chaque table signalée Outdated table : clic droit → Update Table.
- Relisez les colonnes nouvelles : RPFM y met des valeurs par défaut, pas forcément les bonnes pour vos lignes.
À la 9.0, les schémas de RPFM sont sortis le jour même de la mise à jour. Si vous écrivez aussi dans l'Assembly Kit : Steam le met à jour après le jeu (chez nous, une heure plus tard) et réécrit raw_data\ ; les lignes que vous y aviez ajoutées disparaissent. Vérifiez-les et restaurez-les avant de régénérer le cache des dépendances et de reconstruire quoi que ce soit.
Les règles des packs : qui passe devant qui§
Le jeu lit tous les fragments d'une table, les siens et ceux de chaque mod : tant que les clés diffèrent, les lignes s'additionnent. Quand deux fragments donnent la même clé, celui dont le nom trie en premier gagne ; et un fragment qui porte le chemin exact d'un fichier du jeu le remplace tout entier.
La figure ci-dessous montre qui gagne quand plusieurs fragments d'une même table donnent la même clé.
Exemple : la table des unités de bataille du jeu est le fichier db/. Selon le manuel de RPFM, @mon_mod passe devant, zmon_mod derrière, et un fragment nommé data__ la remplace entière : c'est un « datacore », que les diagnostics signalent (« Leaving them named data__ will overwrite the base game files », prévient Casualfield).
Quatre règles qui évitent les pires surprises§
- Des noms et des clés à vous : vos lignes s'ajoutent sans rien remplacer, et les autres campagnes comme les autres mods restent intacts.
- Ne redéfinissez pas un texte du jeu. Le jeu charge les
.locd'un mod quelle que soit la langue du joueur : une clé du jeu reprise remplace le texte officiel dans toutes les langues. N'ajoutez que des clés neuves. Pour une seconde langue, un second pack : il ne contient qu'un.locqui reprend vos clés, sous un nom qui commence par!pour passer devant le vôtre (wiki, page Submodding). - Pour retirer une ligne du jeu, ne recopiez pas sa table (un datacore) : un fragment ne retire rien aux autres. Depuis le patch 6.3, Warhammer III lit une table
twad_key_deletes(colonnestable_nameetkey) qui retire les lignes nommées au lancement. Dans RPFM : créez une foistwad_key_deletes_tablesdans votre pack (Create DB), ouvrez la table du jeu, sélectionnez les lignes, clic droit → Add Selection to Key Deletes → votre table. Attention : retirer une ligne encore citée par une autre table fait planter le jeu, et les diagnostics ne le voient pas encore. Deux tables seulement ont en plus une casemod_disabled(character_skill_node_set_items,faction_agent_permitted_subtypes), que le schéma de CA présente comme le moyen donné aux moddeurs, faute de pouvoir retirer une ligne. - Dans le dossier
data, un pack passe devant les fichiers en vrac (constaté chez nous) : un fichier régénéré (un startpos, par exemple) ne compte qu'une fois remis dans le pack.
Votre premier mod, en dix minutes§
Avant les trois procédures, un essai court qui vérifie aussi votre installation : rendre une unité du jeu plus chère en bataille personnalisée. Le tutoriel RPFM For Dummies du wiki commence de même, par une modification de table trouvée avec la recherche globale.
- MyMod → New MyMod : jeu Warhammer 3, nom
moi_premier_mod. - View → Toggle Global Search Window (Ctrl+Shift+F) : source Game Files, type DB ; cherchez
wh_dlc07_brt_cav_knights_errant_0, puis cliquez le résultat demain_units_tables: la table du jeu s'ouvre à la bonne ligne, en lecture seule. - Cliquez le numéro de la ligne, puis clic droit → Copy… → Copy.
- Clic droit sur votre pack → Create… → Create DB : table
main_units_tables, nom@moi_main_units. Le@fait trier votre fichier avant celui du jeu (data__) : c'est donc le vôtre qui gagne. - Clic droit dans la table vide → Paste as New Row (Ctrl+Shift+V). Gardez la clé : ici, on modifie l'unité du jeu. Passez
multiplayer_cost(son prix en bataille personnalisée ; 700 chez CA) à 999. - Panneau Diagnostics → Check PackFile : aucune ligne Error.
- Ctrl+S, puis clic droit sur la racine du pack → Install ; cochez le mod dans le lanceur. En bataille personnalisée, les Chevaliers errants de Bretonnie coûtent 999.
Pour ajouter une unité au lieu de la modifier, on change la clé : c'est la procédure 1.
Procédure 1 : ajouter une unité§
La voie sûre : copier une unité du jeu qui ressemble à la vôtre, puis changer ce qui doit changer. Exemple suivi : les Chevaliers errants de Bretonnie, wh_dlc07_brt_cav_knights_errant_0.
Avant de commencer : l'unité modèle§
- Une unité modèle de même squelette et de mêmes animations que la vôtre : sinon, le rendu est déformé en jeu.
- Un préfixe de clé à vous, pour ne jamais entrer en concurrence avec le jeu ou un autre mod.
La figure suivante montre les tables d'une unité et les colonnes qui les relient.
Les étapes de l'unité§
- Global Search sur la clé du modèle : elle figure dans 24 tables du kit ; le tableau ci-dessous donne celles qu'il faut.
- Pour chacune : Create DB (un fichier à votre préfixe), Paste as New Row, puis changez ce qui fait l'unité et gardez le reste (voir « Ce qui change, ce qui reste »). Comme CA, donnez la même clé à
main_units.unitet àland_units.key. - Réglez caractéristiques, coûts, apparence et carte, puis le recrutement, la bataille personnalisée et les textes.
- Contrôle : clic droit sur votre clé → Find References. Le manuel de RPFM conseille ce contrôle après l'ajout d'une unité : il montre si elle est reliée partout où il faut (coûts, recrutement, factions).
- Diagnostics, Install, essai en bataille personnalisée.
| Table | À mettre | Clé | Liens |
|---|---|---|---|
main_units | la copie ; coûts, caste, ui_unit_group_land | unit | land_unit → land_units.key |
land_units | la copie ; caractéristiques, armes | key | man_entity → battle_entities ; primary_melee_weapon → melee_weapons ; short_description_text → unit_description_short_texts ; historical_description_text → unit_description_historical_texts |
unit_variants | name = votre clé (comme CA), faction vide (= toutes les factions), variant, unit_card | faction + unit | unit → land_units.key ; variant → variants.variant_name ; la carte : ui/ |
variants | seulement pour un modèle neuf : variant_filename | variant_name | → variantmeshes/ |
units_to_groupings_military_permissions | l'unité et le groupe militaire | les deux colonnes | military_group = factions.military_group (par exemple wh_main_group_bretonnia) |
building_units_allowed | building, unit, key (un nombre unique), faction vide | key | building → building_levels.level_name ; unit → main_units |
units_custom_battle_permissions | la faction de bataille (chez CA : wh_main_brt_bretonnia), general_unit = 0 | unit + faction + general_unit | → main_units, factions |
unit_description_short_texts, unit_description_historical_texts | seulement pour un texte propre à l'unité | key | citées par land_units |
Ce qui change, ce qui reste§
- À changer : la nouvelle clé
atlas_chevalierspartout où figure celle de CA (main_units.unit,main_units.land_unit,land_units.key,unit_variants.unitetunit_variants.name, les colonnesunitdes permissions et des bâtiments), et un nombre neuf dansbuilding_units_allowed.key(clic droit → Generate Ids, à partir d'un nombre de départ à vous, sous 2³¹). La clé deunit_variantsporte sur deux colonnes (faction+unit) : c'estunitqui change ;namen'est pas dans la clé, mais CA y met la clé de l'unité etunit_variants_colourss'y réfère : changez-le aussi. - À garder pour un premier essai :
variantetunit_cardde CA (wh_dlc07_brt_knights_errant: même modèle, même carte), le groupe militaire (wh_main_group_bretonnia), la faction de bataille (wh_main_brt_bretonnia, avecgeneral_unit= 0) et les quatre écuries (wh_main_brt_stables_2àwh_main_brt_stables_5). - Une clé de CA oubliée dans une de vos lignes : cette ligne concurrence celle de CA au lieu de s'ajouter.
RPFM a aussi un Unit Editor, expérimental selon son manuel ; ce guide suit la voie des tables.
Les tables facultatives de l'unité§
D'après le guide de Casualfield, selon ce que l'unité doit faire :
land_units_to_unit_abilites_junctions, pour ses capacités (la faute d'orthographe est de CA) ;unit_attributes_groupsetunit_attributes_to_groups_junctions;unit_set_to_unit_junctions;ui_unit_bullet_point_unit_overrides;allied_recruitment_unit_permissions;armed_citizenry_unit_groupsetbuilding_level_armed_citizenry_junctions, pour les garnisons ;cdir_military_generator_unit_qualities, pour l'IA ;units_to_exclusive_faction_permissions;faction_rebellion_units_junctions, pour les armées rebelles : le schéma de CA demande d'y reporter l'unité deunits_to_groupings_military_permissions, Casualfield la dit facultative.
Les textes de l'unité§
land_units_onscreen_name_<clé>: le nom (Casualfield donneunit_description_historical_texts_UNITKEY, mais le schéma du kit range le nom dansland_units.onscreen_name) ;unit_description_short_texts_text_<clé courte>etunit_description_historical_texts_text_<clé longue>, si l'unité a ses propres descriptions ;land_units_concealed_name_<clé>, facultatif.
Le minimum viable de l'unité§
- En bataille personnalisée :
main_units,land_units,unit_variants, la carte (PNG de 60 × 130 selon le Unit Card Guide du wiki ; non entrelacé comme celles de CA, relevé au patch 8.1),units_custom_battle_permissionset le nom en.loc. - En campagne, en plus :
units_to_groupings_military_permissionsetbuilding_units_allowed.
Les pièges de l'unité§
- Chaque niveau de bâtiment. CA liste l'unité à chaque niveau qui la permet, pas seulement à celui qui la débloque : ses Chevaliers errants figurent sur les écuries de niveau 2, 3, 4 et 5.
- La colonne
enableddebuilding_units_allowedn'interdit le recrutement qu'à trois conditions réunies : la paire bâtiment-unité existe ailleurs,factionest remplie, la case est décochée. units_custom_battle_permissionsagit aussi en campagne (wiki, page Units custom battle permissions tables) : la carte d'un héros dans le panneau des bâtiments en vient, et l'aperçu des unités touchées par un effet en tient compte.- Un champ obligatoire vide, un fichier nommé
data__: voir les diagnostics et les règles des packs.
Ce que l'unité demande au startpos§
Rien, sauf pour exister dès le tour 0 (start_pos_land_units, start_pos_settlement_garrisons, réserves de mercenaires) ; même alors, un script dispense du startpos : cm:create_force_with_general pose une armée, cm:add_unit_to_faction_mercenary_pool garnit une réserve.
Vérifier que l'unité marche§
- Diagnostics : ni référence invalide ni texte manquant.
- Bataille personnalisée avec la faction de bataille choisie : l'unité est dans la liste, avec sa carte et son nom ; en bataille, le modèle est entier.
- Campagne neuve : l'unité se recrute à chaque niveau de bâtiment listé.
Procédure 2 : ajouter une faction§
Une faction tient en quelques tables, mais elle n'existe sur la carte que par le startpos.
Avant de commencer : ce qu'il faut réunir§
Une campagne cible, une culture et une sous-culture existantes, les drapeaux, et le temps de générer un startpos.
La figure montre les tables d'une faction, et le chemin des tables de départ jusqu'au startpos.
Les étapes de la faction§
factions: copiez une faction voisine (wh_main_brt_bordeleaux) sous une clé neuve ; réglezsubculture,name_group,military_group,flags_path=ui\et les couleurs (ou Tools → Faction Painter).flags\ <clé> - Les drapeaux : un dossier
ui/comme ceux de CA :flags/ <clé>/ mon_24.png,mon_64.png,mon_256.png(24, 64 et 256 pixels),mon_64_glow.png,mon_icon.png,mon_rotated.png,mon_banner.dds(noms de fichiers de CA, « mon » compris, relevés au patch 8.1). Lesquels sont indispensables n'est pas confirmé : fournissez tout le jeu. faction_agent_permitted_subtypes: les lignes du modèle, qui disent quels seigneurs et héros la faction peut avoir (Bordeleaux en a 12 : general, colonel, minister, champion, wizard).- Les textes, puis les tables de départ du tableau, dans le kit (Dave) ou dans le pack (RPFM), plus
start_pos_character_to_settlementspour un chef en garnison etstart_pos_diplomacy. - Le startpos régénéré (voir « Ce qui exige un nouveau startpos »), rangé dans
campaigns/du pack ; puis Diagnostics, Install (sauf pour un pack ouvert depuis le dossier<campagne>/ startpos.esf data, qu'Install refuse), campagne neuve.
| Table | À mettre | Clé | Liens |
|---|---|---|---|
factions | la faction | key | subculture → cultures_subcultures ; name_group → names_groups ; military_group → groupings_military |
faction_agent_permitted_subtypes | les seigneurs et héros permis | faction + agent + subtype | → agent_subtypes |
start_pos_factions | ID (un entier neuf), faction, campaign, playable, is_major, cai_personality_group | ID | → factions, campaigns |
start_pos_regions | owning_faction = cet ID, faction_capital | region + campaign | → start_pos_factions.ID |
start_pos_characters | le chef : Type = general, subtype, ministerial_position = faction_leader, portrait_id, startx et starty, Name et Surname | ID | faction → start_pos_factions.ID ; Name → names.id ; portrait_id → campaign_character_art_sets |
start_pos_land_units | l'armée : unit_type, general, soldiers | id | → main_units ; → start_pos_characters.ID |
Les textes de la faction§
factions_screen_name_<clé>, factions_screen_adjective_<clé>, factions_screen_name_when_rebels_<clé>, factions_attack_desc_<clé> et factions_defend_desc_<clé> ; le nom du chef vient de names_name_<id>.
Le minimum viable de la faction§
factions, les drapeaux, faction_agent_permitted_subtypes, les textes, start_pos_factions, une région ou un chef avec son armée, et le startpos régénéré.
Les pièges de la faction§
- Le groupe d'IA. Chaque faction doit avoir un groupe d'IA (
cai_personality_group) qui contient une personnalité, sinon le jeu plante. Chez nous : le groupe qu'a la faction dans les Empires Immortels, à défaut celui des factions mineures de sa culture. - Les identifiants des tables de départ : des entiers uniques, sous 2³¹ (la limite d'un entier signé de 32 bits), qu'aucune ligne de CA n'emploie déjà (les siens sont dispersés jusqu'à près de 2³¹, patch 8.1).
- Les clés changent d'un jeu à l'autre (
wh_dlc05_brt_mini_bastonnedans Warhammer I,wh_main_brt_bastonnedans Warhammer III) : en portant des données, appariez-les sur la culture et la fin de la clé (le tutoriel du portage).
Ce que la faction demande au startpos§
Tout ce qui la fait exister : le wiki range parmi ce qui demande un startpos les factions jouables, comme celles qui apparaissent en cours de partie. Une fois la faction dans le startpos, le script prend le relais : cm:transfer_region_to_faction(region, faction), cm:create_force_with_general(...), ou le système Campaign Custom Starts de CA (régions, armées, diplomatie, effets).
Vérifier que la faction marche§
- Diagnostics propres ;
campaigns/est bien dans le pack, daté de la génération.<campagne>/ startpos.esf - Tables de départ passées par un pack de mod :
%APPDATA%\nomme l'enregistrement fautif, un à la fois.The Creative Assembly\ Warhammer3\ crash_report\ bad_mods_report.txt - Campagne neuve : la faction est sur la carte, dans sa région, avec son drapeau et son nom ; son chef mène son armée.
- Jouable, elle se choisit à l'écran de sélection, une fois la procédure 3 faite pour son chef.
Procédure 3 : ajouter un seigneur légendaire ou jouable§
Trois paliers : A, le seigneur existe dans la base de données ; B, un script le fait apparaître dans une faction existante ; C, il se choisit à l'écran « Nouvelle campagne », et ce palier seul demande un startpos. Prérequis : son unité de bataille (procédure 1), son modèle, son portrait.
Palier A : le seigneur dans la base de données§
agent_subtypes: copiez un seigneur voisin (wh_dlc07_brt_alberic) ;auto_generatedécoché pour un personnage unique,associated_unit_override= son unité,recruitment_category=legendary_lords,recruitable= 1 etcap=-1(comme Alberic). Laissezmagic_lorevide : rempli, aveclegendary_lords, il peut masquer les autres seigneurs légendaires de la réserve de recrutement (wiki, page Agent subtypes tables).- L'apparence :
campaign_character_art_sets→campaign_character_arts(unidunique) →agent_uniforms→variants. - Le portrait : Warhammer III le lit dans
ui/, rangé par art set (pour Alberic,portraits/ portholes/ portrait_settings*.bin portrait_settings__3.bin, vignette de 300 × 164 : relevés sur les fichiers de CA, patch 8.1). Dans RPFM : Create… → Create Portrait Settings, puis son éditeur. Chez CA,campaign_character_arts.portraitreste vide. - Les compétences :
character_skill_node_sets(colonneagent_subtype_key),character_skill_node_set_items(set,item),character_skill_nodes(tier= colonne de l'arbre,indent= ligne),character_skillspuischaracter_skill_level_to_effects_junctions,character_skill_node_linkspour les flèches. faction_agent_permitted_subtypes(la faction,general, le sous-type) etnames(de nouveauxidpour le prénom et le nom). Pour la bataille personnalisée :units_custom_battle_permissionsavecgeneral_unit= 1,general_portraitetgeneral_uniform.
| Table | À mettre | Clé | Liens |
|---|---|---|---|
agent_subtypes | le sous-type | key | associated_unit_override → main_units |
campaign_character_art_sets | l'art set | art_set_id | agent_subtype → agent_subtypes |
campaign_character_arts | l'apparence, par niveau | id | uniform → agent_uniforms |
agent_uniforms | les modèles de la carte et de la bataille | uniform_name | filename, battle_filename → variants |
character_skill_node_sets | l'arbre de compétences | key | agent_subtype_key → agent_subtypes |
character_skill_node_set_items | les nœuds de l'arbre | set + item | → character_skill_nodes |
character_skill_nodes | la place d'une compétence | key | character_skill_key → character_skills |
frontend_faction_leaders | la fiche de l'écran de sélection | key (libre) | agent_subtype_record, faction |
start_pos_starting_general_options | le lien du personnage à sa fiche | id | general → start_pos_characters.ID |
Les textes du seigneur§
agent_subtypes_onscreen_name_override_<sous-type>: le libellé du type (« Legendary Lord » pour Alberic) ; le nom propre vient denames_name_<id>;agent_subtypes_description_text_override_<sous-type>;character_skills_localised_name_<clé>,character_skills_localised_description_<clé>etcharacter_skill_node_sets_enc_title_<clé>;frontend_faction_leaders_frontend_description_<fiche>etfrontend_faction_leaders_localised_description_<fiche>; selon CA,localised_action_pointsetloading_screen_textne servent plus.
Le minimum viable du seigneur§
agent_subtypes, l'unité de bataille, l'art set, les arts, l'uniforme et la variante, faction_agent_permitted_subtypes, names, les textes, et un appel de script.
Palier B : le faire apparaître par script§
Sans startpos, un script peut ajouter le seigneur à une faction qui existe déjà. Ce squelette suit les signatures des scripts de CA, à tester :
-- squelette à tester : un seigneur dans la réserve d'une faction existante
cm:add_first_tick_callback(function()
if cm:is_new_game() then
cm:spawn_character_to_pool("wh_main_brt_bordeleaux", "names_name_<id>", "names_name_<id>",
"", "", 30, true, "general", "<sous-type>", true, "<art set>")
end
end)- Ordre des paramètres de
cm:spawn_character_to_pool: faction, prénom, nom, clan, autre nom, âge, masculin, type, sous-type, immortel, art set. Les noms s'écriventnames_name_<id>. cm:is_new_game(): l'appel n'a lieu qu'au début d'une partie neuve, pas à chaque chargement. Selon la documentation de CA, une partie est « neuve » si elle n'a été sauvegardée qu'une fois, pendant la génération du startpos : si un script a échoué pendant cette génération, une partie neuve peut passer pour une sauvegarde.- Avec une armée :
cm:create_force_with_general(faction, unités, région, x, y, "general", sous-type, prénom, clan, nom, autre nom, chef_de_faction, rappel), dont les unités sont, selon la documentation de CA, des clés deland_units(les mêmes que celles demain_unitschez CA). - Le script va dans
script/, que le jeu charge tout seul (tw-modding, Lua/First Script), sous un nom de fichier unique et préfixé : deux fichiers au même chemin dans deux packs ne se chargent pas tous les deux.campaign/ mod/
Palier C : le choisir à l'écran « Nouvelle campagne »§
start_pos_characters: le personnage (voir la procédure 2).start_pos_starting_general_options:general(le personnage) →frontend_faction_leader(sa fiche). Sans cette table, aucun seigneur n'est choisissable.- Une fiche
frontend_faction_leaders, à la clé libre :character_image(portrait de 85 × 115, relevé sur ceux de CA au patch 8.1),uniform(scène.csc),video,loading_screen_image,agent_subtype_record,faction. start_pos_factions.playable= 1, puis le startpos régénéré.
Les pièges du seigneur§
- Les tutoriels de Warhammer II. « Custom Lords & Heroes », sur tw-modding, vise Warhammer II : vérifiez chaque table dans le schéma de Warhammer III, où le lien entre un nœud et son arbre passe par
character_skill_node_set_items. - La colonne
tierreste sous 48 (wiki, page descharacter_skill_nodes). startpos_map: CA y met le plus souventdefaultou la clé de la fiche elle-même ; pour une fiche neuve, laissezdefault. Chez nous, une clé neuve dans ce champ a fait planter le chargement.- Un seigneur en garnison : sans réglage, son pointeur reste dans le coin de l'onglet Carte de l'écran de sélection ; renseignez
override_force_location_xetoverride_force_location_yde sa fiche (wiki, page Startpos). Ce sont des fractions : la position du personnage en hex, divisée par la largeur de la carte pour x et par sa hauteur pour y, d'après l'exemple du schéma de CA ;-1laisse la position par défaut (chez CA, Eltharion : 0,398 et 0,420).
Vérifier que le seigneur marche§
- Diagnostics : ni art set ni variante non déclarés, aucune référence invalide.
- Palier A : en bataille personnalisée, il se choisit comme général de sa faction, avec son portrait et son uniforme.
- Palier B : dans une partie neuve de la faction, il figure parmi les seigneurs à recruter, ou à la tête de son armée. Sinon, lisez le journal des scripts : un fichier
script/non vide dans un pack chargé fait écrire au jeu desenable_console_logging script_log_*.txt. - Palier C : à l'écran « Nouvelle campagne », sa fiche paraît avec son portrait et sa description, son pointeur est à sa place sur l'onglet Carte, et la partie commence avec lui.
Ce qui exige un nouveau startpos§
Le startpos est la sauvegarde du tour 0 : ce qu'il enregistre ne change que si on le régénère. Le schéma de l'Assembly Kit marque d'un indicateur, requires_startpos_reprocess, les colonnes qui y entrent : lisez-le dans TWaD_<table>.xml. Au patch 8.1, 42 tables en portent un :
- 25 des 29 tables
start_pos_*: factions, personnages, traits, objets, unités, régions, colonies, garnisons, diplomatie, options de seigneur, technologies, conditions de victoire… ; campaigns,campaign_maps,campaign_map_playable_areas,campaign_map_regions,campaign_map_attritions,campaign_map_masks_to_excluded_regions,regions,region_to_province_junctions,climatesetcampaign_ground_types;- sept tables de mercenaires :
mercenary_pools,mercenary_unit_groups,mercenary_pool_modifiers,mercenary_pool_to_groups_junctions,mercenary_pool_type_enums,faction_to_mercenary_set_junctionsetprovince_to_mercenary_set_junctions.
Unités, sous-types, apparences, compétences, textes et table factions se modifient en base de données seule. Trois voies produisent un startpos : Build Startpos de RPFM, l'action Process start pos de BOB, ou un user.script.txt écrit à la main. Chez nous, seule l'écriture à la main a marché : le guide des outils.
Build Startpos, dans RPFM§
Clic droit sur la racine du pack → Build Startpos fait générer le startpos par le jeu lui-même (dans la palette, Ctrl+Shift+P : « Build Startpos »). La 5.0.6 n'a plus de menu Special Stuff : les chemins « Special Stuff → … » des anciens tutoriels et du wiki valent pour les versions 4.
- Mettez dans le pack les tables
start_pos_*etcampaigns: créez-les, ou importez-les de l'Assembly Kit par le panneau Dependencies. La consigne affichée par RPFM réclame aussidb/, mais pas pour Warhammer III (code de RPFM ; journal des changements, version 4.3.11).victory_objectives.txt - Le pack ouvert doit être enregistré dans le dossier
datadu jeu (Save Pack As…, ou PackFile → Open From Data) : sinon RPFM refuse. - Clic droit sur la racine du pack → Build Startpos ; choisissez la campagne (la liste vient de votre table
campaigns). Ne cochez Process HLP and SPD data (les données de carte de l'IA,hlp_data.esfetspd_data.esf) que pour une carte neuve. Durée très variable : 16 s chez nous (400 × 440 hex) ; le tutoriel de carte de campagne de tw-modding compte moins d'une minute pourspd, environ cinq minutes pourhlpsur une carte moyenne et bien plus d'une heure sur une grande ; RPFM annonce 10 à 30 minutes. - Cliquez Build Startpos : le jeu se lance (Steam ouvert ; cliquez Play dans le lanceur si besoin), génère, puis se referme tout seul. Ne fermez pas RPFM entre-temps.
- Une fois le jeu refermé, cliquez Hit this when the game is closed : RPFM range
campaigns/(et, si l'option était cochée, les fichiers hlp et spd) dans le pack, et remet votre<campagne>/ startpos.esf user.script.txtcomme avant. - Enregistrez le pack (Ctrl+S), puis lancez une campagne neuve.
Une précision : on écrit les tables start_pos_* dans le kit (Dave) ou dans RPFM, mais le jeu ne lit pas les XML du kit ; pour la génération, elles doivent donc être dans un pack chargé (pour Build Startpos, le pack même qu'il génère). Une fois le startpos produit, retirez-les du pack publié : elles ne servent plus. Chez nous, le jeu valide à chaque lancement les tables start_pos_* d'un pack de mod, et %APPDATA%\ nomme alors l'enregistrement fautif.
RPFM pour une IA : le serveur MCP§
Depuis sa version 5, RPFM a un serveur, rpfm_server.exe. Il parle MCP (Model Context Protocol), la prise standard des assistants IA : une IA branchée dessus ouvre les packs, lit et écrit les tables, cherche partout et lance les diagnostics, dans sa propre session, séparée de la fenêtre de RPFM.
- Si la fenêtre de RPFM est ouverte, son serveur tourne déjà : elle le lance elle-même. Sinon, lancez
rpfm_server.exesans argument (il n'a pas d'option--help: il démarre aussitôt). Il écoute sur127.0.0.1:45127et s'arrête quand plus aucune session n'est ouverte. - Branchez votre assistant sur
http://(Streamable HTTP). Avec Claude Code :127.0.0.1:45127/ mcp claude mcp add --transport http rpfm http://. Tout client MCP compatible Streamable HTTP convient.127.0.0.1:45127/ mcp - Demandez-lui de lire d'abord la ressource « Initialization guide » du serveur : elle décrit l'ordre des appels (choisir le jeu, vérifier le schéma, ouvrir le pack).
set_game_selected (warhammer_3, rebuild_dependencies: true)
→ is_schema_loaded (sinon update_schemas)
→ open_packfiles (rend le pack_key)
→ open_pack_info (l'arbre du pack)
→ decode_packed_file (ex. db/land_units_tables/<fichier>)
→ fields_processed (la forme des lignes)
→ save_packed_file_from_view
→ diagnostics_check
→ save_packfile- Une session = un état (jeu choisi, packs ouverts) : tout faire dans la même session,
set_game_selecteden tête. Chaque connexion a sa session : l'IA ne voit pas les packs ouverts dans votre fenêtre. Par prudence, n'éditez pas le même pack des deux côtés. - Les lignes s'écrivent au format « traité » : appelez
fields_processedsur la définition avant de construire une ligne. Exemple : les colonnesr,g,bd'une région y deviennent une seule valeurColourRGB, en fin de ligne ; sinon l'enregistrement refuse (« expected a row with 6 fields, but we got a row with 8 »). - Les arguments complexes (
Definition,GlobalSearch,NewFile) se passent en chaîne JSON. Une table neuve :new_packed_fileavec{"DB": ["<fichier>", "land_units_tables", <version>]}. - Retirer une ligne du jeu :
add_keys_to_key_deletesinscrit ses clés dans une tabletwad_key_deletesdu pack (voir « Les règles des packs »). build_starpos(c'est l'orthographe de l'outil ; argumentspack_key,campaign_id,process_hlp_spd) répond « Success » en zéro seconde : cela veut dire « jeu lancé », pas « startpos construit ». Attendez que le jeu se referme, puis appelezbuild_starpos_postavec les mêmes arguments : il rangecampaigns/(et les fichiers hlp et spd) dans le pack et remet votre<campagne>/ startpos.esf user.script.txt; enfinsave_packfile. Pour abandonner :build_starpos_cleanup. Sans l'un des deux,user.script.txtgardequit_after_campaign_processing;et le jeu se refermera à chaque lancement.- Au 20 septembre 2026, le serveur de RPFM 5.0.6 exposait environ 150 outils, 11 invites et 11 ressources : packs, fichiers, tables, dépendances et schémas, recherche, diagnostics, optimiseur, traductions, startpos.
- Si CAIME (Campaign AI Map Editor), l'éditeur du Campaign Map Toolkit, lit sa base par RPFM, il lui faut
rpfm_cli.exe, celui d'une version 4 de RPFM (chez nous, la 4.2.7) : la version 5 ne le livre plus (le guide CAIME).
Pour une IA qui lit cette page§
Pour une IA qui aide à modder Total War: Warhammer III avec RPFM, l'essentiel en faits vérifiables, relevés sur RPFM 5.0.6 et le patch 8.1 du jeu (septembre 2026), relus pour la mise à jour 9.0 : à revérifier après une mise à jour (schémas, cache des dépendances ; et, si l'Assembly Kit sert aussi, les lignes ajoutées à raw_data\, que Steam réécrit).
- RPFM 5.0.6 : menus PackFile, MyMod, View, Game Selected, Tools, About (plus de Special Stuff). PackFile → Settings ; About → Check Updates (bouton des schémas) ; Game Selected → Generate Dependencies Cache ; MyMod → New MyMod (crée
<MyMod>\) ; Ctrl+Shift+F recherche globale ; panneau Diagnostics → Check PackFile. Clic droit sur la racine du pack : Install, Uninstall, Save Pack For Release…, Optimize PackFile, Build Startpos. Palette : Ctrl+Shift+P (actions), Ctrl+P (fichiers).warhammer_3\ <nom>.pack - Fichier de table :
db/, jamais<table>_tables/ <préfixe>_<nom> data__, ni chiffre final ni espace. Ajouter : clé neuve. Modifier une ligne du jeu : même clé, fichier dont le nom trie avantdata__(@,!). Retirer une ligne du jeu :twad_key_deletes(Warhammer III ≥ 6.3 ; outil MCPadd_keys_to_key_deletes), jamais une table recopiée ;mod_disabledn'existe que dans deux tables. - Clé de texte :
<table>_<colonne>_<clé>; les.locd'un mod valent pour toutes les langues ; jamais une clé du jeu. - Unité : même clé dans
main_units.unitetland_units.key;building_units_allowedà chaque niveau de bâtiment,key= entier unique (Generate Ids). - Faction :
start_pos_factions.IDunique sous 2³¹,cai_personality_grouprequis ; un seul startpos par campagne ; Empires Immortels et Royaumes du Chaos : Mixer. - Seigneur choisissable :
start_pos_starting_general_options+frontend_faction_leaders(startpos_map=default) +playable= 1 + startpos ; par script (à tester) :cm:spawn_character_to_pool, nomsnames_name_<id>. - Startpos à régénérer : tables dont un champ porte
requires_startpos_reprocess(lireTWaD_<table>.xml) ; le reste, en base seule. - MCP :
http://(Streamable HTTP), une session par connexion, séparée de la fenêtre ; ressource « Initialization guide » d'abord ;127.0.0.1:45127/ mcp set_game_selected(warhammer_3,rebuild_dependencies: true),is_schema_loaded(sinonupdate_schemas) ; lignes selonfields_processed; arguments complexes en chaîne JSON ;build_starpos(« Success » = jeu lancé) → fermeture du jeu →build_starpos_post→save_packfile; pour abandonner,build_starpos_cleanup. - Demandez à l'humain avant de lancer le jeu, de piloter l'écran ou de publier ; ne supprimez rien : rangez, seul l'humain supprime.
- Ni rétro-ingénierie ni contournement d'un outil de CA : quand un outil bute, un témoin, puis la communauté (Discord de CAIME, tw-modding).
Sources et liens§
- Manuel de RPFM, en particulier Datacores, Optimising a mod et MCP ; code de RPFM à l'étiquette v5.0.6 (emplacement des menus, Build Startpos, serveur) ; versions publiées ; RPFM 5.0.6 lui-même (libellés, journal des changements).
- Wiki tw-modding : RPFM For Dummies (écrit pour RPFM 2.3.2, menus anciens), RPFM Post-Setup for Beginners, Localisation, Submodding, Startpos, Lua/First Script, Example Scripts.
- Startpos des Empires Immortels et des Royaumes du Chaos : MIXER – Mixu's Unlocker, de Mixu.
- Unités : Creating Custom Units for WH3, de Casualfield (lien donné par tw-modding), Unit Card Guide, Building units allowed tables, Units custom battle permissions tables.
- Seigneurs : Custom Lords & Heroes (Warhammer II, par Nanu), Agent subtypes tables, Character skill nodes tables.
- Scripts, par Vandy : Campaign Custom Starts et campaign_manager.
- Données du jeu relues sur le patch 8.1 : schéma de l'Assembly Kit (
TWaD_*.xml,TExc_LocalisableFields.xml), lignes de CA prises pour modèles (Chevaliers errants, Alberic, Bordeleaux),lib_campaign_manager.lua. - Nos autres guides : les outils du moddeur, CAIME, Terry, BOB, modder avec une IA ; et l'atelier des moddeurs.
Questions fréquentes
Quelle version de RPFM utiliser pour Warhammer III ?
La 5.0.6, dernière stable au 24 septembre 2026, dont ce guide suit les menus. Le manuel en ligne décrit cette même version, parfois avec d'autres libellés que la fenêtre : la palette (Ctrl+Shift+P) retrouve l'action par son nom.
Mon mod fait planter le jeu au lancement : que vérifier ?
Les diagnostics de RPFM (Check PackFile). Une référence invalide est l'une des premières causes de plantage au lancement, et un champ obligatoire vide peut faire planter le jeu, souvent sans message d'erreur.
Faut-il un nouveau startpos pour ajouter une unité ?
Non. Seules les armées et garnisons de départ et les réserves de mercenaires l'exigent, et un script peut s'en charger (cm:create_force_with_general, cm:add_unit_to_faction_mercenary_pool).
Peut-on ajouter une faction sans toucher au startpos ?
Non : tout ce qui la fait exister passe par le startpos, dont chaque campagne n'a qu'un exemplaire, qu'un mod remplace en entier. Votre mod sera donc incompatible avec tout autre mod de startpos de cette campagne. Pour les Empires Immortels et les Royaumes du Chaos, demandez plutôt l'ajout de votre faction à Mixer, le mod de startpos de la plupart des joueurs, puis faites le reste par script.
Pourquoi mon unité n'apparaît-elle pas en bataille personnalisée ?
Il lui faut main_units, land_units, unit_variants, sa carte (PNG de 60 × 130), son nom en .loc et une ligne units_custom_battle_permissions pour la faction de bataille, avec general_unit à 0.
Comment rendre un seigneur choisissable à l'écran de nouvelle campagne ?
Le personnage dans start_pos_characters, une ligne start_pos_starting_general_options qui le relie à une fiche frontend_faction_leaders (startpos_map à default), start_pos_factions.playable à 1, puis un startpos régénéré.
Mes textes remplacent ceux du jeu dans toutes les langues : pourquoi ?
Le jeu charge les .loc d'un mod quelle que soit la langue du joueur. N'ajoutez que des clés neuves, et faites un pack par langue.
Comment brancher une IA sur RPFM ?
Si la fenêtre de RPFM est ouverte, son serveur tourne déjà ; sinon, lancez rpfm_server.exe (RPFM 5). Ajoutez ensuite le serveur MCP http:// à votre assistant ; avec Claude Code : claude mcp add --transport http rpfm http://.
Mon mod n'apparaît pas dans le lanceur : pourquoi ?
Vérifiez qu'il est installé dans le dossier data du jeu et qu'il est de type Mod : clic droit sur la racine du pack, Change PackFile Type, Mod. Dans le même sous-menu, la case Index Includes Timestamp doit être décochée : selon RPFM, un pack qui l'a cochée n'apparaît pas dans le lanceur officiel.
Ma modification d'une unité du jeu ne change rien : pourquoi ?
Votre fichier de table trie après celui du jeu (data__) : c'est donc la ligne du jeu qui gagne. Commencez le nom de votre fichier par @ ou !, puis réinstallez le pack.
Des tables sont signalées Outdated après une mise à jour du jeu : que faire ?
Mettez à jour les schémas (About, Check Updates), puis le cache (Game Selected, Generate Dependencies Cache). Ensuite, clic droit sur chaque table signalée, Update Table, et relisez les colonnes neuves : RPFM y met des valeurs par défaut.
Comment retirer une ligne du jeu ?
Avec la table twad_key_deletes (Warhammer III, depuis le patch 6.3), jamais en recopiant la table du jeu : créez une fois twad_key_deletes_tables dans votre pack, sélectionnez les lignes dans la table du jeu, puis clic droit, Add Selection to Key Deletes. Ne retirez pas une ligne encore citée par une autre table : le jeu planterait.
Le jeu se ferme dès son lancement : pourquoi ?
Une ligne quit_after_campaign_processing; est restée dans user.script.txt (%APPDATA%\) : une génération de startpos a été interrompue avant sa fin. Retirez la ligne ou remettez le fichier d'avant. Avec Build Startpos, cliquez toujours Hit this when the game is closed, qui le remet.
Ce guide en texte brut (Markdown), pour les IA et la lecture hors ligne
Ce guide est communautaire
Une erreur, un piège vécu, une astuce ou un outil plus récent : dites-le, et chaque correction sera vérifiée, puis ajoutée avec sa source.
Proposer une idée