美文网首页
kof97 逆向分析_碰撞检测

kof97 逆向分析_碰撞检测

作者: LiuJP | 来源:发表于2020-03-11 12:14 被阅读0次

碰撞检测

贴吧推荐判定框
https://tieba.baidu.com/p/2301212873?red_tag=1896742946
https://tieba.baidu.com/p/3378926459?red_tag=1900554217

dip switch 打开游戏碰撞检测框

0x100000=0x02

p2rom包含的所有的的判定框的数据

  • 可以通过mame 内存搜索工具找到这些数据
  • 从ACT封装章节里的Bank2找到box数据的起始地址是 0x21191A
  • FD05 type | box index=05 根据000001 01 type左移2位
    所以类型是type=1,在第一个判定框index=1;1*4 + 1 +FD00=FD05;
  • FD0A type | box index=0A 根据000010 10 type左移2位
    所以类型是type=2,在第一个判定框index=2;2*4 + 2 +FD00=FD0A;


    image.png
    image.png

代码部分分析

  • 0x9DE0
    0x9e04=BoxCheck;碰撞检测,攻击被攻击
    0x9e0A=CheckP1P2BodyOverlap;过于近检测,过近弹开

  • 进入BoxCheck到3698位置4个循环检查box
    3F1E+108000=10BF1E 攻击者携带的判定框
    3F9E+108000=10BF9E 被攻击者携带的判定框

  • 8100 108190P1人物携带的判定框
    8300 108390P2人物携带的判定框
    2B00=102B00,102B70:ch,act;102B90 是这个对象判定框,每个结构体是固定,小100,大的对象200,最小40;

  • 108190 P1判定框属性 5组box0,box1,box2,box3,box4,boxBody;
    5个字节一组,为啥是5个一组,因为数据是6个字节,第一个类型的分配到不同地址,人物一般都携带连三组判定框

判定框碰撞有效性

DD492ED0-BFE6-418E-B5FE-14E880A2483F.png

判定框类型0x38c0;switch{}

1
2
3
  • 0-B一共12个被攻击判定

  • C-17 是不摩血的攻击

  • 18-30 必杀技判定

  • 38-39 架招

  • 3A-3F 飞行道具抵消框

  • 07 特瑞可以无限连击
    不要在p2的108300+90位置设置07的判定框可以实现

分析动态内存的技巧

30B2是动态内存分配的方法,
在这个函数的返回的地方断点,打印出a1,就是他分配的内存地址
bp 3112,1,{printf a1;g}

3794

每一帧
bp 3794,1,{pc+=4;g}

a4 结构体

连技

  • cancel:八神前爪+葵花,前抓处在半主动状态,

58ec

是否连技判断



image.png
image.png

相关文章

网友评论

      本文标题:kof97 逆向分析_碰撞检测

      本文链接:https://www.haomeiwen.com/subject/ptbqjhtx.html