안녕하세요. L.H입니다.

    방학이 되니까 시간이 상당히 남더라고요. 그래봤자 길지 않은 24일 정도입니다.

    그 기간에라도 이렇게 블로그 활동을 하고자 합니다.

    최근에 서버쪽을 연구하면서 마인크래프트 서버에 대한 지식들을 조금 얻게 되었는데요.

    이렇게 얻은 지식들을 공유하고자 글을 쓰려고 합니다.


    버킷은 무엇인가?


    버킷(Bukkit)은 마인크래프트 서버를 열기 위한 프로그램중 하나입니다.

    왜 공식 서버 프로그램이 없고 이렇게 다른 제작자들이 프로그램을 만들어서 쓰냐 하면...

    원래 마인크래프트 공식 서버 프로그램이 있었습니다. 이를 연구하던 양덕들이 마인크래프트 서버의 여러 기능을 만질수 있는 추상화 API를 만들게 되었고 이를 바탕으로 만들어진게 버킷이나 스폰지같은 서버 구동기들이죠.

    이 구동기들의 장점이 무엇이냐면 아까 언급한 추상화 API로 플러그인, 즉 우리가 아는 이코노미, 에센셜, 잠금, 샵키퍼등의 기능들을 만들수 있다는 것이죠.

    그래서 공식 서버 구동기는 사장되고 이런 구동기들이 사용되게 되는데 이중에서 거의 대부분의 점유율을 차지하는것이 바로 지금의 버킷입니다.

    그리고 그 버킷의 API를 이용하는 구동기가 스피곳이고요.


    그런데...


    이 버킷을 현재 공식 사이트에서 찾아볼수는 없습니다.

    왜냐면 이 버킷 프로젝트에서 플러그인 적용 부분의 소스코드(전체 코드의 약 25% 정도?)를 개발한 웨슬리 울프(Wesley Wolfe, Wolvereness) 라는 사람이 DMCA 테이크다운이라는 저작권 조치를 요청했기 때문입니다.

    이 DMCA 테이크다운 사태에 대해선 추후에 기회가 되면 다루도록 할텐데요. 아무튼 이 사태로 인해 정상적인 방법으로는 버킷 및 스피곳 구동기를 구할수 없고 BuildTools.jar란 파일로 직접 컴파일해야합니다.

    이 글에서는 서버 구동기를 얻고 서버를 실행하는 것까지 해보겠습니다.

    윈도우 운영체제를 기준으로 작성하나 리눅스와 맥도 방법을 같이 서술하도록 하겠습니다.


    BuildTools.jar 내려받기



    먼저 아래 링크로 이동하여 Last Successful Artifacts 밑의 BuildTools.jar를 다운로드 받아 주세요.


    https://hub.spigotmc.org/jenkins/job/BuildTools/


    적당한 곳에 두시고 Git이라는 프로그램을 설치해야 합니다.


    Git 설치하기


    윈도우

    https://git-for-windows.github.io 에서 윈도우용 Git 설치 파일을 내려받아 설치하시면 됩니다.


    리눅스

    터미널을 실행해주시고 배포판에 따라서 이렇게 쳐 주세요.


    데비안/우분투 계열

    $ sudo apt-get install git

    레드햇 계열

    $ sudo yum install git

    아치 리눅스 계열

    $ pacman -S git

    젠투 리눅스

    $ emerge --ask --verbose dev-vcs/git


    http://sourceforge.net/projects/git-osx-installer/files/ 에서 맥용 Git 설치파일을 받아서 설치해주세요.


    BuildTools.jar 실행



    BuildTools.jar이 있는 폴더로 이동하셔서 우클릭을 눌러주신 후 Git Bash Here로 Git Bash를 열어줍시다.

    맥과 리눅스는 터미널을 실행하신 후 폴더를 이동하시면 됩니다.



    다음과 같은 명령어를 쳐주세요.

    $ java -jar BuildTools.jar --rev <버전>(없거나 latest이면 최신버전으로 자동 선택)



    컴퓨터의 성능에 따라 시간이 좀 오래 걸릴수도 있습니다. 잠시 후 이런 메시지가 뜨면 성공입니다.



    이렇게 되었는데요. 서버를 여는데 필요한 것은 craftbukkit 파일과 spigot 파일입니다.



    나머지는 삭제하셔도 됩니다. 버킷과 스피곳 두개가 있는데, 스피곳을 개인적으로 추천합니다.



    폴더에 Shift + 우클릭 후 여기서 명령창 열기를 클릭하면 명령 프롬프트가 나타납니다. 저는 PowerShell이 깔려 있어서 PowerShell을 열었네요. 리눅스나 맥도 아까 했던것처럼 터미널을 이용하시면 됩니다.



    다음 명령어를 쳐줍시다.

    java -jar <구동기 파일이름>

    그런데 갑자기 서버가 중단됩니다.

    바로 EULA 동의를 안해서인데요.

    EULA는 최종 사용자 라이선스 협정으로 내용은 다음에서 확인하실수 있습니다.


    https://account.mojang.com/documents/minecraft_eula


    추후에 EULA의 내용을 자세히 다루도록 하겠습니다.



    서버 폴더에 생성된 eula.txt를 메모장으로 열어보면 이와 같은 내용이 나옵니다.

    저기서 false를 true로 바꿔 줍시다.



    다시 서버를 열면 이와 같이 월드가 생성되고 서버가 실행될 것입니다.

    Done 메시지가 뜨면 완료된 것입니다.


    다음 시간에는 server.properties 설정과 플러그인을 건드려보도록 하겠습니다.



    Posted by L.H