Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions docs/components/manager.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ modavd [--root <目录>] [--json] [--quiet] [--verbose] <命令> [参数]
| --- | --- |
| `list` | 全部实例和状态 |
| `info <i>` / `status <i>` | 一台实例的详细信息 / 状态 |
| `create [--index N] [--title T] [--memory 6G] [--cpu N] [--data-gb N] [--fps 30\|60] [--no-bridge]` | 新建。默认带 arm64 执行桥,第一次开机时装上 |
| `set <i> [--title T] [--memory M] [--cpu N] [--fps F] [--data-gb N]` | 修改,下次开机生效。`--data-gb` 只能改大,游戏数据不动 |
| `create [--index N] [--title T] [--memory 6G] [--cpu N] [--data-gb N] [--fps 30\|60] [--resolution 1080\|720] [--no-bridge]` | 新建。默认带 arm64 执行桥,第一次开机时装上 |
| `set <i> [--title T] [--memory M] [--cpu N] [--fps F] [--resolution 1080\|720] [--data-gb N]` | 修改,下次开机生效。`--data-gb` 只能改大,游戏数据不动 |
| `delete <i> --yes` | 删除已关机的实例,连同游戏数据 |
| `start <i> [--window] [--timeout 300] [--no-bridge]` | 开机,等开完并做完开机后的设置 |
| `stop <i> [--force]`、`stop --all` | 关机:先让安卓正常关机,不成再 sync + kill;`--force` 是 sync + 强杀 |
Expand All @@ -45,6 +45,10 @@ modavd [--root <目录>] [--json] [--quiet] [--verbose] <命令> [参数]

机读输出(`--json`)、退出码和完整的选项说明见 [ModAVDManager 的 README](https://github.com/ModAVD/ModAVDManager#命令行)。

分辨率在管理器的新建和实例设置中选择,CLI 用 `--resolution 1080|720`,MCP 的 `create_instance`、`update_instance` 用 `resolution`。新建默认 1080p(1920×1080 / DPI 280);720p(1280×720 / DPI 240)更省资源。换档联动宽、高、DPI,保留横竖屏,下次开机生效。已有横屏或竖屏 1920×1080 配置保持 1080p;其余配置及缺字段的旧配置保持 720p,不会自动升级。DPI 不单独设置。自动化工具里的分辨率也要跟着改。

AUTO-MAS 的两档配套见 [AUTO-MAS#1837](https://github.com/AUTO-MAS-Project/AUTO-MAS/pull/1837),覆盖新建、实例设置和没有包内 CLI 时的 Python 启动,重启保留所选档位。使用 1080p 前须更新 AUTO-MAS 及包内 CLI;不支持两档的旧 CLI 会在写盘前提示升级。旧版 AUTO-MAS 的 Python 回退仍会固定写回 720p。

## MCP

```
Expand Down
2 changes: 1 addition & 1 deletion docs/develop/adapt-game.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@
| 原因 | 先试(不用重新编译) | 真要改的话改哪 |
|---|---|---|
| 只有 arm64,崩在转译层或刚启动就退 | 让执行桥临时对它生效:先确认实例装好了桥,再 `shell su 0 setprop modavd.gate.target <包名>`,然后冷启动游戏。这个属性会整体替换名单,不持久,客体重启就没了。看 logcat 里有没有 `shim-ctor OK`、游戏能不能过 | 能过:PR 把包名加进 `bridge/companion/jni/native_to_guest_companion.cc` 的 `kDefaultGateTargets`。还是不行:这是转译层和执行桥的深水区,开 issue 附上 tombstone 和启动 logcat |
| 图形:黑屏、花屏、Vulkan 报错、设备丢失 | 两个默认关闭的环境变量开关(`ANDROID_EMU_VK_HIDE_REBAR=1`、`ANDROID_EMU_VK_ASTC_BC3=1`,见[和官方模拟器有什么不同](../guide/changes#graphics));换分辨率(720p / 1080p 两档);排查时可以用 `modavd bridge <编号> uninstall` 卸桥对比,卸桥会把 GL 传输恢复成原来的 | 模拟器本体的 gfxstream 补丁,见[模拟器本体](./emulator) |
| 图形:黑屏、花屏、Vulkan 报错、设备丢失 | 两个默认关闭的环境变量开关(`ANDROID_EMU_VK_HIDE_REBAR=1`、`ANDROID_EMU_VK_ASTC_BC3=1`,见[和官方模拟器有什么不同](../guide/changes#graphics));在实例设置里换分辨率(1080p / DPI 280、720p / DPI 240 两档,下次开机生效);排查时可以用 `modavd bridge <编号> uninstall` 卸桥对比,卸桥会把 GL 传输恢复成原来的 | 模拟器本体的 gfxstream 补丁,见[模拟器本体](./emulator) |
| 卡顿、掉帧 | 按[卡顿、掉帧怎么查](./performance)先找到瓶颈在哪条线程、哪一段;再对比几个现成的开关:GL 传输 asg / pipe、`ANDROID_EMU_VK_HIDE_REBAR=1`、Vulkan 特性开关 | 瓶颈在图形往返:改本体的 gfxstream;在转译:开 issue 讨论;在游戏主线程本身:先接受,或调低画质 |
| 检测到模拟器、root,或进游戏后被踢 | — | 不做。ModAVD 不绕过游戏的保护,也不改游戏文件。记下提示原文,开 issue 说明情况就行 |
| 网络请求超时、热更新失败 | 换网络;查游戏数据目录里有没有 0 字节的文件(硬杀留下的) | 一般不在 ModAVD 里改 |
Expand Down
8 changes: 6 additions & 2 deletions docs/en/components/manager.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ modavd [--root <dir>] [--json] [--quiet] [--verbose] <command> [args]
| --- | --- |
| `list` | All instances and their status |
| `info <i>` / `status <i>` | Detailed information / status of one instance |
| `create [--index N] [--title T] [--memory 6G] [--cpu N] [--data-gb N] [--fps 30\|60] [--no-bridge]` | Create an instance. It includes the arm64 execution bridge by default, installed on the first boot |
| `set <i> [--title T] [--memory M] [--cpu N] [--fps F] [--data-gb N]` | Change settings; they take effect on the next start. `--data-gb` can only grow the disk; game data is untouched |
| `create [--index N] [--title T] [--memory 6G] [--cpu N] [--data-gb N] [--fps 30\|60] [--resolution 1080\|720] [--no-bridge]` | Create an instance. It includes the arm64 execution bridge by default, installed on the first boot |
| `set <i> [--title T] [--memory M] [--cpu N] [--fps F] [--resolution 1080\|720] [--data-gb N]` | Change settings; they take effect on the next start. `--data-gb` can only grow the disk; game data is untouched |
| `delete <i> --yes` | Delete a shut-down instance together with its game data |
| `start <i> [--window] [--timeout 300] [--no-bridge]` | Start, then wait until boot is complete and the post-boot setup is done |
| `stop <i> [--force]`, `stop --all` | Shut down: first ask Android for a clean shutdown; if that fails, sync + kill. `--force` is sync + force-kill |
Expand All @@ -45,6 +45,10 @@ modavd [--root <dir>] [--json] [--quiet] [--verbose] <command> [args]

For machine-readable output (`--json`), exit codes and the full option reference, see [the ModAVDManager README](https://github.com/ModAVD/ModAVDManager/blob/main/README.en.md#command-line).

Choose the display preset in the manager’s create or instance settings form, with CLI `--resolution 1080|720`, or with MCP `resolution` in `create_instance` and `update_instance`. New instances default to 1080p (1920×1080 / DPI 280). 720p (1280×720 / DPI 240) uses fewer resources. Changing the preset updates width, height and DPI together, preserves orientation, and takes effect at the next boot. Existing landscape or portrait 1920×1080 configurations stay at 1080p; other configurations, including missing dimensions, stay at 720p. DPI is not a separate option. Update your automation tool’s resolution as well.

[AUTO-MAS#1837](https://github.com/AUTO-MAS-Project/AUTO-MAS/pull/1837) adds both presets to creation, instance settings and the Python launch path used when no packaged CLI is present. The selected preset survives restarts. Update AUTO-MAS and the packaged CLI before using 1080p; a CLI without preset support reports that an update is needed before it can change the configuration. Older AUTO-MAS versions still force 720p in the Python launch path.

## MCP

```
Expand Down
2 changes: 1 addition & 1 deletion docs/en/develop/adapt-game.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ Try approaches that need no recompiling first, and settle the direction before y
| Cause | Try first (no recompiling) | Where to change it if you really have to |
|---|---|---|
| arm64-only; crashes in the translation layer or exits right after launch | Make the execution bridge take effect for it temporarily: first make sure the instance has the bridge installed, then run `shell su 0 setprop modavd.gate.target <package>`, then cold-start the game. This property replaces the whole list, is not persistent, and is gone when the guest restarts. Check logcat for `shim-ctor OK` and whether the game gets through | If it gets through: send a PR that adds the package name to `kDefaultGateTargets` in `bridge/companion/jni/native_to_guest_companion.cc`. If it still fails: this is the deep end of the translation layer and the bridge; open an issue with the tombstone and the launch logcat |
| Graphics: black screen, garbled picture, Vulkan errors, device lost | Two environment-variable switches that are off by default (`ANDROID_EMU_VK_HIDE_REBAR=1`, `ANDROID_EMU_VK_ASTC_BC3=1`; see [How ModAVD differs from the official emulator](../guide/changes#graphics)); change the resolution (two levels, 720p / 1080p); while investigating, you can uninstall the bridge with `modavd bridge <index> uninstall` to compare, and uninstalling the bridge restores the GL transport to what it was | The emulator's gfxstream patches; see [the emulator itself](./emulator) |
| Graphics: black screen, garbled picture, Vulkan errors, device lost | Two environment-variable switches that are off by default (`ANDROID_EMU_VK_HIDE_REBAR=1`, `ANDROID_EMU_VK_ASTC_BC3=1`; see [How ModAVD differs from the official emulator](../guide/changes#graphics)); change the resolution in instance settings (1080p / DPI 280 or 720p / DPI 240, effective at the next boot); while investigating, you can uninstall the bridge with `modavd bridge <index> uninstall` to compare, and uninstalling the bridge restores the GL transport to what it was | The emulator's gfxstream patches; see [the emulator itself](./emulator) |
| Stutter and frame drops | Use [How to investigate stutter and frame drops](./performance) to find out which thread and which stage the bottleneck is in; then compare a few existing switches: GL transport asg / pipe, `ANDROID_EMU_VK_HIDE_REBAR=1`, and the Vulkan feature flags | If the bottleneck is the graphics round trip: change the emulator's gfxstream. If it is in translation: open an issue to discuss it. If it is in the game's own main thread: accept it, or lower the quality |
| The game detects the emulator or root, or kicks you out after you enter the game | — | Do not do anything. ModAVD does not bypass the game's protection and does not change game files. Note the exact message text and open an issue describing the situation |
| Network request timeout, hot update fails | Switch networks; check the game's data folder for 0-byte files (left behind by a hard kill) | Usually not something to change in ModAVD |
Expand Down