python纯脚本搬砖DNF之深度学习,工作室适用

ops/2024/9/23 6:38:07/

声明:

本文章仅作学习交流使用,对产生的任何影响,本人概不负责.
转载请注明出处:https://editor.csdn.net/md?articleId=103674748

主要功能

脚本已初步完成,可以上机实战了
1.搬砖研究所、海伯伦(持续更新中)
2.自动分解史诗(可使用自己分解机)
3.自动出售白蓝紫装备
4.有点券购买免修,没有免修会自动修武器
5.自动收邮件
6,等虚弱
7.自动刷深渊(均衡)
8.自动登录wegame
9.支持所有主流刷图职业

特色功能:
1.自动做日常活跃,如进入修炼场,领取每日奖励,打开商店,工会聊天,等
5.自动兑换灵魂之源
6.图内金币、装备自动拾取
7.自动切换角色、切换大区(支持3跨区)、切换QQ
8.急速刷图,刷图算法优化更高级,移动速度的高低决定跑图时间,伤害的高低,决定打怪时间,3.6及以上的角色可以体验到急速过图,和手动单刷一样的速度)
以下为156疲劳角色过图时间统计:
| 名望     | 单角色过图时间 |
| 3.4-3.5 |  20分钟左右  |
| 3.6-3.8 |  17分钟左右  |
| 3.9-4.0 |  15分钟 左右
| 4.0及以上 | 15分钟以下 |

运行要求

一.硬件配置要求

1.显卡,需要安装cuda所以必须要显卡。标配GTX1050 2G(推荐),不低于950(不要买魔改卡)
2.CPU无要求,能带动游戏即可
3.内存不低于8G
4.硬盘空间不小于128G
5.专用的硬件键鼠

二.运行环境软件要求

1.安装CUDA驱动:
cmd 输入 nvidia-smi (查看显卡驱动版本) 根据驱动的版本,下载cuda:
安装教程参照:CUDA安装教程
2.安装python 版本3.11.5(安装过程中含有–PATH–的选项必须勾选)
安装教程参照:python安装教程
安装后查验是否成功及版本:
1.cuda查验 cmd黑窗口输入 nvcc --version
2.python查验 cmd黑窗口输入 python --version
弹出版本标识则安装成功。

代码依赖

1 识别使用最新的yolov8模型。
2 键鼠使用自研的硬件模拟。

class Auto:def __init__(self):self.se = Search() self.boss = Boss() self.ski = Ski() self.move = Move()  self.denglu = DengLu()  # 自动登录self.town = Twon() self.DATA = None self.img0 = Noneself.liefeng_num = 0self.start, self.end = None, Noneself.prev_start = [400, 450, 0, 0, 0, 0]self.stop_time = 0self.get_role_xinxi = 0self.shouci = 0def auto(self):while True:if not self.off_no(): continueif not self.denglu(): continueif not self.fuben_move_and_get_end():  # 副本中检测continueif self.town_res():  # 2.城镇检测continueself.boss_room()  # 3.通关检测def update_user(self):# 获奖角色表所有数据if web.role_all_data is True:web.role_all_data = db.get_all_role()if web.sy_all_data is True:web.sy_all_data = db.get_conf_data('shouyi')if web.new_role:role = db.get_role_by_id(web.new_role.idx)web.new_role.dis_col = role.dis_colweb.new_role.dis_row = role.dis_rowweb.new_role.pwd = role.pwdweb.new_role.name = role.nameweb.new_role.yisidalu = role.yisidaluweb.new_role.bkr = role.bkrdb.role_update_data(web.new_role)web.new_role = Noneif web.role_delete:db.role_delete(web.role_delete)web.role_delete = Noneif web.qq_all_data is True:web.qq_all_data = db.qq_get_all_qq()if web.qq_update:db.qq_update(web.qq_update)web.qq_update = Noneif web.qq_instert:db.qq_insert(web.qq_instert)web.qq_instert = Noneif web.qq_delete:db.qq_delete(web.qq_delete)web.qq_delete = Noneif web.role_conf_all:db.add_conf(web.role_conf_all)web.role_conf_all = Nonedef start_info(self, start):if start is not None:start[0] = start[0] + start[2] * 0.5self.start = startself.prev_start = self.startreturn self.startif act.find_img('sw', img=self.img0): # 死亡自动复活。web.print_log('死亡复活')k.down_up('x')sleep(0.5)self.ski.buff()return self.prev_startdef sy_fuben(self):if act.find_img('j_h', img=self.img0) is None:return Trueif self.town.jintu_time:self.town.jintu_time = 0if Map.is_boss and act.find_img('jixu'):self.move.up_key()if self.boss_room(): self.shouci = 0Map.is_boss = NoneMap.room_dix = 0sleep(1)returnif self.shouci == 1:self.shouci = 2sleep(0.5)self.ski.buff()if self.shouci == 0:self.shouci = 1returnboss_ = self.get_max_conf_point(6)if boss_ is not None:if boss_[4] > 0.9:Map.is_boss = TrueMap.room_dix = 1self.start = self.start_info(self.get_max_conf_point(r_c.index))if Map.buff:Map.buff = Noner_c.is_fz = act.find_img('f_z', img=self.img0, threshold=0.83)self.boss.xiu = act.find_img('xiu_li2', img=self.img0, threshold=0.8)self.boss.kai_shi_time = time()  # 每次时间self.ski.buff() self.end = self.se(self.DATA, self.start)self.move_result(self.move(self.start, self.end)) def queren_t(self):if act.find_img('queren', img=self.img0):  # 弹窗检测try:act.esc()except Exception as e:IMG.get_handel_or_size()web.print_log(e)web.print_log('确认弹窗')return Truedef get_data(self, conf=0.6):# x,y左上角坐标,wh宽高x = fb.model.predict(source=self.img0)self.DATA = copy(x)def time_12(self):current_time = localtime()if current_time.tm_hour == 0 and 0 <= current_time.tm_min <= 1 and 0 <= current_time.tm_sec <= 20:guanbi = act.find_img('guanbi')if not guanbi:returnweb.print_log("凌晨页面弹窗关闭")k.click_at(guanbi)sleep(0.5)return Truedef fuben_move_and_get_end(self):self.img0 = IMG.get_img()if self.img0 is None:returnif not fb.map_id: min_name = 'boss'if cfg.fuben_id == 1:min_name = 'j_h'if act.find_img(min_name):web.print_log('请在通关后运行脚本')sleep(5)return Trueself.get_data() if fb.map_id == 1:return self.sy_fuben()if self.get_max_conf_point(fb.bosss) is None:if not Map.map_num:return Trueif IMG.find_template('queren') or IMG.find_template('zbl'):k.down_up('esc')returnif Map.is_boss:sleep(0.2)self.liefeng_num = 0self.move.up_key()return Trueif self.liefeng_num > 0:self.liefeng_num = 0self.start = self.start_info(self.get_max_conf_point(r_c.index)) if Map.map_main(self.get_max_conf_point(fb.min_me), self.start, self.end):if self.time_12():returnif self.queren_t():returnreturn self.move.up_key()self.get_role_info()self.end = self.se(self.DATA, self.start) if self.end[-1] == fb.jzb:self.move.up_key()self.ski.picking_up()returnself.move_result(self.move(self.start, self.end))def town_res(self):if self.town(self.img0): sleep(10) if not self.denglu.dnf_over:self.denglu.dnf_over = Trueif not self.denglu.user and self.town.denglu_qq:self.denglu.user = self.town.denglu_qqreturn Trueif self.denglu.user: self.town.denglu_qq = self.denglu.user  # 新增qqdef boss_room(self):if fb.map_id == 1:if not self.boss.sy_boss(self.img0):returnelse:if not self.boss(self.img0):returnif self.town.role:self.boss.qiyue = self.town.role.x_lweb.datas.tg_num = self.boss.t_g_numweb.datas._time = strftime('%H:%M:%S', gmtime(self.boss.t))web.datas.o_time = strftime('%H:%M:%S', gmtime(self.boss.role_time))web.datas.zong_time = strftime('%H:%M:%S', gmtime(self.boss.zong_time))return Truedef get_role_info(self):if Map.buff:Map.buff = Noneif r_c.is_fz:r_c.is_fz = act.find_img('f_z', img=self.img0)self.boss.xiu = act.find_img('xiu_li2', img=self.img0)self.boss.kai_shi_time = time()  # 每次时间self.ski.buff()if Map.map_num == Map.boss_num - 1:if self.get_role_xinxi < 5:self.get_role_xinxi += 1r_c.is_fz = act.find_img('f_z', img=self.img0)self.boss.xiu = act.find_img('xiu_li2', img=self.img0)self.town.role.pl, _ = IMG.get_pl(self.img0)self.boss.pl = self.town.role.plreturnif self.get_role_xinxi > 0: self.get_role_xinxi = 0def move_result(self, result):if not result:returnif result == fb.jhj: self.ski.picking_up()elif result in fb.guai:if self.se.last_att:k.down_up(self.se.last_att)self.se.last_att = Noneself.ski(self.img0)elif result == 99:  # 召唤释放技能self.se.leixing = 100self.ski(self.img0)def get_max_conf_point(self, idx):data = self.DATA[self.DATA[:, -1] == idx]if not data.any():returnif len(data) == 1:return data[0]return data[argsort(data[:, 4])][-1]def off_no(self):if self.stop_time == 0:self.stop_time = time()if time() - self.stop_time > 1800:if not e.yanzheng():exit(1)self.stop_time = 0if hot.START:if not web.zt: web.zt = 1return Trueif web.zt: web.zt = 0self.update_user()  # 页面数据更新sleep(0.5)

3.页面效果展示**

角色表
在这里插入图片描述
主控后台
在这里插入图片描述
信息提示
在这里插入图片描述
刷图选择
在这里插入图片描述
角色表
在这里插入图片描述
账号信息表
在这里插入图片描述

人工智能刷图


http://www.ppmy.cn/ops/43904.html

相关文章

聚数力 以数兴 | 与“闽”同行,共话数字未来

闽江之畔&#xff0c;数智腾飞。5月24日&#xff0c;第七届数字中国建设峰会在海峡国际会展中心盛大举办。本届展会的主题是“释放数据要素价值&#xff0c;发展新质生产力”&#xff0c;由国家发展改革委、国家数据局、福建省人民政府等单位共同主办&#xff0c;福州市人民政府…

Python文件中动态导入多个.py文件

Python文件中动态导入多个.py文件 一、背景 在一些自动化脚本中,我们需要一些中间文件作为引用文件来处理一些自动化的工作,但是中间文件数量可能根据需求的变更发生不规律的变化,所以就需要一些读文件夹来自动获取这些需要引用的中间文件,下面就是我整理的一个能够实现动…

Hadoop学习之hdfs的操作

Hadoop学习之hdfs的操作 1.将HDFS中的文件复制到本地 package com.shujia.hdfs;import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.junit.After; import org.junit.Before; import org.j…

算法刷题笔记 高精度加法(C++实现)

文章目录 题目描述题目思路和代码 题目描述 给定两个正整数&#xff08;不含前导0&#xff09;&#xff0c;计算它们的和。 输入格式 共两行&#xff0c;每行包含一个整数。 输出格式 共一行&#xff0c;包含所求的和。 题目思路和代码 基本思路&#xff1a;模拟竖式计算…

C++复习笔记2

1&#xff0c;构造函数 1.1 实例 1.2 概念 防止忘记初始化&#xff0c;专门给类对象初始化 1.3 备注 2&#xff0c;析造函数 2.1 实例 2.2 概念 防止忘记销毁&#xff0c;专门销毁类对象 2.3 备注 3&#xff0c;默认构造函数 3.1 实例 3.2 概念 编译器自动生成的构造…

深入了解 Golang 多架构编译:交叉编译最佳实践

随着软件开发领域的不断发展&#xff0c;我们面临着越来越多的挑战&#xff0c;其中之一是如何在不同的平台和架构上部署我们的应用程序。Golang&#xff08;Go&#xff09;作为一种现代化的编程语言&#xff0c;具有出色的跨平台支持&#xff0c;通过其强大的多架构编译功能&a…

快速搭建uni-app项目,vue2、Vue3与图鸟UI组件封装

大家好&#xff0c;我们团队近期在uni-app开发领域取得了重要突破&#xff0c;特地向大家介绍一系列基于Vue 2、Vue 3和图鸟UI的封装组件&#xff0c;以及ucharts图表的封装。这些成果旨在帮助开发者们更加高效、便捷地构建uni-app项目。 一、Vue 2、Vue 3与图鸟UI封装组件 为…

从安装Java到在VSCode中使用

诸神缄默不语-个人CSDN博文目录 VSCode官方使用Java的教程&#xff1a;https://code.visualstudio.com/docs/java/java-tutorial 介绍的就是以下的解决方案。其实非常简单所以我都感觉没啥可写的。 文章目录 1. 懒人包2. 仅安装VSCode Java扩展3. 仅安装JDK4. Java项目管理 1…