Skip to content

Custom in-house server for a language learning community. discord.gg/nCSuMW95zk

Notifications You must be signed in to change notification settings

chev0004/Maybe-Bot

Repository files navigation

Maybe-Bot

Maybe-Botは、サーバー管理、Minecraftサーバー連携、ソーシャルコマンドなど、さまざまな機能を備えたDiscordボットです。
Maybe-Bot is a Discord bot with various features such as server management, Minecraft integration, and social commands.


🧩 主な機能 | Features

  • サーバー管理 | Server Management: メッセージ削除、未認証メンバーのリスト表示、ロール管理。
    Purge messages, list unverified members, and manage roles.

  • Minecraft連携 | Minecraft Integration: サーバーの起動、停止、ステータス監視。
    Start, stop, and monitor a Minecraft server.

  • ソーシャル | Social: 匿名での告白や返信などのコミュニケーション機能。
    Anonymous confessions and replies between users.


⚙️ コマンド | Commands

🔧 管理者 | Admin

/purge

チャンネルからメッセージを削除。
Delete messages from a channel.
オプション | Options:

  • amount: 削除するメッセージ数 (1–100)
    Number of messages to delete (1–100)
  • user: このユーザーのメッセージのみ削除
    Delete only messages from this user
  • link: このメッセージまで削除
    Delete messages up to this message

purgeto

特定のメッセージまでメッセージを削除。
Purge messages up to a specific message.

image

🧭 管理 | Management

/listunverified

認証ロールを持たないメンバーをリスト表示。
List members without the verified role.
オプション | Options:

  • test: テストモードで偽データを生成
    Generate fake data in test mode
image

⛏️ マインクラフト | Minecraft

/smite

人に神罰を与える。
Punish someone with the Wrath of God.
オプション | Options:

  • victim: 神罰を受ける者の名前
    Name of the victim to smite
image

/startserver

マイクラサーバーを起動。
Start the Minecraft server.

image

/statusserver

マイクラサーバーの現在状況を表示。
Display the current Minecraft server status.

image

/whitelist

マイクラサーバーのホワイトリストにユーザーを追加。
Add a user to the Minecraft server whitelist.
オプション | Options:

  • username: ホワイトリストに追加するユーザー名
    Username to add to the whitelist
  • bedrock: 統合版ユーザーならtrue
    Set to true if the user is on Bedrock Edition
image

👑 オーナーのみ | Owner Only

/restart

BOTを再起動。
Restart the bot.

/update

GitHubから最新のコミットを取得し、BOTを再起動。
Pull the latest changes from GitHub and restart.
オプション | Options:

  • test: 実際の更新を行わずテストモードで実行
    Run in test mode without applying updates
  • force: ローカルの変更を強制上書き
    Force overwrite local changes
  • test_scenario: テストモードでシナリオ指定
    Specify a test scenario when running in test mode
image

💬 ソーシャル | Social

/confess

匿名でメッセージを投稿。
Post an anonymous confession.

image

/reply

特定の投稿に匿名で返信。
Reply anonymously to a specific confession.
オプション | Options:

  • id: 返信対象の投稿ID
    ID of the confession to reply to
image

📊 統計 | Stats

/top

サーバーランキングを表示。
Display server leaderboards.

image

🧰 ユーティリティ | Utility

/uptime

BOTの稼働時間を表示。
Display the bot's uptime.

image

/vc

一時的なボイスチャンネルを作成。
Create a temporary voice channel.
オプション | Options:

  • emoji: チャンネル名に使用する絵文字
    Emoji to include in the channel name
  • jpname: ボイスチャンネル名(日本語)
    Voice channel name in Japanese
  • enname: ボイスチャンネル名(英語)
    Voice channel name in English
  • limit: ユーザー制限(0で無制限)
    User limit (0 for unlimited)
image

🎧 リスナー | Listeners

  • Disboard Bump: DisboardのBumpを検知して通知。
    Detects Disboard bumps and sends notifications.
  • Dissoku Bump: DissokuのBumpを検知して通知。
    Detects Dissoku bumps and sends notifications.
  • Introduction Message: 自己紹介を自動で確認し、正しければメンバーロールを付与。
    Automatically validates introductions and assigns the member role if valid.
  • Message Stat Tracker: メッセージ数とアクティビティを記録。
    Tracks message counts and activity levels.
  • Voice State Update: ボイスチャンネルの入退室やチャンネル移動を記録。
    Records voice channel joins, leaves, and channel swaps.

🧑‍💻 開発 | Development

セットアップ | Setup

  1. リポジトリをクローン
    Clone the repository
    git clone https://github.com/chev0004/maybe-bot.git
  2. 依存関係をインストール
    Install dependencies
    npm install
  3. .env.example.env にコピーして環境変数を設定
    Copy .env.example to .env and configure environment variables
  4. データベースをマイグレート
    Migrate the database
    npx drizzle-kit migrate
  5. ビルド
    Build the project
    npm run build
  6. 起動
    Start the bot
    npm start

環境変数 | Environment Variables

# Discord Bot
OWNER_ID=
TOKEN=
CLIENT_ID=
GUILD_ID=
TEST_GUILD_ID=

# Roles
BUMP_ROLE_ID=
VERIFIED_ROLE_ID=

# Channels
VOICE_CATEGORY_ID=
BUMP_CHANNEL_ID=
WELCOME_CHANNEL_ID=
VOICE_LOG_CHANNEL_ID=
CONFESSIONS_CHANNEL_ID=

# Exaroton (Minecraft)
SERVER_ID=
API_TOKEN=

# Database
DATABASE_URL=

スクリプト | Scripts

# TypeScriptをビルド
npm run build

# BOTを起動
npm run start

# 開発モード (自動ビルド・再起動)
npm run dev

# Biomeでコードをチェック・フォーマット
npm run lint

# Biomeでコードをフォーマット
npm run format

💡 Motivation

Maybe-Bot began as a way to bring new, fun, and useful features to my Discord community. As I started building it, the project also became the perfect opportunity to apply the architectural patterns and modern tooling I used in my professional work.


About

Custom in-house server for a language learning community. discord.gg/nCSuMW95zk

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published