我正在为flash游戏做一个机器人,在java代码中使用sikuli.api。 sikuli的一切都非常酷,但我遇到了一个真正的问题。
我的机器人已经做了很多事情,我只是检查已经有85存在,找到或者发现在我的应用程序中看起来很完美,简单构建并使用jar(如果你玩Forge of empire你可以测试它) ,但是:
根据鼠标的位置,游戏会产生一点闪光弹出(应该有技术闪光名称,但我不知道闪光技术)。此弹出窗口提供有关鼠标指针下的建筑物的信息。
我的问题是我无法检测到这个pop-p中的内容,就好像sikuli无法捕捉到弹出式弹出窗口...
如果我使用此弹出窗口创建游戏的复制屏幕,我可以检测弹出窗口(并检查相似性的重复)。但是分析真实的屏幕,sikuli无法检测到弹出窗口。 查看此屏幕的应用程序会正确“查看”弹出窗口。
可能的线索或至少是一些特别的东西:如果我弹出一个弹出窗口区域的“highligth(1)”,则弹出窗口消失,而它应该只消失移动鼠标时。 如果没有突出显示,弹出窗口在尝试分析时不会消失。
在你问之前: - 图像参考位于正确的位置并由代码找到 - 相似性参数是正确的,并使用sikulix-IDE和屏幕副本进行检查
答案 0 :(得分:0)
首先,基础技术无关紧要,因为只有Sikuli才能看到"实际显示在屏幕上的是什么,所以你不必担心这是闪光还是其他任何东西。
突出显示某个区域不应以任何方式激活鼠标移动。然而,从你描述的内容来看,我唯一的猜测就是你错过了弹出窗口?它会快速出现和消失吗?如果这是问题所在,请查看here,我将讨论几种可以加快搜索速度的方法。