패치 시 재 다운로드로 인하여 한글패치 내용이 사라지는 현상에 대한 해결
목요일 패치 이후 실컷 번역작업을 해놨던 텍스트데이터가 담긴 파일이 재다운로드로 인해 덮어씌워진 것을 보고 급히 프로그램을 하나 짰습니다.
전에 만든 추출기를 통해 Decompress된 텍스트데이터는 JSON 형식을 띄고 있기 때문에, 패치가 되더라도 기존의 JSON Object 자체는 사라지지 않는다는 점에 착안하여 해당 JSON의 규칙성을 찾아 패치된 파일에 번역되었던 옛날 파일의 툴 팁을 덮어 씌우는 알고리즘을 사용했습니다.
말 그대로 무식하게 모든 JSON 텍스트를 재배치하기 때문에 텍스트가 많으면 많을 수록 많은 리소스를 사용하고 패치 시간도 꽤 오래 걸립니다.
또한 원본 데이터는 모든 문자열이 1줄로 되어있는데, 편집기로 Visual Studio Code에 있는 JSON 정렬 기능을 사용하다 보니 저장할 때 자동으로 NewLine이 적용되어서 용량이 조금 커지는 단점이 있습니다.
어차피 클라이언트에서 Parsing할때도 똑같은 방법으로 하니 작동에는 아무 문제가 없지만요.
패치가 완료된 파일을 다시 Compress하여 인게임에 적용해보니 패치 이전과 같이 정상작동하는것을 확인할 수 있었습니다.
댓글
댓글 쓰기