활용편 1에선 다양한 유용한 코드를 알아보았고, 이번 2편에선 포켓몬 생성 및 정보변환에 관한 코드를 알아보자
이번 글은 위 영상을 토대로 작성하였으니, 일본어가 가능한 사람은 영상으로 보는게 더 쉬울수도 있다
또한 이 범위에서부터는 코드의 난이도가 상당히 올라가기때문에 대부분의 경우는 그냥 그렇구나 정도로 보는걸 추천한다
이번에 시험삼아 제작해볼 포켓몬은 북미판 콜로세움 확장디스크 특전이었던 WISHMKR 지라치다
이 개체는 3세대 당시 난수를 통해 이로치 획득이 가능했던 지라치 중 하나이며, 해외쪽에선 pkm파일 등을 통해 9종류의 이로치개체가 존재한다는것이 판명난 상태이다
이 글에선 개체값 11-8-6-14-5-20 에 명랑한 성격인 이로치 개체를 제작해보도록 하겠다
우선은 위 지라치와 동일한 성격치(PID)를 지닌 불량알을 제작한다
--- 임의PID 불량알 생성 코드 ---
박스1: にぎオ(1)(1)(공)(공)ビ
박스2: にぐオ(2)(2)
이 코드를 실행하면 원하는 PID의 불량알을 박스1의 첫번째칸에 생성할 수 있다
위 지라치의 PID는 7B053548 이므로
이 수치를 문자값으로 바꾸어 (1)(1)과 (2)(2)에 해당값을 입력해준다
각 문자값에 따른 수치는 아래 사이트 참조
7B=ロ
05= お
35=ゅ
48=ぶ
로 이루어져 있으므로, 위 문자값을 '하위값부터 순서대로' 입력해야만 한다
따라서 위의경우는
박스1: にぎオぶゅ(공)(공)ビ
박스2: にぐオおロ
를 입력한 후 코드실행하면 된다
그러면 위와같이 불량알이 생성되고, 위 불량알을 파티에 넣은 뒤 전편에서 소개했던 강제부화코드로 부화시킨다
박스1: Lいす(공)(공)(공)(공)ビ
박스2: おネふいい
박스14: ゆポ(공)らゆH(공)
위 코드 실행 후 박스를 종료하면 포켓몬창으로 이동이 되니, 여기서 불량알을 선택하도록 하자(화면이 어두워지고 시간이 좀 걸리니 기다릴 필요가 있다)
잠시 기다리니 이런식으로 지정한 PID에 맞게 명랑한 성격의 불량알이 부화했다
이제 이 불량알을 지라치로 변경시켜보자
*******포켓몬 정보변경 코드*******
박스1: Lいす(공)(공)(공)(공)ビ
박스2: もけぬうい
박스5: く0COおぅズば
박스6: ア@む6ば
박스9: クぢいいネふいい
박스10: アアアヤ6かく
박스14: (1)(2)(3)(4)(5)(6)(7)(8)
지닌포켓몬 3번째: 정보변경을 하고자하는 포켓몬
위 코드는 @의 입력값에 따라 포켓몬과 관련된 대부분의 데이터 변경이 가능한 매우 유능한 코드이다
(예: @에 い를 입력하면 포켓몬의 닉네임, う를 입력하면 국적, ち를 입력하면 첫번째기술의 pp 등등...)
아래 출신버전 변경까지는 모두 이 코드를 기반으로 한다
우선은 불량알을 지라치로 변경하기 위해, 포켓몬의 종족 데이터를 변경시켜야만 한다
종족에 해당하는 문자값은 さ 이므로 @에 さ를 넣어준다
그리고 지라치의 내부코드인 199에 해당하는 문자열 べあ를 박스14에 기입한다
박스6: アさむ6ば
박스14: ベあ(가타카나ベ 이므로 주의, 히라가나 입력시 밀로틱으로 변경된다)
코드 실행 후 박스를 껐다가 다시키면 지닌포켓몬 3번째칸에 두었던 불량알이 지라치로 변경된다
단 현재는 종족데이터만 변경한 상태라 나머지는 그대로 버그투성이이니 다른 데이터를 볼 때는 주의하도록 하자
(경우에 따라서는 그대로 튕길수있으니 그냥 애초부터 안보는것을 추천)
다음은 레벨을 변경해보자
위 코드에서 박스6과 14만 해당 값에 맞게 변경해주면 된다
레벨정보는 ぎ, 99라는 값은 テ가 해당되므로
박스6: アぎむ6ば
박스14: テ
로 변경하여 코드실행을 한다
그러면 레벨이 99로 변경이 되는데, 이 상태로는 경험치값은 변경이 없는상태이므로 경험치 획득시 해당 경험치에 맞는 레벨로 돌아와버리는 현상이 발생한다
해당 문제는 경험치와 무관하게 레벨을 올려주는 이상한사탕을 사용함으로써 해결할 수 있다
다음은 입수 레벨정보 변경이다
WISHMKR지라치는 레벨5 획득이므로, 5값에 해당하는 お, 포켓몬 레벨정보값인 や를 입력한다
(참고로 알부화를 통한 레벨5는 0값으로 친다)
박스6: アやむ6ば
박스14: お
코드를 실행하면 레벨5일때 부화했다는 정보가 레벨5일때 만난것으로 변경된다
다음은 지라치의 닉네임을 JIRACHI로 변경해보자
닉네임 데이터값은 い이고, 박스 14에는 그대로 JIRACHI를 입력한다
박스6: アいむ6ば
박스14: JIRACHI
실행을 하면 닉네임이 변경된다
3세대 일판에서는 5글자밖에 표시를 못하기때문에 이름이 잘려보이지만, 내부적으로는 제대로 적용이 되어있기때문에 4세대 이후로 보내면 이름 전체가 정상적으로 표시된다
단, 이 코드로는 8글자까지만 입력이 가능하기 때문에 9글자 이상의 이름(예: REGISTEEL)을 입력하고자 하는 경우 8글자까지의 닉네임을 지은 포켓몬을 박스1 첫번째칸에 놓고
박스1: にぞオ(9)(10)
(각각 9번째와 10번째글자)
를 입력하고 코드실행하면 정상적으로 적용된다
다음은 어버이명 변경이다
어버이명 데이터값은 き이며, 박스14에는 WISHMKR을 입력한다
박스6: アきむ6ば
박스14: WISHMKR
코드실행을 하면 어버이닉이 변경된다
다음은 어버이 성별 변경이다
WISHMKR 지라치는 어버이 성별이 남성인데, 플레이어가 여성인경우 이를 맞춰서 바꿔줄 필요가 있다
어버이 성별 데이터값은 ぅ이며, 짝수값은 남성, 홀수값은 여성을 가리킨다
박스6: アぅむ6ば
박스14: い(짝수값이면 아무거나 상관없음, 이 경우 2)
코드실행을 하니 어버이 이름이 파란색으로 변했다
다음은 출신버전 변경이다
출신버전 데이터값은 ゆ이며, 해당 글에서는 루비버전 출신으로 맞추기 위해 い를 입력한다
박스6: アゆむ6ば
박스14: い
해당코드는 실행해도 적용여부를 인겜에서 알수없으나, 내부적으로는 제대로 적용이 된다
다음은 만난장소 변경이다
--- 만난장소 변경 코드 ---
박스1: X(1)(1)(2)
지닌포켓몬 (1)(1)번째에 있는 포켓몬에게 적용시키는 코드이며, 3번째에 있는 지라치에게 적용시키기위해서는 내부값 02인 い를 입력하면 된다
또한 3세대의 운명적인 만남은 만난장소에 의존하며, 해당값은 FF이다
FF는 이름에서 종료되는 시점을 가리키는 값이므로 (2)에 아무것도 입력하지 않으면 해당값이 적용된다
박스1: Xい(공)
실행을 하니 운명적인 만남을 한것으로 변경되었다
다음은 어버이 ID의 변경이다
--- 어버이 ID 변경 코드 ---
박스1: に(공)ィ(1)(1)(공)(공)ビ
박스2: にあィ(2)(2)(공)(공)ビ
박스3: もけぬうい
박스5: く0zOてネぃめ
박스6: アぶネクぞ(공)l (<-소문자L)
박스7: カケばぞーっえげ
박스8: アきWぱタせl (<-소문자L)
박스9: クぢいいリメうい
박스10: アzsヤぢいい
지닌포켓몬 세번째: 변경하고자하는 포켓몬
위 코드는 해당 포켓몬 어버이의 TID를 (1)(1)로, SID를 (2)(2)로 변경한다
위 포켓몬 정보변경 코드로는 적용시 포켓몬이 불량알이 되버리는 부작용이 존재하나, 이 코드는 그 현상을 회피할 수 있다
WISHMKR지라치의 ID는 20043 00000 이므로
20043= 4E4B
0= 공백 으로
4E= ぺ
4B= ぱ
위 문자값을 '하위값부터 순서대로 입력'하면 되니
박스1: に(공)ィぱぺ(공)(공)ビ
박스2: にあィ(공)(공)(공)(공)ビ
를 입력하면 된다
코드를 실행하면 성격치와 어버이 ID값이 매칭되어 지라치가 이로치로 변한다
--- 포켓몬 국적 변경 코드 ---
박스1: にだオ(1)(1)
박스1의 첫번째칸에 있는 포켓몬의 국적을 (1)(1)의 값에 맞는 국적으로 바꾼다
あい: 일본
いい: 북미
うい: 프랑스
えい: 이탈리아
おい: 독일
かい: 한국
きい: 스페인
단, 한국의 경우 3세대가 한글 정식발매판이 존재하지않고 4세대 역시 한글판은 한글판끼리만 통신이 가능한 관계로(애초에 다른나라에는 한국국적 데이터 자체가 존재하지 않음) 사실상 무국적 취급이 되어 존불판정이 나게되므로 사용할 이유가 없다
위 지라치의 경우 북미산이므로 먼저 지라치를 박스1의 첫번째칸에 옮긴 후
박스1: にだオいい
를 입력한다
해당 코드도 인겜에서는 확인이 불가하나 내부적으로는 제대로 적용이 된다
참고로 임의성격치 불량알을 부화시킨경우 국적 설정이 안되어있기때문에 위 과정을 필수적으로 진행해야만 존불판정을 피할수있다
--- 포켓몬 기술 변경 코드 ---
박스1: ロ(1)(2)(3)(3)
위 코드는 지닌 포켓몬 (1)번째의 기술(2)번째를 (3)(3)으로 변경시킨다
만일 기술 4개를 한번에 변경하고싶은 경우
박스1: ロい(공)(1)(1)(공)(공)ビ
박스2: ロいあ(2)(2)(공)(공)ビ
박스3: ロいい(3)(3)(공)(공)ビ
박스4: ロいう(4)(4)
위 괄호에는 자신이 원하는 기술의 내부코드의 문자값을 입력하면 된다
이 코드를 사용하면 버그기술을 포함한 모든 기술을 제한없이 가르칠 수 있으나, 존가 지라치를 만들기 위해 여기서는 코스믹파워, 파멸의소원, 사이코키네시스, 누르기를 가르쳐보겠다
코스믹파워: 0142 -> ぢあ
파멸의소원: 0161 -> チあ
사이코키네시스: 005E -> セ(공)
누르기: 0022 -> め(공)
이므로
박스1: ロい(공)ぢあ(공)(공)ビ
박스2: ロいあチあ(공)(공)ビ
박스3: ロいいセ(공)(공)(공)ビ
박스4: ロいうめ(공)
을 입력하고, 지라치를 지닌포켓몬 3번째에 둔 뒤에 실행하면 된다
그러면 앞서 있었던 깨진기술들이 전부 지정한 기술들로 변경이 되었음을 확인할 수 있다
위 과정까지 진행하면 이 지라치는 이후 세대에도 문제없이 전송이 가능해진다
(지라치의 닉네임의 미사용구역에 따른 쓰레기값의 재현은 안되있으나, 쓰레기값은 4세대로 옮길시 덮어씌워지기 때문에 신경쓰지 않아도 된다)
위 코드들을 활용하면 극악의 노가다난이도를 자랑하는 콜로세움산 이로치 3견을 만들거나, 에메랄드에서 포획한 테오키스를 파레리그산으로 바꾸어 존가개체로 만드는 등 사실상 실기 하나만으로 포케핵스를 만지는 것과 같은 결과를 얻을 수 있다
이 외에도 여전히 다양한 코드가 존재하므로, 다음편에서도 추가적으로 다뤄보도록 하겠다
게임 안에서 다른 게임하는거같어
실기라고해서 에딧이 안되는건 아니네
이게 정보글이지
덕분에 도움 많이 받았어요 감사합니다