Roguelike Steam Dataset - ScottBurger/going_rogue_podcast GitHub Wiki
This page describes the dataset that we use to power the GROGPOD Roguelike Podcast.
Currently all apps that have rogue-based tags are included. This includes soundtracks, DLCs, and so forth that are not explicitly games. A future update will address this.
Data pull archive
- 2026-05-25
- 2026-01-21
- 2025-08-24
- 2025-04-08
- 2025-01-05 <-- adding games tagged both "Procedural Generation" and "Permadeath"
- 2024-10-16
- 2024-04-01
- 2024-01-01
- 2023-10-05
- 2023-06-05
- 2022-03-27
- 2022-12-18
General data workflow
- Get list of Rogue-like, Rogue-lite, Action Roguelike, Traditional Roguelike, Roguevania, Roguelike Deckbuilder games from SteamDB
- Pull tag, review, app details data from Steam (script details here)
- Apply various scoring techniques to the games
- Games that pass all the scoring techniques get their playtime data scraped from Steam (~200ish)
- Data pushed to CSV
Column Info
- Appid - Steam-based unique identifier for a given game
- Name - App's name
- Release date - Release date set by the Steam API. This can be changed by the developer later on, but this is when it was actually published to Steam at the time.
- Positive reviews
- Negative reviews
- tag_dict - Python dictionary of the tag data for the game along with the number of votes for that tag
- Total reviews
- score_percent - Positive reviews / Total reviews
- rogue_tag_votes - How many total tag values there are for this game that are like "Roguelike", "Roguelite", "Action Roguelike", "Roguevania", "Roguelike Deckbuilder", "Traditional Roguelike"
- total_tag_votes
- rogue_score - rogue_tag_votes divided by the total tags applied
- leading_rogue_tag - True if one of the first 5 tags for the game are one of the roguey tags in our dataset, otherwise False. These would typically include the tags you see on the store page without clicking into the rest of them. "Does the game brand itself as a rogue-type game?"
- review_rank - What rank (ascending) is this game in terms of total review volume
- review_rank_pct - What percentile is this game in terms of total review volume
- score_rank - What rank (ascending) is this game in terms of percent positive reviews
- score_rank_pct - Percentile version of previous column
- balance_score1 - (review_rank^2 + score_rank^2)^(1/2)
- balance_score2 - (review_rank_pct^2 + score_rank_pct^2)^(1/2)
- steamdb_score - Using the ranking system that SteamDB uses
- steamdb_score_ebase - Alternate version of the SteamDB score using log base e instead of log base 10
- top150_bs1 - Binary flag if the game is part of the top 150 ranked by balance_score1
- top150_bs2 - Same by balance_score2
- top150_steamdb - You can see where this is going
- top150_steamdb_ebase - Kudos to you for continuing to read these
- t25_tradRL_bs2 - Binary flag for games that have "Traditional Roguelike" in their tag dictionary sorted by their balace_score2 rating
- t25_actionRL_bs2 - same idea
- t25_roguelike_bs2 -
- t25_lite_bs2 -
- t25_deckRL_bs2 -
- t25_rogueVania_bs2 -
- top_any - If any of the previous binary flags have been tripped, this one trips
- pop_leftover - Top 50 games by review volume that weren't included so far in the top_any flag column
- quality_filter - Games that have at least 4% of rogue-based tags, at least 200 reviews, and at least 80% positive review score
- scott_owned - If the game is owned by my (Scott's) personal steam account. I use this to identify which games I don't currently own that I should target next to buy
- selector - If the quality filter is 1, and either the top_any flag is 1 or the pop_leftover flag is 1, then this is a 1 also
- playtime_reviews - Number of reviews scraped to generate playtimes_dist column
- playtimes_dist - Playtime percentiles distribution based on scraped review data. 10th, 25th, 50th, 75th, and 90th percentiles of playtime listed