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가 확인할 때 플러그인 목록을 공개하는 서버의 수치입니다. 많은 서버가 목록을 숨기므로 실제 사용량은 더 많습니다.