【Minecraft】ProtocolLib プラグイン
ProtocolLib
適応バージョン:1.13
対応バージョン:1.8,1.9,1.10,1.11,1.12,1.13,1.14,1.15,1.16,1.17,1.18,1.19,1.20
ProtocolLibの概要
ProtocolLib
最新の開発ビルドを1.20.6および1.21で使用してください。
1.8から1.20.4までは最新のリリースを使用してください。
2百万回以上のダウンロード、ありがとうございます!
ProtocolLibが気に入っていたり、あなたの生活が大幅に楽になった場合は、一度きりの寄付、プロジェクトのスポンサー、または下のレビューにポジティブな評価を残していただけると大変嬉しいです。本当に感謝しています!
特定のタスクは標準のBukkit APIでは実行できない場合があり、Minecraftを直接操作したり変更したりする必要があります。一般的な技術としては、受信および送信パケットを変更したり、カスタムパケットをストリームに挿入したりする方法があります。ただし、これはかなり面倒であり、ほとんどの実装はMinecraftの新しいバージョンがリリースされるとすぐに壊れてしまいます。主に難読化が原因です。
ProtocolLibは、Minecraftプロトコルへの読み書きアクセスを提供するライブラリです。リフレクションやチャネル注入に必要なほとんどのオーバーヘッドを処理し、パケット変更を簡素化するラッパーを提供します。ほとんどのMinecraftの更新に合わせて更新されるため、理想的には個々のプラグインは更新する必要がありません。ProtocolLibは、コードの変更が少ないマイナーアップデートの場合、特に更新が必要ないことがよくあります(例:1.8のセキュリティアップデート)。
便利なリンク
サポート バグを報告する前に:
- ProtocolLibのアップデートを確認してください。エラーやバグが既に修正されている可能性があります。
- スタックトレースを読み、ProtocolLibに関連するエラーであることを確認してください。ProtocolLibのパッケージは
com.comphenix.protocol
です。これが含まれていない場合は、ProtocolLibの問題ではありません。 - 一般的なエラーのウィキページを確認してください。
バグを報告する際は:
- イシュートラッカーを使用してください!レビューにバグを報告しないでください。新しい問題を報告する前に重複を検索してください。
- できるだけ多くの情報を提供してください。ProtocolLibのバージョンとSpigotのバージョンを提供してください。
- スタックトレースや「エラー」をpastebinで提供してください。
サーバーオペレーター向け
- 上記のリンクからProtocolLibをダウンロードしてください。それ自体では何も実行しませんが、他のプラグインが機能するようにします。
開発者向け
- 少し古いチュートリアルはこちらで見つけることができます。新しいチュートリアルがウィキで進行中です。
TinyProtocol
- ProtocolLibの軽量な代替として、TinyProtocolがあります。基本的に構造修飾子やラッパーなしで生のパケットを送受信するメカニズムです。こちらで見つけることができます。
Mavenリポジトリ
- Mavenを使用している場合、次のリポジトリからjar、JavaDoc、および関連ソースを自動的にダウンロードできます:
htmlコードをコピーする<repositories>
<repository>
<id>dmulloy2-repo</id>
<url>https://repo.dmulloy2.net/repository/public/</url>
</repository>
<!-- 他のリポジトリ -->
</repositories>
Gradle
javaコードをコピーするrepositories {
maven { url "https://repo.dmulloy2.net/repository/public/" }
}
dependencies {
compileOnly group: "com.comphenix.protocol", name: "ProtocolLib", version: "4.8.0";
}
コマンド
- Protocol
主な管理コマンド。以下のサブコマンドをサポートしています:config
: 設定ファイルを再読み込みします。check
: BukkitDevで新しいバージョンを確認します。version
: 現在実行中のProtocolLibのバージョンを表示します。timings
: 各プラグインが費やすCPU時間の測定を切り替えます。listeners
: ProtocolLibを使用しているプラグインと、インターセプトしているパケットの種類を表示します。
- PacketLog
提供されたパケットの16進表現をファイルまたはコンソールにログします。
構文:/packetlog <protocol> <sender> <packet> [file/console]
受け入れられるパケットはこちらで確認できます。
すべてのこれらのコマンドには、protocol.admin
の権限が必要です。
設定 利用可能な設定オプションの小さなセットがあります:
グローバルセクション
yamlコードをコピーするauto updater.notify: true # 新しいバージョンのProtocolLibが出た時に、権限を持つプレイヤーに通知します。
auto updater.download: false # 最新版のProtocolLibを自動的にダウンロードしてインストールします。インストールはサーバーの再起動時に適用されます。
auto updater.delay: 43200 # 新しいアップデートのチェック間隔を秒で指定します。
auto updater.last: 0 # 最後にアップデートチェックが行われた時刻を記録します(1970年1月1日からの秒数)。0に設定すると、新しいアップデートチェックを強制します。
metrics: true # TRUEの場合、ProtocolLibはmcstats.orgに匿名の使用データを公開します。FALSEに設定すると、公開をオプトアウトします。
background compiler: true # TRUEの場合、ProtocolLibはリフレクションをコンパイルコードで動的に置き換えてパフォーマンスを改善しようとします。
ignore version check: None # 特定のMinecraftバージョンでProtocolLibを強制的に起動させます。互換性がない場合でも起動します。
互換性 このプロジェクトの主要な目標の一つは、異なるMinecraftバージョンとの最大互換性を実現することでした。結果として、かなり柔軟性があります。パッケージの変更を除けば、将来の変更に対しても弾力的です。おそらく、バグ修正や新機能以外でProtocolLibを更新する必要はないでしょう。
これはどうやって可能なのでしょうか?結局、リフレクションに依存しています。本質的に、名前はハードコーディングされておらず、すべてのフィールド、メソッド、クラスはフィールドタイプ、パッケージ名、パラメータタイプを見て推測されます。異なるバージョン間で非常に一貫しています。
例示プラグイン ProtocolLibで興味深いことをしている良くできたプラグインのいくつか。インスピレーションを得るために、ソースコード(入手可能であれば)を確認してください。
- Lib’s Disguises
- Holographic Displays
- Advanced Anti Cheat
- Server List Plus
- FurnitureLib
- AntiAura
- PremiumVanish
ProtocolLibを使用していてリストに載りたい場合は、DMしてください。
統計 ProtocolLibはBStatsを通じて匿名で統計を収集しています。参加は完全にオプションであり、いつでもオプトアウトできます。ただし、プラグインがどのような環境で動作しているか(例:Spigot、Java、ProtocolLibのバージョン)を把握するのに非常に役立つため、開発の調整ができます。
スポンサー ProtocolLibがあなたの生活を大幅に楽にしたり、特に寛大な気持ちでいる場合は、プロジェクトのスポンサーを考えてみてください!これは、プラグインの維持に費やした多くの時間をサポートし、私を動機づける素晴らしい方法です。支援が難しい場合は、スポンサーにならないでください。
[スポンサーになる](https://github.com/sponsors
寄付してくださった方々に大変感謝しています!
(もしお名前を見逃したり、匿名でいたい場合は、PMを送ってください)
- nathan818 – $1000
- InstaAE – $150
- MineCove – $100
- Lael – $100
- joehot200 – $75
- Techcable – $30
- VintageDon – $25
- games647 – $25
- Photon – $15
- Ltd-Net – $11
- CultivateMC – $10
- Axzial – $10
- snapsi – $5
- Aberzhulan – $5
- Art in the Shade – $5
バグレポートをレビューセクションに残さないでください。サポートを受けるには最適な場所ではなく、対応できません。問題を診断し修正するためには、イシュートラッカーをご利用ください(一般的なエラーのページを確認し、重複を検索してから)。
ダウンロード手順
ProtocolLibのインストールと設定に関する説明は、公式Wikiのインストールページを参照してください。
- 1.プラグインをダウンロードする。
- 公式サイトから「LoginSecurity」プラグインをダウンロードします。
- 2.プラグインをサーバーに追加する。
- 「ProtocolLib.jar」をサーバーフォルダ内の「Plugins」に追加します。
- 3.サーバーを再起動する。
- サーバーを再起動することで「plugins」フォルダ内に「ProtocolLib」フォルダが生成されます。同時にプラグインがサーバーに適応されます。
権限について
権限については、公式wikの権限一覧ページを参照してください。
コマンドについて
コマンドについては、公式wikのコマンド一覧ページを参照してください。
参考ページ
この記事では、海外向けの記事を日本人向けに翻訳し情報公開しています。参考ページは以下になります。