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

The software cannot be used normally #462

Open
204065248 opened this issue May 9, 2024 · 102 comments
Open

The software cannot be used normally #462

204065248 opened this issue May 9, 2024 · 102 comments
Labels
Bug Something isn't working Critical For critical issues that prevent the application from working

Comments

@204065248
Copy link

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

@Jniklas2
Copy link

Jniklas2 commented May 9, 2024

it doesn't work properly

Isn't helpful. And for me it works really good (only problem is the vm itself, but that isn't caused by this tool)

@Luckz
Copy link
Contributor

Luckz commented May 9, 2024

For me there was no progress counted for Party Animals (ended now), and there is none for Halo Infinite.
GUI shows progress as if it was working:
image

Whereas https://www.twitch.tv/drops/inventory shows nada.

@maistaTV
Copy link

maistaTV commented May 10, 2024

Same. Miner is showing progress while my inventory is not.

image

image
Progress was made due to watching for real.

@Taktich
Copy link

Taktich commented May 10, 2024

Having the same problem. Something must have changed on Twitch's side?

@gibbed
Copy link

gibbed commented May 10, 2024

Same issue here, there's been no progress at all today through the miner but progress does happen when watching normally. Had assumed it was related to #301 but I guess this is a more widespread issue.

@coodrag
Copy link

coodrag commented May 10, 2024

It is twitch problem, not software problem.
Simulated watching is not accepted by twitch now.

@204065248
Copy link
Author

Is there no way to solve it?

@stripedew
Copy link

+1 to this issue, been happening for a few days now actually. Not only did the app not count towards any drops, it also somehow messed with the drops inventory and now real viewing doesn't seem to register accurately. Works fine with a different account on the same device, so I'm guessing Twitch have added some server-side checks that prohibit drops on flagged accounts.

@Valentin-Metz
Copy link
Contributor

This is a real issue and not related to accounts.
The miner does currently not contribute to drop progress (watching normally on the same account still does).

2024-05-10 12:41:57: Progress: 55/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:41:57: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 55/240)
2024-05-10 12:42:57: CALL: No drop update from the websocket received
2024-05-10 12:42:57: Progress: 56/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:42:57: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 56/240)
2024-05-10 12:43:02: CALL: militantmeat33 stays OFFLINE
2024-05-10 12:43:35: CALL: kettletoro stays OFFLINE
2024-05-10 12:43:43: CALL: Channel update from websocket: MrPokke
2024-05-10 12:43:56: CALL: No drop update from the websocket received
2024-05-10 12:43:56: Progress: 57/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:43:56: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 57/240)
2024-05-10 12:44:56: CALL: No drop update from the websocket received
2024-05-10 12:44:56: Progress: 58/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:44:56: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 58/240)
2024-05-10 12:45:43: INFO: MrPokke status has been updated (🎁: ❌ -> ❌)
2024-05-10 12:45:56: CALL: No drop update from the websocket received
2024-05-10 12:45:56: Progress: 59/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:45:56: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 59/240)
2024-05-10 12:46:48: Earned points for watching:  10, total: 180
2024-05-10 12:46:56: CALL: No drop update from the websocket received
2024-05-10 12:46:56: Progress: 60/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:46:56: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 60/240)
2024-05-10 12:47:55: CALL: No drop update from the websocket received
2024-05-10 12:47:55: Progress: 61/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:47:55: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 61/240)
2024-05-10 12:47:59: CALL: Maintenance task requests a reload
2024-05-10 12:48:02: INFO: Ryvandal goes OFFLINE
2024-05-10 12:48:03: CALL: Channel update from websocket: Ryvandal
2024-05-10 12:48:05: CALL: Maintenance task waiting until: 13:18:05 (Points)
2024-05-10 12:48:05: INFO: Websocket[5] stopped.
2024-05-10 12:48:05: INFO: Websocket[4] stopped.
2024-05-10 12:48:05: INFO: Websocket[3] stopped.
2024-05-10 12:48:05: INFO: Websocket[2] stopped.
2024-05-10 12:48:05: INFO: Websocket[1] stopped.
2024-05-10 12:48:07: INFO: Websocket[1] connecting...
2024-05-10 12:48:07: INFO: Websocket[2] connecting...
2024-05-10 12:48:07: INFO: Websocket[3] connecting...
2024-05-10 12:48:07: INFO: Websocket[4] connecting...
2024-05-10 12:48:07: INFO: Websocket[5] connecting...
2024-05-10 12:48:08: INFO: Websocket[5] connected.
2024-05-10 12:48:08: INFO: Websocket[2] connected.
2024-05-10 12:48:08: INFO: Websocket[3] connected.
2024-05-10 12:48:08: INFO: Websocket[1] connected.
2024-05-10 12:48:08: INFO: Websocket[4] connected.
2024-05-10 12:48:16: CALL: No drop update from the websocket received
2024-05-10 12:48:16: Progress: 1/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:48:16: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 1/240)
2024-05-10 12:49:16: CALL: No drop update from the websocket received
2024-05-10 12:49:16: Progress: 2/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:49:16: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 2/240)
2024-05-10 12:50:15: CALL: No drop update from the websocket received
2024-05-10 12:50:15: Progress: 3/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:50:15: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 3/240)
2024-05-10 12:50:38: CALL: Channel update from websocket: bhobbsie, game changed: Marbles on Stream -> Magic: The Gathering
2024-05-10 12:51:15: CALL: No drop update from the websocket received
2024-05-10 12:51:15: Progress: 4/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:51:15: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 4/240)
2024-05-10 12:52:09: Earned points for watching:  10, total: 190
2024-05-10 12:52:15: CALL: No drop update from the websocket received
2024-05-10 12:52:15: Progress: 5/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:52:15: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 5/240)
2024-05-10 12:52:38: INFO: bhobbsie status has been updated (🎁: ✔ -> ❌)
2024-05-10 12:53:15: CALL: No drop update from the websocket received
2024-05-10 12:53:15: Progress: 6/240 - Campaign(Rise Online, ROW - Twitch Drop 31, 0/1)
2024-05-10 12:53:15: CALL: Drop progress from active search: ROW - Twitch Drop 31 (Rise Online, 6/240)
2024-05-10 12:53:17: INFO: qcrixus_ goes OFFLINE

@iceynano
Copy link

+1. The server may count by requesting frequency of ts files?

@woctezuma
Copy link

Same issue.

@notNSANE
Copy link

notNSANE commented May 11, 2024

It is twitch problem, not software problem. Simulated watching is not accepted by twitch now.

Source?

As commented before, it seems Twitch might have flagged accounts. I'm getting 1-2% progress for 1 hour of real watching, which makes drops basically impossible - that is, having a channel open, with sound. Emoting just in case, too. I've been having this issue since months ago, though. TDW fixed that.

@Windows200000
Copy link

I have also not been getting progress towards any drops in the past days

@notNSANE
Copy link

for reference, I just started real watching for drops on another account (and browser) and it started progressing normally. Dang, now I need to move all the twitch connections I made to another account -_-

@Windows200000
Copy link

for reference, I just started real watching for drops on another account (and browser) and it started progressing normally. Dang, now I need to move all the twitch connections I made to another account -_-

My manual progress seems to be fine, tho, are you sure you closed TDM before trying to manually watch?

@kumoshiraori
Copy link

Same. Miner is showing progress while my inventory is not.

image

image Progress was made due to watching for real.

+1 same problem for me

@Majaura
Copy link

Majaura commented May 12, 2024

I think I'm also having this issue, and like NotNSANE said, I'm not even able to earn them by regularly watching...

@woctezuma
Copy link

woctezuma commented May 12, 2024

I think I'm also having this issue, and like NotNSANE said, I'm not even able to earn them by regularly watching...

You need to watch LIVE streams. I know, it can be surprising if you have not followed the news about Twitch Drops! 😄

I have tried this stream for Hellcard:

And it works for me:

Picture

@notNSANE
Copy link

notNSANE commented May 12, 2024 via email

@Majaura
Copy link

Majaura commented May 12, 2024

Yeah, I don't understand what you mean about "have to watch live streams"...the hell do you think we're watching? Netflix streams? Also I'm wrong about not being able to earn drops regularly, I can still do it...but yeah as it stands, I think the program isn't currently working as of maybe 3 days ago. I hope that helps. I'm doing everything the same way as always, and updated to the newest build as well.

@Windows200000
Copy link

Yeah, I don't understand what you mean about "have to watch live streams"...the hell do you think we're watching? Netflix streams?

When you go to an offline channel, twitch starts automatically playing a past stream, if fully recorded. I assume that. Tho I don't know, having TDM open while trying to manually watch might also cause issues.

Can we please keep the conversation civil without insulting each other? This is GitHub, not a TikTok comment section.

@woctezuma
Copy link

woctezuma commented May 12, 2024

I am using twitch drops since they were released.

That is what I imagined. As far as I can tell, there has been changes this year. See this tweet in January:
https://twitter.com/TwitchSupport/status/1748075440562954551

So if you have been using Twitch Drops since they were released, and then switched at some point to the Miner script without visiting Twitch ever again, then you might not know about these recent changes.

Anyway, as mentioned by @Windows200000, the issue is likely to come from the fact that you had the Miner script running in the background while you were watching the streams.

Yeah, I don't understand what you mean about "have to watch live streams"...the hell do you think we're watching? Netflix streams? Also I'm wrong about not being able to earn drops regularly, I can still do it.

I am glad that you could solve your previous issue with getting drops by watching streams without using the script.

I think the program isn't currently working as of maybe 3 days ago. I hope that helps. I'm doing everything the same way as always, and updated to the newest build as well.

This is a known issue, as reported 3 days ago indeed, and the Miner script has not been updated in the past 2 weeks, so this bug is due to a change on Twitch's side, and possibly related to the aforementioned changes in Twitch's policy against "abusing Drops campaigns". As you can see here, it affects at least another similar script as well:
rdavydov/Twitch-Channel-Points-Miner-v2#522

In the meantime, until the Miner script is updated (or worse, that we get more info from Twitch that they would be less lenient with accounts using such scripts), I would stick to watching streams for drops.

@notNSANE
Copy link

notNSANE commented May 12, 2024 via email

@woctezuma
Copy link

woctezuma commented May 12, 2024

have you ever read the tweet? those changes are for STREAMERS, not viewers, since they were streaming static images or rebroadcasts.

Well, that has to do with viewers, because rebroadcasts do not work anymore.


And that has NOTHING to do with Twitch Drops Miner.

Exactly. That was a reply to the user who could not get drops the regular way.

I'm not even able to earn them by regularly watching...

Fortunately, the same user then managed to fix their issue with regular streams, though they don't mention how.

Also I'm wrong about not being able to earn drops regularly, I can still do it.

Anyway, now that the topic about accounts being unable to get Twitch Drops the regular way has been debunked, we can close this off-topic talk. The solution to this issue will remain a mystery. 🤣 It could be closing the Miner script, or... watching live streams.

@FomaDima
Copy link

FomaDima commented May 12, 2024

Have you tried to contact the authors of this project or a neighboring one? Were there any comments from them? or with those who understand programming?

if everything is that bad. Then let's think about what to replace it with. and how to use it...

For my support, I was offered to fix a bug in the drop progression. But I use this purely for myself and can’t check it, sorry (I don’t have any extra money at the moment) Well, since they offered to fix it, it means there is a solution... Or they want to deceive me, I don’t know. (sorry, a translator was used)

@GoesInCircles
Copy link

if everything is that bad. Then let's think about what to replace it with. and how to use it...

I fallback to my previous solution: automatic twitch drops addon and keeping tab open on background, muted@160p

@Windows200000
Copy link

Have you tried to contact the authors of this project or a neighboring one? Were there any comments from them? or with those who understand programming?

if everything is that bad. Then let's think about what to replace it with. and how to use it...

For my support, I was offered to fix a bug in the drop progression. But I use this purely for myself and can’t check it, sorry (I don’t have any extra money at the moment) Well, since they offered to fix it, it means there is a solution... Or they want to deceive me, I don’t know. (sorry, a translator was used)

Is there anything suggesting "it's bad"? Apart for some unfounded speculation, all we know is twitch changed something which broke this bot. That is not anything uncommon for 3rd party access to APIs in general, nor TDM specifically. I could try and look into it, but by the time I'd learn the twitch API etc. someone already familiar will probably look at it and find a solution.

@Windows200000
Copy link

Windows200000 commented May 12, 2024

Well, i couldn't leave it alone. The request now looks like this:

event: 'minute-watched', 
    properties: {
      app_session_id: '<REDACTED>',
      app_version: '<REDACTED>',
      batch_time: 1715542327,
      client_time: 1715542326.626,
      device_id: '<REDACTED>',
      domain: 'www.twitch.tv',
      host: 'www.twitch.tv',
      platform: 'web',
      preferred_language: 'en-US',
      referrer_host: 'www.google.com',
      referrer_url: 'https://www.google.com/',
      received_language: 'en',
      tab_session_id: '<REDACTED>',
      url: 'https://www.twitch.tv/firewall154?referrer=raid',
      benchmark_server_id: '<REDACTED>',
      bornuser: false,
      browser: '5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36',
      browser_family: 'chrome',
      browser_version: '124.0',
      collapse_right: false,
      collapse_left: true,
      localstorage_device_id: '<REDACTED>',
      location: 'channel',
      page_session_id: '<REDACTED>',
      referrer: 'https://www.google.com/',
      referrer_domain: 'www.google.com',
      session_device_id: '<REDACTED>',
      theme: 'dark',
      viewport_height: 1064,
      viewport_width: 1831,
      channel: 'firewall154',
      channel_id: '183249570',
      is_following: false,
      is_live: true,
      language: 'en',
      game: 'Rocket League',
      category_id: '30921',
      audio_codec: 'mp4a.40.2',
      average_bitrate: 6426550,
      backend: 'mediaplayer',
      broadcast_id: '<REDACTED>',
      buffer_empty_count: 2,
      buffered_position: 8482.042678,
      build_dist_id: 'npm',
      catch_up_mode: 'speedup',
      cluster: 'ams02',
      core_version: '1.28.0-rc.2',
      current_bitrate: 6907235,
      current_fps: 57,
      decoded_frames: 3607,
      dropped_frames: 2,
      estimated_bandwidth: 961132590,
      gap_skip_count: 0,
      gap_skip_duration: 0,
      hidden: false,
      hls_latency_broadcaster: 5324,
      hls_latency_ingest: 5398,
      initial_buffer_duration: 1000,
      live: true,
      low_latency: true,
      manifest_cluster: 'fra05',
      manifest_node: 'video-weaver.fra05',
      manifest_node_type: 'weaver_cluster',
      mcaps_powerefficient: true,
      mcaps_smooth: true,
      mcaps_supported: true,
      minutes_logged: 142,
      mobile_connection_type: 'unknown',
      muted: false,
      node: 'video-edge-d55360.ams02',
      origin_dc: 'iad06',
      os_name: 'Windows',
      os_version: 'NT 10.0',
      play_session_id: '<REDACTED>',
      playback_rate: 1,
      player: 'site',
      player_position: 8477.335095,
      player_state: 'Playing',
      protocol: 'HLS',
      quality: '900p60 (source)',
      rendered_frames: 3605,
      seconds_offset: 19.921824,
      serving_id: '<REDACTED>',
      sink_buffer_size: 4.6649041175842285,
      sink_type: 'mse-worker',
      stream_format: 'chunked',
      time: 1715542326.625,
      transcode_mode: 'cbr_v1',
      transcoder_type: '2023-Transcode-QS-V1',
      transport_download_bytes: 48190604,
      transport_download_duration: 57075,
      transport_first_byte_latency: 1793,
      transport_segment_duration: 59982,
      transport_segments: 30,
      user_agent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36',
      vid_display_height: 191,
      vid_display_width: 340,
      vid_height: 900,
      vid_width: 1600,
      video_buffer_size: 4.707583,
      video_codec: 'avc1.64002A',
      video_decoder_name: 'MediaSource',
      video_session_id: '<REDACTED>',
      volume: 0.67,
      battery_percent: 1,
      gpu_supported: false,
      gpu_unsupported_reason: 'WebGPU adapter unavailable',
      gpu_architecture: '',
      gpu_description: '',
      gpu_device: '',
      gpu_vendor: '',
      is_pbyp: false,
      guest_star_session_id: null,
      guests_pushed_to_obs: null,
      squad_stream_id: null,
      squad_stream_session_id: null,
      squad_stream_presentation_id: null,
      is_mod: false,
      time_spent_hidden: 2040949,
      consent_comscore_ok: false,
      content_classification_label_set: '[]',
      app_fullscreen: false,
      autoplayed: true,
      backend_version: '1.28.0-rc.2',
      broadcaster_software: 'unknown_rtmp',
      chat_visible: true,
      chat_visibility_status: 'visible',
      content_mode: 'live',
      game_id: '30921',
      host_channel: null,
      host_channel_id: null,
      is_ad_playing: false,
      logged_in: true,
      login: '<REDACTED>',
      mse_support: true,
      partner: true,
      playback_gated: false,
      player_size_mode: 'default',
      staff: false,
      subscriber: false,
      turbo: false,
      user_id: <REDACTED>,
      viewer_exemption_reason: null,
      benchmark_session_id: '<REDACTED>',
      client_build_id: '<REDACTED>',
      distinct_id: '<REDACTED>',
      client_app: 'twilight'
	}
  }

That is a lot more, than TDM sends:

"event": "minute-watched",
                "properties": {
                    "broadcast_id": str(self._stream.broadcast_id),
                    "channel_id": str(self.id),
                    "channel": self._login,
                    "hidden": False,
                    "live": True,
                    "location": "channel",
                    "logged_in": True,
                    "muted": False,
                    "player": "site",
                    "user_id": self._twitch._auth_state.user_id,
                }

The TDM version still returns 204, but it does so even with wrong parameters, which is probably why TDM doesn't detect it when stuff breaks, which also makes the response kinda useless. All the parameters still have the same name.

In chrome debug, the two look like this.
TDM: "Request Payload"
{"data":"Random_letters_redacted"}

Native: "Form data"
data=Random_letters_redacted

Perhaps the most obvious difference is, that TDM sends a JSON, while the site now sends the data as an HTML form. (At least that's what I recognize it as, how it's called doesn't really matter.) Now this still could be a thing that might work, depending on how TDM does the whole thing and what twitch supports etc. Would be nice to get a quick reply from @DevilXD or some other contributors. I now have to go to sleep and will try if changing the format works tomorrow, if I find the time.

@DevilXD
Copy link
Owner

DevilXD commented May 12, 2024

Hello. Kinda late to this, but I'll try to fix this as soon as I'm able to. Which may take a few days, given I have limited access to a PC now.

That is a lot more, than TDM sends:

TDM has always sent only as much as it was needed to progress drops. If this is not enough now, then the payload should be expanded to include what's needed. Still, most of this information was never needed to keep progressing everything.

Regarding different payload formats, it's kinda been a while ever since I had to touch anything there, so my memory is hazy. I'll need to look into the code to determine if HTML form vs JSON makes any difference. You did the most tedious part though - figuring out the current payload contents. This should speed up designing a new payload that works (assuming it's still possible).

@DevilXD DevilXD added the Bug Something isn't working label May 12, 2024
@GoesInCircles
Copy link

Just a thought: do we really need to account for every single second for drop progress bar? Even if we miss minutes, drop period is long enough to cover for it.

In other hand if it was for channel point, I would understand.

@EnigmaWelcome
Copy link

I checked and set a different delay. I tried for 20-40-60 seconds, but the result is the same. The stream is viewed for 30 minutes, and drops progress is counted for only 22-24 minutes. Some of the time just disappears

If you have the time, you could just test intervals and see what works best. The individual video file has 35 frames at 30fps (at least the one I had), so I would test anything from a second up to a few minutes and see how fast it happens. Alternatively, you could try sending one like every 5 minutes and then figure out how much progress you got per download. If you figure anything useful out, please report back.

If you take an interval of more than 60 seconds (1 minute+), then the progress is worse

@Windows200000
Copy link

Windows200000 commented May 14, 2024

Just a thought: do we really need to account for every single second for drop progress bar? Even if we miss minutes, drop period is long enough to cover for it.

In other hand if it was for channel point, I would understand.

There are some drops that are restricted to one channel, where you need to watch an entire tournament or whatever. Same reason why starting late was a reported issue.

@EnigmaWelcome
Copy link

EnigmaWelcome commented May 14, 2024

warframe drops are strictly limited in time.There are many more such games. It takes a minute at a time for it to be

Just a thought: do we really need to account for every single second for drop progress bar? Even if we miss minutes, drop period is long enough to cover for it.

In other hand if it was for channel point, I would understand.

@GoesInCircles
Copy link

Just a thought: do we really need to account for every single second for drop progress bar? Even if we miss minutes, drop period is long enough to cover for it.
In other hand if it was for channel point, I would understand.

There are some drops that are restr5icted to one channel, where you need to watch an entire tournament or whatever. Same reason why starting late was a reported issue.

Yeah I know. Game Im farming/playing which has drop dedicated streams are much longer than required time. Imagine angry mobs if required time was equal to stream lenght. And we are usimg bot that tunes in at very beginning, I believe even with lost time you legends got us covered.

But if perfection is the target, Im all for it

@Windows200000
Copy link

Yeah I know. Game Im farming/playing which has drop dedicated streams are much longer than required time. Imagine angry mobs if required time was equal to stream lenght. And we are usimg bot that tunes in at very beginning, I believe even with lost time you legends got us covered.

But if perfection is the target, Im all for it

No. #428

@GoesInCircles
Copy link

Yeah I know. Game Im farming/playing which has drop dedicated streams are much longer than required time. Imagine angry mobs if required time was equal to stream lenght. And we are usimg bot that tunes in at very beginning, I believe even with lost time you legends got us covered.
But if perfection is the target, Im all for it

No. #428

It wasnt about "they are onto us". Just practical reason: it works good enough and longer stream time will cover for missed %.

But if you aim for getting every single %, Im rooting for you, because Im already happy that I wont further need to teamviewer to my backup pc to start stream and letting "automatic twitch drops" addon farm it for me

@Windows200000
Copy link

Windows200000 commented May 14, 2024

It wasnt about "they are onto us". Just practical reason: it works good enough and longer stream time will cover for missed %.

But if you aim for getting every single %, Im rooting for you, because Im already happy that I wont further need to teamviewer to my backup pc to start stream and letting "automatic twitch drops" addon farm it for me

From the issue I linked you:

When first starting the program, it will check for active campaigns every 60 minutes three seconds.

If the campaign starts at the top of the hour and only lasts 45 minutes and the drop happens after 15 minutes of watching, it will be missed if the check happens at 55 minutes( five minutes before the top of the hour.)

Missed here refers to the drop expiring, before it is completed.

The only way to set this is to start the program at 5 minutes after the hour. But this get messed up after watching a campaign and goes back into wait mode.

This part makes it clear, that you have to do a work around, to be able to get the drop

In my case, I started the program at 5 after the hour. After a couple campaigns, it now checking at :51. Not desired due to now is missing the short campaigns.

Again clearly states, that it's missing campaigns.

@Windows200000
Copy link

So it turns out something is weird with how TDM calculates time remaining. I think on every watch video call it resets the timer to one minute less, so when you change the rate, the times become unreliable. Will have to restart testing the efficiency.

@Haymiritch
Copy link

Hello. I ran into a problem, I can’t pick up the drops, it tells me about a certain error “failed integrity check”. The complete error looks like this:
"[{"errors":[{"message":"failed integrity check"}],"extensions":{"challenge":{"type":"integrity"},"durationMilliseconds":2,"operationName": "DropsPage_ClaimDropRewards","requestID":"01HXWDMQYMZIQLZ87D9AS9SUSK"}}]".
I pass the user agent, auth token in the request, I also tried client-integrity, and lastly I tried absolutely all the headers from the browser, but it still writes about this error. Does anyone know how to solve this?

@DevilXD
Copy link
Owner

DevilXD commented May 14, 2024

@Haymiritch Are you using some kind of a modified client, or you're getting this from just TDM + whatever fix this issue came up with?

@Windows200000 The time remaining timer was designed to work together with the old drops system, that used "minutesRemaining" to specify the drop progress. Since the progress could only change every minute, the timer was designed to take in the amount of minutes remaining, and then just count down 60 seconds each time it's set to a new progress value. If the watch period is anything different from 58-62 seconds, you'll see the timer either restart before it counts down the entire minute, or count down the entire minute and then stop, awaiting the next progress update. Changing how this works would require redesigning the timer.

@Windows200000
Copy link

@Windows200000 The time remaining timer was designed to work together with the old drops system, that used "minutesRemaining" to specify the drop progress. Since the progress could only change every minute, the timer was designed to take in the amount of minutes remaining, and then just count down 60 seconds each time it's set to a new progress value. If the watch period is anything different from 58-62 seconds, you'll see the timer either restart before it counts down the entire minute, or count down the entire minute and then stop, awaiting the next progress update. Changing how this works would require redesigning the timer.

@DevilXD >

Yeah. Unfortunately, it seems like we might have to reduce this time for mining time-efficiently now. I also feel like python might be too slow, as the whole watch loop take 10s on my decent PC, while at the same time a 30s frequency still only gives about 90% of progress, with the current 59s freequency only giving around 60%. I'm tracking this in #467, as it seems to not be trivial.

@Haymiritch
Copy link

Haymiritch commented May 15, 2024

@Haymiritch Are you using some kind of a modified client, or you're getting this from just TDM + whatever fix this issue came up with?

I'm trying to make my own script based on yours, but I don't understand why I get an error when collecting drops.
When I get the integrity token there, "is_bad_bot" is always true, is there any way to work around this?

@Luckz
Copy link
Contributor

Luckz commented May 15, 2024

@Haymiritch Are you using some kind of a modified client, or you're getting this from just TDM + whatever fix this issue came up with?

I'm trying to make my own script based on yours, but I don't understand why I get an error when collecting drops. When I get the integrity token there, "is_bad_bot" is always true, is there any way to work around this?

Once you are a bad bot, you might at the very least need a new client login.
For example, when I was using headless browser automation to idle for drops, this meant making a fresh browser userdata profile and acting sort of human before using it for automation again.

@Windows200000
Copy link

So, IMHO, the fix in #466 is now good enough for a release. I don't know when DevilXD will have time to release it here, or whether he wants to change some more stuff before he does so. It does now have to send a request every 20s (some people suggested there might be another way, but there is nothing concrete).

But it is now in a state, where you probably won't notice the change to how it was before. If you want it, download and build it from my fork.

@DevilXD
Copy link
Owner

DevilXD commented May 16, 2024

I'm stuck working ~10-13h a day, 5 days a week, then 12h of driving back-n-forth between remote work site and home, and 1.5 days of the weekend, which is the only free time I get to regen physically and mentally, before more work next week, all until the middle of June, where it all hopefully ends. I can only push out small patches here and there, but this issue sounds like a big one. The miner needs a rewrite anyway, so basically it's as good time as any, to break everything and rebuild it to work better than before.

#234 tracks everything that needs to be done... someday, when I'll finally have the time and willpower to sit down for a rewrite.

@Windows200000
Copy link

Windows200000 commented May 16, 2024

I'm stuck working ~10-13h a day, 5 days a week, then 12h of driving back-n-forth between remote work site and home, and 1.5 days of the weekend, which is the only free time I get to regen physically and mentally, before more work next week, all until the middle of June, where it all hopefully ends. I can only push out small patches here and there, but this issue sounds like a big one. The miner needs a rewrite anyway, so basically it's as good time as any, to break everything and rebuild it to work better than before.

#234 tracks everything that needs to be done... someday, when I'll finally have the time and willpower to sit down for a rewrite.

@DevilXD Focus on yourself. Your health is more important, than a Twitch Drops Miner. I will try to maintain the fork in working order and provide releases in the meantime. If you have any remarks or reservations about how I do things, feel free to raise them. It's your code.

Thanks for your awesome work on this. <3

@Coldblackice
Copy link

@DevilXD All good, and thanks heaps for all your effort on this. It's become the de facto tool that I and many others rely on, and have relied on for multiple years now.

@Windows200000 I just downloaded and built your fork of this last night, and it works perfectly. I hadn't received any drops progress in nearly two weeks until building your fork last night. It's great to see them progressing again -- thanks for carrying this torch!

@Nazar1ky
Copy link

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

@Windows200000
Copy link

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working Critical For critical issues that prevent the application from working
Projects
None yet
Development

No branches or pull requests