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

V2.0.0 #184

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from
Draft

V2.0.0 #184

wants to merge 5 commits into from

Conversation

Revadike
Copy link
Owner

@Revadike Revadike commented Jan 1, 2022

Checklist:

@Revadike Revadike added the help wanted Extra attention is needed label Jan 1, 2022
@Revadike
Copy link
Owner Author

Revadike commented Feb 14, 2022

So, here is where I'm at, and I could use some help:

  • I was able to successfully purchase a free app (not giveaway game) on the Epic Games store (using fnbr auth & old purchase flow from epicgames-client).
  • I updated some of the syntax of the old purchase flow.
  • puppeteer-hcaptcha is a wonderful package solving hcaptcha using machine learning, but unreliable.
  • I'm planning to also add support for paid services as a fallback. Considering turning this into a separate package.
  • Implementing a captcha response into the purchase request is harder than expected, as they use their own custom encoding (see PR src).
  • The captcha response values and requirement of the fields kid, ewa, xal and h_captcha.value are unknown to me. I think I figured out all values for the captcha response, except xal. The rest I figured out where to get the values, or they appear static.
  • The main problem is that confirming a purchase keeps resulting in HTTP 400 with little information to go off. Likely there is an error in the captcha response value, but it could be anything, really.

@mix3d
Copy link

mix3d commented Feb 14, 2022

They're really trying to make it hard to auto claim, aren't they.

@Revadike
Copy link
Owner Author

They're really trying to make it hard to auto claim, aren't they.

Well, yeah, that's their intention with the captcha.

@Revadike
Copy link
Owner Author

Revadike commented Feb 15, 2022

Good and bad news:

  • Good news: After loads of digging around and researching, I figured out all the CAPTCHA response values. xal is encoded fingerprint data, which I tested, can be re-used. So, everything should be correct now.
  • Bad news: I am still getting http error 400, and after some testing, I found the culprit: the captcha solution. I found it by setting a breakpoint on the website, and replacing a single value (the hcaptcha solution) with a solution I generated via a paid service with the correct hcaptcha sitekey and domain. Even though, it should be a valid hcaptcha solution, EpicGames still rejects it. My speculation is that there are some extra checks for the hcaptcha solution, but idk really.

@Revadike
Copy link
Owner Author

Be careful, if anyone wants to test this, I just noticed that my test accounts got inactive, and I can no longer login. :/

@Revadike Revadike mentioned this pull request Mar 6, 2022
@TovMachin
Copy link

I'm not in any way good at this stuff but...
Is there a way to force hcaptcha to appear ?
My idea is to launch a browser (that comes with your repo, Chromium or else) via your script and direct it to a captcha from Epic where the user will manually solve it, and from there hope that Epic will now see the running program as a valid user, at least for a while.
If possible or necessary you can save the key/fingerprint when the captcha has been detected as solved on your end.

@Revadike
Copy link
Owner Author

I'm not in any way good at this stuff but... Is there a way to force hcaptcha to appear ? My idea is to launch a browser (that comes with your repo, Chromium or else) via your script and direct it to a captcha from Epic where the user will manually solve it, and from there hope that Epic will now see the running program as a valid user, at least for a while. If possible or necessary you can save the key/fingerprint when the captcha has been detected as solved on your end.

yes, that's how other projects are doing it already. I don't see the point of copying these projects.

@theol-git
Copy link

Are you passing through the browser to claim or did you use an http proxy to get the requests done by the windows application?

@Revadike
Copy link
Owner Author

I'm not emulating a browser

@PencilNavigator
Copy link

PencilNavigator commented May 14, 2022

i have an idea. hcaptcha has someting called an accessbility mode. by signing up you can claim a cookie that will automaticly pass any hcaptcha challanges. try write a script automaticly claiming an hcaptcha cookie and see if it works.

@Revadike
Copy link
Owner Author

Also solving hcaptcha challenge is only part of the problem. It's creating the encrypted custom response, that's the hard part.

Repository owner deleted a comment from IMakeRoguelikes May 22, 2022
@DoganM95
Copy link

https://www.scraperapi.com/
Could may be of use in this case

@eebssk1
Copy link

eebssk1 commented Jun 28, 2022

https://www.scraperapi.com/ Could may be of use in this case

It's not cheap. The free credits only available for 7 days.

@kokoronikurai
Copy link

there might be something in the bing rewards automation project on github just a suggestion but its coded in python and it pretty much gets through all the shit on bing.

@okiyama
Copy link

okiyama commented Aug 30, 2022

I'm not in any way good at this stuff but... Is there a way to force hcaptcha to appear ? My idea is to launch a browser (that comes with your repo, Chromium or else) via your script and direct it to a captcha from Epic where the user will manually solve it, and from there hope that Epic will now see the running program as a valid user, at least for a while. If possible or necessary you can save the key/fingerprint when the captcha has been detected as solved on your end.

yes, that's how other projects are doing it already. I don't see the point of copying these projects.

Could you point us in the direction of those other projects? I don't mind at all manually solving a captcha, and especially if they use browser emulation I'd be a lot less worried about getting banned. I did a pretty good googling but only this project seems to come up!

Thanks for your work on this!

EDIT: Used Github search instead and had better luck! Looks like these other projects exist:
https://github.com/claabs/epicgames-freegames-node
https://github.com/QIN2DIM/epic-awesome-gamer

Still interested to hear if there are others though.

@Yolomic
Copy link

Yolomic commented Sep 5, 2022

try using https://github.com/ultrafunkamsterdam/undetected-chromedriver
and https://www.hcaptcha.com/accessibility cookie for blind people aka bypassing hcaptcha

@eebssk1
Copy link

eebssk1 commented Dec 19, 2022

hcaptcha accessbility is working on my browser(with rate limit.)
Also register for hcaptcha accessbility requires email from well-known mail provider and good ip address.

@eebssk1
Copy link

eebssk1 commented Dec 19, 2022

Good and bad news:

  • Good news: After loads of digging around and researching, I figured out all the CAPTCHA response values. xal is encoded fingerprint data, which I tested, can be re-used. So, everything should be correct now.
  • Bad news: I am still getting http error 400, and after some testing, I found the culprit: the captcha solution. I found it by setting a breakpoint on the website, and replacing a single value (the hcaptcha solution) with a solution I generated via a paid service with the correct hcaptcha sitekey and domain. Even though, it should be a valid hcaptcha solution, EpicGames still rejects it. My speculation is that there are some extra checks for the hcaptcha solution, but idk really.

I'm even get reject everytime with correct hcaptcha under my firefox browser.I'm also exeperience intermediate rejecting when claming from heroic games launcher.So maybe it's not captcha's issue,but rather Epic's.

@eebssk1
Copy link

eebssk1 commented Dec 19, 2022

Good and bad news:

  • Good news: After loads of digging around and researching, I figured out all the CAPTCHA response values. xal is encoded fingerprint data, which I tested, can be re-used. So, everything should be correct now.
  • Bad news: I am still getting http error 400, and after some testing, I found the culprit: the captcha solution. I found it by setting a breakpoint on the website, and replacing a single value (the hcaptcha solution) with a solution I generated via a paid service with the correct hcaptcha sitekey and domain. Even though, it should be a valid hcaptcha solution, EpicGames still rejects it. My speculation is that there are some extra checks for the hcaptcha solution, but idk really.

I'm even get reject everytime with correct hcaptcha under my firefox browser.I'm also exeperience intermediate rejecting when claming from heroic games launcher.So maybe it's not captcha's issue,but rather Epic's.

It maybe have something to do with the so called "Talon Services"
Check QIN2DIM/epic-awesome-gamer#132
@Revadike How do you gonna fight it?

@Revadike
Copy link
Owner Author

I have no plans currently. Even if I succeed, it will probably become a cat & mouse game. Besides, they already banned my account once for debugging their system, I'm not keen on redoing that again. You're probably better off simulating the whole web browser + user interaction, which other projects are already doing.

@laur89
Copy link

laur89 commented Dec 19, 2022

which other projects are already doing

There are quite a few out there. Care to name one that's supposed to be working?

@Revadike
Copy link
Owner Author

Revadike commented Dec 19, 2022

which other projects are already doing

There are quite a few out there. Care to name one that's supposed to be working?

https://github.com/claabs/epicgames-freegames-node looks solid

okiyama added a commit to okiyama/epicgames-freebies-claimer that referenced this pull request Dec 19, 2022
In Revadike#184, Revadike (original project author) mentioned that they were encountering difficulty automatically bypassing the captcha check for free games. I modified the readme to offer both the solution that Revadike suggested in that PR, as well as the solution I am personally using.
@okiyama
Copy link

okiyama commented Dec 19, 2022

@Revadike added a PR, #206 , to mention that project as well as the project I'm using personally to the README. Obviously make any changes you like (not sure if you even want to promote other projects) but also thought it was better to "shut up and make a PR" rather than make the suggestion as a comment.

@Kiriox94
Copy link

which other projects are already doing

There are quite a few out there. Care to name one that's supposed to be working?

https://github.com/claabs/epicgames-freegames-node looks solid

It's much more complicated to set up than your project. Are you planning to make an adaptation to your project?

@PerchunPak

This comment was marked as off-topic.

@annurdien
Copy link

which other projects are already doing

There are quite a few out there. Care to name one that's supposed to be working?

https://github.com/claabs/epicgames-freegames-node looks solid
å

Checklist:

Have you tried using this https://github.com/berstend/puppeteer-extra

@Revadike
Copy link
Owner Author

See project above

@Kiriox94
Copy link

Voir le projet ci-dessus

Do you plan to adapt it for your project?

@Evil-0-King
Copy link

Hello there, i am no coder, I know nothing but still want to contribute.
I don't know whether you know it or not but, if you are still struggling with captcha, the epic games do not ask captcha when we claim game from its launcher,
more over it will be nice if you could do like claim games in epic for multiple accounts.

for changing accounts it could be of some help
https://github.com/TcNobo/TcNo-Acc-Switcher

@Revadike
Copy link
Owner Author

Revadike commented Jan 6, 2023

hcaptcha says:
image

yet, epicgames says:
image

😭😭😭

@eebssk1
Copy link

eebssk1 commented Jan 6, 2023

hcaptcha says: image

yet, epicgames says: image

😭😭😭

Totally normal.I have encoutered this when using heroic games launcher,for me just try 2-3 times and it will pass(WF4M).

@ghost
Copy link

ghost commented Jan 7, 2023

hcaptcha says: image

yet, epicgames says: image

😭😭😭

Show me ur xal, il try to help.

@Revadike
Copy link
Owner Author

Revadike commented Jan 7, 2023

Show me ur xal, il try to help.

add me on discord if u wanna chat:
Revadike#3529

@ghost
Copy link

ghost commented Jan 11, 2023

Show me ur xal, il try to help.

add me on discord if u wanna chat: Revadike#3529

can't find u :(

@Revadike
Copy link
Owner Author

Show me ur xal, il try to help.

add me on discord if u wanna chat: Revadike#3529

can't find u :(

It's definitely correct. Add me as friend.

@BlueSchnabeltier
Copy link

BlueSchnabeltier commented Aug 12, 2023

Try vinyzu/botright, i can even help you solve the captcha with that if you want

@PerchunPak
Copy link

btw, i recently got cloudflare's captcha instead of hcaptcha

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging this pull request may close these issues.