Skip to content

BinomialSheep/compriere

Repository files navigation

compriere(こんぷりえ~る)

くじを回した回数ごとの、コンプリート確率を計算する Web アプリ。

https://binomialsheep.github.io/compriere/

特にウェブポンのために作成したため、ウェブポンの実測ベースの提供割合プリセットを同梱していますが、賞・種類数・確率は自由に編集できます。

仕組み

ウェブポン固有の話

提供割合は公開されていませんが、実際に引かれた個数を約20万件収集して計算しています。

激レア賞、レア賞、A賞は個数が決まっているため、引かれる個数が多いガチャほど提供が渋くなるので、5種類のプリセットに分けています。 B賞、C賞、D賞、E賞は最も典型的な「3種類、5種類、8種類、10種類」の場合の確率をプリセットに記載しています。観測結果では、種類数が多いほどその賞が当たる確率も増えます。

確率計算部分

「1賞に複数のランダム景品があるくじ」のコンプ率の計算は、DPや包除原理で求めています。 引く回数をN回、種類数をK種類としてΘ(NK)なので、実用上は高速です。 (実用から外れた値を入れると桁落ち誤差などで不正解な値になりえます)

技術構成

  • React + TypeScript + Vite
  • テスト: Vitest
  • ホスティング: GitHub Pages(GitHub Actions で dist/ を配信)

開発用メモ

npm install      # 依存をインストール
npm run dev      # 開発サーバー(http://localhost:5173/)
npm test         # テスト
npm run build    # 本番ビルド → dist/

構成

  • src/core/ … 確率計算エンジン・型・バリデーション(DOM非依存・テストあり)
  • src/data/ … 同梱プリセット(くじの提供割合データ)
  • src/ui/ … React コンポーネント
  • .github/workflows/deploy.yml … main への push で自動デプロイ

About

ウェブポンのコンプリート率計算

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors