1
Fork 0
mirror of https://github.com/redstrate/Astra.git synced 2025-04-21 20:27:45 +00:00
Commit graph

405 commits

Author SHA1 Message Date
29cd58e62f Link to libQuotient only when BUILD_SYNC is enabled 2024-07-30 21:02:22 -04:00
0658f09995 Send a hash filelist up to the room to ensure we don't duplicate work 2024-07-30 21:02:22 -04:00
a382c07896 Call sync() before trying to synchronize game data
This should hopefully cut down on old room state
2024-07-30 21:02:22 -04:00
ce1411de79 Re-open the game window (if you have that option enabled) to show sync 2024-07-30 21:02:22 -04:00
a0da4d02b7 Implement sync locking, and upload data when quitting the game 2024-07-30 21:02:22 -04:00
3d989d5790 Add CMake option for sync support
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.
2024-07-30 21:02:22 -04:00
3ec355e79e WIP Sync 2024-07-30 21:02:22 -04:00
3b95982dcf Fix Astra considering the game exited when Dalamud exits
This is a design limitation of the Dalamud Injector (at least from how
we use it) because we depend on the child process exiting to be when the
game exists. For vanilla games, this is true but not for Dalamud. Now we
track the PID given to us by Dalamud and use that as an indicator to
when the game exits.

This is needed to properly keep tracked of when the game exists for the
future sync feature.
2024-07-30 19:15:37 -04:00
e32a61edad Add tabs to profile & account settings
The settings are getting quite long, so let's "fix" that by separating
them into categorical settings.
2024-07-28 22:40:54 -04:00
a8190dabbc Add buttons to reset server settings to default or localhost 2024-07-28 22:29:46 -04:00
2b346cb4fd Fix developer settings 2024-07-28 22:16:55 -04:00
20eba826ee Add explicit QIcon include 2024-07-28 22:15:12 -04:00
ee6c29a559 Add explicit QGuiApplication include 2024-07-28 22:15:12 -04:00
9de0b319ac Don't check for frontier url unless the launcher exists
This fixes a crash when trying to create a brand new profile
2024-07-18 14:01:32 -04:00
27e8169a0f Misc code cleanup
Make more things const, auto and whatnot
2024-07-04 20:53:06 -04:00
1401f9e85e Fix the asset updater downloading and checking the wrong Dalamud channel
Whoopsie, forgot to actually add it to the URL...
2024-07-01 23:05:46 -04:00
a30b26fa3a Meh, throw out XIVAPI and fetch avatars from the Lodestone directly
XIVAPI was kind of unnecessary here, and on top of that it's barely
working nowadays. We can grab the image URL directly from the Lodestone,
cutting out the middleman.
2024-06-29 20:46:08 -04:00
b04a4af954 Update the frontier fallback URL 2024-06-29 20:16:05 -04:00
b0b5b2916e Dynamically grab frontier URL from the existing launcher
Yet another thing we no longer have to worry about updating manually,
at least as often.

Fixes #8
2024-06-29 20:08:17 -04:00
8c956d96c2 Use new banner API, bump referer
Fixes #7
2024-06-29 19:57:16 -04:00
dfabcd6cd9 Add a way to use local, non-updatable Dalamud versions
You can now plop your own custom Dalamud installation into a "local"
folder under %APPDATA\dalamud and Astra will use it without question. It
won't update it or perform any game version checks.
2024-06-29 19:33:39 -04:00
d51ba16e5c Error out when the boot patching server returns 404
Found this while testing out Kawari, apparently we didn't check this
until now.
2024-06-29 15:15:20 -04:00
3618c509af Remove leftover console.info call 2024-06-29 15:14:34 -04:00
99785e5d68 Don't store patches in temp directories anymore
This was causing memory issues on systems (like Linux/Flatpak) where the
temp directory existed on tmpfs (aka RAM). Now they're stored in app
data and deleted when we're finished with them.

Fixes #17
2024-06-29 11:00:48 -04:00
5264753acc Only deploy on WIN32
This breaks on Linux in numerous ways
2024-06-28 05:42:37 -04:00
ac63581799 Meh, I meant to use qCritical and not qFatal 2024-06-27 22:48:26 -04:00
67fa840766 Add missing translation arg 2024-06-27 22:29:29 -04:00
ed35e95f9e Bubble up patching errors to the UI
It was asserting before and is very, very annoying to debug (I keep
having to do it today.) The errenous patch files are now deleted, too.
2024-06-27 22:27:21 -04:00
fa01b420d4 Slight adjustments to the non-auth launch parameters 2024-06-27 20:31:41 -04:00
2ab5a85741 Fix typo in Patcher assert 2024-06-27 20:31:31 -04:00
94ee8fa838 Create directory needed for version file when patching
Doesn't fix any real bugs, but just something I noticed since in
Dawntrail the first ex5 pack seems to only add a movie.
2024-06-27 20:31:19 -04:00
146f083163 Allow launching the game to the title screen for debugging purposes
This is hidden under developer settings because it's not supposed to be
a user facing feature.
2024-06-27 16:38:45 -04:00
498391bbb9 Check if Dalamud version is applicable to this game version before using
This stops it from trying to launch even though goatcorp said no. The
check is basic but should allow Dawntrail and future expansions to work
without having to toggle Dalamud off manually.
2024-06-27 16:38:18 -04:00
fe5fa786d7 Allow updating even if the worlds are closed
This allows updating in expansion maintenance periods. Also adds more
documentation in squareenixlogin.cpp::login.
2024-06-26 23:43:41 -04:00
f543dd433e Don't keep patches downloaded in memory
This now writes them directly to a temporary file, then renames them
when finished. This reduces the amount of memory Astra uses while
updating immensely and just makes the experience all-around much nicer.

Closes #10
2024-06-26 23:43:06 -04:00
d9b44e230c Remove "Unknown error" from login gate message
The network error should only be printed in the case where there's a
real error, otherwise it adds nothing but confusion.
2024-06-26 16:15:37 -04:00
3522b688bb Restore Flatpak support, add more scripts to help maintain it 2024-05-26 09:44:38 -04:00
e94483af2a Make the password field writeable again
This was previously disabled when you ticked "remember password" but I
ran into issues, let's try to make this work again in preparation for
0.6.0.
2024-05-26 08:43:33 -04:00
86d4fedb95 Don't try to download an invalid lodestone avatar 2024-05-26 08:34:24 -04:00
8dca4226b6 Hide some advanced Dalamud stuff behind the dev tools settings
For a normal user, they would never have to (and really shouldn't) the
injection delay or method options. This also reduces some of the options
overlay on this page.
2024-05-26 08:24:38 -04:00
a73b559a96 Fix toggling the news hiding the settings action 2024-05-26 08:24:02 -04:00
9fb38990e6 Refer to paths as "folders" in the UI 2024-05-26 08:18:48 -04:00
d83faa6bbb Add button to change the install folder when setting up a profile
This is useful if you want to set up the game on an external disk or SD
card, for example.
2024-05-26 08:15:20 -04:00
4948db82be Add a method to use existing game installations from other launchers
This should work for XIVLauncher.Core, XIVQuickLauncher and the official
launcher. More testing is needed of course, but the framework is there
now.
2024-05-26 08:03:52 -04:00
c671f30b48 Warn that Steam-linked Square Enix accounts are not supported 2024-05-26 06:18:30 -04:00
ed1423e2e4 Fix more links to point towards GitHub 2024-05-22 19:21:11 -04:00
7eead380be Don't create Wine prefix path when not needed 2024-05-18 18:39:08 +00:00
f5f143466b Don't install compatibility tool on Windows 2024-05-18 18:39:08 +00:00
474bd19337 Remove platform-specific default game path
This is the wrong way to do this, and a leftover from the old days.
2024-05-18 18:39:08 +00:00
8f9e42b097 Emit error when failing to open benchmark zip file 2024-05-18 18:39:08 +00:00