마인크래프트/서버


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


서버 목록에 대해서는 마인크래프트/서버 목록 문서를 참조하십시오.

마인크래프트 멀티플레이나 멀티플레이 서버의 구분 등에 대해서는 마인크래프트/멀티플레이 문서를 참조하십시오.

1 개요

마인크래프트에서 멀티플레이를 즐기기 위해 사용하는 서버 소프트웨어들이다. 현재 Bukkit API를 기반으로 하는 서버 소프트웨어가 가장 널리 사용되고 있다.

만약 새로운 API 나 서버 프로그램이 있다면 새로운 문단을 생성하여 아래의 양식에 맞게 추가 바람.

* 이름 : 서버 파일 이름
* 한글 이름 : 한글로 부르는 이름
* API : 베이스를 둔 API 의 이름
* 지원 모드 : 바닐라와 모드 중 선택
* 홈페이지 : 공식 홈페이지 주소
* 최신 버전 : 추가할 때 당시의 최신 버전을 입력한다.
* 추가 설명 : 추가로 하고 싶은 설명

2 Bukkit API 기반 서버 프로그램

마인크래프트의 멀티플레이 서버 소프트웨어에서 사용되는 주요 API이다. 대한민국은 물론 해외를 포함하여 가장 높은 점유율을 가지고 있으며 거의 모든 플러그인이 이 API를 사용하여 개발된다. 모장이 버킷 개발팀을 인수했다. 현재는 DMCA 테이크 다운으로 인해 공식 개발은 완전히 중단되었다.

2.1 기반 언어 및 실행 방법

Bukkit 은 Java 에 기반한 마인크래프트 서버 프로그램이다. PE 포맷이 아니기 때문에 일반적인 실행 방법[1]으로는 구동할 수 없으며 Java 최신 버전일 경우 기본 프로그램 변경으로 가능할 때가 있다.
Windows 배치 파일 (*.bat) 또는 Windows 명령어 스크립트 (*.cmd) 를 통해 실행이 가능하다.
이를 일반적으로 "콘솔 실행" 이라 부르며, 이 콘솔 파일을 "서버 구동기" 라고 부른다. 여기서 콘솔은 Windows 명령 프롬프트 이다.
리눅스 상에서는 셸 파일 (*.sh) 를 이용하여 실행할 수 있다.맘아이가 있으면 실행이 안 된다...
한국에는 버킷과 구동기를 구분 못하는 사람이 많다 카더라. 제발 구동기 만들어놓고 자기 이름 붙여서 버킷 만들었다고 배포하지 말자
Bukkit 은 JAR 구조로 묶여 있으며, JRE를 통해 실행이 가능하다. 각 운영체제에 맞게 Bukkit의 실행 명령과 옵션을 스크립트 형태로 만든 것을 흔히 "서버 구동기"라고 부르는 것이다.

스크립트 구조는 아래와 같고, 3번째 줄 맨 끝 .jar 이 들어가는 자리에는 서버 파일의 이름 을 입력하면 거의 모든 서버는 실행이 가능하다.[2][3]

@echo off
java -Xms1G -Xmx1G -jar craftbukkit.jar
pause

위 표의 내용을 복사할 위키러를 위해 아래에 새로 각 스크립트 별 설명을 적도록 하겠다.

@echo off

echo 의 기능을 끄는 것으로, echo 란 "메아리" 를 뜻하며, 콘솔 실행시 "C:\\Windows\\System32 > " 등 이렇게 뜨는 것을 없애주는 역할을 한다.

java -Xms1G -Xmx1G -jar craftbukkit,jar

콘솔로 Java 서버 프로그램을 실행해 jar 확장자 파일을 실행하는 것이다.
Java 설치 시 기본적으로 등록되는 콘솔 커맨드 중 하나인 java 를 이용한다.
블로그등에서 가끔 java 의 명령어가 아닌 C:\\\Program Files (x86)\\Java\\jre1.8.0_45\\bin\\java.exe -Xms1G -Xmx1G -jar craftbukkit.jar로 실행하는 경우가 있는데 이는 대부분 64비트 OS에 32비트 JRE를 받아서 java의 환경변수가 제대로 지정되지 않아 명령 프롬프트에서 "java" 명령이 먹지 않기 때문이다. 따라서 스크립트 배포자들이 절대경로로 입력해 둔것인데. 이렇게 돌리게 되면 차후 무슨 문제가 발생할지도 모르기 때문에 되도록 자신의 OS에 알맞은 JRE를 받도록하자. 위의 링크에서 다운받은 것은 JRE가 어떤 것이든 자동으로 잡아서 넣어준다.

-Xms 는 최소로 할당할 메모리의 용량이고, -Xmx 는 최대로 할당할 메모리의 용량이다.
-jar 는 *.jar 파일을 찾아 실행하는 것으로, 서버 구동기(콘솔) 과 같은 폴더 내에 있어야 한다.
craftbukkit.jar 는 *.jar 파일의 이름이 craftbukkit 인 파일을 실행하며, 만약 Spigot 이 있을 경우 Spigot.jar 로 입력하면 된다.

pause

일괄 프로그램 처리를 일단 보류하고 다음과 같은 메시지를 표시된다

계속하려면 아무키나 누르십시오 . . .

스크립트는 "메모장" 으로 입력한 다음, 저장을 하는데, 이때 저장 방법은 아래와 같이 진행한다.

  • 파일(F) → 다른 이름으로 저장(A)... → 파일 형식 : 모든 파일 로 지정하고, 파일 이름 : ~.bat를 넣는다. ~ 를 넣는 부분에는 아무런 이름이나 입력해도 상관이 없다.

서버 종료 후 ?초 후 서버를 자동으로 재시작시킬 수도 있다.

@echo off
title Start
 :Start
java -Xms1G -Xmx1G -jar craftbukkit.jar
 :restart
timeout /t 10 /nobreak
goto Start
timeout /t 10 /nobreak

10초를 기다린 후 다음 스크립트를 실행한다. 10초가 지나면 :Start로 이동해 다시 서버를 시작한다. 이게 무한 반복이 된다.

  • 주의 서버를 완전히 종료하려면 버킷을 종료해야 한다.

2.2 Craftbukkit

  • 이름 : Craftbukkit
  • 한글 이름 : 크래프트 버킷
  • API : Bukkit
  • 지원 모드 : 바닐라
  • 홈페이지 : [1], 다운로드는 [2] 에서 가능하다.
  • 최신 버전 : craftbukkit-1.9-R0.1-SNAPSHOT
  • 추가 설명 : 우리나라에서 일반적으로 불리우는 버킷이 이 서버 파일이지만, 1.8 이상 서버 파일은 Spigot 으로 대체된 경우가 많다. DMCA 사태 이후 Spigot 이 Craftbukkit 을 같이 개발하게 되면서 같은 사이트에서 업데이트 되고 있다.

2.3 Spigot

  • 이름 : Spigot 수도꼭지
  • 한글 이름 : 스피것, 스피곳, 스피갓
  • API : Bukkit
  • 지원 모드 : 바닐라
  • 홈페이지 [3]
  • 최신 버전 : spigot-1.9.4-R0.1-SNAPSHOT
  • 추가 설명 : Craftbukkit 의 DMCA 사건으로 인해 잠시동안 Spigot 의 다운로드가 중단되었다가, BuildTools를 통해 컨버팅 방식[4] 으로 배포를 하여 DMCA를 피한 상태이다. 현재는 Craftbukkit 과 Spigot 을 두개 동시에 업데이트 하는 방식을 사용한다.다운로드 방법

2.4 Cauldron

  • 이름 : Cauldron[5]
  • 한글 이름 : 칼드론 / 콜드론 / 모드 버킷
  • API : Bukkit, Minecraft Forge Server[6]
  • 지원 모드 : 바닐라 / 모드
  • 홈페이지 : 현재 사이트를 내린 상태이다. [4]
  • 최신 버전 : 1.7.10-R0.2
  • 추가 설명 : MCPC+ 즉, 모드 버킷으로 유명한 서버 파일. Craftbukkit 의 DMCA 사건으로 인해 서버가 다운되면서 프로젝트가 강제로 종료되었다. 현재는 KCauldron이라는 Cauldron 부활 프로젝트가 시작되었다. 기존의 Cauldron 팀은 Sponge로 넘어갔다.

3 Bukkit API 를 사용하지 않는 서버 프로그램

위의 서버들과 다르게 Bukkit API 를 사용하지 않고 다른 API 를 사용하거나, 자체 API 를 개발해 사용하는 서버 프로그램들이다.
만약 사실과 맞지 않는 내용이 있다면 즉시 수정하는 것을 권한다.

3.1 Project Rainbow

  • 이름 : Rainbow, Project Rainbow
  • 한글 이름 : 레인보우 / 프로젝트 레인보우
  • API : 자체 개발
  • 지원 모드 : 바닐라
  • 홈페이지 : [5]
  • 최신 버전 : Rainbow-1.10.2-b117
  • 추가 설명 : Craftbukkit 의 DMCA 사건으로 인해 새로 개발된 프로젝트이다. 한국에서도 서서히 배포가 되고 있는 중이다.

3.2 Cuberite

  • 이름 : Cuberite
  • 한글 이름 : -
  • API : 자체 개발(Cuberite API)
  • 지원 모드 :
  • 홈페이지 : [6]
  • 최신 버전 :
  • 추가 설명 : C++ 로 작성한 마인크래프트 서버. 자바로 작성하지 않아 메모리 / CPU 면에서 다른 서버들보다 월등하게 낫다. 단, 커맨드블록과 사용 가능한 플러그인이 한정되어 있다.

4 개발 예정 이거나 개발 중인 새로운 서버 또는 API

4.1 Glowstone

  • 이름 : Glowstone
  • 한글 이름 : 글로우스톤 / 발광석
  • API : GlowKit(Bukkit의 포크)
  • 지원 모드 : 바닐라
  • 홈페이지 : [7]
  • 최신 버전 : 1.10.2
  • 추가 설명 : 마인크래프트 서버를 자체 코드로 개발한다. 즉 라이선스의 충돌이 없어 Wolverness의 DMCA에 영향 받지 않는다.

4.2 SpongeForge

  • 이름 : SpongeForge
  • 한글 이름 : 스펀지포지 / 스폰지포지 / 새로운모드 버킷
  • API : Sponge-API(자체 개발 API)
  • 지원 모드 : 바닐라 / 모드
  • 홈페이지 : [8]
  • 최신 버전 : 1.10.2 - 5.0.0-BETA-1593-dev[7]
  • 추가 설명 : Craftbukkit 의 DMCA 사건으로 인해 WorldEdit 개발자[8]와 콜드론 개발자가 리드해 Spout/Flow's API 에 기반한 새로운 API 를 개발해 생성된 서버 파일. Forge 기반이다.

4.3 SpongeVanilla

  • 이름 : SpongeVanilla
  • 한글 이름 : 스펀지바닐라 / 스폰지바닐라 /
  • API : Sponge-API(자체 개발 API)
  • 지원 모드 : 바닐라
  • 홈페이지 : [9]
  • 최신 버전 : 1.8.9-3.1.0-BETA-224-dev
  • 추가 설명 : SpongeForge를 Forge 없이 구현한 것. 원래는 별도 팀의 Granite라는 프로젝트였으나 Sponge 팀에서 공식 프로젝트로 합병시켰다.

5 사건사고

5.1 웨슬리 울프의 Craftbukkit DMCA 테이크 다운 사태

본 내용은 [10][11], [12] 에서 가져와 수정하였음을 밝히며, 본 내용에 대해 이의가 제기 될 경우 이 문단이 제거될 수 있습니다.

5.1.1 사건에 대해 읽기 전

사건에 대해 읽기 전 EULA 에 대해 알아가길 바람.
EULA 란, End User License Agreement 의 약자로, 한국어로 최종 사용자 사용권 계약 이라고 부른다.

마인크래프트 의 제작사 Mojang (이하 "모장") 에서 인터넷을 통해 실행되는 모든 서버[9]에 적용시킨 규칙으로 이를 어길 시 모장에서 처벌을 내린다.카더라

EULA는 마인크래프트 제작사인 모장과 이 게임을 이용하는 사용자 간의 권리와 의무가 명시된 내용으로, 민사 상의 계약이기 때문에 지키지 않는다고 해서 감옥에 간다든가 그런 게 절대 아니다. 그렇다고 해서 안 지켜도 된다는 건 아니다

자세한 내용은 Mojang Account 참고.

5.1.2 사건의 발단

이 EULA 실시 이후 2014년 8월 21일, Craftbukkit 팀(이하 "버킷 팀") 의 리더인 EvilSeph 가 트위터를 통해 아래와 같이 글을 올림.

이제 헤어져야 할 시간 입니다 (It's time to say good bye)

이에 마인크래프트 의 수석 개발자인[10] Jens Bergensten 이 위 글에 대해 아래와 같이 답변함.

2년 전 모장이 버킷팀을 구입(인수) 했고, 2년 전부터 버킷은 모장의 소유였습니다. 당신이 개발하기 싫다면 그만 둬도 되지만, 잘 진행되고 있는 프로젝트를 죽일 수 없습니다.[11]

그리고 갑자기 버킷 팀의 총 책임자였던 Nathan Adams 가 아래와 같이 말함.

모장이 버킷팀을 인수한게 명확합니다. 저는 개인적으로 직접 1.8 업데이트를 진행할 것입니다. 버킷은 공식 API 가 절대 아닙니다 [12]

그리고 이어서

저는 버킷 개발을 시작했습니다. 저는 개인적으로 지금 1.8 로 업데이트 하고 있다는 것을 보여줄겁니다. :) [13]

위 내용을 요약하자면

버킷팀이 2년 전 모장에 인수되었지만, 버킷팀 리더는 그것을 모르고 버킷 프로젝트를 종료하려 하였고, 모장의 반발로 인해 프로젝트 종료는 중단됨. 그리고 예전 버킷팀 총책임자가 이를 보고 직접 버킷을 1.8 로 업데이트 하겠다고 나섰음.[14]

5.1.3 사건의 전개

발단 이후, 버킷 팀에 약 25% 의 코드를 제공한 사람인 Wesley Wolfe (이하 "울프"늑대) 가 Bukkit API 를 이용한 모든 사이트에 DMCA 테이크 다운 을 요청했고, 울프의 요청에 따라 GitHub 링크와, 공식 사이트의 다운로드 서버, JavaDocs 서버가 다운되었다.

울프가 신청한 DMCA 의 원문내용은 아래와 같다. 해석은 아래에.

From: Wesley Wolf <email redacted>

Date: 3 Septemver 2014 03:48
Subject: [SL] [abuse-google] Copyright

My name is Wesley Wolfe. A site hosted on an IP adress owned by Multiplay
(ip redacted) is infringing on my software copyright by the distribution
of a software known as CraftBukkit.

Original content can be fount at

[13]
[14]

and the appropriate license for previously mentioned content can be found at

[15]

The provided license requires the use of included or linking code to
provide the original source under the GNU GPL license version 3, or any
later version. An offical notice has been sent to Mojang AB, whereas the
Chief Operating Officer, Vu Bui, responded with the clear text:

Mojang has not authorized the inclusion of any of its proprietary
Minecraft Software (including its Minecraft Server software) within the
Bukkit project to be included in or made subject to any GPL or LGPL
license, or indeed any other open source license.

As the Minecraft Server software is included in CraftBukkit, and the
original code has not been provided or its user authorized, this is a
violation of my copyright. I have a goot faith belief the distribution of
the copyright owner, it's agent, or the low

Pages including infringing content:
[16] - links to:
[17]
[18]
[19] - links to 45 pages, with
infringing content begginning on craftbukkit build #1597 and currently
ending at craftbukkit build #3115, but please allow me not to enumerate
them all
[20] (the
first infringing build)

I have a good faith belief that the above information is accurate and that
I am the copyright owner or authorized to act on the copyrigh owner's
behalf.

Pursuant to the Digital Millennium Copyright Act (17 U.S.C 짠 512(c)), the
above mentioned pages need to be expeditiously remove or access-of
disabled.

Electronically Singed:

위의 원문을 해석한 것이다. 애매한 부분이 있다면 정확하게 수정해주길 바람.

발신: 웨슬리 울프

날짜: 2014년 09월 03일 03시 48분
제목: 저작권

제 이름은 웨슬리 울프입니다. 멀티플레이가 소유한 IP 주소로 호스팅된 사이트는
Craftbukkit 으로 알려진 소프트웨어가 저의 소프트웨어에 대한 저작권을 침해, 배포하고 있습니다.

원래 컨텐츠는 여기서 찾을 수 있습니다 :
[21]
[22]

기타 이전에 언급한 내용을 통해 정당한 라이센스를 확인할 수 있습니다.
[23]

라이센스는 GNU GPL 라이센스 버전 3 또는 그 이후 버전에 속하는 라이센스를 통해 제공하고 있으며
원본 소스를 제공하기 위해 코드를 링크하거나 포함하여 사용하는 것을 말합니다.

안내문을 모장에게 보냈으며, 운영책임자인 Vu Bui 는 명확한 글로 답변해줬습니다.

모장은 마인크래프트 소프트웨어 (서버 소프트웨어를 포함하여) 에 대한 권리와
버킷 프로젝트를 포함하든 GPL 또는 LGPL 라이센스로 만들어 졌든, 또는 실제 다른 오픈소스 라이센스이든
어떤 소유자에 대한 권리도 가지고 있지 않습니다.

마인크래프트 서버는 Craftbukkit 을 포함하고 있음에도 불구하고, 원본 코드가 제공되지 않았으며, 권한도 명시하지 않았습니다.
이는 저의 저작권에 대한 위반입니다. Craftbukkit 을 배포하는 것은 소유권을 가진 사람의 권리(또는 법)을 무시한 행위 입니다.

저작권 침해를 포함하는 사이트들 입니다.
[24] - 이는 아래와 연결되어 있습니다.
[25]
[26]
[27] - 45페이지와 연결되어 있으며
제가 정리한 모든 것은 Craftbukkit 빌드 #1597 을 시작해 Craftbukkit 은 #3115 에서 끝납니다.
[28]
(제일 첫번째 위반 빌드 입니다.)

위의 정보가 정확하다고 보고 있으며
저는 저작권 소유주이며, 저작권 소유자의 권한을 행사할 수 있습니다.

디지털 밀레니엄 저작권 법 (DMCA) 에 의거
위에서 언급한 페이지들은 빠른 시간안에 삭제하거나 접속이 금지되어야 합니다.

웨슬리 울프

울프의 신청으로 Bukkit API 를 사용한 버킷이 먼저 내려가게 되었고, 그 다음 Spigot, Cauldron 순으로 내려가게 되었다.

버킷의 플러그인들도 하나 둘씩 업데이트를 하지 않게 되었다.
그러다 Spigot 이 버킷을 업데이트 한 이후로 중요한 플러그인들[15][16]은 계속해서 업데이트가 되고 있다. 거의 모든 플러그인이 Spigot-API 기반으로 업데이트되었다.

5.1.4 사건의 결과

부정적인 여파는 많고 많다. 플긴 개발자들의 공공의 적
이 DMCA를 피하는 과정에서 여러 프로젝트가 주목받았다. 또 서버 소프트웨어의 주도권이 Spigot으로 넘어감에 따라 전체적인 업데이트 속도가 향상되었다.

Beat 패치, BuildTools 빌드, 서버 코드 자체 제작, Forge 의존 등 여러 DMCA 회피 방법이 나왔으며 이는 이후에 유사한 상황이 생길 시 유용하게 쓰일 것이다. 게임 하나가 소스 난독화를 하니 난독화 해제 기술이 발달하였고 모드 하나가 저작권 크리를 먹으니 라이선스 회피 기술이 발달하였다 우리는 답을 찾을 것이다. 언제나 그랬듯이
  1. 파일을 더블 클릭하는 것과 같은 행위.
  2. 이는 구조가 Java 이기 때문인데, Java Runtime Environment (JRE) (자바 실행 환경) 를 설치하게 되면 기본적으로 콘솔 명령어를 지원하며, 그 명령어를 이용해 javaw, javax, javac, java 와 같은 프로그램을 실행할 수 있게 된다. 서버를 실행하고 나서 "작업 관리자 - 프로세스" 탭으로 가보면 기본적으로 메모리 사용량이 많은 프로그램인 java.exe 프로그램을 볼 수 있는데, 이 프로그램이 버킷을 실행하고 있는 자바 가상 머신 프로그램이다.
  3. 참고로 마인크래프트를 실행하면 javaw.exe 가 두개가 실행된다. 하나는 게임 런처이고, 하나는 게임 창을 관여하는 역할을 맡고 있기 때문. javaw.exe 메모리가 낮은거 끄면 문제없다.
  4. Git Bash 를 이용해 Git 에 업로드 된 코드들을 파일로 바꿔주는 형식을 사용하며, 일반적으로 컨버팅 시간이 최소 20분 ~ 1시간 까지 뛰어 오르기 때문에 대부분 우리나라 사람들은 이미 컨버트가 끝난 파일로 배포한다. (컴퓨터가 좋고 인터넷이 빠르다면 5분 안에 끝날수도 있다.20만원짜리 컴퓨터로는 절대 할 수 없다.)
  5. 원래 이름은 MCPC+ 였지만 1.7 업데이트를 진행하면서 Cauldron 으로 변경되었다.
  6. Bukkit API 를 이용한 모드 서버였기 때문에 Forge 사이트에서 버전에 맞는 Forge 를 다운로드해 서버를 여는 방식이었다.
  7. 버전이 다른 서버파일과 다르게 이렇게 생긴 이유는 Forge 와 같이 제작하고 배포하기 때문이다.
  8. sk89q, Craftbukkit 시절 WorldEdit 플러그인으로 유명해진 개발자. 현 시점에서 리드하고 있지는 않다.
  9. 즉, 친구들끼리 하마치를 통해 여는 서버도 포함.
  10. 마인크래프트 원개발자인 Notch 가 Jeb_ 이 모장에 온 이후, 수석 개발자 자리를 줬다.
  11. Warren over at bukkit seems to have forgotten that the project was bought by Mojang over two years ago, and isn't his to discontinue. (원문과 해석에 차이가 있을 수 있음.)
  12. To make this clear: Mojang owns Bukkit. I'm personally going to update Bukkit to 1.8 myself. Bukkit IS NOT and WILL NOT BE the offical API.
  13. I started Bukkit, I'm going to personally see it through for 1.8 Updating it now :)
  14. 이 내용은 토론을 통해 계속 변경될 수 있음.
  15. WorldEdit, AuthMe, Factions 등등
  16. Essentials 의 경우 Spigot 팀에서 직접 업데이트 한다고 알려져있다.