ナレッジベース

/

リリースノート

修正

v2.5.1 リリースノート

カスタムコマンドの選択肢オプションを条件分岐で比較しても一致せず、常に「その他」へ流れてしまう不具合を修正しました。あわせて、権限チェックや値の場合分けの先に置いたモーダルが表示されなかった問題を解消し、条件分岐の直後にもモーダルを配置できるようになりました。

BotShade 開発チーム
BotShade 開発チーム

|

4 分で読めます

|

公開日: 2026年7月28日

BotShade を v2.5.1 に更新いたしました。本リリースは、カスタムコマンドビルダーについてご報告いただいた 2 件の不具合の修正 を中心とした修正リリースです。いずれも「選択肢で処理を分ける」「フォームで詳細を入力してもらう」という、コマンド作成でよく使われる構成に関わるものです。

お気づきの点がございましたら サポート よりお気軽にご報告ください。

本記事の目次:

ハイライト

  • カスタムコマンドの 選択肢オプション を条件分岐の比較対象に指定しても値が一致せず、どの選択肢を選んでも 常に「その他」の分岐に流れてしまう 不具合を修正しました。
  • 権限チェックや値の場合分けの先に置いたモーダル が表示されず、その先に並べた処理(BAN・キック・タイムアウトなど)がまとめて実行されなかった不具合を修正しました。
  • あわせて、モーダルを 条件分岐の直後に配置できる ようになりました。「管理者にだけ入力フォームを出す」「選ばれた操作ごとに違うフォームを出す」といった構成が、そのまま組めます。

選択肢オプションの値で分岐できない不具合を修正

コマンドに 選択肢オプション(あらかじめ用意した候補から 1 つ選んでもらうオプション)を追加し、選ばれた値で処理を分ける——これはカスタムコマンドでもっともよく使われる構成のひとつです。

これまで、比較の条件に選択肢オプションの変数(例: {option_command})をそのまま指定すると、どの選択肢を選んでも一致しない 状態になっていました。その結果、分岐をいくつ並べても実行されるのは「その他(else)」だけとなり、選択肢ごとの処理がまったく動きませんでした。

v2.5.1 では、選択肢オプションの変数を そのまま書いたときは「選ばれた値」 として扱うよう修正しました。メニューやボタンの変数とそろった動作になり、比較の条件に変数を置くだけで期待どおりに分岐します。

内訳は次のとおりです。

  • {option_command} — 選ばれた (比較にはこれを使います)
  • {option_command.name} — 選択肢の 表示ラベル
  • {option_command.value} — 選ばれた {option_command} と同じ)

すでに回避策として .value を付けて記述されていたコマンドは、これまでどおり動作しますので、書き換えは不要です。

条件分岐の先のモーダルが開くようになりました

Discord の仕様上、モーダル(ポップアップの入力フォーム)は「コマンドがまだ何も応答していない状態」でしか開けません。この制約のため、これまで BotShade がモーダルを表示できるのは コマンドの最初のアクションボタンの接続先 に限られていました。

そのため、権限チェックや選択肢の場合分けを手前に挟んだ構成では、条件を満たしていてもモーダルが開かず、「モーダルはコマンドの最初のアクション、またはボタンからのみ表示できます」という案内が出るだけで、そのモーダルの先に並べた処理も実行されない 状態になっていました。

v2.5.1 では、条件分岐だけを経由してたどり着けるモーダルであれば、そのまま表示できる ようになりました。条件の判定が終わるまで応答を保留し、モーダル以外の処理に進んだ時点で自動的に応答へ切り替えるため、判定に時間がかかっても Discord の応答期限を超えることはありません。

モーダルを置ける場所

  • コマンドの 最初のアクション
  • 権限チェックや値の場合分け(条件分岐)の直後 — v2.5.1 で新たに対応しました
  • ボタンの接続先

モーダルを置けない場所

  • メッセージ送信など、なんらかの処理を挟んだ先 — Discord 側の制約により、一度応答したコマンドからモーダルを開くことはできません。この場合は、いったんボタン付きのメッセージを送り、そのボタンの先にモーダルを置く構成をご利用ください。

互換性について

これまでご利用いただいていた Bot やコマンドの定義は、v2.5.1 でもそのまま動作いたします。お客様側での移行作業は不要です。

ひとつだけ表示上の変更点として、選択肢オプションの変数を メッセージ本文にそのまま埋め込んでいた場合、これまで内部形式のまま表示されていた箇所が、v2.5.1 からは 選ばれた値 で表示されます。表示ラベルを出したい場合は {option_xxx.name} をご利用ください。

サポート・コミュニティ

ご質問・不具合のご報告・機能のご要望は、以下のいずれかからお気軽にお寄せください。

今後とも BotShade をどうぞよろしくお願い申し上げます。

← ナレッジベースに戻る