【Minecraft】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のコマンド一覧ページを参照してください。

参考ページ

この記事では、海外向けの記事を日本人向けに翻訳し情報公開しています。参考ページは以下になります。

https://www.spigotmc.org/resources/protocollib.1997

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です