|
本帖最后由 bestkakkoii 于 2023-5-15 10:09 编辑
建议:
对于findpath,是否可引入A* 算法?
使用dat+bin数据预製寻路地图,这样可以很好的绕过所有障碍物和传点
实测即使每步移动后,單次重新计算最大地图耗C++14約80ms C++17或20約1ms
对于目的地直接设置为传点时也可以判断不将其视为障碍
实际使用大致上可能会像:
[伪代码]
- int n = 0;
- CPoint curentPos;
- do
- {
- curentPos = getCharPosition();
- if (curentPos == dstPos)
- break;
- std::vector<CPoint> paths = astar.find(curentPos, dstPos);
- if (paths.empty())
- break;
- n = MAX_STEP + 1;
- while (--n >= paths.size()) continue;
- CPoint nextPos = paths.at(n);
- move(nextPos);
- waitfor(nextPos, 1000);
- } while (!isScriptRunning());
复制代码
实际脚本使用:
findpath x, y [,step]
关于寻找NPC也是相同的方法区别在于,一边往指定坐标寻路一边寻找NPC,当找到NPC后将目的地坐标替换程NPC周围的坐标并转向NPC
需要的话我可以提供源代码
另外:
win10 或 win11 下 3开以上 所有子视窗开启"必定会卡住",登入连线速度也会偶尔会卡
经常性游戏打开内挂不会出来
子视窗包含:
资料显示->自动配点视窗
指定逃跑|指定攻击
自动丢弃....等等所有需要另外弹出窗口的基本都会卡住
所有兼容性的東西都試過了,沒有看出改善的跡象。
10台电脑不同配置的全都是一样的问题
|
|