抽選、チケット、ポイント賞品
抽選ツールを初めて使う場合は、次から始めてください: 初めての抽選:スクリーンショット付き手順.
1つのホストで抽選を実行してください。ポップアップ、Stream Deck、Event Flowはそのホストを操作し、視聴者向け表示には確定した結果が表示されます。
初めての無料抽選を実施する
- ポップアップで次を開きます: 抽選オプション(Giveaway Options)。IDは次のままにします:
default、キーワードを次に設定します:!enterとし、チケット価格とポイント賞品をゼロにします。 - 当選者カード、名前のリール、コミュニティホイールから選びます。表示をプレビューし、リンクをOBSのブラウザーソースにコピーします。
- 選択する項目: 応募を開始(Open entries)。視聴者は、取得中のチャットでキーワードを送ると応募できます。
- 選択する項目: 応募を締め切る(Close entries)、次に 当選者を抽選(Draw winner)。先に締め切り忘れても、抽選時に応募は締め切られます。
- 選択する項目: 新しいラウンド(New round) で次の抽選を開始します。以前の当選者はホストの履歴に残ります。
SSNホストを起動したままにしてください。OBSのブラウザーソースを操作する必要はありません。コミュニティ版の単体ホイールも、次を付けずに引き続き利用できます: &managed。ポイントとリモート操作には管理モードを使用します。
SSNポイントで支払うチケット
- 既存の次の機能を有効にします: ロイヤルティポイントシステム(Loyalty Points System) をポップアップで有効にします。これらはSSNのポイントであり、Twitchのチャンネルポイントや個々のゲームのスコアとは別です。
- 次のセクションで: チケットとポイント賞品(Tickets and point prizes)で、チケット1枚あたりのポイントと、視聴者1人あたりの最大チケット数を設定します。価格が1なら、1ポイントでチケット1枚です。
- 応募を開始します。抽選名が次の場合:
fridayの場合、視聴者は次のコマンドでチケットを5枚購入します:!ticket friday 5. - 参加者を確認する場所: 抽選と履歴を管理(Manage giveaways and history)。購入に成功すると、ポイントの徴収と応募が同時に行われます。残高不足の場合はチケットは作成されません。
チケット購入時にポイントはすぐ確保されるため、同じポイントでステッカーを購入したり、別の有料抽選に参加したりすることはできません。抽選時に、そのポイントが消費されます。 キャンセルして返金(Cancel and refund) は確保済みのポイントを返却します。抽選前に参加者を1人削除すると、その人の確保分が返却されます。有料ラウンドを「New round」で暗黙に破棄することはできません。
最初の応募後にルールは固定されます。締め切り/再開では、既存のルールのままラウンドを一時停止できます。価格や参加条件を変えるには、キャンセルして新しいラウンドを作成してください。参加後にウォレットを切り替えたり、ポットで賭ける側を変更したりすることはできません。
ポイントを賞品にする
設定する項目: 当選者1人あたりのポイント賞品(Point prize per winner) および 賞品数(Number of prizes) を応募開始前に設定します。各賞品は、選ばれた視聴者の既存アカウントに、その数のSSNポイントを追加します。これはポイントの新規発行であり、チケット売上や運営者のウォレットから引かれるものではありません。発行総額は、設定した賞品額と当選者数が上限になります。
複数の賞品がある場合は、1人ずつ抽選します。当選者は、画面のアニメーションが始まる前に記録されます。完了した抽選をキャンセルして、判明した結果を取り消すことはできません。間違いは、ホストが明示的にポイントを調整して修正してください。表示の変更や再接続によって、賞品が再び付与されることはありません。
ポイント報酬付きゲーム
管理型Number Hunt
選ぶ項目: Number Hunt(ホスト管理)、チケット費用を0、賞品数を1にし、必要に応じてポイント賞品を設定します。ホストが1~100の数字を選びます。参加者は次を使用します: !guess friday 50を使用し、抽選IDを置き換えてください。正解した最初の有資格者に1回だけ賞品が与えられます。不正解のたびに、全員に示される範囲が狭まります。各視聴者は5秒に1回推測できます。
管理型の抽選表示、または次を使用してください: games/numberhunt.html?session=YOUR_SESSION&managed&giveaway=friday。通常のNumber Huntと他の既存ゲームは、元のローカル動作を維持します。ローカルのスコアや当選者表示によって、SSNポイントが自動付与されることはありません。
コイントスのポット(Coin Flip Pot)
これは運で結果が決まるゲームです。次を選択します: コイントスのポット(Coin Flip Pot)、価格を1、結果数を1、追加賞品を0にします。視聴者は次のコマンドでポイントを賭けます: !ticket friday 3 heads または !ticket friday 3 tails。両側に参加者が必要です。応募を締め切って抽選すると、ホストは賭け金の合計にかかわらず、表と裏を同じ確率で選びます。
勝った視聴者は賭けたポイントを取り戻し、負けた側のポイントを自分の賭けた比率に応じて分け合います。整数への丸めで生じる余りは、小数部分の大きい人から配分し、同じ場合は参加順で決めます。手数料は引かれず、追加のポイントも作られません。勝った側の賭けが2と1、負けた側の合計が5なら、8ポイントのポットは5と3に分配されます。抽選前にキャンセルすると全員に返金されます。片側に参加者がいない場合、抽選は拒否され、キャンセルして返金できます。
複数の抽選
各抽選に、英字、数字、ハイフン、アンダースコアを使った短いIDを付けてください。視聴者は、どのIDで購入する場合も、同じウォレットの利用可能残高を使用します。各OBSのURLには次が含まれます: &giveaway=ID。チケットと推測のコマンドでは、対象の抽選を明示的に指定します。同時に実行する無料抽選には異なるキーワードを付けてください。曖昧な無料応募キーワードで、誤って複数の抽選に応募することはありません。
ポップアップの各欄は設定値です。更新するか管理画面を開いて、ホストで確定しているルールを確認してください。視聴者向けリンクを変更しても、その表示設定だけが変わります。実行中のラウンドのチケットルールを書き換えることはありません。
OBSと表示
管理型表示の背景は既定で透明です。必要に応じてテーマ付きパネルを選べます。カード、リール、コミュニティホイールは、同じ結果と6種類の配色を共有します。動きを減らす設定が有効な場合、結果発表のアニメーションは省略されます。ホイールには最大120人の名前を表示します。これは結果発表のアニメーションであり、すべてのチケットの確率を完全に表現するものではありません。選択には、有効なすべてのチケットを使用します。
再接続すると、表示ページには保存された結果が表示されます。表示ページが接続されていても、そのOBSシーンが現在見えているかどうかはSSNには分かりません。操作用URL、セッションID、バックアップファイルは非公開にしてください。
Event Flow
追加する項目: 抽選/チケット(Giveaway / Tickets) をポイントのアクションから選択します。Enter free giveaway、Buy tickets、Grant free tickets、Close entries、Draw winner、Cancel and refund、Query stateから選べます。IDとチケット数を設定し、ポットへの参加では表/裏を選びます。このアクションは、取得した視聴者の識別情報を使用します。付与や運営者の操作には、信頼できるトリガー/フィルターを前に置いてください。
「Buy tickets」はそれ自体でポイントを消費します。 その前に「Spend Points」を置かないでください。失敗すると、元のチャットを非表示にせずに、依存する後続アクションを停止します。結果の格納先: meta.giveawayControlResult。Event Flowのテストパネルでは、実際のチケットを購入せずに、このアクションをシミュレーションします。実際にラウンドを変更する一連のテストには、独立したホスト/プロファイルを使用してください。
購入できるかどうかは、アクション実行時の確定残高で判断します。応募メッセージ自体で最後の不足分のポイントを得られることを前提にしないでください。ソース固有のメッセージIDがあると、再起動後も再処理を防止できます。それがないソースでは、再起動をまたぐ識別の確実性が低くなります。取得された視聴者/メッセージIDのない一般的なスケジュールイベントでは、誰かの代わりに購入することはできません。
Stream DeckとAPI
ネイティブプラグインには、Open Giveaway、Close Giveaway、Draw Giveaway、Cancel & Refund、New Giveaway Round、Giveaway Stateが含まれます。既定のIDは次のとおりです: default。次を入力します: {"giveawayId":"friday"} を値欄に入力すると、別のラウンドを選択できます。Openは次も受け付けます: config オブジェクト。指定しない場合、既存のラウンドは確定済みのルールを維持し、新しいIDにはポップアップの既定値を使用します。
既存のP2P接続または設定済みのWebSocket通信を使用します。キーが示すのはSSNからの応答であり、OBSが配信中であることを示すものではありません。応答がタイムアウトした場合、新たな抽選を試す前に状態を照会してください。
{"protocol":2,"action":"buygiveawaytickets","get":"callback-1","value":{"giveawayId":"friday","roundId":"ROUND_ID","operationId":"purchase-123","count":5,"actor":{"chatname":"Avery","type":"youtube","userid":"SOURCE_USER_ID"}}}操作IDは業務上の操作を識別し、コールバックIDは応答を識別します。再試行では同じ操作IDを使用してください。同じIDを異なるパラメーターで再利用すると失敗します。意図して新たに購入する場合は、新しい操作IDを使用してください。操作用APIは、指定された利用者のポイントを消費できます。認証なしの公開購入フォームとして公開しないでください。
履歴、バックアップ、復元
管理画面には、ラウンド、参加者、当選履歴が一覧表示されます。当選履歴をJSONで書き出すか、バージョン2の完全なポイント/抽選バックアップを保存できます。完全なバックアップには、残高、予約、ラウンド、操作の処理記録がまとめて含まれます。サーバーには何もアップロードされません。
ホストの再起動時、保存された受付中のラウンドは確認のため締め切られます。チケット用ポイントの確保は維持されます。同じルールで再開するか、抽選するか、キャンセルして返金してください。中断されたデータベース取引は、全体が確定するか、購入/支払いが部分的に残らない状態になります。配信完了の確認が確定していないステッカーの予約は、タイムアウト後に回復処理されます。
完全な復元を実行できるのは、次の環境です: 既存の残高や抽選記録がない新しいホストで実行できます。スナップショット全体を復元し、復元したラウンドは締め切った状態にします。既存のデータがあるホストへの上書きは拒否されます。ラウンドを再開する前に、ポップアップで元の配信/セッションIDに戻してください。復元結果にはバックアップ内のセッションが表示されます。このバックアップは、ポップアップの一般設定を置き換えません。同じポイント管理に対して、元のホストと復元したホストを独立した管理元として同時に動かさないでください。バックアップはある時点の記録であり、保存後の取引は含められません。
残高だけのインポートでは、未処理の予約を復元できません。対象のポイントが確保されている場合、ポイントのリセットと手動上書きは拒否されます。ポイントをリセットしても、抽選の処理記録/履歴は削除されません。残高はこのブラウザー/アプリのプロファイルに属し、ラウンドはセッションごとに分かれます。別のプロファイルやデバイスとは自動同期されません。ブラウザーデータを削除するとローカル記録も失われる可能性があるため、プロファイルの外にバックアップを保存してください。
任意のサーバーバックアップ/同期は今後の機能であり、このリリースには含まれません。この実装では、アップロード、サーバー認証情報、購入通貨、換金機能は追加されません。
うまく動かない場合
- 応募されない場合: ID/キーワード、メンバー制限、受付状態、取得対象のプラットフォームを確認してください。Bot、非公開、過去の履歴、再生、テストマーク付きの応募は除外されます。
- アカウントが変わった場合: 名前や識別情報の変更でウォレットが曖昧になる場合があります。ホストで確認してください。異なるプラットフォームのアカウントが暗黙に統合されることはありません。
- 応答がない場合: 目的のSSNホストが起動し、ホスト操作が有効であることを確認してください。再試行前に、確定した状態を更新してください。
- リセット/インポートできない場合: 確保済みの購入を先に確定するか、キャンセルしてください。未処理の予約を含むバックアップには、完全な復元を使用してください。
- 不明な報酬の場合:
!spendには、設定済みの報酬と価格の一致が必要です。任意の報酬名に対してポイントだけを消費することはなくなりました。
APIリファレンス · イベントの仕様 · 投票と待機リスト
バックアップを手順に沿って復元する
- 元のホストを停止したままにします。新しいブラウザープロファイルでSSNを開き、抽選の管理画面を開きます。
- 次のセクションで: 新しいホストで復元(Recover on a fresh host)を選択し、完全なバックアップを指定します。復元メッセージが表示されるまで待ち、そこに記載された元のセッションIDを確認してください。
- ポップアップの次の項目で: セッションオプション(Session Options)で、その元のセッションIDを入力します。
- 管理画面に戻り、抽選IDを選んで、次を選択します: 更新(Refresh)を選択します。ルール、参加者、当選履歴を確認してください。復元した受付中のラウンドは、確認のため締め切られます。
- 同じルールで再開するか、抽選するか、次を選択します: キャンセルして返金(Cancel and refund) で確保済みのチケット分を返却します。結果を確認した後、新しいバックアップを保存してください。
OBSでは、まず1280 × 720のブラウザーソースを使用してください。管理型ホイールは、残りのソースの高さに収まります。カスタムCSSなしでも背景は既定で透明です。通常の操作はすべて、ポップアップ、管理画面、Stream Deckで行います。