Jump to content

Game crashing before even starting?


davidskylord

Recommended Posts

  • 1 month later...
On 11/21/2019 at 9:17 PM, Aneas1979 said:

I have the same Problem :(

 

I found in Discord:

We know game servers are having authentication problems. We're figuring out networking shenanigans between our new server and our docker instances. Will update once we have news

I have the same, my game started up. Plays for 5 min and then shut down. Sometimes immediately after login 

Link to comment
Share on other sites

6 hours ago, Darkuhn said:

I have the same, my game started up. Plays for 5 min and then shut down. Sometimes immediately after login 

What are your pc specs and do you get an error message when it shuts down? 

Could you please post your log.txt and launcher log when that happens? You can find them in My documents\Battleforge\diag\. You may also send them directly to Kubik on discord. 

 

Link to comment
Share on other sites

  • 1 month later...

Same issue again today. The updater window opens, the "checking" icon spins briefly, and the window crashes. The following entry appears in the Windows Application log:

    Application: SkylordsRebornUpdater.exe
    Framework Version: v4.0.30319
    Description: The process was terminated due to an unhandled exception.
    Exception Info: System.IndexOutOfRangeException
       at SkylordsRebornUpdater.MainWindow.GetUpdateFile()
       at SkylordsRebornUpdater.MainWindow.CheckForUpdates()
       at System.Threading.ThreadHelper.ThreadStart_Context(System.Object)
       at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
       at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
       at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
       at System.Threading.ThreadHelper.ThreadStart()

As the game was working fine for many months, I'm sure my system has the necessary prerequisites. I did, however, follow all of the relevant suggestions in this thread, including disabling firewall/anti-virus, deleting Documents\BattleForge, deleting the entire application folder and downloading and extracting both the client and updater again, restarting several times, etc.

Link to comment
Share on other sites

It seems that it can't download the definition file which contains all needed information to update the game files. Did you also try to disable real time protection of Windows Defender and white list the whole BattleForge directory? I'm asking because you wrote you followed all the relevant suggestions. Normally this is only a problem when the Updater doesn't have access to any remote files due to network errors or any other interruption (maybe caused by anti virus or anything else related to it).

Quote from Discord:
Aviat0rToday at 11:51 PM
I answered this question on forum. But what I just saw is the framework version. Did you make sure, that you have at least .NET Framework 4.5 or higher installed @Lithius ?

Edited by Aviat0r
Added Discord quote
Link to comment
Share on other sites

4 hours ago, Aviat0r said:

Did you also try to disable real time protection of Windows Defender and white list the whole BattleForge directory? I'm asking because you wrote you followed all the relevant suggestions.

Yes, I have attempted to temporarily disable real-time protection, and have also added the application directory to the exclusion list. By relevant, I meant suggestions relevant to the updater not starting, rather than the issues with the game itself.

5 hours ago, Aviat0r said:

Did you make sure, that you have at least .NET Framework 4.5 or higher installed[?]

Installed are 4.5 and 4.6, only. 4.0 appears to be the target framework (as selected in the project application settings in Visual Studio).

Link to comment
Share on other sites

19 hours ago, Lithius said:

Installed are 4.5 and 4.6, only. 4.0 appears to be the target framework (as selected in the project application settings in Visual Studio).

The target framework for the current Updater is set to 4.5. Did you make sure, that you're using version 0.7 of the Updater? If you're using version 0.3 you need to manually update it by downloading it from our official download page.

Link to comment
Share on other sites

16 hours ago, Aviat0r said:

The target framework for the current Updater is set to 4.5. Did you make sure, that you're using version 0.7 of the Updater?

The version linked in both topics (open stress test and troubleshooting) is 0.4, which may or may not be worth updating (it auto-upgrades to 0.7 anyway). I appreciate you taking the time to respond this issue. Today, it mysteriously began working again, which I'm going to chalk up to some sort of transient network issue.

I do, however, think it would be a good idea to eliminate the possibility of an unhandled exception, either by checking the length of the relevant array/collection before attempting to index into it - and giving an appropriate error message if it doesn't have the expected length, or by wrapping the Application.Run call in a try catch. I typically use the internal GridErrorDlg for this:

    public static DialogResult ShowErrorDialog(string text, string caption, Exception ex) {
        Type errorDialogType = typeof(Form).Assembly.GetType("System.Windows.Forms.PropertyGridInternal.GridErrorDlg");
        Form errorDialog = (Form)Activator.CreateInstance(errorDialogType, new PropertyGrid());

        errorDialog.Text = caption;
        errorDialogType.GetProperty("Message").SetValue(errorDialog, text, null);
        errorDialogType.GetProperty("Details").SetValue(errorDialog, ex.Message + Environment.NewLine + ex.StackTrace, null);
        errorDialog.StartPosition = FormStartPosition.CenterParent;

        return errorDialog.ShowDialog();
    }

used as:

    static void Main() {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        try {
            Application.Run(new MainWindow());
        } catch(Exception ex) {
            ShowErrorDialog("Uncaught exception, see details for more information.", "Error", ex);
        }
    }

Link to comment
Share on other sites

Yes you're right when saying that it is 0.4. And yes it updates to 0.7 automatically. You only need to manually update when you're using 0.3 since there was a breaking change and auto updating didn't work.

For your suggestions to wrap everything in a try catch:
I won't spend time on the current Updater since I am working on a highly improved version of the Updater which also implements a lot of logging. So the user would also be able to find issues on his own or send them to us.

Lithius likes this
Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Terms of Use