콘텐츠로 이동

패치 - 일반

한글패치(번역 패치)를 원본 롬 파일에 적용하는 탭입니다. 일반적인 IPS/BPS/UPS/PPF/APS/Xdelta 패치 외에, 드림캐스트 GD-ROM 전용 폴더형 패치(DCP)도 이 탭에서 처리합니다.

이 탭은 패치 자체에는 키파일이 필요 없습니다. prod.keys, aes_keys.txt 같은 키파일은 기본적으로 Switch/3DS 관련 탭에서만 요구되며, 원본 파일 + 패치 파일만 있으면 패치 자체는 바로 진행됩니다.

단, 예외가 하나 있습니다. 원본이 3DS 계열(CCI/CIA)이고 "패치 후 자동 압축"을 켠 경우, 패치가 끝난 뒤 ZCCI로 자동 압축하는 단계에서 3DS 키파일이 필요합니다. - 원본이 CIA면 무조건 키파일이 필요합니다(CIA는 항상 티켓으로 암호화되어 있어 복호화 없이는 내용을 못 읽습니다). - 원본이 CCI면, 이미 복호화된(디크립트된) 롬이 아닌 이상 대부분 암호화되어 있어 마찬가지로 키파일이 필요합니다. - 키파일이 설정 탭에 미리 등록되어 있지 않으면, 패치 자체는 성공해도 이어지는 자동 압축 단계에서 오류가 나며 실패합니다. - 이 문제를 피하려면 설정 탭에서 3DS 키파일을 먼저 등록해두거나, 3DS 원본에 한해서는 "패치 후 자동 압축"을 끄고 패치만 진행한 뒤 필요하면 나중에 3DS - 포맷 변환 탭에서 따로 압축하면 됩니다.


화면 구성

  1. 원본 — 패치를 적용할 게임 파일. 클릭하면 확장자 제한 없이 모든 파일을 선택할 수 있습니다.
  2. 패치 — IPS / BPS / UPS / PPF / APS / Xdelta / DCP 형식의 패치 파일. 클릭 시 해당 확장자만 필터링되어 표시됩니다.
  3. 패치 후 자동 압축 — 체크하면 패치가 끝난 뒤 원본 포맷에 맞춰 CHD / RVZ / ZCCI / ZIP로 자동 압축합니다. (아래 옵션 설명 참고)
  4. 패치 진행 바
  5. 초기화 — 1, 2번 항목을 비웁니다. 이때 "패치 후 자동 압축" 체크도 함께 해제됩니다. 옵션을 계속 켜둔 채로 다음 게임을 이어서 작업하고 싶다면, 초기화 후 옵션을 다시 체크해야 합니다.
  6. 해시 계산 — 이 자리에서 해시값을 바로 계산해주는 게 아니라, 1번에 선택된 원본 파일을 들고 해시 유틸리티 탭으로 이동시켜주는 버튼입니다. 원본을 아직 선택하지 않았다면 비활성화되어 있습니다. 이동한 탭에서 기본값은 MD5이며, 다른 알고리즘이나 대/소문자 표시 방식도 바꿀 수 있습니다.
  7. 패치 시작
  8. 취소 — 진행 중인 패치를 중단합니다. 그 시점까지 만들어지고 있던 결과 파일과, BIN/CUE·GDI 등에서 함께 복사되던 부속 파일까지 전부 자동으로 삭제되어 output 폴더에 찌꺼기가 남지 않습니다.
  9. 로그

image


지원 패치 포맷

포맷 확장자 판별 방식
IPS .ips 파일 내용이 PATCH로 시작
IPS32 .ips 파일 내용이 IPS32로 시작
BPS .bps 파일 내용이 BPS1로 시작
UPS .ups 파일 내용이 UPS1로 시작
PPF .ppf 파일 내용이 PPF로 시작
APS .aps 파일 내용이 APS1로 시작
Xdelta .xdelta 파일 내용이 VCDIFF 매직 바이트(D6 C3 C4)로 시작
DCP .dcp 폴더 구조 기반 (아래 DCP 패치 참고)

포인트: 확장자가 아니라 파일 내용(헤더)으로 포맷을 판별합니다. 확장자를 실수로 바꾸거나 지워도 정상 동작하며, 반대로 확장자만 IPS로 바꿔놓은 가짜 파일은 내부 시그니처가 안 맞으면 "지원되지 않거나 유효하지 않은 패치 포맷" 오류가 뜹니다.


세부 동작

클릭으로 선택하기

  • 1번(원본) 영역 클릭: 확장자 제한 없이 모든 파일 선택 가능
  • 2번(패치) 영역 클릭: IPS / BPS / UPS / PPF / APS / Xdelta / DCP 확장자만 선택 가능하도록 필터링됨

드래그 앤 드롭 규칙 (실제 동작 기준)

1번, 2번 어느 영역에 드롭하든 규칙은 동일합니다.

  • 드롭한 파일들을 확장자로 훑어서, .ips .bps .ups .ppf .aps .xdelta .dcp 중 하나면 패치 파일 후보, 아니면 원본 파일 후보로 분류합니다.
  • 패치 파일 후보가 있으면 그중 첫 번째 파일이 패치 파일 칸에 들어갑니다.
  • 원본 파일 후보가 있으면 그중 첫 번째 파일이 원본 칸에 들어갑니다.
  • 즉 원본 파일 + 패치 파일을 한 번에 여러 개 선택해서 드래그해도, 확장자만 보고 각 칸에 하나씩 자동으로 나눠 들어갑니다. 나머지는 무시됩니다.
  • 폴더째로 드래그하는 것은 지원하지 않습니다(DCP 패치도 .dcp 파일을 드롭해야 하며, 내부 폴더 구조는 그 안에 압축되어 있습니다).

원본 파일 자동 처리 (가장 손이 많이 가는 부분을 대신 해줍니다)

원본으로 압축 파일이나 CHD/RVZ를 선택해도 직접 풀 필요 없이 바로 패치를 진행할 수 있습니다.

  • 원본이 ZIP / 7Z / RAR인 경우: 자동으로 열어서 내부에서 패치 대상을 찾습니다.
    • 내부에 CUE가 1개만 있으면, CUE를 먼저 풀고 CUE가 가리키는 BIN 트랙들도 함께 찾아서 자동으로 풀어줍니다. (멀티트랙 CD 이미지도 원본으로 바로 사용 가능)
    • 내부에 CUE가 여러 개면 어떤 게임인지 선택하는 창이 뜹니다.
    • CUE가 없으면, 알려진 롬 확장자(nsp/xci/3ds/cia/iso/bin/nes/sfc/gba/n64/gb 등 대부분의 콘솔 포맷 포함)를 우선 후보로 찾습니다.
    • 그래도 후보가 없으면 txt/nfo/jpg/png 같은 부속 파일을 제외한, 64KB 이상인 파일들을 후보로 봅니다.
    • 후보가 여전히 없으면 부속 파일 제외 전체를 후보로 봅니다.
    • 후보가 2개 이상이면 선택 창이 뜨고, 1개면 자동으로 그 파일을 풀어서 진행합니다.
    • 주의: 비밀번호가 걸린 압축 파일은 원본으로 사용할 수 없습니다(패치 파일 쪽 DCP 처리와 달리, 원본 압축 해제 단계는 비밀번호를 입력받지 않습니다).
    • 주의(GDI/CCD): 이 자동 추출 로직은 CUE에만 있습니다. 압축 파일 안에 GDI나 CCD 게임이 트랙 파일들과 함께 들어있어도, CUE처럼 관련 트랙까지 알아서 같이 찾아 풀어주지 않습니다. 후보 선택 창에서 뭘 고르든 그 파일 하나만 풀리기 때문에, 패치 자체는 되어도 이후 트랙/GDI 부속 파일을 못 찾아 실패하기 쉽습니다. GDI/CCD 원본은 미리 통째로 압축을 풀어서 로컬 폴더에 트랙 파일들과 함께 놓아둔 뒤 그 폴더에서 원본을 선택하는 걸 권장합니다.
  • 원본이 CHD인 경우: 패치 적용 전에 자동으로 압축을 해제합니다. chdman이 원래 포맷(BIN/CUE, GDI, ISO)의 트랙 파일들을 전부 함께 풀어주기 때문에, 위 GDI/CCD 주의사항과 달리 CHD는 부속 파일까지 문제없이 자동 처리됩니다.
  • 원본이 RVZ인 경우: 패치 적용 전에 자동으로 압축을 해제합니다. 이때 풀리는 파일 확장자는 원본 디스크 종류에 따라 GCM(게임큐브) 또는 WBFS(Wii) 입니다. (ISO 확장자가 아닙니다.)
  • 원본이 BIN(CUE)인 멀티트랙 이미지인 경우: 패치는 지정한 트랙(주로 데이터 트랙) 하나에만 적용되지만, 나머지 오디오 트랙 파일들과 CUE 파일도 output 폴더로 함께 복사되면서 새 파일명을 참조하도록 자동으로 다시 작성됩니다. 즉 패치 후에도 CUE가 깨지지 않고 바로 마운트 가능한 상태로 나옵니다. (단, 이 동작은 원본이 로컬 디스크에 있거나 CHD에서 자동 변환된 경우에 해당하며, 압축 파일 안의 CUE는 위에서 설명한 것처럼 이미 자동으로 트랙까지 함께 추출됩니다.)
  • 원본이 GDI / CCD인 멀티트랙 이미지인 경우: BIN(CUE)와 동일하게 패치 후 트랙 파일과 GDI/CCD 파일이 자동으로 복사·재작성되지만, 이건 원본이 로컬 디스크에 이미 트랙들과 함께 놓여있거나 CHD에서 자동 변환된 경우에만 해당합니다. 압축 파일 안에서 바로 꺼낸 GDI/CCD는 위 주의사항대로 부속 파일이 누락되어 실패할 수 있습니다.

패치 실행과 출력

  • 결과 파일은 원본 파일이 있던 폴더 바로 아래의 output 폴더에 생성됩니다. (원본이 압축 파일 안에 있었다면, 압축 파일이 있는 위치 기준입니다.)
  • 같은 이름의 파일이 이미 있으면 덮어쓰지 않고, 파일명 끝에 _를 붙여가며 자동으로 새 이름을 만듭니다. (예: 게임.nsp게임_.nsp)
  • 패치가 끝나면 output 폴더가 자동으로 열립니다.
  • 패치 도중 실패하거나 취소하면, 그때까지 만들어진 결과 파일과 부속 파일(복사된 트랙, CUE/GDI/CCD 등)이 전부 자동 삭제됩니다.

옵션 설명

패치 후 자동 압축

패치가 끝난 뒤 원본 포맷을 인식해서 아래 표에 따라 자동으로 압축까지 진행합니다.

원본 포맷 압축 결과
BIN(CUE) / GDI / IMG / ISO / CCD CHD
GCM / Wii / WBFS RVZ
3DS / CCI / CIA ZCCI
그 외 전체 ZIP
  • CHD/RVZ 변환 시 압축 레벨은 설정 탭의 chdman/Dolphin 압축 설정을 그대로 따릅니다.
  • 3DS/CCI/CIA는 azahar 압축 레벨 설정을 따릅니다.
  • 이 옵션을 꺼두면 패치만 딱 끝낸 원본 확장자 그대로의 파일을 얻습니다.
  • 위에서 언급했듯 초기화 버튼을 누르면 이 옵션도 함께 꺼집니다.

image


DCP 패치 (드림캐스트 전용, 숨은 기능)

DCP는 흔한 바이너리 diff 패치가 아니라, 드림캐스트 GD-ROM 전용 폴더형 패치 포맷입니다. 다른 포맷과 달리 아래 조건이 있습니다.

  • 원본은 반드시 GDI여야 합니다. GDI가 아니어도 CHD로 되어 있으면(변환 결과가 GDI인 경우) 자동으로 GDI로 풀어서 적용해줍니다. 그 외 포맷(BIN 단일, ISO 등)에는 적용할 수 없고, 시도하면 "DCP 패치는 드림캐스트 GDI 원본(또는 GDI로 변환되는 CHD)에만 적용할 수 있습니다" 오류가 납니다.
  • 내부적으로 GD-ROM의 ISO9660 파일 시스템을 열어서, 패치 안에 들어있는 폴더 구조를 기준으로 파일 단위로 두 가지 방식 중 하나로 처리합니다.
    • 덮어쓰기 대상 파일: 확장자가 패치 확장자(.xdelta/.ips/.ups/.bps/.ppf/.aps)가 아닌 파일은, 이름이 같은 원본 파일을 통째로 교체합니다.
    • 바이너리 패치 대상 파일: 확장자가 파일명.xdelta, 파일명.ips처럼 원본 파일명 뒤에 패치 확장자가 붙은 형태면, 원본에서 같은 이름(확장자 무관)의 파일을 찾아 해당 패치를 적용합니다.
    • 대상 파일을 찾지 못하면 그 항목은 건너뛰고 로그에 경고만 남깁니다. 하나도 매칭되는 게 없으면 실패로 처리됩니다.
  • 패치가 끝나면 GD-ROM 이미지를 다시 빌드합니다. "패치 후 자동 압축"을 켰다면 CHD로, 껐다면 GDI+트랙 파일 세트 폴더로 output에 저장됩니다.
  • 원본이 임시로 압축 해제된 경우(원본이 ZIP/CHD 등이었던 경우)와, 원래부터 GDI 파일 그 자체였던 경우 내부적으로 처리 경로가 다르지만 최종 결과물은 동일합니다.

추천 사용 방법

  1. 원본 파일과 패치 파일을 함께 탐색기에서 선택한 뒤, 1번 또는 2번 영역 아무 곳에나 드래그 앤 드롭합니다. 확장자만으로 자동 분류되므로 어느 칸에 놓든 상관없습니다. (원본이 zip / rar / 7z / chd / rvz 압축 파일이어도 자동으로 처리됩니다.)
  2. 필요하면 "패치 후 자동 압축" 옵션을 체크합니다.
  3. 패치 시작을 누릅니다.
  4. 완료되면 자동으로 열리는 output 폴더에서 결과물을 확인합니다.

image