본문 바로가기
Raspberry Pi/마인크래프트

마인크래프트 Cuberite : 플레이 버전 제한하기

by 민주르륵 2020. 5. 18.

Cuberite 포럼을 둘러보다 발견한 괜찮은 글.

https://forum.cuberite.org/thread-1612-page-3.html

 

Prevent 1.8 clients from joining?

12-25-2014, 05:12 AM (This post was last modified: 12-25-2014, 05:12 AM by Mathias.) Sorry for bringing this topic up again, but I need some help. After updating my server to the latest MCServer version today, 1.7.x clients have started crashing when joini

forum.cuberite.org

버전을 제한해주는 플러그인이다. 근데 이게 좀 과거형 플러그인이라 수정을 해줘야하는 상황.

현재 Cubertite는 1.12.2까지 지원해주는데 lua파일을 뜯어보면 1.10.2밖에 없다.

lua를 몰라도 코드 구성이 간단해 간단하게 추가해주면 된다.

값을 추가해주려면 protocol versions를 알아내야하는데 이건 서버를 부팅할때 간단히 알려주기 때문에 찾아볼 필요가 없다.

1.12.2의 프로토콜 버전은 340

플러그인 파일을 열어서 

--- Maps version name ("1.7.10") to version number (5)
local g_VersionMap =
{
	["1.7.2"]  = 4,
	["1.7.4"]  = 4,
	["1.7.6"]  = 5,
	["1.7.9"]  = 5,
	["1.7.10"] = 5,
	["1.8"]    = 47,
	["1.8.1"]  = 47,
	["1.9"]    = 107,
	["1.9.0"]  = 107,
	["1.9.1"]  = 108,
	["1.9.2"]  = 109,
	["1.9.4"]  = 110,
	["1.10"]   = 210,
	["1.12.2"]   = 340,
}

 이렇게 1.12.2를 추가해주고 서버를 실행시키자.

 

그러면 Server 폴더에 SingleClientVersions.ini 파일이 생긴것을 볼 수있다.

 

 

이후 저 파일을 열어서 버전을 1.12.2로 수정해주자

 

간단!

그러면 1.12.2 외엔 접속이 되지않으며 1.12.2 외 버전을 사용할 경우 플레이어는 아래처럼 화면이 뜨게된다.

 

메세지도 바꿀수있음

 

그리고 서버 터미널에는 아래처럼 찍히게 된다.

 

lua파일을 더 뜯어서 메세지도 변경해줄 수 있다.

 

여담 : 

어째 Cuberite로 서버를 돌리면 커맨드명령어도 되지않고 armor stand도 소환되지않는 기이한 현상을 겪고있다ㅠㅠ

/summon 명령어에는 armor stand가 존재하지 않는데 마크를 몰라서인지 그냥 cuberite를 정확히 파악을 못한건지 모르곘다. Cuberite 디스코드가 존재하니 거기다가 물어봐야겠다.