larkinwang 发表于 2011-6-5 01:26:10

一楼的4个附件图片,是我的浏览器环境下的截图。

一共需要截图4张:
1.“战争”按钮的截图
2.“加为盟友”按钮的截图
3.“确认”按钮的截图
4.“返回”按钮的截图

注意事项:(我的系统环境只有“中16色”测试通过,其他各种方法都提示找不到图片……)
1.根据自己的显示器调整分辨率,我是1440*900,在脚本里修改成自己的分辨率
2.桌面-属性-设置-颜色质量——中(16位)
3.先手动定位窗口位置,即浏览器下拉一屏,看到战争,点击他,使他变高亮,如下图

4.保持浏览器窗口位置不动,按键盘PRINT键,这时已经全屏截图到剪贴板里,用画图工具可粘贴看到全屏的图
5.打开PS,新建一个1440*900的画布,CTRL+V粘贴上全屏截图,然后放大到800%
6.打开标尺(不然8倍下不容易找到。。。)定位到战争高亮的按钮,裁剪工具,截图尽量小的一块,比如战争2个字取中间四分之一方块大小,只要能让系统判断出来是唯一的战争按钮即可。见1楼附件的战争截图。
7.缩放到100%,另存为,格式选择BMP,保存文件格式“windows”,深度“16位”,这一点很重要,必须和第二步你的桌面颜色质量一致。
8.战争按钮截图完成了,放到指定的路径里,1楼脚本中我的存放位置是按键精灵安装目录的 \screen\文明帝国   目录下。
9.其他3个按钮“加为盟友”“确认”“返回”,同上方法,注意保存时一定要深度16位,和桌面颜色一致。

larkinwang 发表于 2011-6-5 01:27:25

脚本中需要改动的地方:

MoveTo 1433, 151
LeftClick 1
Delay 500
MoveTo 1433, 432
这一段是定位浏览器窗口位置,全屏截图后,你需要测量自己的浏览器滚动条位置,1433是横坐标,在1440*900分辨率下,基本都是这个位置。纵坐标有2个,大概位置如下图所示的2个红点位置。


子程序"jiaact"是加盟友操作,只需要按上面说的截图操作,截好4张按钮小图,并在代码里改为图片相应的路径即可。

下面这段是循环取11个人的位置,调用子程序“jiaact”执行加盟友操作。
temp = 347
For i=1 to 11 step 1
MoveTo 482, temp
LeftClick 1
Delay 2000
Call jiaact()
temp = temp + 39
Next
这里temp=347是指第一个人的名字中心的纵坐标,
MoveTo 482, temp   这里的482是横坐标,所有11个人的名字第一个字的横坐标都一样。
取每一行名字的纵坐标,也就是“每个人的纵坐标+相邻2名字之间的距离”,即 temp+39,在PS中用标尺和参考线拉出来的距离就是39,估计所有人都是这个数字。
需要改动的有可能就是第一个人名的纵坐标,即temp=347,因为浏览器上方有收藏,有导航,有工具,每个人的界面可能都不一样高度。取值方法同上,PRINT全屏截图到PS里,用参考线+标尺定位,记得至少放大到800%哈。

好了现在可运行看看,在不卡的情况下,这脚本可以自己跑一晚上~~第二天再看 可能盟友就500+了,嘿嘿!
如果网络状况不好,很卡,就调整各个delay值,放到3000,4000都行,通常晚上不怎么卡,挂一宿差不多了~

larkinwang 发表于 2011-6-5 01:28:36

这贴看起来挺长,只要想明白需要操作的流程,实际动手做起来是很快地,用不上2分钟~

其中还有1分半 花在PS截图转成16色……

有啥问题可跟帖研究,可远程协助(IF在线+有空AND网通线路)

a5745kd92 发表于 2012-4-11 20:14:46

文明帝国,创世纪2012,自动加盟友案件精灵脚本

最近研究WEB游戏,感觉各种累手。。。给需要地人类~
这游戏托太多早就放弃了,这个脚本是按键常用的脚本,这里介绍的是一种方法,换一下图片,可用在很多WEB游戏里~
脚本环境 按键精灵9 免费版
1楼是代码,2楼是详细说明
Rem begin
////MsgBox "没有找到战争!"
      //定位
MoveTo 1433, 151
      LeftClick 1
      Delay 500
      MoveTo 1433, 432
      LeftClick 1
      Delay 500
      
      //定位
      //找战争
               
               
FindPic 0,0,1440,900,"D:\Program Files\按键精灵9\screen\文明帝国\zz2.bmp",0.9,intX4,intY4
If intX4 > 0 And intY4 > 0 Then
      MoveTo intX4, intY4
      Delay 500
      LeftClick 1
Delay 1000
Else
//Goto begin
MsgBox "没有找到战争!"
End If
      //找战争
               
               
      //循环加盟友
temp = 347

For i=1 to 11 step 1

MoveTo 482, temp
LeftClick 1
Delay 2000
Call jiaact()
temp = temp + 39

Next

//循环加盟友


Sub jiaact
tempclick = 0
//加盟友
FindPic 0,0,1440,900,"D:\Program Files\按键精灵9\screen\文明帝国\jia1.bmp",0.9,intX,intY
If intX > 0 And intY > 0 Then
    MoveTo intX,intY
    LeftClick 1
    Delay 1000
    //MsgBox "加盟友!"
Else   
tempclick = 1   
End If
Delay 500
//加盟友


//确认
FindPic 0,0,1440,900,"D:\Program Files\按键精灵9\screen\文明帝国\ok1.bmp",0.9,intX1,intY1
If intX1 > 0 And intY1 > 0 Then
    MoveTo intX1,intY1
    LeftClick 1
    Delay 1000   
    ////MsgBox "确认!"
Else   
tempclick = 1
End If
Delay 500
//确认


//返回
FindPic 0,0,1440,900,"D:\Program Files\按键精灵9\screen\文明帝国\fan1.bmp",0.9,intX2,intY2
If intX2 > 0 And intY2 > 0 Then
    MoveTo intX2,intY2
    LeftClick 1
    ////MsgBox "返回"
Else   
tempclick = 1
End If
Delay 1000
//返回


If tempclick = 1 Then
            //MsgBox "回去"
Goto begin
End If
      //定位
MoveTo 1433, 151
      LeftClick 1
      Delay 500
      MoveTo 1433, 432
      LeftClick 1
      Delay 500

      //定位

End Sub


以下截图是我的系统环境下需要用到的判断图片,你地截图也许和我不一样,需要根据自己的实际环境截图

看灰机哦stk 发表于 2012-4-22 21:43:26

详细说明:

一、流程:
1.先定位浏览器窗口位置,滚动条位于顶端,再点击滚动条下方空白处,使屏幕下拉一屏
2.在我的浏览器下,正好能显示“战争”那一排导航,以及当前页面全部11个可作战对象,如下图,注意右边滚动条的位置。

3.鼠标动作点击“战争”,定位第一个人的第一个字中心部位,并点击
4.寻找“加为盟友”按钮,如果存在,点击
5.寻找“确定”按钮,如果存在,点击
6.寻找“返回”按钮,如果存在,点击
7.定位浏览器窗口位置,鼠标点击2次,定位滚动条到步骤1的位置(也就是自顶端下拉一屏)
8.鼠标定位到第二个人的第一个字中心,继续4——7的过程。

因为战争页显示11个人,所以循环11次。
如果有一个人已经是你的盟友,第四步的“加为盟友”会变成解除盟友,这时脚本判断没有“加为盟友”,会点击返回,并跳到第一步重复执行。

按键脚本属性设置如下图:
页: [1]
查看完整版本: 文明帝国,创世纪2012,自动加盟友案件精灵脚本