Add achievement export support

This commit is contained in:
Golumpa 2026-08-19 13:00:09 +01:00
parent 40b44521aa
commit 5fe39b96ae
15 changed files with 197 additions and 55 deletions

View file

@ -1,6 +1,21 @@
# Packet Format Notes
This prototype supports separate Monopoly, Arc/Gashapon, and Mystery Box history decoders.
This prototype supports separate Monopoly, Arc/Gashapon, Mystery Box history,
and achievement decoders.
## Achievements
The account's achievement component arrives in an inbound TCP game-data block
during login. The block is LZ4-decoded and contains `AchievementRecord` entries.
Each record provides an achievement ID, an unsigned numeric progress value, and
a .NET completion timestamp. A non-zero timestamp marks a completed record.
Every observed record without completion ticks is treated as in progress;
compound achievements can have server-side checklist progress while exposing a
numeric value of zero.
Only records present in the network response are exported. Display metadata is
looked up case-insensitively in `mappings/achievements.json`, because captured
and asset-table ID casing can differ. Missing metadata never prevents export.
## Decoder strategy