====== Documentation des caractéristiques ====== ====== 1. Orienté joueur ====== Les caractéristiques définissent les aptitudes innées de votre personnage. Elles influencent les compétences, la santé et les interactions. Elles évoluent avec les niveaux et peuvent être redistribuées à la création. ====== Caractéristiques disponibles ====== * **FOR (Force)** : Puissance physique pour les attaques de mêlée et la manipulation d'objets lourds. Augmente les dégâts des armes de contact. * Impact : Dégâts bagarre/armes mêlée, port d'équipement lourd. * **DEF (Défense)** : Résistance physique aux attaques. Réduit les dégâts reçus et améliore l'esquive. * Impact : Réduction dégâts (DEF/10), seuil esquive. * **TAI (Taille)** : Dimension physique affectant la présence et les dégâts. Influence les interactions sociales et les attaques. * Impact : Dégâts supplémentaires, intimidation. * **INT (Intelligence)** : Capacité mentale pour la magie et la résolution de problèmes. Améliore les sorts et les mini-jeux. * Impact : Puissance magie, seuil Jeu. * **DEX (Dextérité)** : Précision et agilité pour les actions fines. Essentielle pour les armes à distance et la magie. * Impact : Précision tirs, sorts, lancer. * **LUK (Chance)** : Influence des événements aléatoires. Améliore l'esquive et les jets de chance. * Impact : Bonus esquive (LUK/5), mini-jeux. ====== Évolution et utilisation ====== * Valeurs initiales : Tirées aux dés (3d6 généralement), fixes par race au niveau 0. * Redistribution : 5 points max à la création (±2 par carac). * Progression : Points distribués par niveau, influencent les compétences associées. ====== 2. Orienté technique ====== Cette section détaille l'implémentation technique des caractéristiques. ====== Structure de données ====== ====== Table `races_caracs` ====== * Colonnes : race, niveau, FOR, DEF, TAI, INT, DEX, LUK. * Évolution : Valeurs fixes par race et niveau. ====== Calculs dans le code ====== * `caracs()` : Méthode retournant les valeurs actuelles (base + bonus - malus). * `pv_current` : PV actuels = PV_base + bonus - malus. * `pv_max` : PV_base + bonus. ====== Formules techniques ====== ====== Valeurs de base ====== * Niveau 0 : Fixes par race (ex: FOR Humain = 3d6, LUK = 3d6 conservé). * Progression : Ajout par niveau selon table `races_caracs`. ====== Impact sur compétences ====== * **Bagarre/Arme mêlée** : + FOR * **Arme distance** : + DEX * **Magie** : + INT + DEX * **Esquive** : + DEF + (LUK/5) * **Lancer** : + DEX * **Jeu** : + INT + DEX + LUK ====== Réduction dégâts ====== * `floor(DEF / 10)` + armure équipée. ====== Implémentation dans le code ====== ====== Classes principales ====== * `Game_personnage` : Gestion caracs via `caracs()` et `setCaracs()`. * `Game_attaque` : Utilisation dans calculs jets. ====== Méthodes clés ====== * `updatePV()` : Modification PV avec vérification min/max. * `updateStats()` : Mise à jour statistiques (nb_attaque, etc.). ====== Gestion évolution ====== * Redistribution : Vérifiée serveur (points équilibrés, limites respectées). * XP : Courbe quadratique douce pour lisser progression. ====== Équilibrage et options ====== * Races : Profils orientés (physique vs mental). * Logs : Suivi modifications dans `application/logs/`. * Tests : Validation valeurs et calculs. ====== Points à améliorer ====== * Système de buffs/debuffs temporaires étendu. * Interface redistribution plus intuitive. * Calculs dynamiques pour équipements.