跳一跳 python外挂

本文介绍了如何利用Python进行图像分析,实现跳一跳游戏的自动跳跃功能。通过识别棋子的颜色坐标找到中心点A,再根据游戏规则确定目标跳跃点B。代码已在三星S7 edge上实现,能取得较高分数,但可能需针对不同手机屏幕进行微调。
摘要由CSDN通过智能技术生成

最近朋友圈喜欢跳一跳,最多也就能蹦到三百多分,凭个人经验,估计python的图片分析能搞定他,于是前天晚上就搞了下,大概能跑1万多分的样子,可惜微信不承认“冏”。

废话不多说,可是说下思路和想法。我用的手机是三星S7 edge,1440 x 2560个像素,两边时间弯曲屏,会导致颜色变化。


A点是棋子的中心坐标位置,B点是下一个台阶的最顶点坐标位置,因为棋子的中心周围的RGB数值不变,可以遍历棋子颜色的坐标所有位置,所有的X,Y坐标的中心值,就是棋子的中心位置。

A点的计算比较容易,就是由上到下,有右到左进行遍历,一旦发现颜色的RGB值不是背景的RGB值,则认为跳跃点出现。

在我的手机上,棋子中心的RGB是(57,57,99),遍历区域内所有的RGB,并计算出中心点,代码如下

def _getflag(): #取棋子所在位置的函数
	flag_RGB = 57,57,99 #棋子的RGB值
	flag_x_sum = 0 #所有具有中心RGB的X坐标总和
	flag_x_num = 0 #所有具有中心RGB的X坐标个数;两个数值的商即是中心RGB的X坐标,同理Y坐标
	flag_y_sum = 0
	flag_y_num = 0
	for flag_y in range(jump_box_top, jump_box_buttom,5): #遍历整个跳跃位置
		for flag_x in range(jump_box_left, jump_box_right,5):
			flag_xy = flag_x,flag_y
			flag_pixel = img_pixel.getpixel(flag_xy)
			if (abs(flag_pixel[0] - flag_RGB[0]) <
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值