口袋改版资源吧 关注:236,284贴子:1,510,849
  • 7回复贴,共1

关于对应行为字节的ASM调用脚本

只看楼主收藏回复

本次修改是失败的,但通过卡死可以看出,这个方法是可能实现的,只是修改难度较大(希望有大佬能帮我看看是哪里写出了问题)


来自Android客户端1楼2021-07-11 15:32回复
    之前,我发现了原版是怎么使用ASM来调用对应行为字节的脚本的,具体见精灵中心一楼的架子和电脑,商店的架子等


    来自Android客户端2楼2021-07-11 15:35
    回复
      于是,我便尝试对没有调用脚本的行为字节添加脚本


      来自Android客户端3楼2021-07-11 15:36
      回复
        于是我便写下了这样一段ASM,并用armips写入:
        .gba
        .thumb
        .create "test.gba",0x8000000
        .close
        .open "802-Random-v1.0.gba","test.gba",0x8000000
        .org 0x08304C08
        .func cmp
        mov r0,r4
        cmp r0,#0xE3
        beq mov1
        cmp r0,#0xC0
        beq mov2
        b end
        mov1:
        mov r0,#0x1
        mov2:
        mov r0,#0x2
        end:
        pop {r1,r4}
        bx r1
        .endfunc
        .pool
        .func newscript
        cmp r0,#0x2
        beq yes
        ldr r0,=0x082725E0
        goto:
        push {r4}
        ldr r4,=(0x0809C7E4|1)
        bx r4
        yes:
        ldr r0,=0x0826FB18
        b goto
        .endfunc
        .pool
        .org 0x08089A6C
        push{r4,lr}
        lsl r0, r0, #0x18
        lsr r0, r0, #0x18
        mov r4,r0
        ldr r0,=(cmp|1)
        bx r0
        .word 0x00000000
        .pool
        .org 0x0809A654
        bx r0
        .halfword 0x0000
        .word (newscript|1)
        .pool
        .close


        来自Android客户端4楼2021-07-11 15:37
        回复
          接着,出现了bug,由于我设定的行为字节是床,因此对床按A闪退(指Myboy闪退到游戏外),且如果玩家走到了床上也会闪退


          来自Android客户端5楼2021-07-11 15:39
          回复
            emmm,C0岂止没脚本,刚刚看了一下,C2是调用了一个ASM,然后C2下面直接B5……


            来自Android客户端6楼2021-07-11 15:51
            回复
              ……分布好乱,重点如果C7直接mov r0,#0就离谱


              来自Android客户端7楼2021-07-11 15:56
              回复
                不懂帮顶


                IP属地:浙江来自Android客户端8楼2021-07-11 18:50
                回复