Author Topic: Slow down reasons and possible fixes - An Aurora C# guide  (Read 402 times)

0 Members and 1 Guest are viewing this topic.

Offline froggiest1982 (OP)

  • Gold Supporter
  • Vice Admiral
  • *****
  • f
  • Posts: 1148
  • Thanked: 425 times
  • Gold Supporter Gold Supporter : Support the forums with a Gold subscription
    2021 Supporter 2021 Supporter : Donate for 2021
Slow down reasons and possible fixes - An Aurora C# guide
« on: September 04, 2021, 07:08:51 PM »
There are several reasons for you game to run slow.

The most common are:

  • Too many days and events displayed on your event window
  • Too many civilian shipping lines and ships
  • Too many DB lines

Here is a list of fixes you can apply to your game and get your game back to an acceptable speed. Some of these fixes require a DB edit which will make your game not eligible for bug reporting. While these fixes have been performed successfully by many players I cannot guarantee 100% you will not experience any issues, however, in the 99.99% of cases they will not break your game.

Please note that so far nobody has encountered a situation where the game is unplayable as it was the VB6 version but still, some would like to have consistent performances as the game progresses and this guide is an attempt to helping you with that.



Too many days and events displayed on your event window
As the game advance this setting, which doesn't influence much the beginning in its standard settings, may require adjustment to cope with the inevitable lagging caused by other issues highlighted later in this post.

Cause: Too many lines to update in the Event Window
Responsible: Player Settings

How to fix: Open Aurora C# Event Window of your game and change the below settings with 60 event days and 100 max events. After multiple attempts, this is the lesser amount the game can handle. Even at smaller numbers there is no change in performances.





Too many civilian shipping lines and ships
If you are playing with the civilian shipping lines activated, these can get out of hand quite fast quite soon. In fact, once you have a lot of them, the game will take longer times to perform all the checks prior completing cycles resulting in slower calculations. There are 2 ways to fix this issue, one is to cancel some ships or entire lines from time to time and the other is to avoid new ships or lines to be created.

Cause: Too many civilian ships
Responsible: Player and Game settings

How to fix (cancelling ships or shipping lines): Open Aurora C# Naval Organization window of your game and check how many shipping lines and ships you have. If required, delete some via the delete button. Make sure the Show Civilian flag is active. Usually the Civilian Lines are all listed at the bottom of the Naval Organization.



How to fix (avoid new ships or shipping lines to be created): Open the Aurora C# Game Information window of your game and uncheck the flags relative to civilians. Push the button save on the setting screens and save your game. Exit and restart for the change to be active.





Too many DB lines
Aurora C# SQL database is not able to delete empty lines and pages by itself and for most areas it is better to do not mess with the DB. However, especially after ground battles (or particularly large space battles) the amount of events generated starts to clutter the DB making it heavy and longer to read and update. This can result in slower reaction during cycles (lag) or longer load/save time.

Cause: Too many DB lines and large DB dimension on disk
Responsible: Aurora C# DB file

How to fix: The easiest way to limit this issue is to limit your DB to one game. Multiple games on same DB will double many of the existing structural lines: techs, commanders, population, spoiler, and more are just a few examples. By having only one game in each DB you are already limiting the amount of new lines generated. Although, even with one game only, soon you may need to "clean" your DB from time to time. To do so you are going to need an SQL reader and basic if none shell commanding skills.
I use DB Browser for SQLite available here: https://sqlitebrowser.org/
To perform the event log clean, open the Aurora DB (always make a backup first!) and then under the Browse Data slide select FCT_GameLog. Here is the list of the game events which you can sort by kind if you wish to delete only some of them (not recommended). I usually copy them on an excel file prior deleting in case I want to create an AAR after. It is also easier to find what is required for your story this way.



Once all the lines have been deleted, the empty pages will still be there though. To clear the pages and also shrink the DB size you need to perform a command called VACUUM. To do so head under the Execute SQL slider and insert the command VACUUM; . Once done run the Play button and reply yes to the PRAGMA alert message. Remember to go under File and select Save All to make the DB change effective.



If all went well, your DB file will be smaller and your game will run faster. Below an example of a database before and after the VACUUM. You can see the big difference in size. It's an old game of mine so the date is a month apart.


before VACUUM


after VACUUM
« Last Edit: September 05, 2021, 07:09:36 AM by Steve Walmsley »
 
The following users thanked this post: ardem, Garfunkel, Black, serger, BAGrimm, unkfester, Density, ISN, gpt3

Offline Garfunkel

  • Registered
  • Vice Admiral
  • **********
  • Posts: 2187
  • Thanked: 653 times
Re: Slow down reasons and possible fixes - An Aurora C# guide
« Reply #1 on: September 05, 2021, 02:49:40 AM »
Excellent guide mate, thanks!
 
The following users thanked this post: froggiest1982

Offline ardem

  • Rear Admiral
  • **********
  • a
  • Posts: 807
  • Thanked: 31 times
Re: Slow down reasons and possible fixes - An Aurora C# guide
« Reply #2 on: September 05, 2021, 06:22:10 AM »
This is great it should be stickyed if it is not already.
 
The following users thanked this post: froggiest1982