Files
fvtt-hamalron/module/config/system.mjs
T
uberwald 68b3079da8 refacto: harmonisation du système avec les règles Hamalron JDR
Corrections majeures :
- HamalronTirageTarot extends Roll (évaluation des jets fonctionnelle)
- Correction du nom de classe Langue (HamalronFaction -> HamalronLangue)
- Création du template tab-navigation.hbs manquant
- Type acteur 'character' -> 'personnage' dans _preCreate

Types d'items corrigés (anglais -> français) :
- weapon -> arme, armor -> armure, equipment -> equipement
- Suppression des types inexistants (deal, malefica, ritual, perk)

Modèles :
- cost -> cout (armure, equipement)
- Tarot : default -> initial
- Sortilege : LOCALIZATION_PREFIXES corrigé
- Constantes CHOICE_ADVANTAGES_DISADVANTAGES et ATTACK_MODIFIERS ajoutées
- ATTACK_MODIFIERS supprimé (plus utilisé)

Templates alignés sur les modèles réels :
- enemy-trait : suppression champs manquants (trauma, stats, domain...)
- personnage-equipement : champs alignés sur arme/armure/equipement
- personnage-sortileges : suppression domain/level/rituals
- enemy-main : suppression stats et flavorText
- base-actor : suppression mortality, toChat limité aux tarots

Jets de compétence :
- Égalité = réussite (>= au lieu de >, conforme aux règles p.155)
- Comparaison robuste des cartes de succès (via String())

Le Mat :
- Les autres joueurs peuvent renouveler leur main (règle p.151)

findTarotItem : recherche dans game.items puis compendiums
await manquants ajoutés sur saveDeckState()
AGENTS.md créé
2026-07-10 18:52:20 +02:00

148 lines
4.9 KiB
JavaScript

export const SYSTEM_ID = "fvtt-hamalron"
export const ASCII = `
, _
/| | | |
|___| __, _ _ _ __, | | ,_ __ _ _
| |\/ | / |/ |/ | / | |/ / | / \_/ |/ |
| |/\_/|_/ | | |_/\_/|_/|__/ |_/\__/ | |_/
`
export const TAROT_SYMBOLES = {
"coupe": { id: "coupe", label: "Coupe" },
"epee": { id: "epee", label: "Epée" },
"denier": { id: "denier", label: "Denier" },
"baton": { id: "baton", label: "Bâton" },
}
export const TAROT_TYPES = {
"atout": { id: "atout", label: "Atout" },
"figure": { id: "figure", label: "Figure" },
"numéro": { id: "numéro", label: "Numéro" },
}
export const TAROT_VALEURS = {
"11": { id: "11", label: "11", value: 11 },
"12": { id: "12", label: "12", value: 12 },
"13": { id: "13", label: "13", value: 13 },
"14": { id: "14", label: "14", value: 14 },
"15": { id: "15", label: "15", value: 15 },
"16": { id: "16", label: "16", value: 16 },
"17": { id: "17", label: "17", value: 17 },
"18": { id: "18", label: "18", value: 18 },
"19": { id: "19", label: "19", value: 19 },
"20": { id: "20", label: "20", value: 20 },
"21": { id: "21", label: "21", value: 21 },
"22": { id: "22", label: "22", value: 22 },
"roi": { id: "roi", label: "Roi", value: 14 },
"reine": { id: "reine", label: "Reine", value: 13 },
"cavalier": { id: "cavalier", label: "Cavalier", value: 12 },
"valet": { id: "valet", label: "Valet", value: 11 },
"lemat": { id: "lemat", label: "Le Mat", value: 23 },
"10": { id: "10", label: "10", value: 10 },
"9": { id: "9", label: "9", value: 9 },
"8": { id: "8", label: "8", value: 8 },
"7": { id: "7", label: "7", value: 7 },
"6": { id: "6", label: "6", value: 6 },
"5": { id: "5", label: "5", value: 5 },
"4": { id: "4", label: "4", value: 4 },
"3": { id: "3", label: "3", value: 3 },
"2": { id: "2", label: "2", value: 2 },
"1": { id: "1", label: "1", value: 1 },
}
export const DIFFICULTY_CHOICES = {
"soustension_oppose": { id: "soustension_oppose", label: "Sous Tension ou Opposé", standard: null, "soustension": null },
"tresfacile": { id: "tresfacile", label: "Très Facile", standard: 3, "soustension": -4 },
"facile": { id: "facile", label: "Facile", standard: 5, "soustension": -2 },
"moyenne": { id: "moyenne", label: "Moyenne", standard: 7, "soustension": 0 },
"difficile": { id: "difficile", label: "Difficile", standard: 10, "soustension": 3 },
"tresdifficile": { id: "tresdifficile", label: "Très Difficile", standard: 13, "soustension": 6 },
"heroique": { id: "heroique", label: "Héroïque", standard: 16, "soustension": 9 },
}
export const WEAPON_TYPES = {
"melee": { id: "melee", label: "Mêlée" },
"tir": { id: "tir", label: "Tir" },
}
export const COMPETENCE_TYPES = {
"commune": { id: "commune", label: "Commune" },
"faction": { id: "faction", label: "Faction" },
"peuple": { id: "peuple", label: "Peuple" },
}
export const ENEMY_TYPES = {
"mook": { id: "mook", label: "Sbire" },
"elite": { id: "elite", label: "Élite" },
"boss": { id: "boss", label: "Boss" },
}
export const SORTILEGE_CATEGORIES = {
"malefica": { id: "malefica", label: "Maléfica" },
"ritual": { id: "ritual", label: "Rituel" },
}
export const NIVEAU_COMPETENCES = {
"inexperimente": {
"name": "Inexpérimenté",
"id": "inexperimente",
"abreviation": "I",
"modificateur": 0,
"cout_acquisition_points": 0,
"description": "Niveau de départ par défaut pour toutes les compétences non apprises."
},
"amateur": {
"name": "Amateur",
"id": "amateur",
"abreviation": "A",
"modificateur": 1,
"cout_acquisition_points": 1,
"description": "Le personnage possède des notions de base dans la compétence."
},
"competent": {
"name": "Compétent",
"id": "competent",
"abreviation": "C",
"modificateur": 3,
"cout_acquisition_points": 3,
"cout_progression_depuis_amateur": 2,
"description": "Le personnage maîtrise la compétence et résiste mieux aux actions adverses."
},
"expert": {
"name": "Expert",
"abreviation": "E",
"modificateur": 5,
"cout_acquisition_points": 5,
"cout_progression_depuis_competent": 2,
"description": "Le personnage est un maître absolu dans son domaine."
}
}
export const CHOICE_ADVANTAGES_DISADVANTAGES = {
"0": { id: "0", label: "Aucun" },
"1": { id: "1", label: "1" },
"2": { id: "2", label: "2" },
"3": { id: "3", label: "3" },
}
/**
* Include all constant definitions within the SYSTEM global export
* @type {Object}
*/
export const SYSTEM = {
id: SYSTEM_ID,
TAROT_SYMBOLES: TAROT_SYMBOLES,
DIFFICULTY_CHOICES: DIFFICULTY_CHOICES,
TAROT_TYPES: TAROT_TYPES,
TAROT_VALEURS: TAROT_VALEURS,
WEAPON_TYPES: WEAPON_TYPES,
COMPETENCE_TYPES: COMPETENCE_TYPES,
ENEMY_TYPES: ENEMY_TYPES,
SORTILEGE_CATEGORIES: SORTILEGE_CATEGORIES,
NIVEAU_COMPETENCES: NIVEAU_COMPETENCES,
CHOICE_ADVANTAGES_DISADVANTAGES,
ASCII
}