ダイスローラー — 2d6+3 / 4d6kh3 表記対応 (Web Crypto)
2d6+3 や 1d20-2、4d6kh3 (上位 3 つ残し) のような TRPG / ボードゲームでよく使うダイス表記をパースして振る、ブラウザ完結のダイスローラー。乱数は Web Crypto API (crypto.getRandomValues + 拒否サンプリング) で完全に均等分布。プリセット (d4 / d6 / d8 / d10 / d12 / d20 / d100 / 3d6 / 4d6kh3 …) も用意。直近 20 回までのロール履歴をブラウザ内に保持します。サーバー送信なし。
使い方
1. ダイス表記を直接入力するか、プリセット (d6 / 3d6 / 4d6kh3 など) をクリックして表記欄に挿入します。 2. 「振る」ボタンを押すと結果がすぐ表示されます (個別の出目 + 合計)。 3. 同じ表記をもう一度振りたいときは「もう一度振る」ボタンが速いです。 4. 直近 20 回までの履歴が下に残るので、戦闘ログ的に振り返れます。 サポート表記: - `NdM` … N 個の M 面ダイス (例: 2d6) - `+定数` / `-定数` … 修正値 (例: 2d6+3, 1d20-2) - `khN` / `klN` … 上位 / 下位 N 個を残す (例: 4d6kh3 = 上位 3 つを採用、D&D 能力値生成) - `dhN` / `dlN` … 上位 / 下位 N 個を捨てる - 複合 … 3d6+1d4-1 のように複数項を + / - で繋げられます
よくある質問
- 入力データはサーバーに送信されますか?
- いいえ。すべてブラウザ内で処理され、外部送信はありません。乱数生成も Web Crypto API を使ってブラウザ内で完結します。
- 乱数はどのくらい『公平』ですか?
- Web Crypto API の crypto.getRandomValues で 32-bit 整数を取得し、d100 のような『2 の冪でない面数』に対しては拒否サンプリングを適用しています。理論上、完全に均等な分布が得られます。Math.random() より厳密で、特に少数面のダイスでも偏りが出ません。
- 4d6kh3 とは?
- 4 個の d6 を振り、上位 3 つの合計を能力値として採用する D&D の標準的な能力値生成法です。kh は「Keep Highest」の略。同様に kl (keep lowest)、dh (drop highest)、dl (drop lowest) が使えます。
- 2d20kh1 / 2d20kl1 は?
- D&D 5e の『有利 / 不利』の判定です。2 個の d20 を振り、有利のときは高い方 (kh1)、不利のときは低い方 (kl1) を採用します。
- ダイスの個数や面数の上限は?
- 1 項あたり 1〜1000 個、面数は 2〜1,000,000 面を許容しています。日常的なゲーム用途では十分です。
- 履歴は次回起動しても残りますか?
- いいえ。現在のページ表示中のみメモリに保持し、ページを閉じると消えます。永続化は今後の検討事項です。
類似のツール
パスワード生成 — 強度 / 文字種 / 桁数指定
強いランダムパスワードを 1〜25 件まとめて生成できます。長さ・文字種・紛らわしい文字の除外を選択可。crypto.getRandomValues ベースでブラウザ内処理。
UUID 生成 — v4 / v7 をまとめて発行
UUID v4 (完全ランダム) と UUID v7 (タイムスタンプ付き) を 1〜100 件まとめて生成できます。crypto.getRandomValues ベースでブラウザ内処理。
ハッシュ生成 — SHA-1 / 256 / 384 / 512
テキストから SHA-1 / SHA-256 / SHA-384 / SHA-512 のハッシュ値を一括生成します。Web Crypto API ベースでブラウザ内処理。
バーコード生成 — JAN / EAN / UPC / CODE128 / CODE39
数字や文字列を 1 次元バーコード (JAN-13 / EAN-13・JAN-8 / EAN-8・UPC-A・CODE128・CODE39・ITF・Codabar/NW-7・MSI) に変換し、PNG / SVG として保存できます。バーの太さ・高さ・色・余白や、下部の数字表示の有無を細かく調整可能。チェックディジットの検証も自動で行います。生成はすべてブラウザ内で完結し、入力した値が外部に送信されることはありません。