Skip to content

D-fujinami/EraGacha

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

EraGacha

🎁 ライバー向け!BETするポイントでガチャ景品が選べる & 排出結果を管理できるスプレッドシート型ガチャツール


📦 概要

EraGacha は Google スプレッドシート上で動作する、
BETするポイントで景品レアリティを選べる 結果を記録できる ガチャシステムです。

  • 🔧 景品・レアリティ・排出率を自由に設定可能
  • 🎲 10pt〜1kpt、choice、complete など複数のガチャ形式に対応
  • 🧾 リスナーごとの排出結果を記録(渡し忘れ防止)
  • 📄 ログ出力で履歴をしっかり管理
  • 🧑‍💻 UIシートで入力 → ボタンでワンクリック実行!
  • 実施毎に再抽選
  • レアリティ内の景品は等倍(意訳:★5内の景品はそれぞれ同じ確立)

🚀 使い方(セットアップ)

1. スプレッドシートを作成

シート名として以下を用意してください:

  • UI:ガチャ実行用の入力フォーム
  • data:景品一覧とレアリティ
  • レアリティと条件:ポイントごとの排出確率
  • log:ガチャ履歴ログ
  • record:リスナー別の排出記録

1) UI シート(実行フォーム)

目的:配信中でも安全に、入力+ボタンだけで回せるようにする

  • レイアウト(例)
    • A2: 名前 / B2: リスナー名(例: john)
    • A3: ガチャmode / B3: 10pt 100pt 200pt 500pt 1kpt choice complete のいずれか
    • A4: レア指定 / B4: 0〜5(※choice のときだけ必須、他モードでは空欄)
    • A5: 回転数 / B5: 1以上の整数(※complete のときは無視)
  • データ入力規則(おすすめ)
    • B3(mode)にプルダウン:データ→データの入力規則→リスト値: 10pt,100pt,200pt,500pt,1kpt,choice,complete
    • B4(rarity)は 0〜5 の数値のみ許可(choice のときだけ入力)
    • B5 は 1以上の整数のみ許可(complete は不要)
  • 実行ボタン
    • 挿入→図形(四角)でボタンを作成→「スクリプトを割り当て」で runGachaFromUI を指定

2) data シート(景品リスト)

** 目的 ** 景品名とレアリティ(数値 0〜5)を管理

** 前提 ** ガチャ排出は レアリティ毎 → 景品内は等倍の確率 で抽選します

レアリティは数値で記載してください:0=☆, 1=★, 2=★★, 3=★★★, 4=★★★★, 5=★★★★★

  • レイアウト
    • A列:任意(空列でOK。No.を振ってもOK)
    • B列:item(景品名)(例:Xヘッダー(青).png、さかなの絵 等)
    • C列:rarity(0〜5)(必ず数値、空白NG)

★要注意 排出させたいレアリティに必ず1つ以上の景品を入れてください。 (景品がないレアはログに「該当アイテムがありません」と出ます)

3) レアリティと条件 シート(排出確率)

目的:ポイントごとに “レアリティ別の確率” を設定

前提

小数で入力(0.800 = 80%) 列はポイント、行はレアリティ(0〜5) 各ポイント列の合計が 1.0 でなくてもOK(スクリプト側で正規化)が、 0 だと抽選不可なので注意(0列はエラーになります)

  • レイアウト
1行目(ヘッダー): rarity | 10pt | 100pt | 200pt | 500pt | 1kpt | (任意の列あれば追加OK)
2〜7行目: 0〜5(0=☆, …, 5=★★★★★)
  • サンプル
| rarity    | 10pt  | 100pt | 200pt | 500pt | 1kpt  |
| --------- | ----- | ----- | ----- | ----- | ----- |
| ☆     | 0.800 | 0.600 | 0.400 | 0.200 | 0.100 |
| ★     | 0.100 | 0.200 | 0.250 | 0.200 | 0.150 |
| ★★    | 0.050 | 0.100 | 0.150 | 0.200 | 0.200 |
| ★★★   | 0.030 | 0.060 | 0.100 | 0.200 | 0.250 |
| ★★★★  | 0.015 | 0.030 | 0.060 | 0.150 | 0.200 |
| ★★★★★ | 0.005 | 0.010 | 0.040 | 0.050 | 0.100 |

※ choice はコード側で「指定レアのみから等倍で抽選」するため、 このシートに choice 列は不要です。 complete も確率は使いません(全排出だからね?全景品を渡すんだよ?)。

4) log シート(実行ログ)

目的:配信中の結果を1行1レコードで蓄積

初期状態:空でOK(ヘッダー不要) スクリプトが [YYYY-MM-DD HH:mm:ss] ... の形式で追記していきます 消しても動作には影響しませんが、履歴は残すのがおすすめ

5) record シート(リスナー別・景品チェック表)

目的:渡し忘れ防止のための 収集状況 を自動記録

  • レイアウト

    • B列:item名(data!B のリストを置く)
    • C列以降:リスナー名(スクリプトが自動で列追加)
    • 該当アイテムが出たら、該当リスナー列に 「◯」 を自動記入 (2重書き込みはしません。空欄だけ埋めます)
  • B列の作り方(おすすめ2通り)

    • 手動で data の item をコピペ(B2〜)
    • 関数で自動反映(空白を除く)
      • B2 に:=FILTER(data!B2:B, data!B2:B<>"") ※大きいシートなら =ARRAYFORMULA(data!B2:B) でもOK(空欄も引っ張ります)
  • 注意 record!B列の item名 は data!B と完全一致させてください(一致で行を特定します) 初期状態で C1 以降の行は空欄でOK(スクリプトが初登場のリスナー名をヘッダーに追記します)

よくあるつまづき & 対処

景品が「無効なアイテム」になる → data!C(rarity) が数値 0〜5 か確認。空白・文字列はNG。 → 指定レアに景品が 1つもないときにも起こります。

タイムアウトが出る → 同時に大量の結果を書き込み中かも。GASなのでミリミリの結果は期待しないでください。

2. Apps Script を貼り付け

  1. スプレッドシートのメニュー → 拡張機能 → Apps Script を開く
  2. Code.gs(このリポジトリの src/Code.gs)をコピペ
  3. 保存して、runGachaFromUI() を関数として登録 or ボタン連携

🧾 シート構成の例

data シート

A(空) B(item名) C(rarity)
IRIAMヘッダー.png 5
さかなの絵 0

レアリティと条件 シート

rarity 10pt 100pt 500pt 1kpt
☆(0) 0.8 0.6 0.3 0.1
★★★★★ 0.005 0.01 0.02 0.05
  • 小数で確率(例:0.8 = 80%)

🎮 ガチャモード一覧(mode)

モード名 説明
10pt1kpt 指定ポイントで抽選、レアリティごとに確率あり
choice 特定レアリティ(★)の中から抽選
complete 全景品を排出(景品一覧を丸ごと出す)

HOW TO USE(みにてすと)

  1. UIシート に下記値いれる
A2: 名前
B2: (リスナー名)
A3: ガチャmode
B3: (10pt, 100pt, 200pt, 500pt, 1kpt, choice, complete のどれか)
A4: レア指定
B4: (0〜5 ※choice時のみ必須)
A5: 回転数
B5: (1以上の整数 ※complete時は不要)
  1. runGachaFromUIを定義したボタンを実行する
  2. log に結果行が並ぶ
  3. record の B列リストに一致する行へ ◯ が追記される

これで完了です。

📋 出力内容

log シート例

[2025-08-10 18:08:42] たかしくん さんが挑戦した 10pt ガチャ 10回の結果発表!		
[2025-08-10 18:08:42] [001] ☆: くだもの の絵		
[2025-08-10 18:08:42] [002] ★: Xヘッダー(青).png		
[2025-08-10 18:08:42] [003] ☆: さかな の絵		
[2025-08-10 18:08:42] [004] ☆: うさぎ の絵		
[2025-08-10 18:08:42] [005] ★: Xヘッダー(青).png		
[2025-08-10 18:08:42] [006] ☆: くだもの の絵		
[2025-08-10 18:08:42] [007] ☆: とり の絵		
[2025-08-10 18:08:42] [008] ☆: うさぎ の絵		
[2025-08-10 18:08:42] [009] ☆: ひと の絵		
[2025-08-10 18:08:42] [010] ☆: きりん の絵		

record シート例

アイテム名 Alice Bob
ヘッダー(青).png
さかなの絵

recordシートは、誰がどこまで景品を集めたか一目でわかります。

📄 ライセンス

MIT License

実行サンプル

https://docs.google.com/spreadsheets/d/1N9G6TJRHensiihrlUgDztglguLKi2ZBoSXInC0L4zFA/edit?usp=drive_link

About

選べるガチャ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors