皆さんはDiscordでミリシタのガチャシミュレーターをしたいと思ったことはありませんか?今回はそんなボットを作成したので紹介したいと思います。
導入編はサーバー主かボット管理の人しか触らないと思うので、実際にプレイする人は次の【プレイ編】を見てください。
この記事ではWindowsでの導入を目標としています。Linuxの場合も色々似ていますが、今回は省きます。
目次
- まずはダウンロード
- Python3.7以降を導入
- 最新版のdiscord.pyを導入
- FFmpegの導入
- Discordデベロッパーサイトからトークン入手
- DiscordチャンネルIDとかを取得
- Configをいじる
- 起動!
- まとめ
まずはダウンロード
まずは上のサイトにアクセスをしてください。そしたら下の画像のようなページに行きますので、赤く手動で書かれている「Source code (zip)」をクリックしてダウンロードしてください。v5.1.0がこの記事の時点で最新版です。
ダウンロードしたら好きな場所に展開して置いておいてください。
Python3.7以降を導入
Discord-MLGはPythonで動きますのでPythonを導入する必要があります。他のボットを導入していて既にPythonを入れている場合でもバージョンを確認してください。といっても元となっているDiscord.pyがPython3.7以降なはずなので、大丈夫だと思います。
というわけで上のサイトにアクセスして、以下の画像の「Python 3.7.7」の右のほうにある「Download」を押してダウンロードしてください。
え、上の「Python 3.8.2」じゃないの?……確認してないので3.7でお願いします。人柱で3.8でやってくれた方には愛をあげます。
ダウンロードをし終わったら起動して指示に従ってインストールをしてください。あ、PATHって書かれているところはチェックが入ってるようにしてください。(「Add Python 3.7 to PATH」ってやつ)
ちゃんと導入できたかどうかはWindowsだったらコマンドプロンプトで「python」っていれてエンターを押して下のような画面になったらOKです。
もし見つからない的なエラーが出るのであれば、PythonのPATHがうまく通せていないので、再起動したり、もう一度環境変数を調べてみてください。
最新版のdiscord.pyを導入
コマンドプロンプトを管理者権限で起動してください。わからなかったらググってください。今頃ですがDiscord-MLGの導入はちょっと難度高いです。そこで以下のコマンドを打ちます。
python -m pip install -U discord.py[voice]
上のコマンドを打つといろいろ出てくると思うので、「y」とかで許可したりしてインストールを完了させてください。
完了後導入を確認するために、以下の順番でコマンドを打って行ってください。Discord.pyのバージョン名が出てくれば導入成功です。
python
import discord
print(discord.__version__)
上のような画面だったら導入成功。
FFmpegの導入
Discord-MLGでは音声を使いますので、FFMPEGも必要です。こちらはPATHの導入まで超絶テキトーに説明するので、安心を。
ちょっと古い画像ですが、上のリンクにアクセスしたら「Download Build」をクリックしてダウンロードしてください。
ダウンロードしたら展開をして、「bin」フォルダ内の3つのexeファイルをわかりやすい場所にコピーしてください。
上の画像ならCドライブ直下に「ffmpeg」フォルダを作って置きました。パスは「C:\ffmpeg」ですね。
次にWindows 10をお使いの方なら検索機能を使いましょう。そこに「path」と入力すれば環境変数をいじるやつを開けます。もしなかったり検索を無効にしていたり、Windows 10じゃなかったらコントロールパネルのシステムで左のほうに「システムの詳細設定」っていうのがあるのでそこで同じものが開けます。
開いたら以下の画面の「環境変数」というボタンをクリックしてください。
クリックしたら以下のような画面が開くので、下の「システム環境変数」の枠にある「Path」をクリックしてから下の「編集」をクリックしてください。無かったら「新規」をクリックして「Path」を新しく作って編集します。
クリックしたら右にある「新規」をクリックして先ほどのFFmpegをコピーした場所を入力します。さっきの例ですと「C:\ffmpeg」でしたね。長いと面倒なので直下に置いたわけです。
書き終わったらOKを押して閉じて行ってください。その後コマンドプロンプトで以下のコマンドを入力してみて、下のような画面になったら導入成功です。
ffmpeg -version
Discordデベロッパーサイトからトークン入手
次にDiscordボットで必要なトークンを入手します。
Discord Developer Portal – My Applications
上のサイトにアクセスすると上のようなサイトが出るので、右上の「New Application」をクリックします。
次に名前設定が出るので、わかりやすい名前を付けてください。つけ終わったら「Create」をクリックします。
すると情報入力画面になりますが、ここは設定してもあまり意味ないです。管理画面でのわかりやすさです。次に左の「Bot」をクリックします。
以下の画面になったら右側中央の「Add Bot」をクリックしてください。
画面が変わったらアイコンとユーザー名を設定します。ここで設定したものが実際にDiscord上に反映されます。あとから変えても変わります。作り終わったら次に左側の「OAuth2」をクリックします。
切り替わったらまずは上の「SCOPES」の枠の中にある真ん中にある「bot」をクリックしてください。そしたら下に「BOT PERMISSIONS」が出るので、「Administrator」をクリックしてください。
細かいこと言うとこれは管理者権限なのですが、それが嫌な方は細かく権限をチェックしていきます。把握はしていないですが以下の権限は必要だと思っています。多分。エラーが起きたら管理者権限あげてください。
GENERAL PERMISSIONS
・View Channels
TEXT PERMISSIONS
・Send Messages
・Manage Messages
・Embed Links
・Attach Files
・Add Reactions
VOICE PERMISIONS
・Connect
・Speak
・Use Voice Activity
クリックし終わったら「Copy」を押します。これはURLをコピーしているだけです。因みに管理サイトはまだ使うので閉じないでください。
このURLをサーバー管理者に教えます。以下はサーバー管理者の作業です。
アクセスすると以下のような画面が出るので、「Botをサーバーに追加」をクリックしてサーバーを選択し、権限を確認します。確認したら「認証」をクリックします。場合によってはあの画像認証とか出ます。「認証しました」と出たら閉じてOKです。
そしてこんな感じにボットが追加されていたら成功です。(画像古いですが)
BGM機能を使うには
同じような作業をして、ボットをもう一つ追加してください。
こんなかんじです。
DiscordチャンネルIDとかを取得
Discordの設定を開いて「テーマ」を押して下の方にある「開発者モード」をオンにしてください。
ボイスチャンネルやテキストチャンネルを右クリックして「IDをコピー」が表示されていたらOKです。
Configをいじる
Discord-MLGを展開したフォルダを開いてください。その中にある「config.ini」をメモ帳やVisual Studio Code、Tera Padなどで開いてください。
開いたらいろいろ書いてあるのですが、編集するべき場所を教えます。
必ず必要な場所
- token:Discord Developer PortalのBotで上のほうにある「TOKEN」の「Copy」をクリックしてその後「your-token」を置き換える形で張り付けてください。(英数字でとても長いものです)
- log-room:ガシャ結果のログが出力されます。通常使用するチャンネルのものでもいいですが、新しくチャンネルを作った方がいいです。先ほど表示させた「IDをコピー」したものを「text-channel-id」を置き換える形で張り付けてください。(数字のみのものです)
BGMを使用する場合
- token-bgm:BGM用のボットのDiscord Developer PortalのBotで上のほうにある「TOKEN」の「Copy」をクリックしてその後「your-token」を置き換える形で張り付けてください。(英数字でとても長いものです)
- bgm-room:ボット同士が会話します。 新しくチャンネルを作るのを強く勧めます。先ほど表示させた「IDをコピー」したものを「text-channel-id」を置き換える形で張り付けてください。(数字のみのものです)
起動!
ようやく起動します。Windowsだったら「run.bat」を起動します。
上の画面のように、もしコマンドプロンプトのフォントを変えていたりしたら韓国語や中国語が出てこなかったりしますが、「MSゴシック」を使っていれば表示されます。とりあえず上が普通の「run.bat」で起動したもので、上のようなものになっていたりしたら導入成功です。
下のは「run_bgm.bat」でBGMの設定をきちんとしていれば起動できます。
まとめ
というわけで導入はできましたでしょうか?わからなかったら他のPython系のボットを検索して真似してください。
次に【プレイ編】を書きます。どんなコマンドがあるかの紹介です。
最新情報は以下のページで載せていたりしますので、是非ご覧になってください。
というわけでここまで読んでいただき、ありがとうございました。久しぶりの記事で疲れました。
筆者:花ノひろみん