Releases: Torch1230/CombatSolver
Releases · Torch1230/CombatSolver
Release list
v0.43.0
CombatSolver 0.43.0
本日志汇总自 0.42.0 发布以来的改动。
简体中文
- 全自动和自动计算现在可以分别控制。即使关闭自动计算,只要开启全自动,求解器仍会在后续回合继续执行可用路线;路线与当前战况不符时才重新计算。
- 新增“冻结路线”:展开面板和小窗都能冻结当前路线,暂停自动重算和全自动接管。之后的回合如果仍与原路线一致,可以继续查看后续安排;如果战况已变化,旧路线会标为过期,仅供参考,不会被采用或执行。点击“重新计算”即可解除冻结并从当前战况规划新路线。关闭自动计算也不会再让已算好的路线仅因进入下一回合就消失。
- 改善回合开始选牌与路线续用。按路线手动选牌后可以继续使用原路线;选择不同的牌则会按实际战况重新规划。“执行本回合”遇到回合开始的原生选牌页面时,也可以接管计划选择并继续执行,不会因此自动开启全自动。
- 搜索过程中展示的候选世界线现在会显示已确定的回合开始选牌,包括能力和遗物触发的选择,不必等到最终路线出炉才看到。
- 小窗在路线可用时可以直接“采用当前路线”;“执行本回合”仍是独立操作。药水、成长、遗物子面板各自增加收起按钮。
- 战损摘要恢复紧凑显示。累计扣血与回血分别计算:持续回血跨回合发生后,路线的总回血预估不会仅因进入下一回合而减少;已发生和预计扣血也不会被回血冲抵。等待回合开始选牌时,摘要会按当前实际战况更新。
- 不支持 NoGC 的手机平台会将该选项标为不可用,搜索仍按常规方式进行;这不代表已全面适配手机端。
English
- Auto-play and automatic calculation can now be controlled separately. With auto-play enabled, the solver can continue a valid route on later turns even when automatic calculation is off; it recalculates only when the route no longer matches the combat state.
- Added “Freeze route” to both the expanded panel and compact window. Freezing pauses automatic recalculation and auto-play takeover while preserving the route. A matching route remains available on later turns; an outdated route stays visible for reference but cannot be adopted or executed. “Recalculate” unfreezes the route and plans from the current combat state. Turning off automatic calculation no longer clears a route merely because a new turn begins.
- Improved turn-start choices and route continuation. Manually making the planned choice can continue the existing route; choosing a different card replans from the actual state. “Play turn” can take over a planned choice on the game's native turn-start choice screen without enabling auto-play.
- Live candidate worldlines now show resolved turn-start card choices, including choices triggered by powers and relics, before the final route is selected.
- The compact window can “Use candidate” when a route is available; “Play turn” remains a separate action. Potion, growth, and relic panels each have their own collapse button.
- Restored the compact damage summary. Damage taken and healing are tracked separately: recurring healing no longer makes the route's total projected healing shrink merely because a turn passed, and healing does not cancel out damage-taken figures. The summary also uses the current combat state while waiting for turn-start choices.
- On mobile platforms without NoGC support, the option is marked unavailable and searches continue normally; this does not imply full mobile compatibility.
v0.42.0
CombatSolver 0.42.0
本日志汇总自 0.41.0 发布以来的改动。
简体中文
- 新增可选设置“预知战后药水奖励”,默认关闭。开启后,求解器会预估战后是否掉落药水;药水栏已满时,会把可能补回的药水计入用药取舍。无法确定的奖励会显示为未知,不会当作确定掉落。
- 路线摘要现在分开显示本场已经使用的药水、后续路线还要使用的药水,以及开启预测时的战后掉落结果。跨回合续用路线时,这些信息会随实际用药进度更新。
- 修复金斧、电流相生、扯碎、亡魂牵引、谋杀和超质量体依赖整场历史计数时,搜索可能把不同路线误判为相同状态的问题。本次修复针对搜索开始时已在牌组中的这些牌;战斗中途生成的同类牌,以及搜索开始时已在消耗堆、之后又被回收的牌,仍不在修复范围内。
- 减少相关战斗中反复生成卡牌时的重复目录查询,并避免为未选中的路线提前构造跨回合续用信息。具体耗时改善取决于牌组和战斗,不代表所有战斗都会同幅提速。
- 改善内存余量不足时的搜索处理;特别长的搜索会限制持续增长的历史状态记录。达到限制后仍继续搜索,但最终路线可能与旧版不同。此项尚未做广泛整场质量或可见游戏性能对照。
感谢 時穂(@s1f102500012) 贡献药水奖励预测 #109、代码维护 #111 / #112,以及整场历史状态修复 #113。感谢 洛天琉璃依(@ltlly) 贡献搜索性能与内存改进 #114;其中先行接入的改动另有整合记录 #115。
English
- Added an optional “Foresee post-combat potion reward” setting, off by default. When enabled, the solver forecasts whether a potion will drop after combat and accounts for a possible replacement when the potion belt is full. Rewards it cannot determine remain unknown rather than being treated as guaranteed drops.
- Route summaries now distinguish potions already used in this combat, potions still planned for the route, and the forecast reward when enabled. These details advance with actual potion use when a route continues into later turns.
- Fixed search states with different combat-wide histories being merged when Gold Axe, Voltaic, Tear Asunder, Pull From Below, Murder, or Supermassive depends on those counts. This fix covers these cards when they are in the deck zones at the start of the search. Cards generated later in combat, or already Exhausted at the search root and recovered later, remain outside its scope.
- Reduced repeated card-catalog work in relevant card-generation paths and delayed continuation data creation until a route is selected. The effect on search time depends on the deck and encounter; it is not a blanket speedup claim.
- Improved behavior under low memory headroom and limited the growth of retained search history in exceptionally long searches. Search continues after the limit is reached, but the selected route may differ from older versions. Broad full-combat quality and visible-game performance comparisons have not been completed for this limit.
Thanks to @s1f102500012 for potion reward forecasting #109, maintenance work #111 / #112, and the combat-history state fix #113. Thanks to @ltlly for search performance and memory work #114; an earlier integration of part of that work is also recorded in #115.
v0.41.0
CombatSolver 0.41.0
简体中文
- 求解器现在会为能力牌保留专门的完整战斗搜索路线。需要先支付能量或承受少量即时战损、后续回合才产生收益的路线,不再因为开牌当回合的伤害或格挡较低就过早被剪掉;具备合理兑现条件的路线会继续计算到战斗结束,再按最终战损决定是否采用。
- 新增覆盖铁甲战士、静默猎手、故障机器人、储君、亡灵契约师和无色卡池的统一能力牌估值框架,共登记 104 张单人能力牌。每张牌可以保留自己的启动条件和收益判断,多人专属能力牌不参与单人求解。
- 能力牌不再只按卡面数字估值。求解器会综合考虑费用、剩余回合、实际触发次数、格挡阈值与省下的能量、后续攻击、抽弃牌、保留与手牌上限、小刀、毒、力量与消耗、球与集中、星能、灾厄、召唤物、敌人数及延迟收益等因素。
- 对于强力但有副作用或启动要求的能力,求解器会同时衡量启动时机与后续代价;对于依赖特定牌、资源或触发次数的能力,只计算当前路线真正能够兑现的部分,避免把无法打出的牌和无法触发的收益提前算满。
- 能力牌路线仍需真实支付费用、执行抽牌与随机结果,并承担药水消耗和战损。只有完整获胜且最终结果更好的路线才能替换原路线;没有收益、启动过晚或导致死亡的路线仍会被淘汰。
- 当前版本优先解决“能力路线没有被算到底”的问题,部分复杂能力仍使用保守的首阶段模型。战斗开始时完全没有已登记能力牌、之后才由其他效果临时生成能力牌的情况,目前仍主要依赖普通搜索和药水搜索,后续会继续逐卡完善。
English
- The solver now preserves dedicated full-combat search routes for Power cards. Setup lines that pay energy or accept a small immediate loss for later-turn value are no longer pruned solely because their opening damage or Block is lower. Credible Power routes are searched through the combat and compared by their final HP loss.
- A unified valuation framework now covers 104 single-player Powers across Ironclad, Silent, Defect, Regent, Necrobinder, and Colorless pools. Each card can keep its own setup requirements and payoff rules, while multiplayer-only Powers remain outside single-player solving.
- Power valuation is no longer limited to printed numbers. It can account for cost, remaining turns, reachable triggers, Block thresholds and saved energy, follow-up attacks, draw and discard, Retain and hand limits, Shivs, poison, Strength and Exhaust, Orbs and Focus, Stars, Doom, summons, enemy count, and delayed value.
- Powerful cards with drawbacks or setup requirements are evaluated together with their timing and future cost. Effects that depend on specific cards, resources, or trigger counts only receive credit for the value the current route can actually realize.
- Every Power route still pays real costs, executes real draw and random outcomes, and remains subject to potion use and HP loss. Only a complete winning route with a better final result can replace the incumbent; late, unproductive, or fatal setup lines are still rejected.
- This version primarily addresses Power routes that were never searched deeply enough. Some complex Powers still use conservative first-stage models. Powers generated later in combat, when no registered Power existed in the starting card zones, continue to rely mainly on normal and potion search and will receive further card-by-card refinement.
v0.40.2
CombatSolver 0.40.2
简体中文
- 本次更新最重要的性能优化来自 ltlly 提交的 PR #106:大幅减少卡牌变形路线中的重复计算,让复杂长线搜索明显更快。
- 在频繁触发卡牌变形的重型战斗中,计算速度最高可达原来的约 3–4 倍,同时显著减少长时间计算产生的临时内存分配。实际收益取决于牌组和战斗;较少涉及卡牌变形的战斗变化不大。卡牌生成规则、随机结果和路线选择规则保持不变。
- 修正搜索进度条在计算开始后很快接近满格、随后长时间停在末端的问题。进度现在按整次计算的时间预算平稳推进,并在最终候选复核完成前保留明确余量。
- “多策略路线搜索(实验)”对新安装保持默认关闭,升级不会改动玩家已有的开关选择。常规搜索结果预计损失至少 8 HP 时,求解器会提示可以在“设置 > 性能”中尝试开启;这条提示可以永久隐藏。性能预设建议同样只在预计损失至少 8 HP 时显示。
- 夸克网盘安装包不再内置 RitsuLib。使用夸克包安装时,请按依赖列表单独安装 RitsuLib;Steam 创意工坊与 GitHub 安装包保持原有依赖方式。
- 特别感谢 ltlly 主动提交 PR #106,并完成这项对复杂长线战斗影响显著的性能优化。
English
- The headline performance improvement in this update comes from ltlly's PR #106, which eliminates a large amount of repeated work in card-transformation routes and makes complex, long-running searches substantially faster.
- In heavy combats that repeatedly transform cards, calculation speed can reach roughly 3–4× the previous level at the high end, with substantially less temporary allocation during long searches. Gains depend on the deck and encounter; fights that rarely use card transformation see little change. Card-generation rules, random outcomes, and route-selection rules remain unchanged.
- Fixed the search progress bar filling almost immediately and then appearing stuck near the end. Progress now advances against the budget for the whole calculation and keeps clear room until final candidate review is complete.
- “Multi-strategy Route Search (Experimental)” remains disabled by default for new installations, and upgrading does not change the player's existing choice. When the standard search projects at least 8 HP loss, the solver suggests trying it under Settings > Performance. This notice can be dismissed permanently. The performance-preset suggestion now uses the same threshold.
- The Quark Drive package no longer bundles RitsuLib. Install RitsuLib separately when using the Quark package. Steam Workshop and GitHub packages keep their existing dependency flow.
- Special thanks to ltlly for submitting PR #106 and delivering this major performance improvement for complex, long-running combats.
v0.40.1
CombatSolver 0.40.1
简体中文
- 紧急修复开启“多策略路线搜索(实验)”后,烤手套、回合开始能力等准备选牌偶尔失败,导致当前回合无法生成路线的问题。求解器现在会完整保留准备选牌形成的手牌和战斗状态,并正确结束已经完成的准备分支。
English
- Emergency fix for turn-setup card choices occasionally failing with “Multi-strategy Route Search (Experimental)” enabled, which could prevent a route from being generated for the current turn. The solver now preserves the hand and combat state produced by setup choices and correctly finalizes setup branches that have already ended.
v0.40.0
CombatSolver 0.40.0
简体中文
- “多宽度路线精炼(实验)”现在默认开启,并新增两种不同的路线筛选方式。求解器仍会先给出第一条可用路线,只有剩余时间、节点和内存充足时才继续精炼,所有搜索共用当前配置的总预算。由 0.39.0 或更早版本升级时会统一开启一次,之后仍可在性能设置中关闭。
- 各性能档的默认节点上限提高到原来的 5 倍:低档 60,000、中档 120,000、高档 250,000、极高 500,000。自定义配置不再限制节点上限,仍需填写至少 100 的整数。
- 新增默认关闭的“多策略路线搜索(实验)”。启用后,求解器会先用一部分现有预算探索结构不同的打法,再用剩余预算进行常规搜索,并继续按当前的战损、成长、药水和复活规则选择最终路线。该功能不会突破设置的时间和节点上限,但可能改变搜索耗时和最终结果。战斗界面会显示手动开启引导,点击后可永久隐藏。
- 检测到皮皮极速(SpeedX)时的兼容性提醒现在可以点击并永久隐藏。
English
- “Multi-width Route Refinement (Experimental)” is now enabled by default and includes two additional route-selection variants. The solver still publishes the first usable route before refining, and only continues when sufficient time, node, and memory budget remains. All searches share the configured total budget. Upgrading from 0.39.0 or earlier enables refinement once; it can still be disabled afterward in Performance settings.
- Default node limits for every performance preset have been increased fivefold: 60,000 for Low, 120,000 for Medium, 250,000 for High, and 500,000 for Very High. Custom profiles no longer impose an upper node limit and still require an integer of at least 100.
- Added an optional “Multi-strategy Route Search (Experimental)” setting, disabled by default. When enabled, the solver spends part of the existing budget exploring structurally different approaches, then uses the remaining budget for the regular search. Final routes still follow the current HP-loss, growth, potion, and revival rules. This feature stays within the configured time and node limits, but may change search time and the selected result. An in-combat banner explains where to enable it and can be dismissed permanently.
- The SpeedX compatibility warning can now be clicked and dismissed permanently.
v0.39.0
CombatSolver 0.39.0
简体中文
- 新增“多宽度路线精炼(实验)”开关,默认关闭。启用后,求解器会先按当前性能预设正常搜索;首轮较快完成且仍有充足资源时,再尝试两种不同的搜索宽度并选择更优路线。首条路线仍会正常显示,精炼过程不会突破当前设置的时间和节点上限。
- 适配 RitsuLib 0.6.0,前置 Mod 需要同步更新。修复新版本下 CombatSolver 程序集初始化失败,以及瞬间模式出牌失效或卡住的问题;生存者的弃牌选择现在能够正常完成。
- 优化复杂选牌搜索和路线界面重复刷新时的重复工作,搜索预算、动作顺序和路线选择规则保持不变。
- 修复 BaseLib 与日志系统的兼容性问题。
English
- Added an optional “Multi-width Route Refinement (Experimental)” setting, disabled by default. When enabled, the solver first runs the selected performance preset normally. If the initial search finishes early with sufficient resources remaining, it tries two additional search widths and keeps the better route. The first route remains available immediately, and refinement stays within the configured time and node limits.
- Added support for RitsuLib 0.6.0, which is now required. Fixed CombatSolver assembly initialization failures with the new version, as well as cards failing to play or getting stuck in Instant mode. Survivor discard choices now complete normally.
- Reduced repeated work during complex card-choice searches and route UI refreshes without changing search budgets, action order, or route-selection rules.
- Fixed a compatibility issue between BaseLib and the logging system.
v0.38.6
CombatSolver 0.38.6
简体中文
- 优化智能使用格挡药水的策略。已有完整胜利路线中,如果某回合预计损失至少 9 点生命,求解器会尝试在敌人行动前直接加入格挡药水;确认仍能获胜、实际至少减少 9 点战损且不会额外消耗复活后,直接采用修改后的路线,不再为格挡药水重新展开搜索。
English
- Improved Smart handling for Block Potion. If an existing complete winning route would lose at least 9 HP in a turn, the solver now tries inserting a Block Potion before the enemy acts. The adjusted route is used directly when it still wins, saves at least 9 HP, and consumes no additional revival, without starting another Block Potion search.
v0.38.5
CombatSolver 0.38.5
简体中文
- 新增第三幕无伤 Boss 录像对局收集。开启“在线统计”后,标准单人模式、进阶 10、仅加载 CombatSolver 与 RitsuLib 的第三幕 Boss 战中,求解器会自动上传首次算出的无伤完整胜利路线;关闭后会停止收集并清理待上传内容。
- 录像包包含开战状态、完整卡组、遗物、药水、Boss、结束回合和预计算路线,可供录像工具直接还原临时对局,无需在本地重新搜索。
- 新增预计算录像路线导入支持。导入后可以正常查看、执行和全自动运行路线;玩家操作偏离路线时会停止执行,不会自动重新计算,也不会覆盖正式存档或跑局统计。
- 录像浏览悬浮窗属于独立私用 Mod,不包含在公开 CombatSolver 安装包中。本版公开包提供对局收集和精确导入接口。
English
- Added opt-in collection for flawless Act 3 Boss routes. With Online Statistics enabled, the solver uploads the first complete no-damage victory route found in an Ascension 10 standard single-player Act 3 Boss fight when only CombatSolver and RitsuLib are loaded. Disabling Online Statistics stops collection and clears pending uploads.
- Showcase bundles include the opening state, full deck, relics, potions, Boss, ending turn, and the precomputed route, allowing the recording tool to restore a temporary fight without searching again locally.
- Added precomputed showcase route import. Imported routes can be reviewed, executed, or run with full automation. If player actions diverge from the route, execution stops without recalculating, and the temporary run does not overwrite normal saves or run statistics.
- The floating showcase browser is a separate private mod and is not included in the public CombatSolver package. This release provides the collection and exact-import interfaces it uses.
v0.38.4
CombatSolver 0.38.4
简体中文
- 修复求解器低估“孤注一掷”风险的问题。效果生效后,受到未被格挡的攻击伤害会按游戏规则直接死亡;全额格挡仍然安全。
- 优化瓶中精灵和蜥蜴尾巴的路线选择。求解器不再把复活后的生命视为免费回血;只要存在不消耗一次性复活资源的胜利路线,就会优先保留它们。确实没有其他生还路线时,仍会正常使用复活。
English
- Fixed the solver underestimating the risk of The Gambit. Once its effect is active, taking unblocked attack damage now correctly counts as immediate death, while fully blocked hits remain safe.
- Improved route selection for Fairy in a Bottle and Lizard Tail. Revival HP is no longer treated as free healing, and any winning route that preserves these one-shot resources is preferred. The solver will still consume them when no other survivable route exists.