ぴぴぶろぐ

いろいろたまにプログラミング

自作Discord Botの紹介(ブキルーレットBot)


こんにちは。ぴぴです。

 

某なんとかウイルスのおかげで家にいる時間が増え、余裕がなくてできなかったことができるようになったのでDiscordのBotを作りました。  

 

Pythonの知識が全くなくて「ぴとん」って誤読していた状態からちょいちょい勉強して何とか形になったので公開したいと思います。

 

 

12/25追記:

BOTを改良し機能を増やしました。詳しくは以下の記事を参照してください。

st6r.hatenablog.com

 

スプラトゥーン2のブキランダムルーレット「ブキルーレットBot

名前の通りスプラトゥーン2のブキのルーレットです。

サーバーに招待はこちらのリンクからhttps://discord.com/oauth2/authorize?client_id=718346812410298398&permissions=125952&scope=bot

ネット上にたくさんの同じようなBotが存在しますが、ヒーローブキが抽選の対象から外れているものが多かったのとBotを作って勉強したかったので作ることにしました。

 

コマンド

 

このBotはいくつかの機能があり、コマンドによってランダムにブキが選ばれて返信されます。

 

たとえば、「ブキ1」と送ると、このようにすべてのブキから一つBotがランダムに送ってくれます。

 

f:id:st6R:20200615184144p:plain

ブキ1と送信したとき

 返信の「○○さんのブキは」の○○には送信者のニックネームが入ります。

ちなみに今まで何が出たのかは考慮されないので、同じ武器が2回連続で出ることがまれにあります。

 

コマンド一覧

 

ブキ1→全ブキの中から1つランダムで選んで返信します。

ブキ4→全ブキの中から4つランダムで選んで返信します。

ヒーロー1→ヒーローブキから1つランダムで選んで返信します。

シューター1

マニューバー1

チャージャー1

スロッシャー1

フデ1

ローラー1

ブラスター1

シェルター1

スピナー1

→それぞれのブキ種から1つランダムで選んで返信します。

擬似 →擬似確に必要なメイン性能の表をチャット欄に貼ってくれます。

 

ここから最近追加した機能です。

ブキ1d→全ブキの中から1つランダムで選んでDMに返信します。

ヒーロー1d→ヒーローブキから1つランダムで選んでDMに返信します。

シューター1d

マニューバー1d

チャージャー1d

スロッシャー1d

フデ1d

ローラー1d

ブラスター1d

シェルター1d

スピナー1d

→それぞれのブキ種から1つランダムで選んでDMに返信します。

 

 

 

技術的な話

Pythonで作り、Herokuで常時稼働させています。

ソースコードを公開したかったけどあまりにお粗末すぎてやめた

勘のいい方なら気づかれてると思いますがfor文が使えなくてわざわざ繰り返していたりします。ブキ2とブキ3が実装されていないのもそのためです。

一度選ばれたブキを抽選対象から外したり対応するブキの画像を添付したり、やりたいことがたくさんあるので近日実装すると思います。

 

 

さいごに

初めて自作Botを世に放つのでたくさんの人に使われることを祈ってます。

サーバーに招待はこちらのリンクからhttps://discord.com/oauth2/authorize?client_id=718346812410298398&permissions=125952&scope=bot

不具合やバグなどがあったらコメントやTwitterで教えてくださるとうれしいです。