本文最初发表在霏凡论坛
发表时间:2008-08-26 21:12:43
全文如下:
----------------------
本人喜欢玩QQ四国军棋。
但极其BS普通房间的作弊小人,死了38,就在喊39+,一点都没有游戏公平竞争感觉。
更有甚者,让人BS的直接是对家,有的对家先牺牲后怪自己没保护好他,恼羞成怒,把看到的自己的棋子一一报给对手。
--
所以,进入随机搭档防作弊房间去玩游戏是最合适不过了。可是这种房间一般爆满。不会蓝钻一般还难以登录进去。
不过实践中发现,只要你耐心点,一直去挤这个房间,还是可以挤进去的。
当然了,懒人有懒人的办法。最近刚接触AutoHotKey,正好拿它来下手。
下面的代码边上直接有注释,我就不多解释了。全面的几行为AHK自动生成,没太大意义,可以直接略过。
各位拿去用的话,注意一下那个坐标值,根据自己的具体情况修改一下就行了。
因我没有发现AHK(包括AutoIt)可以实现自动展开TreeView,所以只能采用这种鼠标点击特定坐标值的土办法。
此外,因对战界面中的按钮无法识别到。AHK和AutoIt在发送网络数据包上也是功能缺失,因此,挤进房间自动坐下位置之后,并无法实现自动点击开始对战。
期待它们后面的版本有所加强。也许这个简单的脚本也可以跟进加强,实现全自动化,也许那一天,俺的刷分外挂也可以用它们做出来了。呵呵~
; ; AutoHotkey Version: 1.x ; Language: English ; Platform: Win9x/NT ; Author: < aspirer@crsky> ; ; Script Function: ; Template script (you can customize this template by editing "ShellNew\Template.ahk" in your Windows folder) ; #NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases. SendMode Input ; Recommended for new scripts due to its superior speed and reliability. SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory. #z:: ;定义热键为Win+Z开始挤房间,可自己修改热键 Loop { IfWinExist 四国军棋角色版 ;如果出现该窗口,则表明已经成功挤进去并且坐下位置 break ; 终止循环 IfWinExist 提示信息 ;如果弹出那个什么需要蓝钻才能登录啥啥啥的提示框就关闭 { WinClose sleep,500 } else { click 195,258 2 ;双击左上角的随机搭档防作弊房间,具体坐标可以根据自己的实际情况调节 sleep,500 } continue ; 跳过以下部分并开始一次新的循环 }
如果有人有兴趣转载它处,请注明作者和出处即可。谢谢合作!
2008-12-13 13:12:06更新 (新增退出程序,避免登录错房间后无法退出)
#z:: Loop { IfWinExist 四国军棋角色版 { WinActivate 四国军棋角色版 sleep,1500 SendEvent {Click 792, 580, down}{Click 792,580, up} ;实践发现,直接用Click无法点击开始游戏 break ; 终止循环 } IfWinExist 提示信息 ;im { WinClose sleep,500 } else { WinActivate QQ游戏 click 195,258 2 ;双击左上角的随机搭档防作弊房间 sleep,500 } ; 跳过以下部分并开始一次新的循环 } return #x::ExitApp ; 按Win+X退出程序