# Miya Uam ESP

《暗区突围》(`com.tencent.mf.uam`)Android 端 ESP 辅助程序。

以 root + 内核驱动环境的**独立可执行文件**形式运行,通过内核 ioctl 读写游戏内存,
使用 Vulkan 全屏 Overlay 渲染 ImGui 中文菜单与 ESP 绘制,支持自瞄、坐标解密、
训练场靶子识别等完整功能。

> ⚠️ 免责声明:本项目仅限在**自有设备与已获授权的测试环境**中使用,
> 请遵守当地法律法规与游戏服务条款,禁止用于任何破坏游戏公平性的用途。

## 技术架构

- **运行形态**:独立可执行文件(不注入游戏进程),通过内核驱动(MiyaHook)读写游戏内存;
- **渲染**:Vulkan(可切 OpenGL)全屏 Overlay + ImGui 菜单,144 FPS;
- **游戏引擎**:UE4(`libUE4.so`),目标《暗区突围》;
- **数据层**:快慢双帧快照(30ms 快帧 / 300ms 慢帧)+ 双缓冲发布,渲染线程只读缓存;

## 功能特性

### ESP 绘制

- 方框、射线、骨骼(14~20 段);
- 血量条、护甲(头盔/护甲等级);
- 武器名称 + 弹药数量 + 子弹穿透等级;
- 玩家昵称、队伍、距离(真人/人机区分,可隐藏人机);
- 雷达扫描动画、剩余人数统计;
- 物资盒子、投掷物预警、被瞄预警;
- T7 热成像标记(识别持有热成像镜的敌人);
- 训练场靶子绘制(骨骼,仅训练场生效)。

### 自瞄

- **陀螺仪虚拟偏移自瞄**(写入系统传感器管线,非屏幕触摸方式);
- 触发方式:开火触发 / 开镜触发 / 任意触发;
- 瞄准部位:头部 / 身体 / 指哪打哪;
- 弹道预判:目标速度 + 弹速 + 重力 + 预判系数;
- 压枪力度、瞄准速度(平滑)、锁定范围、瞄准距离、不瞄人机;
- 训练场木桩/靶子同样可锁定;
- 备用通道:内核触摸注入。

### 坐标解密

- 针对加密账号:内核硬件断点(HWBP)捕获坐标解密完成点,
  后台线程轮询断点快照并把明文坐标写入缓存,渲染按根组件指针查表。

### 反检测

- 进程隐藏;
- GPU/KGSL 进程信息隐藏;
- 防截屏/过录屏(FLAG_SECURE 重建窗口)。

### 触摸系统

- 枚举真实触摸设备并独占(EVIOCGRAB);
- 创建随机名称的虚拟输入设备回放触摸事件;
- 屏幕/设备坐标按横竖屏双向换算(供自瞄与触摸注入使用)。

## 环境要求

| 项 | 要求 |
|---|---|
| 设备 | arm64 安卓设备(真机) |
| 权限 | root |
| 驱动 | MiyaHook 内核驱动已加载 |

## 使用流程

1. 启动程序,按提示输入启动密钥并完成登录校验;
2. 进入游戏对局后,点击菜单 **"初始化游戏数据"**(解析 PID、模块基址、启动快照线程);
3. 在 **"绘制选项"** / **"瞄准功能"** / **"解密功能"** 三个标签页开启所需功能;
4. 对局结束或退出前点击 **"exit miya uam esp"** 正常退出(自动清理隐藏与断点)。

## 技术要点

- 全部内存读写经内核 ioctl,带地址/指针/NaN 校验;
- 快照线程与渲染解耦:慢帧全量重建玩家/靶子列表,快帧只刷位置与速度,
  大幅降低绘制延迟;
- 多关卡遍历:敌人走静态关卡(PersistentLevel),训练场靶子单独全关卡扫描;
- 加密账号坐标通过 HWBP 断点快照捕获解密结果,而非内存扫描;
- 陀螺仪自瞄支持内核接口与注入模块两条通道,可按环境切换。

