한글패치 작업내역

늑대와 향신료 VR2 한글패치 작업내역 (2)

눈백로 2021. 6. 21. 20:04

저번에 알아낸 것
CAB-45f355aa5c8dd284159ee83268ece156_00001.-3 -> 크레딧
CAB-45f355aa5c8dd284159ee83268ece156_00001.114 -> 대사 (SerifData)
CAB-45f355aa5c8dd284159ee83268ece156_00002.114 -> 옵션/메뉴(UI)

 


폰트 수정 및 구조를 보기 위해 UABE로 열어보니 해당 bundle파일이 압축되어 있다고 한다.

  :원본크기: 136kb, 압축해제 후 크기: 533kb

근데 info를 눌러봐도 Export를 눌러봐도 응답없음이 뜬다.

10분정도 기다리면 응답없음이 풀리는데, 이후 export를 하더라도 계속 같은 파일이 나온다.

 

혹시나 해서 data.unity3d 파일을 열어보니 2019.4.0f1버전의 db가 없다면서 이상하게 열린다

export dump도 안되는 상태

resources.resources 파일은 애초에 Unable to read the bundle file! (invalid file or unknown verson?) 이라는 오류가 뜨며 열리지도 않는다.

검색해보니 UABE가 2019.2.x까지만 지원한다고 한다.

 

그래서 일단 UnityEX를 통해서 대사파일을 수정 후 삽입해보았다.

한글 폰트가 들어가있지 않을 것이기에 한글은 당연히 나오지 않을 것이다.

그래서 영어 파트도 수정했다.

<Notepad++로 열었을 때의 모습. 잘림 없이 깔끔하게 나온다.>

 

수정은 UnityText2를 이용하였다.

근데 이후 리팩을 어떻게 해야 할 지를 몰랐다.

원본이 압축되어 있는 상태인데 그대로 import하면 문제가 생길 줄 알았다.

좀 알아보니 압축을 푼 상태로 재압축하지 않고 패키징해도 실행된다길래 그대로 실행해봄
-> 실행이 잘 된다.

 

근데 실행해보니 로고에서 안넘어간다.

타카기양 작업시에 뭔가 잘못하면 스테이지 로딩이 안되면서 깨지는 증상이 발생하는데

이것도 비슷한 케이슨가?? 싶었음

 

근데 이후 3시간~4시간 내리 압축 방식도 바꿔보고, 헤더 원본 사용 여부도 체크해보고, 파일 사이즈를 체크하나 싶어서 Hex값을 조작해보는 등 별별 짓거리를 다 해봤는데 해결이 되지 않았다.

 

그래서 파일 사이즈를 체크하는 부분이 있나? 싶어서 덤프를 떠보았다.

il2cpp dumper를 사용하여 덤프를 뜨면 dump.cs파일이 나오는데,

AssetBundleCreateRequest LoadFromFileAsync_Internal(string path, uint crc, ulong offset) { } 부분이 들어 있었다.

또한, dll파일들에 IAssetBundleResource UnityEngine.ResourceManagement.ResourceProviders AssetBundleRequestOptions get_Hash set_Hash get_Crc set_Crc라는 부분이 있었다.

 

내가 유니티를 다뤄보지도, 프로그래밍을 하지도 못해서 자세힌 모르겠으나,

public static AssetBundleCreateRequest LoadFromFileAsync(string path, uint crc, ulong offset);

crc An optional CRC-32 checksum of the uncompressed content. If this is non-zero, then the content will be compared against the checksum before loading it, and give an error if it does not match.

검색해보니 위와 같은 정보가 나왔다.

이후 어떻게 찾아낸 것인지는 잘 생각이 나지 않으나, catalog.json파일이랑 관련이 있다는 것을 찾아내었고

"m_ExtraDataString":"xxxxxx" 부분을 수정하면 해결된다는 것을 찾아냈다.

이후 실행해보니 정상적으로 실행되었고, 모두 해결이 된 줄 알았으나

UnityText2에 개행문자가 나오지 않았다.

그래서 지금까지 했던게 수포로 돌아갔다.

 

 

오늘 알아낸 것

:에셋 CRC체크가 들어가 있다. (뚫는법 찾아냄)

  ->외부 프로그램을 사용하지 않고 한글패치가 가능하다

:번들파일이 압축되어 있던, 압축이 풀려있던 상관없이 정상적으로 로드가 된다.

 

앞으로 할 것

:UnityText2 개행문자 표기법 찾기

:폰트 삽입 후 내용 수정 및 출력 테스트해보기

:역자 찾기

1 2 3 4 5 6 7 ··· 9