路径建议

路径建议

《杀戮尖塔2》的一个模组,能够建议最佳路线,并在地图界面上用金色/红色高亮显示。

游戏玩法

RouteSuggest - 杀戮尖塔2 模组

简体中文 | English

截图

一个为《杀戮尖塔2》设计的模组,可在地图上推荐最优路径,并用金色/红色高亮显示。

支持的游戏版本: v0.107.1

功能特色

  • 双路径推荐:显示两条最优路线——安全路径与激进路径
  • 视觉高亮
    • 金色:安全路径(风险最小化)
    • 红色:激进路径(优先战斗获取奖励)
  • 智能评分:为安全与激进玩法设置不同权重
  • 专家评分:可选的相邻奖励机制,奖励位置模式(例如:休息点后接精英怪)
  • 图形界面配置:通过 ModConfig 实现完整游戏内配置(可选)
  • 手动配置:面向高级用户的直接 JSON 配置

通过 Steam 创意工坊安装

订阅:Route Suggest

手动安装

  1. GitHub releasesNexus mods 下载最新版本
  2. 将模组文件解压至杀戮尖塔2的 mods 文件夹(mods 文件夹应与游戏可执行文件在同一目录下):
    • WindowsC:\Program Files (x86)\Steam\steamapps\common\Slay the Spire 2\mods\
    • macOS~/Library/Application Support/Steam/steamapps/common/Slay the Spire 2/SlayTheSpire2.app/Contents/MacOS/mods/
    • Linux~/.steam/steam/steamapps/common/Slay the Spire 2/mods
  3. 启动杀戮尖塔2——模组将自动加载

从源码构建

前置条件

  • .NET 9.0 SDK 或更高版本
  • 支持 Mono 的 Godot 4.5.1
  • 杀戮尖塔2(用于引用 sts2.dll)

构建步骤

# 克隆仓库
git clone https://github.com/jiegec/STS2RouteSuggest
cd RouteSuggest

# 构建模组
./build.sh

# 安装模组
./install.sh

工作原理

该模组使用不同的评分系统计算两条最优路径:

安全路径(金色)

最小化遭遇战,优先考虑安全性:

房间类型 评分 原因
休息点 +1 回复生命和升级卡牌
宝箱房 +1 免费遗物
商店 +1 购买卡牌、遗物和药水
怪物房 -1 避免战斗
精英怪 -3 避免高难度遭遇
Boss 0 最终目的地

激进路径(红色)

优先考虑战斗奖励和未知遭遇:

房间类型 评分 原因
休息点 +1 回复生命和升级卡牌
宝箱房 +1 免费遗物
商店 +1 购买卡牌、遗物和药水
怪物房 +2 金币和卡牌奖励
精英怪 +3 遗物和更优奖励
未知 +2 可能遭遇战斗
Boss 0 最终目的地

当两条路径共享同一条边时,该边显示为金色。

专家评分(相邻奖励)

每条路径可选择性开启专家模式,在基础权重之上应用位置加成。专家模式是一个全局开关,影响所有路径。这些加成奖励特定的节点序列:

模式 描述 默认值
休息点 -> 精英怪 精英怪前直接为休息点 0
精英怪 -> 休息点 精英怪后直接为休息点 0
宝箱房 -> 精英怪 精英怪前直接为宝箱房 0
休息点 -> 任意 -> 精英怪 精英怪前两步为休息点(中间间隔一个节点) 0
精英怪 -> 任意 -> 休息点 休息点前两步为精英怪(中间间隔一个节点) 0
通往 Boss 有 0 个商店 通往 Boss 的路径包含 0 个商店(不包括当前节点) 0
通往 Boss 有 1 个商店 通往 Boss 的路径恰好包含 1 个商店(不包括当前节点) 0
通往 Boss 有 2 个商店 通往 Boss 的路径恰好包含 2 个商店(不包括当前节点) 0

所有加成默认为 0(禁用)。当专家模式关闭时,评分与之前一致。该开关和加成可通过 ModConfig GUI 或 JSON 进行配置。

配置

图形界面设置(推荐)

RouteSuggest 可选地与 ModConfig 集成。当 ModConfig 安装后,RouteSuggest 出现在游戏的 设置 > 模组 菜单中。如果未安装 ModConfig,模组仍可正常运行,但您需要手动编辑 JSON 配置文件(见下文)。

通过 ModConfig GUI,您可以:

  • 通用设置
    • 高亮类型:选择高亮一条最优路径或所有最优评分路径
      • 一条:从最优路径中选出一条高亮显示
      • 全部:高亮所有并列最优评分的路径
    • 启用专家评分:全局开关,启用相邻奖励(影响所有路径)
  • 配置每条路径
    • 启用:开关以启用/禁用此路径(禁用的路径不会计算或显示)
    • 名称:路径的标识符
    • 颜色:输入十六进制颜色代码(例如:#FFD700 为金色,#FF0000 为红色)
    • 优先级:滑块设置渲染优先级(数值越高,路径重叠时显示在上层)
    • 评分权重:各房间类型的滑块
      • 正数 = 偏好此房间类型
      • 负数 = 避免此房间类型
      • 零 = 中立
    • 专家评分:位置模式(休息点 -> 精英怪等)和商店数量加成的滑块
  • 添加新路径:滑块用于添加新路径(滑块滑至 1)
  • 移除路径:每条路径都有一个滑块用于移除(0=保留,1=移除)
  • 重置为默认:滑块将所有路径重置为默认配置
  • 更改将自动保存 至配置文件位置(详见下文)

手动 JSON 配置

或者,您可以通过手动编辑 RouteSuggestConfig.json 来自定义路径类型:

  • 现有用户:如果您已有位于 mods/RouteSuggestConfig.json 的配置文件,它将持续使用(无需迁移)
  • 新用户:配置文件将保存在 RouteSuggest.dll 旁边(在 mods 文件夹中递归查找)。如果找不到 DLL,则回退至 mods/RouteSuggestConfig.json
  • 注意:配置文件保存至读取时所在的位置。模组不会自动将配置文件迁移至其他位置。
{
  "schema_version": 5,
  "highlight_type": "One",
  "expert_mode": false,
  "path_configs": [
    {
      "name": "安全",
      "color": "#FFD700",
      "priority": 100,
      "enabled": true,
      "rest_before_elite_bonus": 0,
      "elite_before_rest_bonus": 0,
      "treasure_before_elite_bonus": 0,
      "rest_two_before_elite_bonus": 0,
      "elite_two_before_rest_bonus": 0,
      "zero_shops_bonus": 0,
      "one_shop_bonus": 0,
      "two_shops_bonus": 0,
      "scoring_weights": {
        "RestSite": 1,
        "Treasure": 1,
        "Shop": 1,
        "Monster": -1,
        "Elite": -2
      }
    },
    {
      "name": "激进",
      "color": "#FF0000",
      "priority": 50,
      "enabled": true,
      "rest_before_elite_bonus": 0,
      "elite_before_rest_bonus": 0,
      "treasure_before_elite_bonus": 0,
      "rest_two_before_elite_bonus": 0,
      "elite_two_before_rest_bonus": 0,
      "zero_shops_bonus": 0,
      "one_shop_bonus": 0,
      "two_shops_bonus": 0,
      "scoring_weights": {
        "RestSite": 1,
        "Treasure": 1,
        "Shop": 1,
        "Monster": 1,
        "Elite": 2,
        "Unknown": 1
      }
    }
  ]
}
  • schema_version:配置文件格式版本(当前版本为 5)
  • highlight_type:"One"(选出一条最优路径)或 "All"(高亮所有最优评分路径)
  • expert_mode:设置为 true 启用相邻奖励(影响所有路径配置)
  • name:路径的标识符(例如 "安全","激进")
  • enabled:设置为 false 禁用某条路径(禁用的路径不会计算或显示)
  • color:十六进制颜色代码(例如:#FFD700 为金色,#FF0000 为红色)
  • priority:数值越高,路径重叠时渲染在上层
  • scoring_weights:各房间类型的整数值(正数 = 偏好,负数 = 避免)
  • rest_before_elite_bonus:休息点后直接紧跟精英怪的加成
  • elite_before_rest_bonus:精英怪后直接紧跟休息点的加成
  • treasure_before_elite_bonus:宝箱房后直接紧跟精英怪的加成
  • rest_two_before_elite_bonus:精英怪前两步为休息点(中间间隔一个节点)的加成
  • elite_two_before_rest_bonus:休息点前两步为精英怪(中间间隔一个节点)的加成
  • zero_shops_bonus:通往 Boss 路径上有 0 个商店的加成(不包括当前节点)
  • one_shop_bonus:通往 Boss 路径上恰好有 1 个商店的加成(不包括当前节点)
  • two_shops_bonus:通往 Boss 路径上恰好有 2 个商店的加成(不包括当前节点)

可用房间类型:RestSiteTreasureShopMonsterEliteUnknownBoss

如果配置文件缺失或无效,将使用默认路径配置。

社区配置

用户已在 Nexus Mods 帖子页面 分享了他们的自定义配置。查看这些配置以获取灵感或寻找符合您玩法的配置。

更新日志

v1.13.0

  • 改进了 ModConfig 的检测

v1.12.0

  • 当 RouteSuggest.dll 缺失时,添加了 RouteSuggestConfig.json 路径回退
  • 在 Steam 创意工坊上发布
  • 在游戏 v0.107.1 上测试

v1.11.0

  • 修复了配置未正确保存的错误,感谢 CheezyBallz

v1.10.0

  • 在专家评分模式中添加了商店数量加成(schema 版本 5)
    • 3 个新的加成滑块:通往 Boss 有 0 个商店、通往 Boss 有 1 个商店、通往 Boss 有 2 个商店
    • 加成基于通往 Boss 路径上的商店数量计算,排除当前地图节点
    • 在 ModConfig GUI 和 JSON 配置中均可使用
    • 所有加成默认值为 0

v1.9.0

  • 在游戏 beta v0.99.1 和 v0.102.0 上测试
  • 添加了带有相邻奖励的专家评分模式(schema 版本 4)
    • 全局开关启用专家评分(影响所有路径)
    • 5 个相邻加成滑块:休息点->精英怪、精英怪->休息点、宝箱房->精英怪、休息点->任意->精英怪、精英怪->任意->休息点
    • 专家模式禁用时滑块隐藏
    • 在 ModConfig GUI 和 JSON 配置中均可使用
    • 所有加成默认值为 0,专家模式关闭时无影响
  • 模组现已集成 ModConfig v0.2.1 新增的按钮/颜色选择器控件,并在可用时使用它们,同时为旧版 ModConfig 提供回退支持

v1.8.0

  • 改进了 ModConfig UI:将滑块改为开关以简化配置
  • 为每条路径配置添加了启用/禁用选项
    • 禁用的路径不会在地图上计算或显示
    • 在 ModConfig GUI 和 JSON 配置中均可使用
  • 在游戏 beta v0.100.0 上测试

v1.7.0

  • affects_gameplay 设置为 false,因为此模组仅影响视觉,不改变游戏玩法

v1.6.0

  • 改进了配置文件路径解析
    • 基于用户反馈:当文件夹中有许多模组时,配置文件位于根级别会显得杂乱
    • 如果 mods/RouteSuggestConfig.json 存在,则继续使用(无需迁移)
    • 否则,递归查找 RouteSuggest.dll 并将配置文件保存在其旁边
    • 如果找不到 DLL,则回退至 mods/RouteSuggestConfig.json
    • 配置文件保存至读取时所在的位置(无自动迁移)

v1.5.0

  • 添加 HighlightType 选项,控制高亮显示的路径数量
    • 一条:从最优路径中选出一条
    • 全部:高亮所有拥有最优评分的路径
    • 在 ModConfig GUI 和 JSON 配置中均可使用

v1.4.0

  • 添加了与 ModConfig 的 GUI 设置集成,用于游戏内路径配置
    • 通过 GUI 配置名称、颜色(十六进制输入)、优先级和评分权重
    • 添加/移除自定义路径类型
    • 更改自动保存为 JSON
    • 暂时改用滑块而非按钮
    • 支持英文和简体中文的 I18n
  • 在游戏 beta v0.99.1 上测试

v1.3.0

  • 调整了安全/激进路径的默认权重
  • 通过 mods/RouteSuggestConfig.json 添加了可配置路径
  • 路径配置可自定义颜色、优先级和评分权重
  • 如果配置文件缺失或无效,则回退至默认设置

v1.2.0

  • 修复了进入新章节时的路径高亮问题

v1.1.0

  • 添加了双路径模式:安全路径(金色)和激进路径(红色)
  • 安全路径最小化战斗遭遇
  • 激进路径优先考虑精英怪(+2)、怪物房(+1)和未知房间(+1)
  • 重叠的边显示为金色

v1.0.0

  • 初始版本
  • 支持游戏版本 v0.98.3 和 v0.99