마인크래프트/플러그인


마인크래프트 주요 문서
게임 진행
관련 문서
명령어마법부여
아이템회로업적
바이옴구조물차원
진행 외
주요 문서
모드리소스팩
멀티플레이플러그인서버 구동
출시된
에디션
포켓에디션콘솔에디션
스토리 모드에듀케이션 에디션
관련 문서튜토리얼여담
커뮤니티닉네임 스킨
개발 관련기초모드
플러그인ModPE
업데이트PC 업데이트 내역PE 업데이트 내역

1 개요

마인크래프트는 자신의 서버에서 따로 자바 프로그램을 통해 마인크래프트 서버를 돌릴 수 있다. 그 자바 프로그램이 종류가 상당한데, Minecraft_Server, Hey0[1][2], CraftBukkit, CraftBukkit 기반의 최적화 버전인 Spigot, Spigot을 또다시 성능 중심으로 확장한 Paper, Forge, Cauldron, Sponge, MC-Server얘는 자바가 아니잖아, GlowStone, 이 서버들을 묶는 BungeeCord[3], 얘와 비슷한 LilyPad 등 다양한 종류의 프로그램이 있다. 그중 대다수가 자신의 플러그인을 지원한다. CraftBukkit과 그를 바탕으로 한 Spigot 등은 Bukkit API를 이용한 플러그인을 지원한다. 유의해야할 점이 있는데, 국내 마인크래프트 커뮤니티의 플러그인은 대부분 Bukkit플러그인만을 지칭한다. 버킷의 플러그인이므로 번지코드에 버킷 플러그인을 넣으면 오류를 뿜어내는것은 당연하다. 제작된, 혹은 자신이 제작한 플러그인을 해당 자바 프로그램에 넣으면 여러 기능을 추가할수 있다. 사실 '플러그인' 이란 말 뜻 자체가 어떤 프로그램에 없던 새 기능을 추가하기 위해 끼워넣는 부가 프로그램 이란 뜻이다. 이러한 서버 모드를 쓰지 않는 서버는 '바닐라 서버'라고 한다.

여튼 그렇게 돼서 현재에 주된 의미는 마인크래프트에서 멀티플레이어 게임을 할때 모드같이 마인크래프트를 개조해 오리지널 마인크래프트에는 없는 것을 할 수 있게 하는 것을 뜻한다. 특히 그 중에서도 한국 인터넷에서 마인크래프트 플러그인 하면 Bukkit의 플러그인을 의미한다. 이 문서의 대부분도 Bukkit의 플러그인에 대하여 서술한다. 외국에서도 별 다를 건 없다

Bukkit 플러그인의 순위 등 통계를 보여주는 [1]는 이용해볼만 하다.

[2]에서 플러그인을 검색, 다운받을 수 있다.

2 특징

일반적인 경우, 특별한 텍스쳐나 모델 등을 추가하지 않고 단지 서버측에서 처리를 바꿔줄 뿐으로써 클라이언트쪽에선 단지 접속만 하면 바로 수많은 플러그인을 이용할 수 있는 장점이 있다. 또한 마인크래프트를 직접 건드리진 못하기 때문에 충돌 문제도 모드에 비해 상대적으로 적다. 또한 모드라면 마인크래프트가 개박살났을 버그라도 플러그인은 상술한 이유로 심해도 서버 맵 정도를 날리고 끝난다. 적은게 아닌 것 같지만 넘어가자.

또한 한계가 명확한만큼 만들기도 쉬워 수많은 플러그인이 있다. 국산도 꽤 된다! 하지만 국산 플러그인들은 외국것과 비교해서 불편한 경우가 흔하다.

3 목록

3.1 준 필수급 플러그인

3.1.1 PermissionsEx

마인크래프트 버킷 내부에도 퍼미션(권한) 기능이 있긴 하지만 너무 빈약하기 떄문에 이 플러그인을 사용한다. 없는 서버를 찾아보기 힘들다. 단, 요즘은 퍼미션 플러그인이 많이 생겼다. 기능은 비슷하지만 플러그인마다 세부적인게 조금 다르다.
이러한 플러그인들은 대부분 yml(yml) 형식의 파일을 이용하는데 특성상 공백을 빼먹거나 맞지 않는 문법을 사용할경우 에러를 쏟아낸다. 그러나 yml의 특성상 콘솔에 어디에 문법에러가 있는지 다 알려주므로 재작성이 용의한편. 물론 알아먹을 수 있다는 전제
사실 명령어로 작성하면 에러가 없는데 대부분의 사람들은 모른다

3.2 보안 플러그인

국내의 KFireWall처럼 오피를 제외한 플레이어의 접속을 임시적, 영구적 으로 막는 플러그인이 있고 메크로 프로그램 방지 형식으로 잠수를 탈 경우 플레이어의 모든 서버 상호작용이 씹어지는(...) 병크내는플러그인 등이 있다. 굳이 사용해보진 말자 호환되는 버전도 적고 여러가지 병크를 유발해서 서버를 망칠 수도 있다 이럴땐 무슨 문제인지도 모르고 서버 어드민은 묵념(...)

3.2.1 게임테러 방지 플러그인

NoCheatPlus 를 사용해서 핵사용 관련된 테러는 대부분 막을 수 있다. 스마트 무빙 핵 사용시 속도를 올린다거나 벽을 타서 움직일 경우 서버 관리자에게 메시지가 전송된다.
개인 블럭 보호 관련으로는 LWC, Lockette[4][5]이 있다.
광범위한 보호로는 PreciousStones 로 블럭을 이용해서 보호하는 방식도 있다. 콘피그를 설정해주면 유저가 사용할 수 있는 수준으로 변경가능하다.
남의 집을 TNT로 멋대로 부수거나, 용암을 붓거나, 물로 집주인을 귀찮게 하거나, 버그를 써서 사람들을 괴롭히거나, 그냥 집을 캐가거나(...) 하는 테러를 방지한다. 타 플레이어에 의해 일어나는 플레이어 입장에서 영 좋지 않은 일들은 거의 막아준다. 하지만 약탈서버/생야생서버에서는 테러 방지 그런거 없다. 어느정도 사회생활을 보장하는 곳에선 오히려 깔지 않고 테러/도둑질이 또다른 직업의 활동으로서 존재하기도 한다.

3.2.2 서버테러 방지 플러그인

CrystalFireWall 국내 개발자 Xeon 이 개발한 서버테러방지 플러그인이다.
프록시 차단을 통한 봇 테러 공격, 강제OP 등을 차단한다. ( 프록시 테러는 정품서버에선 활성화되지 않는다. )
DDOS 같은 네트워크 공격은 방어하지 못한다. UTM 같은 방화벽을 이용하자.

2014년 1월 12일 이후로 업데이트가 없다. CFW2 의 알파버전이 나온듯 하나, 버그도 많고 수요가 적어서인지 개발이 중단되었다. CFW2 최신버전 (카페가입이 필요하다)

3.2.3 블럭 로깅, 롤백 플러그인

CoreProtect 가 있다.
되도록이면 MySQL과 겸용하도록 하자. 같이 안쓰다가 크래쉬 되는 서버 많다!

모르는 사람이 많은 명령어로
/co rollback T:<시간><시간단위>
/co l a:<로그조사명> u:<유저>
가 있는데 정작 1.5.2 서버들은 이런 기능을 사용하지 않는다. 그래서 월드에딧으로 재발 언도점요.. 죄송합니다... 후원 안받을게요 언도를 치라고 강요하는데 상대방이 안치면 그만이다.(...)

3.3 컨텐츠 중심 플러그인

3.3.1 능력자 플러그인

무작위 능력을 할당 받아서 능력을 이용하여 PvP를 통해 승리하는 게임이다.
자세한 내용은 항목 참고

3.3.2 Traincart

항목 참고.

3.3.3 Magic Spells

말그대로 마인크래프트에서 마법을 쓸 수 있도록 해 주는 플러그인이다. 실제로 마인크래프트 내부의 엔티티나 파티클들을 이용하여 모드가 없이도 서버에 접속만 하면 다양한 마법적 효과가 나타날수 도와준다. 이 만들어진 마법 주문들은 제작자의 능력에 따라 상당한 퀄리티의 차이를 보이는데 실제로 잘만드는 사람들은 이것만 가지고 메테오나 드래곤 브레스는 물론이고 원기옥, 추적 미사일, 결계, 발도등등 다양한 것들을 만들어낸다. 서버사양에 따라 렉의 주범이 되는건 함정(...) 사실 추적기가 원기옥보다 더 쉽다. Homing으로 기본 스킬세팅 후 데미지/이펙트만 넣으면 된다. 미사일 모양이 더힘들다극악의 난이도를 자랑하는 플러그인 중 하나이다. 주로 스킬 코딩만 15줄 정도가 들어가는데, 하나의 스킬을 완성하려면 약 8개 정도의 매직스펠이 들어간다(!) 인터넷에 검색해서 나오는 메테오는 매직스펠이 약 15개정도 모여있다! 자세한 내용은 추가바람.

3.3.4 Crack Shot

총 플러그인이다. 다양한 계열의 총들과 폭탄이 기본 사양으로 들어있으며 자기 스스로 입맛에 맞춰 수정하거나 새로 만드는것이 가능하다. 특히 이 플러그인의 강점은 다양한 총들의 효과를 클라이언트의 수정(모드 등)이 없이 이용할 수 있다는 것인데 이는 초보자들의 서버 유입을 쉽게 만들어준다. 이 플러그인으로 만들수 있는 총과 폭탄의 효과는 무궁무진한데, 총 맞으면 하늘로 날아가게 한다던가, 폭탄을 던지면 하늘로 발사되어 사람을 공중으로 끌어모아 던져버린다든지, 원격 폭탄을 만든다던지, 아무튼 다양한 총기와 폭탄을 만들 수 있도록 도와주는 좋은 플러그인이다. 특히 다른 플러그인도 그렇지만 서버 텍스쳐나 리소스팩등과 함께하면 큰 시너지 효과를 얻을 수 있다. 솔직히 음반이나 괭이에서 총알이 나가면 느낌이 이상하잖아??
여담으로, PVPgunplus 플러그인도 이 플러그인과 같이 총 플러그인이다.

3.4 스크립터 계열 플러그인

3.4.1 VariableTriggers

스크립터 계열 플러그인중 대표주자[6]이자 입문형으로 주로 간단한 코드를 짜거나 명령어 축약의 용도로서 많이 사용한다. 하지만, 역시 스크립터 계열답게 지원하는 기능이 얼마 없더라도 많은 것들을 만들어 낼 수 있다. 이것의 상위호환형인 Skript나 one commend 정도까지 가면 거의 플러그인을 대체 할 수 있을 정도 하지만 서버렉은 책임 못진다.. 사실 이 플러그인의 주된 이용 구문은 IF구문으로서 보통 일정한 조건을 만족시키는 상황에서 변수를 생성하고 그 값을 IF구문에 넣어서 다양한 명령을 시행하는 형태로서 사용된다. 하지만, 거의 대부분은 명령어 줄일려고 쓴다는게 함정..

3.4.2 Skript

스크립터 계열 플러그인중 해외를 포함해서 가장 많이[7]사용하는 플러그인이다.[8] 위의 Varriable Triggers(VT) 는 명령어로 만드는 방식이라면 Skript는 전부 파일을 직접 수정하는 방식으로 제작한다. 기능은 VT보다 비교하기가 미안할 정도로 많으며 여기에 애드온을 추가해서 기능을 더 확장할 수 있다.
VT에 비해서 한가지 부족한게 있다면 해당 위치의 블럭에 기능을 넣지 못한다.[9] Skript 플러그인 전용 애드온을 추가하여 Skript 자체의 기능의 한계를 뛰어넘을 수 있다.

3.4.3 CommandHelper

커맨드헬퍼 Bukkit 포럼 커맨드헬퍼 공식 위키 (영어) 커맨드헬퍼 개발 빌드 (다운로드) 커맨드헬퍼 깃허브 (소스)
(버킷 포럼에는 마지막 업데이트가 2011년이지만 계속 업데이트가 되어지고 있다)
스크립터 계열 플러그인중 가장 나중에 한국에 알려진 플러그인이자, 제일 많은 기능과 발전 가능성을 가지고 있는 플러그인이다. Skript 플러그인과 동일하게 파일을 수정하는 방식과 게임 내에서 명령어로 작성하는 방식을 사용하나, 명령어로 입력하는 방식의 한계는 파일을 수정하는 방법보다 많이 제한되어 있다. 스크립터 계열 플러그인중에선 기능면으로 봤을땐 감히 따라올 자가 없을 정도로 발전할 수 있다! 단, 작성자의 실력이... 특수한 기능은 API 지원, DB 연결 지원 (MySQL, SQLite, PostgreSQL), WorldEdit 플러그인 및 WorldGuard 플러그인 연동 지원, 경제 플러그인 연동 지원, IRC 접속 지원 등이다. Bukkit 플러그인의 기능을 편하게 사용할 수 있도록 제작해 놓았다고 봐도 과언이 아닐 정도로 엄청난 기능이 있다.

3.5 기타 플러그인

3.5.1 Essentials

Essentials
각종 도움이 되는 기능을 제공한다. gamemode를 gm으로 줄인다던지 하는 사소한것부터, 닉네임을 일부만 쳐도 대상을 인식하는 것까지 있다. 그냥 탭키치면 되는데 그게 귀찮다고... 사실상 마인크래프트 버킷 서버의 필수요소다. 없으면 사용자가 현기증을 냈다. 요즘은 Craftbukkit이 1.8로 업데이트가 안되고 Spigot이 이를 이어가기 시작하자 "Craftbukkit의 공식 1.8 버전이 없으니 Essentials의 공식 1.8 버전도 없다는 이상한 논리를 대며 업데이트하지 않고 있다. 그래봤자 사람들은 잘만 옮겨서 쓴다 요즘은 Spigot이 직접 만들었나 보다.. 최신버전을 기준으로 서버 데이터가 위치한 나라의 컴퓨터 운영체제에서 로컬 파일을 인식하여 그 나라에 맞게 언어 파일을 불러와 해석해 준다.
근데 알고보면 명령어를 마음대로 바꿔버린다던지 여러가지 이상한 쓸데없는 기능 때문에 서버장과 어드민들이 고생한다. 이때문에 에센셜을 쓰지 않는 서버들이 급증하는 중. 물론 복돌서버는 그런거 없다 대표적인 예가 /give로, NBT 태그를 못쓰게 만들어버리는 병크를 자랑한다.[10] 아이템을 지급할 수가 없는 것. Spigot에서 배포하는 버전은 예외로 NBT 태그가 작동한다. 다만 @p 등의 대상선택기는 인식을 못한다. 즉, 특정 조건을 가진 플레이어에게 아이템을 주는 것이 불가능한 것. 이 때문에 추가적인 플러그인을 사용하는데, 이제는 커맨드로 에센셜을 대체할 정도로 커맨드가 많아져 거의 쓸데가 없다. 에센셜은 1.7 이상에서는 사용하지 않는 것을 추천한다.

3.5.2 WorldEdit

WorldEdit
각종 명령어로 블럭을 스폰시킬수 있다. 세세한 건축에는 쓰이지 않지만 의외로 지원 기능이 많기 때문에 노가다 없이 외벽->창문을 순식간에 올려버리거나, 복사 기능으로 TNT 캐논 부대를 만들기도 하며, 특정 게임 모드를 할때 플레이어의 동선을 제한 할 필요가 있으면 애용된다. 이때 주 사용법은 엄청나게 큰 기반암 성벽을 y좌표 255~0까지, 그러니깐 하늘 끝부터 공허까지 길막을 하는 것. 차라리 /worldborder가 낫다. 그리고 어차피 255까지 쌓아서 거기서 넘어가면 되지 않나
서버테러에도 자주 쓰이므로 조심하자... 일명 로그조사 (CoreProtect)플러그인을 잘 사용하면 테러를 복구하기 원활하기도 한게 월드에딧이다. /co rollback T:

3.5.3 Dynmap

버킷 링크
포럼 링크
맵 전체를 웹브라우저로 볼 수 있다. 단, 이 플러그인이 실행된 이후에 맵의 해당 위치를 어떤 플레이어든 한 번은 다녀와야 맵이 밝혀진다.[11][12] 맵 타입을 변경하면 지하도 X-ray투시 모드로 볼 수 있다. 투시 모드는 지상만 밝혀져 있으면 플레이어가 지하를 다녀오지 않았어도 볼 수 있다. 플레이어의 현재 위치도 표시해주므로 이걸 쓰면 길 잃을 걱정도 없고 필요한 자원이 있는 곳을 굳이 찾아헤매지 않고 제깍 다녀올 수 있다. 특히 지하 던전 찾는데 매우 유용. 모드에서 추가되는 블럭도 지원하고 시계도 있다. 다만 멀티플레이 전용이라 싱글플레이 하는 사람은 쓸 수 없다. 참고로 dynmap을 고해상도 모드로 놓고 전체 렌더를 돌리면 렌더링된 데이터만 수 기가바이트에 달한다. <s>실제 서버 어드민이 서버 개발할때 풀렌더링 돌리고 개발완료후 호스팅 업체로 올리다 용량이 너무 커서 병크를 맞은 적이 있다 카더라.(...) 주의하자</s>
현재는 모드로도 존재하지만 초기버전은 CraftBukkit에서만 구동되는 서버전용 모드였다.

3.5.4 ProtocolSupport

ProtocolSupport
1.8이상 버전 서버에 하위 버전(1.5.2, 1.6.X, 1.7.X 등) 이 서버에 접속할 수 있도록 만들어준다.
당연히 플러그인 호환은 안되며, 하위 버전은 최신 버전의 기능이나 아이템을 사용할 수 없다. (엔더수정, 갑옷 거치대 등)
국내에서는 인지도가 매우 낮은 편이며, 설치된 서버를 찾기 어렵다.
Spigot버킷에서만 사용 가능한 플러그인이며 번지코드와 연동이 어렵기 때문에 일부 서버 운영에 소질이 많으신 분들만 주로 사용한다. <s>서버여는법 강좌보고 절대로 쉽게 하지 못한다</s>
설치해두면 서버 업데이트가 자연적으로 매우 많아지고 업데이트하다가 크래시가 뜨기라도 한다면... 서버를 새로 만드는 노가다를 경험할 수 있다

3.5.5 악성코드 플러그인

플러그인계에도 악성코드가 있는데, 사실 강제OP 같은 것의 실체도 거의 대부분은 악성코드 플러그인. 주로 사용자가 많은 유명 플러그인으로 위장한다. 인터넷에 돌아 다니던 플러그인을 깔았더니 외부에서 접속이 가능하게 뜷어 주는 플러그인이 깔려 있다던지, 혹은 의도치 않게 악용된다던지 하는 경우이다. 또 백신 플러그인이 제작됐다 하더라...

4 개발

마인크래프트/플러그인/개발 문서 참고.

  1. Bukkit에 밀려 씨가 말라버린 프로젝트다(...). 당시 모 서버 운영자의 언급에 따르면 버킷과 Hey0가 공존했을때는 Hey0은 최적화가 잘 되어있었고, Bukkit은 컨텐츠가 많았다고 한다.
  2. Bukkit 초창기에는 Hey0 플러그인이 더 풍부했으나, 여러 서버와 플러그인 개발자들이 Bukkit으로 갈아타면서 Hey0 개발이 중단되게 되었다.
  3. 이것을 사용한 가장 큰 서버는 동시 접속자16000명까지 갔다!
  4. 최근에 LockettePro 로 새로 업데이트 되었다.
  5. OwnBlocks 이라는 설치 블럭을 부수지 못하게 하는 플러그인이 있지만 워낙 오래됐고 이를 이용해서 역테러를 하는 경우가 발생해서 상위버전에서는 잘 쓰지 않는다.
  6. 국내 한정이다.
  7. 국내 인지도가 낮은건 양산형 복돌 1.5.2 서버가 넘치자 서버장들이 차별화를 두기 위해 비교적 쉬운 VT를 이용하기 시작한 것 때문이다.지금은 널려서 의미는 없다. 때문에 국내에서는 Skript를 말하면 잘 알지 못한다.
  8. Spigot 포럼에는 해당 스크립트만 있는 플러그인 탭이 따로 존재하며 따로 전용 커뮤니티도 있다. 이를 이용해서 비교적 쉽게 접근할 수 있다.
  9. 사실 불가능까지는 아니다. 우클릭시 해당 블럭의 좌표와 설정된 좌표를 비교하면 가능하기는 하지만 VT에 비하면 어렵다.
  10. 단 이때 /minecraft:give 로 할시 정상작동한다.
  11. 콘솔 커맨드를 입력하면 현재 생성된 맵 전체를 렌더링할 수 있지만 아주 오래 걸린다. 그리고 그동안 서버가 많이 버벅일 수 있다.그냥 튕길수도 있다
  12. 이 커맨드로 렌더되는 기준은 온라인 유저뿐만 아니라 오프라인 유저를 포함, 그 동안 서버에 읽혀진 맵을 전부 렌더한다. 서버가 많이 버벅일 수 있는 건 맞지만, 지인들끼리 소규모로 노는 서버, 게다가 연지 얼마 안된 서버라면 이론상 지구의 8배에 해당하는 크기를 전부 렌더하는 건 아니니 한적한 틈에 돌려볼만 하다. 물론 그 후는 서버의 견적사항에 따라 달렸다.