マダミスサーバー作成補助botの作成・配布

タイトルの通りです。
需要あるかわからんし完成度が微妙なので公開するか迷いましたが、折角なので公開することにしました。
よかったら使ってください。

作った時の備忘録はこちら

マーダーミステリーオンラインGM支援bot 「I done it(アイダニット)」|tsuka|note
これのパクリです。

botを使う利点としてはマウスを触る頻度を減らして、極力テキストチャットのみで済ませられるようにできることです。マウスとキーボード行ったり来たりするのは面倒なので、キーボードのみでほぼ完結できるのは相当楽になると思います(スマホでもテキストチャットのみでほとんどできるはずです)。
っていうのは自分がサーバー立てて感じたことなので、ほとんど自分が楽になるために作ったようなもんです。
何故上記のものを使わずに自作したのかと言うと、bot作成に興味があったため、自分で作った方がおもしろいと思ったからです。
自分語り以上。興味持ってくださった方は以下の説明を読んでください。
リンクは一番下にスクロールしていただけばありますのでそちらからどうぞ。


機能は大雑把に上記の通りです。
細かく分けたらもう少しありますが、使い方と共に記します。

最終更新日:2022/08/21

 

 

テキストチャンネルの作成

!mkXX n

上記のコマンドがチャンネル作成の基本になります。
「XX」は作成したいものによって変化します。

  • テキストチャンネルなら「TC」

  • GM用テキストチャンネルなら「GM
  • PC用個別テキストチャンネルなら「PC」

と入力することで、それぞれのチャンネルが作れます。

最初なので、コマンドについて少し説明します。
コマンドは管理者権限がないと使えません。
コマンド(!mkXX部分)は半角のみ、nとスペースは全角半角問いません。
また、コマンドは大文字小文字の区別がありません(!MKxxでも構わない)。
上記2行のことは、他のコマンドでも同様です。ただし、チャンネル名を指定する場合は大文字と小文字は区別されます。

話を戻します。
nには数字を入れることで、その個数分のチャンネルを作ることができます。
チャンネル名は「XXn(チャンネルの種類+ナンバリング)」になります。

また、nには数字ではなく、任意の文字列をスペース区切りで複数入力することで、任意の名前付きのチャンネルを一気に作成できます。
この場合は数字のみの入力だとエラーが発生するので注意してください。

「!mkGM」コマンドを使用したときは、管理者またはGMのロールを持っている人のみが閲覧可能なテキストチャンネルの作成ができます。GM用メモとか作りましょう。一つ作るくらいなら手動でやった方が楽。

「!mkPC」コマンドを使用したときは、作成されたテキストチャンネルと同名のロールも同時に作成されます。すごい!

ボイスチャンネルの作成

!mkVC n

テキストチャンネルとほぼ同じです。nに数字を入れれば「VCn(nはナンバリング)」のボイスチャンネルができ、任意の文字列をスペース区切りで入力すれば、名前付きのチャンネルが作成できます。

また、以下のコマンドで密談部屋の作成をすることができます。

!mkst n m

(2023/2/18追記)コマンドを「!st」から「!mkst」に変更しました(他と統一するため、なんで今まで違ったんだろうな?)。gifは面倒なのでそのまま。
n人用密談部屋をm個作成します。nとmは数字以外の入力は受け付けません。
チャンネル名は「密談m(ナンバリング)」のみ。面倒なので。

チャンネル・カテゴリの削除

!delch name

削除したいチャンネル名をスペース区切りで指定できます。チャンネル名は完全に一致させる必要があります。
同名のロールも消えるので、PCの名前間違えて作ってしまった、なんて時はこのコマンドを使うとチャンネルとロールをどちらも破壊できます。
同じチャンネル名が複数個ある場合はちゃんと動作しない思うので、同じ名前のチャンネルは作らないようにしてください。
また、チャンネル名が「一般」「bot」「help」のものは消えません。

!delcate name

チャンネルを全て削除したいカテゴリ名をスペース区切りで指定できます。上記と同様、同名のロールがあれば消え、チャンネル名が「一般」「bot」「help」のものは消えません。また、チャンネルが全て消えるだけでカテゴリは消えません。
上記のチャンネル作成コマンドで「テキストチャンネル」「ボイスチャンネル」「GM用」「個別チャンネル」カテゴリが作成されます。
正式名称で入力するのは面倒だと思うので、それぞれ「tc」「vc」「gm」「pc」で消せます。

タイマーの起動・停止

!timer n

nに議論時間を入力することで勝手に時間を測ってくれます。単位は分。指定した時間が10分以上の時は10分ごとに残り時間を通知、10分以下になったら残り5分・1分に通知します。

!stop

このコマンドでタイマーを止めることができます。動いていないときは何も起きません。
また、上記の「!timer」コマンドを使用したテキストチャンネルとは別の場所でも動作するので、もう少し議論が聞きたいけど時間が来てしまう、なんていう時はプレイヤーが見れないチャンネルで使うとシレっとタイマーを止められます。
 注意事項としては、「!timer」コマンドは書いたチャンネルに通知を飛ばすので、全員が見えるチャンネルで使わないと誰も見てくれません。気を付けましょう。

(2022/08/21追記)
「!stop」コマンドは使えなくなりましたが、リアクションのボタンを押すことで、一時停止とリスタートができるようになりました。
一時停止後に10秒くらい時間を空けないとリスタートや次のタイマーが起動できません。

また、タイマーは2つ以上並列して動作させることはできません。



ニックネームの変更

!chgname

ロールが振られていたら、「ロール@名前」と変更します。管理者のニックネームは変えられません(泣いてる)。

 

!rename

「ロール@名前」という形式になっているニックネームを「名前」に変更します。管理者のニックネームは変えられません。

 

ロールをランダムに振り分ける

!random

このコマンドでロールをランダムに振り分けることができます。プレイヤー以外の人には予め「GM」ロールを設定してください。GMレスの場合はGMロールは誰にも設定しないでください。また、何人かロールを固定してそれ以外の人でランダムに振り分ける場合は、固定したい人のロールを先に設定して、上記のコマンドを入力すればできます。
ついでに、上記のニックネームの変更を実行します。

 

ロールを剥奪する

!rmrole

メンバーのロールを外すことができます。
使い所はなさそうだけど、作りました(作ったの忘れてました)。
例によって、管理者のロールは外せないので手動で外してください。

 

テキストチャンネルの全解放

!release

プライベートなテキストチャンネルが全てオープンになります。

!allGM

全員にGMロールを付与する。実質テキストチャンネル全解放。

 

ダイスロール

ndm

m面ダイスをn回振ります。最小で1d2、最大で5d100のダイスが振れる。m=2の時はダイスではなくコイン(のつもり)なので、0か1が返ってくる。ダイスを複数回振ると、合計も出力される。
コマンドは管理者権限がなければ使えないが、この機能だけは誰でも使える。
(2022/01/15追記)振れるダイスの数が3から5に増えた。5頭ボックスやWIN5ができるようになった。自分で予想しろ。

 

ヘルプ

!help

簡易的な使い方が出力されます。botをサーバーに入れた時にできるhelpテキストチャンネルに書いてあることと同じです。

一通り説明が終わりましたので、最後に注意点を述べます。
botの所属するサーバー数が100を超えると使えなくなるかもしれないとかなんとからしい(サーバーに負荷がかかるらしい)ので、使い終わったらサーバーから追放してください。
まあ、そんなにたくさん使われるとは思っていないので杞憂だとは思いますが。


ここまで読んでくださりありがとうございました。
botのリンクは下にあるやつです。

discord.com



不具合・改善点・不明点などあればTwitter@ezakiprnもしくはコメント欄までお願いします。

 

更新履歴

2021/11/03 公開

2021/11/13 ロールのランダム設定機能の追加

2022/01/15 ダイスの最大数を3から5に変更

2022/08/21 タイマーの仕様を変更

                    一部コマンドの説明にgifを追加

2023/02/18 「ニックネームの変更」を追加

                     それに伴って、ロールのランダム設定機能に追記

                    密談部屋作成コマンドを変更

                    ロールの剥奪について記載