Commit Graph

3 Commits

Author SHA1 Message Date
Jan Nedbal
759b31d390 docs: record prior art survey and switch to velopack for self-update
After a survey of existing Metin2 launchers, general-purpose
auto-updaters, and adjacent open-source game launchers, update the
design to:

- drop the hand-rolled rename-before-replace self-update path
- use Velopack for launcher self-update (MIT, modern successor to
  Squirrel.Windows, handles atomic replace, delta, Authenticode, AV
  friendliness out of the box)
- keep the custom asset patcher for the 4 GB game payload, which
  Velopack is not designed for
- reference runelite/launcher as the architectural template
- name Sparkle 2 and wowemulation-dev/wow-patcher as Ed25519 prior art

No Metin2 community launcher is worth forking; the ceiling of
published prior art is 'file list + sha256 + HTTP GET' and this design
is already above it. Greenfield confirmed.
2026-04-14 10:44:44 +02:00
Jan Nedbal
6f70ef201a docs: add update manifest schema
Formal JSON schema for the release manifest, with canonical ordering
rules so signatures stay stable. Includes a small synthetic example
under docs/examples/.
2026-04-14 10:36:24 +02:00
Jan Nedbal
05af7e55b3 docs: add update manager design
Design for a content-addressed, signed manifest-based update system for
the Metin2 client. Launcher is a single entry point; server is static
files behind Caddy at updates.jakubkadlec.dev; manifests are signed with
Ed25519. Publishing starts manual in v1 and moves to Gitea Actions in v2.
2026-04-14 10:36:23 +02:00