この記事ではWooferBotで吹き出しの編集や返信するメッセージを編集する方法等を解説していきます。
設定では基本的に“settings.json”を編集していきます。
私自身が理解した内容なのでより詳しくは公式のドキュメントを参照してください。
インストールから基本的な使用方法は以下の記事を参照
基本的な設定
以下の部分を編集することでマスコットの変更や位置など基本的な設定ができます。
{
	"CurrentMascot": "malamute",
	"AlignMascot": "left",
	"GlobalVolume": 0.2,
	"MinBits": 0,
	"AutoShoutout": false,
	"AutoShoutoutTime": 10,
	"ShoutoutAccess": "mod",
	"Bots": []
}- マスコットの変更
 CurrentMascotの値を変更することでマスコットを変更することができます。利用可能なマスコットはmascotsフォルダに格納されているものとなります。現在利用可能なマスコットは以下となります。

- マスコットの位置
 AlignMascotsの値(left/right)を変更することでマスコットの位置の変更ができます。
- ボリューム
 GlovalVolumeの値を変更することで全体のボリュームを変更することができます。
- 最小ビッツ
 MinBitsをの値を変更することでビッツを通知する場合の最小ビッツの値を決定することができます。
- 自動シャウトアウト
 AutoShoutoutの値(true/false)を変更することでホストまたはレイドをしてくれた人の紹介を自動で表示するかどうかの設定ができます。
 AutoShoutoutTimeの値を変更することでホスト/レイドから自動シャウトアウトまでの時間を変更することができます。
- シャウトアウトアクセス権限
 ShoutoutAccessの値を変更することで”!shoutoutまたは!so“コマンドを使用可能な権利者を選択することができます。- “” 空欄にすることで誰でもコマンドを使用可能となります。
- “sub” サブスクライバー、VIP、モデレーター、配信者がコマンドを使用可能となります。
- “vip” VIP、モデレーター、配信者がコマンドを使用可能となります。
- ”mod” モデレーターと配信者がコマンドを使用可能となります。
- “broadcaster” 配信者のみがコマンドを使用可能となります。
 
- ボット
 Botsに自分のチャンネルのBOTの名前を指定することでWooferBotに無視させることができます。“Bots” : [“Bot1”, “Bot2”]のように指定します。 
以下のBOTはデフォルトで既に含まれています。
nightbot, streamlabs, streamelements, stay_hydrated_bot, botisimo, wizebot, moobot
吹き出しのカスタマイズ
以下の部分を編集することで吹き出しの設定ができます。
"Styles": {
	"BackgroundColor": "#fefeff",
	"BorderColor": "#69656c",
	"BorderWidth": 4,
	"BorderRadius": 4,
	"BorderStrokeColor": "#ffffff",
	"TextFontFamily": "Fira Sans",
	"TextSize": 22,
	"TextWeight": 900,
	"TextColor": "#69656c",
	"HighlightTextSize": 24,
	"HighlightTextSpacing": 3,
	"HighlightTextColor": "#ca5c67",
	"HighlightTextStrokeColor": "#8e4148",
	"HighlightTextShadowColor": "#fc938f",
	"HighlightTextShadowOffset": 3
},BorderRadius : 吹き出しの角の丸みを設定します。(0がよりシャープ)
BorderStrokeColor : 吹き出しの1ピクセル周りの色を設定します。
TextWeight : テキストの太さです。100-900まで100刻みで設定できます。
HighlightTextSpacing : 0にするとテキスト間のスペースを無くします。
HighlightTextColor、HighlightTextStrokeColor、HighlightTextShadowColor : それぞれ色を自由に設定します。
HighlightTextColor : 0にすると影を消します。
色はこちらのカラーピッカーからイメージして設定できます。
通知やコマンドのカスタム
メッセージのカスタム
マスコットが吹き出しで話すメッセージのカスタム方法を紹介します。
“Messages”でアクション通知やコマンドの返信をカスタムできます。また、複数のメッセージの中からマスコットがランダムで選択して返信することも可能です。
"Messages": {
	"greet": [
		"[Hello;Hi;Hey;Hewwo;Ello] {sender}, can I have some treats please?",
		"[Hello;Hi;Hey;Hewwo;Ello] {sender}!? Are you here to pet me? Or to give me wet food? Either one is fine, just let me know! ^..^"
	],
	"sub": [
		"[Hello;Hi;Hey;Hewwo;Ello] {sender}, thank you for becoming our best friend ^..^"
	]
}行中の[]ブロックの中は1つの単語がランダムでピックアップされます。
文章中には以下の変数が使用できます。
- {sender} : メッセージの送信者 / 通知の対象者
- {recipient} : ギフトやシャウトアウトの対象者
- {bits} : ビッツの値
- {sub_tier} : サブスクライブティア
- {months} : サブスクライブの月数
- {months_streak} : 連続サブスクライブの月数
- {activity} : 配信のカテゴリ(ゲーム名等)
- {viewers} : レイドの視聴者数
ユーザーアクティビティのカスタム
“Activities”ではシャウトアウトコマンドの使用時に表示されるメッセージをカスタムすることができます。メッセージと同様に複数のメッセージからランダムでピックアップさせることも可能です。アクティビティメッセージの最初の半角スペースは必要なものなので埋めないようにしてください。
"Activities": {
	"Game": [
		" and they were last playing {activity}"
	]
}通知とコマンドの有効/無効化
“Enabled”では通知とコマンドの有効/無効化の設定ができます。インストール時には全ての通知とコマンドは有効にされています。
"Enabled": {
	"new_chatter": false,
	"greet": true
}通知、コマンドに対してのマスコットのポーズ設定
“PoseMapping”では各通知、コマンド毎にマスコットがどのポーズをとるかの設定が可能です。通知やコマンドに対してポーズが決められていない場合はDEFAULTのポーズが割り当てられます。
"PoseMapping": {
	"DEFAULT": {
		"Image": "Wave",
		"Audio": "Wave"
	},
	"raid": {
		"Image": "Happy",
		"Audio": "Happy"
	},
	"!hello": {
		"Image": "Happy",
		"Audio": "Happy"
	}
}あらかじめ用意されている通知とコマンドのリスト
- new_chatter
- greet
- follow
- raid
- host
- autohost
- sub
- resub
- subgift
- anonsubgift
- bits
- lurk
- shoutout
タイマーメッセージの作成
タイマーを使用することで一定時間毎にマスコットにメッセージを表示させることができます。
タイマー/スケジュールメッセージの設定
例:
"ScheduledMessages": [
	{
		"Name": "Twitter",
		"Timer": 30,
		"MinLines": 5,
		"Enabled": true,
		"Command": "!twitter",
		"Image": "twitterlogo.png"
	}
]Name: タイマーメッセージの名前(配信には表示されません)
Timer: タイマーの時間(分)
MinLines: 次のタイマーメッセージが表示されるまでの最小チャット数
Enable: 有効/無効 (true/false)
Command: カスタムコマンドの名前。このコマンドが実行されます。
Image: オプションの画像(imagesフォルダに配置しておく必要有)
タイマーメッセージにマスコットポーズを割り当てる
通知やコマンドにポーズを割り当てたときと同じようにタイマーメッセージにもマスコットポーズを割り当てることができます。割り当てがない場合はDEFAULTが使用されます。
"PoseMapping":{
	"DEFAULT": {
		"Image": "Wave",
		"Audio": "Wave"
	},
	"Twitter": {
		"Image": "Happy",
		"Audio": "Happy"
	}
}カスタムコマンドの作成
カスタムコマンドの設定
“Commands”を利用することでマスコットに簡単な返信をさせるコマンドを作ることができます。
例:
"Commands": {
	"!hello": {
		"Image" : "",
		"Script" : "",
		"Enabled": true,
		"ViewerOnce": false,
		"ViewerTimeout": 0,
		"GlobalTimeout": 0,
		"Access" : "",
		"Aliases": [ "!hi", "!hey" ],
		"Hotkey": [ "ctrl", "alt", "f12" ]
	}
}Image: オプションの画像(“images”フォルダに配置が必要)
Script: スクリプトの実行(“scripts”フォルダに配置が必要)
Access: アクセス権限の設定
- “” 空白にすることで誰でもコマンドが使用可能
- “sub” サブスクライバー、VIP、モデレーター、配信者がコマンドを使用可能
- “vip” VIP、モデレーター、配信者がコマンドを使用可能
- “mod” モデレーター、配信者がコマンドを使用可能
- “broadcaster” 配信者のみがコマンドを使用可能
ViewerOnce: (true/false) 視聴者一人につき同じセッションで一度までコマンドを使用可能にするかどうかの設定
ViewerTimeout: 同じ視聴者が何秒につきそのコマンドを使用できるかの設定
GlobalTimeout: コマンド使用者全体でそのコマンドを何秒毎に使用できるかの設定
Enabled: (true/false) コマンドの使用可/不可
Aliases: コマンドの別名
Hotkey: ホットキーでコマンドを実行 以下は使用可能キー
- アルファベットと数字全体
- ctrl, alt, shift
- f1 – f12
- arrow buttons (up, down, left, right)
- print_screen, pause
- insert, delete, home, end, page_up, page_down
- enter, esc, tab, backspace
- cmd (マックキーボード)
カスタムコマンドにマスコットポーズを割り当てる
通知やコマンドにポーズを割り当てたときと同じようにカスタムコマンドにもマスコットポーズを割り当てることができます。割り当てがない場合はDEFAULTが使用されます。
"PoseMapping":{
	"DEFAULT": {
		"Image": "Wave",
		"Audio": "Wave"
	},
	"!hello": {
		"Image": "Happy",
		"Audio": "Happy"
	}
}ファイルの監視(Watchdog)の作成
ファイルが更新された時に通知を出します。
例:
"Watchdog": [
	{
		"Name": "Now Playing",
		"Filename": "d:\\streaming\\now_playing.txt",
		"Enabled": true,
		"Command": "",
		"Message": "Now Playing: ",
		"Image": ""
	}
]Name: Watchdogの名前(配信上には表示されない)
Filename: 更新を監視するファイル名 パスは常に\\を使用
Enabled: (true/false)
Command: カスタムコマンドの名前。このコマンドが実行されます。
Message: ファイルの中身の前に表示されるメッセージ
Image: オプションの画像(“images”フォルダに配置)
Watchdogへのポーズの設定
通知やコマンドにポーズを割り当てたときと同じようにWatchdogにもマスコットポーズを割り当てることができます。割り当てがない場合はDEFAULTが使用されます。
サブスクリプションとビッツの設定
サブスク期間やビッツの量で通知を変更する
例:
"CustomBits": [
	{
		"Name": "bits100",
		"From": 100, 
		"To": 999
	},
	{
		"Name": "bits1000",
		"From": 1000, 
		"To": 1000
	}
],
	"CustomSubs": [
	{
		"Name": "sub12",
		"Tier": "",
		"From": 12,
		"To": 12
	}
]Name: カスタムメッセージとポーズの設定で使用する名前(配信上には表示されない)
From: ビッツの最小値またはサブスクリプションの最短期間
To: ビッツの最大値またはサブスクリプションの最長期間
Tier(サブスクリプションのみ): サブスクリプションのティアを限定する
- ”” – 全てのティア
- “prime” – Twitch Prime
- “1” – ティア1
- “2” – ティア2
- “3” – ティア3
カスタムメッセージを作成しない場合はデフォルトのビッツ、サブスクリプションメッセージが使用されます。
特定の視聴者への挨拶を変更
特定の視聴者への挨拶の作成
普通のメッセージと同様にランダムからピックさせることも可能です。
例:
"Messages": {
	"viewer_視聴者名1": [
		"[Hello;Hi;Hey;Hewwo;Ello] {sender}, can I have some treats please?",
		"[Hello;Hi;Hey;Hewwo;Ello] {sender}!? Are you here to pet me? Or to give me wet food? Either one is fine, just let me know! ^..^"
	] ,
	"viewer_視聴者名2": [
		"[Hello;Hi;Hey;Hewwo;Ello] {sender}, can I have some treats please?",
		"[Hello;Hi;Hey;Hewwo;Ello] {sender}!? Are you here to pet me? Or to give me wet food? Either one is fine, just let me know! ^..^"
	]
}設定しない場合はデフォルトの”greet”メッセージが使用されます。
特定の視聴者への挨拶ポーズの変更
同様にポーズの変更も可能です。
例:
"PoseMapping": {
	"viewer_視聴者名1": {
		"Image": "Wave",
		"Audio": "Wave"
	}
}オリジナルマスコットの使用
マスコットの画像
マスコットをきれいにみせるために以下の事に留意
- 全ての画像の高さを幅を揃える
- マスコットはセンターに配置する
- マスコットの足は画像の底から同じ位置にする
おすすめのポーズ
- デフォルトの待機ポーズ
- 挨拶ポーズ
- ハッピーポーズ
- 興奮ポーズ
フォルダの配置
- マスコット名のフォルダを”Mascots”フォルダの中に作成
- 作成したマスコット名のフォルダの中に”images”と”audio”フォルダを作成
- 作成したマスコット名のフォルダの中に空の設定ファイル“mascot.json”を作成
マスコットの設定
マスコット設定ファイルにはマスコットのポーズ名と画像名、各パラメーターを使用する
私が使用している例:
{
	"mascotImages": {
		"Idle": {
			"Image": "idle.png"
		},
		"Wave": {
			"Image": "wave.png",
			"MouthHeight": 50,
			"Time": 5000
		},
		"Happy": {
			"Image": "kiran.png",
			"MouthHeight": 50,
			"Time": 7000
		},
		"Gift": {
			"Image": "gift.png",
			"MouthHeight": 50,
			"Time": 7000
	}
	},
	"mascotStyles": {
		"MascotMaxWidth": 240
	}
}ポーズの名前のルールと推奨
- “Idle“ポーズは必須
- “Wave“ポーズと音声は推奨(DEFAULTとして使用される)
- ポーズ名の最初の文字は大文字
- 既に使用されているポーズ名を流用することで使用が簡単になるのでおすすめ
- ポーズ名の追加も可能
- 画像と音声の名前は合致している必要はない
Imageのパラメーター
- Image: イメージのファイル名(png、gif)
- MouthHeight: マスコットの口の高さ、吹き出しの矢印に影響する
- Time: 表示の長さ(ミリ秒)
Audioのパラメーター
- Audio: オーディオファイル名(mp3推奨)
- Volume: オーディオのボリューム 0-1
MascotMaxWidth: ポーズイメージの最大幅
おわりに
Twitchで配信している方は是非配信にかわいいマスコットを追加してみましょう!


