Twitchでレイドされたときに自動でお礼と宣伝をする方法
今回は、Twitchでレイドされたときに自動でお礼と宣伝をする方法を紹介します。
↑「なおさんなおさん」って表示名にしているせいで分かりづらいですが正常な動作です
Twitch配信者がよく使っている「Nightbot」と「StreamElements」の機能を利用します。
<追記>
現在、StreamElementsのコメントにNightbotが反応しない現象が発生しています。
おそらくNightbot側の仕様変更による影響だと思われます。
StreamElementsの代わりにStreamlabsを使うことで似たようなことができますので、
しばらくの間はStreamlabsとNightbotの組み合わせで使うことを推奨します。
Streamlabsの設定方法は、↓のツイートとリプ欄を参照してください。
現在StreamElementsのコメントにNightbotが反応しなくなっているようです。
— なおさんなおさんさん (@naosan_RTA2) 2022年10月16日
かわりにStreamlabsのChat Alertsを使うことで動作することを確認しました。 https://t.co/yE4uKR8VNj pic.twitter.com/nU6es50QpV
▼まだ導入してない人向けの補足説明はココをクリック
まだ導入してない人は↓のURLから入れてください。
いろんな機能があるので入れておくと便利です。
StreamElements | The Ultimate Streamer Platform
↓一応、参考になりそうなサイトも載せておきます
赤い丸で囲まれたアイコンをクリックして、表示される一覧に「Nightbot」と「StreamElements」がいればOKです。
追記:ちゃんと導入できていても、たまに表示されないことがあるらしい…?
<注意点>
Nightbotを新しく導入した場合、初期設定でスパムを追い出す機能が有効になっています。
絵文字連打などで簡単に反応してしまうので、無効化したい人は、「Spam Protection」の設定から、不要な機能を無効(Disabled)にしてください。
1. StreamElements側の設定
StreamElementの設定画面の左側の「Chatbot」→「Modules」をクリックした後、「Chat Alerts」を有効化します。
そして、「Raids」タブの「Message」を!raided {user}
に変更します。
こうすることで、誰かがレイドしてくれた時に、自動的に「!raided 【レイドしてくれた人の名前】」ってコメントされるようになります。
レイド以外(フォロー等)の時のメッセージも同様の方法で変更できます。必要であれば変更してください。
2. Nightbot側の設定
Nightbotの設定画面の左側の「Command」→「Custom」をクリックした後、右側の「Add Command」をクリックすると新しいコマンドを追加する画面が表示されます。
Commandは!raided
に、Messageは$(twitch $(eval a="$(query)"; b=a.match(/\((.+)\)/); if(b==null){c=a;}else{c=b[1];} c) "{{displayName}}さんレイドありがとうございます!{{displayName}}さん({{game}}をプレイ中)のチャンネルはコチラ→{{url}}")
にします。
こうすることで、StreamElementsの「!raided 【名前】」というコメントに反応し、Nightbotが「【表示名】さんレイドありがとうございます!【表示名】さん(【ゲーム名】をプレイ中)のチャンネルはコチラ→【URL】」とコメントしてくれるようになります。
▼スクリプトの解説を見たい人はクリック(スルーしても問題ないです)
$(twitch 【ユーザー名】【フォーマット】)
と記述すると、指定したユーザーに関する情報を指定したフォーマットで出力します。【ユーザー名】
は$(eval a="$(query)"; b=a.match(/\((.+)\)/); if(b==null){c=a;}else{c=b[1];} c)
の部分に対応しています。a
には引数を代入するb
はa
を()の前後で分割した配列であり、()の内部の文字列はb[1]
に代入される- もし
b
がnull
であればc
にはa
を、そうでなければc
にはb[1]
を代入する c
の文字列を出力する
表示名を設定している人がレイドした例
a
はなおさんなおさん (naosanrta)
b[1]
はnaosanrta
c
はnaosanrta
a
はnaosanrta
b
はnull
c
はnaosanrta
【フォーマット】
は"{{displayName}}さんレイドありがとうございます!{{displayName}}さん({{game}}をプレイ中)のチャンネルはコチラ→{{url}}"
の部分に対応しています。
Message後半の" "
に囲まれた部分は自由に変更してください。
ここでは↓のような変数を使うことができます。
{{name}}
レイドしてくれた人のユーザー名 (例:naosanrta){{displayName}}
レイドしてくれた人の表示名 (例:なおさんなおさん){{url}}
レイドしてくれた人のチャンネルURL (例:https://www.twitch.tv./naosanrta){{title}}
レイドしてくれた人の配信タイトル{{game}}
レイドしてくれた人の配信しているゲーム
もっと変数を知りたい人はNightbot Docsを確認してください。
以上で設定は終了です!
▼正常に動作しない場合はココをクリック
「StreamElements」は正常に動作しているのに、「Nightbot」が反応してくれない場合は、↓の「Userlevel」を確認してください。
「everyone」になっている場合は、だれでも!raided
コマンドを使うことができます(もちろんStreamElementsも)。
逆に、「moderator」とかになっている場合は、StreamElementsをモデレーターにしてあげないとNightbotが反応しません。
この方法のメリットは↓です。
- プログラミングの知識がなくてもコピペだけで設定できる
- よく使われているツールだけで実現できる
- 使える変数が多いので自由度が高い
- 表示名を設定しているユーザーでもちゃんと動作する
- 自分のPC上で他のソフトを起動しておく必要がない
もし、もっといい方法をご存知でしたらなおさん (@naosan_RTA2) | Twitterに教えてください!