Minecraftプラグイン ProtocolLib
ProtocolLib は、他のプラグインにネットワークプロトコルへの直接的な読み書きアクセスを提供し、パケットの傍受や変更を可能にする Minecraft プラグインライブラリです。
ProtocolLib のあるサーバーを探す
ProtocolLib を報告したサーバー: 174
- 'A savage place! / as holy and enchanted / As e’er beneath a 15 人オンライン
- SentrySMP 38 人オンラインJava
- LinkCraft 13 人オンラインJavaProgression
- FRIENDS SMP ѕᴜʀᴠɪᴠᴀʟ | ᴘᴠᴘ | ʟɪꜰᴇѕᴛᴇᴀʟᴢ !! 47 人オンラインJava
- J's Hideout SMP 25 人オンラインJava + Bedrock
- play.vcraft.fr:23020 20 人オンラインJava + Bedrock
ProtocolLib について
🔌 ProtocolLib について
ProtocolLib は、Minecraft のネットワークプロトコルを他のプラグインに公開するプラグイン用ライブラリです。サーバーとクライアント間の生のパケットを読み取り、変更し、キャンセルし、送信するための API を提供し、プラグインが難読化されたサーバー内部に依存する必要をなくします。
🎯 目的
ProtocolLib は、パケットレベルの処理をプラグイン開発者にとって信頼性が高く、保守しやすいものにするために存在します。安定した API の背後にパケットアクセスを集約することで、複数のプラグインがサーバー内部クラスに直接フックせずにパケット通信を निरी視・変更できるようにします。
⚙️ 特徴
- 受信・送信パケットを横取りするイベント形式の API。
- 文字列、int、ベクトルなど一般的なパケットフィールドの読み書きアクセサ。
- パケットが宛先に届く前にキャンセルしたり、内容を変更したりする機能。
- サーバー側でパケットを構築して送信するためのユーティリティ。
- インデックスベースの読み書きシステムの背後に難読化されたサーバークラスを隠し、バージョン間の安定性を向上。
- サーバー側 jar として配布され、プラグインのビルド時依存関係として利用可能。
🧩 対象ユーザー
- パケットレベルの制御が必要なプラグイン開発者(装飾、変装、クライアント側のカスタム効果、ネットワークユーティリティなど)。
- 直接的なプロトコルアクセスに依存するプラグインを運用するサーバー管理者。
🏗️ 使用例
- チャットパケットを監視して、メッセージが適用される前にサーバー側で検閲する。
- 仕込んだ爆発パケットをプレイヤーに送信し、ワールド状態を変更せずにクライアント側の効果を作る。
- 変装、カスタムアニメーション、その他パケット操作を必要とするクライアント専用の見た目を実装する。
⌨️ コマンド
ProtocolLib 自体はユーザー向けコマンドを提供しません。機能プラグインではなく、開発者向けライブラリです。
⚙️ インストール
📥 セットアップ
- 公式の ProtocolLib jar をダウンロードし、サーバーの
plugins/ディレクトリに配置します。 - サーバーを再起動し、コンソールでエラーなくプラグインが読み込まれることを確認します。
- ProtocolLib を使うプラグインを開発する際は、ProtocolLib をビルド時依存関係として追加し、プラグインのマニフェストに明記します(または soft-depend を設定します)。
📦 依存関係
- ProtocolLib は動作に他のサーバープラグインを必要としません。ライブラリとして他のプラグインで使うことを想定しています。
🧾 設定
- ProtocolLib は初回起動時に独自の設定ファイルを作成します。プラグイン固有の設定は、ProtocolLib を使用する側のプラグインが管理します。
🧠 技術的メモ
- ProtocolLib は、パケットリスナーの登録とプログラムによるパケット送信のための
ProtocolManagerエントリポイントを提供します。 - このプロジェクトは GPL-2.0 ライセンスで配布されています。
- Maven/Gradle の座標はビルド時依存関係として利用できるよう公開されています。
- ProtocolLib は幅広い Minecraft サーバー版との互換性を考慮して保守されており、主に Bukkit 系サーバーソフトウェアを対象としています。
🤝 このプラグインが役立つ場面
クライアント側の効果、カスタム見た目、またはネットワークレベルのフックのために、Minecraft の生のプロトコルを調べたり変更したりする必要があるなら、ProtocolLib はその処理を中央でまとめて安定化し、複数のプラグインが安全にパケットとやり取りできるようにします。
コメント
まだコメントはありません
最初のコメントを書きましょう。
サーバー管理者向け
- 作者
- dmulloy2, aadnk
- ライセンス
- GPL-2.0
- 対応プラットフォーム
- Bukkit, Spigot, Paper
- 対応バージョン
- 1.8–1.21
リンク
- ダウンロードspigotmc.org/resources/protocollib.1997
- ソースコードgithub.com/dmulloy2/ProtocolLib
- ドキュメントprotocollib.org
- 問題追跡github.com/dmulloy2/ProtocolLib/issues
- サポートgithub.com/dmulloy2/ProtocolLib/discussions
- protocollib.comprotocollib.com
- BukkitDev pagedev.bukkit.org/projects/protocollib
- GitHubgithub.com/sponsors/dmulloy2
- protocollib.comprotocollib.com
- protocollib.netprotocollib.net
サーバーの報告
サーバープラットフォーム
- Paper122
- Purpur21
- CraftBukkit11
- Arclight4
- Cauldron4
- Leaf3
- Mohist2
- CatServer2
- Spigot2
- Yatopia1
- Magma1
- Parchment1
プラグインのバージョン
- 5.4.083
- 5.5.051
- 5.3.08
- 5.4.18
- 4.8.04
- 4.7.03
- 3.4.03
- 4.5.13
- 5.0.02
- 4.6.02
- 5.2.02
- 5.1.12
- 2.7.01
- 3.7.01
- 4.4.01
MSHQ のチェック時にプラグイン一覧を公開しているサーバーの数です。多くのサーバーは一覧を隠しているため、実際の利用はもっと多いです。