用于游戏的 Python 一键式宏



这是我Python 2.7.13脚本,基本上是视频游戏的所谓"一键宏"。根据从游戏屏幕的一部分捕获的信息,它按下正确的组合键而不是玩家。因此,播放器正在向f键发送垃圾邮件,脚本在f旁边按下其他键。

它按原样工作,但是在随机时间(启动后 1-5 分钟(,脚本会停止或类似的事情。我可以在 Windows 任务管理器中看到脚本正在运行,但是当我按 f 键时没有任何反应。

一开始,我编写的代码有点未经优化,并且不止一次/按键截图。当时剧本"冻结"得更频繁。

这可能是截图太多的原因吗?还是我在某个地方搞砸了?

import pyautogui, pythoncom, pyHook
# Determine if an ability is ready or not
def ready(x,y, im):
    if (im.getpixel((x,y)) != (0,0,0)):
        return True
    else:
        return False
def ability1(im):
    return (ready(17, 16, im) or ready(35, 16, im))

def ability2(im):
    return ready(134, 9, im)
# Listen for keypress   
def OnKeyboardEvent(event):
    im = pyautogui.screenshot(region=(249, 770, 194, 26))
    if (event.KeyID == 70): # Pressed the "f" key
        if (ability1(im)):
            pyautogui.hotkey('shift','4')
            return True
        if (ability2(im)):
            pyautogui.press('-')
            return True           
        pyautogui.press('1')
        return True
# create a hook manager
hm = pyHook.HookManager()
# watch for all mouse events
hm.KeyDown = OnKeyboardEvent
# set the hook
hm.HookKeyboard()
# wait forever
pythoncom.PumpMessages()

如果您在实时服务器上运行此功能,这可能是由于Warden的检查/干扰增加。

我建议不要在实时服务器上使用这种自动化,如果注意到可能会导致禁令。

相关内容

  • 没有找到相关文章

最新更新