スイスドロー形式のトーナメント用ペアリングスクリプトです。https://note.com/ictlink/n/nd24f2b3d0492 様のスイスドロースクリプトをプロトタイプとして使用させていただきました。
ファイルをブラウザにドラッグ&ドロップして起動します。
GitHub PagesのURL https://grimoire-4hobby.github.io/Swiss-system-tournament/ をブラウザで開き、「ホーム画面に追加」して使用することを推奨します。
※LocalStorageを使用するためオフライン実行可能ですが、重要なデータは「JSONエクスポート」でバックアップしてください。
大会名、勝ち点(デフォルト3)、引分点(デフォルト1)を設定します。Bonus/Reliefを有効にすると、特定の条件下での追加点・救済点を管理できます。大会ロゴ画像を設定すると順位表の背景に反映されます。
ペアリングに従い対戦し、勝者をタップして結果を入力します。棄権者が出た場合は順位表で「棄権」を押し、再度ペアリングを生成してください。
数学的な必要最小ラウンド数(⌈log2 n⌉)を超えると終了ボタンが表示されます。規定ラウンド後もマッチングを続行することは可能ですが、やむを得ず再戦が発生する可能性が上がります。終了後は下位から順にランクが発表される演出が始まります。
勝ち点が近い者同士を優先し、20パターンの試行から「点数差の合計」と「再戦ペナルティ」が最小のものを採用します。人数が奇数の場合、不戦勝はシード未経験かつ低スコアの人が優先されます。
同点時の順位決定に、対戦相手の平均勝率(OMWP)を使用します。極端な影響を避けるため25%〜75%で補正されます。さらに同点の場合は対戦相手のOMWP平均(OOMWP)を比較します。
順位、スコア、Promotion(前ラウンドからの増加分)等が表示されます。下位n名の匿名化が可能ですが、棄権者は匿名化されません。
詳しくはhttps://github.com/Grimoire-4hobby/Swiss-system-tournament のREADMEを参照してください。
| 順位 | プレイヤー名 | 最終スコア | W-L-D | OMWP | OOMWP | 不戦勝 | 操作 |
|---|
追加オプション設定
大会ロゴ・背景画像(任意)
※画像は順位表画像の背景として薄く配置されます。
ラウンド: /
参加プレイヤー数:
手動でペアリングを設定するか、上の「ランダムペアリングを生成」ボタンを押してください。
最適な対戦を計算中... (0/20)
※再戦を避け、近いスコア同士のマッチングを20パターン試行しています
| 順位 | プレイヤー名 | スコア | OMWP | OOMWP | ステータス | 操作 |
|---|
| ラウンド | 対戦相手 | 結果 |
|---|