《镜之边缘:Catalyst》

《镜之边缘:Catalyst》

88 个评价
[2025] FIX ACHIEVEMENTS USING LOCAL SERVER
由 Haikoru 和其他 1 人合作完成
As you know, on December 8, 2023, EA shut down the Mirrors Edge Catalyst servers, making it impossible to earn achievements and perform online activities. Luckily for us, a group of enthusiasts took on the development of the backend for a local server called The Beat Revival. The guys are doing a great job, for which they deserve huge respect.

I tested the server implementation on my own, did some automation, and now I want to share it with you. Most likely, this guide will be supplemented and improved along with the development of the server.

Feel free to contact me, if you have any questions.
3
2
2
   
奖励
收藏
已收藏
取消收藏
THE POINT
So basically, developers of the server managed to reroute game client requests to localhost, where server backend is up and running. My guess, that it also proxies requests to EA App, so it can unlock achievements correcrty.

I decided to fork and commit some Docker manifests and PowerShell script for ease of use, with no need to manually deploy PostgreSQL and Node.js. The process below is automatic, and pretty simple.

Also it would be nice, if you hit a star on GitHub project page, just to cheer developers up, and motivate for further server development.
HOW TO
Required dependencies

First of all, you need to download and install following dependencies:
  • Docker Desktop[desktop.docker.com]
    After downloading, install Docker Desktop (required admin rights), and make sure that you selected Use WSL 2 instead of Hyper-V option. Reboot you PC after installation finished.

    Run server

    After you installed Docker, continue to running your local server:

    • Open PowerShell, and run this command:

    • Follow menu options, and set up the server
      Select [1], and specify game folder location if it differs from default, and player name, if you wish
    • When server booted up, you can check logs, and if you see something like this:
      {"level":30,"time":1759441587731,"pid":218,"hostname":"37a599e35c52","msg":"[Gateway] Registering method PamplonaAuthenticated.setPlayerGhost"}
    Then everythig done right, and server ready to accept connections.
    Start the game and have fun!


    Important
    It's plug-and-play solution, that works here and now, but be informed of following:

    • You are executing a remote PowerShell script. While all the code is open-source and stuff, that fact might be cringe for someone. If you're not okay with that, feel free to go to repository[github.com] page, review everything by yourself, build from scratch and tinker in any way.

    • This setup using pre-built docker image, which already bundled with all crucial dependencies, which means, if original server maintainer will update some of components, image needed to be rebuilt. I'll try to keep it up to date, yup.

    • At this point, server is able to provide achievement-popping expirience only. While i implemented advanced server configuration in my script (custom DB strings, player name, ports, id), in reality it makes no difference. But we're all excited for the future updates.
PROFIT
You should start recieving most of the game achievements, except these two:
  • User Generated Finisher
  • You can't keep me down
They are tied to user created activities, and may be obtainable in future, when developers of Beat Revival implement Time Trials and Beat L.E.

Hope this guide was useful to you, enjoy!
35 条留言
Haikoru  [作者] 2 小时以前 
Ok, i finally reworked whole guide, and it's sooo much simple now
Let me know about any bugs or whatever
Haikoru  [作者] 11 小时以前 
Accept my friend request
Oink-oink 10 月 1 日 下午 5:00 
Or probably can you create new empty containers and save them via docker commit, docker save command and share file? Can I import them via docker load command? It will be great solution, if possible... Or just docker image after build if enough?... Or something else like this...
Oink-oink 10 月 1 日 下午 4:48 
Is it possible download necessary files fromhttps://www.jsdelivr.com/package/npm/prisma and put somewhere? Please, help...
Oink-oink 10 月 1 日 下午 4:15 
I have an error with command:
RUN npm -g pnpm prisma && pnpm install

This command install prisma. And prisma also install dependence @prisma/engines. During installation engine trying install prisma-engines from Prisma CDN:
The postinstall hook of this package downloads all Prisma engines available for the current platform, namely the Query Engine and the Schema Engine from the Prisma CDN.


But Prisma CDN hosted on CloudFlare. Cloudflare fully blocked in my country. Is any quick solution?

I found this: https://github.com/prisma/prisma/issues/8886
But looks not easy....
Drazox 👺 9 月 26 日 上午 11:22 
oh ok didn't saw it, thank you
Haikoru  [作者] 9 月 26 日 上午 11:17 
Nah, not yet
Read Profit section of the guide
Drazox 👺 9 月 26 日 上午 11:16 
by the way, can we still get the online achievements with your tips ?
Haikoru  [作者] 9 月 26 日 上午 11:14 
That's weird. Are you sure that you didn't change anything in .env file?
Portal2pro10 9 月 25 日 上午 11:36 
unfortantly its not working for me it keeps saying this

warn The configuration property `package.json#prisma` is deprecated and will be removed in Prisma 7. Please migrate to a Prisma config file (e.g., `prisma.config.ts`).
pamplona-future | For more information, see: https://pris.ly/prisma-config
pamplona-future |
pamplona-future | Environment variables loaded from .env
pamplona-future | Prisma schema loaded from prisma/schema.prisma
pamplona-future | Datasource "db": PostgreSQL database "dbname", schema "public" at "pamplona-future-db:5432"
pamplona-future |
pamplona-future | Error: P1000: Authentication failed against database server, the provided database credentials for `dbuser` are not valid.
pamplona-future |
pamplona-future | Please make sure to provide valid database credentials for the database server at the configured address.
pamplona-future exited with code 1 (restarting)