R2Northstar / Northstar

Repo for packaged Northstar releases
https://northstar.tf/
MIT License
1.69k stars 129 forks source link

Linux release #1

Closed foco21 closed 2 years ago

foco21 commented 2 years ago

When Will there be a linux release?

NuroDev commented 2 years ago

+1 for this 🐧

nddragoon commented 2 years ago

i assume it might work when/if there's a release for steam rather than origin installations but yeah getting left by the wayside like this fucking sucks. It's even gonna be harder to play tf2 on linux now since a ton of people are gonna go to community servers

pg9182 commented 2 years ago

I'm planning to play around with running the dedicated server under wine soon.

BobTheBob9 commented 2 years ago

i've not personally looked into it too much since i'm not a desktop linux user myself and titanfall is inevitably going to have to run under wine anyway, if people have any ideas on how to make it more linux-friendly then lmk or make a pull request

nddragoon commented 2 years ago

i've not personally looked into it too much since i'm not a desktop linux user myself and titanfall is inevitably going to have to run under wine anyway, if people have any ideas on how to make it more linux-friendly then lmk or make a pull request

i think the main issue is something about the file structure and how it looks for Origin. i tried adding nortstarlauncher.exe as a non-steam game and force it to launch with Proton but it says "error: failed reading origin path"

Mar2ck commented 2 years ago

Steam/Proton creates a new prefix for every game including non-steam games. So northstar wont work just by adding it that way because it'll be running in a different prefix which won't have origin installed

zombifier commented 2 years ago

I'm running Northstar with Steam/Proton and it works for me. You have to extract it directly to the Titanfall 2 install location and run it from within the directory:

WINEPREFIX=/home/username/.steam/steam/steamapps/compatdata/1237970/pfx/ /home/username/.steam/steam/steamapps/common/Proton\ 5.0/dist/bin/wine NorthstarLauncher.exe

Substitute directory names as necessary. It cannot be run in its own prefix (e.g. adding a non-Steam game).

EDIT: You also need to install vcrun2017 in the prefix with winetricks. I recommend protontricks.

protontricks 1237970 vcrun2019

Once done the launcher works perfectly from experience.

Mar2ck commented 2 years ago

I'm not at my PC right now so I can't test but in theory going into the steam launch options and putting "/home/example/.steam/steam/steamapps/common/Titanfall 2/NorthstarLauncher.exe" %command% but with the path changed to wherever northstar is on your PC should make it launch whenever you press play on Steam.

BobTheBob9 commented 2 years ago

i've not personally looked into it too much since i'm not a desktop linux user myself and titanfall is inevitably going to have to run under wine anyway, if people have any ideas on how to make it more linux-friendly then lmk or make a pull request

i think the main issue is something about the file structure and how it looks for Origin. i tried adding nortstarlauncher.exe as a non-steam game and force it to launch with Proton but it says "error: failed reading origin path"

this could very well be an issue, i'm finding it through registry since origin usually makes a regkey for its own path on windows, unsure of the behaviour there on linux/wine

nddragoon commented 2 years ago

I'm running Northstar with Steam/Proton and it works for me. You have to extract it directly to the Titanfall 2 install location and run it from within the directory:

WINEPREFIX=/home/username/.steam/steam/steamapps/compatdata/1237970/pfx/ /home/username/.steam/steam/steamapps/common/Proton\ 5.0/dist/bin/wine NorthstarLauncher.exe

Substitute directory names as necessary. It cannot be run in its own prefix (e.g. adding a non-Steam game).

The launcher works perfectly, though the games themselves are very laggy, but that's a separate problem.

this (tweaked to use the right directories) gets me to the Respawn logo, but then i get the good ol' engine corruption error. When i was installing tf2 on steam i fixed it by setting the language to english but i tried adding -language English to both the command and the args file and nothing

zombifier commented 2 years ago

I'm running Northstar with Steam/Proton and it works for me. You have to extract it directly to the Titanfall 2 install location and run it from within the directory: WINEPREFIX=/home/username/.steam/steam/steamapps/compatdata/1237970/pfx/ /home/username/.steam/steam/steamapps/common/Proton\ 5.0/dist/bin/wine NorthstarLauncher.exe Substitute directory names as necessary. It cannot be run in its own prefix (e.g. adding a non-Steam game). The launcher works perfectly, though the games themselves are very laggy, but that's a separate problem.

this (tweaked to use the right directories) gets me to the Respawn logo, but then i get the good ol' engine corruption error. When i was installing tf2 on steam i fixed it by setting the language to english but i tried adding -language English to both the command and the args file and nothing

Quick guess but the launcher probably doesn't pass the launch options to the Titanfall2.exe executable. You'll have to fix the language issue from Origin somehow.

nddragoon commented 2 years ago

Quick guess but the launcher probably doesn't pass the launch options to the Titanfall2.exe executable. You'll have to fix the language issue from Origin somehow.

weird, Origin also says it's set to english. I have no idea what could be causing this, i can even still launch vanilla tf2 from steam with no issues

p0358 commented 2 years ago

You'll have to fix the language issue from Origin somehow.

The unpacked executable doesn't launch through Origin, so any command line arguments set through Origin, including the language, won't be passed. The language might be inferred the product ID passed from the SDK.

A half-assed option for now for nicer experience might be to rename NorthstarLauncher.exe to Titanfall2.exe in the game dir to keep launching from the GUI

nddragoon commented 2 years ago

A half-assed option for now for nicer experience might be to rename NorthstarLauncher.exe to Titanfall2.exe in the game dir to keep launching from the GUI

this works perfectly actually! tysm

wallmenis commented 2 years ago

+1 for the penguins

PaulSchaetzle commented 2 years ago

A half-assed option for now for nicer experience might be to rename NorthstarLauncher.exe to Titanfall2.exe in the game dir to keep launching from the GUI

this works perfectly actually! tysm

Hi, I tried this but steam keeps launching the normal Titanfall version.

popcar2 commented 2 years ago

Hi, I tried this but steam keeps launching the normal Titanfall version.

I was struggling with this earlier today and finally got it working! This seems to be an issue with the newest stable branch of proton (6.3). I deleted the prefix (located in steam/steamapps/compatdata/1237970/) and forced the game to use proton experimental. Worked instantly straight out of the box after that!

So TL;DR for people scouring this thread: Place Northstar contents in the game files, rename NorthstarLauncher.exe to Titanfall2.exe (you can just rename the original exe to anything else), DELETE YOUR PREFIX FOLDER if it exists, and force using proton experimental. Should just work by launching titanfall 2 through Steam.

Arbitrate3280 commented 2 years ago

So TL;DR for people scouring this thread: Place Northstar contents in the game files, rename NorthstarLauncher.exe to Titanfall2.exe (you can just rename the original exe to anything else), DELETE YOUR PREFIX FOLDER if it exists, and force using proton experimental. Should just work by launching titanfall 2 through Steam.

So weird, for some reason it just doesn't work. Steam still launches the original version instead of the new Titanfall2.exe

For now I've set it up so I can launch it through Lutris. It's good enough.

lay-by commented 2 years ago

I was struggling with this earlier today and finally got it working! This seems to be an issue with the newest stable branch of proton (6.3). I deleted the prefix (located in steam/steamapps/compatdata/1237970/) and forced the game to use proton experimental. Worked instantly straight out of the box after that!

So TL;DR for people scouring this thread: Place Northstar contents in the game files, rename NorthstarLauncher.exe to Titanfall2.exe (you can just rename the original exe to anything else), DELETE YOUR PREFIX FOLDER if it exists, and force using proton experimental. Should just work by launching titanfall 2 through Steam.

I tried this with every proton version on steam, sadly it still just launches regular Titanfall 2.

For now I've set it up so I can launch it through Lutris. It's good enough.

Could you share your config for lutris (Wine version, Game options, etc)? Are you running the steam version of titanfall or from the origin client? I got the closest to the game working properly with this method. The client mod console started and logs showed it successfully hooked the game before getting the engine corruption error. Thanks in advance.

nddragoon commented 2 years ago

I tried this with every proton version on steam, sadly it still just launches regular Titanfall 2.

have you tried Proton GE? 6.21-GE-2 worked for me

Arbitrate3280 commented 2 years ago

Could you share your config for lutris (Wine version, Game options, etc)? Are you running the steam version of titanfall or from the origin client? I got the closest to the game working properly with this method. The client mod console started and logs showed it successfully hooked the game before getting the engine corruption error. Thanks in advance.

Just added the Northstarlauncher.exe as the executable. Added the prefix created by steam for the game as the wine prefix on lutris. The wine version is the most recent one available on lutris, that's all. The game is working fine, played a couple matches already. I'm on Manjaro, if that helps.

Sometimes a "file corruption" error shows up when starting the game, but simply closing it and opening again make it go away.

Just to add to the issue, creating a dedicated server is kinda clunky. A proper dedicated way to host a server through linux would be great.

lay-by commented 2 years ago

Just added the Northstarlauncher.exe as the executable. Added the prefix created by steam for the game as the wine prefix on lutris. The wine version is the most recent one available on lutris, that's all. The game is working fine, played a couple matches already.

Sometimes a "file corruption" error shows up when starting the game, but simply closing it and opening again make it go away.

Thanks, This worked for me.

have you tried Proton GE? 6.21-GE-2 worked for me

I got it to work with Proton GE 7.0

GeckoEidechse commented 2 years ago

I'm working on a wiki for Northstar at the moment whose content will hopefully be moved into the official Northstar wiki in the future.

I added a section for playing on Linux, would be great if someone that managed to get it working could add the necessary steps via pull request on the repo linked to the gitbook. EDIT: Wiki has since become the official one, check the Linux instructions here.

Optimal would be non-desctructive instructions that allow simple switching between Northstar and vanilla client (i.e. without having to renamve Titanfall2.exe each time), however anything that works is appreciated ^^

0neGal commented 2 years ago

would be great if someone that managed to get it working could add the necessary steps via pull request

Personally I did utterly nothing different, I simply changed which .exe to launch and it worked. My whole Wine setup is done through Lutris, like most people, in which I just changed it from Titanfall2.exe to NorthstarLauncher.exe and no problems at all.

PaulSchaetzle commented 2 years ago

I'm working on a wiki for Northstar at the moment whose content will hopefully be moved into the official Northstar wiki in the future.

I added a section for playing on Linux, would be great if someone that managed to get it working could add the necessary steps via pull request on the repo linked to the gitbook.

Optimal would be non-desctructive instructions that allow simple switching between Northstar and vanilla client (i.e. without having to renamve Titanfall2.exe each time), however anything that works is appreciated ^^

I also got it working through steam but in addition to the renaming of the .exe you have to launch it either with proton 5.13 (not recommended) or through proton-ge. Neither proton experimental nor proton 6.3 worked for me and it just keep launching the normal game.

EthanGJ123 commented 2 years ago

Quick guess but the launcher probably doesn't pass the launch options to the Titanfall2.exe executable

Correct me if I'm wrong, but if the game is installed with Steam I'm pretty sure it will use the Steam URL (e.g. "steam://rungameid/1237970") to launch the game, meaning any launch options set in Steam will be applied.

dvcky commented 2 years ago

I've spent a good couple hours trying to tinker with and get this to work, and I finally found some steps that seem to work for me on Steam every time (might be worth adding to the section on Linux?)

  1. Install the game on Steam and get it to boot to normal Titanfall 2 menu. (this is just a vanilla install, shouldn't require any tweaks or specific Proton version to launch as long as it's recent)
  2. Close the game and install Northstar (drop the Northstar files in the Steam folder for Titanfall 2, rename Titanfall2.exe to something else, then run ln NorthstarLauncher.exe Titanfall2.exe in that folder)
  3. Change the Proton version to Proton-7.3-GE-1. (you may need to download this)
  4. Delete the 1237970 folder in compatdata. (<YOUR_STEAM_LIBRARY>/steamapps/compatdata/)
  5. Launch game. Since we deleted the compatdata for this game, it will need to reinstall things like Origin and Visual C++ redistributables. Once it's done installing these, be patient! It might look like the game isn't opening, but it is. Give it about 5 minutes to open. (it won't take this long again, this is only a first-time thing) Just whatever you do, don't stop the process on this first run until the game has actually opened!
  6. Done! You should now be in Northstar :)

This guide may seem very similar to what has already been said a couple times, but there are two very critical things about this guide that seem to make it work for me:

  1. Proton version: The guide on Northstar's wiki just suggests to get Proton GE, but no specific version is mentioned. Most people might assume that means the latest version, but that didn't work for me. For some strange reason, all of newer Proton versions that use the GE-ProtonX-X naming scheme didn't work, where the ones labeled Proton-X.X-GE-X did. Proton-7.3-GE-1 is the last version to use the old naming scheme, so that is why I picked to use it in this guide. But I also tried Proton-7.2-GE-2 and Proton-7.1-GE-2, and they also seem to work.
  2. Being patient! I tried doing this without waiting like mentioned in step 5 (I would click STOP in Steam, which would kill the process). Every time I did that, future runs would have the Cause: Access Violation Data Execution Prevention (DEP) at: 0x00000000 error, meaning I would have to redo the steps. I'm not sure what it's doing here, maybe cleaning up the Origin install? Whatever it is, it seems critical to the game running properly.

I would love for people to try my steps if they haven't been able to get it working thus far, and let me know if it works!

GeckoEidechse commented 2 years ago

A support ticket on the Northstar Discord regarding issues on the SteamDeck was resolved by switching to Proton-7.3-GE-1 as described in your guide, @dvcky

dvcky commented 2 years ago

A support ticket on the Northstar Discord regarding issues on the SteamDeck was resolved by switching to Proton-7.3-GE-1 as described in your guide, @dvcky

🥳 That's fantastic to hear! Hopefully later versions of Proton and Proton GE will support whatever is needed in order for this to work, but for now this is what we've got! I'm glad I was able to help!

space-person commented 2 years ago

I've spent a good couple hours trying to tinker with and get this to work, and I finally found some steps that seem to work for me on Steam every time (might be worth adding to the section on Linux?)

1. Install the game on Steam and get it to boot to normal Titanfall 2 menu. (this is just a vanilla install, shouldn't require any tweaks or specific Proton version to launch as long as it's recent)

2. Close the game and install Northstar (drop the Northstar files in the Steam folder for Titanfall 2, rename `Titanfall2.exe` to something else, then run `ln NorthstarLauncher.exe Titanfall2.exe` in that folder)

3. Change the Proton version to `Proton-7.3-GE-1`. (you may need to download this)

4. Delete the `1237970` folder in compatdata. (`<YOUR_STEAM_LIBRARY>/steamapps/compatdata/`)

5. Launch game. Since we deleted the compatdata for this game, it will need to reinstall things like Origin and Visual C++ redistributables. Once it's done installing these, **be patient!** It might look like the game isn't opening, but it is. Give it about 5 minutes to open. (it won't take this long again, this is only a first-time thing) Just whatever you do, **don't stop the process on this first run until the game has actually opened!**

6. Done! You should now be in Northstar :)

This guide may seem very similar to what has already been said a couple times, but there are two very critical things about this guide that seem to make it work for me:

1. **Proton version:** The guide on Northstar's wiki just suggests to get Proton GE, but no specific version is mentioned. Most people might assume that means the latest version, but that didn't work for me. For some strange reason, all of newer Proton versions that use the `GE-ProtonX-X` naming scheme didn't work, where the ones labeled `Proton-X.X-GE-X` did. `Proton-7.3-GE-1` is the last version to use the old naming scheme, so that is why I picked to use it in this guide. But I also tried `Proton-7.2-GE-2` and `Proton-7.1-GE-2`, and they also seem to work.

2. **Being patient!** I tried doing this without waiting like mentioned in step 5 (I would click STOP in Steam, which would kill the process). Every time I did that, future runs would have the `Cause: Access Violation Data Execution Prevention (DEP) at: 0x00000000` error, meaning I would have to redo the steps. I'm not sure what it's doing here, maybe cleaning up the Origin install? Whatever it is, it seems critical to the game running properly.

I would love for people to try my steps if they haven't been able to get it working thus far, and let me know if it works!

Oh my god, I can't believe that worked! I tried so much, but this finally worked for me! Thank you so much, I hope you know it's really appreciated :) (I hated switching to Windows to play TF2 haha)

CTalvio commented 2 years ago

I've been suffering from the Access Violation DEP bug, and no matter what I did I was unable to get the game to launch with Northstar. I'm using the Origin version via lutris, and my attempts to use the recommended version of Proton GE in lutris were unsuccessful.

Nothing worked. Until I tried deleting the LatencyFlex .dlls (the ones you place in the prefix, in system32). It immediately launched on the next attempt, no other changes needed. Not even restarting Origin.

ZacNoble commented 2 years ago

I've spent a good couple hours trying to tinker with and get this to work, and I finally found some steps that seem to work for me on Steam every time (might be worth adding to the section on Linux?)

1. Install the game on Steam and get it to boot to normal Titanfall 2 menu. (this is just a vanilla install, shouldn't require any tweaks or specific Proton version to launch as long as it's recent)

2. Close the game and install Northstar (drop the Northstar files in the Steam folder for Titanfall 2, rename `Titanfall2.exe` to something else, then run `ln NorthstarLauncher.exe Titanfall2.exe` in that folder)

3. Change the Proton version to `Proton-7.3-GE-1`. (you may need to download this)

4. Delete the `1237970` folder in compatdata. (`<YOUR_STEAM_LIBRARY>/steamapps/compatdata/`)

5. Launch game. Since we deleted the compatdata for this game, it will need to reinstall things like Origin and Visual C++ redistributables. Once it's done installing these, **be patient!** It might look like the game isn't opening, but it is. Give it about 5 minutes to open. (it won't take this long again, this is only a first-time thing) Just whatever you do, **don't stop the process on this first run until the game has actually opened!**

6. Done! You should now be in Northstar :)

This guide may seem very similar to what has already been said a couple times, but there are two very critical things about this guide that seem to make it work for me:

1. **Proton version:** The guide on Northstar's wiki just suggests to get Proton GE, but no specific version is mentioned. Most people might assume that means the latest version, but that didn't work for me. For some strange reason, all of newer Proton versions that use the `GE-ProtonX-X` naming scheme didn't work, where the ones labeled `Proton-X.X-GE-X` did. `Proton-7.3-GE-1` is the last version to use the old naming scheme, so that is why I picked to use it in this guide. But I also tried `Proton-7.2-GE-2` and `Proton-7.1-GE-2`, and they also seem to work.

2. **Being patient!** I tried doing this without waiting like mentioned in step 5 (I would click STOP in Steam, which would kill the process). Every time I did that, future runs would have the `Cause: Access Violation Data Execution Prevention (DEP) at: 0x00000000` error, meaning I would have to redo the steps. I'm not sure what it's doing here, maybe cleaning up the Origin install? Whatever it is, it seems critical to the game running properly.

I would love for people to try my steps if they haven't been able to get it working thus far, and let me know if it works!

bless you

AwesomeFTW commented 1 year ago

I've spent a good couple hours trying to tinker with and get this to work, and I finally found some steps that seem to work for me on Steam every time (might be worth adding to the section on Linux?)

1. Install the game on Steam and get it to boot to normal Titanfall 2 menu. (this is just a vanilla install, shouldn't require any tweaks or specific Proton version to launch as long as it's recent)

2. Close the game and install Northstar (drop the Northstar files in the Steam folder for Titanfall 2, rename `Titanfall2.exe` to something else, then run `ln NorthstarLauncher.exe Titanfall2.exe` in that folder)

3. Change the Proton version to `Proton-7.3-GE-1`. (you may need to download this)

4. Delete the `1237970` folder in compatdata. (`<YOUR_STEAM_LIBRARY>/steamapps/compatdata/`)

5. Launch game. Since we deleted the compatdata for this game, it will need to reinstall things like Origin and Visual C++ redistributables. Once it's done installing these, **be patient!** It might look like the game isn't opening, but it is. Give it about 5 minutes to open. (it won't take this long again, this is only a first-time thing) Just whatever you do, **don't stop the process on this first run until the game has actually opened!**

6. Done! You should now be in Northstar :)

This guide may seem very similar to what has already been said a couple times, but there are two very critical things about this guide that seem to make it work for me:

1. **Proton version:** The guide on Northstar's wiki just suggests to get Proton GE, but no specific version is mentioned. Most people might assume that means the latest version, but that didn't work for me. For some strange reason, all of newer Proton versions that use the `GE-ProtonX-X` naming scheme didn't work, where the ones labeled `Proton-X.X-GE-X` did. `Proton-7.3-GE-1` is the last version to use the old naming scheme, so that is why I picked to use it in this guide. But I also tried `Proton-7.2-GE-2` and `Proton-7.1-GE-2`, and they also seem to work.

2. **Being patient!** I tried doing this without waiting like mentioned in step 5 (I would click STOP in Steam, which would kill the process). Every time I did that, future runs would have the `Cause: Access Violation Data Execution Prevention (DEP) at: 0x00000000` error, meaning I would have to redo the steps. I'm not sure what it's doing here, maybe cleaning up the Origin install? Whatever it is, it seems critical to the game running properly.

I would love for people to try my steps if they haven't been able to get it working thus far, and let me know if it works!

Still works in April 6, 2023. I had tried many other troubleshooting steps in both the official documentation and other GitHub issues, as I couldn't get northstarproton to work correctly, it would just show the stop button on Steam, with nothing else showing up, even after waiting. Perhaps this could be added to the Troubleshooting page in here as a last resort?