📄 mdlsubinfo.bas
字号:
Attribute VB_Name = "mdlSubInfo"
Option Explicit
'防挂机信息
Public Sub GetAntiRobot()
Dim hProcess As Long
hProcess = OpenProcess(PROCESS_VM_READ, 0, dwProcessId)
If hProcess = 0 Then Exit Sub
'防挂机检测窗口标志 [[[[AlertBaseAddr]+0]+C]+64]
Dim addr As Long
ReadProcessMemory hProcess, AlertBaseAddr, addr, 4, 0&
ReadProcessMemory hProcess, addr, addr, 4, 0&
ReadProcessMemory hProcess, addr + &HC, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H64, lAntiRobot, 4, 0&
CloseHandle hProcess
End Sub
'角色信息
Public Sub GetCharInfo()
Dim hProcess As Long
hProcess = OpenProcess(PROCESS_VM_READ, 0, dwProcessId)
If hProcess = 0 Then Exit Sub
Dim addr As Long
'角色名字 [[[[[CharBaseAddr]+64]+154]+4]+30]
'角色等级 [[[[[CharBaseAddr]+64]+154]+4]+5C]
'角色HP [[[[[CharBaseAddr]+64]+154]+4]+6D4]
'角色MP [[[[[CharBaseAddr]+64]+154]+4]+6D8]
'角色EXP [[[[[CharBaseAddr]+64]+154]+4]+6DC]
'角色MAXHP [[[[[CharBaseAddr]+64]+154]+4]+73C]
'角色MAXMP [[[[[CharBaseAddr]+64]+154]+4]+740]
ReadProcessMemory hProcess, CharBaseAddr, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H64, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H154, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H4, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H30, ByVal bbChar.sz, 12, 0&
ReadProcessMemory hProcess, addr + &H5C, bbChar.lvl, 4, 0&
ReadProcessMemory hProcess, addr + &H6D4, bbChar.hp, 4, 0&
ReadProcessMemory hProcess, addr + &H6D8, bbChar.mp, 4, 0&
ReadProcessMemory hProcess, addr + &H6DC, bbChar.exp, 4, 0&
ReadProcessMemory hProcess, addr + &H73C, bbChar.hpmax, 4, 0&
ReadProcessMemory hProcess, addr + &H740, bbChar.mpmax, 4, 0&
ReadProcessMemory hProcess, addr + &H6EC, bbChar.huoli, 4, 0&
ReadProcessMemory hProcess, addr + &H6F0, bbChar.jingli, 4, 0&
'是否在忙 [[[CharBaseAddr]+64]+274]
ReadProcessMemory hProcess, CharBaseAddr, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H64, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H274, lBusy, 4, 0&
'ReadProcessMemory hProcess, &H62D295, lBusy, 4, 0&
'上次技能 [[[[CharBaseAddr]+64]+160]+84]
'目标怪ID [[[[CharBaseAddr]+64]+160]+8C]
ReadProcessMemory hProcess, CharBaseAddr, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H64, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H160, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H84, lLastSkill, 4, 0&
ReadProcessMemory hProcess, addr + &H8C, lTargetId, 4, 0&
'角色ID [[[CharBaseAddr]+64]+34]
'x坐标 [[[CharBaseAddr]+64]+44]
'z坐标 [[[CharBaseAddr]+64]+48]
'y坐标 [[[CharBaseAddr]+64]+4C]
ReadProcessMemory hProcess, CharBaseAddr, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H64, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H34, bbChar.id, 4, 0&
ReadProcessMemory hProcess, addr + &H44, bbChar.x, 4, 0&
ReadProcessMemory hProcess, addr + &H48, bbChar.z, 4, 0&
ReadProcessMemory hProcess, addr + &H4C, bbChar.y, 4, 0&
CloseHandle hProcess
End Sub
'角色坐标(角色信息的缩减版)
Public Sub GetCharXY()
Dim hProcess As Long
hProcess = OpenProcess(PROCESS_VM_READ, 0, dwProcessId)
If hProcess = 0 Then Exit Sub
Dim addr As Long
'x坐标 [[[CharBaseAddr]+64]+44]
'y坐标 [[[CharBaseAddr]+64]+4C]
ReadProcessMemory hProcess, CharBaseAddr, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H64, addr, 4, 0&
ReadProcessMemory hProcess, addr + &H34, bbChar.id, 4, 0&
ReadProcessMemory hProcess, addr + &H44, bbChar.x, 4, 0&
ReadProcessMemory hProcess, addr + &H4C, bbChar.y, 4, 0&
CloseHandle hProcess
End Sub
' 周围怪物基址
Public Sub GetMonster()
Dim hProcess As Long, cnt As Long
hProcess = OpenProcess(PROCESS_VM_READ, 0, dwProcessId)
If hProcess = 0 Then Exit Sub
'怪数组首地址 [MobBaseAddr]+7C
'怪数组长度 [[MobBaseAddr] + 54]
Dim lpBaseAddr As Long, addr As Long, ii As Long, buf As typMONSTERINFO
lpBaseAddr = MobBaseAddr
ReadProcessMemory hProcess, lpBaseAddr, lpBaseAddr, 4, 0& '二级地址
ReadProcessMemory hProcess, lpBaseAddr + &H54, cntMonster, 4, 0& '数组的长度
lpBaseAddr = lpBaseAddr + &H7C '第一个元素
For ii = 0 To cntMonster - 1
addr = lpBaseAddr + ii * &H40
ReadProcessMemory hProcess, addr + &H2C, buf.id, 4, 0&
ReadProcessMemory hProcess, addr + &H30, buf.cls, 4, 0&
ReadProcessMemory hProcess, addr, buf.x, 4, 0&
ReadProcessMemory hProcess, addr + 8, buf.y, 4, 0&
buf.sz = Space(12)
ReadProcessMemory hProcess, addr + &H14, ByVal buf.sz, 12, 0&
bbMonster(ii) = buf
Next
CloseHandle hProcess
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -