Skip to content

Commit 3d0b289

Browse files
committed
feat: allow more control over tas raw autosaving
1 parent cbb5b35 commit 3d0b289

2 files changed

Lines changed: 6 additions & 3 deletions

File tree

docs/cvars.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -607,7 +607,7 @@
607607
|sar_sum_result|cmd|sar_sum_result - prints result of summary|
608608
|sar_sum_stop|cmd|sar_sum_stop - stops summary counter|
609609
|sar_tas_advance|cmd|sar_tas_advance - advances TAS playback by one tick|
610-
|sar_tas_autosave_raw|1|Enables automatic saving of raw, processed TAS scripts.|
610+
|sar_tas_autosave_raw|1|Enables automatic saving of raw TAS scripts after successful TAS playback.<br>If set to 2, the raw script will also autosave when playback is manually interrupted.|
611611
|sar_tas_check_disable|0|Globally disable the 'check' TAS tool.|
612612
|sar_tas_check_max_replays|15|Maximum replays for the 'check' TAS tool until it gives up.|
613613
|sar_tas_debug|0|Debug TAS information. 0 - none, 1 - basic, 2 - all.|

src/Features/Tas/TasPlayer.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,10 @@ Variable sar_tas_dump_usercmd("sar_tas_dump_usercmd", "0", "Dump TAS-generated u
2424
Variable sar_tas_dump_player_info("sar_tas_dump_player_info", "0", "Dump player info for each tick of TAS playback to a file.\n");
2525
Variable sar_tas_tools_enabled("sar_tas_tools_enabled", "1", "Enables tool processing for TAS script making.\n");
2626
Variable sar_tas_tools_force("sar_tas_tools_force", "0", "Force tool playback for TAS scripts; primarily for debugging.\n");
27-
Variable sar_tas_autosave_raw("sar_tas_autosave_raw", "1", "Enables automatic saving of raw, processed TAS scripts.\n");
27+
Variable sar_tas_autosave_raw("sar_tas_autosave_raw", "1", 0, 2,
28+
"Enables automatic saving of raw TAS scripts after successful TAS playback.\n"
29+
"If set to 2, the raw script will also autosave when playback is manually interrupted.\n"
30+
);
2831
Variable sar_tas_pauseat("sar_tas_pauseat", "0", 0, "Pauses the TAS playback on specified tick.\n");
2932
Variable sar_tas_skipto("sar_tas_skipto", "0", 0, "Fast-forwards the TAS playback until given playback tick.\n");
3033
Variable sar_tas_playback_rate("sar_tas_playback_rate", "1.0", 0.02, "The rate at which to play back TAS scripts.\n");
@@ -276,7 +279,7 @@ void TasPlayer::Stop(bool interrupted) {
276279
currentTick
277280
);
278281

279-
if (sar_tas_autosave_raw.GetBool()) {
282+
if (sar_tas_autosave_raw.GetBool() && (!interrupted || sar_tas_autosave_raw.GetInt() >= 2)) {
280283
SaveProcessedFramebulks();
281284
}
282285

0 commit comments

Comments
 (0)