学习游戏辅助制作:按键精灵模拟鼠标动作防检测

学习游戏辅助制作:按键精灵模拟鼠标动作防检测

原创|浏览:6417|更新:2015-01-21 14:44|标签:游戏 

有些游戏会检测到鼠标动作.频繁相同的点击很容易让游戏检测到我们使用了按键,这样的情况下,我们需要模拟鼠标移动,让鼠标像真是手动操作一样,慢慢的移动到终点。      论坛里的一位大牛:we似曾相识    曾经开展了"老鼠慢慢跑"的比赛征集帖,收集了各式各样模拟鼠标移动的代码,我们一起来看看~~~

方法/步骤

内容提要

    1、点到点模拟鼠标真实移动——直线   2、点到点模拟鼠标真实移动——直线+转折   3、点到点模拟鼠标真实移动——直线+振幅   4、点到点模拟鼠标真实移动——曲线

场景

 在mspaint画图工具中,让鼠标从点100,100  移动到点800,600

NO.1-点到点模拟鼠标真实移动——直线

代码1 作者:林家铺子

x1 = 800 : y1 = 600 //目标点 

x2 = 100 : y2 = 100//起始点

MoveTo x2,y2

k = (y2 - y1) / (x2 - x1)

b = y2 - k * x2

For x = x2 To x1 Step sgn(x1 - x2)  

    //sgn函数为返回表示数字符号的整数。当(x1 - x2)>0时,返回值为1.当(x1 - x2)<0时,返回值为-1.当=0时,返回值为0

    LeftDown 1

    MoveTo x, (k * x + b)

    LeftUp 1

    Delay 1

Next

代码2 作者:_雪狼

Call 鼠标慢慢跑(100,100,800,600,5)

Sub 鼠标慢慢跑(x1, y1, x2, y2,time1)

    Dim a, x, y, i

    x = x1 : y = y1

    a = x2 / y2

    MoveTo x1, y1

    For i = y To y2-1

        y = y + 1

        x = y * a

    LeftDown 1

     MoveTo x, y     

        Delay time1

    Next

End Sub

代码3-变速  作者:playandhappy 

//点到点直线移动,鼠标移动速度开始快后来越来越慢

Call 老鼠慢慢跑(100,100,800,600,100)

Sub 老鼠慢慢跑(x1,y1,x2,y2,times)

    MoveTo x1,y1

    While abs(x1-x2)>5 or abs(y1-y2)>5

        GetCursorPos x1, y1

        LeftDown 1

        MoveR (x2 - x1) / 4, (y2 - y1) / 4

        LeftUp 1

        Delay times

    Wend

    LeftDown 1

    MoveTo x2, y2

    LeftUp 1

End Sub

代码4-移动次数  作者:fuyong198010222 

//点到点直线移动,并且可以设置移动几次到达目标地点

Dim a, b, c, d ,n,t //起点(100,100),终点(800,600)

a = 100 : b = 100 : c = 800 : d = 600 

//匀速直线移动

UserVar n=100 "多少次移动到位"

UserVar t=50 "每一次移动相隔多少时间"

Call 老鼠慢慢跑()

Sub 老鼠慢慢跑

    MoveTo a, b

    Delay t

    For n

        x = (c - a) / n : y = (d - b) / n

        LeftDown 1

        MoveR x, y

        LeftUp 1

        Delay t        

    Next        

End Sub

6

代码5-移动间隔 作者:xuyuzui

MoveTo  100,100

Call 老鼠慢慢跑(800, 600, 5, 50)

Sub 老鼠慢慢跑(x, y, mousestep, mouseDelay)

    'x,y : 移动终点坐标 ' mousestep: 移动间距 'mouseDelay : 移动时间间隔(ms)

    Dim Xstep, Ystep

    Dim curx, cury, PianYiX, PianYiY

    GetCursorPos curx, cury

    If abs(curx - x) < mousestep And abs(cury - y) < mousestep Then 

         LeftDown 1

         MoveTo x, y

         LeftUp 1

        Exit Sub

    End If

    Xstep = (x - curx) / mousestep

    Ystep = (y - cury) / mousestep

    If abs(Xstep) > abs(Ystep) Then        

        PianYiX = mousestep * sgn(Xstep)

        PianYiY = (y - cury) / abs(Xstep)

    Else 

        PianYiX = (x - curx) / abs(Ystep)

        PianYiY = mousestep * sgn(Ystep)

    End If

     LeftDown 1

    MoveR PianYiX, PianYiY

    LeftUp 1

    Delay mouseDelay

    Call 老鼠慢慢跑(x, y, mousestep, mouseDelay)

End Sub

7

NO.2-点到点模拟鼠标真实移动——直线+转折

代码1 作者:VBS技术者

//tD几毫秒移动一点

call  鼠标慢慢跑(100,100,800,600,5)

Sub 鼠标慢慢跑(X1,Y1,X2,Y2,tD)

    Dim xl,yl,xc,yc,endx,endy,sx,sy

    Dim FORC,i

    xl=abs(clng(X1)-clng(X2))

    yl=abs(clng(y1)-clng(y2))

    EndX = X2

    EndY = Y2

    XC=1

    YC=1

    sx=x1

    sy=y1

    If clng(X1)>=clng(X2) Then

        EndX = X1

        xc = -1

    End If

    If clng(Y1)>=clng(Y2) Then

        EndY = Y1

        yc = -1

    End If 

    If xl>yl Then

        FORC = xl

    Else 

      FORC = yl

    End If 

    For i = 1 To FORC+1

        LeftDown 1

        MoveTo sx, sy

        LeftUp 1

        Delay clng(tD)

        sx = sx + xc

        sy = sy + yc

        If sx=endx Then

            xc = 0

        End If

        If sy=endy Then

            yc=0

        End If

    Next 

End Sub

8

代码2 作者:dinwidi 

//点到点直线移动,先走x轴横坐标直线,然后转折走y轴纵坐标直线,直至终点 (这是游戏里常用的单步移动的原理)

Call 老鼠慢慢跑(100,100,800,600,5)

Sub 老鼠慢慢跑(x1, y1, x2, y2, t)

   MoveTo x1,y1

    i = 0

    For abs(x1 - x2)

        LeftDown 1

        MoveTo x1+(x2-x1)/abs(x2-x1)*i,y1

        Delay t

        LeftUp 1

        i = i + 1

    Next

    i = 0

    For abs(y1 - y2)+1

        LeftDown 1

        MoveTo x2, y1 + (y2 - y1) / abs(y2 - y1) * i

        LeftUp 1

        Delay t

        i = i + 1

    Next

End Sub

NO.3-点到点模拟鼠标真实移动——直线+振动

代码 作者:lucky619486332

//点到点直线移动,移动中鼠标轻微震动 

Call 老鼠慢慢跑(100,100,800,600,50)

Sub 老鼠慢慢跑(x1, y1, x2, y2, t)

    MoveTo x1,y1

    While x2 - x1 <> 0 and y2 - y1 <> 0        

        d1 = x2 - x1 : d2 = y2 - y1

        If abs(d1) >= abs(d2) Then 

            xt = int(abs(d1 / d2))

            For xt

                LeftDown 1

                MoveR d1 / abs(d1), 0

                LeftUp 1

                Delay t

            Next

            LeftDown 1

            MoveR 0, d2 / abs(d2)

            LeftUp 1

            Delay t

        Else 

            yt=int(abs(d2 / d1))

            For yt

                LeftDown 1

                MoveR 0, d2 / abs(d2)

                LeftUp 1

                Delay t

            Next

                LeftDown 1

                MoveR d1 / abs(d1), 0

                LeftUp 1

            Delay t

        End If

        GetCursorPos x1, y1

    Wend 

End Sub

9

NO.4-点到点模拟鼠标真实移动——曲线

 代码 作者:xxx_mail

Sub 鼠标慢慢跑(x1,y1,振幅,周期)

    Dim x0,y0,x,y, 距离,q0,q1,r,t,a

    x0 = 100

    y0 = 100

    MoveTo x0,y0

    距离=sqr((x1-x0)^2+(y1-y0)^2)

    q1 = 角度计算((x1-x0),(y1-y0))

    pi = Atn(1)*8

    a = 距离/pi

    t=周期/pi

    For i=0 To pi step 0.001

        x=x1-距离+i*a

        y =y1+振幅*sin(i)

        q0 = 角度计算(x-x1,y-y1)

        r=sqr((x-x1)^2+(y-y1)^2)

        x =x1+r*Cos((q0+q1))

        y = y1 + r * Sin((q0 + q1))

        LeftDown 1

        MoveTo x, y

        LeftUp 1

        Delay t

    Next

End Sub

Function 角度计算(x, y)

    If x = 0 Then

        x = 0.0001

    End If

    If x > 0 and y >= 0 Then 

        角度计算 = (Atn(y / x))

    ElseIf x > 0 and y < 0 Then

        角度计算 = (Atn(y / x))+pi

    ElseIf x < 0 Then

        角度计算 = (Atn(y / x)) + pi/2

    End If  

End Function

END

经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。

作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。

辅助模式

相关知识

天龙八部按键精灵,天龙八部按键精灵自动打怪
易语言怎么写dnf辅助
《模拟山羊3》制作花絮公开 工作人员逼真模拟山羊动作
塔防奇兵模拟好玩吗 塔防奇兵模拟玩法简介
《cs2》鼠标宏使用后果
冰淇淋模拟制作好玩吗 冰淇淋模拟制作玩法简介
我的世界钓鱼机怎么做-我的世界钓鱼机制作方法
模拟人生4绅士包动作介绍有什么内容
steam上怎么查看设备 Steam怎么检测配置要求
模拟果汁奶茶制作好玩吗 模拟果汁奶茶制作玩法简介

网址: 学习游戏辅助制作:按键精灵模拟鼠标动作防检测 http://www.hyxgl.com/newsview331231.html

推荐资讯