電卓
電卓機能は、Discord 上で数式を計算できる /calc コマンドを提供する機能です。コマンドで数式を入力して結果を受け取れるほか、メッセージの自動検出やリアクションでの起動にも対応しています。コマンドの有効状態や権限、自動検出の動作などをダッシュボードから設定できます。
電卓機能は本来プレミアム向けの機能ですが、ベータ版のあいだは全ユーザーに無料でプレミアムが付与されているため、追加の費用なくご利用いただけます(ベータ終了後はプレミアム限定になる予定です)。プレミアムの扱いはモジュールの基本と共通操作をご覧ください。
できること
/calcコマンドで数式を計算し、結果を受け取れます。- メッセージの内容から数式を自動検出して計算する動作を、いくつかのモードから選べます。
- メッセージに付いた特定の**リアクション(絵文字)**をきっかけに計算を起動できます。
/calcコマンドの有効/無効と権限を設定できます。
設定の手順
機能を有効化する
電卓機能の設定ページを開き、ページ上部にある「機能の有効化」のスイッチをオンにします。このスイッチがオフのままだと、以下で設定した内容は反映されません。
コマンドの有効状態と権限を設定する
「コマンド権限設定」のブロックで、/calc の有効/無効を切り替え、必要に応じて権限を設定します。
| 項目 | 説明 |
|---|---|
| 「コマンドを有効化」 | このコマンド自体を利用可能にします。 |
| 「個別権限設定を有効化」 | オンにすると BotShade 独自の権限設定を使い、オフのときは通常の Discord 権限判定を使います。 |
| 「Discord権限より個別設定を優先」 | 個別権限設定を、Discord 側の既存権限よりも優先して適用します(取り扱いに注意が必要な設定です)。 |
権限設定の詳しい考え方は コマンドの権限設定 を参照してください。
自動検出モードを選ぶ
「自動検出」のブロックで、メッセージから数式を検出する方法を選びます。モードは次の 4 つです。
| モード | 動作 |
|---|---|
none | 自動検出を行いません(無効)。 |
equals | 末尾が = で終わる数式を検出します。 |
bare | 数式だけで構成されたメッセージを検出します。 |
affix | 設定した接頭辞・接尾辞で囲まれたメッセージを検出します。 |
affix モードでは、接頭辞と接尾辞を指定できます。
自動検出の細かい挙動を調整する
自動検出による計算の連続実行を抑えるクールダウンと、自動検出で処理する数式の最大文字数を調整できます(既定値は既定値を参照)。
リアクション起動を設定する
特定の絵文字が付いたときに計算を起動したい場合は、「リアクション起動」を有効にします(既定はオフ)。起動に使う絵文字は既定で 🧮 です。計算結果は、リアクションが付いたメッセージのスレッドなどに返されます。
保存する
画面下部の保存バーから「保存」します。保存操作の詳細はモジュールの基本と共通操作をご覧ください。
コマンド一覧
電卓機能が Bot に追加するコマンドは次のとおりです。
/calc <expression>
expression(数式)を計算して結果を返します。たとえば 2*(3+4)、sqrt(2)、sin(pi/2) のような数式を入力できます。
- 計算の評価は約 2 秒でタイムアウトします(暴走防止のための仕組みです)。
- 出力が長い場合は、約 1900 文字で省略されます。
利用できる関数・定数
数式では、次の関数と定数を利用できます。
| 種類 | 利用できるもの |
|---|---|
| 基本 | abs, ceil, floor, round |
| 三角関数 | sin, cos, tan, asin, acos, atan |
| べき・指数・対数 | sqrt, cbrt, exp, log, log10 |
| 双曲線関数 | sinh, cosh, tanh |
| 定数 | pi, e |
既定値
自動検出で検出されたメッセージは、/calc と同じ扱いで評価されます。主な既定値は次のとおりです。
| 項目 | 既定 |
|---|---|
| 自動検出モード | none(無効) |
affix の接頭辞 | calc |
affix の接尾辞 | 空 |
| リアクション起動 | オフ |
| 起動絵文字 | 🧮 |
| 自動検出のクールダウン | 5 秒 |
| 入力の最大長 | 200 文字 |
うまくいかないとき
- 自動検出が反応しない: 「機能の有効化」と自動検出モードを確認してください。
affixモードでは、設定した接頭辞・接尾辞で囲まれていないメッセージは検出されません。 - 一部のメッセージだけ計算されない: クールダウン中に送られた数式と、入力の最大長を超えた数式は自動検出の対象になりません(既定値)。
- 計算が止まる・結果が途中で切れる: 負荷の高い計算は評価がタイムアウトし、長い出力は途中で省略されます。
次のステップ / 関連ページ
- コマンドの権限設定 — コマンドごとの権限の考え方
- Bot の作成と設定の基本 — 機能の有効化と保存の流れ
最終更新: