Kauliukų notacijos metiklis
Tikras stalo žaidimų kauliukų notacijos analizatorius: įveskite 3d6+2, 4d6kh3 arba adv ir gaukite kiekvieno atskiro kauliuko metimą, išlaikytus/atmestus kauliukus bei bendrą sumą.
🔒 Visiškai apdorojama jūsų naršyklėje – niekas, kurį čia įvedėte, niekada neįkeliama.
Rezultatas
Kauliukų notacijos metiklis skaito ir ridena tą patį trumpinį, naudojamą prie stalo žaidimų stalų ir taisyklėse: „NdS“ reiškia mesti N kauliukų, turinčių S kraštinių, taigi „3d6“ ridena tris šešiasienius kauliukus. Pridėkite pastovų modifikatorių su +N arba -N („3d6+2“), viename reiškinyje sujunkite kelias kauliukų grupes („2d8+1d6-1“) arba naudokite D&D 5e privalumo/trūkumo trumpinį („adv“ ridena du dvidešimtsienius kauliukus ir išlaiko didesnį, „dis“ išlaiko mažesnį). Visiškai palaikoma ir didžiausių/mažiausių išlaikymo notacija („4d6kh3“ ridena keturis šešiasienius kauliukus ir išlaiko tris didžiausius — tai standartinis D&D gebėjimų reikšmių metimo būdas).
Viduje tai yra tikras tokenizatorius ir analizatorius, o ne atpažįstamų išraiškų sąrašas: notacija nuskaitoma ženklas po ženklo, paverčiama tokenais (kauliukų grupėmis, adv/dis raktažodžiais, paprastais skaičiais ir +/- operatoriais), surenkama į nedidelį išraiškos medį ir tik tada įvertinama. Veikia bet kokia sintaksiškai teisinga kombinacija, įskaitant notaciją, kuriai niekas nerašė pavyzdžio. Kiekvienas kauliukas metamas naudojant naršyklės kriptografinį atsitiktinių skaičių generatorių (crypto.getRandomValues, ne Math.random), taikant atmetimo atranką, kad kiekviena sienelė turėtų visiškai vienodą tikimybę, o rezultate matomas kiekvienas atskiras kauliukas, kurie kauliukai buvo išlaikyti ar atmesti kh/kl metimams, pritaikytas modifikatorius ir galutinė suma.
Kad įrankis būtų nuspėjamas ir greitas, kauliukų grupėse ribojama iki 100 kauliukų ir 1000 kraštinių vienai grupei, o didžiausių/mažiausių išlaikymo skaičius niekada negali viršyti mestų kauliukų skaičiaus. Neteisinga notacija — nežinomas ženklas, du operatoriai iš eilės, kabantis + gale — sukuria konkretų, suprantamą klaidos pranešimą, o ne tyliai nepavyksta ar nulūžta. Viskas veikia vietoje naršyklėje: jokia notacija, metimas ar rezultatas niekur nesiunčiami.