Files
minecraft_launcher/docs/resourcepack-installer.md
claude-bot 894a86a117 docs: README/docs 재정리 — 프로젝트 개요·사용방법 정리
- README.md 를 개발 명세에서 프로젝트 개요/구성/빠른 시작 형식으로 재작성
- docs/installer.md (음악퀴즈 간편설치기 단계별 사용 가이드) 신설
- docs/admin-site.md (관리 사이트 운영자 가이드) 신설
- docs/resourcepack-installer.md (리소스팩 간편설치기 동작 명세) 신설
- 중복된 docs/add.md 제거 (resourcepack-installer.md 로 이전)
2026-05-13 02:44:39 +09:00

3.2 KiB
Raw Blame History

리소스팩 간편설치기

음악퀴즈에 등록된 음악·사진 목록을 yt-dlp 로 받아 마인크래프트 1.21+ painting variant 텍스처 리소스팩으로 패키징하는 별도 설치기입니다.

기본 골격은 음악퀴즈 간편설치기(src/installer/)와 동일하므로 UI/스토어 코드를 공유합니다. 진입점은 src/installer-rp/main.ts + installer-rp/ 렌더러.

실행

npm run installer:rp        # 개발 실행

윈도우 .exe 패키징은 tsconfig.installer-rp.json 으로 컴파일한 뒤 electron-builder 로 수동 패키징합니다.

단계

번호가 붙은 단계는 "이전 / 다음" 으로 이동 가능합니다.

1) 음악퀴즈 선택

  • 도메인의 manifest.json 에서 음악퀴즈 카드 목록을 표시.
  • 선택한 음악퀴즈의 file/list/<key>.json 에서 다음을 로드:
    • 음악 목록(유튜브 영상 주소).
    • 사진 목록(유튜브 주소 또는 일반 이미지 주소).

2) 리소스팩 설치 (자동 시작)

  • "다음" 누르면 즉시 시작.
  • 설치 로그를 실시간으로 표시(곡 제목 노출 없이 n번 노래 다운로드 중… 형식).
  • 취소 버튼 / 창 닫기 / 강제 종료 시: 진행 중 다운로드를 안전하게 중단하고 임시 파일을 정리한 뒤 정상 종료.

2-1. yt-dlp 준비

  • 자동 설치 위치: %APPDATA%/.mc_custom/ (Linux ~/.config/.mc_custom/, macOS ~/Library/Application Support/.mc_custom/).
  • 이미 있으면 업데이트 확인 후 그대로 사용.
  • 시스템 PATHyt-dlp 가 있으면 그것을 우선 사용 후 업데이트 확인.
  • 자동 설치가 실패하는 환경은 yt-dlp-setup.md 참고.

2-2. 음악 다운로드 (순차)

  • 임시 경로: %APPDATA%/.mc_custom/.temp/.
  • 각 곡을 ogg 로 변환(Minecraft 사운드 호환 포맷). ffmpeg 필요.
  • 중단되거나 모두 끝나면 .temp 내용 삭제.

2-3. 사진 다운로드 → painting variant 텍스처

이미지는 두 형태로 들어옵니다.

  • 유튜브 주소 — yt-dlp 가 알려준 영상 ID 로 https://i.ytimg.com/vi/<id>/maxresdefault.jpg 1차 시도, 실패하면 hqdefault.jpg 폴백.
  • 일반 이미지 주소 — HTTP GET 으로 그대로.

정규화 규칙:

  • 슬롯 규격(고정, 데이터팩 측): 4 × 4 블록 정사각, cover_01 … cover_N.
  • 최종 PNG 규격(리소스팩 측): 정사각 1:1, 최대 1024 × 1024 px.
    • 4 × 4 블록 × 블록당 256 px (×16 배율) → 1024×1024 가 픽셀 그리드와 정확히 일치.
  • 알고리즘:
    1. 가운데 정사각 크롭: s = min(원본 가로, 원본 세로)s × s.
    2. s > 1024 이면 1024 × 1024 로 축소 (Lanczos 권장).
    3. s ≤ 1024 이면 그대로 s × s 유지(업스케일 없음).
  • 파일명: cover_<NN>.png (NN 은 2자리 0패딩).
  • 저장 경로: resourcepack/assets/musicquiz/textures/painting/.
  • 패키지 완성된 리소스팩을 %APPDATA%/.minecraft/resourcepacks/ 에 zip 으로 배치.

painting variant 의 슬롯·태그 구조와 게임 내 호출 예시는 painting-variant.md 참고.

3) 설치 완료

  • "확인" 누르면 프로그램 종료.