discord.js を利用した Discord ボット
このボットの招待 URL は公開していない (ほぼ個人利用の為)
/emoji
/coc
/dice
/join
/leave
/help
- message (必須): 絵文字に変換するメッセージ
- 以下の文字を絵文字に変換できる
- A から Z までのアルファベット
- 0 から 9 までの数字
- 記号 (!, ?, #, *) と空白文字
- 以下の文字を絵文字に変換できる
- amount (必須):
1
から100
の数値でダイスを振る回 (個) 数を指定 - surface (必須):
2
から100
の数値でダイスの面数を指定 - secret:
True
を指定するとロール結果はコマンド使用者にのみ通知される (コマンドを使用したこと自体は周知される) - correction-operator: 補正に使う演算方法を演算子
+, -, *, /
で選択 - correction-value:
1
から100
の数値で補正に使う値を指定
指定された版のクトゥルフ神話 TRPG のキャラクターステータスを生成する。
- version (必須):
6
か7
の版を指定
入力された以下の要素から、引きたいカードを引く確率や期待値を求める。
- デッキ枚数
- ドロー枚数
- 引きたいカードの投入枚数
- deck-size (必須):
1
以上のデッキ枚数を入力する - draw-count (必須):
1
以上のドロー枚数を入力する - targetcard-count (必須):
1
以上の引きたいカードの投入枚数を入力する
ボイスチャンネルに接続してテキストチャンネルのメッセージを読み上げる
- このコマンドの使用者はボイスチャンネルに接続している必要がある
- コマンド使用者がいるボイスチャンネルにこのボットが接続できる権限が必要
- ミュート状態のボイスチャンネル参加者のメッセージを読み上げる
- ボイスチャンネル参加者のメッセージならどのテキストチャンネルのメッセージでも読み上げる
接続中のボイスチャンネルから切断する
- このコマンドの使用者はこぴぺぼっとと同じボイスチャンネルに接続している必要がある
- このコマンドを使用しなくてもボイスチャンネル内がこぴぺぼっとのみの状態になると自動的に切断する
このボットのコマンド一覧とこのページへのリンクを表示する
個人的に稼働させているボット自体の公開はしていないが、以下の手順を踏むことでこのボットを利用できる。
- Node.js バージョン 16.9.0 以上
- Discord Developer Portal
- ボットアカウント (アプリケーション) の作成
- 作成したボットアカウントのトークン
- 作成したボットアカウントのアプリケーション ID
- 以下の
Privileged Gateway Intents
を有効化- PRESENCE INTENT
- SERVER MEMBERS INTENT
- MESSAGE CONTENT INTENT
- ボットアカウント (アプリケーション) の作成
- VoiceText Web API
- API無料利用登録 にて利用登録
- 登録したメール届く API キー
- API無料利用登録 にて利用登録
- こぴぺぼっとの入手
- リリースページ にて入手
- またはソースコードを tsc にてビルド
- リリースページ にて入手
以下の環境変数とその値を登録
NODE_ENV
- 登録する値:
production
- 登録する値:
COPIPE_BOT_TOKEN
- 登録する値: Discord Developer Potal から取得したボットのトークン
COPIPE_BOT_APP_ID
- 登録する値: Discord Developer Potal から取得したボットのアプリケーション ID
VOICETEXT_API_KEY
- 登録する値: VoiceText API から取得した API キー
- ダウンロードした
copipebot.zip
を解凍 - 解凍したディレクトリに
$ cd copipebot
で移動 $ npm install
にて必要パッケージのインストール- インストールされるパッケージ一覧は package.json 内の
dependencies
とdevDependencies
を参照
- インストールされるパッケージ一覧は package.json 内の
$ npm run setup
にてスラッシュコマンドを登録- スラッシュコマンドはグローバルコマンド1として登録される
- このグローバルコマンドの登録は 1 度行えば良い
$ npm start
にてボット実行