Minecraft 플러그인 BKCommonLib

BKCommonLib와 확인된 서버에 대한 정보

🔌 BKCommonLib 소개

BKCommonLib은 Minecraft 서버를 위한 서버 측 라이브러리이자 플러그인으로, 저수준 유틸리티, reflection 헬퍼, 런타임 리매핑, 작은 프레임워크를 한곳에 모아 다른 플러그인들이 NMS(Minecraft 서버 내부 구현)를 직접 사용하지 않아도 되게 해 줍니다. Minecraft나 서버 포크의 내부 구현이 바뀌더라도 BKCommonLib만 업데이트하면 되도록 설계된 단일 호환성 레이어입니다. 그래서 의존하는 플러그인들은 별도 변경이 필요 없는 경우가 많습니다.

🎯 목적

플러그인 개발자와 서버 운영자를 위해 안정적이고 재사용 가능한 호환성 및 유틸리티 레이어를 제공하는 것입니다. BKCommonLib은 플러그인 작성자가 배포해야 하는 버전별 코드를 줄여 주며, 패킷 처리, 변환, 명령 프레임워크, 기타 저수준 작업을 위한 더 높은 수준의 API를 제공합니다.

⚙️ 기능

  • Mountiplex reflection/template 시스템을 통한 런타임 클래스 생성 및 리매핑.
  • 내장된 명령 프레임워크 유틸리티(Cloud Command Framework 연동).
  • 라이프사이클 헬퍼, 의존성 검사, 리스너와 명령 등록을 위한 편의 API를 갖춘 플러그인 기반 프레임워크.
  • 타입 변환 유틸리티(Bukkit 타입과 내부 타입 간 자동 변환이 필요한 경우 지원).
  • 다양한 서버 포크와 버전에 대한 유틸리티 및 호환성 shim으로 플러그인이 NMS를 직접 사용하지 않도록 지원.

🧩 대상

  • 여러 버전 호환 레이어와 reflection 유틸리티가 필요한 플러그인 개발자.
  • 공통 호환성 라이브러리에 의존하는 많은 서드파티 플러그인을 운영하는 서버 관리자.
  • Paper/Spigot 포크 전반에서 일관된 동작이 필요한 기술적인 서버 운영자.

🏗️ 사용 예시

  • 어떤 플러그인이 BKCommonLib을 사용해 Minecraft 버전 간 패킷 차이를 처리하여, 플러그인 jar 자체는 업데이트 사이에 그대로 유지되도록 합니다.
  • 개발자가 포함된 명령 프레임워크 유틸리티를 사용해 제안 지원과 권한 처리를 포함한 어노테이션 기반 명령을 구현합니다.
  • 어떤 서버가 Minecraft 출시 후 즉시 업데이트해야 하는 빈도를 줄이기 위해 BKCommonLib에 의존하는 플러그인들을 실행합니다.

⚙️ 설치

📥 설정

  • 플러그인의 공식 배포본에서 BKCommonLib 공식 jar를 다운로드하세요(제공된 jar를 서버의 plugins/ 폴더에 넣으세요).
  • 플러그인이 시작 시 로드되도록 서버를 재시작하세요.
  • 서버 콘솔 출력에서 BKCommonLib 시작 메시지를 확인하여 정상적으로 초기화되었는지 확인하세요.

📦 의존성

  • BKCommonLib은 라이브러리 플러그인으로 배포되며, 핵심 라이브러리 자체에는 추가 Bukkit/Spigot 플러그인 의존성이 필요하지 않습니다.

🧠 기술 노트

  • 호환이 확인된 서버 소프트웨어에는 Spigot과 Paper 포크가 포함됩니다(프로젝트는 Spigot, PaperMC, Purpur 및 기타 일반적인 포크를 명시적으로 나열합니다).
  • 프로젝트는 최신 BKCommonLib 빌드를 사용할 때 Minecraft 1.8 이상 버전과의 호환성을 명시합니다.
  • BKCommonLib은 MIT License로 배포됩니다.
  • 작성자에 따르면 프로젝트는 Cloud Command Framework, ASM, Javassist, Objenesis, SnakeYAML, Gson 같은 서드파티 라이브러리를 번들링/섀도잉합니다.

🤝 이 플러그인이 유용한 경우

여러 플러그인이 각자 NMS를 처리하지 않고도 저수준 서버 기능에 일관되게 접근해야 하는 서버를 운영하거나 플러그인을 관리한다면, BKCommonLib은 공유 호환성 레이어와 개발자 유틸리티를 제공해 플러그인별 버전 전용 코드와 유지보수 부담을 줄여 줍니다.

BKCommonLib 플러그인 서버

플러그인 BKCommonLib 페이지에는 모니터링에서 이 플러그인을 확인한 서버, 사용 중인 플랫폼과 버전이 표시됩니다.

플러그인은 명령어, 경제, 보호, 접근 권한, 미니게임, 연동 및 기타 메커니즘을 추가할 수 있습니다. BKCommonLib의 실제 역할은 서버별 설정에 따라 다릅니다.

데이터는 서버의 기술 응답에서 자동으로 생성됩니다. 서버가 플러그인 목록을 비공개로 설정한 경우, BKCommonLib을 사용하더라도 이 섹션에 표시되지 않을 수 있습니다.

BKCommonLib을 사용하는 서버 목록을 통해 프로젝트를 비교하거나, 지원 버전을 확인하거나, 공개 서버에서의 플러그인 사용 사례를 찾을 수 있습니다.