This fixes a "deficiency" in KWin, where controller input does not
wake up the screen. You have to manually block the screen locking or
else you need to move the mouse every so often. The system could also
sleep while patching, which is really bad.
This is a really simple implementation that can be expanded upon later.
This is to head towards removing the LauncherCore dependency inside of
Account (and by extension, AccountManager.) This function should really
belong here anyway, since it uses a lot of functionality from
LauncherCore.
This is to ease the amount of work for me packaging at first, so I can
focus on the actual feature. Once all packages support it, this option
can go away.
This uses the same profile system as the regular game, and can be used
to download the current benchmark (currently hardcoded, to be fixed
later.) Or as always, install it offline from an existing zip.
This removes the separate "download new game" page and rolls in into the
main profile setup. Also adds a feature to install the game from an
existing executable, in the event the official servers are down or
missing. Also shifts around some of the buttons and text.
Now there is more visible and consistent information such as the number
of patches and how far you're into the patching process. It's harder to
close or quit the window while patching to prevent errors, and
installing patches no longer freezes the window.
And fixes an issue where the boot component would never properly update.
The old pre-async login system (especially SE's) was this weird mess
and it wasn't clear what data was flowing where, etc. Now it's a flat
function with comments and a bit better logging.
In the rare situation where the goatcorp servers are offline, they
shouldn't prevent a profile from launching. This adds an option to
quickly disable Dalamud if needed.
Now the asset updating process is parallelized (especially asset file
downloading). There's less wasteful usage of the patcher and game
version reading when no patches need to be installed.