Guides / Troubleshooting

.mrpack 파일을 일반 모드팩 압축 파일로 변환하는 방법 — 그리고 압축 해제 프로그램이 실패하는 이유

.mrpack은 모드 아카이브가 아니라 매니페스트입니다. 압축을 풀면 JSON 파일만 있고 jar 파일은 없습니다. 실제 내용과 변환기가 해야 할 일은 다음과 같습니다.

.mrpack 파일의 이름을 .zip로 변경하고 열어보면 거의 아무것도 없습니다. modrinth.index.json 파일과 어쩌면 overrides/ 폴더만 있을 뿐입니다. 모드 파일은 없습니다. 이것은 손상된 것이 아니라, 의도된 형식대로 작동하는 것입니다.

내부 내용

modrinth.index.json     the manifest: name, version, loader, and a list of downloads
overrides/              config files, resource packs, anything not on Modrinth

매니페스트의 각 항목은 다음과 같습니다.

{
  "path": "mods/sodium.jar",
  "hashes": { "sha1": "…", "sha512": "…" },
  "downloads": ["https://cdn.modrinth.com/data/…/sodium.jar"],
  "fileSize": 812345
}

팩은 파일 자체가 아니라 참조를 제공합니다. 이것이 40개 모드 팩이 200KB밖에 되지 않는 이유이며, 모든 일반 압축 해제 프로그램이 "실패"하는 이유입니다. 추출할 것이 없기 때문입니다.

변환이 해야 할 일

  1. modrinth.index.json을(를) 읽습니다.
  2. 각 항목을 CDN URL에서 가져옵니다.
  3. 매니페스트에 있는 sha512와 각 파일을 대조하여 확인합니다. 이 단계를 건너뛰면 손상되거나 대체된 jar 파일이 팩에 포함될 수 있습니다.
  4. 각 파일을 path에 배치합니다.
  5. overrides/을(를) 위에 복사합니다. 오버라이드가 우선하며, 이것이 그들의 목적입니다.
  6. 결과물을 압축합니다.

3단계는 변환기가 조용히 건너뛰는 단계입니다. 해시가 일치하지 않으면 다운로드가 잘렸거나 파일이 변경되었음을 의미합니다. 그럼에도 불구하고 설치하면 로드 시 충돌하는 팩이 생성되며, 잘못된 모드를 가리키는 오류가 발생합니다.

왜 변환해야 하는가

  • mrpack을 지원하지 않는 런처. ATLauncher, MultiMC 및 수동 설치는 jar 파일 폴더를 원합니다.
  • 서버 측. 서버 호스트는 거의 .mrpack을(를) 허용하지 않습니다. 그들은 모드 폴더를 원합니다.
  • 오프라인 설치. 변환된 팩은 더 이상 CDN이 필요하지 않습니다.

env 필드가 클라이언트와 서버를 결정합니다

각 파일은 다음을 포함합니다.

"env": { "client": "required", "server": "unsupported" }

서버 팩은 서버 측에서 unsupported로 표시된 모든 것(주로 셰이더, 미니맵, HUD 모드)을 건너뛰어야 합니다. 전체 클라이언트 모드 폴더를 서버에 복사하는 것은 렌더링 클래스를 지목하는 시작 시 충돌의 일반적인 원인입니다.

반대 방향으로

폴더에서 .mrpack을(를) 빌드하는 것은 역방향이며 한 가지 함정이 있습니다. Modrinth에 없는 모드는 매니페스트 항목이 될 수 없습니다. 이 모드는 overrides/mods/에 들어가야 하며, 이는 팩의 크기를 키우지만 작동하게 유지합니다. 이러한 모드를 조용히 삭제하면 깨끗하게 설치되지만 콘텐츠가 누락된 팩이 생성됩니다.

해시 확인 및 env 분할 처리를 통해 양방향으로 변환하려면 리소스 팩 압축 도구를 참조하십시오.

리소스 팩 zip 도구 →

More guides

Browse all →

다른 마인크래프트 도구도 찾고 계신가요?

브라우저에서 바로 쓰는 생성기·뷰어·변환기 모음입니다. 전부 무료입니다.