โปรแกรมทอยลูกเต๋า
ตัวแจกแจงสัญกรณ์ลูกเต๋าบนโต๊ะของจริง: พิมพ์ 3d6+2, 4d6kh3 หรือ adv แล้วดูหน้าลูกเต๋าทุกลูก, ลูกเต๋าที่ถูกเก็บ/ถูกทิ้ง และผลรวม
🔒 ประมวลผลทั้งหมดในเบราว์เซอร์ของคุณ — ไม่มีการอัปโหลดสิ่งใดที่คุณป้อนที่นี่
ผลลัพธ์
โปรแกรมทอยลูกเต๋า อ่านและทอยตามสัญกรณ์ย่อแบบเดียวกับที่ใช้บนโต๊ะ RPG และในหนังสือกฎ: "NdS" หมายถึง ทอยลูกเต๋า N ลูก มี S หน้า ดังนั้น "3d6" คือทอยลูกเต๋า 6 หน้าสามลูก เพิ่มตัวปรับค่าคงที่ด้วย +N หรือ -N ("3d6+2") รวมกลุ่มลูกเต๋าหลายกลุ่มในประโยคเดียว ("2d8+1d6-1") หรือใช้สัญกรณ์ย่อแบบได้เปรียบ/เสียเปรียบของ D&D 5e ("adv" ทอยลูกเต๋า 20 หน้าสองลูกและเก็บลูกที่ค่าสูงกว่า "dis" เก็บลูกที่ค่าต่ำกว่า) รองรับสัญกรณ์แบบเก็บค่าสูงสุดและเก็บค่าต่ำสุดอย่างเต็มรูปแบบด้วย ("4d6kh3" ทอยลูกเต๋า 6 หน้าสี่ลูกและเก็บสามลูกที่ค่าสูงสุด — วิธีมาตรฐานในการทอยค่าคุณสมบัติของ D&D)
เบื้องหลังคือตัวสร้างโทเค็นและตัวแจกแจงของแท้ ไม่ใช่รายการของประโยคที่รู้จัก สัญกรณ์จะถูกสแกนทีละตัวอักษรเป็นโทเค็น (กลุ่มลูกเต๋า, คำสำคัญ adv/dis, ตัวเลขธรรมดา และตัวดำเนินการ +/-) ประกอบเข้าด้วยกันเป็นต้นไม้นิพจน์เล็กๆ จากนั้นจึงค่อยประมวลผล ชุดค่าผสมใดๆ ที่ถูกต้องตามหลักไวยากรณ์จะใช้ได้ รวมถึงสัญกรณ์ที่ไม่มีใครเขียนตัวอย่างไว้ ลูกเต๋าทุกลูกถูกทอยด้วยตัวสร้างเลขสุ่มเชิงการเข้ารหัสของเบราว์เซอร์ (crypto.getRandomValues ไม่ใช่ Math.random) โดยใช้วิธีปฏิเสธการสุ่มตัวอย่าง เพื่อให้ทุกหน้ามีโอกาสออกเท่ากันอย่างแท้จริง และผลลัพธ์จะแสดงลูกเต๋าแต่ละลูก, ลูกเต๋าลูกไหนถูกเก็บหรือถูกทิ้งสำหรับการทอยแบบ kh/kl, ตัวปรับที่ใช้ และผลรวมสุดท้าย
เพื่อให้เครื่องมือคาดเดาได้และรวดเร็ว กลุ่มลูกเต๋าถูกจำกัดที่ 100 ลูก และ 1000 หน้าต่อกลุ่ม และจำนวนที่เก็บสูงสุด/ต่ำสุดจะมากกว่าจำนวนลูกเต๋าที่ทอยไม่ได้ สัญกรณ์ที่เขียนผิด — เช่น อักขระที่ไม่รู้จัก, ตัวดำเนินการสองตัวติดกัน, เครื่องหมาย + ค้างท้าย — จะสร้างข้อความผิดพลาดที่เฉพาะเจาะจงและอ่านรู้เรื่อง แทนที่จะล้มเหลวแบบเงียบๆ หรือพัง ทุกอย่างทำงานภายในเบราว์เซอร์: ไม่มีสัญกรณ์, การทอย หรือผลลัพธ์ใดๆ ถูกส่งออกไปที่ไหนเลย