0

Kocke Notation Roller

Pravi namizni razčlenjevalec zapisov kock: vnesite 3d6+2, 4d6kh3 ali adv in dobite vsak posamezni met kocke, obdržano/vrženo kocko in skupno.

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

Nedavni zvitki

Obdelava ... 0%

Rezultat

Dice Notation Roller bere in meče isto stenografijo, ki se uporablja pri namiznih mizah RPG in v knjigah pravil: "NdS" pomeni met N kock s stranicami S, tako da "3d6" vrže tri šeststrane kocke. Dodajte ravni modifikator z +N ali -N ("3d6+2"), združite več skupin kock v en izraz ("2d8+1d6-1") ali uporabite okrajšavo prednosti/slabosti D&D 5e ("adv" vrže dve dvajsetstrani kocki in obdrži višjo, "dis" obdrži nižjo). V celoti je podprt tudi zapis za ohranjanje najvišje in ohranjanje najnižje vrednosti (»4d6kh3« vrže štiri šeststrane kocke in obdrži najvišje tri — standardni način metanja rezultatov sposobnosti D&D).

Pod pokrovom je to pristen tokenizer in razčlenjevalec, ne pa seznam priznanih izrazov: zapis se skenira znak za znakom v žetone (skupine kock, ključne besede adv/dis, navadna števila in +/- operaterji), sestavi v majhno izrazno drevo in šele nato ovrednoti. Vsaka sintaktično veljavna kombinacija deluje, vključno z zapisom, za katerega nihče ni napisal primera. Vsaka kocka se vrže s kriptografskim generatorjem naključnih števil v brskalniku (crypto.getRandomValues, ne Math.random) z uporabo zavrnitvenega vzorčenja, tako da ima vsak obraz povsem enake možnosti, rezultat pa pokaže vsako posamezno kocko, katere kocke so bile obdržane ali izpuščene pri metih kh/kl, uporabljeni modifikator in končni seštevek.

Da bi bilo orodje predvidljivo in hitro, so skupine kock omejene na 100 kock in 1000 strani na skupino, pri čemer največje/najnižje število ne sme nikoli preseči števila vrženih kock. Napačno oblikovan zapis – neznani znak, dva operatorja v vrsti, viseči + na koncu – ustvari specifično, berljivo sporočilo o napaki namesto tihe napake ali zrušitve. Vse se izvaja lokalno v brskalniku: noben zapis, zvitek ali rezultat ni nikoli nikamor poslan.