

Show HN: Get a summary of your Steam account apps – price, install size, etc. - jprusik
http://mysteamgauge.com/

======
jprusik
OP and developer of Steam Gauge here - this is my first python project, and I
welcome any suggestions / criticisms / advice. If you don't have a Steam
account but still want to check it out, feel free to take a look at my
profile: <http://mysteamgauge.com/search?username=monkeyagent>

Here's the summary I posted over on the Steam forums:

What it is:

Steam Gauge will let you get a summary of all the games/apps/etc listed for
your Steam account via the Steam Web API. It returns information about those
games including hard drive space requirements and cost (base store value, not
what you actually paid).

Features:

-The list that is constructed allows you to individually select/de-select apps.

-There is a graphical representation of collection percentage selected vs total.

-There are pre-built options to select only a given app type (game, app, movie, etc).

-The app table allows you to sort the list by title, id number, hard drive space, type, and cost (just click the headers).

-If you don't have a vanity username set up, you can use your steamID64 number instead.

-If game information is missing from the database, it automatically adds that id to the list of apps to update in the next database refresh (simply using Steam Gauge helps make it better).

-Finally, you can export the results of Steam Gauge to a csv file, so you can manipulate the data however you wish.

Requirements:

-For now, your profile needs to be public.

-Javascript must be enabled on the browser.

-If you use a relatively modern browser, the whole experience is going to look/work better.

Limitations:

-The hard drive values are based primarily on the published requirements (where available) and is otherwise based on manual data checks of game install size.

-The database still isn't complete, especially for new games, and weird exceptions. It should still be helpful for general estimates, but the precision is limited to the data available.

-The mobile layout still needs a little work but should function properly.

-The "Value" column represents the base cost of the game, not what an account owner _paid_.

Future plans:

-Add more game information including genres, controller support and multi-player capabilities

-Add submission flag for games with missing/incorrect data to help crowdsource what I can't scrape

~~~
kimagure
How are you getting users' game lists? Are you using
id/user/games?tab=all&xml=1 or something like that?

A while ago STEAM was rate limiting me to somewhere between 8-15 seconds
(503's returned in between). Have you run into this at all on your end?

~~~
james4k
It has a global rate limiter AFAIK, so it's hit and miss depending on how much
load it's under.

Edit: I was trying to datamine Steam several months ago as well, but the
amount of data I needed really was unrealistic for this very reason, and it
would have just been bad etiquette. I imagine by having this API they're
having to deal with a ridiculous number of dataminers. And that's on top of
their crazy number of normal users, which I'm sure the rate limiter is there
to protect.

~~~
kimagure
Well, I really can't blame anyone but STEAM for this. They don't have APIs for
anything other than stupid TF2/Dota2 things so it's no wonder that people
scrape their pages every day.

------
kemayo
My standard check on this sort of tool is to see how it handles the Sam & Max
games. Because they're only sold as a bundle [1], but they show up in your
game list as a bunch of episodes. The general failure mode of the tools is to
think that each episode costs the full bundle price.

This tool, indeed, does that. [2]

(It doing that lets me feel slightly better about my $7k account valuation.)

[1] <http://store.steampowered.com/app/901660/>

[2]
[https://dl.dropbox.com/u/1372532/Screenshots/Screen%20Shot%2...](https://dl.dropbox.com/u/1372532/Screenshots/Screen%20Shot%202013-04-01%20at%209.40.31%20AM.png)

~~~
jprusik
I've manually updated Sam & Max in the next revision of the database. The
tricky thing is, how do you divide a bundle/subscription cost among existing
games in that bundle and an unknown / unreleased number of games?

Another interesting fringe case: Half-Life 2: Lost Coast is now only available
via a $40 bundle, and is listed under that cost, but is actually just a pack-
in bonus to the various Half-Life 2 bundles. How do I represent that? I
originally had the $40 listing but updated it to "-" to reflect that the
pricing isn't available.

------
dhawalhs
I once wanted to calculate how much I have actually spent on steam. The
information is only accessible once you log in. So, I wrote a tiny script in
js that you can paste in your browser window to calculate that amount. Here it
is: <https://github.com/dhawalhshah/steam-cost-calc>

Steam gauge tells me the actual value of my games is $2019.05, but the amount
I have spent is $432.75

~~~
jprusik
One step ahead of me - I'm also looking at what can be done with the purchase
summary once logged in.

I've actually collected a few other data points for each game as well, but I
haven't figured out the best way to visualize / categorize them yet.

------
erroca
Just wanted to mention, our corporate web protection scanner thing detects
your site as a malicious one for: Downloads code from the internet, so I cant
even see your site :( [http://www.sophos.com/en-us/threat-center/threat-
analyses/vi...](http://www.sophos.com/en-us/threat-center/threat-
analyses/viruses-and-spyware/Mal~HTMLGen-A.aspx)

~~~
jprusik
Hrm, I'll take a look when I get a chance- thanks for the heads up.

You might try it on your smartphone if you can - I still need to work on the
mobile layout, but it shouldn't look terrible.

------
darkchasma
Great, now I can actually see that I spend WAY too much on games I never play.
Thanks a bunch.

~~~
TillE
Sites like this count the full or current prices of each individual game.

I have over $3k worth of games in my account, but I think I've actually spent
maybe 15-20% of that, thanks to sales and bundles. I buy very very few games
at full price these days.

------
jprusik
A quick note on missing data - I originally scraped data automatically from
the Steam store page when a game wasn't found in the database. But I didn't
want to add junk data to the database if the scraped data was bad and still
need to figure out how to handle those kinds of exceptions. So for now, the
tool makes a note of game IDs that people requested but weren't in the
database. That way and I can scrape those separately and review the data
before I import it to the database. So even though it doesn't auto-populate,
your missing entries will likely be updated in the next database refresh
(about once a week, depending on how much time I have available).

------
JustinAiken
I've seen a couple of these before, but this is by far the nicest. Love that
it spits out a single GB number so you know how big of a SSD you'd need for it
all...

Saw a couple of issues you could improve if you like: 1) Civilization 4 (and
all DLC) shows up twice, but with no price 2) GTA3/VC/SA all show up twice 3)
GTA1+2 show up as $50; you actually can't buy them on Steam, they're just in
the $50 GTA Collection 4) Maybe remove 'the' when sorting

------
stack0v3erfl0w
Just a quick bug report:

* When sorting by value it does a string comparison instead of comparing the numbers (4.99 > 19.99 where it should be the opposite).

------
nemetroid
Is it by design that it always re-sorts by name before sorting when selecting
a new column to sort by? If it didn't, it would be possible to sort by
multiple criteria.

Also, it seems like the value column is sorted like strings in Opera.

Pretty neat overall. I'm glad I bought most things at sale, and not the price
shown..

~~~
jprusik
I'm using tablesorter (<http://tablesorter.com>) for sorting right now, and
haven't really dug deep into it beyond the default configuration. I'll take a
closer look - thanks!

~~~
Ianvdl
Sorting by price (decending) shows 14.99 above 19.99. You might want to take a
look at that.

------
tyilo
Nice work.

Incredipede shows up as "Unavailable" in the list. Here is the link to the
steam page: <http://store.steampowered.com/app/230150/>

------
mcos
Techcrunched: [http://techcrunch.com/2013/04/01/steam-gauge-gauges-the-
size...](http://techcrunch.com/2013/04/01/steam-gauge-gauges-the-sizeprice-of-
your-steam/)

------
engtech
Very cool. It'd be nice if steam gave you the purchase price, then you could
see all the games that are cheaper now than when you bought it. :)

------
Sujan
One of these things I didn't even want to know.

------
simfoo
It doesn't take into account Steam sale prices. I did not pay $140 for my
games, more like $30. That's a huge difference.

~~~
Semaphor
It can't. And no, I didn't pay $750 either (closer to $100). Because Humble
Bundles aren't included either.

------
cduser
COD MW3 and COD MW3-Multiplayer are listed as separate games with $59.99 for
each. The total takes that into account.

------
ximenez
You need to fix sorting by disk usage as it doesn't take units into account.

~~~
jprusik
If you convert to MB or GB only using the bullet options, you can sort sizes
appropriately. Not an ideal workaround, but for now, it works.

------
danso
This doesn't work for me but maybe I'm not using the correct steamID...I've
noticed that my "login" name is different than what appears in the top right
corner of my steam client. Also, your service may be overloaded without it
saying so.

In any case, I looked at my list of games and play time on the Steam Client
(on Mac) for the first time. It doesn't appear to be sorting correctly at
all...for example, when sorting by "Playtime", the top listed game has "48.4
hrs on record" and then the next game is listed as "0.7"...and then the next
game is "69.9" hours...It's kind of astounding to me how Steam is such a
wonky, buggy platform given Valve's expertise.

Also, I really doubt that I've played Portal 2 for 70 hours. I guess it counts
the time that I've left it minimized on the desktop. Though I admit, I am
stuck on one of the latter puzzles and haven't gotten back to it...

~~~
jprusik
Make sure you're using your vanity (original account login) name, and not your
currently displayed username (also that your profile is public).

(You'll notice "ClassyNemesis" is my profile name, but my account profile
still links to <http://steamcommunity.com/id/monkeyagent> )

