본문 바로가기
가상세계/안드로메다

스펙트럴 소울즈 에디트#2, 몬스터 격파와 아이템

by 래프윙 2015. 1. 6.


칭호 20~38번, 몬스터 격파 수 에디트

에디트를 통해 몬스터 격파 수와 아이템 개수를 조정해보자






스펙트럴 소울즈...


캐릭터들의 능력치만 올린다고 해서


끝날만큼 호락호락한 게임은 아니었습니다.



오늘은 특정 몬스터를 정해진 개체수만큼 사냥해야 얻을 수 있는


칭호를 에디트 해보도록 하겠습니다.



참! 제가 에디트하고 있는 대상은


안드로이드용 스펙트럴 소울즈입니다.

병아리벌레 100체 격파, 냉혹한 사냥꾼




몬스터 격파 계 칭호 중에 가장 짜증나는 것이 병아리벌레를 100체나 잡아야하는 '냉혹한 사냥꾼', 그리고 이계의 문 37층에서 한마리씩 나오는 암흑마도사를 30체나 격파해야 얻을 수 있는 '지식의 탐구자'입니다.



제 출퇴근 시간이 아무리 길어도 이건 좀 지루하더군요. 그래서 작업해봤습니다. 지난번과 같이 5번 세이브파일을 기준으로 설명하겠습니다. 







결론부터 얘기하면 세이브파일의 0068d20 주소의 5번째 바이트부터가 칭호 20번부터의 몬스터 격파 수 입니다. 위의 캡쳐화면을 기준으로 정리하면 다음과 같습니다.







SAV5열에 HEX파일의 값을 순차적으로 적어놓고 대응되는 칭호화 목표 격파수를 적어놓았습니다.



그러니까 현재까지 격파한 병아리벌레의 수가 33마리(0x21), 암흑마도사가 15마리(0x0F) 인것을 확인 할 수 있습니다. 



이제 이것을 목표 16진수 열에 정리해놓은 수치로 수정합니다.







이제 세이브파일을 저장하고 다시 폰에 덮어써주기만 하면됩니다.



* 울트라에디트 사용법과 세이브파일의 위치는 이전 포스팅을 참고해주세요.


2015/01/05 - [가상세계/안드로메다] - 스펙트럴 소울즈 에디트#1, 스테이터스와 AP




그럼 게임을 실행하고 수정된 세이브파일을 로드합니다. 그리고 칭호 버튼을 눌러주면...







후후, 좀더 드라마틱하라고 한화면에 편집해봤습니다. 이제 모든 몬스터 격파계 칭호를 한방에 획득할 수 있습니다.




에디트 어떻게 하나요?




이번에는 원하는 수치 데이터를 세이브파일에서 어떻게 찾아내는지에 대해서 이야기해보려고 합니다. 제가 세이브파일의 포멧을 100% 분석할 수는 없기 때문에 혹시라도 위에 이야기한 것 이외에 다른 수치 데이타를 변경하고 싶은 분들의 위한 힌트라고 보시면 될 것 같습니다. 



먼저 게임에서 진행하면서 변경되는 모든 수치데이터가 세이브 파일에 저장된다고 가정합시다. 특정 수치 데이터(스테이터스, 사냥수, 아이템 개수등) 을 찾기 위한 가장 쉬운 방법은 해당 수치 데이터에 변화를 주고 변경 전후를 비교 하는 것입니다.



구체적인 예로 이번에 소개한 몬스터 격파수를 예로 설명하겠습니다. 먼저 아무것도 하지 않은 상태에서 세이브파일 5번을 PC로 복사하고 이름을 'save5.dat_before'로 변경합니다.



그리고 게임에서 세이브파일 5번을 로드하고 병아리 벌레를 사냥합니다. 







2마리만 잡고 빠져나와서 다시 세이브를 하고 이 파일을 PC에 저장합니다. 왜 2마리냐고요? 1씩 변화하는 다른 수치데이터와 헤깔리지 않게하기 위해서죠. ^^;



자, 이제 두 파일을 비교해야하는데...


HEX 포멧으로 비교하기 때문에 HEX Compare 툴이 필요합니다. 제 경우에는 HxD라는 툴을 사용했습니다.(http://mh-nexus.de/en/downloads.php?product=HxD) 



먼저 'save5.dat_before'를 열고 메뉴의 분석>파일 비교>비교를 선택합니다.







선택 후 나타나는 팝업 창에서 새로 저장한 'save5.dat' 를 선택하고 수락 버튼을 클릭합니다.







그러면 비교 화면이 나타납니다. 변화가 있는 부분으로 포커스가 이동하면서 글자 배경색이 파란색으로 나타납니다. 공짜툴이라 그런지 바뀐 부분이 한 바이트씩만 보이는데 'F6' 버튼을 누르면 다음 변경 지점으로 이동할 수 있습니다.







이렇게 'F6' 버튼을 눌러가면서 탐색하다보면 이전과 이후 값의 차가 '2'가 되는 부분을 찾을 수 있습니다. 딱봐도 4byte 씩 숫자가 나열되어 있는게 칭호 20~38번까지의 몬스터 사냥 개수 같죠? 



더군다나 포스팅 상단의 표에서 정리 했던 것처럼 병아리벌레 격파수로 추정되는 0x21은 목표치인 100미만이고 이미 칭호를 획득한 바로 옆에 킹워울프 격파수는 0x6D로 목표치 30을 넘고 있습니다. 



후훗, 찾아낸것 같네요.



이렇게 변화를 주고 세이브파일을 비교해보면 원하시는 수치데이터 위치를 찾을 수 있을 겁니다. 에디트가 게임의 재미를 떨어뜨린다고만 생각하지 마시고 이런식의 접근도 시도해보세요.



방법을 찾아가는 과정에서도 색다른 재미를 느껴지네요. ㅎㅎ 이것도 일종의 추리 게임이랄까요?