v2.5.1 : potions - plus de niveau 0 (minimum 1)

PufPuff passe de potRand(0,2) a potRand(1,3) : le niveau 0 affichait
des formules absurdes (ATT -0 D3, VUE -(0+1), PV -2D3 si 0>=2). Biskot
(effet fixe, plage --) n'affiche plus de niveau du tout au lieu de
niv. 0. Table treasures.js pufPuff 0 a 2 -> 1 a 3.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
perco
2026-06-13 18:02:43 +02:00
co-authored by Claude Opus 4.8
parent 07b81b6b3f
commit 375bb0a778
4 changed files with 12 additions and 4 deletions
+5
View File
@@ -234,6 +234,11 @@ non affilié au jeu original de Mountyhall SARL.
## Versions ## Versions
- **2.5.1** (2026-06-13) — Correction des niveaux de potions : **le niveau 0
n'existe plus** (minimum 1). PufPuff passe de « 0 à 2 » à **« 1 à 3 »** (le
niveau 0 affichait des formules absurdes : `ATT 0 D3`, `VUE (0+1)`,
`PV 2D3 si 0 ≥ 2`). Le Biskot, à effet **fixe**, n'affiche plus de niveau
du tout (au lieu de « niv. 0 »).
- **2.5.0** (2026-06-13) — **Cumul systématique des bonus physiques et - **2.5.0** (2026-06-13) — **Cumul systématique des bonus physiques et
magiques.** On lance les dés, puis on ajoute **toujours les deux** bonus : magiques.** On lance les dés, puis on ajoute **toujours les deux** bonus :
le physique (équipement) *et* le magique (potions/parchemins + équipement le physique (équipement) *et* le magique (potions/parchemins + équipement
+1 -1
View File
@@ -4,7 +4,7 @@
"use strict"; "use strict";
const APP_VERSION = "2.5.0"; const APP_VERSION = "2.5.1";
/* Alpha : maîtrise initiale haute pour les tests. Remettre 15 % / 15 % à la v1.0 officielle. */ /* Alpha : maîtrise initiale haute pour les tests. Remettre 15 % / 15 % à la v1.0 officielle. */
const START_COMP_PCT = 90; const START_COMP_PCT = 90;
+5 -2
View File
@@ -296,7 +296,7 @@ const POTION_DEFS = {
pufPuff: { pufPuff: {
name: "PufPuff", emoji: "💨", color: "#b8b8b8", name: "PufPuff", emoji: "💨", color: "#b8b8b8",
duration: 3, duration: 3,
rollPower: () => potRand(0, 2), rollPower: () => potRand(1, 3),
build(troll, p, rollDice) { build(troll, p, rollDice) {
const jet = p > 0 ? rollDice(p, 3).total : 0; const jet = p > 0 ? rollDice(p, 3).total : 0;
const attR = p > 0 ? sharedMod(jet, p, 3, true) : { value: 0, line: "±0" }; const attR = p > 0 ? sharedMod(jet, p, 3, true) : { value: 0, line: "±0" };
@@ -485,8 +485,11 @@ function effTroll(troll) {
function formatPotionItem(potionId, power) { function formatPotionItem(potionId, power) {
const def = POTION_DEFS[potionId]; const def = POTION_DEFS[potionId];
if (!def) return null; if (!def) return null;
// Le niveau minimal d'une potion est 1 ; les potions à effet fixe (puissance 0,
// ex. Biskot) n'affichent pas de niveau du tout.
const suffix = def.duration === 0 && (potionId === "guerison" || potionId === "toxine") const suffix = def.duration === 0 && (potionId === "guerison" || potionId === "toxine")
? ` (${2 * power}D3)` : ` (niv. ${power})`; ? ` (${2 * power}D3)`
: power >= 1 ? ` (niv. ${power})` : "";
return { return {
kind: "potion", kind: "potion",
potionId, potionId,
+1 -1
View File
@@ -25,7 +25,7 @@ const TREASURE_POTIONS = [
["metomol", "1 à 5", "2 tours", ["TOUR accéléré : +X PA par tour", "Armure mag. 2·X"]], ["metomol", "1 à 5", "2 tours", ["TOUR accéléré : +X PA par tour", "Armure mag. 2·X"]],
["painture", "1 à 5", "X tours", ["Visible — camouflage impossible"]], ["painture", "1 à 5", "X tours", ["Visible — camouflage impossible"]],
["pneumonie", "5 (fixe)", "3 tours", ["ATT 5 D3", "ESQ 5 D3", "DEG 5", "REG 5"]], ["pneumonie", "5 (fixe)", "3 tours", ["ATT 5 D3", "ESQ 5 D3", "DEG 5", "REG 5"]],
["pufPuff", "0 à 2", "3 tours", ["ATT X D3", "ESQ X D3", "VUE (X+1)", "PV 2D3 si X ≥ 2", "Effet de Zone"]], ["pufPuff", "1 à 3", "3 tours", ["ATT X D3", "ESQ X D3", "VUE (X+1)", "PV 2D3 si X ≥ 2", "Effet de Zone"]],
["rhume", "1 à 2", "3 tours", ["ATT X D3", "ESQ X D3", "DEG X", "REG X"]], ["rhume", "1 à 2", "3 tours", ["ATT X D3", "ESQ X D3", "DEG X", "REG X"]],
["sangToh", "1 à 5", "4 tours", ["ATT +X D3", "ESQ +X D3", "VUE +X"]], ["sangToh", "1 à 5", "4 tours", ["ATT +X D3", "ESQ +X D3", "VUE +X"]],
["sinneKhole", "11 à 100", "2 tours", ["RM +X %", "MM Y %"]], ["sinneKhole", "11 à 100", "2 tours", ["RM +X %", "MM Y %"]],