월드란?
Minecraft의 거의 모든 동작은 “월드” 위에서 이루어지며, 월드의 블록, 엔티티 등의 데이터는 루트 디렉터리의 해당 폴더에 저장된다.
현재 바닐라 Minecraft에는 월드가 세 개 있다. 오버월드 world(world), 네더 DIM-1(world_nether), 엔드 DIM1(world_the_end)이다.
각 월드의 블록은 X와 Z 기준으로 16 × 16 단위의 청크(Chunk)로 나뉜다. 그리고 32 × 32 청크가 한 묶음이 되어 하나의 리전 파일(Region)로 저장된다.
오버월드를 예로 월드가 어떻게 저장되는지 살펴보자.
폴더:
-
advancements/: 플레이어의 발전 과제를 저장한다. 플레이어마다 UUID 파일 하나가 있다.
-
data/: idcounts.dat와 map_xxx.dat에 플레이어가 만든 지도 관련 데이터가 저장된다.
-
datapacks/: 월드에서 쓰는 데이터팩을 저장한다(Bukkit 계열 서버에는 보통 Bukkit 폴더가 있다).
-
entities/: 각 region의 엔티티를 저장한다.
-
playerdata/: 플레이어 데이터(체력, 경험치 등)를 저장한다.
-
poi/: 월드 안 주민의 관심 지점(침대, 작업대 블록 등)을 저장한다(1.14 이상에서만 사용).
-
region/: 블록 정보를 저장한다.
-
stats/: 플레이어가 이 월드에서 플레이한 통계(닭을 몇 마리 잡았는지, 제작대를 몇 번 썼는지 등)를 저장한다.
-
그 밖의 폴더는 보통 플러그인이 쓰는 폴더다. 예를 들어
itemsadder폴더는ItemsAdders플러그인이 월드 안 커스텀 아이템을 저장하려고 만든 것이다.
파일:
-
level.dat: 월드 전체 정보(시드, 구조물 생성 여부, 월드 유형, 스폰 지점 등)를 저장한다.
-
level.dat_old: level.dat의 백업 파일로 보면 된다.
-
session.lock: 이 파일을 마지막으로 수정한 프로그램과 접근 권한 정보를 저장한다.
-
/data/raids_end.dat: 월드에서 진행 중인 습격 정보를 저장한다.
-
/data/random_sequences.dat: 전리품 테이블이 쓰는 난수 시퀀스 데이터를 저장한다.
-
paper-world.yml(Paper 서버에만 있음): 월드별 Paper 설정을 기록한다.
다른 월드 폴더도 대체로 비슷하다.