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

Linux or Steam Deck or Proton support #3

Closed
Fractal147 opened this issue Jun 24, 2023 · 71 comments
Closed

Linux or Steam Deck or Proton support #3

Fractal147 opened this issue Jun 24, 2023 · 71 comments

Comments

@Fractal147
Copy link

I guess kinda guide, kinda an issue.

A focus for me for Mass Effect Legendary (ME:L) - which benefits from not having the EA App, since it breaks (by pushing a cloud save with all of them unlocked, whenever it's online) achievements.

(If you read this, and are willing to faff, you can follow the "set EA App to offline every single time you launch the game, and also delete the local achievements file while ME:L is in the launcher menu the first time" Link1

Follow the usual old origin version download, install: Link2

There's actually not much to do in principle: Wine (Proton) needs to be told to use your version.dll:

  • either through the gui (winecfg), and adding 'version' to the list of libraries (Default is native first)
  • or by adding WINEDLLOVERRIDES="version=n,b" to the launch options.

This now, on Linux, GE-Proton7-48, gets me to the Origin library page. But it won't launch ME:L.
Proton8.0-2 on the same prefix is the same - Origin, but no game. It is hanging around as a background app though.

@p0358
Copy link
Owner

p0358 commented Jun 24, 2023

I decided to do some tests myself on Ubuntu 22.10 VM and Bottles (runner is soda-7.0-9, default preset for games). I installed Origin and was able to just run my installer:
image

After setting the DLL override for version in the Bottles settings, I can run Origin as expected:
image

Then I tried installing Peggle and failed, however I was able to install and run Jade Empire as an example game:
image

As the next thing I decided to install Mass Effect 2 (I don't have any other game from this series):
image
Unfortunately, it seemed to have failed with the same error as Peggle so far. However if a particular game is already installed, at least running it up seems to work generally...

As for your situation, are you running Proton and having the game actually on Steam? There is a chance that EA App in the container is interfering with the game launching, did you try running the Origin installer again? You could also try running regedit within the prefix and making sure that link2ea protocol is still assigned to Origin (in HKEY_CLASSES_ROOT):
image

@Fractal147
Copy link
Author

I should have said earlier too: Thank you so much for the work on this. It's literally the only step forwards in this EA nightmare.

For my situation, I'm using steam directly - so yes it is effectively using the link2ea:// shortcut after launching proton. It must be somewhat working, since proton does launch with the full library screen, but it does not launch the game and leaves no error.

I've tried again with a blank prefix, this time ensuring I cancelled out of the EA Desktop installer. Using PROTON_VERSION="GE-Proton8-4" protontricks --gui, I launched explorer.exe and installed Origin (10.5.122.52971), with all tickboxes disabled. Note that the following autolaunch gives a black rectangle instead of a login - I alt-f4'd it away. Then installed the patch from this repo's exe, ticking the spoof EA Desktop checkbox.
I confirm the registry entry is pointing to Origin\EALink.exe

It continues the same - launching Origin to the library page (with games!), but not quite launching the game manually or automatically.

(As an aside, I'm also trying to get the steam in game overlay to work - it seems the origin/EA one overrides (or covers?) it, and I don't seem to be able to disable it selectively.)

@Fractal147
Copy link
Author

( I mention the overlay because the steam in-game overlay is actually running in the background of the Origin program. You can hear it - it interacts, you can go through menus, etc. But you can't see it! )

@Fractal147
Copy link
Author

Hum. I attach origin's Client_Log.txt,
failed_client_log.txt
There's an acute error -
Failed to start playing entitlement Origin.OFR.50.0004049@steam createNewProcess returned NULL.
but it could be a number of reasons.
(Yes, it crashes at the end - this was me messing around in the invisible steam overlay, which upset vulkan somehow).

@p0358
Copy link
Owner

p0358 commented Jun 24, 2023

It continues the same - launching Origin to the library page (with games!), but not quite launching the game manually or automatically.

That's kinda weird, it does seem like there's one person on Twitter who seems to have the same issue, but on Windows. On the other hand I've seen someone in Reddit comments under one post report that launching Steam games works for them. I personally confirmed it only as far as it'd go into the login screen to associate the account, I should probably try to do the full login and game bootup...

it seems the origin/EA one overrides (or covers?) it, and I don't seem to be able to disable it selectively

you can try renaming the igo*.dll libraries in Origin installation dir, they're responsible for the Origin [crappy] overlay, and iirc they do get injected into processes and mess them up even if the overlay is disabled in Origin settings

I should have said earlier too: Thank you so much for the work on this. It's literally the only step forwards in this EA nightmare.

I'm glad it's useful for someone <3 Honestly finding workaround against their updates is kinda fun lol

Failed to start playing entitlement Origin.OFR.50.0004049@steam createNewProcess returned NULL.

I also see this one: [Origin.OFR.50.0004049@steam] CRC Map missing! Content needs repair.. It'd be useful if we could see if successful game launch also contains this one.

Seeing the main error though, for the time being, it'd be useful if you could enable WINE's verbose logging, to see if it could log us some details about the potential CreateProcess call it did, and why exactly might it fail, if it even did that at all...

Also one more thing I'm thinking about: when did you actually install/repair your game within Steam? I'm thinking the culprit could also be installScript.vdf changes, but I'll need to take a closer look before I could draw any conclusions there

@p0358
Copy link
Owner

p0358 commented Jun 24, 2023

To be precise, tell me if your game has its folder under C:\ProgramData\Origin\LocalContent and what files are inside of it

@Fractal147
Copy link
Author

when did you actually install/repair your game within Steam?
Steam game was downloaded/verified before launch. (it is nominally working with EA Desktop/defaults, on a separate prefix), the prefix wiped (so this is the C:\ environment Origin will see), and the steam Play button pressed, running the installscript.vdf enough to do the directX bits, so I'm pretty sure the EA app isn't still around.

There is C:\ProgramData\Origin\LocalContent, containing "Mass Effect Legendary Edition"

  • Origin.OFR.50.0004049.dat
  • Origin.OFR.50.0004049.mfst

of which the .mfst file strings contain
?autoresume=0&autostart=0&contentversion=1.0.0.1621466&currentstate=kReadyToStart&ddinitialdownload=0&ddinstallalreadycompleted=0&dipInstallPath=&downloaderversion=9.0.0.0&downloading=0&dynamicdownload=0&eulasaccepted=1&id=Origin.OFR.50.0004049%40steam&installdesktopshortcut=0&installerchanged=0&installstartmenushortcut=0&isitoflow=0&islocalsource=0&ispreload=0&isrepair=0&locale=&optionalcomponentstoinstall=0&paused=0&previousstate=kCompleted&savedbytes=0&stagedfilecount=0&totalbytes=0

and the .dat file contains, in 16-bit text (strings -e l *.dat)
1.0.0.1621466 en_US C:\Program Files (x86)\Origin Games\Mass Effect Legendary Edition\ 6CHILD_MANUAL_DOWNLOAD_EMPTY

Which is a little sus, since that's not where my game actually is (From window's point of view, it's on Z:\ somewhere). Making a symbolic link (with ln -s ) to fake it sadly does not work - identical errors.

@Fractal147
Copy link
Author

you can try renaming the igo*.dll libraries in Origin installation dir
Unfortunately this seems to also disable the steam overlay - it's the IGO64.dll that (should) call the steam game overlay. I've tried looking through strings, and it's definitely interacting with steam when running...it just seems broken.

@p0358
Copy link
Owner

p0358 commented Jun 24, 2023

Oh also show me the Bootstrapper_Log.txt and ../EALink/EALink_Log.txt too

@p0358
Copy link
Owner

p0358 commented Jun 24, 2023

Which is a little sus, since that's not where my game actually is (From window's point of view, it's on Z:\ somewhere). Making a symbolic link (with ln -s ) to fake it sadly does not work - identical errors.

That should be fine, as this file is statically copied during game installation, only the .mfst is dynamically generated. Bigger issue is that I see map.crc is missing, this could explain the CRC error, but I'm not sure if that could be the culprit yet

They look OK:

Yeah, I didn't spot the thing I was looking for in there. I did notice they inserted the authCode into the log though, so I took the liberty of removing your comment ;_;

I'll try to look into issue #4 that I was able to reproduce and see if these two could be related. Also after a quick reversal it looks like the message createNewProcess returned NULL. could be a lie too (that function should virtually never return null either)

Repository owner deleted a comment from Fractal147 Jun 24, 2023
@Fractal147
Copy link
Author

Huh, with the EA App, deleting IGO64.dll seems to leave no overlay. With the Origin app, deleting igo64.dll allows me to access the steam overlay in Origin itself oddly. Still no launchy - it's passing through to steam though nothing happens. (from steam:)

ExecCommandLine: "'~/.steam/root/ubuntu12_32/steam' '--' 'steam://run/1328670'"
ExecuteSteamURL: "steam://run/1328670"

@p0358
Copy link
Owner

p0358 commented Jun 24, 2023

Hm, in such case it looks like Steam injects its overlay into the first process that gets launched, which'd be Origin. I wonder if it might be possible to manually inject Steam overlay into the target game. I found this on very quick search: https://gist.github.com/Andon13/d439d5334d8173e5b959f383f1c49b03

Now I wonder if perhaps compiling the above and replacing it as IGO DLL of appropriate architecture could make Origin inject a Steam overlay loader into the actual game (provided it'd still need some DllMain func to actually call the code, and a way to detect current Steam app ID, which might be set in the env variable, but not sure of that)

@p0358
Copy link
Owner

p0358 commented Jun 24, 2023

@Fractal147 check if it's any better in this version: https://github.com/p0358/Fuck_off_EA_App/actions/runs/5366002510

@Fractal147
Copy link
Author

this version: https://github.com/p0358/Fuck_off_EA_App/actions/runs/5366002510

Well! That's different - it launches Origin, and Origin ...err... kills itself. So that is progress in the right direction.
EALink seems to be working the same, ditto for Bootstrapper. I can't tell if anything's off in Client_Log:

fail2_Client_Log.txt

@p0358
Copy link
Owner

p0358 commented Jun 24, 2023

It looks like it exits due to this:

**354    [2023-06-24 20:32:40.806]     Error     Origin::Services::ProcessWin::waitForExit                                   1980      ProcessWin: 0xbbc    Exit result: 0
**355    [2023-06-24 20:32:40.806]     Error     Origin::Engine::Content::LocalContent::onProcessFinished                    1436      EASteamProxy returned -2

And apparently EASteamProxy.exe exits with code -2 if the call to SteamAPI_Init() at the very beginning fails...

Possible causes are listed here:
https://partner.steamgames.com/doc/sdk/api#initialization_and_shutdown

But you may try to follow these steps to enable debug logging in Steam: https://partner.steamgames.com/doc/sdk/api/debugging#steamworks_api_logging

which is I guess to run Steam with -console -debug_steamapi and then doing log_ipc verbose after trying to launch the game I suppose

@p0358
Copy link
Owner

p0358 commented Jun 24, 2023

Hm, I've just installed the free-to-play The Sims 4 from Steam to test it out on Windows, and it seems to work there just fine... So that suggests it's now some Steam/Proton issue rather than of Origin or this patch

@Fractal147
Copy link
Author

Well...either through my incompetence or something else, I can't get log_ipc verbose to record anything (trying either version.dll too). There's a filter parameter but I get nil:
Calls over the last 454367 milliseconds:
Process Method Calls First Last
-------------------- ---------------------------------------- ---------- ---------- ----------

Switching back to the previous version.dll restores old behavior - hang on store page.

@p0358
Copy link
Owner

p0358 commented Jun 24, 2023

Yeah in the old version.dll, the Origin would prematurely decide to not continue booting up games if it was externally invoked (there was one native check for migration that I skipped). But right now I'm not sure why it might be failing. I think for now I'll just release the current changes as v2, as it fixes a few issues on its own either way

@SeongGino
Copy link

I initially thought the error was a CDN mishap, but it's something I can currently reproduce trying to install NFS Most Wanted--whether it's found files that already exist or downloading it fresh, it's the same error 327684:3.

It's the only game I've installed that has this issue so far, though. BF4, V, SWBF2 (activated through EGS), Jedi Fallen Order, and Titanfall 2 are detected, run, and connect properly. So wonder what's with the exceptions...

@begin-theadventure
Copy link

begin-theadventure commented Jun 25, 2023

I tested this patch with Lutris and can confirm that it's working with DLL override (Configure->Runner options->DLL overrides: Key version Value native,builtin).

@Doc-4
Copy link

Doc-4 commented Jun 26, 2023

Same here, as far as I can tell everything works perfectly with the DLL override, the issues with getting origin to successfully install games after getting the failed notifications was resolved by nuking the origin prefix and starting over. Try not to change wine versions too much, that's what started mine getting the errors.

@p0358 p0358 pinned this issue Jun 27, 2023
@SeongGino
Copy link

Same here, as far as I can tell everything works perfectly with the DLL override, the issues with getting origin to successfully install games after getting the failed notifications was resolved by nuking the origin prefix and starting over. Try not to change wine versions too much, that's what started mine getting the errors.

Including the issues I noted in my earlier comment?

Wine version? Method? I know for a fact my prefix wasn't having Wine versions switched at all since it was made and it has the issue with NFS when using Wine-GE at least.

@Fractal147
Copy link
Author

Progress regarding use direct from steam:

I think there is (as is typical) a problem with the Visual C++ redistributables:
IGOSteamProxy.exe is failing with some import errors (Look for ":err:" in the PROTON_LOG=1 logfile at steam-1328670.txt).

My initial launch with steam is creating a blank prefix, fine, and running the EA Desktop installer, fine if cancelled... but it's also installing the VC redist for EA Desktop. Origin maybe needs an older version...that won't be installed if there's a newer version already there.

So...either you can purge out the old install, or make a proper blank prefix to install origin in, and make sure to install the correct vcredist for origin...

Of course in my specific case, Mass Effect Legendary has only ever "just worked" with EA desktop, since Proton-GE-6.8-2 in 2021, after EA desktop started replacing Origin.

So will do some digging!

@Doc-4
Copy link

Doc-4 commented Jun 29, 2023

Progress regarding use direct from steam:

I think there is (as is typical) a problem with the Visual C++ redistributables: IGOSteamProxy.exe is failing with some import errors (Look for ":err:" in the PROTON_LOG=1 logfile at steam-1328670.txt).

My initial launch with steam is creating a blank prefix, fine, and running the EA Desktop installer, fine if cancelled... but it's also installing the VC redist for EA Desktop. Origin maybe needs an older version...that won't be installed if there's a newer version already there.

So...either you can purge out the old install, or make a proper blank prefix to install origin in, and make sure to install the correct vcredist for origin...

Of course in my specific case, Mass Effect Legendary has only ever "just worked" with EA desktop, since Proton-GE-6.8-2 in 2021, after EA desktop started replacing Origin.

So will do some digging!

Off topic, but if you don't mind some advice, ME:LE has no network features that benefit the player outside of achievements (telemetry is the only other one 🤮), I'd recommend patching the game with tools out there on the internet to run without launchers other than steam, then redefine the "link2ea://" protocol in the wine registry to just run the game executable. Makes for a more pleasant experience

@Fractal147
Copy link
Author

Yep, that did it!
So, for running Mass Effect Legendary edition...and probably having the achievements work again: (I need to actually get one now...)

  1. Delete the existing proton prefix under [steam library]/steamapps/compatdata/1328670 (there's a GUI for this in big picture mode under Properties)
  2. Select some version of proton in steam->compatibility tools - I used GE-Proton8-4, but it will probably work with anything 7 upwards.
  3. Launch options should be something like WINEDLLOVERRIDES="version=n,b" %command%
  4. There is no step 4
  5. Click "Play" in steam, and pretty quickly click "Cancel" - Ideally the EA Desktop app will present you with "Let's go" . Don't - "x" out of that. Hopefully the installscript stops there and does not do any of the vcredist steps
  6. Run (by whatever means, in the prefix) Origin installer: protontricks-launch --appid 1328670 [wherever you put it]/OriginSetup-10.5.122.52971.exe
  7. Run (by whatever means, in the prefix) the patch: protontricks-launch --appid 1328670 [wherever you put it]/Fuck_off_EA_App_installer.exe
  8. Yep, play the game. Took about 30 s to launch, but did the splash screen etc.
  9. If you've mangled achievements already (they're all unlocked in the main menu->Extras->Achievements for ME2 and ME3 in game, but not in Steam), delete TrilogyGameProfile and ME2/GamerProfile and ME3/Local_Profile in the [prefix]/users/steamuser/My Documents/BioWare/Mass Effect Legendary Edition/Save folder.
  10. While you're at it, disable the terrible origin overlay. It adds stutter and lag, and breaks the steam overlay: Rename/delete igo64.dll in 1328670/pfx/drive_c/Program Files (x86)/Origin
  11. Now shift-tab in game should bring up the steam in game overlay, allowing actual rebinds. (This fix didn't work in the EA Desktop app, for some reason). Note I do have to alt-tab in and out of the game to actually be able to see the overlay change, otherwise audio only. Sigh.

@Fractal147
Copy link
Author

Fractal147 commented Jun 29, 2023

Marking as resolved - at least v2 works, and probably has always worked in Proton. Hopefully this helps others! It works on Lutris etc, because they don't even try to run anything extra (like installscript.vdf)
If someone figures out how run the installer of Origin, and the installer of this patch on Steam Deck, these instructions should work there too. Looks like protontricks is installable on SD, which makes it easy
As a happy byproduct, this fixes (or allows you to fix) Achievements in ME2 and ME3, and mostly fixes (or allows you to mostly fix) the Steam in-game overlay, allowing steam controllers, Steam Deck rebinds through it.

Thank you @p0358 , you are the best. I never thought I would want Origin, but it turns out to be the lesser of two evils. (and yes @Doc-4... I'm sure another route avoiding either evil would work even more smoothly!).
A launcher launching a launcher to launch a launcher to launch a launcher to launch a launcher to launch a launcher to launch a game is a waste of everyone's time, and wholly avoidably by EA. Refer to the repo title for my feelings.
(Steam->link2ea->Origin(or EA app)->IGOSteamProxy->Steam again lol->ME_trilogy launcher->ME*)

Origin's link to Steam (IGOSteamProxy.exe) will break horribly (and with obvious err lines in the proton_log) if the proton prefix has the vcredist installed for EA Desktop, that the installscript.vdf will try and install shortly after you exit the EA Desktop installer. (Unless you press "Cancel" in Steam during the first launch.).

@Fractal147
Copy link
Author

If you're using a GE-Proton6 release, and trying to get Mass Effect Legendary to work, you must use winecfg, since it overrides WINEDLLOVERRIDES when you launch the game :
Proton-6.10-GE-1/protonfixes/gamefixes/1328670.py: util.set_environment('WINEDLLOVERRIDES','openal32=b')

I've had success by editing that file (in Proton-6.10-GE-1) to add on the ;version=n,b bit.

It also seems to get into difficulty installing the dxredist as part of steam's installscript - either kill all wine processes, or reboot after the first launch to make the prefix.
Note that if Origin is run without a patched version.dll even once - it's dead, poison pilled, etc. So ensure the WINEDLLOVERRIDES are in place, by checking the PROTON_LOG=1 generated file - ~/steam-1328670.txt. It says right at the top what's active.

@Boba194230
Copy link

Yeah I know about the other exe but I want my other games to work offline too, I would think about sailing the high seas but it’s honestly just as much work for some of the games

@Doc-4
Copy link

Doc-4 commented Dec 1, 2023

Yeah I know about the other exe but I want my other games to work offline too, I would think about sailing the high seas but it’s honestly just as much work for some of the games

Eh? There's a misunderstanding, nothing I said should imply the other exe won't work offline

@Boba194230
Copy link

No I know that Jedi does work offline with that I just also want to get my other origin games working offline as some like burnout paradise remastered don’t have that kind of exe

@Boba194230
Copy link

So bit of an update, offline mode works perfect actually for burnout paradise remastered using the copy reg key method and setting the compat path ofc. I'll try some more but I'll probably use the secondary exe for Jedi Fallen Order but this knowledge will help out my other games.

@Doc-4
Copy link

Doc-4 commented Dec 1, 2023

Glad it started working for you. Yeah, unfortunately that other game can't be played by any other method since it's stuck in jail with shitty software. Can't win 'em all.

@Boba194230
Copy link

Interesting can you make a step by step guide on YT?

On Fri, Dec 1, 2023 at 12:33 AM Boba194230 @.> wrote: Awesome exporting that reg key and importing into the origin prefix made it work, thanks! — Reply to this email directly, view it on GitHub <#3 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/BBYRM6XYMG4U75NLPA7HZW3YHFT3NAVCNFSM6AAAAAAZSN2WUKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZVGQ4TGNRYG4 . You are receiving this because you commented.Message ID: @.>

I can make a guide if you want

@Boba194230
Copy link

A noticeable problem when using the shipping exe for Jedi fallen order is the option for hdr does not exist weirdly enough.

@Doc-4
Copy link

Doc-4 commented Dec 2, 2023

I recall it showing up for me. Need to have HDR enabled on windows itself for it to show up.

@Boba194230
Copy link

Boba194230 commented Dec 2, 2023 via email

@Doc-4
Copy link

Doc-4 commented Dec 2, 2023

Odd that it works for that one on steam deck but not this one. Since HDR implementations aren't standardized and vary wildly, a lot of games that work for that on windows don't show options without tweaks on linux. There's an open source tool out there you can use to make the normal exe like the other one, where there's no launcher needed. Alternatively you can try further proton launch arguments to make the game think HDR support is present

@Boba194230
Copy link

I mean the hdr support is present though, I also tried adding PROTON_ENABLE_AMD_AGS=1 %command% to my launch parameters as I heard that can help and I even added a registry to the prefix reg add “HKCU\Software\Microsoft\Windows\CurrentVersion\VideoSettings” /v EnableHDRForPlayback /t REG_DWORD /d 1. I know its a problem with this exe in comparisson to the other one, I mean I'll probably just deal with not having it it just kinda sucks. What tool are you talking about? Bc that might be the only other thing

@Doc-4
Copy link

Doc-4 commented Dec 3, 2023

Look up a guy called anadius, you'll eventually find his work. Unfortunately will not work with games using denuvo. Also I ran the second executable on windows without origin and with HDR enabled and the HDR slider shows up, so it definitely can work

@Boba194230
Copy link

yeah i believe you I just think something about the exe or the way it works with proton doesn't let it work for linux for some reason even though the other exe does work

@p0358 p0358 mentioned this issue Apr 16, 2024
4 tasks
@b0ssage
Copy link

b0ssage commented Sep 6, 2024

Yep, that did it!
So, for running Mass Effect Legendary edition...and probably having the achievements work again: (I need to actually get one now...)

  1. Delete the existing proton prefix under [steam library]/steamapps/compatdata/1328670 (there's a GUI for this in big picture mode under Properties)
  2. Select some version of proton in steam->compatibility tools - I used GE-Proton8-4, but it will probably work with anything 7 upwards.
  3. Launch options should be something like WINEDLLOVERRIDES="version=n,b" %command%
  4. There is no step 4
  5. Click "Play" in steam, and pretty quickly click "Cancel" - Ideally the EA Desktop app will present you with "Let's go" . Don't - "x" out of that. Hopefully the installscript stops there and does not do any of the vcredist steps
  6. Run (by whatever means, in the prefix) Origin installer: protontricks-launch --appid 1328670 [wherever you put it]/OriginSetup-10.5.122.52971.exe
  7. Run (by whatever means, in the prefix) the patch: protontricks-launch --appid 1328670 [wherever you put it]/Fuck_off_EA_App_installer.exe
  8. Yep, play the game. Took about 30 s to launch, but did the splash screen etc.
  9. If you've mangled achievements already (they're all unlocked in the main menu->Extras->Achievements for ME2 and ME3 in game, but not in Steam), delete TrilogyGameProfile and ME2/GamerProfile and ME3/Local_Profile in the [prefix]/users/steamuser/My Documents/BioWare/Mass Effect Legendary Edition/Save folder.
  10. While you're at it, disable the terrible origin overlay. It adds stutter and lag, and breaks the steam overlay: Rename/delete igo64.dll in 1328670/pfx/drive_c/Program Files (x86)/Origin
  11. Now shift-tab in game should bring up the steam in game overlay, allowing actual rebinds. (This fix didn't work in the EA Desktop app, for some reason). Note I do have to alt-tab in and out of the game to actually be able to see the overlay change, otherwise audio only. Sigh.

Hi everyone, so I'm following this from @Fractal147 and I've managed to get both origin and fuck_off_ea_app installer to successfully install and work. However, whenever I launch my game (Star Wars Battlefront 2) it still shows up with the EA app installer. If I exit out of this the game will then boot with origin as expected.

Anyway, what I'm really asking is:
Is there a way to do the install where it'll stop the EA app asking to be installed each time I launch the game?

It's getting pretty annoying and makes it so I can't boot the game in big picture mode

@Doc-4
Copy link

Doc-4 commented Sep 6, 2024

It's quite odd with all that working that it's still launching the installer, but what you might do is rename/move/delete the app installer out of the game's directory, then it can't run it

@p0358
Copy link
Owner

p0358 commented Sep 6, 2024

The installer shouldn't run if the registry key is added properly in the prefix (which the installer should do if the checkbox there is ticked), it's the only condition check in installscript.vdf. But yeah physically renaming/removing the installer .exe file will also obviously prevent that as a last resort method xd

@b0ssage
Copy link

b0ssage commented Sep 6, 2024

Hi guys, thanks for the speedy responses!
The reason I've taken so long to respond is that I've just finished installing the game (again, I thought a reinstall would fix it, it hasn't)

Do you know which installer I should uninstall/remove from the files. I've had a look through and I couldn't find the EA app installer itself.

@b0ssage
Copy link

b0ssage commented Sep 6, 2024

Quick update, found the EAappInstaller.exe file using search. I've deleted it and the game opens through origin issue free.

I have noticed when I press play it will briefly say "running install script" before disappearing and running the game normally. Does this mean that the install script never actually finished? (It shows up briefly each time I press play)

@Doc-4
Copy link

Doc-4 commented Sep 6, 2024

Assuming adding the registry key during installation did not work for you, this one:
__Installer/Origin/redist/internal/EAappInstaller.exe

@Doc-4
Copy link

Doc-4 commented Sep 6, 2024

If you want to fix the issue with the install script, just rename installscript.vdf to have any other extension, like installscript.bak. Or just delete it, I guess.

@b0ssage
Copy link

b0ssage commented Sep 6, 2024

Hi Doc-4, how would I go about editing the installscript.vdf to add the registry key? I'd like to know as I intend to install some other origin games in the future so it'll help save me a headache!

@Doc-4
Copy link

Doc-4 commented Sep 6, 2024

I don't know syntax for install scripts. You could probably figure it out by looking at the Valve developer website. You could also just create a reg file with the relevant key and merge it to the wine registry of your current prefix. There's multiple ways of doing that. But as far as I can tell, it's still easier for most people to just use the installer here and run it within the wine prefix so it can set the key for you.

@b0ssage
Copy link

b0ssage commented Sep 6, 2024

I did use the installer here. And I made sure to tick the box that says spoof ea app installed. Very odd. I'll take a look at the other method you mentioned though! Thanks for the help

@p0358
Copy link
Owner

p0358 commented Sep 6, 2024

You could also just create a reg file with the relevant key and merge it to the wine registry of your current prefix.

cat > "/tmp/ea-app.reg" <<_EOF_
REGEDIT4
[HKEY_LOCAL_MACHINE\\Software\\Electronic Arts\\EA Desktop]
"InstallSuccessful"="true"
_EOF_

and then gotta import it with regedit.exe, could do it on command line too prolly

@b0ssage
Copy link

b0ssage commented Sep 7, 2024

Just a quick update on Star Wars Battlefront 2, I checked the install script.vdf file and it said that it was true for the EA app being installed. So I have no idea why it would still say that. Anyway Star Wars Battlefront 2 would crash whenever loading into a match, but this is a known issue due to Swap Space running out.

I'm now going to try getting origin to work on jedi fallen order and will update you on whether that works.

Thanks everyone for all the help!

@Doc-4
Copy link

Doc-4 commented Sep 7, 2024

You can use this to change your swap file size, among other things
https://github.com/CryoByte33/steam-deck-utilities

@b0ssage
Copy link

b0ssage commented Sep 7, 2024

@Doc-4 Thanks for the link, I'm definitely going to look into that!

As for getting origin to work with jedi fallen order, it's currently no-dice. It's not loading origin after I cancel the EA installer or anything. Anyone got any advice?

@Doc-4
Copy link

Doc-4 commented Sep 7, 2024

You have to install origin and this github project separately in every prefix (game) you use which has EA app, unless you define a separate one via launch arguments to force them to all use the same prefix (advanced).

What I'd suggest instead, at least for this game, is that there's a DRM-free executable right next to the normal one. You can either set wine registry or a launch argument to override the default launch in favor of that exe, or just run the game separately as a non-steam game (easiest). The downside to this approach is no achievements, but I really don't consider them worthwhile compared to the hassle and overhead for a single player game. Don't try to rename this second executable to look like the first, it will not work, most EA games on steam launch via a protocol rather than a filepath 🤮

@b0ssage
Copy link

b0ssage commented Sep 7, 2024

I have installed origin again in the jedi fallen order prefix, it just doesn't seem to be working 😥.

I'll definitely go with the DRM-free executable method for this one, EA has no need to require online for a SINGLE PLAYER game.

Thanks for the advice @Doc-4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests