Fix: Correction complète des mappings de compétences Traveller → mgt2e

- Utilisation des clés internes EXACTES du système mgt2e (basé sur fr.json)
- Pilot-Spacecraft → pilot.spacecraft (au lieu de pilot.vaisseaux_spatiaux)
- Pilot-Small Craft → pilot.smallCraft (au lieu de pilot.petits_vaisseaux)
- Electronics-Sensors → electronics.sensors (au lieu de electronics.capteurs)
- Gunner-Turrets → gunner.turret (au lieu de guncombat.tourelles)
- Engineer-MDrive → engineer.mDrive (au lieu de engineer.propulsion_manoeuvre)
- Athletics-Strength → athletics.strength (au lieu de athletics.force)
- Art-Acting → art.performer (au lieu de art.jeu_acteur)
- Toutes les spécialités utilisent maintenant le format camelCase sans accents

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
2026-05-28 01:02:41 +02:00
parent d8c61458ea
commit b6a4148829
5 changed files with 42 additions and 46 deletions
Binary file not shown.
+3
View File
@@ -52,3 +52,6 @@
2026/05/28-00:52:05.605289 7f3e6effd6c0 Level-0 table #73: started
2026/05/28-00:52:05.629208 7f3e6effd6c0 Level-0 table #73: 1856591 bytes OK
2026/05/28-00:52:05.635297 7f3e6effd6c0 Delete type=0 #70
2026/05/28-00:53:23.184161 7f3e6effd6c0 Level-0 table #75: started
2026/05/28-00:53:23.202618 7f3e6effd6c0 Level-0 table #75: 1901920 bytes OK
2026/05/28-00:53:23.208730 7f3e6effd6c0 Delete type=0 #72
Binary file not shown.
+39 -46
View File
@@ -50,50 +50,45 @@ const MODULE_ID = 'mgt2-compendium-amiral-denisov';
* @type {Object<string, string>}
*/
// Mapping des compétences Traveller vers MgT2e
// IMPORTANT: MgT2e utilise des noms de compétences EN MINUSCULES (ex: pilot, electronics, gunner)
// basé sur les références dans npcHelper.js et mgt2eSkills.js
// Format: 'Compétence-Traveller' -> 'competence_mgt2e' ou 'competence_mgt2e.specialite'
// Les spécialités sont en minuscules avec underscores
// Si une spécialité n'existe pas dans MgT2e, setSkillLevel appliquera le niveau à la compétence parente
// IMPORTANT: Utiliser les clés internes EXACTES du système mgt2e (ex: pilot, spacecraft, smallCraft)
// Basé sur le fichier fr.json du système : /home/morr/work/foundryvtt/traveller-foundryvtt/mgt2e/lang/fr.json
// Format: 'Compétence-Traveller' -> 'competence_mgt2e.specialite_mgt2e' (en camelCase, sans accents)
// Les clés sont en anglais, les libellés français sont gérés par la localisation
const SKILL_MAPPING = {
// Pilotage - MgT2e a une compétence "pilot" (confirmé par les références)
// Corrigé : Small Craft = Petits vaisseaux (pas Aéronef léger)
// Vaisseaux spatiaux au pluriel (correspond au nom dans mgt2e)
'Pilot-Spacecraft': 'pilot.vaisseaux_spatiaux',
'Pilot-Small Craft': 'pilot.petits_vaisseaux',
// Pilotage
'Pilot-Spacecraft': 'pilot.spacecraft',
'Pilot-Small Craft': 'pilot.smallCraft',
'Pilot': 'pilot',
'Flyer': 'pilot.aeronef_atmospherique',
'Flyer': 'flyer',
// Astrogation et Navigation (compétences séparées)
// Astrogation et Navigation
'Astrogation': 'astrogation',
'Navigation': 'navigation',
// Électronique - MgT2e a une compétence "electronics" (confirmé par npcHelper.js:34)
// Révisé : "computers" → "informatique" pour alignement avec le libellé FR
'Electronics-Sensors': 'electronics.capteurs',
'Electronics-Communications': 'electronics.communications',
'Electronics-Computers': 'electronics.informatique',
// Électronique
'Electronics-Sensors': 'electronics.sensors',
'Electronics-Communications': 'electronics.comms',
'Electronics-Computers': 'electronics.computers',
'Electronics': 'electronics',
'Computers': 'electronics',
'Communications': 'electronics',
// Artillerie - MgT2e utilise "gunner" ou "guncombat" ?
// Dans npcHelper.js:37 on voit "guncombat", donc utilisons ça
'Gunner-Turrets': 'guncombat.tourelles',
'Gunner-Screens': 'guncombat.boucliers',
'Gunner': 'guncombat',
// Artillerie
'Gunner-Turrets': 'gunner.turret',
'Gunner-Screens': 'gunner.screen',
'Gunner': 'gunner',
// Mécanique
'Mechanic': 'mechanic',
// Ingénierie - MgT2e utilise probablement "engineer"
'Engineer-MDrive': 'engineer.propulsion_manoeuvre',
'Engineer-Power': 'engineer.energie',
'Engineer-JDrive': 'engineer.propulsion_saut',
'Engineer-Life Support': 'engineer.support_vie',
// Ingénierie
'Engineer-MDrive': 'engineer.mDrive',
'Engineer-Power': 'engineer.power',
'Engineer-JDrive': 'engineer.jDrive',
'Engineer-Life Support': 'engineer.lifeSupport',
'Engineer': 'engineer',
// Social et Administration - tous confirmés dans npcHelper.js
// Social et Administration
'Steward': 'steward',
'Carouse': 'carouse',
'Persuade': 'persuade',
@@ -106,25 +101,25 @@ const SKILL_MAPPING = {
'Diplomat': 'diplomat',
// Sciences
'Science-Biology': 'science.biologie',
'Science-Chemistry': 'science.chimie',
'Science-Biology': 'science.biology',
'Science-Chemistry': 'science.chemistry',
'Science': 'science',
// Combat - "guncombat" confirmé dans npcHelper.js:37
// Combat
'Gun Combat': 'guncombat',
'Heavy Weapons': 'heavyweapons',
// Mêlée - "melee" confirmé dans npcHelper.js:37
'Melee-Unarmed': 'melee.sans_arme',
'Melee-Blade': 'melee.arme_blanche',
// Mêlée
'Melee-Unarmed': 'melee.unarmed',
'Melee-Blade': 'melee.blade',
'Melee': 'melee',
// Athlétisme - probablement "athletics"
// Révisé : "dexterite" → "dextérité" (avec accent)
'Athletics-Strength': 'athletics.force',
'Athletics-Dexterity': 'athletics.dextérité',
// Athlétisme
'Athletics-Strength': 'athletics.strength',
'Athletics-Dexterity': 'athletics.dexterity',
'Athletics': 'athletics',
// Tactique et Exploration - "tactics" et "recon" confirmés dans npcHelper.js
// Tactique et Exploration
'Tactics': 'tactics',
'Recon': 'recon',
'Survival': 'survival',
@@ -133,17 +128,15 @@ const SKILL_MAPPING = {
'Deception': 'deception',
'Investigate': 'investigate',
// Conduite - probablement "drive"
// Révisé : "gravite" → "gravité" (avec accent)
'Drive-Grav': 'drive.gravité',
// Conduite
'Drive-Grav': 'drive.grav',
'Drive': 'drive',
// Équipement - probablement "vaccsuit" ou similaire
// Équipement
'Vacc Suit': 'vaccsuit',
// Art - probablement "art"
// Révisé : "jeu_d_acteur" → "jeu_acteur" (plus naturel)
'Art-Acting': 'art.jeu_acteur',
// Art
'Art-Acting': 'art.performer',
'Art-Instrument': 'art.instrument',
'Art': 'art'
};