Skip to content

ja2-web v1.0.1 - Cloud Locker

Latest

Choose a tag to compare

@dumpster-TechOps dumpster-TechOps released this 07 Aug 18:34
· 3 commits to main since this release

Cloud Locker: sign in once, upload your own Jagged Alliance 2 data, and play it from any machine with your saves synced.

Added

  • Cloud Locker - sign in and keep your game data and savegames on your account, so
    any machine you sign in from has them. Single sign-on via Google, Discord or
    Microsoft; no password to create. Self-hosters can drop the feature entirely with
    --build-arg CLOUD_LOCKER=0.
  • One-time upload wizard in the game: a checklist of the files your account needs,
    ownership confirmation, then one folder pick that finds and uploads everything.
  • Two-tier upload verification - an exact checksum match against a known release, or a
    known filename whose size is within 5% (Jagged Alliance 2 shipped in many builds).
    Anything else is refused, so the locker only ever holds game data.
  • Uploaded bytes are kept in the browser cache, addressed by content, so the first play
    after uploading reads locally instead of downloading the library back.
  • Cloud saves sync automatically as you play.
  • Storage works two ways: any S3-compatible object store, or plain local disk when no
    S3 is configured.
  • Server-side abuse limits: per-file and per-save size caps, per-account byte and file
    quotas, a whole-install cap, and hard streaming byte ceilings.

Changed

  • Signing in goes straight into the game, and the tile always asks which provider to
    use rather than silently resuming the last account.
  • Sessions last one browser session, renewing while you play, instead of a month.
  • Uploads run four files at a time; downloads report true byte progress.

Fixed

  • HTML is served no-store. It previously carried no cache directives at all, so a
    browser could serve a stale index.html - which also pins the content-versioned
    engine path and could therefore point at a build that no longer exists.
  • The player's Data folder is found when nested (for example GOG's Linux
    game/Data), not only one level down.
  • The allowed file-extension list is derived from the known editions rather than
    hand-written, which had rejected the 109 .jsd files in a real install's TILECACHE.
  • Stray markup copied from a sibling project produced a duplicate <canvas>, making
    the game render small and putting unrelated buttons on screen.

Jagged Alliance 2 game data is not included and never distributed here - you supply your own legally-obtained copy.