ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

MaaNTE在线地图实时定位寻路:Navi WebSocket如何同步位置坐标与自动规划路线

MaaNTE在线地图实时定位寻路:Navi WebSocket如何同步位置坐标与自动规划路线 MaaNTE在线地图实时定位寻路Navi WebSocket如何同步位置坐标与自动规划路线【免费下载链接】MaaNTEMaaNTE. Nevertheless to Everless automatic assistant 异环小助手项目地址: https://gitcode.com/gh_mirrors/maa/MaaNTEMaaNTE 是面向《异环》的免费开源自动助手Nevertheless to Everless automatic assistant其 Navi 导航模块通过Navi WebSocket把游戏内的实时位置坐标同步到在线地图并支持从网页端下发路径点、自动规划路线逐个到达——一套双向通道搞定我在哪、往哪走两件事 ️。工作原理一个组合 Action 完成定位 寻路在线地图导航由名为online_map_navigation的自定义 action 驱动它在同一个截图循环中连续完成三件事NCC 视觉定位用游戏画面在异环全图11264×11264 底图如上所示上做模板匹配算出世界坐标方向预测预测角色朝向角度用于在线地图上绘制朝向路径寻路收到网页端下发的路径点后操控角色依序移动到达一个点再前往下一个点。由于 Maa 同时只能运行一个 action实时定位和路径寻路就合并在这一个组合 action 里由 route_websocket_service.py 把两者粘合成一个 WebSocket 双向通道。核心源码都在 agent/custom/action/Navi/ 目录下online_map_navigation_action.py — action 入口读取配置并启动服务navigation_server.py — WebSocket 服务端负责状态广播与消息接收route_runner.py — 按顺序执行可变路线会话中的路径点map_locator.py / angle_predictor.py — 视觉定位与方向预测waypoint_navigator.py / nte_coordinate_api.py — 路径点导航与坐标接口快速上手三步启用在线地图导航第 1 步 · 找到任务入口在线地图导航的 Pipeline 入口位于 OnlineMapNavigation.json任务设置位于 OnlineMapNavigation.json在 MaaNTE 任务列表中找到并启用即可。第 2 步 · 配置参数任务设置支持覆盖端口、采样间隔、到达容差、定位方式和调试模式参数默认值说明port14514WebSocket 监听端口tolerance5到达路径点的判定容差frame_interval0.1采样间隔秒最低0.05position_backendauto定位方式auto/coordinate/mapangle_backendauto方向推理后端auto/cpu/directmldebugfalse调试模式第 3 步 · 连接在线地图客户端服务固定监听0.0.0.0网页端或自写客户端连接本机地址即可ws://127.0.0.1:14514连上后页面会自动重连即使没有下发任何路径点任务也会持续广播实时定位状态在线地图上就能看到角色位置实时跳动。实时定位消息解析navi-state 长什么样服务端每帧都会向所有已连接客户端广播一条navi-state状态消息格式如下摘自 NaviWebSocket.md{ type: navi-state, version: 1, position: { x: -134394.56, y: 199913.53, z: 11416.17, pixelX: 4090, pixelY: 6750, sourceWidth: 11264, sourceHeight: 11264, score: 1.0, mode: coordinate }, angle: 123.4, angleConfidence: 0.96, timestamp: 1770000000.0 }几个关键字段的含义position.x / y / z游戏原始世界坐标。网络定位直接发送x、y、z视觉定位通过标定变换逆算只发送x、ypixelX / pixelY定位点在全图底图上的像素位置配合sourceWidth / sourceHeight使用兼容旧版网页新客户端应优先用原始坐标字段mode定位来源模式。网络坐标暂时中断时保留最后一次坐标mode变为coordinate_stale完全没有可转换位置时position为nullangle / angleConfidence角色朝向及置信度未识别时angle为nullscore视觉定位的匹配得分越高越可靠。自动规划路线把路径点发给 MaaNTENavi WebSocket 是双向的除了广播状态服务端还会接收在线地图工具发送的路径点消息。收到后RouteRunner会在 route_runner.py 中依序处理取出当前路径点 → 调用navigator.move_to(target)操控角色前往 → 到达后自动推进到下一个路径点直到全部走完状态变为arrived。客户端还能在navi-state消息的route字段中实时看到寻路进度route: { waypoints: [], active: false, currentIndex: 0, status: idle }active是否有正在执行的路线currentIndex当前正在前往的第几个路径点status路线状态如idle空闲、arrived已到达、cleared、empty、stopped。消息解析逻辑集中在 route_model.py 的handle_route_message中路径点集合支持随时增删——路线是可变会话改完立刻生效无需重启任务 。常见问题排查现象原因与解决网页连不上 WebSocket确认 MaaNTE 中已启用在线地图导航任务服务端启动失败时会写入日志可打开debug排查端口占用地图上不显示位置检查position_backendcoordinate依赖网络坐标map依赖视觉定位建议保持auto自动切换定位偶尔卡住不动mode为coordinate_stale时是网络坐标短暂中断服务端保留最后一次坐标继续发送属正常现象方向箭头乱转尝试在任务设置中把angle_backend从auto改为cpu或directml更多细节可查阅官方文档 NaviWebSocket.md 与 本地路径导航说明。小结MaaNTE 的 Navi 模块用一条ws://127.0.0.1:14514的双向 WebSocket把实时定位、方向预测、路径寻路整合进同一个截图循环向下广播navi-state让在线地图实时显示角色位置与朝向向上接收路径点让角色自动规划路线并逐个到达 。对于想在地图上指哪走哪的玩家这是目前最直接的接入方式。【免费下载链接】MaaNTEMaaNTE. Nevertheless to Everless automatic assistant 异环小助手项目地址: https://gitcode.com/gh_mirrors/maa/MaaNTE创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表