ce指导吧 关注:28,300贴子:10,304
  • 3回复贴,共1

材料和技能跳板

取消只看楼主收藏回复

先说改材料
首先添加汇编
alloc(new,1024)
new:
Pushad
Mov edi,[35136B8] //人物基址
Mov edi,[edi+5910] //物品栏
Mov edi,[edi+58] //物品栏偏移
Mov edi,[edi+c] //物品栏1便宜
Mov edx,[edi]
Mov ecx,edi
Call [edx+140]
Mov [400400],eax
Popad
Ret
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
createthread(new)
LdrInitializeThunk:
DB 8B FF 55 8B EC
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
createthread(new)
材料开始400400+3e0十六进制设置400500
材料结束400400+3e4十六进制设置400520
400500设置技能代码。
下面是技能跳板:
汇编
[ENABLE]
alloc(newmem,1024)
alloc(GetSkill,1024)
alloc(table1,0x1000)
alloc(table2,0x1000)
//下面是GetSkill函数
label(GetSkill_next)
label(GetSkill_end)
GetSkill:
push ebp
mov ebp,esp
xor eax,eax
push eax
pushad
mov ebx,[ebp+8]
xor edi,edi
mov esi,table1
mov ecx,table2
GetSkill_next:
cmp edi,1000
jge GetSkill_end
mov eax,[esi+edi*4]
test eax,eax
je GetSkill_end
inc edi
cmp eax,ebx
jne GetSkill_next
dec edi
mov eax,[ecx+edi*4]
mov [ebp-4],eax
GetSkill_end:
popad
mov eax,[ebp-4]
mov esp,ebp
pop ebp
ret 4
label(end)
newmem:
pushad
mov esi,[ebp-1b2c]
push esi
call GetSkill
cmp eax,0
je end
mov dword ptr ss:[ebp-1b2c],eax
end:
popad
mov eax,0FFFF
ret
table1:
//此处填写技能代码 例如 dd #19006
table2:
//此处填写技能代码 例如dd #70023
//下面是技能hook
1EE0C4C:
call newmem
[DISABLE]
1EE0C4C:
db b8 ff ff 00 00
游戏更新一般只需更新hook技能即可。
具体介绍一下技能代码处的填写:
table1:
dd #19006
table2:
dd #70023
这里表示的是19006高达脚气触发70023血爆
若为段数较多则
table1:
dd #技能代码1
dd #技能代码2
table2:
dd #技能代码3
dd #技能代码4
则表示技能1触发技能3,然后技能3触发技能2,技能2触发技能4
具体为先执行table1:下的第一句然后是table2:下的第一句再然后是table1:下第二句table2:下第二句依次类推!


IP属地:浙江1楼2016-06-14 14:53回复


    IP属地:浙江来自Android客户端3楼2016-06-14 15:02
    收起回复
      材料汇编f1设置启用f1设置禁用,跳板f1设置启用即可


      IP属地:浙江来自Android客户端4楼2016-06-14 15:04
      回复
        @DNF飞雪连天 竟然没人帮我水


        IP属地:浙江来自Android客户端5楼2016-06-14 16:13
        收起回复