Compare commits

...

2 Commits

Author SHA1 Message Date
3e879f3687 zenno: lint fixes 2026-04-20 11:57:15 -04:00
0eb932dc3c zenno: remove inheritance and spark pages
uma.moe and chronogenesis both have this now, at least in progress.
2026-04-20 11:38:31 -04:00
3 changed files with 6 additions and 19 deletions

View File

@@ -18,9 +18,6 @@
</span> </span>
<span class="flex-1 text-center"> <span class="flex-1 text-center">
<a href={resolve('/')} class="mx-8 my-1 block font-semibold md:hidden">Zenno Rob Roy</a> <a href={resolve('/')} class="mx-8 my-1 block font-semibold md:hidden">Zenno Rob Roy</a>
<a href={resolve('/inherit')} class="mx-8 my-1 inline-block">Inheritance Chance</a>
<a href={resolve('/spark')} class="mx-8 my-1 inline-block">Spark Chance</a>
<a href={resolve('/vet')} class="mx-8 my-1 inline-block">My Veterans</a>
<a href={resolve('/spurt')} class="mx-8 my-1 inline-block">Spurt Speed</a> <a href={resolve('/spurt')} class="mx-8 my-1 inline-block">Spurt Speed</a>
<a href={resolve('/convo')} class="mx-8 my-1 inline-block">Lobby Conversations</a> <a href={resolve('/convo')} class="mx-8 my-1 inline-block">Lobby Conversations</a>
</span> </span>

View File

@@ -6,18 +6,6 @@
<p>She's read all about Umamusume, and she's always happy to share her knowledge and give recommendations!</p> <p>She's read all about Umamusume, and she's always happy to share her knowledge and give recommendations!</p>
<h2 class="mt-8 mb-4 text-4xl">Tools</h2> <h2 class="mt-8 mb-4 text-4xl">Tools</h2>
<ul class="list-disc pl-4"> <ul class="list-disc pl-4">
<li>
<a href={resolve('/inherit')}>Inheritance Chance</a><i>Not yet implemented</i> — Given a legacy, calculate the probability distribution
of activation counts for each spark.
</li>
<li>
<a href={resolve('/spark')}>Spark Chance</a><i>Not yet implemented</i> — Given a legacy, calculate the chance of generating each
spark if you fulfill the conditions to do so, and the distribution of total spark counts.
</li>
<li>
<a href={resolve('/vet')}>My Veterans</a><i>Not yet implemented</i> — Set up and track your veterans for Zenno Rob Roy's inspiration
and spark calculators.
</li>
<li> <li>
<a href={resolve('/spurt')}>Spurt Speed</a> — Calculate a horse's target speed in the last spurt and compare to other distance aptitudes <a href={resolve('/spurt')}>Spurt Speed</a> — Calculate a horse's target speed in the last spurt and compare to other distance aptitudes
and running styles. and running styles.

View File

@@ -1,7 +1,7 @@
<script lang="ts"> <script lang="ts">
import { AptitudeLevel, inverseSpurtSpeed, RunningStyle, spurtSpeed } from '$lib/race'; import { AptitudeLevel, inverseSpurtSpeed, RunningStyle, spurtSpeed } from '$lib/race';
const aptsList = Object.entries(AptitudeLevel).filter(([_name, val]) => typeof val === 'number'); const aptsList = Object.entries(AptitudeLevel).filter(([, val]) => typeof val === 'number');
const stylesList = [ const stylesList = [
['Front Runner', RunningStyle.FrontRunner], ['Front Runner', RunningStyle.FrontRunner],
['Pace Chaser', RunningStyle.PaceChaser], ['Pace Chaser', RunningStyle.PaceChaser],
@@ -38,7 +38,9 @@
inverseSpurtSpeed(speed, gutsStat, RunningStyle.EndCloser, AptitudeLevel.A, raceLen) - careerMod, inverseSpurtSpeed(speed, gutsStat, RunningStyle.EndCloser, AptitudeLevel.A, raceLen) - careerMod,
inverseSpurtSpeed(speed, gutsStat, RunningStyle.GreatEscape, AptitudeLevel.A, raceLen) - careerMod, inverseSpurtSpeed(speed, gutsStat, RunningStyle.GreatEscape, AptitudeLevel.A, raceLen) - careerMod,
]); ]);
const skillProf = $derived(skillSpeeds.map((v) => [v, inverseSpurtSpeed(speed + v, gutsStat, opponentStyle, AptitudeLevel.S, raceLen) - careerMod])); const skillProf = $derived(
skillSpeeds.map((v) => [v, inverseSpurtSpeed(speed + v, gutsStat, opponentStyle, AptitudeLevel.S, raceLen) - careerMod]),
);
</script> </script>
<h1 class="text-4xl">Spurt Speed Calculator</h1> <h1 class="text-4xl">Spurt Speed Calculator</h1>
@@ -54,7 +56,7 @@
<div class="m-4"> <div class="m-4">
<label for="style">Style</label> <label for="style">Style</label>
<select id="style" required bind:value={style} class="w-full"> <select id="style" required bind:value={style} class="w-full">
{#each stylesList as [name, style]} {#each stylesList as [name, style] (style)}
<option value={style}>{style === RunningStyle.GreatEscape ? 'Great Escape (Runaway)' : name}</option> <option value={style}>{style === RunningStyle.GreatEscape ? 'Great Escape (Runaway)' : name}</option>
{/each} {/each}
</select> </select>
@@ -102,7 +104,7 @@
<span class="mt-8 block w-full"> <span class="mt-8 block w-full">
While a speed skill is active, the equivalent speed for a distance S While a speed skill is active, the equivalent speed for a distance S
<select id="opponentStyle" required bind:value={opponentStyle}> <select id="opponentStyle" required bind:value={opponentStyle}>
{#each stylesList as [name, style]} {#each stylesList as [name, style] (style)}
<option value={style}>{style === RunningStyle.GreatEscape ? 'Great Escape (Runaway)' : name}</option> <option value={style}>{style === RunningStyle.GreatEscape ? 'Great Escape (Runaway)' : name}</option>
{/each} {/each}
</select> </select>