Fix: updating the launcher left the old version's files behind
The launcher was updated by unzipping the new build over the old one, which only ever adds and overwrites. Anything a new build dropped - a renamed assembly, a page that no longer exists, a stale dependency manifest - stayed on disk and got loaded alongside the new files, so an "updated" launcher could behave like a mixture of two builds.
Fix: the old install is now removed before the new one is unpacked, so an update produces exactly what a fresh install would. Your settings, mute list, logs and voice config are all preserved.
The removal happens only after the download has succeeded, so a failed download can never leave you with no launcher at all.
Fix: being told to update when you already had the newest version
The launcher checked the installed version by reading Client.dll's file-version resource - but that DLL has no version resource, so the read always came back empty. That made the launcher report "No rVclient found in your game folder yet" next to a working install, and offer an update you already had, every single time.
Fix: the version is now recorded when the launcher installs an update, and read out of the DLL itself for installs it did not perform. Pressing Check for Updates when you are current now says so instead of reinstalling.
Fix: "Check for Updates" only opened a web page
It opened the GitHub releases page and left you to download and copy files by hand - while a working installer sat unused directly above it. It now actually installs, and asks you to restart the launcher when it is done.
Known limitations
- The launcher's Friends tab is placeholder data for now.
- Friends seeing "Launch Game" instead of "Join"? That is Discord > User Settings > Activity Privacy, not the mod.