Steamgifts Auto Entry Enhanced

Automatically enters giveaways on steamgifts.com

< Feedback on Steamgifts Auto Entry Enhanced

Question/comment

§
Posted: 2017-04-27

Errors in console and not entering some GAs

TypeError: can't access dead object tab.js:1658:1
TypeError: window.getComputedStyle(...) is null Steamgifts_Auto_Entry_Enhanced.user.js:1501:24

Running with defaults, ticked everything except autoentry on page load, FF/GM

§
Posted: 2017-04-28

So i never enabled the "Enter any wishlist giveaways" or "Enter group giveaways" before. So i didn't test if they worked properly from the base script i worked off of. However i just enabled them in FF52.0.2(64bit)/GM and i didn't get those errors.

Although i'd suggest trying without the "Enter group giveaways" and maybe even "Enter any wishlist giveaways" selected.

Let me know if that makes a difference.

§
Posted: 2017-04-28

Ok the first error is gone (not sure if you updated the script and got the autoupdate).
The second remains and I also noticed this showing up once, not recurring:
Blocked loading mixed active content “http://www.steamgifts.com/giveaways/search?type=wishlist”[Learn More] minified_v22.js:3:16687
Apparently the page has non SSL/TLS elements not sure if this is related at all as I have no idea how the GA elements are parsed but I thought it was worth mentioning.

I tried disabling group giveaways but no difference whatsoever. Regarding the wishlist, I did not try that as I only use the wishlist. It is far easier for me to maintain a single list than editing the script list, specially when my wishlist is huuuuuuge :open_mouth: If it's in my wishlist I want it, so this functionality is essential :)

I also noticed that the error in itself seems not releated (at least not 1:1) to if I enter the GA or not. The list is iterated but some games are just not entered.
I'm on the same version of x64 FF, with GM 3.11 and my settings are exactly like this:
https://imghost.io/image/abh3C

FF has e10s enabled (just in case it's related) and I'm running these addons:
GM, Session Manager, Stylish, Tab Mix Plus, uBlock Origin and uMatrix.
No style whatsoever has been applied to SG with stylish, uMatrix is disabled for SG (just to be on the safe side because previous version of the script had issues with blocking google-analytics via noscript) and uBlock Origin on or off doesn't make a difference :)

§
Posted: 2017-04-29

I have not updated the script so not sure on why the first error would go away.

Here's what mine normally looks like, these errors are normal.
https://imghost.io/image/abRdm


I want to say these issues are because of the wishlist, but not 100% sure. My wishlist, which i've only just enabled the setting to enter the giveaways, only has like 5 items in it. I did add one and watched it enter it fine, although you said it entered some. I have a few thoughts what might be the issue such as a bad regular expression(already dealt with one in original script), or how the wish list is retrieved.

Entered wishlist item giveaway:
https://imghost.io/image/abgfO


I had e10s disabled by addons, so i manually enabled it anyway to test and that didn't seem to cause and issues that i noticed. I also have GM 3.11/Session Manager/Stylish/Tab Mix Plus/uBlock Origin/ and many more most notibly (noscript/https everywhere). I did not have uMatrix so i installed that and still didn't notice any issue/error.


Can you post a image(s) of the console? Also how many wishlist items to you have? Have you noticed if it fails on the same exact games, if so what ones? Does it seem to say adding possible entry, and then just never enter it? Also last but obvious question do you have enough points left over to enter that giveaway?

§
Posted: 2017-04-29

Here is a ss from the log: https://imghost.io/image/ab8GM
In this particular example Game Tycoon 2, Hue, Super Trench Attack!, Elven Legacy: Magic, BitMaster, 2nd instance of Samorost 2, No Turning Back: The Pixel Art Action and others not visible in the log due to screenshot estate heh.
I wonder if it's some sort of timing issue that causes an object to be null at the time it is accessed. It's worth mentioning that I constantly have 300+ open tabs on FF with references to APIs, code snippets, etc etc as I'm constantly working (I'm a C++ software developer).
Wishlist is over 1.2k games big. No idea how the script parses it but if it's not the case, perhaps, it would be a cleanest solution to have wishlist mode just parse https://www.steamgifts.com/giveaways/search?type=wishlist instead of doing whatever check it does for the wishlist?
I doubt it's a regexp failure as the same game may work or not work (in this particular sample Samorost 2 was entered once but the 2nd GA with it failed. Unless the regexp breaks on something other than the game title.
Something that I don't see in your log is the removal of the hidden iframe info message. Again no idea if there's a hidden iframe that needs to be removed.

Currently sitting on 300 points so not a point thing either (that would be silly on my part haha).

Unfortunately I am entirely clueless on JS or I could possibly help much more with this. But if you need somekind of log or debugging info I can get for you let me know.

PS You may want to ditch NoScript for uMatrix. It's much better, it blocks in a much more non-intrusive way, can be configured very fast on a per scope basis (domain/subdomain etc) without ABE rules etc, doesn't do some bad practices that NoScript does (eg the way noscript stores its data) and is far better resource usage-wise as well ;)

§
Posted: 2017-04-29

Also thanks for picking this script up :) There's not much love for FF-based solutions these days!

§
Posted: 2017-04-29

So in the image you just put up, with the entered giveaways none/some/all work? Just to clarify as they all are outputting the same to the log.

Also i wish i new why that error pops up on yours but not mine, should of been a browser type/version but seeing as they are the same I'm befuddled. Do you use any other scripts on streamgifts via GM? However since you do not use the script the same as me you have little use for the button that is added to the page, so lets try commenting that out. This may fix the entering giveaway as the script error might be stopping it. Since your a programmer I'm sure your capable of this.

So comment out lines 838-841 as this will(should) stop the errors.
new ResizeSensor(elementsensor, function() {
//console.log('Changed to ' + elementsensor.height());
fn_addgametolist();
});


To comment the lines just put a // in front of each line like. Don't remember C++ commenting but i'm sure its similiar.
//new ResizeSensor(elementsensor, function() {
//console.log('Changed to ' + elementsensor.height());
//fn_addgametolist();
//});


After that let me know what happens.


So your Firefox tabs shouldn't matter, besides the fact that i don't know how its possible to work with that many open tabs, do you ever hear Firefox weep when you open another ;). Parsing might be an issue as I'm not sure how that works haven't needed to touch yet, but also doubt this is an issue as it gets to entering. Yes, i also agree that its not a regexp issue because of the same reason you gave. Had to ask about points, as i hoped this was the issue, as its simple to fix.

This is a mix of JavaScript/jQuery (JavaScript framework)/jQuery ajax/CSS. I think its easier then C++.

PS
I only started with noscript again due to two sites i visit daily that have bad popups. Never heard of uMatrix but i have it now so i'll give'r a try.

PSS
I like working on JavaScript an jQuery stuff to save me time and tediousness. I don't put up most my work for GM or Stylish, but this is by far the most complex one i'm working on for fun.

§
Posted: 2017-04-30
Edited: 2017-04-30

Works like a charm for me. I imported my settings from the original script.
EZPZ no headache.

Btw. some ideas;

  • Exporting settings into a readable format, with line breaks n shieeet!
  • Prepend a numbering column to the wishlist and enable editing the list order by manual input in said column. Just like the steam wishlist .
  • Point stacking. Enter any (longest first) GAs instead hitting the 300p cap. Upon next refresh when finding potential wishlist GAs, leave the parked ones to reclaim the necessary points.
§
Posted: 2017-04-30

Ok I finally managed to reproduce it reliably, figured out what is triggering it.

I have one tab pinned in FF that is running the script and another SG tab on the wishlist url to test. The moment I refresh the secondary tab to check what has been entered is the moment when the script stops entering GAs. At that point no additional GA is entered although the script runs and logs normally to the console. Somehow the refreshing of the secondary tab is breaking the script.

Regarding the "window.getComputedStyle(...) is null" indeed commenting those 4 lines fixes it.

§
Posted: 2017-04-30

Regarding the null error, perhaps this is related? https://bugzilla.mozilla.org/show_bug.cgi?id=548397

§
Posted: 2017-05-01

I have done the steps you stated that cause the issue, and I'm unable to encounter your result. I even left it running all night long and it still entered me into all giveaways fine. I also still don't get the null error(i have the 4 lines running). i don't know whats the difference between our two Firefox installs.

I had looked at that bug page, the issue seems to be related but not exact. As the piece that's nulling out isn't in an iframe which seems to be the problem on the bug page. It's just a div on the main page, also it was reproducible for all Firefox installs and this one isn't.

I could probably fix the issues if i could get them to happen to me. I'll try running this on my machine at work and see if i get them. For now I'm sure its obvious just keep that one SteamGifts tab open to enter giveaways without the second tab, and keep those 4 lines commented :neutral:.

§
Posted: 2017-05-01

So good news and bad news trying to find the issues. I managed to recreate the entering giveaways the way you mentioned, for the typeerror null i was not able to get that one.

Now to attempt to figure out why the giveaway entering doesn't happen.

§
Posted: 2017-05-05

Been away for a work seminar these past few days. I see the erratic behavior without loading a second tab as well but that seemed to be the way to force it. Glad you could reproduce it as you can observe it in action. :)

§
Posted: 2017-05-06
Edited: 2017-05-06

Ok I think I found out what causes it. It's uBlock Origin. Not sure why I didn't see it on my first test, perhaps because I didn't have the refresh tab method to validate fast and was going by the log..must have missed it in the spam. It looks like if I disable uBlock Origin and keep refreshing the second tab, it keeps on going. It's 100% reproducible, at least here.

If you can verify this, I'll start testing the null error with a more methodical approach.. In a VM while building the FF setup from scratch until I see it in the logs. If I don't I'll go the other way, copy the FF profile and start stripping it down.
Call it a work-induced obsession but I'm very diligent in hunting down issues hahaha. It would be much easier, I guess, if I had any knowledge on web-related scripting but I can only go as far as understanding the syntax and flow control/logic. :(

§
Posted: 2017-05-08
Edited: 2017-05-09

I figured the reason for not entering GAs might also be ad-blockers. I use uBO and among buttload of subscriptions there is EasyList, which blocks some ad cancer lib called "Prebid.js". In fact multiple ad domains use it and as such, no GAs are being automatically entered unless you dig up the shit responsible for that behavior and whitelist it.

Kinda confusing tbh.

Addendum: And even then it's not entering all GAs but only some and seemingly random. Same result despite disabling uBO. I'm out of ideas for the moment. Maybe the script shits itself at some point, who knows. I get a bunch of "Entring bla... removing frame" but none of that seem to have an actual effect.

More fluff: Tho seems kinda limited to FF. Latest Chrome with uBO, pretty much same config and everything works fine.

§
Posted: 2017-09-30

Try to open steamgifts.com and stay in the page, don't click on other tabs.

(FF dev 57.0b3) in my case the script only works if steamgifts.com is the active/selected tab.

If I select any other tab while the script is running the console will display the "Entering giveaway" message (logs) but it wont actually work, then if I disable > enable the Auto-Entry button it will display the "Entering giveaway" message again but this time it works just fine.

Post reply

Sign in to post a reply.