[Userscript] SteamGifts Giveaways Table/Chart Creator

tl;dr

See the 2nd attached image to see the script in action.

Introduction

This script allows you to very easily create a (RaChart compatible) table/chart (pick your favorite term) of all/some giveaways you created for easy pasting in any thread. The table contains a column with the game name and a link to the Steam Store and a column with a link to the giveaway. You can add extra columns as desired.

With one click it creates a number of tables at once; one as described above, one for pasting to Excel, one for Giveaways for peace, one for Positive thread!, and one for You're Not Alone #3. These last three add columns with the supplied level, end date, and the creator name for direct pasting to those threads.

What it does

It adds a few extra options to the sidebar of the Giveaways Created page that will allow you to create tables/charts per the settings you select (see the 1st attached image). You can create a table for all giveaways on the page (it supports endless scrolling if you have that via a script) or just those you specifically want to select.

Once you click the Create Giveaway Tables button it create a number of different tables and will display links to popups containing the tables. A button on the popup allows you to copy the table to clipboard, ready for pasting.

Download

The script can be installed from here.

Step by step tutorials

See these threads for more information:

Original Background

I've been a fan of RaChartβ„’ Enhancer ever since Sighery created the script; it's such a quick way to see what games in a list/chart/table you own and which you don't. I saw other applications for it than bundle postings. It seemed to me to be a perfect evolution of the 'train' giveaways; just one table where you can immediately see which games you already own and handy links to bring you to the giveaways of those you don't.

The only problem; creating such a table was a manual and rather laborious affair (though Sighery came through again; with a Python script). So I've been thinking about creating some way to automate the process completely and here's the result of what I've come up with. Most of the credit should go to Sighery, without his help this script wouldn't exist.

Technical stuff

It's pretty simple; the script iterates all created giveaways on the page and grabs the game name, giveaway url, and the game image url. From the game image url we can create a Steam Store url. These three are all that are needed to create the table. It now also grabs the timestamp to be able to include the end date and to skip any ended giveaways if desired.

In the few cases that there is no image, it loads this Steam page with the game name as the search variable. Then it compares any results to the game name and in case of an exact match we take the link from that page and cut off the cruft (everything after the last '/').

There are cases where there are no exact matches on that Steam page; cause of subs, certain DLC, weird capitals, etc. If this is the case then we fall back to loading the Giveaway page straight from Steamgifts and grabbing the Steam link from there. There are a very few cases where that would fail too, as you can create giveaways like this one. If, for whatever reason, no link can be found I put a 'NO LINK FOUND' in the table.

The giveaway level could be gotten from the individual giveaway pages but I don't feel that warrants loading them all and creating a strain on the server. And in the vast majority of the cases all giveaways will be the same level anyway.

Changelog

Version 1.3

  • Updated to be ESGST compatible again.
  • Added the missing "Game" header to the Excel table.
View attached image.
View attached image.
View attached image.
7 years ago*

Comment has been collapsed.

I don't know which one to bump so I'll bump 2 threads ... here is a donation/test bump:

Steam Giveaway
Draw Slasher https://www.steamgifts.com/giveaway/mK9Ti/
Friday Night Bullet Arena https://www.steamgifts.com/giveaway/wM6XT/
Black Swan https://www.steamgifts.com/giveaway/BYfFJ/
The Albatross https://www.steamgifts.com/giveaway/fFTqv/
Captain Lycop : Invasion of the Heters https://www.steamgifts.com/giveaway/fTGCI/
The Safeguard Garrison https://www.steamgifts.com/giveaway/lb9Av/
Rest House https://www.steamgifts.com/giveaway/gIT0b/
CrossWorlds: Escape https://www.steamgifts.com/giveaway/NWPJN/
Dashing Dinos https://www.steamgifts.com/giveaway/9Wc6i/
Mortificatio https://www.steamgifts.com/giveaway/rKOtj/
Steam | Giveaway
:-|:-
**[Draw Slasher](http://store.steampowered.com/app/418270/)** | https://www.steamgifts.com/giveaway/mK9Ti/
**[Friday Night Bullet Arena](http://store.steampowered.com/app/513840/)** | https://www.steamgifts.com/giveaway/wM6XT/
**[Black Swan](http://store.steampowered.com/app/560230/)** | https://www.steamgifts.com/giveaway/BYfFJ/
**[The Albatross](http://store.steampowered.com/app/581600/)** | https://www.steamgifts.com/giveaway/fFTqv/
**[Captain Lycop : Invasion of the Heters](http://store.steampowered.com/app/525070/)** | https://www.steamgifts.com/giveaway/fTGCI/
**[The Safeguard Garrison](http://store.steampowered.com/app/585580/)** | https://www.steamgifts.com/giveaway/lb9Av/
**[Rest House](http://store.steampowered.com/app/582290/)** | https://www.steamgifts.com/giveaway/gIT0b/
**[CrossWorlds: Escape](http://store.steampowered.com/app/511430/)** | https://www.steamgifts.com/giveaway/NWPJN/
**[Dashing Dinos](http://store.steampowered.com/app/455290/)** | https://www.steamgifts.com/giveaway/9Wc6i/
**[Mortificatio](http://store.steampowered.com/app/585220/)** | https://www.steamgifts.com/giveaway/rKOtj/
7 years ago
Permalink

Comment has been collapsed.

Great to see the script in use, thanks!

7 years ago
Permalink

Comment has been collapsed.

Bump

7 years ago
Permalink

Comment has been collapsed.

This looks great!

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Thanks!

7 years ago
Permalink

Comment has been collapsed.

Version 0.3
Now on GitHub for easier updates and adds input boxes to give the giveaways a default name instead of displaying the link and a way to add extra columns to the table. Hover over these boxes to get some help text.

7 years ago
Permalink

Comment has been collapsed.

That is really strange, the link works fine for me.

Edit: it worked on Firefox but not Chrome, fixed now.

7 years ago
Permalink

Comment has been collapsed.

I am not sure why you would use http://store.steampowered.com/search/suggest?term=Portal&f=games while SG already give Steam store links tied to respective giveaways.

7 years ago*
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

I'm definitely looking into the image thing later when I get back home.

I noticed that for the one package I found it does not display an image at all but it needs more research.

7 years ago
Permalink

Comment has been collapsed.

Sighery said it all so I don't have to. :)

And I will definitely have to look at that image link.

7 years ago
Permalink

Comment has been collapsed.

Imho, this is poor optimization if it only aims at saving SG load, as we aren't launching table maker script for each SG page we visit...

But yes, image links just contain appid you need :-)

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago
Permalink

Comment has been collapsed.

Because you don't save that much load on SG, as said above, people aren't likely to run it on regular basis. People don't generate a new GA table code each time they visit their created GA pages.

Poor optimization not in sense of badly, but in the sense of not that useful.

But with using your suggestion on image link, this is the perfect way to just remove the requirement of 50 calls.

http://www.flounder.com/optimization.htm

7 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 4 years ago.

7 years ago*
Permalink

Comment has been collapsed.

Version 0.5
Now uses the game image url already in the table to create the Steam Store url which makes it faster, more accurate and make less server calls. In case there is no image it falls back to Steam Search first and the Giveaway page second.

Also added a default table heading for the SG Table.

7 years ago
Permalink

Comment has been collapsed.

Version 0.6

The recent CSS updates to the site broke the script; it's fixed now.

7 years ago
Permalink

Comment has been collapsed.

Version 1.1
Major overhaul.

You can select individual giveaways, skip ended giveaways and it creates tables for Giveaways for peace, Positive thread!, and You're Not Alone #3.

Tables are now loaded in selectable, pretty popups with a copy to clipboard button.

The name has been changed to SteamGifts Giveaways Table/Chart Creator.

6 years ago
Permalink

Comment has been collapsed.

Mhh this is what I get (SG Table):

View attached image.
6 years ago
Permalink

Comment has been collapsed.

I'm guessing you are using a script that adds stuff to the Giveaways Created page; normally the listing on that page doesn't show "(40P)".

Without being able to see the listing I can't say if it's anything easy to work around.

6 years ago
Permalink

Comment has been collapsed.

You're totally right! I totally forgot about that. When I disable ESGST everything works fine.

Here's one row with ESGST features in case you want to try to find a workaround:

<div class="table__row-outer-wrap esgst-es-page-1">
    <div class="table__row-inner-wrap">
        <div>
            <a class="table_image_thumbnail" style="background-image:url(https://steamcdn-a.akamaihd.net/steam/apps/285190/capsule_184x69.jpg);" href="/giveaway/c8bsm/warhammer-40000-dawn-of-war-iii"></a>
        </div>
        <div class="table__column--width-fill">
            <p><a class="table__column__heading" href="/giveaway/c8bsm/warhammer-40000-dawn-of-war-iii">Warhammer 40,000: Dawn of War III
                <span>(40P)</span>
                <a class="giveaway__icon" href="http://store.steampowered.com/app/285190" target="_blank">
                    <i class="fa fa-steam"></i>
                </a>
            </a><div class="esgst-gc-panel" data-gcready="1">
            <a class="esgst-gc esgst-gc-giveawayInfo" data-id="gc_gi" href="https://www.steamgifts.com/user/Moony1986" title="You have sent 0 copies of this game (0 of which added to your CV)
You should get $40 real CV for sending a new copy of this game
A giveaway for this game is worth 40P"><i class="fa fa-info"></i> 0 <i class="fa fa-dollar"></i> 40</a>

            <a class="esgst-gc esgst-gc-fullCV" data-id="gc_fcv" href="https://www.steamgifts.com/bundle-games/search?q=Warhammer%2040%2C000%3A%20Dawn%20of%20War%20III" title="Full CV"><i class="fa fa-calendar"></i></a>

            <a class="esgst-gc esgst-gc-hidden" data-id="gc_h" href="https://www.steamgifts.com/account/settings/giveaways/filters/search?q=Warhammer%2040%2C000%3A%20Dawn%20of%20War%20III" title="Hidden"><i class="fa fa-eye-slash"></i></a>

            <a class="esgst-gc esgst-gc-achievements" data-id="gc_a" href="http://steamcommunity.com/stats/285190/achievements" title="Achievements (84)"><i class="fa fa-trophy"></i></a>
        </div></p>
            <p>
                <span>Ended <span data-timestamp="1518372000" class="esgst-at" data-ui-tooltip="{&quot;rows&quot;:[{&quot;icon&quot; : [{&quot;class&quot; : &quot;fa-clock-o&quot;, &quot;color&quot; : &quot;#84cfda&quot;}], &quot;columns&quot;:[{&quot;name&quot; : &quot;Today, 7:00pm&quot;}]}]}">Feb 11, 2018, 19:00 - 4 hours</span> ago</span>                                                        </p>
        </div>
        <div class="table__column--width-small text-center">Public</div>
        <div class="table__column--width-small text-center">7</div>

        <div class="table__column--width-small text-center">-</div>

        <div class="table__column--width-small text-center">                                                        <form>
            <i class="fa fa-key"></i> <span data-name="Warhammer 40,000: Dawn of War III" data-popup="popup--view-keys" class="is-clickable trigger-popup--keys trigger-popup table__column__secondary-link">View</span>
            <input type="hidden" name="xsrf_token" value="removed">
            <input type="hidden" name="code" value="c8bsm">
            <input type="hidden" name="do" value="popup_keys">
        </form>
        </div>
        <div class="table__column--width-small text-center">356</div>
        <div class="table__column--width-small text-center"><i class="fa icon-green fa-check-circle"></i> <a class="table__column__secondary-link" href="/giveaway/c8bsm/warhammer-40000-dawn-of-war-iii/winners">Sent</a></div><div class="table__column--width-small text-center"><i class="icon-green fa fa-check-circle"></i> Received</div>                                                </div>
</div>
6 years ago
Permalink

Comment has been collapsed.

Seems quite a bit has been added there. :)

I use ESGST as well but obviously not this part of it; would it be game tags or something else?

I'll look at it in more detail after I've had some sleep.

6 years ago
Permalink

Comment has been collapsed.

I hope I've fixed it with the new version.

I've done some tests and they went fine but I can't test for every possible combination of ESGST settings unfortunately.

6 years ago
Permalink

Comment has been collapsed.

With my settings it now works fine. Thanks a lot for this amazing script πŸ˜ƒπŸ‘πŸ‘

6 years ago
Permalink

Comment has been collapsed.

I'm glad to hear it!

6 years ago
Permalink

Comment has been collapsed.

Version 1.2

  • Variables now also work on the Giveaway Title field.
  • Changed End Date to display month first and day second.
  • Headers are now also added to the Excel table.
  • Hopefully fixed it so that it works around anything added by ESGST or other scripts.
6 years ago
Permalink

Comment has been collapsed.

Bump 😁 I added a bug report to GitHub πŸ˜‰

5 years ago
Permalink

Comment has been collapsed.

I guess my fix from last year no longer works or I reintroduced it....

I'll have a look at it. Might take some time; I just got a new pc.

5 years ago
Permalink

Comment has been collapsed.

No need to rush, I just realized that some of my links were missing and analyzed why :)

5 years ago
Permalink

Comment has been collapsed.

Version 1.3

  • Updated to be ESGST compatible again.
  • Added the missing "Game" header to the Excel table.
5 years ago
Permalink

Comment has been collapsed.

Deleted

This comment was deleted 1 year ago.

3 years ago
Permalink

Comment has been collapsed.

Closed 2 years ago by Corran.