머나먼 땅

최근 수정 시각:

파일:external/hydra-media.cursecdn.com/400px-12550821line.png

1. 개요2. 역사3. 원인4. 현상5. 현황6. 여담7. 둘러보기

1. 개요[편집]

Far Lands

마인크래프트의 의도치 않게 생겨난 지형 오류.

2. 역사[편집]

이 지형 오류는 베타 1.7.3까지 있었으며 베타 1.8 Pre1 때 노치가 우연히 고쳤다. 정식 1.3 버전에 다른 형태로 다시 생겼지만 1.7 버전에서 이 오류 지형을 삭제하여 좌표가 X:29999995 Y:100 Z:29999995부터는 보이지 않는 기반암으로 구성되어 있어 들어가지 못한다. 이는 네더월드와 엔더월드 모두 해당한다.

1.8 패치 이후 노치는 명령어로만 얻을 수 있는 보이지 않는 벽으로 머나먼 땅의 접근을 막았다. 참고로 유튜브에서 이 머나먼 땅을 아무런 치트나 조작 없이 직접 걸어가는 모습을 올리는 유저가 한 명 있다. 1년간 Far Lands까지 5% 도달했다고 한다. 지금은 꽤나 가서 그런지 프레임이 많이 끊겨 보인다. 5년이 지난 지금도 아직 도전 중인 듯. 2018년 3월 6일자로 7년이나 되었다. 현재도 도전 중.

3. 원인[편집]

이곳은 사실 컴퓨터 내부의 자료 처리 형식, 부동 소수점의 정확도 문제 때문에 생긴다. int형의 문제라고 생각할 수 있지만 그렇지 않다. 마인크래프트 역시 Java로 구성된 컴퓨터 프로그램이고, 그 좌표 내부 구현에는 부동 소수점 변수를 쓴다. 부동 소수점 변수는 가수부의 표현력 한계가 있고 노치가 그걸 처음에 해결하지 못해서 float의 정확도 한계점인 가수부 224 = 16,777,216부터 1단위 이하를 나타내기 어렵게 되어 생긴 문제에 가까웠다. 이 부분은 좌표 자체는 64비트 좌표체계를 쓰더라도 월드 제네레이터나 과 엔티티의 움직임과 같이 다른 부분에 32비트를 하나라도 쓰면 동작이 이상해지기 때문에 일어나는 문제다.

64비트를 쓰는 경우엔 사실 꽤 높은 값까지도 꽤 멀쩡할 수는 있다. 노치가 처음에 저 문제를 해결했다고 한 것은 float형을 double형으로 바꾼 것으로 추정되지만, 정식 버전에서 월드 제네레이터와 청크 형식을 바꾸면서 다시 문제가 생긴 것으로 본다. 청크는 현재 폭 512의 사각형으로 이루어져 있는데, 청크에 16비트 정수를 쓰면 3천만 정도가 실제 한계가 되기 때문에 거기서 그냥 막은 것에 가깝다. 16비트는 참고로 65536 × 512 = 33554432. unsigned형까지 계산하는 이유는 구현에 signed를 쓰다 보니 지하자원 불균형과 같은 문제가 생겼기 때문이다. 당시 x, z 좌표의 부호에 따라 지하자원의 비율이 달라졌기에 넷으로 나누어 각각의 방향에 unsigned를 쓴 것으로 보인다.

4. 현상[편집]

이 문제로 인해 일정 거리만큼 멀리 나가게 되면 지형이 깨지기 시작한다. 그런데 이 깨지는 현상은 아주아주 멀리까지 나가야 볼 수 있으며 일반적으로 그곳에 도달하기 어렵다. 노치는 로망을 살려 이 가장자리 지역을 머나먼 땅(Far Lands)이라고 이름 붙였다. 일반적으로 평지에서 걷는 것만 수백 시간은 소모해야 도달할 수 있으며 네더를 통해 단축된 거리로도 약 100시간이 걸린다. 네더에서의 1블록은 오버월드에서의 8블록의 거리가 된다. 즉 네더에서 5블록 앞으로 가서 그곳에 네더 포탈을 만들고 본 월드로 돌아오면, 오버월드에선 40칸 이동한 셈. 단, 64비트 PC에 64비트 자바를 설치해 사용할 경우, 괴기하게 생긴 바다가 나오며 땅이 거의 안보이고 가끔 섬이 한두 개 보이며 바다 안에 종종 물이 비어 있다. 게다가 레드스톤을 설치하면 굵게 표시된다.

보통 10칸 정도씩 직사각형의 형태로 비어있다. 이건 청크 오류라고 하는데 청크는 16×16칸이다. 물론 가는 방법이야 있다. 명령어로 x 또는 z 좌표 12550820으로 이동하면 된다. x와 z 두 좌표 모두 저 값으로 설정할 경우 이 지형의 코너를 감상할 수 있다. 요즘에는 64비트 자바를 권장하는 편이다. 메모리 관리가 더 잘 되는지 32비트 버전처럼 너무 넓은 공간을 발견했을 경우 뚝뚝 끊기는 경우가 많이 사라진다.

물론 머나먼 땅이 있으니 세계의 끝이 있다고 생각할 수도 있다. 그렇지만 저 머나먼 땅의 시작점 부근까지 가는 것만 해도 엄청난 시간이 소요되며 아무리 멀티라도 머나먼 땅 내의 구역을 전부 꿰고 플레이하는 경우가 없다. 따라서 게임을 즐기기엔 이 정도 수준의 맵으로도 충분하다 못해 남아도는 공간이 더 많으며 아무리 큰 도시를 짓는다고 해도 세계 전체의 10%도 차지하지 않는다.

또 머나먼 땅에 가까워질수록 기현상이 발생하기 시작하는데. 우선 게임이 버벅거리며 바닥에 내려놓은 아이템들이 제멋대로 한 방향으로 흘러가기 시작하거나 땅이 있는 것처럼 보이지만 사실 없어서 기반암조차 무시하고 공허(The Void)로 떨어진다거나 빛 시스템이 제대로 먹히지 않는다거나 하는 현상을 경험할 수 있다. 하지만 노치는 "접근할수록 세상이 뒤틀리는 머나먼 땅이라는 개념은 로망이고 어차피 거기까지 가는 것도 사실상 불가능하니 고치지 않겠다"는 입장이었다. 어차피 우연만 없었으면 계속 남아있을 예정이었다.

또한 지형 자체도 영향을 받는데, 지각이 통째로 움직이는 지진이나 거대한 골짜기 같은 것을 감상할 수 있다.

5. 현황[편집]

1.8 이후로는 x혹은 z좌표가 30,000,000을 넘어가면 페이크 청크가 생성되어 거기서 32블록 더 앞으로 나가면 붙어버려서 더 이상 이동을 할 수 없다. 자세히 설명하자면, 블록이 만들어진 것처럼 보이지만, 실상은 아무것도 없는 공허라서, 3천만 이상의 좌표를 밟게 되면 공허(The Void)로 떨어진다.

페이크 청크는 상당히 멀리까지 생성되며 섬은 물론이고 지하 동굴이나 협곡도 생성된다. 사실상 페이크 청크는 트루 청크와 다를 바가 없다. 그냥 발을 디딜 수 없는 것이 차이점이다. 페이크 청크가 끝이 있는지 없는지 현재로서는 명령어의 한계로 알 수 없다. 소스 상으로는 페이크 청크의 끝이 없을 것으로 추측된다. 물론 음수의 값도 마찬가지. 즉, 정상적으로 생성되는 블록의 좌표는 x좌표, z좌표 둘 다 -29,999,999~29,999,999까지. x좌표z좌표 둘 다 -29,999,999~29,999,999이므로 총 59,999,999개 이다. 따라서 59,999,999를 제곱하면 3,599,999,880,000,001이다. y는 1.12.2 기준 0-255까지 이므로 숫자는 256개이다. 따라서 3,599,999,880,000,001×256 = 921,599,969,280,000,256(92경 1599조 9692억 8000만 256). 이 숫자가 마인크래프트에서 한 세계마다 만들어질 수 있는 최대의 블록의 개수이다.

한편 이 92경개의 블록이 모두 셜커상자로 이루어져있다고 가정하자. 셜커상자는 일반상자와 같이 27칸이므로 한 스텍에 64개인 아이템으로 모두 채운다고 치면 최대 1728*921,599,969,280,000,256개 즉 최대 1,592,524,746,915,840,442,368(15해 9252경 4746조 9158억 4044만 2368개)의 아이템을 한 맵에 수용할 수 있다.

네더에서도 좌표가 30,000,000을 넘어가면 페이크 청크가 생성되는데 특이한 것은 지옥의 30,000,000 부근에 포탈을 열어서 지상으로 이동하면 8배인 240,000,000 좌표가 아닌 30,000,000 부근의 좌표에 포탈이 생성된다. 블록 생성 한계가 30,000,000까지라 그 좌표를 넘어선 포탈은 생성이 되지 않기 때문이다. 이 포탈을 통해 네더로 이동해도 원래의 30,000,000 좌표가 아니라 이를 8로 나눈 값인 3,750,000 좌표 부근에 포탈이 생성된다. 즉 포탈을 통해 지옥의 3,750,000을 넘어선 좌표로는 이동이 불가능하다. 정리하면 지옥의 3,750,000을 넘어선 포탈 →(일방통행) 지상의 30,000,000 부근의 포탈 ↔(쌍방통행) 지옥의 3,750,000 부근의 포탈이 된다.

정식 릴리즈 1.7.2 버전 이후로부턴, x, z 30,000,000 이상으로 보이지 않는 벽이 생성되어 더 이상 진행할 수 없으며, 가까이 가면 끼여 버린다. 기존 머나먼 땅의 기괴한 지형은 사라지고 세계가 안쪽의 생물군계에 따라 자연스레 생성되어 있지만 들어갈 수 없다. 크리에이티브 모드여도 그 지역의 어떤 블록도 부술 수 없게 되었다. 명령어 같은 방법으로 억지로 이동하려 해도 좌표가 너무 크다고 나오면서 순간이동이 되지 않는다. 순간이동의 최대 좌표는 30만이고, 그 너머까지 가면 용량 때문이 아니라도 일반 땅처럼 보이는데 충돌 판정이 없어지면서 빛도 없고, 땅에 나무가 하나도 없다. 그런데 순간이동 가능 좌표 최대범위를 끝까지 늘렸는지 1.12 버전 기준으로 텔레포트로 한 번에 이동이 가능해졌다.

실제로 스폰 지점에서 3000만 블록이므로 양쪽으로는 6000만 블록, 넓이는 6000만 블록의 제곱이므로 총 넓이는 3600조m2가 된다. 이 넓이는 무려 지구의 표면적의 크기인 5100억m2의 대략 7000배보다 더 크다고 한다. 완전한 평지 세계를 기준으로 플레이어가 초당 5블록을 걷는다면, 세계를 모두 이동하는 데에는 대략 720조 초가 걸린다. 고로 하루가 86400초이므로 나누면 8333333333.33일이라는 무식한 숫자가 나온다. 일년이 365.242193일이므로 22815910.9025227년, 즉 대략 2300만년이 걸린다는 무지막지한 시간이 걸린다.

마인크래프트 포켓에디션의 경우는 좌표를 X는 12550820, Y는 100, Z는 12550820로 이동시키면 볼 수 있다. 이쪽의 괴상한 지형도 마인크래프트 PC의 자바와 비슷한 프로그램 처리 오류로 발생한 것일 가능성이 높다. 다만 이곳에서는 플레이어와 모든 엔티티가 움직일 수 없고 달리기를 하면 움직일 수 있지만 버벅거린다. 플레이어와 플레이어가 소환한 몹은 블록을 통과한다. 또한 블록이 설치가 잘 안되거나 텍스처가 이상해지는 경우가 있다.

6. 여담[편집]

1.8부터 추가된 관전자 모드로 들어가서 어느 정도 볼 수는 있지만 튕긴다.

PE에서도 있는데, 아이템을 얻을 수 있다. 이름은 tile.invisibleBedrock.name인데 이것은 에디터으로 얻을 수 있다. 하지만 주의할 점은 크리에이티브 모드도 마찬가지로 한 번 설치하면 절대로 부술 수 없다는 것이다.

엑스박스, 플레이스테이션으로 출시된 콘솔 에디션은 엔더월드가 PC와 달리 유한이여서 세계의 끝으로 가면 보이지 않는 기반암으로 가로막고 있어서 앞으로 가기는 불가능하다.

참고로 평지에서 이동시키면 주변에 파티클이 발생한다.

그 모습과 기이한 현상이 인상적이었는지 스토리 모드에서 등장했다.

7. 둘러보기[편집]