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 656 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
NinjaPedroX and others added 10 commits December 29, 2024 20:09
Still looks weird with the exiting animation (as if the brush transition takes place after the opacity transition)... not sure why
FINALLY... it's 3:30am and I got this figured out. I have no idea how I ended up with this black magic that you see before you, but it works pretty well. Please let me know if I've committed any unforgivable sins in these changes :)

On a more serious note, I think the scroll animation looks way better than it did before, but it still feels slightly jittery. And I don't like how I had to rely on a "LastOffset" property for this to work properly, but it's the best that I could come up with seeing that "ScrollViewer.Offset" is already changed to the target scroll value when this code is being run.
It now stays in sync with scroll offset changes outside of mouse wheel.
The animation target is now updated instead of recreating animation causing slight jitter.
Reusing views will allow scrollbar position to be remembered.
@Measurity Measurity linked an issue Jan 1, 2025 that may be closed by this pull request
@dartasen dartasen mentioned this pull request Jan 3, 2025
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