Minecraft サーバー管理プロトコルとは何ですか?
サーバー管理プロトコルは、1.21.9 で導入された Java Edition 専用サーバー API です。WebSocket を介して JSON-RPC 2.0 メッセージを伝送するため、ダッシュボードや自動化は、コンソールテキストを解析する代わりに、型付きのプレイヤー、Ban、設定、game rule、サーバー状態を操作できます。
Minecraft 26.2 はプロトコルバージョン 3.0 を使用し、ゲームサーバーが完全に起動する前に rpc.discover を公開できます。Discovery は、クライアントが到達した正確なサーバーでサポートされているメソッドと通知を学習するための最も安全な方法です。
このエクスプローラーは参照およびペイロードビルダーであり、リモートコントロールパネルではありません。意図的にプレースホルダーシークレットを使用し、すべての編集をブラウザでローカルに実行します。
管理 API と RCON の比較
RCON はコンソールコマンドを送信し、非構造化テキストを返します。管理 API は型付き JSON を返し、参加、退出、保存、game rule、ステータスイベントをプッシュできるため、コントロールパネル、監視、ボットにより適しています。
API は Java Edition のみであり、デフォルトでは無効になっています。本番クライアントは、検出されたスキーマを検証し、標準の JSON-RPC エラーオブジェクトを処理し、バックオフで再接続し、stop、clear、set、ban、kick、および operator の書き込みを特権アクションとして扱う必要があります。
ポート 0 は Minecraft にランダムなポートを選択するように要求します。サービスを無効にするわけではありません。TLS はデフォルトで有効になっており、ブラウザクライアントには許可された Origin と minecraft-v1 WebSocket サブプロトコルも必要です。
よくある質問
このページは私のライブ Minecraft サーバーに接続できますか?
いいえ。これはローカルで例を構築し、実際のシークレットを尋ねることはありません。生成されたスニペットを信頼できるローカルツールで使用するか、保守されているクライアントライブラリを使用してください。
なぜパラメータは JSON 配列として表示されるのですか?
Minecraft API メソッドは位置指定 JSON-RPC パラメータを使用します。1つの論理引数を持つメソッドでも、その値を params 配列内に送信します。
このプロトコルは Bedrock Edition で動作しますか?
いいえ。Minecraft Server Management Protocol は現在、Java Edition 専用サーバーの機能です。
サーバーパネルでメソッドリストをハードコードすべきですか?
可能な場合は実行時に rpc.discover を使用してください。プロトコルは 1.21.9、1.21.11、および 26.2 で既に変更されています。