DNF是用C加加语言写的。
C加加是一种面向对象的计算机程序设计语言,由美国贝尔实验室的本贾尼斯特劳斯特卢普博士在20世纪80年代初期发明并实现。它是一种静态数据类型检查的、支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计等多种程序设计风格。C加加是C语言的继承,进一步扩充和完善了C语言,成为一种面向对象的程序设计语言。
.版本 2
.程序集 窗口程序集1
.子程序 _窗口1_创建完毕
鼠标显示 ()
内存操作.打开进程 ()
内存操作.提升权限 ()
进程ID = 取进程ID (“dnf.exe”)
DNF句柄 = 取句柄2 (“DNF.exe”, , “地下城与勇士”)
窗口置父 (DNF句柄, 窗口1.取窗口句柄 ())
窗口移动 (DNF句柄, 编辑框4.左边, 编辑框4.顶边, 编辑框4.宽度, 编辑框4.高度)
鼠标显示 ()
写注册项 (4, “SOFTWAREDNFTerSafe.dll”, 0)
写注册项 (4, “SOFTWAREDNFTerSafe.EXE”, 0)
运行 (“taskkill /f /im DNF.exe.manifest”, 假, 1)
运行 (“C:WINDOWSsvstem32TesSafe.svs”, 假, 1)
进程结束 (进程取ID (“TenSafe.exe”))
进程结束 (进程取ID (“QQDL.exe”))
’—————————————————————————————————————————
’开头这么写
.版本 2
.子程序 Apc召唤
.参数 Apc等级, 整数型
.参数 Apc代码, 整数型
置入代码 ({ 139, 53, 132, 115, 33, 1, 139, 6, 106, 0, 106, 0, 104, 112, 167, 173, 0, 106, 0, 106, 0, 104, 255, 255, 0, 0, 106, 0, 106, 0, 106, 4, 139, 206, 255, 144, 204, 0, 0, 0, 80, 139, 6, 106, 0, 106, 5, 106, 6, 255, 117, 8, 139, 206, 255, 144, 220, 1, 0, 0, 139, 22, 80, 255, 117, 12, 139, 206, 255, 146, 244, 2, 0, 0 })
’召唤APC后是召唤触发
.版本 2
.子程序 召唤触发, , 公开, 召唤触发
.如果 (时钟1.时钟周期 = 0)
.如果真 (内存操作.读代码 (#人物基址) > 0)
.如果真 (返回BOSS地址 (273) ≤ 0)
Apc召唤 (11, 412)
.如果真结束
时钟1.时钟周期 = 3000
.如果真结束
公告 (“召唤成功!”, 十六到十 (“FFFF00FF”))
.否则
时钟1.时钟周期 = 0
.如果结束
公告 (“召唤关闭!”, 十六到十 (“FFFF00FF”))
.版本 2
.子程序 _时钟1_周期事件, , , 召唤触发
.判断开始 (返回BOSS地址 (273) ≤ 0)
Apc召唤 (11, 412)
.默认
动作CALL (返回BOSS地址 (273), 54)
写内存整数型 (取窗口进程ID (窗口1.取窗口句柄 ()), 十六到十 (“007B75E8”), 860220)
.版本 2
.子程序 返回BOSS地址, 整数型
.参数 类型, 整数型, , 529是怪物 273是APC 1057是普通建筑 33是特殊建筑
.参数 阵营, 整数型, 可空, 默认为队友,-1为不限 100为敌人 200为建筑 0为队友
.局部变量 a, 整数型
.局部变量 怪物首地址, 整数型
.判断循环首 (是否指定怪物 (内存操作.读整数 (怪物首地址), 阵营, 类型) = 0)
a = a + 1
怪物首地址 = 内存操作.读代码 (#人物基址 + “+d4+10”) + a × 4
.如果真 (a = 256)
返回 (0)
.如果真结束
.判断循环尾 ()
返回 (怪物首地址)
.版本 2
.子程序 是否指定怪物, 整数型
.参数 地址, 整数型
.参数 阵营, 整数型
.参数 类型, 整数型
.局部变量 临时变量, 整数型
临时变量 = 内存操作.读整数 (地址 + 180)
.如果真 (临时变量 = 类型 且 地址 ≠ 内存操作.读代码 (#人物基址))
.如果真 (阵营 = -1)
返回 (1)
.如果真结束
.如果真 (内存操作.读整数 (地址 + 1176) = 阵营)
返回 (1)
.如果真结束
.如果真结束
返回 (0)
1、韩国Neople公司(后被NEXON收购)开发的横版格斗游戏:地下城与勇士Dungeon N' Fighter(DNF) ;
2、英语Did not finish的缩写,即未完成。在体育赛事中间表示没有完成规定的比赛内容;
3、数位噪声滤波器的英文“Digital Noise Filters”的简写为 “DNF”。
参考资料:
自动刷图脚本主要就是通过掌握角色刷图的按键规律然后编写的,一般缔造和召唤操作简单,适合编写自动刷图脚本。
具体的话,你可以使用录制功能,这样会自动得到代码,最后对代码稍微优化一下就可以了。
DNF基址综合写法改人物状态、技能、地图、远程买卖、秒塔
改人物状态
开
写内存整数型(进程ID,十六到十(“人物基址”)+状态ID,1)
关
写内存整数型(进程ID,十六到十(“人物基址”)+状态ID,0)
备注:有部分的状态需要加上一个时钟,例如:无敌、双刀
改技能
写内存整数型(进程ID,十六到十(“修改前技能基址”),修改后技能ID)
改地图
写内存整数型(进程ID,十六到十(“修改前地图基址”),修改后地图ID)
加红蓝
内存操作.写入(十六到十(“血蓝基址”),到字节集(“”))
内存操作.写代码(“血蓝基址+偏移=自定义整数”)
远程买卖
卖
写内存整数型 (进程ID, 商店基址 + 十六到十 (“商店偏移”), 5)
修理
写内存整数型 (进程ID, 商店基址 + 十六到十 (“商店偏移”), 6)
秒塔
开
内存操作.写代码 (“血的址=49984”)
关
内存操作.写代码 (“血的基址= 49537”)
备注:开始秒塔加上一个时钟
SSS评分
开
内存操作.写代码(“评分基址={144,144,144}”)
关
内存操作.写代码(“评分基址={ 216, 60, 131 }”)
叠加攻击
开
写内存整数型 (进程ID, 读内存整数型 (进程ID, 十六到十 (“人物基址”), ) + 十六到十 (“技能偏移”), 1)
关
写内存整数型 (进程ID, 读内存整数型 (进程ID, 十六到十 (“人物基址”), ) + 十六到十 (“技能偏移”), 0)
时钟. 时钟周期=0
叠加次数
时钟周期的快慢
时钟周期越小,则叠加次数越多
备注:时钟是必须的
CALL(1)
局部变量 代码, 字节集
汇编.置代码 ({})
汇编.Call (十六到十 (“4FD080”))
汇编.Mov_ECX_DWORD_Ptr (十六到十 (“FAF450”))
汇编.Mov_EDX_DWORD_Ptr (十六到十 (“FAF454”))
汇编.Push_EDI ()
汇编.Push_EDI ()
汇编.Mov_EAX_DWORD_Ptr (十六到十 (“esi”))
汇编.Push_ECX ()
汇编.Mov_ECX_DWORD_Ptr (十六到十 (“ebp-14”))
汇编.Push_EDX ()
汇编.Push_EDX ()
汇编.Push (4)
汇编.Push_EDX ()
汇编.Push_EDX ()
汇编.Push_EDX ()
汇编.Push_EDX ()
汇编.Push_EDX ()
汇编.Push_EDX ()
汇编.Push (20028)'银光落刃CALL触发的技能 银光落刃ID
汇编.Mov_ECX_ESI ()
汇编.Call_DWORD_Ptr (十六到十 (“eax+2CC”))
汇编.Mov_EDX_DWORD_Ptr (十六到十 (“esi”))
汇编.Push_EDI ()
汇编.Push_EDI ()
汇编.Push_EDI ()
汇编.Push_EDI ()
汇编.Push (1)
汇编.Mov_ECX_ESI ()
汇编.Call_DWORD_Ptr (十六到十 (“edx+2A0”))
汇编.Mov_ECX_DWORD_Ptr (十六到十 (“esi+1E84”))
汇编.Call (十六到十 (“402120”))
代码 = 汇编.取代码_ ()
汇编.调用函数 (进程ID, 代码)
CALL(2)
十六进制写法:调用机器码 (-1, 十六进制到字节集 (“60 BE 9C F6 0C 01 8B 36 B8 50 F4 FA 00 8B 00 B9 54 F4 FA 00 8B 09 6A 00 6A 00 8B 16 50 51 6A 00 6A 04 6A 04 6A 00 6A 04 6A 00 6A 00 6A 00 68 AA 20 00 00 8B CE FF 92 CC 02 00 00 61”))
十进制写法:
置代码({96,190,156,246,12,01,139,54,184,80,244,250,00,139,00,185,84,244,250,00,139,09,106,00,106,00,139,22,80,81,106,00,106,04,106,04,106,00,106,04,106,00,106,00,106,00,104,170,32,00,00,139,206,255,146,204,02,00,00,97})
这里是全屏爆的CALL 全屏爆的技能ID是8362,转换成十六进制是20AA 重点:要把20AA 调转来排,即AA 20
我们只要把上面紫色的部分换成你想要的技能就行了
比如:你想换成追冰CALL 追冰的技能ID是8022 转换成十六进制是 1F56 按照调转来排 56 1F
如果技能ID比较长的 例如:860600 转换成十六进制是 D21B8 只要把最前面的“D”去掉就OK了,即B8 21
然后我们可以把十六进制的代码转换成十进制
全屏攻击
原理很简单:就是把CALL的技能换成其他有范围攻击的技能
比如:全屏爆、列波斩、杀意波动
更改快捷栏的技能
重点:记住一定要改技能的等级,箭头指着的部分的技能偏移一定要一样哦
更改人物名字
在游戏中 法拉利 转换成Unicode 是6C D5 62 C9 52 29
然后把你想改的名字也转换成Unicode 比如:更改人物名字的方法教程
即66 F4 65 39 4E BA 72 69 54 0D 5B 57 76 84 65 B9 6C D5 65 59 7A 0B,然后替换掉6C D5 62 C9 52 29 就OK了
修改武器属性
内存操作.写代码 (“人物基址+装备偏移+属性偏移=自定义整数”)
例如:内存操作.写代码 (“010CF69C+1E38+8=9999”) 效果是 武器等级改为9999
游戏双开
Super-EC:
驱动双开.安装()和 驱动双开.卸载()
加红蓝
置入代码 ({ 190, 156, 246, 12, 1, 139, 54, 184, 80, 244, 250, 0, 139, 0, 185, 84, 244, 250, 0, 139, 9, 106, 0, 106, 0, 139, 22, 80, 81, 106, 0, 106, 4, 106, 4, 106, 0, 106, 4, 106, 0, 106, 0, 106, 0, 104,152,8,0,0, 139, 206, 255, 146, 204, 2, 0, 0 })
声明: 我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本站部分文字与图片资源来自于网络,转载是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们(管理员邮箱:daokedao3713@qq.com),情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!
本站内容仅供参考,不作为诊断及医疗依据,如有医疗需求,请务必前往正规医院就诊
祝由网所有文章及资料均为作者提供或网友推荐收集整理而来,仅供爱好者学习和研究使用,版权归原作者所有。
如本站内容有侵犯您的合法权益,请和我们取得联系,我们将立即改正或删除。
Copyright © 2022-2023 祝由师网 版权所有
邮箱:daokedao3713@qq.com