Skip to content

Releases: sliky1992/gamesync

GameSync v1.0.1

23 Jun 06:57

Choose a tag to compare

Fix: device stuck offline in the hub while its service is still running

The Windows client keeps a WebSocket to the hub for presence and instant
push-sync. If that connection died silently — PC sleep, Tailscale re-route, a
Wi-Fi drop — the client could block forever waiting to read from the dead socket
and never reconnect. The hub's own heartbeat then marked the device offline,
even though the service looked "running" and background polling kept limping
along. Restarting the service was the only way back.

What changed (client 1.0.1):

  • Application-level heartbeat: the client periodically pings the hub and treats
    any reply as proof of life. If nothing comes back within the deadline, it drops
    the dead socket and reconnects. (.NET 8 has no KeepAliveTimeout — that's .NET
    9+ — so this is done in-app.)
  • ConnectAsync is now time-bounded so a dead network path can't wedge the loop.

The hub server is unchanged — this release just bundles the rebuilt client so
the dashboard's Setup tab serves 1.0.1. Update every device's client to
1.0.1.

Install

Download GameSyncClient-win-x64.zip, unzip, and run Install-GameSync.cmd as
admin (or grab it from the hub's Setup tab). Self-contained — no .NET runtime
needed.

GameSync v1.0.0

22 Jun 20:11

Choose a tag to compare

First release of GameSync — self-hosted real-time game-save sync.

What's included

  • Hub (run from source via Docker — see the README).
  • Windows clientGameSyncClient-win-x64.zip below. Self-contained (no .NET runtime needed). Unzip and run Install-GameSync.cmd.

Highlights

  • Real-time WebSocket sync with content-hash versioning and safe conflict handling.
  • Vault tab: browse every saved version per game — download, restore (roll back), or prune.
  • Lossless apply: synced saves keep their timestamps/attributes and are written with the user's permissions (so they load just like a manual copy).

Verify the client download

SHA-256  4b25518c05b5ca496ac701a25296846d26ddf2a94d059a49ee50f56ceba5a21d

🤖 Generated with Claude Code