mtgap icon indicating copy to clipboard operation
mtgap copied to clipboard

Collection doesn't sync on MacOS

Open heroes182 opened this issue 3 years ago • 13 comments

Detailed context (ISSUES WILL NOT BE INVESIGATED WITHOUT IT!):

  • Link to your MTGA Pro account: mtga.cc/u/q24r5ycym4privaterelayappleidcom
  • Link to page/pages are in question: https://mtgarena.pro/collection/

Your Desktop:

  • OS: MacOS 11.6
  • App type: Web app

Describe the bug Export collection triggers a CSV download, but the css only has column headers

To Reproduce Steps to reproduce the behavior:

  1. Go to https://mtgarena.pro/collection/
  2. Click the cloud download icon
  3. Click the "MTG Goldfish CSV" button on the modal
  4. Open the resulting collection.csv file

heroes182 avatar Oct 04 '21 21:10 heroes182

It's because you don't have synced collection. Our records show that your collection on mtga.pro contain zero cards. MacOS tracker has no collection tracking functions.

Razviar avatar Oct 05 '21 07:10 Razviar

Collection syncing was working perfectly fine for mac before the large arena backend update that broke everything. As you can see on my profile (mtga.cc/u/aPlayerofGames) I have cards from AFR showing as owned in my collection and I've never logged in anywhere except for mac. The Rewards page (https://mtgarena.pro/rewards/) also stopped working on Mac around August 22nd.

MacOS tracker has no collection tracking functions.

Does this mean you are officially removing support for collection tracking on Mac or will this eventually be fixed?

dianasnyder avatar Oct 14 '21 05:10 dianasnyder

We hope to find the way to apply for macos the fix we have for windows, but we have no eta and significant progress updates.

Razviar avatar Oct 14 '21 06:10 Razviar

If there's any c# devs with macos reading this, your help wanted :) you can contact me via email: [email protected]

Razviar avatar Oct 14 '21 06:10 Razviar

UPDATE: Unfortunately, we are unable to port existing solution for Mac, so there will be no Mac update soon. But there's still a chance that another method we are developing might work. OR WOTC might start rendering collection data in log again. Anyway, it will take unknown amount of time.

Razviar avatar Oct 18 '21 21:10 Razviar

Is there any development with this? I am sooo displeased by not being able to see my collection in a better deck-building web app...

jordanyankushev avatar Apr 21 '22 22:04 jordanyankushev

Sorry, there's no active development for Mac at the moment. Since the project is open source, if anyone is willing to help, effort will be very welcome

Razviar avatar Apr 22 '22 05:04 Razviar

HI @Razviar I don't have a lot of time, but I am willing to help. if you guys can direct me on how the project is structured and built and explain the solutions you have in place for windows, I can give it a shot to fix the Mac version. C# not my primary language but i think i can try. The build for mac os is done with Mono?

mogui avatar Jan 22 '23 09:01 mogui

@mogui hi! Thanks for your interest! Unfortunately it's il2cpp 😫 that is why we don't have a solution. We need a full stack solution for il2cpp modding or memory reading to make it work

Razviar avatar Jan 22 '23 10:01 Razviar

No idea on what il2cpp is :D can you give me some starting point any material or docs to read to have an idea? How the Windows version work? Ho do you cross compile to osx?

mogui avatar Jan 22 '23 12:01 mogui

No idea on what il2cpp is :D can you give me some starting point any material or docs to read to have an idea? How the Windows version work? Ho do you cross compile to osx?

il2cpp is basically another way of unity compiling then Mono, it has different mechanics, so we can't inject assembly like we do on Windows, where mtga is mono-based. Windows version works with injection, we use SharpMonoInjector to do an injection. Cross-platform usage is avaliable thanks to Electron, since it's cross-platform in it's core.

Razviar avatar Jan 22 '23 12:01 Razviar

can you give me instruction on how the build is made for mac os? So for Windows you inject the MTGA process to read directly the memory to extract infos you cannot obtain by reading the logs, and you don't have a similar way to do the same for the Mac build, something like that?

mogui avatar Jan 22 '23 12:01 mogui

can you give me instruction on how the build is made for mac os? So for Windows you inject the MTGA process to read directly the memory to extract infos you cannot obtain by reading the logs, and you don't have a similar way to do the same for the Mac build, something like that?

it's basically the same as for windows: you just clone repo, install packages and do "npm run start", it should work. It already has mac adjustments.

As for injection, basically injection makes the game to write data we need into the log. It doesn't exchange the data with an app directly, just makes data we need accessible from the log.

Razviar avatar Jan 22 '23 12:01 Razviar