dustinslane / Subathon-Evolved-Releases

Please go to https://dustinslane.nl/ for instructions on the timer.
9 stars 0 forks source link

Tier 2/3 mistaken for Tier 1 in streamlabs and timer runs slightly slow #1

Open Taloth opened 3 years ago

Taloth commented 3 years ago

Hey dustin,

Not sure if you're tracking this github page, but I noticed a couple of issues a streamer that I follow is experiencing. He's probably done in about a week. But I figured I'd report issues anyway so it can be fixed for others.

  1. Tier 2/3 subs get counted as Tier 1. I suspect this is because the streamlabs event sends 'sub_plan' not 'subPlan' in the event.
  2. The timer appears to run slow due to it being in a thread.sleep(1000) loop (which is never exactly 1sec, but usually longer). For the streamer I'm following this means about 5s/hour are not counted down, and varies.

Cheers!

dustinslane commented 3 years ago

1 - I'll have to take a look, they may have changed it

2 - Yeah this is how it is done haha. Very simple. I should change that to a System.Timers.Timer implementation I guess

Taloth commented 3 years ago

2 - Yeah, or change it to an 'EndDateTime' that gets incremented. Which means it could be preserved during PC reboots.

I don't need it but some further suggestions:

dustinslane commented 3 years ago

I have fixed the tiers ( I can't test it well with the alert box on the streamlabs website but I believe it to be fixed )

The timer being slightly off is something I am going to revisit at a later date. While I think that there is an improvement that can be made there, I also believe that >99.75% time accuracy is "good enough" for the use-case here.

Disable adding more time once the timer hits 0.

This is something I want to add eventually

Add mechanism to manually add time, without pausing the timer. Currently the edit button pauses the timer and makes it difficult to add a specific number of seconds.

This will also go on the list

Thank you for reporting!

Taloth commented 3 years ago

I also believe that >99.75% time accuracy is "good enough" for the use-case here.

Yeah, who is idiotic enough to do a 30+ day subathon and end up with an extra hour. 😈

And you're welcome. I wanted to avoid nasty surprises for other ppl.

zax9 commented 1 year ago

The inaccuracy of the timer is variable depending on the computer it's running on and how loaded it is. There's a streamer currently on day 59 of a subathon (Guude) and we've measured the timer drift to be a consistent 7 seconds per 10 minutes (600 seconds), or 98.8% accurate. Over the course of the 58 days and 21 hours he's been live, he's streamed for an extra 16.5 hours.

It'd be great if you could revisit the timer implementation using one of the other methods discussed in this thread that would have higher precision.