Race 7: Mischief Mile

This commit is contained in:
alterNERDtive 2022-08-26 16:43:01 +02:00
parent 1afd7ce8f5
commit bc59480ebd
Signed by: alterNERDtive
GPG key ID: 547787A4FE6533F1
5 changed files with 449 additions and 13 deletions

View file

@ -1,3 +1,9 @@
# 6.0 (2022-08-26)
* Support for race 7, Mischief Mile.
-----
# 5.0.1 (2022-07-03)
## Fixed

129
Mischief Mile.asl Normal file
View file

@ -0,0 +1,129 @@
// Defines the process to monitor. We are not reading anything from the games memory, so its empty.
// We still need it though, LiveSplit will only run the auto splitter if the corresponding process is present.
// See https://github.com/LiveSplit/LiveSplit.AutoSplitters/blob/master/README.md#state-descriptors
state("EliteDangerous64") {}
// Executes when LiveSplit (re-)loads the auto splitter. Does general setup tasks.
// See https://github.com/LiveSplit/LiveSplit.AutoSplitters/blob/master/README.md#script-startup
startup {
// Relevant journal entries
vars.journalReader = null;
vars.startingConditions = new List<System.Text.RegularExpressions.Regex>(2);
vars.startingConditions.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""Undocked"", ""StationName"":""Hooke Hub"", ""StationType"":""Ocellus"", ""MarketID"":3230060800(, ""Taxi"":(true|false), ""Multicrew"":(true|false))? \}"));
vars.startingConditions.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""Undocked"", ""StationName"":""Ocampo Station"", ""StationType"":""Coriolis"", ""MarketID"":3226909696(, ""Taxi"":(true|false), ""Multicrew"":(true|false))? \}"));
vars.journalEntries = new List<System.Text.RegularExpressions.Regex>(11);
vars.journalEntries.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""FSDJump""(, ""Taxi"":(true|false), ""Multicrew"":(true|false))?, ""StarSystem"":""NLTT 48288"", ""SystemAddress"":670149125569, .*\}"));
vars.journalEntries.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""FSDJump""(, ""Taxi"":(true|false), ""Multicrew"":(true|false))?, ""StarSystem"":""LHS 3719"", ""SystemAddress"":5069269312953, .*\}"));
vars.journalEntries.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""FSDJump""(, ""Taxi"":(true|false), ""Multicrew"":(true|false))?, ""StarSystem"":""Fuelum"", ""SystemAddress"":5031721931482, .*\}"));
vars.journalEntries.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""SupercruiseExit""(, ""Taxi"":(true|false), ""Multicrew"":(true|false))?, ""StarSystem"":""Fuelum"", ""SystemAddress"":5031721931482, ""Body"":""Wollheim Vision"", ""BodyID"":24, ""BodyType"":""Station"" \}"));
vars.journalEntries.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""Docked"", ""StationName"":""Wollheim Vision"", ""StationType"":""Coriolis""(, ""Taxi"":(true|false), ""Multicrew"":(true|false))?, ""StarSystem"":""Fuelum"", .*\}"));
vars.journalEntries.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""FSDJump""(, ""Taxi"":(true|false), ""Multicrew"":(true|false))?, ""StarSystem"":""Mirateje"", ""SystemAddress"":9429432931034, .*\}"));
vars.journalEntries.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""SupercruiseExit""(, ""Taxi"":(true|false), ""Multicrew"":(true|false))?, ""StarSystem"":""Mirateje"", ""SystemAddress"":9429432931034, ""Body"":""Ocampo Station"", ""BodyID"":40, ""BodyType"":""Station"" \}"));
vars.journalEntries.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""Docked"", ""StationName"":""Ocampo Station"", ""StationType"":""Coriolis""(, ""Taxi"":(true|false), ""Multicrew"":(true|false))?, ""StarSystem"":""Mirateje"", .*\}"));
vars.journalEntries.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""FSDJump""(, ""Taxi"":(true|false), ""Multicrew"":(true|false))?, ""StarSystem"":""Tepech"", ""SystemAddress"":11668218324393, .*\}"));
vars.journalEntries.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""SupercruiseExit""(, ""Taxi"":(true|false), ""Multicrew"":(true|false))?, ""StarSystem"":""Tepech"", ""SystemAddress"":11668218324393, ""Body"":""Hooke Hub"", ""BodyID"":38, ""BodyType"":""Station"" \}"));
vars.journalEntries.Add(
new System.Text.RegularExpressions.Regex(@"\{ ""timestamp"":""(?<timestamp>.*)"", ""event"":""Docked"", ""StationName"":""Hooke Hub"", ""StationType"":""Ocellus""(, ""Taxi"":(true|false), ""Multicrew"":(true|false))?, ""StarSystem"":""Tepech"", .*\}"));
// Journal file handling
vars.journalPath = Path.Combine(
Environment.GetFolderPath(Environment.SpecialFolder.UserProfile),
"Saved Games",
"Frontier Developments",
"Elite Dangerous"
);
vars.currentJournal = "none";
vars.updateJournalReader = (Action)delegate() {
FileInfo journalFile = new DirectoryInfo(vars.journalPath).GetFiles("journal.*.log").OrderByDescending(file => file.LastWriteTime).First();
print("Current journal file: " + vars.currentJournal + ", latest journal file: " + journalFile.Name);
if (journalFile.Name != vars.currentJournal) {
vars.journalReader = new StreamReader(new FileStream(journalFile.FullName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite));
vars.currentJournal = journalFile.Name;
}
};
vars.updateJournalReader();
vars.journalReader.ReadToEnd();
// Watch for new files
FileSystemWatcher journalWatcher = new FileSystemWatcher(vars.journalPath);
journalWatcher.Created += (object sender, FileSystemEventArgs eventArgs) => {
vars.updateJournalReader();
};
journalWatcher.EnableRaisingEvents = true;
}
// Executes when LiveSplit detects the game process (see “state” at the top of the file).
// In our case the journal and netlog files are unique to every execution of the game, so we need to prepare them here.
// We also need to check if file logging is enabled (the setting is not available in `startup`) and create/open our log file.
// See https://github.com/LiveSplit/LiveSplit.AutoSplitters/blob/master/README.md#script-initialization-game-start
init {
vars.updateJournalReader();
vars.journalReader.ReadToEnd();
}
// Executes as long as the game process is running, by default 60 times per second.
// Unless explicitly returning `false`, `start`, `split` and `reset` are executed right after.
// See https://github.com/LiveSplit/LiveSplit.AutoSplitters/blob/master/README.md#generic-update
update {
current.journalString = vars.journalReader.ReadToEnd();
}
// Executes every `update`. Starts the timer if the first journal event is detected.
// See https://github.com/LiveSplit/LiveSplit.AutoSplitters/blob/master/README.md#automatic-timer-start-1
start {
bool start = false;
if (!String.IsNullOrEmpty(current.journalString)) {
foreach (System.Text.RegularExpressions.Regex condition in vars.startingConditions) {
if (condition.Match(current.journalString).Success) {
start = true;
}
}
}
return start;
}
// Executes every `update`. Triggers a split if the journal event triggering the next split is detected.
// See https://github.com/LiveSplit/LiveSplit.AutoSplitters/blob/master/README.md#automatic-splits-1
split {
bool split = false;
if (!String.IsNullOrEmpty(current.journalString)) {
foreach (System.Text.RegularExpressions.Regex entry in vars.journalEntries) {
if (entry.Match(current.journalString).Success) {
split = true;
}
}
}
return split;
}
// Executes when the game process is shut down.
// In our case were going to close the files we opened in `init`.
// See https://github.com/LiveSplit/LiveSplit.AutoSplitters/blob/master/README.md#game-exit
exit {
vars.journalReader.Close();
}
// Executes when LiveScript shuts the auto splitter down, e.g. on reloading it.
// When reloading the splitter with the game running, LiveSplit does **not** execute `exit`, but it does execute `shutdown`.
// see https://github.com/LiveSplit/LiveSplit.AutoSplitters/blob/master/README.md#script-shutdown
shutdown {
if (vars.journalReader != null) {
vars.journalReader.Close();
}
}

211
Mischief Mile.lsl Normal file
View file

@ -0,0 +1,211 @@
<?xml version="1.0" encoding="UTF-8"?>
<Layout version="1.6.1">
<Mode>Vertical</Mode>
<X>51</X>
<Y>53</Y>
<VerticalWidth>286</VerticalWidth>
<VerticalHeight>386</VerticalHeight>
<HorizontalWidth>-1</HorizontalWidth>
<HorizontalHeight>-1</HorizontalHeight>
<Settings>
<TextColor>FFFFFFFF</TextColor>
<BackgroundColor>FF0F0F0F</BackgroundColor>
<BackgroundColor2>00000000</BackgroundColor2>
<ThinSeparatorsColor>03FFFFFF</ThinSeparatorsColor>
<SeparatorsColor>24FFFFFF</SeparatorsColor>
<PersonalBestColor>FF16A6FF</PersonalBestColor>
<AheadGainingTimeColor>FF00CC36</AheadGainingTimeColor>
<AheadLosingTimeColor>FF52CC73</AheadLosingTimeColor>
<BehindGainingTimeColor>FFCC5C52</BehindGainingTimeColor>
<BehindLosingTimeColor>FFCC1200</BehindLosingTimeColor>
<BestSegmentColor>FFD8AF1F</BestSegmentColor>
<UseRainbowColor>False</UseRainbowColor>
<NotRunningColor>FFACACAC</NotRunningColor>
<PausedColor>FF7A7A7A</PausedColor>
<TextOutlineColor>00000000</TextOutlineColor>
<ShadowsColor>80000000</ShadowsColor>
<TimesFont><![CDATA[AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABNTeXN0ZW0uRHJhd2luZy5Gb250BAAAAAROYW1lBFNpemUFU3R5bGUEVW5pdAEABAQLGFN5c3RlbS5EcmF3aW5nLkZvbnRTdHlsZQIAAAAbU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AgAAAAIAAAAGAwAAAAhPcmJpdHJvbgAAQEEF/P///xhTeXN0ZW0uRHJhd2luZy5Gb250U3R5bGUBAAAAB3ZhbHVlX18ACAIAAAABAAAABfv///8bU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AQAAAAd2YWx1ZV9fAAgCAAAAAwAAAAs=]]></TimesFont>
<TimerFont><![CDATA[AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABNTeXN0ZW0uRHJhd2luZy5Gb250BAAAAAROYW1lBFNpemUFU3R5bGUEVW5pdAEABAQLGFN5c3RlbS5EcmF3aW5nLkZvbnRTdHlsZQIAAAAbU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AgAAAAIAAAAGAwAAAA5DZW50dXJ5IEdvdGhpYwAAL0IF/P///xhTeXN0ZW0uRHJhd2luZy5Gb250U3R5bGUBAAAAB3ZhbHVlX18ACAIAAAABAAAABfv///8bU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AQAAAAd2YWx1ZV9fAAgCAAAAAgAAAAs=]]></TimerFont>
<TextFont><![CDATA[AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABNTeXN0ZW0uRHJhd2luZy5Gb250BAAAAAROYW1lBFNpemUFU3R5bGUEVW5pdAEABAQLGFN5c3RlbS5EcmF3aW5nLkZvbnRTdHlsZQIAAAAbU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AgAAAAIAAAAGAwAAAAhPcmJpdHJvbgAAQEEF/P///xhTeXN0ZW0uRHJhd2luZy5Gb250U3R5bGUBAAAAB3ZhbHVlX18ACAIAAAAAAAAABfv///8bU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AQAAAAd2YWx1ZV9fAAgCAAAAAwAAAAs=]]></TextFont>
<AlwaysOnTop>True</AlwaysOnTop>
<ShowBestSegments>True</ShowBestSegments>
<AntiAliasing>True</AntiAliasing>
<DropShadows>True</DropShadows>
<BackgroundType>SolidColor</BackgroundType>
<BackgroundImage />
<ImageOpacity>1</ImageOpacity>
<ImageBlur>0</ImageBlur>
<Opacity>1</Opacity>
<MousePassThroughWhileRunning>False</MousePassThroughWhileRunning>
</Settings>
<Components>
<Component>
<Path>LiveSplit.Title.dll</Path>
<Settings>
<Version>1.7.3</Version>
<ShowGameName>True</ShowGameName>
<ShowCategoryName>True</ShowCategoryName>
<ShowAttemptCount>False</ShowAttemptCount>
<ShowFinishedRunsCount>False</ShowFinishedRunsCount>
<OverrideTitleFont>False</OverrideTitleFont>
<OverrideTitleColor>False</OverrideTitleColor>
<TitleFont><![CDATA[AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABNTeXN0ZW0uRHJhd2luZy5Gb250BAAAAAROYW1lBFNpemUFU3R5bGUEVW5pdAEABAQLGFN5c3RlbS5EcmF3aW5nLkZvbnRTdHlsZQIAAAAbU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AgAAAAIAAAAGAwAAAAhTZWdvZSBVSQAAUEEF/P///xhTeXN0ZW0uRHJhd2luZy5Gb250U3R5bGUBAAAAB3ZhbHVlX18ACAIAAAAAAAAABfv///8bU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AQAAAAd2YWx1ZV9fAAgCAAAAAgAAAAs=]]></TitleFont>
<SingleLine>False</SingleLine>
<TitleColor>FFFFFFFF</TitleColor>
<BackgroundColor>FF2A2A2A</BackgroundColor>
<BackgroundColor2>FF131313</BackgroundColor2>
<BackgroundGradient>Vertical</BackgroundGradient>
<DisplayGameIcon>True</DisplayGameIcon>
<ShowRegion>False</ShowRegion>
<ShowPlatform>False</ShowPlatform>
<ShowVariables>True</ShowVariables>
<TextAlignment>0</TextAlignment>
</Settings>
</Component>
<Component>
<Path>LiveSplit.Text.dll</Path>
<Settings>
<Version>1.4</Version>
<TextColor>FFFFFFFF</TextColor>
<OverrideTextColor>False</OverrideTextColor>
<TimeColor>FFFFFFFF</TimeColor>
<OverrideTimeColor>False</OverrideTimeColor>
<BackgroundColor>00FFFFFF</BackgroundColor>
<BackgroundColor2>00FFFFFF</BackgroundColor2>
<BackgroundGradient>Plain</BackgroundGradient>
<Text1>https://git.alternerd.tv/8ball</Text1>
<Text2>
</Text2>
<Font1><![CDATA[AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABNTeXN0ZW0uRHJhd2luZy5Gb250BAAAAAROYW1lBFNpemUFU3R5bGUEVW5pdAEABAQLGFN5c3RlbS5EcmF3aW5nLkZvbnRTdHlsZQIAAAAbU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AgAAAAIAAAAGAwAAAAhTZWdvZSBVSQAAUEEF/P///xhTeXN0ZW0uRHJhd2luZy5Gb250U3R5bGUBAAAAB3ZhbHVlX18ACAIAAAAAAAAABfv///8bU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AQAAAAd2YWx1ZV9fAAgCAAAAAgAAAAs=]]></Font1>
<Font2><![CDATA[AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABNTeXN0ZW0uRHJhd2luZy5Gb250BAAAAAROYW1lBFNpemUFU3R5bGUEVW5pdAEABAQLGFN5c3RlbS5EcmF3aW5nLkZvbnRTdHlsZQIAAAAbU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AgAAAAIAAAAGAwAAAAhTZWdvZSBVSQAAUEEF/P///xhTeXN0ZW0uRHJhd2luZy5Gb250U3R5bGUBAAAAB3ZhbHVlX18ACAIAAAAAAAAABfv///8bU3lzdGVtLkRyYXdpbmcuR3JhcGhpY3NVbml0AQAAAAd2YWx1ZV9fAAgCAAAAAgAAAAs=]]></Font2>
<OverrideFont1>False</OverrideFont1>
<OverrideFont2>False</OverrideFont2>
<Display2Rows>False</Display2Rows>
</Settings>
</Component>
<Component>
<Path>LiveSplit.Subsplits.dll</Path>
<Settings>
<Version>1.7</Version>
<CurrentSplitTopColor>FF3373F4</CurrentSplitTopColor>
<CurrentSplitBottomColor>FF153574</CurrentSplitBottomColor>
<VisualSplitCount>11</VisualSplitCount>
<SplitPreviewCount>1</SplitPreviewCount>
<MinimumMajorSplits>0</MinimumMajorSplits>
<DisplayIcons>True</DisplayIcons>
<ShowThinSeparators>False</ShowThinSeparators>
<AlwaysShowLastSplit>True</AlwaysShowLastSplit>
<SplitWidth>20</SplitWidth>
<SplitTimesAccuracy>Seconds</SplitTimesAccuracy>
<BeforeNamesColor>FFFFFFFF</BeforeNamesColor>
<CurrentNamesColor>FFFFFFFF</CurrentNamesColor>
<AfterNamesColor>FFFFFFFF</AfterNamesColor>
<OverrideTextColor>False</OverrideTextColor>
<BeforeTimesColor>FFFFFFFF</BeforeTimesColor>
<CurrentTimesColor>FFFFFFFF</CurrentTimesColor>
<AfterTimesColor>FFFFFFFF</AfterTimesColor>
<OverrideTimesColor>False</OverrideTimesColor>
<LockLastSplit>False</LockLastSplit>
<IconSize>24</IconSize>
<IconShadows>True</IconShadows>
<SplitHeight>6</SplitHeight>
<CurrentSplitGradient>Vertical</CurrentSplitGradient>
<BackgroundColor>00FFFFFF</BackgroundColor>
<BackgroundColor2>01FFFFFF</BackgroundColor2>
<BackgroundGradient>Alternating</BackgroundGradient>
<SeparatorLastSplit>True</SeparatorLastSplit>
<DeltasAccuracy>Tenths</DeltasAccuracy>
<DropDecimals>True</DropDecimals>
<OverrideDeltasColor>False</OverrideDeltasColor>
<DeltasColor>FFFFFFFF</DeltasColor>
<HeaderComparison>Current Comparison</HeaderComparison>
<HeaderTimingMethod>Current Timing Method</HeaderTimingMethod>
<Display2Rows>False</Display2Rows>
<IndentBlankIcons>True</IndentBlankIcons>
<IndentSubsplits>True</IndentSubsplits>
<HideSubsplits>False</HideSubsplits>
<ShowSubsplits>False</ShowSubsplits>
<CurrentSectionOnly>False</CurrentSectionOnly>
<OverrideSubsplitColor>False</OverrideSubsplitColor>
<SubsplitGradient>Plain</SubsplitGradient>
<ShowHeader>True</ShowHeader>
<IndentSectionSplit>True</IndentSectionSplit>
<ShowIconSectionSplit>True</ShowIconSectionSplit>
<ShowSectionIcon>True</ShowSectionIcon>
<HeaderGradient>Vertical</HeaderGradient>
<OverrideHeaderColor>False</OverrideHeaderColor>
<HeaderText>True</HeaderText>
<HeaderTimes>True</HeaderTimes>
<HeaderAccuracy>Tenths</HeaderAccuracy>
<SectionTimer>True</SectionTimer>
<SectionTimerGradient>True</SectionTimerGradient>
<SectionTimerAccuracy>Tenths</SectionTimerAccuracy>
<SubsplitTopColor>8D000000</SubsplitTopColor>
<SubsplitBottomColor>00FFFFFF</SubsplitBottomColor>
<HeaderTopColor>2BFFFFFF</HeaderTopColor>
<HeaderBottomColor>D8000000</HeaderBottomColor>
<HeaderTextColor>FFFFFFFF</HeaderTextColor>
<HeaderTimesColor>FFFFFFFF</HeaderTimesColor>
<SectionTimerColor>FF777777</SectionTimerColor>
<ShowColumnLabels>False</ShowColumnLabels>
<LabelsColor>FFFFFFFF</LabelsColor>
<Columns>
<Settings>
<Version>1.5</Version>
<Name>+/-</Name>
<Type>Delta</Type>
<Comparison>Personal Best</Comparison>
<TimingMethod>Real Time</TimingMethod>
</Settings>
<Settings>
<Version>1.5</Version>
<Name>Time</Name>
<Type>SplitTime</Type>
<Comparison>Personal Best</Comparison>
<TimingMethod>Real Time</TimingMethod>
</Settings>
</Columns>
</Settings>
</Component>
<Component>
<Path>LiveSplit.Timer.dll</Path>
<Settings>
<Version>1.5</Version>
<TimerHeight>69</TimerHeight>
<TimerWidth>225</TimerWidth>
<TimerFormat>1.23</TimerFormat>
<OverrideSplitColors>False</OverrideSplitColors>
<ShowGradient>True</ShowGradient>
<TimerColor>FFAAAAAA</TimerColor>
<BackgroundColor>00000000</BackgroundColor>
<BackgroundColor2>FF222222</BackgroundColor2>
<BackgroundGradient>Plain</BackgroundGradient>
<CenterTimer>False</CenterTimer>
<TimingMethod>Current Timing Method</TimingMethod>
<DecimalsSize>35</DecimalsSize>
</Settings>
</Component>
<Component>
<Path>LiveSplit.PreviousSegment.dll</Path>
<Settings>
<Version>1.6</Version>
<TextColor>FFFFFFFF</TextColor>
<OverrideTextColor>False</OverrideTextColor>
<BackgroundColor>FF1C1C1C</BackgroundColor>
<BackgroundColor2>FF0D0D0D</BackgroundColor2>
<BackgroundGradient>Vertical</BackgroundGradient>
<DeltaAccuracy>Seconds</DeltaAccuracy>
<DropDecimals>True</DropDecimals>
<Comparison>Personal Best</Comparison>
<Display2Rows>False</Display2Rows>
<ShowPossibleTimeSave>False</ShowPossibleTimeSave>
<TimeSaveAccuracy>Tenths</TimeSaveAccuracy>
</Settings>
</Component>
<Component>
<Path>LiveSplit.ScriptableAutoSplit.dll</Path>
<Settings>
</Settings>
</Component>
</Components>
</Layout>

78
Mischief Mile.lss Normal file
View file

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8"?>
<Run version="1.7.0">
<GameIcon />
<GameName>Elite Dangerous</GameName>
<CategoryName>Mischief Mile</CategoryName>
<LayoutPath>
</LayoutPath>
<Metadata>
<Run id="" />
<Platform usesEmulator="False">
</Platform>
<Region>
</Region>
<Variables />
</Metadata>
<Offset>00:00:00</Offset>
<AttemptCount>0</AttemptCount>
<Segments>
<!-- start waypoints -->
<!-- move those around to your liking (keep the sections from each “start XXX” to “end XXX” comment together) -->
<!-- start NLTT 48288 -->
<Segment>
<Name>NLTT 48288</Name>
</Segment>
<!-- end NLTT 48288 -->
<!-- start LHS 3719 -->
<Segment>
<Name>LHS 3719</Name>
</Segment>
<!-- end LHS 3719 -->
<!-- start Fuelum -->
<Segment>
<Name>-Jump to Fuelum</Name>
</Segment>
<Segment>
<Name>-Drop at Wollheim Vision</Name>
</Segment>
<Segment>
<Name>{Fuelum}Dock at Wollheim Vision</Name>
</Segment>
<!-- end Fuelum -->
<!-- end waypoints -->
<!-- start target station -->
<!-- if you fly from Mirateje to Tepech instead of the other way around, you will have to delete the entire Mirateje section (from the “start Mirateje” line to the “end Mirateje” line) and remove the “start Tepech” and “end Tepech” comment lines -->
<!-- start Mirateje -->
<Segment>
<Name>-Jump to Mirateje</Name>
</Segment>
<Segment>
<Name>-Drop at Ocampo Station</Name>
</Segment>
<Segment>
<Name>{Mirateje}Dock at Ocampo Station</Name>
</Segment>
<!-- end Mirateje -->
<!-- start Tepech
<Segment>
<Name>-Jump to Tepech</Name>
</Segment>
<Segment>
<Name>-Drop at Hooke Hub</Name>
</Segment>
<Segment>
<Name>{Tepech}Dock at Hooke Hub</Name>
</Segment>
end Tepech -->
<!-- end target station -->
</Segments>
<AutoSplitterSettings />
</Run>

View file

@ -1,6 +1,6 @@
# LiveSplit files for the Magic 8-Ball Championship
LiveSplit files and AutoSplitters for the Magic 8-Ball Championship organized by the Buckyball Racing Club: https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-the-magic-8-ball-championship.596981/
LiveSplit files and AutoSplitters for the Magic 8-Ball Championship organized by the Buckyball Racing Club: <https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-the-magic-8-ball-championship.596981/>
Dont know what [“LiveSplit”](https://livesplit.org) is? It allows you to time speedruns of your favourite games!
@ -11,7 +11,7 @@ You are organizing one of the Magic 8-Ball races and want yours to be added to t
## Setup
1. Download LiveSplit from https://livesplit.org/downloads/ and unzip it to a directory of your choosing.
1. Download LiveSplit from <https://livesplit.org/downloads/> and unzip it to a directory of your choosing.
2. Download this repository (green button in the top right of the repostory view → “Download ZIP”) and extract it to a directory of your choosing. Alternatively, clone the git repository.
3. Launch LiveSplit and do the following:
- Right click, Open Splits, select `[name of the race].lss`.
@ -22,17 +22,29 @@ You are organizing one of the Magic 8-Ball races and want yours to be added to t
## Races
### Race 7 Mischief Mile
<https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-mischief-mile-rebooted-magic-8-ball-championship-race-7.606269/>
The AutoSplitter will start the timer once you undock from Hooke Hub _or_ Ocampo Station.
It will not enforce an order to the waypoints; this also means that if you e.g. jump into NLTT 48288 twice, it will spli twice. It will not acconut for any of the extra rules of the race, e.g. it will not reset if you fuel scoop or detect the Snickers bonus stuff.
As the race has no set order for the systems to be visited in, you will have to edit the splits to reorder the systems for your personal route. You can do that from the LiveSplit UI, but I would recommend editing the splits file directly in the text editor of your choosing. It contains comments to help with that task. If you are planning to fly the “default” order it comes with you will not have to edit anything.
There are no settings.
### Race 6 Chicken Run: Crash Harder
https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-chicken-run-crash-harder-magic-8-ball-championship-race-6.605441/
<https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-chicken-run-crash-harder-magic-8-ball-championship-race-6.605441/>
The AutSplitter will start the timer once you undock from Noriega Station. it will **not** account for ending the race prematurely and returning to LTT 2151 before visiting _all_ other stops.
The AutoSplitter will start the timer once you undock from Noriega Station. it will **not** account for ending the race prematurely and returning to LTT 2151 before visiting _all_ other stops.
There are no settings.
### Race 4 On the Rocks
https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-on-the-rocks-7th-15th-may-3307-magic-8-ball-championship-race-4.602955/
<https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-on-the-rocks-7th-15th-may-3307-magic-8-ball-championship-race-4.602955/>
The AutoSplitter will start the timer once you undock from Rebuy Prospect. It will **not** enforce selling 1t of beer mats (split will trigger at selling _anything_), and **not** check if youre buying water at Jacks Town.
@ -42,34 +54,34 @@ There are no settings.
### Race 3 Wiccan BeWare
https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-the-wiccan-beware-race-magic-8-ball-championship-race-3.602128/
<https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-the-wiccan-beware-race-magic-8-ball-championship-race-3.602128/>
The AutoSplitter will start the timer once you undock from Dublin Citadel. It will **not** enforce buying the correct cargo, and **not** check the system you buy it in. It can also not detect if/when you fly through the tunnel at Gateway Interchange Hub, nor enforce the speed requirement.
There is one settings:
* `Automatically reset when refuelling or repairing`: Automatically reset when you Refuel or repair, since that is against the rules. Disabled by default.
- `Automatically reset when refuelling or repairing`: Automatically reset when you Refuel or repair, since that is against the rules. Disabled by default.
### Race 2 The Aquarian Job
https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-the-aquarian-job-magic-8-ball-championship-race-2.599829/
<https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-the-aquarian-job-magic-8-ball-championship-race-2.599829/>
The AutoSplitter will start the timer once you undock from London Relay. It will enforce doing all steps in the corret order. There is no sane way to check for the distance requirements around Cooper Arena; as long as you land/take off within ~50km of the settlement, you will get a split.
There is one settings:
* `Automatically reset when refuelling or repairing`: Automatically reset when you Refuel or repair, since that is against the rules. Disabled by default.
- `Automatically reset when refuelling or repairing`: Automatically reset when you Refuel or repair, since that is against the rules. Disabled by default.
### Race 1 Back to Pareco
https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-back-to-pareco-magic-8-ball-championship-race-1.598760/
<https://forums.frontier.co.uk/threads/the-buckyball-racing-club-presents-back-to-pareco-magic-8-ball-championship-race-1.598760/>
The AutoSplitter will start the timer once you undock from Garden Ring. It will enforce docking at the races stations in the correct order. After 20 minutes you get one last stop, then the timer will pause and reset once you dock back at Garden Ring.
There are three settings:
* `Write the number of stops to a file, e.g. for a stream overlay`: Does exactly that. You can find the file in `My Documents`, the full path will be in the tooltip. Disabled by default.
* `Automatically reset when docking back at Garden Ring`: Automatically reset when you have finished a run and dock back at Garden Ring. Enabled by default.
* `Automatically stop the timer after death`: Automatically stop the timer should you meet an untimely demise. Disabled by default.
- `Write the number of stops to a file, e.g. for a stream overlay`: Does exactly that. You can find the file in `My Documents`, the full path will be in the tooltip. Disabled by default.
- `Automatically reset when docking back at Garden Ring`: Automatically reset when you have finished a run and dock back at Garden Ring. Enabled by default.
- `Automatically stop the timer after death`: Automatically stop the timer should you meet an untimely demise. Disabled by default.
**Note**: If your _next stop is Garden Ring_ when the time limit is reached, you will either have to reset LiveSplit manually after docking there or re-dock to have the AutoSplitter reset it for you.