立项原因:《Sea Power》中,海上求救信标(落水飞行员、沉船救生筏)的搜救完全依赖玩家手动为每艘舰船、潜艇、直升机反复设置航路点、航速和高度,操作繁琐、重复劳动量大,且高时间压缩下容易错过目标。社区对自动化有高度需求,至今项目用户已达8814人。
点击空白处退出提示
立项原因:《Sea Power》中,海上求救信标(落水飞行员、沉船救生筏)的搜救完全依赖玩家手动为每艘舰船、潜艇、直升机反复设置航路点、航速和高度,操作繁琐、重复劳动量大,且高时间压缩下容易错过目标。社区对自动化有高度需求,至今项目用户已达8814人。
1、功能模块: ① 右键菜单命令模块(Start automatic SAR / 停止 / SAR setting 全局设置,支持 8 种语言);② 全局搜救协调器(RescueCoordinator,含目标认领、派发、状态机、制动控制等 14 个子模块);③ 直升机搜救模块(逐信标穿越航线、距离分档高度/速度、飞掠拾取、满载返航/待命);④ V-22 鱼鹰 VTOL 独立支路(悬停机制对接、低速掠过拾取);⑤ 舰船/潜艇搜救模块(沉船区域匹配、目标独占认领、减速接近、上浮处理);⑥ 航线规划模块(直达检查 + 全局 A* 绕陆寻路、水深净空校验);⑦ 玩家命令冲突检测(玩家一下令立即停止自动 SAR)。
2、主要功能描述: 模组自动处理海上求救信标:直升机按全局目标模式(最近落水飞行员/最近信标)逐个飞掠拾取幸存者;舰船与潜艇前往存在活动信标的沉没舰艇区域搜救,可选打捞孤立信标。全程自动管理航路点、航速、高度与倒车制动,并通过游戏事件日志播报开始、满载、完成、超时等任务状态。
1、我个人负责模组整体架构设计与全部核心编码:右键菜单与 Harmony 补丁入口、全局协调器调度、直升机/V-22/舰船潜艇三条搜救逻辑、A* 绕陆寻路、闭环制动与超时保护、多语言本地化及构建打包脚本,并完成沉底倾覆 XZ 判定、倾覆沉船坐标修正等疑难问题的定位与修复。
2、技术栈、架构、亮点与难点: 技术栈为 C#(.NET Standard 2.1)+ Harmony 补丁注入 + Unity 引擎 API,通过 BepInEx/AnchorChain 预加载器加载,PowerShell 构建。架构上采用 partial class 分层的全局协调器(14 个模块约 4800 行),配合帧级惰性索引、命令去重、模组命令上下文等性能优化。亮点/难点:① 用 XZ 水平距离替代 3D 距离判定沉船—救生筏区域,解决舰艇沉底倾覆后 Y 轴偏差数千米导致目标丢失的问题;② 基于 DEM 像素网格的无矩形全局 A* 绕陆寻路(八邻域、20 万格点上限),配合水深净空走廊校验;③ 逆向游戏原生拾取门限(航速、高度、水平距离),设计外推航点与距离分档速度曲线,实现不停机飞掠拾取;④ 通过 Harmony 前缀补丁接管物理步速度/高度输出,并在玩家下达命令时即时让出控制权,避免覆盖玩家操作。



评论