메뉴 www.fafan.kr
파판 >> 게임강좌
  • 로그인
  • [PS2] [PS2] 플스2용 액플코드 분석/찾기 강좌 1
    작성자 : gameworld | 조회수 : 1419 (2002-08-18 오후 12:23:41)
    - 첨부파일
      ps2dis099_23.zip

    먼저 첨부파일에 있는 PS2용 어드레스서치 프로그램인 PS2DIS 개조 툴을 받습니다.
    이 프로그램은 리눅스 일어판용입니다. 한글판에서는 압축도 풀리지 않습니다.
    ps2dis.exe 를 실행하고 파일들을 드롭 해 주십시오.
    대응하는 파일은 PS,PS2 의 오브젝트로 다양합니다.
    화면에 반대 어셈불리코드가 나타나지 않으면,그것은 버그입니다
    이 프로그램은 메모리상주 프로그램인 S***_***.** 파일을 이용하여 플스 2 용 소프트에 있는
    메모리주소들을 찾아 어셈블러를 이용하여 코드들을 해석해주는 기능을 합니다.
    제가 컴퓨터학을 전공하지 않았다면 PUSH, 어드레스 이런게 무슨소린지 이해를 하지 못했을 겁니다.
    어셈블리언어와 자료구조를 배우신 분들은 다들 이해하실 듯....

    【기본 이동】

    동작
    위·아래 상하 이동
    PageUp,Down 상하 이동 페이지 단위
    Ctrl+PageUp,Down 상하 이동 1000h 단위
    Alt+PageUp,Down 상하 이동 10000h 단위
    g 어드레스를 지정하고 이동
    참조 장소에 이동

    【스택 관계】

    동작
    참조 장소에 이동.원래의 어드레스를 PUSH.
    POP 한 어드레스에 이동.
    Ctrl+위,왼쪽 스택을 PUSH,POP하지 않고 이동
    Insert 현재 위치를 PUSH

     

    속성효능
    c code unknown 이라고 변하지 않습니다.표시색이 변한 정도나 .
    b byte 바이트 단위로 라벨,코멘트가 붙이지다.
    문자열 데에 Enter 을(를) 눌렀는다면 나무에 자동적으로 라벨이 설정된다.
    h half 2 바이트 단위로 라벨,코멘트가 붙이지는
    w word 워드 값을 어드레스라고 인식하고,그 어드레스에 라벨이 붙어 있으면 표시한다.
    d dword 자...
    q qword 자...
    u unknown 파랗게 된다.
    Shift+u undefined 하얗게 된다

    【마크,검색 관계】

    동작
    스페이스 현재 위치를 마크한다.
    F3 마크 장소를 참조하고 있는 장소에 점프.순 방향
    Shift+F3 마크 장소를 참조하고 있는 장소에 점프.역 방향
    Alt+X 마크 위치와 현재 위치를 교환


    예를들어... 플스2 용 도키메키 메모리얼 3 를 개조해보겠숩니다.
    우선,캐릭터의 각 패러미터(문과,이과계 등)의 레벌업치를 찾아 보겠습니다.
    도키메키3의 경우,학습계의 각 패러미터의 LV99가 MAX이기 때문에 ,
    PS2DIS의 수치 검색으로 99(63H)를 차근차근 검색하고,그것과 같은 처리를 행하고
    있는 부분을 찾습니다.

    검색 결과,아래와 같은 값들을 얻을 수 있습니다.

    002597b8주변을 해석하면 ,이하와 같은 처리를 행하고 있다고 예측할 수 있습니다.
    입니다. 野出,002597C0의 분기 처리를 없애면,LV 업을 한다고 예상할 수 있습니다.


            lw              v1, $0000(a1)
    slt             v0, s4, v1
    beq             v0, zero, $00259828 //일정치(s4)이상이라면 LVUp 처리
    addu            t0, a2, s2
    lui             v0, $ffff
    addu            v0, v1, v0
    sw              v0, $0000(a1)
    sw              zero, $0040(t0)
    lw              v0, $0000(a3)
           addiu           a0, v0, $0001        //1LV UP
    slti            v0, v0, $0063
    beql            v0, zero, $00259888  //LV99라면 점프
    addiu           s0, s0, $0001
    sw              a0, $0000(a3)
    sllv            a0, s3, s0
    addu            a1, s0, s2
    addiu           v1, zero, $0001
    lbu             a2, $0007(s5)
    sb              v1, $0050(a1)
    lbu             v0, $62aa(s1)
    or              v0, v0, a0
    bne             a2, zero, $00259884
    sb              v0, $62aa(s1)
    lw              a1, $0000(a3)               
    ■코드화
    분기 처리를 없애고,002597C0 00000001로 하면 좋기 때문에 ,
    이것을 「개조 지원 툴」로 암호화하고 코드를 만듭니다.

    결과,아래부분의 코드가 완성됩니다.

       
    LV 업 계속됨
    3CB418E8 1456E7A6

     덧붙여서 마스터 코드는 필수입니다.공개되고 있는 마스터 코드를 넣으세요
    .
    아직 정리가 덜 되었습니다. 이 내용은 프로그램에 동봉되어 있는 설명서를
    대충 번역해본 것인데, 솔직히 말해서 이런 걸 적어도 써먹는
    사람이 몇명이 될지...-_-;;

    자검향: 코드는 어려워요;; ㅎ -[08/16-13:14]-




    글쓰기 | 수정 | 삭제 | 목록   

    Lv.3 엣살이 (2005-05-28 02:51:35)
    쩝 액플코드 만들긴 힘들구낭



    도배방지 : 0

    글쓰기 | 수정 | 삭제 | 목록   

     

    <<363738

    Copyright ⓒ FINALFANTASIA.COM All rights reserved.