Skip to content

Latest commit

 

History

History
110 lines (65 loc) · 6.23 KB

README_zh-CN.md

File metadata and controls

110 lines (65 loc) · 6.23 KB

"Fuck off EA App"

Github All Releases

English | 中文

这是一个简单修改了Origin的小项目,能让你继续在Origin当钉子户,而不是被迫升级到EA APP。

如果你启动Origin却被提示需要更新到EA APP,那么恭喜你来对地方了。

介绍图片

截止至2024-07-22,Origin至少还有以下功能可用:

  • ✔️ 登录
  • ✔️ 主界面
  • ✔️ 启动游戏
  • ✔️ 下载/更新游戏
  • ✔️ 好友系统
  • ✔️ 从Steam启动游戏
  • ✔️ 搜寻人员(最近修复)

下载安装

使用安装器自动安装

下载 这个安装器然后双击运行即可

installer screenshot

手动安装

  1. Releases 中下载最新版本的version.dll
  2. 把它放到你的Origin安装的根目录下,替换即可, 安装的默认路径通常在C:\Program Files (x86)\Origin
  3. 启动Origin

Note: 你也可以自己动手编译这个dll,步骤会贴在下边。

为什么会有这个项目

我们并不是想拉踩EA, 而是EA APP现在做的实在是太烂了。 问题多如牛毛,使用体验极其糟糕。 这个项目的存在的意义是为了让人们尽可能长时间地使用Origin,在EA APP得到显著改进之前,Origin相对来说是一个更好的选择。

如果这个项目有帮到你,记得点亮Star ;)

FAQ

我已经把Origin删掉了,怎么才能重新下载Origin?

用这个地址下载就行: https://download.dm.origin.com/origin/live/OriginSetup.exe

我需要安装某个特定版本的Origin吗?

不需要,它应该与 10.5.122.5297110.5.119.52718 和更早的版本保持兼容 (包括我之前提到过的降级&修改local.xml的方法,如果你用到过的话)。

我还需要修改 local.xml吗?

不需要,使用这个项目的方法不再需要修改这个文件。

这个项目的原理是什么?

通过替换Origin原有的version.dll到我们修改过的版本,在Origin启动的时候,它会执行阻止升级通知出现的功能hooks和补丁,你可以自己看看源代码来了解更多细节。

"Pretend EA App is installed" 选项的实现原理是什么?

几乎所有登陆了Steam平台的EA游戏的文件中都会包含一个EA APP的安装脚本,这个脚本会指示Steam检查系统注册表中HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Electronic Arts\EA Desktop\InstallSuccessful 一项的值是否为 true,以此来判断EA APP是否已经安装,如果已经安装,则跳过这个自带的安装脚本。如果你已经安装了EA APP,勾选此项也不会造成额外的问题。

这个方法能够永久有效吗?如果EA再破坏某些接口怎么办?

考虑到几次先例,我不能保证这个方法会永远有效,建议你关注这个项目以获得最新的更新(点个Star⭐️)

如果我在Steam上启动EA的游戏,EA APP会再次替代Origin启动吗?

理论上不会,如果你遇到了这个问题,多半是你在安装了Origin后又安装/更新了EA APP,所以游戏与link2ea:// 协议相关联,而不是Origin,重新安装Origin并替换dll后应该可以解决这个问题。如果你得到了没有应用程序能启动游戏的报错,并且弹出了文件的启动方式选择窗口,则意味着你可能卸载了EA应用程序,之后没有再次运行Origin安装程序,重新安装Origin并替换dll后应该也可以解决这个问题。

我尝试在Steam上启动游戏,会出现错误“The game ******** does not appear to be installed. Please install it or try relaunching the game.”

打开C:\ProgramData\Origin\LocalContent 文件夹, 确认你要启动的游戏在这里有一个子目录存在。如果没有,在Steam中 验证游戏文件完整性. 这些文件会在你点击启动按钮后自动生成。如果还是没有,则需要你在游戏的根目录下找到installScript.vdf,使用记事本或者别的什么编辑器打开它,搜索"LocFiles"一栏来确定需要复制的文件以及手动复制的位置。

它能在Linux系统下工作在Wine/Proton兼容层上吗?

查看这个issue来了解现在的情况和指引:#3

简单来说, 你需要覆盖 version DLL 的设置为 native, then built-in, 可以通过winecfg或者你所使用的配置或其他特定工具实现, 你也可以在启动选项中使用环境变量 WINEDLLOVERRIDES="version=n,b" 来实现。但我并不能保证这两种方法能在所有Linux发行版或所有Wine/Proton版本中可用。

native, then builtin

以防万一,怎么才能禁止Origin自动更新?

我的建议是打开 C:\Program Files (x86)\Origin\EACore.ini 文件,然后复制粘贴以下文本。

[Bootstrap]
EnableUpdating=false

这种方式不会拖慢Origin启动的速度, 与之前修改local.xml的方式不同。不过这也会在Origin中启用R&D mode

这个项目是安全的吗?

显然如此,这个项目是完全开源的。在Release中发布的dll和exe文件也是通过Github Actions自动构建推送的,如果你愿意折腾,也可以自己来构建编译这个dll和安装程序。

我要怎么做才能自己编译这个dll?

  1. 使用git clone这个仓库,或者直接下载源代码,看你个人喜好。
  2. 运行 generate.bat
  3. build文件夹中找到.sln文件,使用Visual Studio 2022来打开它。
  4. 编译
  5. 编译生成的version.dll.\build\bin\Win32-Release\下,把它复制到C:\Program Files (x86)\Origin替换原有的version.dll即可。

使用到的第三方库