epicgames-freebies-claimer: Purchase is not completed

Expected Behavior

No error, purchase should be completed.

Actual Behavior

No error, purchase is not completed. EFC will say it is claimed.

Steps to Reproduce the Problem

  1. Buy a game
  2. Check the actual game page, it should be claimed

Some debugging, seems like a bug on the epicgames-client.

image

Specifications

  • epicgames-freebies-claimer Version: 1.5.8

About this issue

  • Original URL
  • State: open
  • Created 3 years ago
  • Reactions: 7
  • Comments: 93 (34 by maintainers)

Most upvoted comments

@jackblk yeah I agree, let’s do that. I’ll also try to work on some anti-captcha solutions next week. On the bright side, it looks like fnbr.js is getting compatible with our project; they are going to implement epic store authentication, which will be a good improvement over the depreciated epicgames-client.

It’s pretty sad because this is the only project that uses API call, so it’s small and nice to use.

I agree, that was the main identity/attraction of this project. I won’t be discontinuing this project as long as there is enough interest in it, which definitely seems to be the case.

@Nicklordzero In the future, try to not sound that condescending when asking for support or help in an free and open source community/project…

Please fix Revadike!

@Nicklordzero Working on it! You can track my progression here: https://github.com/Revadike/epicgames-freebies-claimer/pull/184

Thanks, but I already have an anti-captcha service.

Damn, sorry, I thought it was working as I actually already own it when I tested it. Is this error different from #115 ?

I think that it is the same as # 115 I get this: 2021-12-18 | 22:20:03.947 | INFO | Epicgames Freebies Claimer (1.5.8) by Revadike 2021-12-18 | 22:20:05.748 | INFO | Found 1 unclaimed freebie(s) for (my email) 2021-12-18 | 22:20:34.183 | INFO | Logged in as (my username) (my token) 2021-12-18 | 22:20:40.844 | WARN | Remnant: From the Ashes was already claimed for this account 2021-12-18 | 22:20:41.299 | INFO | Logged (my username) out of Epic Games 2021-12-18 | 22:20:45.139 | INFO | Push notification sent 2021-12-18 | 22:20:45.143 | INFO | Waiting 1440 minutes

Could you guys maybe move this discussion to #179 ?

I hacked together a playwright script here: https://github.com/vogler/epicgames-claimer The stealth plugin is enough to avoid the hcaptcha. I just claimed the current game in headful mode with commit https://github.com/vogler/epicgames-claimer/commit/64d0ba8ce71baec3947d1b64acd567befcb39340 Idk if the main branch is fixed with the latest commit and if it works in headless mode as well (comment out https://github.com/vogler/epicgames-claimer/blob/main/main.stealth.js#L63, was not sure if PWDEBUG’s inspector is detected). Testing is a bit difficult when you have to wait a day in-between. 😄 Maybe someone else can try it and report back.

I tested the epicgames-client client, it seems to work just fine for normal games.

However, for mystery games, it will require a param captchaToken. Without this, it will return 400 I think. Welp, seems like the client is getting captcha boys.

Renamed the repo above since I added a script for Amazon Prime Gaming as well: https://github.com/vogler/free-games-claimer It also claims games on external stores like Epic Games and Origin, but needs some testing for Origin keys and potential other stores. The claimer for the Epic Games Store itself works. However, if you change it to headless mode, Epic Games/Cloudflare detect it - so sadly no starting in the background for now. Also, I could not get it to run on my RPi.

I’m not trying to sell you on AHK or anything, but your arguments are confusing.

You’ve said a few times that you don’t want to keep your PC running for AHK, yet your PC will be running Docker and most likely other things in the background. Ironically, Docker actually use more resource than AHK. Here’s a screenshot of my AHK resource usage and it never uses more than 1% CPU and more than 1MB of RAM:

image

You seem to have the misconception that AHK take up a lot of system resources. You could run AHK on a super low spec machine and it would still be more efficient than running Docker. Regardless if you’re running a VM or a container, you’d still have to have certain dependencies running in an isolated environment, in an additional layer above OS level. Probably even need Docker Swarm to manage multiple Docker containers if you want to run this for multiple Epic Games accounts. Not to mention keeping the image up to date with the Docker registry, etc. How are doing those things not more complicated, compared to just double clicking on a script to run it?

With AHK, you just have a single script. Double click script to run, done. Uses 0% CPU and 1MB of RAM. You need to update the script to fix something? Easy, done within 5 minutes and you’re back working again. There’s no messing about with updating your Docker image, no waiting on developers to release a new image update, etc. That’s the complexity difference that I’m talking about.

I’m literally running a working solution atm, while you are still working for a Docker solution.

It’s your choice and I’m not trying to persuade you or anything, but some of your points are rather contradicting. The only point I get is that you don’t want to run Windows and want to run Linux, but everything else is literally just sandboxing an app (and dependencies) in an additional layer, whether that layer be a Docker container or a VM. Those in itself add complexity. They’re great for work production environments with a lot of moving pieces, but sometimes people over-engineer and over-complicate things unnecessary and they don’t see that.

I would be all for Docker, if the project is something that will always be supported by 1st party. For example, I use the NGINX Docker image and there is no cat and mouse game involved here. I don’t have to worry about my NGINX breaking randomly one day, so it makes sense to use Docker for that. With projects created by 3rd parties, you’re relying on the developers coming up with a fix. This hCaptcha thing has already been broken for at least 2 weeks now and you’re still waiting for a Docker solution.

Compared to Heroku, Docker isn’t even a good solution. There was a project that uses Heroku to claim Epic Games for you and it was working great, I was using Heroku free tier plans and didn’t have to pay for any compute resources and didn’t have to run anything on my PC. It was also self-updated as well, because the Heroku apps were deployed via Github Actions (i.e DevOps) and so any changes pushed to the author’s master repo will automatically be updated in my forked repo, which then pushes the change to Heroku. It’s all done automatically. Well guess what? Epic Games released an update and broke that and the project was still running into issues (also captcha related).

Lastly, just get a thin client and run Windows on it. I’ve used both Linux and Windows and they each have their Pros and Cons, which is why I still use both. I’m running most of my Windows specific apps on my laptop, which averages about 10-15W when I’m using it. When I’m playing games on it, it uses slightly more up to around 20-25W. Maximum wattage it’ll go up to is 45W, but I never reach above 25W anyway. Undervolt the CPU using Throttlestop (or whatever tool of your choice) and you should be all good. I’m able to run a lot of stuff on my machines at home and I don’t have to worry about power cost. Everything is running on low power and super efficient and my power bill has always been a low usage one. If you’re too concerned about this, then you really need to measure how much power you’re using vs how much you’re acutally paying. If at the end of the day, using Windows somehow makes you pay $5 more every month, so what?

I’m still interested in continuing this project, for sure. It’s just a matter of having enough time to find and implement solutions. You can check my progress here: https://github.com/Revadike/epicgames-freebies-claimer/pull/184 Of course, feel free to help or contribute. It would greatly be appreciated!

Well, I could release a fix for the wrong error message, but I don’t know what to do about the captcha being there. Let’s see if Epic keeps using it, first (probably 😦 ).

For now, the checker and notification pusher is nice as a reminder to go claim something you didn’t own before.

hCaptcha specifically provides cookies that can skip authentication. In theory, this is possible, but in practice, hCaptcha determines whether it is a machine action by browser behavior (possibly input speed, browser automation flag, etc.). If it is determined to be a machine action, the cookie will not be served, and in more severe cases, your email and IP address will be blocked. This cookie is also only valid for one day and needs to be retrieved after 24 hours.

The AHK method IS already a “set it and forget” approach. As long as you’ve set it up correctly, it should just claim games for you automatically on a schedule and it should keep working for a long time.

I am well aware of how AHK works, as I have done this alot myself. Which is also why I am not a particular fan on using it.

It’s fine, that you want to spend the time on setting up AHK to do this for multiple things. I respect that. But I do not want to have my pc running just for AHK to do its things. As I mentioned, it requires Windows or a Windows in a VM. This is not a usefull approach to me, as I want this running on Linux. This is why dockers are the thing which can run on low powered hardware that does not require much.

Dockers do not add any unnecessary complexity. It does the straight opposite, as you can standardize templates for everything and make sure that its updated and created from scratch each time if needed. The only thing dockers are bad at, is emulating Windows using Wine.

I would still rather wait for a docker based solution to run on linux, than going to have to setup and install AHK ever again. I am sure, that Revadike is creating this to achieve the same thing.

Just a quick question. Is this concluded to be “dead” or is there any chance of solving this knowing the current situation?

I would really like not to use the AHK approach, or browser approach, as it would be easier to just claim the games manually then (in my opinion) 😃

That doesn’t make sense. Why would using any other approach be more difficult? With any of these approaches, including Revadike’s method, you can set up a scheduled task to run them automatically at e.g. 2am in the morning (you’ll most likely be asleep at that time) and it’ll do that for you in the background.

If you have multiple Epic Game accounts (like me), it makes it much easier to automate the game claiming process for you. Imagine having to do this manually for 5~10 different accounts, it’s annoying.

The ONLY difference between these methods is that Revadike uses I believe APIs to talk to the backend server, whereas AHK or other browser methods (Selenium or Puppeteer or whatever) simulate the user-click actions in a browser. They’re all automation methods, just done differently.

I’ll leave it open until we have dealt the captcha issue in some way

Even if it just opened a browser to the link of the free game using selenium to manually claim that would be enough, not really a long term solution though.

I think I saw a different repo that took this approach. Might have only been docker. Let me try to find it again.

Even if it just opened a browser to the link of the free game using selenium to manually claim that would be enough, not really a long term solution though.

As I noticed before, when adding one of the weekly free games to your cart, it adds a captcha step when checking out, unfortunately 😦