feat(endfield): track AIC Quota Exchange permits by banner rotation

The shop's five permits restock when the character and weapon banners change together, which no week, month or fixed cycle can express: rotations ran 21 days and then 19. A rotation is not a game version, so it gets its own table and caption, and follows the version rule that only a recorded end resets the count. The dates and reset rule are the owner's in-game reading, as no page states them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Lucas WintherandClaude Opus 5.5 committed 2026-11-06 09:14:38 +01:00
1 parent be80e785ca
commit 327f6389cc
16 files changed
+242 -46

No files matched your search

+6
View File
@@ -427,6 +427,12 @@ recorded, and `VERSION_DAYS` gives an estimate that is printed and never acted o
`amounts` under the version's start date in UTC (`2026-09-30` for WuWa 3.7), a key that adding the
next entry never moves. It groups, tallies and switches with the cycles (`cadenceOf`).
A built-in may instead **reset with its game's banners** (`{ unit: "banner" }`, 2026-11-06), for a
shop that restocks when the character and weapon banners change together. Same rule, same code path
and same storage (Endfield's AIC Quota Exchange counts under `2026-11-05`), read from the `BANNERS`
table in the same file. It has its own table because a rotation is not a version: `VERSIONS` feeds
the version line in *Your games*, and Endfield's real versions must be able to join it later.
**Not every game has a server per region.** `GameMeta.resetOffsets` records the regions where a
game's server clock differs from `REGION_RESET_UTC_OFFSET`. Endfield is the case this exists for: it
has two server groups rather than three, and Europe is served off the Americas machine on a fixed