DevilXD / TwitchDropsMiner

An app that allows you to AFK mine timed Twitch drops, with automatic drop claiming and channel switching.
MIT License
1.67k stars 162 forks source link

No mining progress is being made #462

Closed 204065248 closed 4 months ago

204065248 commented 5 months ago

I want to drop treasure in Arena Breakout game, but it doesn't work properly

Nazar1ky commented 5 months ago

@Windows200000 Hello, that new method require _login or _oauth_login enought?

Windows200000 commented 5 months ago

Hello, that new method require _login or _oauth_login enought?

I don't know, I haven't touched that part of the code that handles login, authentication, cookies etc.

BulletWilly commented 5 months ago

Thanks @Windows200000, working with your latest build👍

Maligmus commented 5 months ago

I tried the latest build as, and it is still not working for me.

Last build date: 2024-05-27 11:14:14+00:00

Windows200000 commented 5 months ago

I tried the latest build as, and it is still not working for me.

Last build date: 2024-05-27 11:14:14+00:00

@Maligmus Please make an issue on my repo with detailed information. It is working for a lot of people, but there could very well be more edge cases.

DevilXD commented 5 months ago

Yes, I'd like to strongly note here that if one is using the fork from the other repo, any issues should be reported there, not here.

As a small update on my availability, I'm currently waiting for a new desk to be installed, so that I can have a place to sit down and work properly again, as my previous desk has unfortunately finished its lifetime. This should happen later this week, or next week. Hopefully I can sit down for some dev work next week, before going back to heavy work cycle 2 weeks from now.

Goofy-6 commented 5 months ago

Reporting the same problem on XDefiant. App shows progress being made as usual but then gets stuck at 100% and after a reset goes back to 0%.

Luckz commented 5 months ago

Reporting the same problem on XDefiant. App shows progress being made as usual but then gets stuck at 100% and after a reset goes back to 0%.

And you're using the functional fork or just spending your free time telling us what we knew a month ago?

Luckz commented 5 months ago

If you run from git source, switch to the fork like this:

git remote add w2k https://github.com/Windows200000/TwitchDropsMiner-updated git fetch w2k git branch master -u w2k/master git pull «activate python environment here or earlier» pip install validators «start TDM the way you always start it, for example python main.py»


If you run precompiled builds, get those from https://github.com/Windows200000/TwitchDropsMiner-updated/releases

Techwolf commented 4 months ago

Using Luckz comment to update my local copy:

git branch master -u w2k/master
branch 'master' set up to track 'w2k/master'.

git pull
hint: You have divergent branches and need to specify how to reconcile them.
hint: You can do so by running one of the following commands sometime before
hint: your next pull:
hint:
hint:   git config pull.rebase false  # merge
hint:   git config pull.rebase true   # rebase
hint:   git config pull.ff only       # fast-forward only
hint:
hint: You can replace "git config" with "git config --global" to set a default
hint: preference for all repositories. You can also pass --rebase, --no-rebase,
hint: or --ff-only on the command line to override the configured default per
hint: invocation.
fatal: Need to specify how to reconcile divergent branches.

best way to fix this?

Update: Found a workaround.

git branch master -u origin/master
git checkout 27dcc9c280db77833aadb28a4cedbd1b81a934e1
git branch master -u w2k/master
git pull w2k master
<snip>
31 files changed, 2585 insertions(+), 1952 deletions(-)
 create mode 100644 .github/workflows/Check_patch_notes.yml
 create mode 100644 .github/workflows/release.yml
 create mode 100644 lang/English.json
 create mode 100644 patch_notes.txt
Windows200000 commented 4 months ago

Using Luckz comment to update my local copy:

git branch master -u w2k/master
branch 'master' set up to track 'w2k/master'.

git pull
hint: You have divergent branches and need to specify how to reconcile them.
hint: You can do so by running one of the following commands sometime before
hint: your next pull:
hint:
hint:   git config pull.rebase false  # merge
hint:   git config pull.rebase true   # rebase
hint:   git config pull.ff only       # fast-forward only
hint:
hint: You can replace "git config" with "git config --global" to set a default
hint: preference for all repositories. You can also pass --rebase, --no-rebase,
hint: or --ff-only on the command line to override the configured default per
hint: invocation.
fatal: Need to specify how to reconcile divergent branches.

best way to fix this?

Update: Found a workaround.

git branch master -u origin/master
git checkout 27dcc9c280db77833aadb28a4cedbd1b81a934e1
git branch master -u w2k/master
git pull w2k master
<snip>
31 files changed, 2585 insertions(+), 1952 deletions(-)
 create mode 100644 .github/workflows/Check_patch_notes.yml
 create mode 100644 .github/workflows/release.yml
 create mode 100644 lang/English.json
 create mode 100644 patch_notes.txt

You can rebase, DevilXD made a commit for the English translation, that I can't sync.

Edit: I did adopt the translation, but I moved it from translate.py to English.json for GitLocalize.

DevilXD commented 4 months ago

This should now be fixed via https://github.com/DevilXD/TwitchDropsMiner/commit/b47b2089c0a03c56aaede4560c7b99069a266729 and the latest master build.

DevilXD commented 4 months ago

As an extra explanation / dev note to what I've noticed when I was studying the changes Twitch has made:

The most important change was uncoupling the websocket updates from watch requests, as they were previously coupled together, with a 10s window to receive the update. This is how it worked before:

Now, the websocket responses aren't as predictive as they were before, so nothing is ignored. Websocket will forcibly overwrite the current drop progress and timer, so you may see the timer's minutes jump forward or backwards by one (or a few) minutes, even if there's 40-50+ seconds left on the timer. The overwrite action will happen even on a drop update that is caused by you watching another stream in the browser on the same account, so keep that in mind. Watching any streams during mining will impact the miner's performance, giving you less progress and displaying wrong drops being mined, so I recommend not doing that.

Windows200000 commented 4 months ago

@DevilXD do you want to take back over? I don't have much time for the next little while anyway. If so, feel free to ask any questions about the changes and look at existing issues in my fork. I should be back mid-July.

edit: There is a few other changes since we last talked. I mentioned this before, I could add a merge branch in the fork and give you write access, or you could clone in-dev to a branch in your repo and work on it there.

efit2: Another to-do is adding more translations. Some stuff is untranslated and some patched together from the translations, so users see something sensible in their language.

DevilXD commented 4 months ago

do you want to take back over?

To not make it too long, the short answer is: "It's not for me to decide". If you want to keep up with your own fork, merging my changes into yours and adding your own, you're welcome to do so. If not, I'll "take over" by just continuing development whenever I can. What you want to do with your fork is your call, but PRs and general help are always welcome. I'm happy that you were able to figure out how to fix this thing before I did =) I could use some help maintaining this thing, but I've seen somewhere that you're not too familiar with Python, so I don't know if you'd be interested once you're back. This project uses typing and type-checking, so you'd need to read a bit about that too, but it's not too hard to figure it out if you have some knowledge from other strong-typed programming languages, like C/C++. I could show you the tools I use etc. Let me know if you'd be interested =)

There is a few other changes since we last talked. I mentioned this before, I could add a merge branch in the fork and give you write access, or you could clone in-dev to a branch in your repo and work on it there.

A bunch of scattered features is quite hard to work with. I can accept a PR with a single change included in it though. If you have something in particular you'd like to get included in the miner, you can either open an issue describing what's needed, or open a PR with a rough implementation, that I'd then need to run through some polishing before merging. Either way, it has to be a one-per-change deal. Even a detailed list of things to implement is better than a 600+ lines diff with little explanation >.>

Another to-do is adding more translations. Some stuff is untranslated and some patched together from the translations, so users see something sensible in their language.

Hmm, I thought that most things are already translated. Some strings aren't meant to be translated, like debug log calls or the "About" tab. Anything else that is printed in the Output window for a user to see, that doesn't have a translation string, has most likely been missed somehow, and has to be added (eventually). You're welcome to open an issue listing the things that were missed and need translations. Translations PRs are welcome as well.

PS: I'm busy with work again for this week, but should have much more time afterwards. The miner's code is in dire need of cleanup and rewrite. This is a good time to think about finally getting to it.