Skip to content

ModinMobileSTS/SlayTheAmethystModded

Repository files navigation

SlayTheAmethyst 图标

简体中文 | English

SlayTheAmethyst

一个面向 模组版 Slay the Spire 的 Android 启动器项目,在移动端运行大部分桌面版模组

Download Latest APK Quick Start Debug Docs

Android API 26+ Runtime Java 8 Bridge ABI arm64-v8a CI GitHub Release Workflow

核心特性快速开始构建说明文档入口仓库结构致谢

Important

本仓库 不包含 Slay the Spire 的桌面版 jar。构建前请先准备你自己的 Steam 游戏文件。

核心特性

方向 说明
模组兼容性 目标是支持绝大多数模组加载,力求模组行为与桌面端一致。
兼容策略 启动器内置多种兼容策略。
运行时 运行 JavaSE 而不是 ART,避免因为实现不一致导致的兼容性问题。
移动端交互 针对触屏补充了控制适配与界面适配。

Note

虽然尖塔采用了 LibGDX 编写,但是部分模组仍采用一些桌面特性进行编写,本项目旨在使用适配安卓的 JavaSE 与配套 Native 库来加载这些模组,从而最大限度还原模组的表现。

快速开始

1. 准备构建依赖

设置环境变量 STEAM_PATH,或者在 gradle.properties 中设置 steam.path,其值应指向包含 Slay the Spire 的 Steam 根目录或 steamapps 目录。

必需文件:

  • ${STEAM_PATH}/common/SlayTheSpire/desktop-1.0.jar
  • runtime-pack/jre8-pojav.zip

依赖下载来源:

原生库市场: ModinMobileSTS/SlayTheAmethystResource

Note

ModTheSpire.jarBaseMod.jarStSLib.jar 等核心模组 jar 由应用资源打包提供,不会在构建时从外部模组源动态解析。

2. 构建调试版 APK

.\gradlew.bat :app:assembleDebug

3. 构建签名发布版 APK

Important

建议使用发布自动化指南中的方法进行Release版本的构建,以避免签名不同的问题

使用标准 Android 签名环境变量:

$env:RELEASE_STORE_FILE="C:\path\to\release-signing.jks"
$env:RELEASE_STORE_PASSWORD="..."
$env:RELEASE_KEY_ALIAS="..."
$env:RELEASE_KEY_PASSWORD="..."
.\gradlew.bat :app:assembleRelease

APK 输出目录:

  • app/build/outputs/apk/debug/
  • app/build/outputs/apk/release/

构建说明

模块 职责
:app Android 启动器 UI、打包逻辑、运行时资源组装,以及 adb 调试任务
:boot-bridge 打包进运行时资源的 Java 启动桥接 jar
:patches:gdx-patch 构建期包含的桌面兼容补丁 jar

构建目标:

  • minSdk 26
  • targetSdk 33
  • compileSdk 36
  • Java / Kotlin 字节码目标:1.8

文档入口

仓库已经内置了日常联机调试与 CI 发布所需的关键流程。

设备调试命令:

.\gradlew.bat :app:stsStart
.\gradlew.bat :app:stsStop
.\gradlew.bat :app:stsPullLogs

可选参数:

  • -PlaunchMode=mts_basemod-PlaunchMode=vanilla
  • -PdeviceSerial=<adb-serial>
  • -PlogsDir=<path>

更多文档:

仓库结构

路径 用途
app/ 主 Android 应用与启动器实现
boot-bridge/ 启动桥接 jar 模块
patches/gdx-patch/ 运行时兼容补丁模块
runtime-pack/ 本地运行时包与原生桥接输入
docs/ 开发文档、多语言 README 与架构说明

致谢

本仓库复用了并改造了 Amethyst-Android / PojavLauncher 的部分原生与 Java 桥接实现。详细归属与许可证请见 NOTICETHIRD_PARTY_LICENSES.md

特别感谢:

  • AngelAuraMC/Amethyst-Android 提供了 Android JavaSE 启动器桥接方向上的重要工程基础和参考实现。
  • bwwq/ModTheSpire 提供了本项目当前使用的 ModTheSpire 变体。
  • 所有为 Slay the Spire 模组生态、启动器工具链、问题排查和公开讨论做出贡献的开发者与社区成员。

About

A modded Slay the Spire experience on Android.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors