Weiss-UltimateSavior/Tyranor-Next · 上手攻略

  • 仓库:Weiss-UltimateSavior/Tyranor-Next
  • 链接:https://github.com/Weiss-UltimateSavior/Tyranor-Next
  • 分类:Android · 游戏 · 视觉小说引擎
  • 作者:Tom
  • 更新:2026-08-25

是什么

Tyranor-Next 是一个基于 Tyranor 模拟器进行重构的开源视觉小说( Galgame )聚合启动器,面向 Android 平台。它内置了 Kirikiri / ONScripter / Tyrano / Artemis 四套引擎的运行环境,可自动识别并启动八类游戏,提供游戏库管理、封面获取、存档镜像、引擎参数调节等一体化体验。

简单说:如果你喜欢玩日式视觉小说( Galgame ),Tyranor-Next 让你在 Android 上用一个 App 启动多种引擎封装的游戏,不需要为每个游戏单独安装模拟器或引擎。

解决什么问题

视觉小说游戏使用多种不同引擎制作,Android 生态里通常需要: - Kirikiroid2 启动 Kirikiri 游戏 - ONScripter 适配 ONScripter 游戏 - 浏览器或 WebView 启动 TyranoBuilder 游戏 - ……以此类推

Tyranor-Next 将这些引擎全部打包进一个 App,自动检测游戏类型并调用对应运行时,用户只需把游戏文件夹放入目录,启动器自动完成识别、封面获取、存档管理等一系列操作。

快速安装

方式一:APK 安装(推荐)

使用 Gradle 自行编译 Debug APK:

# 需 Android SDK (android-37),建议 Linux/macOS
git clone https://github.com/Weiss-UltimateSavior/Tyranor-Next.git
cd Tyranor-Next
./gradlew assembleDebug --no-daemon

产物路径:app/build/outputs/apk/debug/app-debug.apk

方式二:下载 Release APK(若有发布)

在 GitHub Releases 页面查找预编译 APK 下载安装。

环境要求

  • Android 8.0(API 26)及以上
  • arm64-v8a 架构(64位ARM,当前只提供此架构原生库)
  • 游戏目录需位于 Android 可访问的本地存储,通过系统文件选择器(SAF)授权

核心用法

游戏目录准备

  1. 将游戏文件(.xp3、nscript.dat、index.html 等)放入 Android 可访问的本地存储目录
  2. 在 Tyranor-Next 中通过 SAF(Storage Access Framework)授权该目录
  3. 启动器自动扫描并识别游戏类型

支持的游戏格式

引擎/类型 典型文件 运行时
Kirikiri / Kirikiri2 .xp3、startup.tjs Kirikiroid2 / krkrsdl3
ONScripter nscript.dat、.nsa ONScripter 原生
Artemis system.ini、.pfs Artemis 原生
TyranoBuilder index.html、tyrano/ 内置 Tyrano Web 运行环境
RPG Maker MV www/、js/rpg_core.js 内置 Web 运行环境
RPG Maker MZ www/、js/rmmz_core.js 内置 Web 运行环境
VN globalData.vndata 内置 Web 运行环境
Web/Other 通用 index.html 内置 Web 运行环境

存档镜像

Tyranor-Next 支持存档镜像功能,可将游戏存档映射到不同路径,方便备份和管理。

引擎参数调节

每个游戏可单独设置引擎参数覆盖全局设置,适用于需要特殊配置的游戏。

项目结构

app/           启动器 UI:游戏扫描/管理/封面/存档/设置(Kotlin + Jetpack Compose)
engine/        引擎运行时核心:SDL2/SDL3、Kirikiri TVP、krkrsdl3、ONScripter、Artemis、Tyrano
docs/          设计文档

技术栈

  • 语言:Kotlin(引擎层含 Java 桥接代码)
  • UI:Jetpack Compose + Material 3 + Miuix
  • 构建:Gradle 9.5.1 / AGP 9.2.1 / Kotlin 2.x + Compose Compiler
  • SDK:compileSdk 37、minSdk 26、targetSdk 36
  • 持久化:SharedPreferences
  • 文件访问:Storage Access Framework(SAF)
  • 原生库:仅提供 arm64-v8a(64位ARM)

引擎运行时架构

  • 原生引擎插件(kirikiroid2 / ons / artemis 的 .so)以 assets 形式随 APK 打包
  • 首次启动时由 NativePluginManager 自动解压安装到应用私有目录
  • EngineLauncher 将 SAF 扫描结果映射到对应引擎 Activity 启动(SAF URI → 真实路径转换)
  • Tyrano 运行环境内置本地 HTTP 服务器、Asar 归档解析与 JS 钩子脚本

典型适用场景

  • 日式视觉小说爱好者:一个 App 启动多种引擎的游戏,不需要安装多个模拟器
  • Galgame 收藏管理:集中管理大量游戏,自动获取封面,告别混乱的文件夹
  • 存档备份:存档镜像功能便于换机迁移
  • Android 掌机场景:在手机/平板上随时玩视觉小说

坑与注意

⚠️ 仅支持 arm64-v8a:32位 ARM 设备(armeabi-v7a)不可用。设备必须是 64 位。

⚠️ 外置存储权限:部分引擎在外置存储上运行时需要「所有文件访问」权限。

⚠️ 兼容性问题:特殊封包/加密方式或修改版引擎的游戏可能需要调整引擎设置或补丁,不保证 100% 兼容。

⚠️ 游戏来源:Tyranor-Next 仅提供运行时启动器,游戏文件需要用户自行准备(正版购买或已有游戏)。

⚠️ GPL-2.0 许可:项目基于 GPL-2.0 发布,衍生作品须遵循同许可开源分发。

⚠️ 上游依赖:引擎运行时基于 Tyranor 模拟器逆向重写,上游涉及 Kirikiroid2 / ONScripter 等 GPL-2.0 项目。

⚠️ 文档较少:作为个人开源项目,说明文档和公开使用案例有限,需要一定 Android 编译经验。

与同类对比

Tyranor-Next 单一引擎模拟器(如 Kirikiroid2) 其他 VN 聚合方案
覆盖引擎数 8类(Kirikiri/ONScripter/Artemis/Tyrano/RMMV/RMMZ/VN/Web) 单一 数量有限
游戏库管理 ✅ 内置封面获取/存档管理 ❌ 无 部分有
自动识别 ✅ 多格式自动识别 ❌ 仅自己支持的 部分支持
多引擎打包 ✅ 一个 APK 含全部运行时 ❌ 需分别安装 视方案而定
平台 Android Android/iOS/PC 各有 各平台不同
开源 ✅ GPL-2.0 部分开源/闭源 各不相同

一句话推荐结论

Tyranor-Next 是 Android 视觉小说爱好者的一站式启动器,内置 8 种游戏引擎自动识别+Galgame 库管理+存档镜像,适合有大量日式视觉小说收藏且希望在手机上统一管理的玩家;上手需要一点 Android 编译基础,关注兼容性列表。