Refine RNG simulator layout and simulation stats
All checks were successful
Deploy Sokko G / deploy (push) Successful in 18s

This commit is contained in:
Shinuwa 2026-09-05 00:19:08 +02:00
parent 055fb78d60
commit f8231c748f
11 changed files with 825 additions and 394 deletions

View file

@ -4771,20 +4771,21 @@
{
"id": "fnn88zy",
"label": "Elten Piece",
"rate": "0.000004"
"rate": "0.000004",
"costPerDraw": "150",
"multiplier": 320,
"occurrenceValue": 60,
"occurrenceUnit": "perHour"
},
{
"id": "pen-eklecta",
"label": "Pen Eklecta",
"rate": "20.02"
"rate": "20.02",
"costPerDraw": "12.5"
}
],
"settings": {
"multiplier": 320,
"simulationDraws": 100000,
"perHour": 60,
"perDay": 0,
"perMonth": 0
"simulationDraws": 100000
}
},
"m9": {

View file

@ -498,8 +498,17 @@
"icon": "clover",
"title": "Enregistrer un taux",
"preview": {
"kind": "textButton",
"label": "%"
"kind": "iconButton",
"icon": "add"
}
},
{
"group": "Taux",
"icon": "edit",
"title": "Modifier un taux",
"preview": {
"kind": "iconButton",
"icon": "edit"
}
},
{
@ -524,26 +533,26 @@
"features": [
{
"title": "Taux sauvegardés",
"text": "Chaque taux possède un libellé et garde la précision saisie, même pour des probabilités très faibles.",
"text": "Chaque taux possède un libellé, un coût optionnel et garde la précision saisie, même pour des probabilités très faibles.",
"details": [
"La saisie par défaut utilise trois décimales, mais le stockage conserve la chaîne exacte normalisée.",
"Un taux comme 0.000004% reste disponible tel quel pour les calculs et les simulations.",
"La sélection active permet de comparer rapidement plusieurs drops ou chances de réussite."
"Le coût d'un tirage permet d'estimer le coût moyen ou simulé sans imposer d'unité."
]
},
{
"title": "Lecture probabiliste",
"text": "L'outil affiche la moyenne d'essais avant réussite, le temps moyen selon votre rythme et les paliers de chance cumulée.",
"text": "L'onglet Calculs affiche la moyenne d'essais avant réussite, le temps moyen selon votre rythme, les coûts et les paliers de chance cumulée.",
"details": [
"Les occurrences par heure, jour et mois sont indépendantes pour s'adapter à différents usages.",
"Les paliers 50%, 90%, 95% et 99% donnent un repère concret sur la variance.",
"La simulation agrège réussites, échecs et pire série d'échecs sans stocker chaque tirage."
"L'onglet Simulation agrège réussites, échecs, pire série d'échecs et coûts sans stocker chaque tirage."
]
}
],
"importFormat": {
"text": "Le format texte contient les sections [rates] et [settings]. Les taux sont exprimés en pourcentage.",
"example": "@activeRateId: fnn88zy\n[rates]\n- Elten Piece | rate=0.000004 | active=true | multiplier=320 | perHour=60 | perDay=0 | perMonth=0\n- Pen Eklecta | rate=20.02 | multiplier=0 | perHour=0 | perDay=0 | perMonth=0\n\n[settings]\nsimulationDraws: 1000"
"text": "Le format texte contient les sections [rates] et [settings]. Les taux sont exprimés en pourcentage et le coût d'un tirage reste optionnel.",
"example": "@activeRateId: fnn88zy\n[rates]\n- Elten Piece | rate=0.000004 | active=true | costPerDraw=150 | multiplier=320 | occurrenceValue=60 | occurrenceUnit=perHour\n- Pen Eklecta | rate=20.02 | costPerDraw=12.5 | multiplier=0\n\n[settings]\nsimulationDraws: 1000"
}
},
"images": {
@ -2106,6 +2115,8 @@
"labelLabel": "Libellé",
"labelPlaceholder": "Drop rare",
"rateLabel": "Taux (%)",
"costPerDrawLabel": "Coût d'un tirage",
"costPerDrawPlaceholder": "Optionnel",
"rateLabelRequired": "Libellé requis.",
"rateInvalid": "Taux invalide. Utilisez une valeur supérieure à 0 et inférieure ou égale à 100.",
"addRateButton": "Ajouter",
@ -2113,21 +2124,29 @@
"cancelButton": "Annuler",
"deleteTitle": "Supprimer",
"noActiveRateTitle": "Aucun taux actif",
"activeRateLabel": "Taux brut",
"effectiveRateLabel": "Taux final",
"statsTabLabel": "Calculs",
"simulationTabLabel": "Simulation",
"simulationDrawsLabel": "Tirages simulés",
"perHourLabel": "Par heure",
"perDayLabel": "Par jour",
"perMonthLabel": "Par mois",
"probabilitySectionTitle": "Probabilités avec multiplicateur",
"multiplierLabel": "Multiplicateur (%)",
"clearMultiplierButton": "Réinitialiser le multiplicateur",
"averageDrawsLabel": "Moyenne avant réussite après multiplicateur",
"simulationChanceLabel": "Chance sur les tirages saisis après multiplicateur",
"averageDrawsLabel": "Moyenne avant réussite",
"simulationChanceLabel": "Chance sur les tirages saisis",
"simulationChanceWithoutMultiplierLabel": "Chance sur les tirages saisis sans multiplicateur",
"averageCostLabel": "Coût moyen avant réussite",
"averageTimeTitle": "Temps moyen avant réussite",
"periodLabel": "Période",
"averageTimeLabel": "Temps moyen",
"occurrenceCountLabel": "Nombre d'occurrences",
"hourTimeLabel": "En heures",
"dayTimeLabel": "En jours",
"monthTimeLabel": "En mois",
"chanceTargetsTitle": "Tirages pour atteindre une chance cumulée",
"chanceLabel": "Chance",
"costLabel": "Coût",
"drawsUnit": "tirages",
"hoursUnit": "h",
"daysUnit": "j",
@ -2140,9 +2159,16 @@
"successesLabel": "Réussites",
"failsLabel": "Fails",
"observedRateLabel": "Taux de réussite",
"expectedSuccessesLabel": "Réussites attendues",
"multiplierShortLabel": "Bonus",
"longestFailStreakLabel": "Pire série",
"importPlaceholder": "@activeRateId: fnn88zy\n[rates]\n- Elten Piece | rate=0.000004 | active=true | multiplier=320 | perHour=60 | perDay=0 | perMonth=0\n- Pen Eklecta | rate=20.02 | multiplier=0 | perHour=0 | perDay=0 | perMonth=0\n\n[settings]\nsimulationDraws: 1000",
"longestFailStreakLabel": "Pire série d'échec",
"longestSuccessStreakLabel": "Réussite consécutive",
"firstSuccessCostLabel": "Coût de la 1ere réussite",
"costPerSuccessLabel": "Coût moyen/réussite",
"luckySimulationLabel": "Au-dessus",
"neutralSimulationLabel": "Dans la cible",
"unluckySimulationLabel": "Sous l'attendu",
"importPlaceholder": "@activeRateId: fnn88zy\n[rates]\n- Elten Piece | rate=0.000004 | active=true | costPerDraw=150 | multiplier=320 | occurrenceValue=60 | occurrenceUnit=perHour\n- Pen Eklecta | rate=20.02 | costPerDraw=12.5 | multiplier=0\n\n[settings]\nsimulationDraws: 1000",
"importOpenButton": "Importer du texte",
"exportOpenButton": "Exporter en format texte",
"importModalTitle": "Importer un simulateur de chance",