0

Dice Notation Roller

Pravi parser notacije za stolne RPG-ove: upišite 3d6+2, 4d6kh3 ili adv i dobijte svaku pojedinačnu bačenu kockicu, zadržane/odbačene kockice i ukupni zbroj.

🔒 U potpunosti se obrađuje u vašem pregledniku — ništa što ovdje unesete nikada se ne učitava.

Primjeri: 3d6+2 · 4d6kh3 · 2d8+1d6-1 · adv+5 · d%

Nedavna bacanja

Obrada... 0%

Rezultat

Dice Notation Roller čita i baca istu skraćenu notaciju koja se koristi za stolovima stolnih RPG-ova i u pravilnicima: "NdS" znači baci N kockica s S strana, pa tako "3d6" baca tri šesterostrane kockice. Dodajte ravni modifikator s +N ili -N ("3d6+2"), kombinirajte više grupa kockica u jednom izrazu ("2d8+1d6-1") ili koristite skraćenice iz D&D 5e za prednost i nedostatak ("adv" baca dvije dvadeseterostrane kockice i zadržava višu, "dis" zadržava nižu). Notacija zadrži-najviše i zadrži-najmanje ("4d6kh3" baca četiri šesterostrane kockice i zadržava tri najviše — standardni način za bacanje sposobnosti u D&D-u) potpuno je podržana.

Ispod haube ovo je pravi tokenizer i parser, a ne popis prepoznatih izraza: notacija se znak po znak skenira u tokene (grupe kockica, adv/dis ključne riječi, obične brojeve i +/- operatore), sastavlja u malo stablo izraza i tek onda evaluira. Svaka sintaktički valjana kombinacija radi, uključujući notaciju za koju nitko nije napisao primjer. Svaka se kockica baca kriptografskim generatorom slučajnih brojeva preglednika (crypto.getRandomValues, a ne Math.random) koristeći odbacivanje uzorkovanja tako da svaka strana ima potpuno jednaku šansu, a rezultat prikazuje svaku pojedinačnu kockicu, koje su kockice zadržane ili odbačene kod kh/kl bacanja, primijenjeni modifikator i konačni zbroj.

Kako bi alat ostao predvidljiv i brz, grupe kockica ograničene su na 100 kockica i 1000 strana po grupi, a vrijednosti za zadrži-najviše/najmanje nikad ne mogu premašiti broj bačenih kockica. Neispravna notacija — nepoznati znak, dva operatora zaredom, viseći + na kraju — proizvodi specifičnu, čitljivu poruku greške umjesto tihog neuspjeha ili rušenja. Sve radi lokalno u pregledniku: nikakva notacija, bacanje ili rezultat nikad se nigdje ne šalju.