fix(games): roll Stella Sora's day at 13:00 UTC-7 for every region

One worldwide server on a fixed UTC-7 resetting at 13:00 (20:00 UTC); the
app used the regional default. Source: Game-Time-Master, which lists the
zone as fixed rather than Pacific.

Re-labels the game-day of some already-logged ticks.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Lucas Winther
2026-10-13 12:40:41 +02:00
co-authored by Claude Opus 5.5
parent d1029f606c
commit 93bde74973
2 changed files with 10 additions and 9 deletions
+7 -9
View File
@@ -134,15 +134,13 @@ export const GAMES: Record<GameId, GameMeta> = {
// is a patch window, not a reset hour. So this game takes the regional
// default until something states its server clock outright.
gfl2: { id: "gfl2", name: "Girls' Frontline 2: Exilium", short: "GFL2", hue: "#A9C23F", studio: "Sunborn", dailyTasks: "Daily missions" },
// No `resetOffsets`, and this is the Fate/Grand Order gap rather than the
// Blue Archive one: the source states an offset on every boundary, and the
// offset it states is `-07:00` in August. That is US Pacific in summer, which
// means it is `-08:00` in winter — one fixed number is wrong for half the year
// in either direction, and `resetOffsets` holds one fixed number. The page
// also never lands its boundaries on a single local hour (20:00 and 21:00
// starts, 12:59 and 19:59 ends), so there is no reset hour to read off it
// either. See the fgo entry below for the same reasoning at more length.
stellasora: { id: "stellasora", name: "Stella Sora", short: "Stella Sora", hue: "#2E9E9E", studio: "Yostar", dailyTasks: "Daily missions" },
// Stella Sora runs one worldwide server on a fixed UTC-7 that rolls its day
// at 13:00 — 20:00 UTC — per Game-Time-Master (github.com/cicerakes/Game-Time-Master).
// That settles what the source alone could not: it prints `-07:00` on every
// boundary, which read like US Pacific in summer (the Fate/Grand Order gap),
// and never landed its boundaries on one local hour. Game-Time-Master lists
// the zone as fixed (`Etc/GMT+7`), so one number holds all year.
stellasora: { id: "stellasora", name: "Stella Sora", short: "Stella Sora", hue: "#2E9E9E", studio: "Yostar", dailyTasks: "Daily missions", resetOffsets: { asia: -7, america: -7, europe: -7 }, resetHourLocal: { asia: 13, america: 13, europe: 13 } },
// Chaos Zero Nightmare runs one worldwide server whose day rolls at 18:00 UTC,
// per Game-Time-Master (github.com/cicerakes/Game-Time-Master); GameWith's
// guide states the same instant in UTC. The source is Game8 prose with no
+3
View File
@@ -520,6 +520,9 @@ describe("reset clocks, per server, as Game-Time-Master states them", () => {
["pgr", "asia", "05:00", 0],
["pgr", "america", "05:00", 0],
["pgr", "europe", "05:00", 0],
["stellasora", "asia", "20:00", -7],
["stellasora", "america", "20:00", -7],
["stellasora", "europe", "20:00", -7],
];
for (const [game, region, utc, offset] of ROWS) {