3 min readfrom Data Science

Steam Recommender using similarity! pt 2 (Student Project)

Our take

Introducing the next evolution of the Steam Game Recommender! Building on last year's success, this updated version enhances functionality by providing users with personalized recommendations based on unique game aspects rather than broad categories. By analyzing thousands of reviews and distilling them into specific vectors and niche tags, the system reveals the reasons behind each recommendation. Whether you're hunting for your next favorite game or exploring underrated titles, this recommender transforms the search into an engaging experience.
Steam Recommender using similarity! pt 2 (Student Project)

Our Take: The student developer’s project, a sequel to a prior Steam recommender, represents a thoughtful evolution in personal recommendation systems. While many platforms rely on broad genre tags or collaborative filtering—which can trap users in feedback loops of similar popular titles—this approach seeks to decode the *why* behind a user’s taste. By analyzing thousands of game reviews and extracting micro-level descriptors like “city vibes,” “jazz fusion,” or “whimsical theme,” the system attempts to build a semantic map of a game’s essence. This moves beyond the superficial “action” or “RPG” labels that often dominate digital storefronts. The developer’s own examples—appreciating *Persona 4* for its rural town atmosphere and soundtrack, *Spore* for its creative mechanics, or *Balatro* for its card synergies—highlight a desire for recommendation engines that understand nuance. Such projects echo similar efforts in the data science community, like the earlier **Steam Similarity Recommender [P]** and the **“Steam Similarity Recommender Find your next favorite game and learn WHY (student project)[P]”**, which also prioritize explainable AI in entertainment discovery.

The technical pipeline is ambitious for a passion project: scraping 2,000 reviews per game across 80,000 titles, filtering for qualitative descriptors, and using a large language model to synthesize these into structured vectors and niche tags. The subsequent grouping of non-canonical terms—like mapping “speedy action combat” to “fast combat”—shows an awareness that user language is messy and contextual. Storing this in PostgreSQL and Chroma DB, then serving it via a React frontend in a containerized cloud environment, demonstrates a full-stack proficiency that bridges data engineering and user experience. The result is not just a list of similar games, but a tool that surfaces the specific, often overlooked, attributes that make a game resonate. This has profound implications for discovery in oversaturated markets. It suggests that recommendation systems can and should be more transparent, helping users understand their own preferences rather than just feeding them more of what they’ve already consumed.

For readers overwhelmed by choice—whether in gaming, music, or film—this project is a case study in human-centered AI. It respects the user’s intelligence by providing reasoning, not just results. The “advance mode” with sliders and data terms further invites experimentation, turning recommendation into an interactive dialogue rather than a black box. This approach could mitigate the “filter bubble” effect common in algorithmic curation, where users are repeatedly shown the same bestsellers. By prioritizing micro-tags and vibe-based vectors, the system surfaces hidden gems and underrated titles that align with a user’s specific affinities, potentially revitalizing interest in older or niche games. It also reframes the developer’s role from mere coder to curator and translator of taste.

Looking ahead, the real test will be scalability and adaptability. Can such a labor-intensive pipeline be maintained as game libraries and review volumes grow? Will the LLM-generated tags remain accurate across different languages and cultural contexts? And how might this model be applied to other recommendation domains, like book or movie suggestions, where subjective descriptors are equally valuable? The project’s open-source nature and invitation for criticism are commendable, fostering community-driven refinement. Ultimately, it challenges the industry to build systems that don’t just predict what we might like, but help us articulate *why* we like it—a small but significant step toward more meaningful digital discovery.

Steam Recommender using similarity! pt 2 (Student Project)

I Just made a sequel to my Steam Game recommender website!

Last year I made a post about my steam reccomender The last one was great and served its purpose of showing many people new games, But this new version is much more functional!

I love making recommendation systems that tell the user WHY they got the recommendation.

During a steam sale event, I always find myself trying to look for new video games to play. If I wanted to find a new game I would try to whittle it down by using steam tags, but the steam tag system is very broad "action". could apply to many many games.

That got me thinking, what aspects do I like about my favorite games?
Well I like Persona 4 because of the city vibes and jazz fusion,
I like Spore because of the unique character creation and whimsical theme.
and I like Balatro for its unique deck building synergies.

What if I could capture unique tags that identify a game that aren't just "action" and put them into vectors to show the (focus) of a game

For example I could break persona 4 into something like

Gameplay Focus vector:
- Day cycle 20%
- Dungeon crawling 20%
- Social sim 20%

Tags:
- Music: jazz fusion
- Vibe: Small rural town

I achieved this by pulling 2k reviews for 80k steam games, running them through a 4 stage pipeline that filters out the reviews to find reviews describing a video game's vibes or structure, then asking a llm to generate these reviews into vectors, niche anchor tags and micro tags using non canonical names. all to "capture" niche tags that could never be found normally.

Then I used a 6 stage pipeline to group these non canonical names together (fast combat = speedy action combat)

From that I stored it all in PostgreSQL + Chroma db, made an app using React. and Shipped it all within a docker container inside a digital ocean droplet!

The result is a cool little steam game recommender that I can use to not just find similar games, but find games that share my favorite aspect of a game I like. A system that explains to me why I got the recommendations I got.

I find that this system makes searching for games more "fun" now I can see why I like balatro. I like it because of the card synergies not so much for its rogue-like nature.

I also find that this helps find new underrated games, and beats the trap that Collaborative Filtering algorithms that get into where it "feels" like you get recommended the same things.

find your next favorite game! : https://nextsteamgame.com/
pull a PR!: https://github.com/BakedSoups/NextSteamGame
( I actually made some git issues myself for problems I can't fix)
if anyone has any criticism I would love to hear it! this is probably my favorite passion project.

Hope this website helps people find new games! Also I have a advance mode for people that don't mind messing with sliders and weird data terms.

submitted by /u/Expensive-Ad8916
[link] [comments]

Read on the original site

Open the publisher's page for the full experience

View original article

Related Articles