Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve linux support (new launcher) #1848

Open
wants to merge 676 commits into
base: master
Choose a base branch
from

Conversation

Measurity
Copy link
Collaborator

@Measurity Measurity commented Aug 23, 2022

  • Allow build to complete with dotnet build on dotnet SDK 8+
  • Alternative to NitroxLauncher to play Subnautica with Nitrox.
  • Remove original launcher project (NitroxLauncher)
  • Fix solution build errors/warnings (individual projects succeed)
  • Add instant launch to new launcher (when this PR is merged Excellently improve player movements in Cyclops #2154)
  • Design review from @zanethefox
  • MacOS support @dartasen
  • Use dark theme for pop-ups
  • Add loading indicators for IO tasks as they can take unpredictable amounts of time (e.g. anti virus interrupting file writes)
  • Add embedded server option as it was in old launcher
  • Don't show errors immediately for modals (wait for user to defocus the input)

This PR includes solution-wide changes to multi-target for .net 9 (server, launcher) and .net 4.7.2 (game client), allowing benefits of modern .net where possible.

Closes #988

Resources to assist with implementation

@Measurity Measurity force-pushed the linux branch 2 times, most recently from cfb2938 to dc11b8b Compare October 29, 2022 23:46
@Measurity Measurity changed the title Improve linux support Improve linux support (new launcher) Nov 6, 2022
@Measurity Measurity force-pushed the linux branch 2 times, most recently from 49cf07d to bbfcd47 Compare November 6, 2022 10:47
@Measurity Measurity mentioned this pull request Dec 9, 2022
@dartasen dartasen mentioned this pull request Jul 3, 2023
3 tasks
@Measurity Measurity added the Area: setup Related to installing or configuring Nitrox label Dec 26, 2023
@Measurity Measurity marked this pull request as ready for review June 21, 2024 04:47
@Measurity Measurity requested a review from zanethefox June 21, 2024 04:48
@NinjaPedroX
Copy link
Contributor

With that, we present to you the Cross-Platform launcher. Have fun reviewing this 🌚

@IsaiahPetrichor
Copy link

I have just tested this build on Linux, it does not support server save files from earlier versions or launch on Linux. While the new launch looks and feels great it fails to address the original issue of Linux support. The current version of the launcher is more functional on Linux, however, it fails to detect a running Steam instance so it doesn't launch the game. If we just fixed the code for detecting Steam it should let us avoid rewriting the entire launcher.

@NinjaPedroX
Copy link
Contributor

NinjaPedroX commented Aug 1, 2024

I have just tested this build on Linux, it does not support server save files from earlier versions or launch on Linux.

Nitrox v1.8.0.0 is not meant to support older save files since there were major changes made to the build system.

@Measurity Measurity added this to the 1.8 milestone Aug 9, 2024
@Measurity Measurity linked an issue Aug 9, 2024 that may be closed by this pull request
Measurity and others added 25 commits January 6, 2025 13:08
XAML Styler plugin auto formatted on save but there's a bug here where it formats selector syntax too...
Fixed using ScrollViewer with DockerPanel&Grid combo.
The hyperlink text wasn't aligned for some reason and I thought it would look better if it was a button instead of a link. That being said, it looks a bit weird to have there.
There was a weird styling issue that I noticed where the actual "text" block area was centered within the textbox, making the cursor not change unless you hovered over it and also making selecting text a bit less convenient.

This commit fixes that, though it would've been easier to fix had it not been for the DockPanel#PART_InnerDockPanel element refusing to stay at 0 margin and instead continuing to use the TemplateBinding padding. About 2.5 hours of work had to be put in and many hoops had to be jumped through to solve this issue :(
There is still an issue with initial foreground coloring, mentioned by the "TODO" comment in the code.
Skipped over prior color tags to the last applicable.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: setup Related to installing or configuring Nitrox Area: user interface (launcher) Related to UI/UX in the launcher
Projects
None yet
7 participants