有大佬玩过宏定义游戏大招吗?


#1

在研究游戏大招, 如宏定义(一对多点击), 像fei zhi里面的, 在使用虚拟点击的时候, 下一个点击总会覆盖上一个点击(极短的时间延迟内)

内容应该不算违规吧:no_mouth:


#2

对,我现在也在研究这个,看了simulatetouch的代码,主要是调用
IOHIDEventCreateDigitizerEvent

IOHIDEventCreateDigitizerFingerEventWithQuality
创建消息后发出去。
我现在能实现单个点按下移动放开了。
但是不知道如何实现,一点模拟多个点的控制。每次模拟都只能一个点,换下一个点的话,上一个点就会松开。


#3

嗯,看iolate 的simulator的Readme的时候提到 了multi - touch,好像实现了。


#4

实际上是要实现多点触摸的模拟,要看一下系统实际触摸的日志,分析一下。我的没有越狱,不知道怎么打印出系统的日志。
看其它同学的帖子应该是可以打印出来的。


#5

模拟多指,游戏遥杆人物滑动都做了, 现在就是想做按下一个点循环触发多个位置的touch事件, 最后一个点总会覆盖之前的点在循环中


#6

不明白你的意思,多指问题我也已经解决了。
不知道你所谓的touch事件是指一次完整的touchdown touchmove touchup,还是仅仅指一个hidevent。
在我的理解中,只要在eventqueue里边顺序不错,一次touchdown事件和一次touchup事件就可以形成一次click事件了,中间加两个touchmove效果更好。两次click事件的延迟问题,应该游戏的对event事件处理的时候过滤掉了。
在我这几天的摸索中,每一次产生DigitizerEvent应该包含当前屏幕所有正在按压的FingerEvent。
另外还要注意当物理触屏实际产生了hidevent的时候,会之前正在模拟的事件产生冲突。
除非你能hook到所有的IOHIDEventClient,接管所有的hidevent。


#7

是一次完整的事件, 从began到end, 我现在想做游戏里面那种一对多(王者的宏), 看飞智里面每个touch之间都做了延迟; 与模拟事件冲突的话我遇到过两种情况: 在王者里面会出现界面跳闪的问题 和 阻断问题