콘텐츠로 이동

네임스페이스란?

네임스페이스 ID(Namespaced identifier), 리소스 위치(Resource location), 리소스 식별자(Resource identifier), 네임스페이스 문자열(Namespaced string)은 게임 속 특정 대상을 가리키고 식별하면서도 모호함과 충돌을 피하기 위한 방법이다.

비유하자면 이런 식이다.

“바탕 화면”에 네임스페이스(폴더)가 몇 개 있다. 네임스페이스끼리는 이름이 겹치면 안 되지만, 네임스페이스 안의 항목은 이름이 겹쳐도 된다.

이름이 같은 ID는 네임스페이스로 구분한다.

형식은 보통 네임스페이스:ID이며, 예를 들면 minecraft:tp다.

위 비유에 대입하면 다음과 같다.

  • 왼쪽의 ID a.txt는 네임스페이스 A:ID a.txt
  • 오른쪽의 ID a.txt는 네임스페이스 B:ID a.txt

바닐라 아이템의 네임스페이스 minecraft는 생략해도 자동으로 채워진다. 예를 들어 minecraft:stone == stone이다.

하지만 모드 아이템도 네임스페이스를 생략하면 똑같이 minecraft가 채워져서 아이템을 찾지 못한다.

그러니 메뉴 등에서 모드 아이템을 쓰려면 모드네임스페이스:아이템ID로 적어야 한다.

명령어에는 우선순위라는 개념이 있다.

예를 들어 EssentialsX를 설치하면 바닐라 tp 명령어가 덮어써진다.

EssentialsX와 HuskHomes를 함께 설치하면 tp는 HuskHomes가 제공하는 명령어가 된다.

이때 HuskHomes 대신 EssentialsX의 명령어를 쓰고 싶다면 네임스페이스를 붙이면 된다.

물론 바닐라 명령어도 쓸 수 있다. 바닐라 네임스페이스는 minecraft다.

사용자는 보통 우선순위를 조정할 수 없다. 플러그인 개발자만 할 수 있는 일이다.

플러그인 제작자는 보통 플러그인 이름을 네임스페이스로 쓴다.

이건 내가 알려 주기보다 리소스팩 기초를 공부하자.

https://minecraft.wiki/w/Resource_location