微信跳一跳外挂,半自动,全机型,精准跳跃(更新版本1)

//郑重声明,此代码绝对安全
//个人认为较为好用,个人手机坚果Pro,个人认为几乎兼容所有Android,全面屏除外(因为有的不行)
//假如你是锤子手机,在使用之前请关闭“大爆炸”功能
//这个版本是使用找图函数完成的,模板图片mod.jpg下载地址:
//https://share.weiyun.com/9a763a54c592abf007c37bacbb394a9a
//把mod.jpg放到手机储存根目录下(/sdcard)即可。假如不存在mod.jpg程序则不能运行
//优先使用找图,找图找不到使用找色函数
//本人大一菜鸟一枚,若有不足,恳请各位多多赐教!
//“X”是瞄准准心,系数可调

//确保无障碍服务开启
auto();
//请求截图权限
requestScreenCapture();
//请求稳定窗口
setInterval(()=>{}, 1000);
//设置分辨率
setScreenMetrics(1080,1920);
// 长按的时间系数
const press_coefficient = 1.392;
const press_x = 163;
const press_y = 1822;
// 棋子的宽度
const piece_body_width = 80 ;
//棋子最顶部到棋子底部中点的距离
const piece_dist_from_top_to_base = 188;
//棋子大致颜色
const piece_color = "#3d3752";

//记录按键被按下时的触摸坐标
var xx = 0, yy = 0, boardX, boardY, sta=0;
//记录按键被按下时的悬浮窗位置
var windowX, windowY;
//记录按键被按下的时间以便判断长按等动作
var downTime;
var window = floaty.window( <frame>
<button id="action" text="X" w="120" h="60" bg="#1f995566"/>
</frame>
);
//使这些函数调用更方便
const max = Math.max;
const abs = Math.abs;

window.action.setOnTouchListener(
function(view, event)
{
switch(event.getAction())
{
case event.ACTION_DOWN:
xx = event.getRawX();
yy = event.getRawY();
windowX = window.getX();
windowY = window.getY();
downTime = new Date().getTime();
sta=0;
return true;
case event.ACTION_MOVE:
window.setPosition(windowX + (event.getRawX() - xx), windowY + (event.getRawY() - yy));
sta=0;
return true;
case event.ACTION_UP:
boardX=window.getX()+60;
boardY=window.getY()+30;
sta=1;
return true;
}
return true;
});

main();

function main()
{
toast("请打开游戏,并在5秒内点击开始按钮");
waitForActivity("com.tencent.mm.plugin.appbrand.ui.AppBrandUI");
sleep(5000);
var template=images.read("/sdcard/mod.jpg");
if (template!=null)
{
log("已正确读取图片");
}
else
{
toast("未能正确读取图片,请把棋子样板图片mod.jpg放到手机储存根目录下(/sdcard)");
}
var deltaX,deltaY,img,piece;
while(1)
{
//假如没有处于微信跳一跳界面,则跳过下面的步骤
//在这里提示一下,有的时候微信跳一跳的activity是
//com.tencent.mm.plugin.appbrand.ui.AppBrandUI1
// 请大家留心
if(currentActivity() != "com.tencent.mm.plugin.appbrand.ui.AppBrandUI")
{
log("Wait For WeChat");
sleep(1000);
continue;
}

    img = captureScreen();
    // 获取棋子的位置
    piece = find_piece(img,template);
    //假如已经动过准心了,并且已经找到了棋子,则跳跃
    if( piece.x!=0 && piece.y !=0 && sta==1 )
    {
        deltaX=abs(boardX - piece.x);
        deltaY=abs(boardY - piece.y);
        toast("jump");
        log("BoardX="+boardX+",BoardY="+boardY+";piece.x="+piece.x+",piece.y="+piece.y);
        log("Jump");
        jump(boardX,piece.x,Math.sqrt(deltaX * deltaX + deltaY * deltaY));
    }
    else
    {
        log("等待用户执行操作");
        continue;
    }
    //将状态归零
    sta=0;
    piece.x=0;
    piece.y=0;
    sleep(950);
}

}

//跳跃函数,假如向左跳则系数稍微小一点
function jump(boardX , piecex ,distance)
{
var fir=1.15;
if(boardX <= piecex)
{
fir=0.79;
}
if(distance<=400 && boardX <= piecex)
{
fir*=0.63;
}
if(distance<=400 && boardX > piecex)
{
fir*=1.2;
}
var press_time = Math.max(130, distance * press_coefficient);
press(press_x, press_y, parseInt(press_time * fir));
fir=1.15;
}
//找棋子函数,优先使用找图的方法来找棋子位置
function find_piece(img,templa)
{
var pieceTemp=images.findImage(img, templa,{region:[0,555,1080,899],threshold:0.2});
if(!pieceTemp)
{
pieceTemp = FindInColor(img);
return {x: pieceTemp.x, y: pieceTemp.y}
}
else
return {x: pieceTemp.x+39, y: pieceTemp.y+105}
}

//假如找图找不到,则使用找色方法找棋子坐标,这是个备用方案
function FindInColor(img)
{
//使用内置找色函数找出棋子最顶部的位置
var piece_top = findColor(img, piece_color, { region: [0, 300, 1080, 1580], threshold: 4 });

if(!piece_top)
    {  
        log("Can't Spot Piece, Exit.");
        exit(0);
    }
var piece_start_x = -1;
var piece_end_x = -1;
//遍历该行找出棋子顶部中点位置
for(var x = 0; x < device.width; x++)
{
    var is_piece = images.detectsColor(img, piece_color, x, piece_top.y);
    if(is_piece && piece_start_x < 0)
    {
        piece_start_x = x;
    }
    if(!is_piece && piece_start_x >= 0)
    {
        piece_end_x = x;
        break;
    }
}
//棋子顶部中点位置
var piece_top_center_x = (piece_start_x + piece_end_x) / 2;
var piece_x = piece_top_center_x;
var piece_y = piece_top.y + piece_dist_from_top_to_base;
return {
         x: piece_x, y: piece_y
       }

}

@rs875205357

@rs875205357 我的也排不上名,可能是你的分数突然间太高了,系统认为你作弊。它腾讯也在做反作弊的识别。你消停几天就好了。我第一次跳了2000多。直接给我判零分。仅供娱乐吧哈哈。

不错哦!娱乐自己也好!

可以跳到最高分是好多呢!

可以跳到最高分是好多呢!

unterminated regular expression literal (<[censored]>#1)

未能正确找到图片,见鬼,图片放好了啊

打开跳一跳后,还要什么操作吗?
为什么称为半自动

@powershella微信跳一跳外挂,半自动,全机型,精准跳跃(更新版本1) 中说:

//郑重声明,此代码绝对安全
//个人认为较为好用,个人手机坚果Pro,个人认为几乎兼容所有Android,全面屏除外(因为有的不行)
//假如你是锤子手机,在使用之前请关闭“大爆炸”功能
//这个版本是使用找图函数完成的,模板图片mod.jpg下载地址:
//https://share.weiyun.com/9a763a54c592abf007c37bacbb394a9a
//把mod.jpg放到手机储存根目录下(/sdcard)即可。假如不存在mod.jpg程序则不能运行
//优先使用找图,找图找不到使用找色函数
//本人大一菜鸟一枚,若有不足,恳请各位多多赐教!
//“X”是瞄准准心,系数可调

//确保无障碍服务开启
auto();
//请求截图权限
requestScreenCapture();
//请求稳定窗口
setInterval(()=>{}, 1000);
//设置分辨率
setScreenMetrics(1080,1920);
// 长按的时间系数
const press_coefficient = 1.392;
const press_x = 163;
const press_y = 1822;
// 棋子的宽度
const piece_body_width = 80 ;
//棋子最顶部到棋子底部中点的距离
const piece_dist_from_top_to_base = 188;
//棋子大致颜色
const piece_color = "#3d3752";

//记录按键被按下时的触摸坐标
var xx = 0, yy = 0, boardX, boardY, sta=0;
//记录按键被按下时的悬浮窗位置
var windowX, windowY;
//记录按键被按下的时间以便判断长按等动作
var downTime;
var window = floaty.window( <frame>
<button id="action" text="X" w="120" h="60" bg="#1f995566"/>
</frame>
);
//使这些函数调用更方便
const max = Math.max;
const abs = Math.abs;

window.action.setOnTouchListener(
function(view, event)
{
switch(event.getAction())
{
case event.ACTION_DOWN:
xx = event.getRawX();
yy = event.getRawY();
windowX = window.getX();
windowY = window.getY();
downTime = new Date().getTime();
sta=0;
return true;
case event.ACTION_MOVE:
window.setPosition(windowX + (event.getRawX() - xx), windowY + (event.getRawY() - yy));
sta=0;
return true;
case event.ACTION_UP:
boardX=window.getX()+60;
boardY=window.getY()+30;
sta=1;
return true;
}
return true;
});

main();

function main()
{
toast("请打开游戏,并在5秒内点击开始按钮");
waitForActivity("com.tencent.mm.plugin.appbrand.ui.AppBrandUI");
sleep(5000);
var template=images.read("/sdcard/mod.jpg");
if (template!=null)
{
log("已正确读取图片");
}
else
{
toast("未能正确读取图片,请把棋子样板图片mod.jpg放到手机储存根目录下(/sdcard)");
}
var deltaX,deltaY,img,piece;
while(1)
{
//假如没有处于微信跳一跳界面,则跳过下面的步骤
//在这里提示一下,有的时候微信跳一跳的activity是
//com.tencent.mm.plugin.appbrand.ui.AppBrandUI1
// 请大家留心
if(currentActivity() != "com.tencent.mm.plugin.appbrand.ui.AppBrandUI")
{
log("Wait For WeChat");
sleep(1000);
continue;
}

    img = captureScreen();
    // 获取棋子的位置
    piece = find_piece(img,template);
    //假如已经动过准心了,并且已经找到了棋子,则跳跃
    if( piece.x!=0 && piece.y !=0 && sta==1 )
    {
        deltaX=abs(boardX - piece.x);
        deltaY=abs(boardY - piece.y);
        toast("jump");
        log("BoardX="+boardX+",BoardY="+boardY+";piece.x="+piece.x+",piece.y="+piece.y);
        log("Jump");
        jump(boardX,piece.x,Math.sqrt(deltaX * deltaX + deltaY * deltaY));
    }
    else
    {
        log("等待用户执行操作");
        continue;
    }
    //将状态归零
    sta=0;
    piece.x=0;
    piece.y=0;
    sleep(950);
}

}

//跳跃函数,假如向左跳则系数稍微小一点
function jump(boardX , piecex ,distance)
{
var fir=1.15;
if(boardX <= piecex)
{
fir=0.79;
}
if(distance<=400 && boardX <= piecex)
{
fir*=0.63;
}
if(distance<=400 && boardX > piecex)
{
fir*=1.2;
}
var press_time = Math.max(130, distance * press_coefficient);
press(press_x, press_y, parseInt(press_time * fir));
fir=1.15;
}
//找棋子函数,优先使用找图的方法来找棋子位置
function find_piece(img,templa)
{
var pieceTemp=images.findImage(img, templa,{region:[0,555,1080,899],threshold:0.2});
if(!pieceTemp)
{
pieceTemp = FindInColor(img);
return {x: pieceTemp.x, y: pieceTemp.y}
}
else
return {x: pieceTemp.x+39, y: pieceTemp.y+105}
}

//假如找图找不到,则使用找色方法找棋子坐标,这是个备用方案
function FindInColor(img)
{
//使用内置找色函数找出棋子最顶部的位置
var piece_top = findColor(img, piece_color, { region: [0, 300, 1080, 1580], threshold: 4 });

if(!piece_top)
    {  
        log("Can't Spot Piece, Exit.");
        exit(0);
    }
var piece_start_x = -1;
var piece_end_x = -1;
//遍历该行找出棋子顶部中点位置
for(var x = 0; x < device.width; x++)
{
    var is_piece = images.detectsColor(img, piece_color, x, piece_top.y);
    if(is_piece && piece_start_x < 0)
    {
        piece_start_x = x;
    }
    if(!is_piece && piece_start_x >= 0)
    {
        piece_end_x = x;
        break;
    }
}
//棋子顶部中点位置
var piece_top_center_x = (piece_start_x + piece_end_x) / 2;
var piece_x = piece_top_center_x;
var piece_y = piece_top.y + piece_dist_from_top_to_base;
return {
         x: piece_x, y: piece_y
       }

}

@powershella微信跳一跳外挂,半自动,全机型,精准跳跃(更新版本1) 中说:

//郑重声明,此代码绝对安全
//个人认为较为好用,个人手机坚果Pro,个人认为几乎兼容所有Android,全面屏除外(因为有的不行)
//假如你是锤子手机,在使用之前请关闭“大爆炸”功能
//这个版本是使用找图函数完成的,模板图片mod.jpg下载地址:
//https://share.weiyun.com/9a763a54c592abf007c37bacbb394a9a
//把mod.jpg放到手机储存根目录下(/sdcard)即可。假如不存在mod.jpg程序则不能运行
//优先使用找图,找图找不到使用找色函数
//本人大一菜鸟一枚,若有不足,恳请各位多多赐教!
//“X”是瞄准准心,系数可调

//确保无障碍服务开启
auto();
//请求截图权限
requestScreenCapture();
//请求稳定窗口
setInterval(()=>{}, 1000);
//设置分辨率
setScreenMetrics(1080,1920);
// 长按的时间系数
const press_coefficient = 1.392;
const press_x = 163;
const press_y = 1822;
// 棋子的宽度
const piece_body_width = 80 ;
//棋子最顶部到棋子底部中点的距离
const piece_dist_from_top_to_base = 188;
//棋子大致颜色
const piece_color = "#3d3752";

//记录按键被按下时的触摸坐标
var xx = 0, yy = 0, boardX, boardY, sta=0;
//记录按键被按下时的悬浮窗位置
var windowX, windowY;
//记录按键被按下的时间以便判断长按等动作
var downTime;
var window = floaty.window( <frame>
<button id="action" text="X" w="120" h="60" bg="#1f995566"/>
</frame>
);
//使这些函数调用更方便
const max = Math.max;
const abs = Math.abs;

window.action.setOnTouchListener(
function(view, event)
{
switch(event.getAction())
{
case event.ACTION_DOWN:
xx = event.getRawX();
yy = event.getRawY();
windowX = window.getX();
windowY = window.getY();
downTime = new Date().getTime();
sta=0;
return true;
case event.ACTION_MOVE:
window.setPosition(windowX + (event.getRawX() - xx), windowY + (event.getRawY() - yy));
sta=0;
return true;
case event.ACTION_UP:
boardX=window.getX()+60;
boardY=window.getY()+30;
sta=1;
return true;
}
return true;
});

main();

function main()
{
toast("请打开游戏,并在5秒内点击开始按钮");
waitForActivity("com.tencent.mm.plugin.appbrand.ui.AppBrandUI");
sleep(5000);
var template=images.read("/sdcard/mod.jpg");
if (template!=null)
{
log("已正确读取图片");
}
else
{
toast("未能正确读取图片,请把棋子样板图片mod.jpg放到手机储存根目录下(/sdcard)");
}
var deltaX,deltaY,img,piece;
while(1)
{
//假如没有处于微信跳一跳界面,则跳过下面的步骤
//在这里提示一下,有的时候微信跳一跳的activity是
//com.tencent.mm.plugin.appbrand.ui.AppBrandUI1
// 请大家留心
if(currentActivity() != "com.tencent.mm.plugin.appbrand.ui.AppBrandUI")
{
log("Wait For WeChat");
sleep(1000);
continue;
}

    img = captureScreen();
    // 获取棋子的位置
    piece = find_piece(img,template);
    //假如已经动过准心了,并且已经找到了棋子,则跳跃
    if( piece.x!=0 && piece.y !=0 && sta==1 )
    {
        deltaX=abs(boardX - piece.x);
        deltaY=abs(boardY - piece.y);
        toast("jump");
        log("BoardX="+boardX+",BoardY="+boardY+";piece.x="+piece.x+",piece.y="+piece.y);
        log("Jump");
        jump(boardX,piece.x,Math.sqrt(deltaX * deltaX + deltaY * deltaY));
    }
    else
    {
        log("等待用户执行操作");
        continue;
    }
    //将状态归零
    sta=0;
    piece.x=0;
    piece.y=0;
    sleep(950);
}

}

//跳跃函数,假如向左跳则系数稍微小一点
function jump(boardX , piecex ,distance)
{
var fir=1.15;
if(boardX <= piecex)
{
fir=0.79;
}
if(distance<=400 && boardX <= piecex)
{
fir*=0.63;
}
if(distance<=400 && boardX > piecex)
{
fir*=1.2;
}
var press_time = Math.max(130, distance * press_coefficient);
press(press_x, press_y, parseInt(press_time * fir));
fir=1.15;
}
//找棋子函数,优先使用找图的方法来找棋子位置
function find_piece(img,templa)
{
var pieceTemp=images.findImage(img, templa,{region:[0,555,1080,899],threshold:0.2});
if(!pieceTemp)
{
pieceTemp = FindInColor(img);
return {x: pieceTemp.x, y: pieceTemp.y}
}
else
return {x: pieceTemp.x+39, y: pieceTemp.y+105}
}

//假如找图找不到,则使用找色方法找棋子坐标,这是个备用方案
function FindInColor(img)
{
//使用内置找色函数找出棋子最顶部的位置
var piece_top = findColor(img, piece_color, { region: [0, 300, 1080, 1580], threshold: 4 });

if(!piece_top)
    {  
        log("Can't Spot Piece, Exit.");
        exit(0);
    }
var piece_start_x = -1;
var piece_end_x = -1;
//遍历该行找出棋子顶部中点位置
for(var x = 0; x < device.width; x++)
{
    var is_piece = images.detectsColor(img, piece_color, x, piece_top.y);
    if(is_piece && piece_start_x < 0)
    {
        piece_start_x = x;
    }
    if(!is_piece && piece_start_x >= 0)
    {
        piece_end_x = x;
        break;
    }
}
//棋子顶部中点位置
var piece_top_center_x = (piece_start_x + piece_end_x) / 2;
var piece_x = piece_top_center_x;
var piece_y = piece_top.y + piece_dist_from_top_to_base;
return {
         x: piece_x, y: piece_y
       }

}

@powershella微信跳一跳外挂,半自动,全机型,精准跳跃(更新版本1) 中说:

//郑重声明,此代码绝对安全
//个人认为较为好用,个人手机坚果Pro,个人认为几乎兼容所有Android,全面屏除外(因为有的不行)
//假如你是锤子手机,在使用之前请关闭“大爆炸”功能
//这个版本是使用找图函数完成的,模板图片mod.jpg下载地址:
//https://share.weiyun.com/9a763a54c592abf007c37bacbb394a9a
//把mod.jpg放到手机储存根目录下(/sdcard)即可。假如不存在mod.jpg程序则不能运行
//优先使用找图,找图找不到使用找色函数
//本人大一菜鸟一枚,若有不足,恳请各位多多赐教!
//“X”是瞄准准心,系数可调

//确保无障碍服务开启
auto();
//请求截图权限
requestScreenCapture();
//请求稳定窗口
setInterval(()=>{}, 1000);
//设置分辨率
setScreenMetrics(1080,1920);
// 长按的时间系数
const press_coefficient = 1.392;
const press_x = 163;
const press_y = 1822;
// 棋子的宽度
const piece_body_width = 80 ;
//棋子最顶部到棋子底部中点的距离
const piece_dist_from_top_to_base = 188;
//棋子大致颜色
const piece_color = "#3d3752";

//记录按键被按下时的触摸坐标
var xx = 0, yy = 0, boardX, boardY, sta=0;
//记录按键被按下时的悬浮窗位置
var windowX, windowY;
//记录按键被按下的时间以便判断长按等动作
var downTime;
var window = floaty.window( <frame>
<button id="action" text="X" w="120" h="60" bg="#1f995566"/>
</frame>
);
//使这些函数调用更方便
const max = Math.max;
const abs = Math.abs;

window.action.setOnTouchListener(
function(view, event)
{
switch(event.getAction())
{
case event.ACTION_DOWN:
xx = event.getRawX();
yy = event.getRawY();
windowX = window.getX();
windowY = window.getY();
downTime = new Date().getTime();
sta=0;
return true;
case event.ACTION_MOVE:
window.setPosition(windowX + (event.getRawX() - xx), windowY + (event.getRawY() - yy));
sta=0;
return true;
case event.ACTION_UP:
boardX=window.getX()+60;
boardY=window.getY()+30;
sta=1;
return true;
}
return true;
});

main();

function main()
{
toast("请打开游戏,并在5秒内点击开始按钮");
waitForActivity("com.tencent.mm.plugin.appbrand.ui.AppBrandUI");
sleep(5000);
var template=images.read("/sdcard/mod.jpg");
if (template!=null)
{
log("已正确读取图片");
}
else
{
toast("未能正确读取图片,请把棋子样板图片mod.jpg放到手机储存根目录下(/sdcard)");
}
var deltaX,deltaY,img,piece;
while(1)
{
//假如没有处于微信跳一跳界面,则跳过下面的步骤
//在这里提示一下,有的时候微信跳一跳的activity是
//com.tencent.mm.plugin.appbrand.ui.AppBrandUI1
// 请大家留心
if(currentActivity() != "com.tencent.mm.plugin.appbrand.ui.AppBrandUI")
{
log("Wait For WeChat");
sleep(1000);
continue;
}

    img = captureScreen();
    // 获取棋子的位置
    piece = find_piece(img,template);
    //假如已经动过准心了,并且已经找到了棋子,则跳跃
    if( piece.x!=0 && piece.y !=0 && sta==1 )
    {
        deltaX=abs(boardX - piece.x);
        deltaY=abs(boardY - piece.y);
        toast("jump");
        log("BoardX="+boardX+",BoardY="+boardY+";piece.x="+piece.x+",piece.y="+piece.y);
        log("Jump");
        jump(boardX,piece.x,Math.sqrt(deltaX * deltaX + deltaY * deltaY));
    }
    else
    {
        log("等待用户执行操作");
        continue;
    }
    //将状态归零
    sta=0;
    piece.x=0;
    piece.y=0;
    sleep(950);
}

}

//跳跃函数,假如向左跳则系数稍微小一点
function jump(boardX , piecex ,distance)
{
var fir=1.15;
if(boardX <= piecex)
{
fir=0.79;
}
if(distance<=400 && boardX <= piecex)
{
fir*=0.63;
}
if(distance<=400 && boardX > piecex)
{
fir*=1.2;
}
var press_time = Math.max(130, distance * press_coefficient);
press(press_x, press_y, parseInt(press_time * fir));
fir=1.15;
}
//找棋子函数,优先使用找图的方法来找棋子位置
function find_piece(img,templa)
{
var pieceTemp=images.findImage(img, templa,{region:[0,555,1080,899],threshold:0.2});
if(!pieceTemp)
{
pieceTemp = FindInColor(img);
return {x: pieceTemp.x, y: pieceTemp.y}
}
else
return {x: pieceTemp.x+39, y: pieceTemp.y+105}
}

//假如找图找不到,则使用找色方法找棋子坐标,这是个备用方案
function FindInColor(img)
{
//使用内置找色函数找出棋子最顶部的位置
var piece_top = findColor(img, piece_color, { region: [0, 300, 1080, 1580], threshold: 4 });

if(!piece_top)
    {  
        log("Can't Spot Piece, Exit.");
        exit(0);
    }
var piece_start_x = -1;
var piece_end_x = -1;
//遍历该行找出棋子顶部中点位置
for(var x = 0; x < device.width; x++)
{
    var is_piece = images.detectsColor(img, piece_color, x, piece_top.y);
    if(is_piece && piece_start_x < 0)
    {
        piece_start_x = x;
    }
    if(!is_piece && piece_start_x >= 0)
    {
        piece_end_x = x;
        break;
    }
}
//棋子顶部中点位置
var piece_top_center_x = (piece_start_x + piece_end_x) / 2;
var piece_x = piece_top_center_x;
var piece_y = piece_top.y + piece_dist_from_top_to_base;
return {
         x: piece_x, y: piece_y
       }

}

  • 21
    帖子
  • 5012
    浏览

与 Auto.js 的连接断开,我们正在尝试重连,请耐心等待