From 74c22c7313c83abd4e9e3463f03ddb134b64ca3b Mon Sep 17 00:00:00 2001 From: Branden J Brown Date: Sun, 19 Jul 2026 15:38:01 -0400 Subject: [PATCH] zenno: rename Great Escape -> Runaway everywhere Fixes #26. --- zenno/src/lib/alpha123Umalator.ts | 2 +- zenno/src/lib/race.ts | 12 +-- zenno/src/routes/doc/frbm/+page.svelte | 7 +- zenno/src/routes/doc/race/+page.svelte | 9 ++- zenno/src/routes/race/mspeed/+page.svelte | 2 +- zenno/src/routes/race/spurt/+page.svelte | 98 +++++++++++------------ 6 files changed, 64 insertions(+), 66 deletions(-) diff --git a/zenno/src/lib/alpha123Umalator.ts b/zenno/src/lib/alpha123Umalator.ts index 19b9373..54bf9a3 100644 --- a/zenno/src/lib/alpha123Umalator.ts +++ b/zenno/src/lib/alpha123Umalator.ts @@ -18,7 +18,7 @@ const styleMap = { Sentou: RunningStyle.PaceChaser, Sasi: RunningStyle.LateSurger, Oikomi: RunningStyle.EndCloser, - Oonige: RunningStyle.GreatEscape, + Oonige: RunningStyle.Runaway, } as const; export interface ImportUma { diff --git a/zenno/src/lib/race.ts b/zenno/src/lib/race.ts index 7b243d9..f3bc38e 100644 --- a/zenno/src/lib/race.ts +++ b/zenno/src/lib/race.ts @@ -260,7 +260,7 @@ export function finalStat(adjStat: number, skillPassive: number): number { /** * Running styles for strategy–phase coefficients. - * Great Escape is distinguished as a separate style even though it is + * Runaway is distinguished as a separate style even though it is * mechanically identical to Front Runner. */ export enum RunningStyle { @@ -268,7 +268,7 @@ export enum RunningStyle { PaceChaser, LateSurger, EndCloser, - GreatEscape, + Runaway, } /** @@ -279,7 +279,7 @@ export const RUNNING_STYLES = [ ['Pace Chaser', RunningStyle.PaceChaser], ['Late Surger', RunningStyle.LateSurger], ['End Closer', RunningStyle.EndCloser], - ['Great Escape', RunningStyle.GreatEscape], + ['Runaway', RunningStyle.Runaway], ] as const; /** @@ -325,7 +325,7 @@ const hpStrategyCoeff = { [RunningStyle.PaceChaser]: 0.89, [RunningStyle.LateSurger]: 1.0, [RunningStyle.EndCloser]: 0.995, - [RunningStyle.GreatEscape]: 0.86, + [RunningStyle.Runaway]: 0.86, } as const; /** @@ -595,7 +595,7 @@ const accelStrategyPhaseCoeff = { [RunningStyle.PaceChaser]: [0.985, 1.0, 0.996], [RunningStyle.LateSurger]: [0.975, 1.0, 1.0], [RunningStyle.EndCloser]: [0.945, 1.0, 0.997], - [RunningStyle.GreatEscape]: [1.17, 0.94, 0.956], + [RunningStyle.Runaway]: [1.17, 0.94, 0.956], } as const; const surfaceProficiencyMod = [0.1, 0.3, 0.5, 0.7, 0.8, 0.9, 1.0, 1.05] as const; @@ -711,7 +711,7 @@ const conserveStratDistCoef = { [Distance.Medium]: 0.86, [Distance.Long]: 0.9, }, - [RunningStyle.GreatEscape]: { + [RunningStyle.Runaway]: { [Distance.Sprint]: 1, [Distance.Mile]: 1, [Distance.Medium]: 1, diff --git a/zenno/src/routes/doc/frbm/+page.svelte b/zenno/src/routes/doc/frbm/+page.svelte index 5cad139..e67e06f 100644 --- a/zenno/src/routes/doc/frbm/+page.svelte +++ b/zenno/src/routes/doc/frbm/+page.svelte @@ -179,7 +179,7 @@ { label: 'Style S', y: (x) => downhillAccelEnterChance(x * 1.1) * 100 }, { label: 'Style A', y: (x) => downhillAccelEnterChance(x) * 100 }, ]; - const secIsFront = $derived(secSpeedStyle === RunningStyle.FrontRunner || secSpeedStyle === RunningStyle.GreatEscape); + const secIsFront = $derived(secSpeedStyle === RunningStyle.FrontRunner || secSpeedStyle === RunningStyle.Runaway); const secSpeedSeries: Array = $derived([ { label: 'Early Race', @@ -326,10 +326,7 @@ Runaway

- The skill converts front runners into the Great Escape running style. However, no - player has ever uttered the words "Great Escape" when talking about Umamusume, presumably because Runaway is a much cooler - name. ("Great Escape" is a direct translation of Japanese 大逃げ oonige, whereas "Front Runner" is a more liberal - localization of 逃げ nige that technically just means "escape.") + The skill converts front runners into the Runaway running style.

Runaways are still front runners for all purposes. The difference is just different numbers for things like base speed and diff --git a/zenno/src/routes/doc/race/+page.svelte b/zenno/src/routes/doc/race/+page.svelte index 14376a7..303b857 100644 --- a/zenno/src/routes/doc/race/+page.svelte +++ b/zenno/src/routes/doc/race/+page.svelte @@ -14,7 +14,7 @@ let surfaceApt = $state(race.AptitudeLevel.A); let distanceApt = $state(race.AptitudeLevel.A); let raceLen = $state(2000); - const styleIsFront = $derived(style === race.RunningStyle.FrontRunner || style === race.RunningStyle.GreatEscape); + const styleIsFront = $derived(style === race.RunningStyle.FrontRunner || style === race.RunningStyle.Runaway); const distanceType = $derived(race.distance(raceLen)); const raceLenType = $derived(race.Distance[distanceType]); @@ -39,7 +39,7 @@ { label: 'Pace Chaser', y: (x) => race.maxHP(raceLen, race.RunningStyle.PaceChaser, x) }, { label: 'Late Surger', y: (x) => race.maxHP(raceLen, race.RunningStyle.LateSurger, x) }, { label: 'End Closer', y: (x) => race.maxHP(raceLen, race.RunningStyle.EndCloser, x) }, - { label: 'Runaway', y: (x) => race.maxHP(raceLen, race.RunningStyle.GreatEscape, x) }, + { label: 'Runaway', y: (x) => race.maxHP(raceLen, race.RunningStyle.Runaway, x) }, ]); const moveLane: ComputedSeries[] = [{ label: 'Move Lane Modifier', y: (x) => race.moveLaneModifier(x) }]; const uphill: ComputedSeries[] = [ @@ -298,7 +298,10 @@ ref="https://docs.google.com/document/d/15VzW9W2tXBBTibBRbZ8IVpW6HaMX8H0RP03kq6Az7Xg/edit?tab=t.0#heading=h.t9fv1oq5lsu9" >Acceleration -

Acceleration.

+

+ Acceleration, i.e. the rate of change of forward velocity when target speed is greater than current speed. Stats do not affect + deceleration (acceleration when target speed is less than current speed). +

{@render statChart(race.Stat.Power, accel, 'Acceleration (m/s²)', [0.1, 0.55], { style: true })} acceleration(powerStat, style, surfApt, p))); diff --git a/zenno/src/routes/race/spurt/+page.svelte b/zenno/src/routes/race/spurt/+page.svelte index c765678..1dc2c52 100644 --- a/zenno/src/routes/race/spurt/+page.svelte +++ b/zenno/src/routes/race/spurt/+page.svelte @@ -1,76 +1,74 @@

Spurt Speed Calculator

@@ -86,16 +84,16 @@
@@ -112,13 +110,13 @@ {speed.toFixed(3)} m/s +{duelBonus.toFixed(3)} m/s -{#each [[AptitudeLevel.A, aProf] as const, [AptitudeLevel.S, sProf] as const] as [level, inv] (level)} +{#each [[race.AptitudeLevel.A, aProf] as const, [race.AptitudeLevel.S, sProf] as const] as [level, inv] (level)}
- With {AptitudeLevel[level]} proficiency, the equivalent speed is + With {race.AptitudeLevel[level]} proficiency, the equivalent speed is
- {#each stylesList as [styleName, s] (s)} + {#each race.RUNNING_STYLES as [styleName, s] (s)} {inv[s]} {/each}
@@ -128,8 +126,8 @@ While a speed skill is active, the equivalent speed for a distance S is @@ -141,6 +139,6 @@
- - + +