[FREE] Launchpad - A free, open-source UE4-compatible game launcher

I found that my issue with LaunchPad always saying that it needed to be updated was due to the fact that my remote version had a trailing space character and was therefore not equal to the launcherVersion.

The following modification to DoLauncherUpdateCheck() in the source I believe fixes the issue



        private void DoLauncherUpdateCheck()
        {
            try
            {
                string remoteLauncherVersion = FTP.ReadFTPFile(Config.GetFTPUsername(), Config.GetFTPPassword(), String.Format("{0}/launcher/launcherVersion.txt", Config.GetFTPUrl())).Replace("\0", string.Empty);
                string launcherVersion = Config.GetLauncherVersion();

                System.Version RemoteVersion = new System.Version(remoteLauncherVersion);
                System.Version LauncherVersion = new System.Version(launcherVersion);

                progress_label.Text = "Checking launcher version...";
                progress_label.Refresh();

                if (Config.GetLauncherVersion() == "")
                {
                    //this should never happen - if it did, something is SERIOUSLY wrong
                    bLauncherVersionCheckFailed = true;
                    Console.WriteLine("LauncherUpdateCheck: Local version is NULL!");
                    warning_label.ForeColor = Color.Red;
                    warning_label.Text = "Could not retrieve local launcher version!";
                    warning_label.Refresh();

                    UpdateMainWindow();
                }
                else if (RemoteVersion.Equals(LauncherVersion))
                {
                    //launcher does not need to be updated
                    bLauncherNeedsUpdate = false;
                    if (File.Exists(String.Format(@"{0}\update.bat", Config.GetLocalDir())))
                    {
                        File.Delete(String.Format(@"{0}\update.bat", Config.GetLocalDir()));
                    }                    
                    Console.WriteLine("SYSMSG: Launcher version is OK");                                        

                    UpdateMainWindow();
                }
                else
                {
                    bLauncherNeedsUpdate = true;

                    UpdateMainWindow();
                }
                bLauncherVersionCheckFailed = false;
            }
            catch (WebException ex)
            {
                Console.WriteLine(ex.Status);                
                bLauncherVersionCheckFailed = true;
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.StackTrace);
                bLauncherVersionCheckFailed = true;
            }
        }


But I still need to work out why my game is not downloading. Hopefully be able to put more time into this tomorrow.