查看: 527|回复: 1

孤岛惊魂3 数据分析

[复制链接]

该用户从未签到

1

主题

0

帖子

31

积分

初来乍到

UID
1143
云币
0
金钱
30
好评
0
性别
保密
在线时间
1 小时
注册时间
2020-6-27
发表于 2020-6-27 22:50:24 | 显示全部楼层 |阅读模式 IP:山西长治
FC3.FCS_Server_DeleteMatchStats+5EF250 - E8 2BF3FFFF           - call FC3.FCS_Server_DeleteMatchStats+5EE580
拿出相机


FC3.FCS_Server_DeleteMatchStats+45591C - FF 90 C8000000        - call dword ptr [eax+000000C8]
基本AI动作都会通过这里
比如:
摔倒之后
打开相机
关闭相机
疗伤动作
死亡扑倒
开门
换枪
扔出手雷
切出枪械

FC3.FCS_Server_DeleteMatchStats+461D05 - FF 50 38              - call dword ptr [eax+38]
投掷物品函数(敌人和自己)(包括石头,石头和消耗物品函数调用过程一致)(失效时投掷AI动作照常执行,内平栈@4,调用函数地址FC3.FCS_Server_DeleteMatchStats+3CFC2D)
丢手雷传入的ESI=丢燃烧瓶传入的ESI  != 丢石头传入的ESI
丢手雷传入的ECX=丢燃烧瓶传入的ECX  != 丢石头传入的ESI


FC3.FCS_Server_DeleteMatchStats+3CFC80 - E8 0DE9FFFF           - call FC3.FCS_Server_DeleteMatchStats+3CE592
同步投掷物品和手的距离@C

FC3.FCS_Server_DeleteMatchStats+3CFD7E - 6A FF                 - push -01 { 255 }
传入参数(决定投掷物品减少的个数)
FC3.FCS_Server_DeleteMatchStats+3CFD80 - E8 181C0900           - call FC3.FCS_Server_DeleteMatchStats+46199D
调用投掷物品减少函数


FC3.FCS_Server_DeleteMatchStats+3CFDDD - E8 DCC893FF           - call FC3.FCB_Benchmark_GetMaxTextureHeight+A0953
同步投掷的物品的方向和手的方向

函数call FC3.FCS_Server_DeleteMatchStats+461765(功能:获取投掷物品剩余数量)
调用↓

FC3.FCS_Server_DeleteMatchStats+458463 - 74 0B                 - je FC3.FCS_Server_DeleteMatchStats+458470
按下丢手雷必经这里,包括没有手雷的情况


显示感应雷数值数-1=感应雷内存数值


FC3.FCS_Server_DeleteMatchStats+53DCD8 - 29 46 10              - sub [esi+10],eax
感应雷减少


FC3.FCS_Server_DeleteMatchStats+53DC97 - 01 5E 10              - add [esi+10],ebx
感应雷增加


FC3.FCS_Server_DeleteMatchStats+455D84 - 75 0E                 - jne FC3.FCS_Server_DeleteMatchStats+455D94
公共代码:YES
判断感应雷个数,不等于0则跳转(改成NOP忽略数量检测,只做表面工作,比如感应雷满依然可以捡,但是捡了没效果)
(没有消耗完:一直检测
感应雷消耗完:
1.显示按E互动感应雷的时候会检测
2.按切换感应雷键的时候会检测)

判断C4:
按E互动之后会检测一次

FC3.FCS_Server_DeleteMatchStats+406A67 - 89 10                 - mov [eax],edx
C4改变

FC3.FCS_Server_DeleteMatchStats+53DCD8 - 29 46 10              - sub [esi+10],eax
rpg弹夹内子弹减少

mov ecx,
push edi     (esi+CC=弹夹子弹)
FC3.FCS_Server_DeleteMatchStats+409A90 - FF 50 2C              - call dword ptr [eax+2C]
枪械-射击-射出子弹函数

mov ecx,某地址自己找
push 子弹数    esi=减少的子弹数
FC3.FCS_Server_DeleteMatchStats+406CB2 - E8 99FDFFFF           - call FC3.FCS_Server_DeleteMatchStats+406A50
枪械-射击-子弹减少函数(内平栈@4)


FC3.FCS_Server_DeleteMatchStats+406A67 - 89 10                 - mov [eax],edx
1号栏-弹夹内子弹变动

FC3.FCS_Server_DeleteMatchStats+55FF6B - F3 0F11 49 20         - movss [ecx+20],xmm1
前进后退按键状态改变



以下部分是逆孤岛惊魂3的修改器逆出来的:

无需装弹-开启
357D0000 - 8B 41 48              - mov eax,[ecx+48]
357D0003 - C7 80 CC000000 32000000 - mov [eax+000000CC],00000032 { 50 }
357D000D - 8B 4D 08              - mov ecx,[ebp+08]
357D0010 - E9 FB124E43           - jmp FC3.FCS_Server_DeleteMatchStats+40529E

无限手雷/燃烧弹-开启
35C50000 - 8B 41 3C              - mov eax,[ecx+3C]
35C50003 - C7 40 60 09000000     - mov [eax+60],00000009 { 9 }
35C5000A - 8B 40 60              - mov eax,[eax+60]
35C5000D - E9 CBD70B43           - jmp FC3.FCS_Server_DeleteMatchStats+46176B


无限药剂-开启
35C70000 - C7 46 60 09000000     - mov [esi+60],00000009 { 9 }
35C70007 - 8B 46 60              - mov eax,[esi+60]
35C7000A - 39 D8                 - cmp eax,ebx
35C7000C - E9 A37A0E43           - jmp FC3.FCS_Server_DeleteMatchStats+4ABA42

超级速度-开启
06230000 - C7 80 9C000000 00008040 - mov [eax+0000009C],40800000
0623000A - C7 80 A0000000 00008040 - mov [eax+000000A0],40800000
06230014 - C7 80 28080000 00001643 - mov [eax+00000828],43160000 { [00000000] }
0623001E - C7 80 2C080000 00001643 - mov [eax+0000082C],43160000 { [00000000] }
06230028 - C7 80 30080000 00001643 - mov [eax+00000830],43160000 { [00000000] }
06230032 - F3 0F10 98 9C000000   - movss xmm3,[eax+0000009C]
0622003A - E9 5573A853           - jmp FC3.FCS_Server_DeleteMatchStats+3FB322


超级速度-关闭
06220000 - C7 80 9C000000 0000803F - mov [eax+0000009C],3F800000 { [00000000] }
0622000A - C7 80 A0000000 0000803F - mov [eax+000000A0],3F800000 { [00000000] }
06220014 - C7 80 28080000 00001643 - mov [eax+00000828],43160000 { [00000000] }
0622001E - C7 80 2C080000 00001643 - mov [eax+0000082C],43160000 { [00000000] }
06220028 - C7 80 30080000 00001643 - mov [eax+00000830],43160000 { [00000000] }
06220032 - F3 0F10 98 9C000000   - movss xmm3,[eax+0000009C]
0622003A - E9 5573A853           - jmp FC3.FCS_Server_DeleteMatchStats+3FB322




超级跳-开启
06210000 - C7 80 10080000 00004841 - mov [eax+00000810],41480000 { [6931BBC7] }
0621000A - C7 80 28080000 00001643 - mov [eax+00000828],43160000 { [00000000] }
06210014 - C7 80 2C080000 00001643 - mov [eax+0000082C],43160000 { [00000000] }
0621001E - C7 80 30080000 00001643 - mov [eax+00000830],43160000 { [00000000] }
06210028 - F6 80 85010000 01     - test byte ptr [eax+00000185],01 { 1 }
0621002F - E9 4C73A953           - jmp FC3.FCS_Server_DeleteMatchStats+3FB30E


超级跳-关闭
062D0000 - C7 80 10080000 0000A03F - mov [eax+00000810],3FA00000 { [00000000] }
062D000A - C7 80 28080000 00001643 - mov [eax+00000828],43160000 { [00000000] }
062D0014 - C7 80 2C080000 00001643 - mov [eax+0000082C],43160000 { [00000000] }
062D001E - C7 80 30080000 00001643 - mov [eax+00000830],43160000 { [00000000] }
062D0028 - F6 80 85010000 01     - test byte ptr [eax+00000185],01 { 1 }
062D002F - E9 4C739D53           - jmp FC3.FCS_Server_DeleteMatchStats+3FB30E


无后坐力-开启
31E80000 - D9 41 18              - fld dword ptr [ecx+18]
31E80003 - D9 58 18              - fstp dword ptr [eax+18]
31E80006 - C7 00 00000000        - mov [eax],00000000 { 0 }
31E8000C - C7 40 04 00000000     - mov [eax+04],00000000 { 0 }
31E80013 - C7 40 08 00000000     - mov [eax+08],00000000 { 0 }
31E8001A - C7 40 18 00000000     - mov [eax+18],00000000 { 0 }
31E80021 - E9 7145E346           - jmp FC3.FCS_Server_DeleteMatchStats+408525




隐身-开启
33210000 - C7 40 04 00000000     - mov [eax+04],00000000 { 0 }
33210007 - F3 0F10 40 04         - movss xmm0,[eax+04]
3321000C - E9 563A8C45           - jmp FC3.FCS_Server_DeleteMatchStats+2279F5


无限背包空间-开启
33290000 - C7 81 A0000000 E7030000 - mov [ecx+000000A0],000003E7 { 999 }
3329000A - 8B 81 A0000000        - mov eax,[ecx+000000A0]
33290010 - E9 E820A745           - jmp FC3.FCS_Server_DeleteMatchStats+45608B


FC3.dll+1E0DBC4=改为1解锁商店商品


最大精准度-开启
333C0000 - C7 81 D4010000 00000000 - mov [ecx+000001D4],00000000 { 0 }
333C000A - E9 45048F45           - jmp FC3.FCS_Server_DeleteMatchStats+4043E2


无限金钱-开启
332F0000 - C7 81 A4000000 7F969800 - mov [ecx+000000A4],0098967F { 9999999 }
332F000A - C7 41 64 3F420F00     - mov [ecx+64],000F423F { 999999 }
332F0011 - 66 0F6E 81 A4000000   - movd xmm0,[ecx+000000A4]
332F0019 - E9 B820A145           - jmp FC3.FCS_Server_DeleteMatchStats+456064


无限经验-开启
332F0000 - C7 46 38 7F969800     - mov [esi+38],0098967F { 9999999 }
332F0007 - 8B 46 38              - mov eax,[esi+38]
332F000A - 39 D0                 - cmp eax,edx
332F000C - E9 D33D2C45           - jmp FC3.FCB_Benchmark_GetMaxTextureHeight+9C007

无限子弹/炸弹-开启
359B0000 - C7 41 14 0F270000     - mov [ecx+14],0000270F { 9999 }
359B0007 - C7 41 10 E7030000     - mov [ecx+10],000003E7 { 999 }
359B000E - 8B 41 10              - mov eax,[ecx+10]
359B0011 - 85 C0                 - test eax,eax
359B0013 - E9 DE1D3543           - jmp FC3.FCS_Server_DeleteMatchStats+455D84


楼主热帖
回复

使用道具 举报

  • TA的每日心情
    开心
    昨天 16:32
  • 签到天数: 724 天

    [LV.9]以坛为家II

    6705

    主题

    513

    帖子

    4万

    积分

    管理员

    盛年不重来,一日难再晨。

    UID
    1
    云币
    8025
    金钱
    19001
    好评
    547
    性别
    在线时间
    1814 小时
    注册时间
    2019-8-21

    管理员勋章最佳新人活跃会员热心会员推广达人宣传达人灌水之王突出贡献优秀版主荣誉管理论坛元老财富大使热爱篮球国庆勋章灌水大神帖子大侠以坛为家劳动节勋章虎年纪念勋章夜猫子搬运大神音乐无限游戏大全

    发表于 2020-6-29 12:04:56 | 显示全部楼层 IP:福建泉州
    看不懂……
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册账号

    本版积分规则

    手机版|小黑屋|秋月社区

    |网站地图

    GMT+8, 2024-11-25 02:48 , Processed in 0.074196 second(s), 32 queries , Gzip On.

    Powered by Qiu Yue X3.4 Licensed

    © 2019-2024 Comsenz Inc.