Issue #952 - Added hibernate and resume run
#952
Adds:
- Hibernating (saving) a paused run to a .lsr (LiveSplit Run) file that is formatted in XML
- Loading from a .lsr as long as the timer isn't running. After loading the run, the timer is still paused, it doesn't immediately resume.
- Appropriate right click menu buttons (under "Controls") and hotkey settings (unbound by default)
Notes:
- Disabled if autosplitter is active
- Exception handling might be a little spotty
- Possible confusion in method/variable naming, because while the word "run" is usually used to mean a specific speedrun, in the code the
Runclass is used to store all of the past runs, metadata, game name, category, etc. For example, the newTimerModel.LoadRun()isn't used to load from an entireRunclass, just some specific variables.
Maintainers, this feature has been requested several times in issues, so why has it been ignored/overlooked?
Yeah I'd prefer it as well if we don't have a new file format for this.
I agree that in-progress runs should be hibernated into the splits file instead of a separate .lsr, but I'm not sure that's possible without making changes to livesplit-core, since RunFactory relies on the extern Run_parse. And since modifying livesplit-core is probably the proper way to go about this, most of what I've written here seems to be the wrong approach. (Maybe I'll see if I can make those changes to livesplit-core, but I'm pretty unfamiliar with Rust.)
@goodtrailer I'm really eager to get this feature merged into the main project. I've been using your code for a few days (and fixed one issue related the date/time format, because I'm in Australia). I was just wondering if you're planning on making the suggested changes to this pull request? If not, I'd be happy to make the changes myself, and put up a new pull request.
@benshemmeld I was planning on looking into livesplit-core when I found the time, but if you do find a way to make the code save to the splits file or want to implement the other suggested changes feel free to do so, since I'm fairly busy for the time being.
Hey, I had a question. Is there a way to use this as i could really use this in my streams the few upcoming weeks
I am just wondering if it's possible to just automate the process of setting "the timer start at" the current time? Because that's how I hibernate my run manually. It would be very convenient if it's all in one button so that I don't have to type all the numbers again.
I am just wondering if it's possible to just automate the process of setting "the timer start at" the current time? Because that's how I hibernate my run manually. It would be very convenient if it's all in one button so that I don't have to type all the numbers again.
yeah also this doesnt work with splits
What a pity.
From: daanbom @.> Sent: Friday, March 26, 2021 12:24 PM To: LiveSplit/LiveSplit @.> Cc: shane1595042264 @.>; Comment @.> Subject: Re: [LiveSplit/LiveSplit] Issue #952 - Added hibernate and resume run (#1774)
I am just wondering if it's possible to just automate the process of setting "the timer start at" the current time? Because that's how I hibernate my run manually. It would be very convenient if it's all in one button so that I don't have to type all the numbers again.
yeah also this doesnt work with splits
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/LiveSplit/LiveSplit/pull/1774#issuecomment-808347274 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AOW2F6IWLLKAB5D2YGWI3ALTFSYIXANCNFSM4MMDRP7Q . https://github.com/notifications/beacon/AOW2F6MDPHSQTGJSJT66O7DTFSYIXA5CNFSM4MMDRP72YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOGAXGNCQ.gif