口袋改版教程吧 关注:942贴子:4,869

【End】口袋妖怪&绿宝石 扩容721Pokemon 解限教程

只看楼主收藏回复

上次123转的那个不全面也存在许多错误,这次我重新转一下比较全面的,同样,数据来自于外国网站,原作者:Chaos Rush。原帖: http://tieba.baidu.com/p/3927752103
首先,你需要以下
1:基础/经验
2:工具
准备工具:
十六进制编辑器(UE、WINHEX。个人推荐hex)
绿宝石ROM
vba模拟器
thumb编译工具
程序员计算器
unlz-gba
基础,不用我说了,本次教程为十六进制数据较多,如果不会,我救不了你
经验,重定义,例如25空位的图鉴信息完善等等。
OK,准备好了就开始教程吧。温馨提示:先备份哦


IP属地:浙江来自Android客户端1楼2015-08-05 11:47回复
    Step1:插入存储块
    首先,打开我们的winhex,载入宝石rom,寻找一处空位把下列数据写入空位中:
    21 68 FF 23 1B 01 5B 18 98 88 00 28 09 D0 04 28 0A D0 0D
    28 0C D0 0D 2D 1C DD 01 20 08 BC 98 46 F0 BD C4 21 08 4A 06 E0 8E 21 89 00
    07 4A 02 E0 BA 21 09 01 06 4A 04 3B 18 68 10 60 04 3A 04 39 00 29 F8 D1 E7
    E7 C0 46 C0 D8 03 02 F8 DA 03 02 98 E6 03 02 00 48 00 47 2D 2E 15 08 FF FF
    FF FF FF 27 3F 01 CF 19 F8 80 BE 88 00 2E 08 D0 04 2E 09 D0 0D 2E 0B D0 00
    00 00 48 00 47 53 28 15 08 C4 23 08 4A 06 E0 8E 23 9B 00 07 4A 02 E0 BA 23
    1B 01 06 4A 04 3F 10 68 38 60 04 3A 04 3B 00 2B F8 D1 E9 E7 C0 D8 03 02 F8
    DA 03 02 98 E6 03 02
    这是一段thumb编译的数据
    接下来,我们让这串数据在游戏中发挥它的用途
    0x152E98:00 48 00 47 [XX+1 XX XX 08]
    0x15284E:38 47
    0x15288C:[YY+61 YY YY 08]
    0x0D9CC6:38 47
    0x0D9D04:[YY YY YY 08]
    0x0DA284:00 48 00 47 [XX XX XX 08]
    注释 这里的XX+1 XX XX 08为地址偏移+1后的指针,例如01 00 00 00,+1后的指针则是01 00 00 09,+61则是 61 00 00 09
    修改从0x5CDC00地址开始的数据为以下:
    00 00 2C 0F 00 00 F0 0F F0 0F F0 0F E0 1F F0 0F D0 2F B8
    0D 00 00 F0 0F F0 0F F0 0F E0 1F F0 0F D0 2F F0 0F C0 3F F0 0F B0 4F F0 0F
    A0 5F F0 0F 90 6F F0 0F 80 7F 50 04
    共38字节,这里需要特别注意,要替换十六进制数据,不然重来吧。温馨提示:替换分为两次较好


    IP属地:浙江来自Android客户端2楼2015-08-05 11:49
    回复
      2025-06-05 20:54:57
      广告
      tep3:重定义精灵数据
      这里表格居多,还请有心理准备
      宠物种族数据表:3203CC 2D10字节
      蛋组:3203DD 有两个指针指向这儿
      升级技能表:32937C 670字节
      解限:
      6B944:00 00 00 00 00 00
      宠物正面图:30A18C DC0字节
      宠物背面图:3028B8 DC0字节
      解限:
      346D6:07 E0
      34AC2:07 E0
      普通色板:303678 DC0字节
      闪光色板:304438 DC0字节
      解限:
      6E750:04 E0
      宠物Y轴(我方):3021D8,6E0字节
      宠物Y轴(敌方):300D38,6E0字节
      高度:305DCC 19C字节
      解限:
      A5F82:03 E0
      A5EB6:03 E0
      小图标:57BCA8,6E0字节
      图标色板:57C388,1B8字节
      解限:
      D2E3A:01 E0
      D2D20:00 00 00 00


      IP属地:浙江来自Android客户端4楼2015-08-05 11:51
      回复
        Step4:图鉴
        编号表:31DC82,336字节
        图鉴信息:56B5B0,3060字节
        Step5:图鉴字节更改
        C06FC: 11 48
        C06AA: 10 48
        C06BE: 3E E0
        C07D8: 05 49
        C079C: 0A 49
        BB6AC: 00 20
        6D42C: 00 00
        如果你的宠物超过510
        BC91A: 5D 21 C9 00
        如果你的宠物没超过510
        BC91A: XX 21 C9 00 。XX为你的宠物数量/2
        BB42C: 12 01
        BD87C: 09 01
        BD54C: 12 01
        BD4B0: 09 01
        BD5B8: 2D 01
        BD082: 12 01
        BD57E: 1B 01
        BCF9E: 09 01
        BCFBA: 09 01
        BCFDC: 1B 01
        BCFFE: 12 01
        BD01A: 12 01
        BB456: 12 01
        BD3B8: 12 01
        BD826: 09 01
        BD844: 1B 01
        BD02A: 12 01
        BD044: 09 01
        BD05E: 09 01
        BBD8C: 12 01
        BBDBA: 1B 01
        BC42E: 1B 01
        BB8CA: 09 01
        BBABE: 12 01
        BBBA8: 24 01
        BBBD4: 12 01
        BBF96: 09 01
        BC140: 09 01
        BC288: 1B 01
        BC2B4: 12 01
        BE892: 09 01
        BC4CE: 1B 01
        C1808: 12 01
        C23F2: 1B 01


        IP属地:浙江来自Android客户端5楼2015-08-05 11:52
        回复
          Step6:字节大量更改
          从偏移量0x00000000开始
          搜索81 01 00 00替换E7 02 00 00
          搜索9B 01 00 00替换0D 03 00 00
          选块BB6AC-C5000
          搜索06 00 00替换0D 00 00


          IP属地:浙江来自Android客户端6楼2015-08-05 11:53
          回复
            Step7:修复一些错误的字节
            42730: 81 01
            5DF10: 81 01
            6F100: 81 01
            A5EA4: 81 01
            A35A2: 01 1C 11 E0
            34A16: 07 E0
            以下几处为个人找出的字节
            31E2EC: 9B 01
            30FC98:9B 01
            304354: 9B 01
            304284:81 01


            IP属地:浙江来自Android客户端7楼2015-08-05 11:54
            回复
              Step8:修复BUG
              把这段thumb源码编译到足够大的空位
              .text
              .align 2
              .thumb
              .thumb_func
              .global positionfix
              main:
              push {r0-r3}
              ldr r0, .FirstCheck
              ldrb r0, [r0]
              mov r1, #0xFF
              cmp r0, r1 /*compares .FirstCheck value to FF. If not, you're outside*/
              bne Outside
              b Inside
              Inside:
              ldr r0, .Counter1Inside
              ldrb r0, [r0]
              ldr r1, .Counter2Inside
              ldrb r1, [r1]
              cmp r0, r1
              bne next1
              b End
              next1:
              mov r2, #0x0
              ldr r3, .FinalPosInside
              strh r2, [r3]
              b End
              Outside:
              ldr r0, .Counter1Outside
              ldrb r0, [r0]
              ldr r1, .Counter2Outside
              ldrb r1, [r1]
              cmp r0, r1
              bne next2
              b End
              next2:
              mov r2, #0x0
              ldr r3, .FinalPosOutside
              strh r2, [r3]
              b End
              End:
              pop {r0-r3}
              ldr r0, .NextRoutine
              str r0, [r6]
              pop {r4-r7}
              pop {r0}
              bx r0
              .align
              .FirstCheck: .word 0x02000D1C
              .Counter1Inside: .word 0x02000F9E
              .Counter2Inside: .word 0x02000FA0
              .FinalPosInside: .word 0x02000F9A
              .Counter1Outside: .word 0x02000D22
              .Counter2Outside: .word 0x02000D24
              .FinalPosOutside: .word 0x02000D1E
              .NextRoutine: .word 0x080C1D39
              接着修改以下部分
              BBD94: 0E 4A
              BBDD0: 9C 0F 00 02
              C1808: 12 01
              C1814: 00 48 00 47
              C1818: XX XX XX 08 (ASM地址+1)


              IP属地:浙江来自Android客户端8楼2015-08-05 11:55
              回复
                完成,这是一个已经解限的ROM了,附带精灵相关表格
                Species Names= 3185C8
                Front Sprite Table= 30A18C
                Back Sprite Table= 3028B8
                Front Palette Table= 303678
                Shiny Palette Table= 304438
                Base Stats = 3203CC
                Moveset Pointers= 32937C
                National Dex Order= 31DC82
                Pokédex Data = 56B5B0
                TM Compatibility= 31E898
                Evolution Table= 32531C
                Icon Sprite Table= 57BCA8
                Icon Palette Table= 57C388
                Main Cry Table = 69DCF4
                Auxillary Cry Table= 31F61C
                Footprint Table= 56E694
                Move Tutor Compatib. = 615048
                Animation Table = 3299EC
                Frame Control Table = 309AAC
                Back Animation Table = 60A8C8
                EnemyY Table = 300D38
                PlayerY Table= 3021D8
                Enemy Altitude Table= 305DCC
                名字表:3185C8 11B4字节
                宠物种族数据表:3203CC 2D10字节
                蛋组指针:3203DD
                升级技能表:32937C 670字节
                进化表:32531C
                宠物正面图:30A18C DC0字节
                宠物背面:3028B8 DC0字节
                普通色板:303678 DC0字节
                闪光色板:304438 DC0字节
                宠物坐标(我方):3021D8,6E0字节
                宠物坐标(敌方):300D38,6E0字节
                高度:305DCC 19C字节
                小图标:57BCA8,6E0字节
                图标色板:57C388,1B8字节
                叫声主表:69DCF4
                叫声主表2:69EF24
                叫声副表:31F61C
                脚印表: 56E694
                定点技能教学相性表:615048
                正面动画表:3299EC
                背面动画表:60A8C8
                编号表:31DC82,336字节
                图鉴信息:56B5B0,3060字节
                控制精灵动作:309AAC-30A18B 4字节一只 308CBC 8字节一只 3299EC 60A8C8 (绿宝石独特的双帧。这段我还没弄明白)
                注意,如果你的ROM已经大量修改,Step6可参与此表格
                1B4C0:0D
                1B4C1:03
                37110:E7
                37111:02
                375F8:E7
                375F9:02
                37F24:E7
                37F25:02
                399FC:E7
                399FD:02
                42730:E7
                42731:02
                5DD5C:E7
                5DD5D:02
                5DF10:E7
                5DF11:02
                5E7B8:E7
                5E7B9:02
                6D400:0D
                6D401:03
                6D44C:0D
                6D44D:03
                6D498:0D
                6D499:03
                6F100:E7
                6F101:02
                70080:0D
                70081:03
                857C4:0D
                857C5:03
                85880:0D
                85881:03
                A5EA4:E7
                A5EA5:02
                A5F70:E7
                A5F71:02
                A5FDC:E7
                A5FDD:02
                A7F68:E7
                A7F69:02
                A86BC:E7
                A86BD:02
                A8844:E7
                A8845:02
                A9AD0:E7
                A9AD1:02
                B1C30:E7
                B1C31:02
                BB4FC:E7
                BB4FD:02
                BCBF4:E7
                BCBF5:02
                BCC98:E7
                BCC99:02
                BCD1C:E7
                BCD1D:02
                BCE20:E7
                BCE21:02
                BCEE4:E7
                BCEE5:02
                BCFAC:E7
                BCFAD:02
                BD0C4:E7
                BD0C5:02
                BDAAC:E7
                BDAAD:02
                C080C:E7
                C080D:02
                C1140:E7
                C1141:02
                C1250:E7
                C1251:02
                DE860:0D
                DE861:03
                EFA44:0D
                EFA45:03
                EFA50:0D
                EFA51:03
                177424:E7
                177425:02
                1F74BD:E7
                1F74BE:02
                2D2CA1:E7
                2D2CA2:02
                304284:E7
                304285:02
                304354:0D
                304355:03
                30FC98:0D
                30FC99:03
                31E2EC:0D
                31E2ED:03


                IP属地:浙江来自Android客户端9楼2015-08-05 11:57
                回复
                  2025-06-05 20:48:57
                  广告
                  成果图


                  IP属地:浙江来自Android客户端10楼2015-08-05 11:57
                  回复
                    可能很多新人看不懂,我这里直接发一个已解限的ROM,基本可以到510,510以后需要修改部分数据,解限绿宝石ROM: http://pan.baidu.com/share/link?shareid=1904270105&uk=3159666415(该ROM并非转载)
                    另外原来那帖 http://tieba.baidu.com/p/3562862566?share=9105&fr=share可以删除了。
                    原帖楼主@Deicde丶笑沧海 (原帖一楼已注明)


                    IP属地:浙江来自Android客户端11楼2015-08-05 12:03
                    收起回复
                      ,而且你是男的女的?长发短发?


                      IP属地:福建来自Android客户端12楼2015-08-05 12:10
                      收起回复
                        。。。


                        IP属地:江苏来自Android青春福利版13楼2015-08-05 12:21
                        回复
                          话说,大面积替换的部分我仔细核对过的,应该没有什么大问题,E7 02应该是精灵的上限,我没试过有空试试看能不能破1000,而且你是男的女的?长发短发?


                          IP属地:福建来自Android客户端14楼2015-08-06 00:55
                          回复
                            什么时候才能实习721的gba啊


                            IP属地:北京15楼2015-08-06 02:07
                            收起回复
                              2025-06-05 20:42:57
                              广告
                              加精 ,你忘记at我了
                                 --来自口袋改版教程吧的吧主。你不知道的教程,猛戳地址!http://tieba.baidu.com/f?ie=utf-8&kw=%E5%8F%A3%E8%A2%8B%E6%94%B9%E7%89%88%E6%95%99%E7%A8%8B&fr=search


                              IP属地:黑龙江来自Android客户端16楼2015-08-06 06:16
                              收起回复