WOW 防 AFK 工具
🏷️ 魔兽世界
怀旧服开了以后排队比较严重,所以做了一个模拟按键点击的工具,防止角色暂离后自动登出。
下载 PreventAFK.zip 解压后直接运行里面的 PreventAFK.exe 。
打开后界面如下:
默认配置的情况在点击快捷键 Win + F6 开始, Win + F7 结束。
默认配置执行操作:WSAD 和 空格 各按了半秒到 1 秒之间,然后停顿半秒到 1 秒。之后循环执行直到按了停止的快捷键。
各配置参数的说明
模拟的配置保存在 config.json 文件中。格式为 json。
SilimulationEvents
配置模拟的键盘事件。
FirstKey
和SecondKey
设置组合的按键。具体的键值参考后面的 附 1 ~ 附 3。
DurationMin
和DurationMax
配置按键按下后持续的时间(在最小和最大值之间随机),单位是毫秒。
IntervalTimeMin
和IntervalTimeMax
配置按键松开后停留多长时间再继续执行后面的模拟按键(在最小和最大值之间随机)。单位也是毫秒。
StartHotKey
和StopHotKey
配置启动和停止的快捷键。
其中FirstKey
和SilimulationEvents
中的FirstKey
的值是不一样的,手动修改的时候需要注意一下。
具体的键值参考 附 4.StartHotKey.FirstKey
和StopHotKey.FirstKey
可选值
默认配置如下(功能就是 WSAD 和 空格 各按了半秒到 1 秒中之间,然后循环执行直到按了停止的快捷键):
实际使用之后发现默认配置并不好用。原因在于 W 和 S 键即使按下去相同的时间,走的距离并不一样。这个应该是因为向后走的速度较慢导致的,之前没考虑到。
另外 A 和 D 键默认是调整方向,我一般习惯改成左右平移。左右平移的默认按键是 Q 和 E。
修改后的配置如下(将下面的配置直接复制粘贴过去就可以直接使用了):
{
"SilimulationEvents": [
{
"FirstKey": "None",
"SecondKey": "Q",
"DurationMin": 500,
"DurationMax": 1000,
"IntervalTimeMin": 500,
"IntervalTimeMax": 1000
},
{
"FirstKey": "None",
"SecondKey": "E",
"DurationMin": 500,
"DurationMax": 1000,
"IntervalTimeMin": 500,
"IntervalTimeMax": 1000
},
{
"FirstKey": "None",
"SecondKey": "Space",
"DurationMin": 500,
"DurationMax": 1000,
"IntervalTimeMin": 500,
"IntervalTimeMax": 1000
}
],
"StartHotKey": {
"FirstKey": "WindowsKey",
"SecondKey": "F6"
},
"StopHotKey": {
"FirstKey": "WindowsKey",
"SecondKey": "F7"
}
}
下载地址
程序
文件:PreventAFK.zip
大小:259k
MD5:17dfe7befff169f1089cb25c41110a4e代码(VS 2017)
文件:PreventAFKSrc.zip
大小:19.0k
MD5:cf951bcdb1648bc82373b663e85a03d8MD5 校验工具
下载地址:winmd5
附 1. SilimulationEvent.FirstKey 常用值
Key | 说明 |
---|---|
None | 没有按任何键。 |
Shift | Shift 修改键。 |
Control | Ctrl 修改键。 |
Alt | Alt 修改键。 |
附 2. SilimulationEvent.SecondKey 常用值
Key | 说明 |
---|---|
Space | 空格键。 |
PageUp | Page Up 键。 |
PageDown | PAGE DOWN 键。 |
End | End 键。 |
Home | Home 键。 |
Left | 向左键。 |
Up | 向上键。 |
Right | 向右键。 |
Down | 向下键。 |
D0 | 0 键。 |
D1 | 1 键。 |
D2 | 2 键。 |
D3 | 3 键。 |
D4 | 4 键。 |
D5 | 5 键。 |
D6 | 6 键。 |
D7 | 7 键。 |
D8 | 8 键。 |
D9 | 9 键。 |
A | A 键。 |
B | B 键。 |
C | C 键。 |
D | D 键。 |
E | E 键。 |
F | F 键。 |
G | G 键。 |
H | H 键。 |
I | I 键。 |
J | J 键。 |
K | K 键。 |
L | L 键。 |
M | M 键。 |
N | N 键。 |
O | O 键。 |
P | P 键。 |
Q | Q 键。 |
R | R 键。 |
S | S 键。 |
T | T 键。 |
U | U 键。 |
V | V 键。 |
W | W 键。 |
X | X 键。 |
Y | Y 键。 |
Z | Z 键。 |
NumPad0 | 数字键盘上的 0 键。 |
NumPad1 | 数字键盘上的 1 键。 |
NumPad2 | 数字键盘上的 2 键。 |
NumPad3 | 数字键盘上的 3 键。 |
NumPad4 | 数字键盘上的 4 键。 |
NumPad5 | 数字键盘上的 5 键。 |
NumPad6 | 数字键盘上的 6 键。 |
NumPad7 | 数字键盘上的 7 键。 |
NumPad8 | 数字键盘上的 8 键。 |
NumPad9 | 数字键盘上的 9 键。 |
F1 | F1 键。 |
F2 | F2 键。 |
F3 | F3 键。 |
F4 | F4 键。 |
F5 | F5 键。 |
F6 | F6 键。 |
F7 | F7 键。 |
F8 | F8 键。 |
F9 | F9 键。 |
F10 | F10 键。 |
F11 | F11 键。 |
F12 | F12 键。 |
附 3. SilimulationEvent.FirstKey 和 SilimulationEvent.SecondKey 所有可用值
Key | 说明 |
---|---|
Modifiers | 从键值提取修饰符的位屏蔽。 |
None | 没有按任何键。 |
LButton | 鼠标左按钮。 |
RButton | 鼠标右按钮。 |
Cancel | Cancel 键。 |
MButton | 鼠标中按钮(三个按钮的鼠标)。 |
XButton1 | 第一个 X 鼠标按钮(五个按钮的鼠标)。 |
XButton2 | 第二个 X 鼠标按钮(五个按钮的鼠标)。 |
Back | Backspace 键。 |
Tab | Tab 键。 |
LineFeed | LINEFEED 键。 |
Clear | Clear 键。 |
Return | Return 键。 |
Enter | Enter 键。 |
ShiftKey | Shift 键。 |
ControlKey | CTRL 键。 |
Menu | Alt 键。 |
Pause | Pause 键。 |
Capital | CAPS LOCK 键。 |
CapsLock | CAPS LOCK 键。 |
KanaMode | IME Kana 模式键。 |
HanguelMode | IME Hanguel 模式键。(为了保持兼容性而设置;使用 HangulMode) |
HangulMode | IME Hangul 模式键。 |
JunjaMode | IME Junja 模式键。 |
FinalMode | IME 最终模式键。 |
HanjaMode | IME Hanja 模式键。 |
KanjiMode | IME Kanji 模式键。 |
Escape | Esc 键。 |
IMEConvert | IME 转换键。 |
IMENonconvert | IME 非转换键。 |
IMEAccept | IME 接受键,替换 System.Windows.Forms.Keys.IMEAceept。 |
IMEAceept | IME 接受键。已过时,请改用 System.Windows.Forms.Keys.IMEAccept。 |
IMEModeChange | IME 模式更改键。 |
Space | 空格键。 |
Prior | Page Up 键。 |
PageUp | Page Up 键。 |
Next | PAGE DOWN 键。 |
PageDown | PAGE DOWN 键。 |
End | End 键。 |
Home | Home 键。 |
Left | 向左键。 |
Up | 向上键。 |
Right | 向右键。 |
Down | 向下键。 |
Select | Select 键。 |
Print | Print 键。 |
Execute | EXECUTE 键。 |
Snapshot | Print Screen 键。 |
PrintScreen | Print Screen 键。 |
Insert | INS 键。 |
Delete | DEL 键。 |
Help | HELP 键。 |
D0 | 0 键。 |
D1 | 1 键。 |
D2 | 2 键。 |
D3 | 3 键。 |
D4 | 4 键。 |
D5 | 5 键。 |
D6 | 6 键。 |
D7 | 7 键。 |
D8 | 8 键。 |
D9 | 9 键。 |
A | A 键。 |
B | B 键。 |
C | C 键。 |
D | D 键。 |
E | E 键。 |
F | F 键。 |
G | G 键。 |
H | H 键。 |
I | I 键。 |
J | J 键。 |
K | K 键。 |
L | L 键。 |
M | M 键。 |
N | N 键。 |
O | O 键。 |
P | P 键。 |
Q | Q 键。 |
R | R 键。 |
S | S 键。 |
T | T 键。 |
U | U 键。 |
V | V 键。 |
W | W 键。 |
X | X 键。 |
Y | Y 键。 |
Z | Z 键。 |
LWin | 左 Windows 徽标键(Microsoft Natural Keyboard,人体工程学键盘)。 |
RWin | 右 Windows 徽标键(Microsoft Natural Keyboard,人体工程学键盘)。 |
Apps | 应用程序键(Microsoft Natural Keyboard,人体工程学键盘)。 |
Sleep | 计算机睡眠键。 |
NumPad0 | 数字键盘上的 0 键。 |
NumPad1 | 数字键盘上的 1 键。 |
NumPad2 | 数字键盘上的 2 键。 |
NumPad3 | 数字键盘上的 3 键。 |
NumPad4 | 数字键盘上的 4 键。 |
NumPad5 | 数字键盘上的 5 键。 |
NumPad6 | 数字键盘上的 6 键。 |
NumPad7 | 数字键盘上的 7 键。 |
NumPad8 | 数字键盘上的 8 键。 |
NumPad9 | 数字键盘上的 9 键。 |
Multiply | 乘号键。 |
Add | 加号键。 |
Separator | 分隔符键。 |
Subtract | 减号键。 |
Decimal | 句点键。 |
Divide | 除号键。 |
F1 | F1 键。 |
F2 | F2 键。 |
F3 | F3 键。 |
F4 | F4 键。 |
F5 | F5 键。 |
F6 | F6 键。 |
F7 | F7 键。 |
F8 | F8 键。 |
F9 | F9 键。 |
F10 | F10 键。 |
F11 | F11 键。 |
F12 | F12 键。 |
F13 | F13 键。 |
F14 | F14 键。 |
F15 | F15 键。 |
F16 | F16 键。 |
F17 | F17 键。 |
F18 | F18 键。 |
F19 | F19 键。 |
F20 | F20 键。 |
F21 | F21 键。 |
F22 | F22 键。 |
F23 | F23 键。 |
F24 | F24 键。 |
NumLock | NUM LOCK 键。 |
Scroll | Scroll Lock 键。 |
LShiftKey | 左 Shift 键。 |
RShiftKey | 右 Shift 键。 |
LControlKey | 左 Ctrl 键。 |
RControlKey | 右 Ctrl 键。 |
LMenu | 左 Alt 键。 |
RMenu | 右 Alt 键。 |
BrowserBack | 浏览器后退键(Windows 2000 或更高版本)。 |
BrowserForward | 浏览器前进键(Windows 2000 或更高版本)。 |
BrowserRefresh | 浏览器刷新键(Windows 2000 或更高版本)。 |
BrowserStop | 浏览器停止键(Windows 2000 或更高版本)。 |
BrowserSearch | 浏览器搜索键(Windows 2000 或更高版本)。 |
BrowserFavorites | 浏览器收藏夹键(Windows 2000 或更高版本)。 |
BrowserHome | 浏览器主页键(Windows 2000 或更高版本)。 |
VolumeMute | 静音键(Windows 2000 或更高版本)。 |
VolumeDown | 减小音量键(Windows 2000 或更高版本)。 |
VolumeUp | 增大音量键(Windows 2000 或更高版本)。 |
MediaNextTrack | 媒体下一曲目键(Windows 2000 或更高版本)。 |
MediaPreviousTrack | 媒体上一曲目键(Windows 2000 或更高版本)。 |
MediaStop | 媒体停止键(Windows 2000 或更高版本)。 |
MediaPlayPause | 媒体播放暂停键(Windows 2000 或更高版本)。 |
LaunchMail | 启动邮件键(Windows 2000 或更高版本)。 |
SelectMedia | 选择媒体键(Windows 2000 或更高版本)。 |
LaunchApplication1 | 启动应用程序一键(Windows 2000 或更高版本)。 |
LaunchApplication2 | 启动应用程序二键(Windows 2000 或更高版本)。 |
OemSemicolon | 美式标准键盘上的 OEM 分号键(Windows 2000 或更高版本)。 |
Oem1 | OEM 1 键。 |
Oemplus | 任何国家/地区键盘上的 OEM 加号键(Windows 2000 或更高版本)。 |
Oemcomma | 任何国家/地区键盘上的 OEM 逗号键(Windows 2000 或更高版本)。 |
OemMinus | 任何国家/地区键盘上的 OEM 减号键(Windows 2000 或更高版本)。 |
OemPeriod | 任何国家/地区键盘上的 OEM 句点键(Windows 2000 或更高版本)。 |
OemQuestion | 美式标准键盘上的 OEM 问号键(Windows 2000 或更高版本)。 |
Oem2 | OEM 2 键。 |
Oemtilde | 美式标准键盘上的 OEM 波形符键(Windows 2000 或更高版本)。 |
Oem3 | OEM 3 键。 |
OemOpenBrackets | 美式标准键盘上的 OEM 左括号键(Windows 2000 或更高版本)。 |
Oem4 | OEM 4 键。 |
OemPipe | 美式标准键盘上的 OEM 管道键(Windows 2000 或更高版本)。 |
Oem5 | OEM 5 键。 |
OemCloseBrackets | 美式标准键盘上的 OEM 右括号键(Windows 2000 或更高版本)。 |
Oem6 | OEM 6 键。 |
OemQuotes | 美式标准键盘上的 OEM 单/双引号键(Windows 2000 或更高版本)。 |
Oem7 | OEM 7 键。 |
Oem8 | OEM 8 键。 |
OemBackslash | RT 102 键的键盘上的 OEM 尖括号或反斜杠键(Windows 2000 或更高版本)。 |
Oem102 | OEM 102 键。 |
ProcessKey | Process Key 键。 |
Packet | 用于将 Unicode 字符当作键击传递。Packet 键值是用于非键盘输入法的 32 位虚拟键值的低位字。 |
Attn | ATTN 键。 |
Crsel | Crsel 键。 |
Exsel | Exsel 键。 |
EraseEof | ERASE EOF 键。 |
Play | PLAY 键。 |
Zoom | ZOOM 键。 |
NoName | 保留以备将来使用的常数。 |
Pa1 | PA1 键。 |
OemClear | Clear 键。 |
KeyCode | 从键值提取键代码的位屏蔽。 |
Shift | Shift 修改键。 |
Control | Ctrl 修改键。 |
Alt | Alt 修改键。 |
附 4. StartHotKey.FirstKey
和 StopHotKey.FirstKey
可选值
配置快捷键的 Key 和 事件里的 Key 有些区别。
Key | 说明 |
---|---|
None | 没有按任何键。 |
Shift | Shift 修改键。 |
Ctrl | Ctrl 修改键。 |
CtrlAlt | Ctrl + ALt 修改键。 |
Alt | Alt 修改键。 |
WindowsKey | Windows 徽标键 |