Articles on: ggLeap

ggLeap Update Process

ggLeap updates itself silently in the background using a temporary helper program — no separate updater service, no Windows scheduler, no permanent updater binary on disk.


How it works

1. The server signals that an update is available

This happens either at ggLeap startup or at any point while it is running. The server can push the notice at any time.


2. ggLeap checks whether it is safe to proceed

An update only begins if all of the following are true:

  • The incoming version differs from what is currently installed
  • No player is logged in and no active session is open
  • The machine is not in dev or demo mode
  • The update has not already failed multiple times in a row

This is why updates "wait" — if a player is actively using the PC, ggLeap holds off until the session ends.


3. ggLeap downloads two things into temporary folders

  • The helper updater — saved as GgSilentUpdater.exe inside a randomly-named subfolder of the Windows temp folder:

C:\Users\<user>\AppData\Local\Temp\<random-id>\GgSilentUpdater.exe

  • The new version's files — downloaded into their own temporary location

The subfolder name is a fresh unique ID on every update, so the path is never the same twice. There is no fixed location to bookmark or allowlist.

GgSilentUpdater.exe is downloaded fresh each time rather than installed permanently. You will not find it sitting on a machine that is not actively mid-update.

Every download is integrity-checked before it is allowed to run. A corrupted or tampered file is rejected and the update is aborted.


4. ggLeap launches the helper, then closes itself

ggLeap must shut down so its own files can be replaced by the updater.


5. The helper updater performs the swap

It waits for ggLeap to fully close, releases anything still holding files open, replaces the old installation with the new files, and then restarts ggLeap automatically.


6. The restarted ggLeap confirms the result

On startup, ggLeap checks whether the update succeeded or failed. If it failed, the failure is tracked so the client does not retry indefinitely.

Updated on: 23/06/2026

Was this article helpful?

Share your feedback

Cancel

Thank you!