夕雾实验室
在 Ubuntu 上运行 StarRailCopilot
难倒是不难,就是流程比较复杂

缝合了一堆教程

目前基于 Ubuntu 23.04,设备为 联想小新 Air14 2020 Intel i5-1035G1,非相同平台的请参考每个环节上方的官方文档执行,不要照抄

  • 配置 WayDroid
  • 手动导入镜像
  • 配置 Arm
  • 安装 Conda
  • 配置 SRC

为什么要使用 SRC

SRC 是内卷地狱群友写的,好感度 upup

然后其他 Windows 端的在 Linux 上运行麻烦很多,不如安卓容器好玩

安装 WayDroid

Install Instructions - Waydroid

前置要求:登陆时启用 Wayland 图形服务器

检查:

echo $XDG_SESSION_TYPE

输出是 wayland 可以继续

安装:

sudo apt install curl ca-certificates -y
curl https://repo.waydro.id | sudo bash
sudo apt install waydroid -y

手动导入镜像

Using custom Waydroid images - Waydroid
https://sourceforge.net/projects/waydroid/files/images/

因为内置下载组件速度太慢而且吃不到代理,可以手动下载镜像导入,需要两份文件 system.img vendor.img,两个镜像需要日期一致

虽然崩坏是 ARMv8 应用,但是我们还是得安装 x86_64 用的 WayDroid 镜像,并通过转译补丁工作

wget https://sourceforge.net/projects/waydroid/files/images/vendor/waydroid_x86_64/lineage-18.1-20231223-MAINLINE-waydroid_x86_64-vendor.zip/download -O vendor.zip
wget https://sourceforge.net/projects/waydroid/files/images/system/lineage/waydroid_x86_64/lineage-18.1-20231223-VANILLA-waydroid_x86_64-system.zip/download -O system.zip
unzip vendor.zip
unzip system.zip
sudo mkdir -p /etc/waydroid-extra/images/
sudo mv vendor.img /etc/waydroid-extra/images/
sudo mv system.img /etc/waydroid-extra/images/

配置 ARM 转译

GitHub - casualsnek/waydroid_script: Python Script to add OpenGapps, Magisk, libhoudini translation library and libndk translation library to waydroid !

# 克隆仓库
git clone https://github.com/casualsnek/waydroid_script
# 进入目录
cd waydroid_script
# 应用虚拟 python 环境
python3 -m venv venv
# 安装依赖
venv/bin/pip install -r requirements.txt

sudo apt install lzip
# 启用 Intel 平台的 ARM 转译
sudo venv/bin/python3 main.py install libhoudini

放开防火墙

Networking Issues - Waydroid

配置防火墙以便容器正常上网

sudo ufw allow 53
sudo ufw allow 67
sudo ufw default allow FORWARD

调整 WayDroid 分辨率

How do I resize window? · Issue #700 · waydroid/waydroid · GitHub

SRC 默认使用 1280 * 720,其他分辨率也许可能应该不好使

waydroid prop set persist.waydroid.width "1280"
waydroid prop set persist.waydroid.height "720"

如果你输入错误导致分辨率异常,可以将参数设置为空,这样会恢复成默认显示器全屏大小

waydroid prop set persist.waydroid.width ""
waydroid prop set persist.waydroid.height ""

安装命令行工具

sudo apt install adb

安装游戏本体

推荐直接 adb

老夕玩的是国际版,所以从

adb connect <IP>

IP 可以在 WayDroid 容器设置中的 关于 - IP 地址 找到

adb install xxxx.apk

如果安装包是 AAB 结构的,解压然后

adb install-multiple base.apk bundle1.apk bundle2.apk

安装 conda

Installing on Linux — conda 23.11.1.dev33 documentation

因为 SRC 没有打 Linux 下的包,只能参照手动安装指南进行,回头也许可以做一个 Dockerfile 简化流程

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

问你是否同意许可证就输入 yes 回车,问你目录默认就行,安装结束后面有大段英文读一下,按照提示设置环境变量

安装 SRC

Installation_cn · LmeSzinc/StarRailCopilot Wiki · GitHub

安装:

# 克隆仓库
git clone https://github.com/LmeSzinc/StarRailCopilot
#进入目录
cd StarRailCopilot
# 使用 conda 新建 python 3.10.10 环境,假设新环境的名字叫 src
conda create -n src python==3.10.10
# 激活刚刚创建的虚拟环境
conda activate src
# 安装依赖
pip install -r requirements.txt # 这一步需要用到 gcc,没有请提前安装

运行

python gui.py

首次使用 SRC:

  • 浏览器访问 http://localhost:22367/
  • 左侧菜单的 SRC 是一份配置文件
  • 点击 src
  • 二级菜单找到 SRC 设置
  • 模拟器 Serial 填入<IP>:5555,IP 可以在 WayDroid 容器设置中的 关于 - IP 地址 找到

最后开始自动运行:

  • 二级菜单找到 总览
  • 右侧卡片找到 调度器
  • SRC,启动!