Git Product home page Git Product logo

playnite.playnext's Introduction

Playnite Play Next Addon

What Is It?

Play Next addon for Playnite (similar to Steam PlayNext).

Since we don't have big data like Steam, the recommendations are based on your activity (playtime, recent play order) as well as general properties (like critic score, community score or release year).

Main NextPlay view screenshot Main NextPlay view screenshot The recommendation score algorithm is highly customizable to your personal taste.

Settings

Main NextPlay view screenshot

Total Play Next score is calculated by weighting and adding up following attributes:

Attribute Value
Genre Attribute score
Feature Attribute score
Developer Attribute score
Publisher Attribute score
Tag Attribute score
Critic Score Itself
Community Score Itself
Release Year How close to preferred year it is. It can either be the current year (ie newer games are preferred), or a specific one
Game Length How close to preferred length it is. The length can be specified in hours. Requires HowLongToBeat addon ⚠️

Attribute score depends on your activity:

Activity Comment
Total Playtime All playtime
Recent Playtime Playtime within recent days, requires GameActivity addon ⚠️
Recent Order Order of games played in recent days

Algorithm

Algorithm works in two steps:

  1. It calculates scores for attributes (genre, feature, developer, publisher, tag);
  2. It uses attribute score with additional game properties to calculate the final score.

Attribute Score Calculation

Total Playtime

We iterate through all games that have any playtime. The attributes of the most played game get the maximum score while other games' attributes get proportionally smaller scores (depending on playtime).

Recent Playtime

Same as Total Playtime, except we use recent playtime withing configured recent days to get the attribute scores.

Recent Order

In a way it's a poor man's Recent Playtime. It just orders games played within recent days and assigns the highest score to most recent game's attributes, giving proportionally smaller scores to older game's attributes, ending with zero for the last one.

Game Score Calculation

Attribute Scores

Adds up score to the game score using the different attribute scores calculated by playtime / recent order.

Critic Score

Just adds the game's critic score to the score. Zero if game has no critic score.

Community Score

Just adds the game's community score to the score. Zero if game has no community score.

Release Year

Takes release years for all games and then assigns the scores depending on the difference from the preferred year. If the game's release year matches, the game gets maximum score. The other release years earn proportionally less score, depending on the difference from preferred release year. The biggest difference will earn zero score.

For example if our prefered year is 2000 and our biggest difference game is from 2010, then we get these scores:

  • Year 1990 - 0;
  • Year 1995 - 50;
  • Year 2000 - 100;
  • Year 2005 - 50;
  • Year 2010 - 0;

Game Length

Takes the game lengths for all games and assings the scores depending on the difference from the preferred length. For example if our preferred length is 20 hours and the biggest difference is a game of length 40 hours, then we get these scores:

  • Hours 0 - 0;
  • Hours 10 - 50;
  • Hours 20 - 100;
  • Hours 30 - 50;
  • Hours 40 - 0;

Weighting

Weighting sets a maximum amount of score a specific part of algorigthm can contribute to the end result. That means in attribute score calculation weights set how much specific types influence the attribute scores. And in game score calculation we specify how much those attribute types influence the final score for games that will get recommended.

This lets us fine tune algorithm to get the games we prefer. For example we can aim for games with the same genre we played a lot and games with high critic scores.

Installation

You can install it either from Playnite's addon browser, or from the web addon browser.

Other Addons Integration

StartPage

Main NextPlay view screenshot

PlayNext has a custom view for StartPage. It's designed to look similar to StartPage game shelves.

GameActivity

In order to get attribute score calculation based on Recent Playtime to work you will need to have GameActivity addon installed.

HowLongToBeat

In order to calculate the score depending on the game length you will need to have HowLongToBeat addon installed.

Localization

You can help translate the extension to your language on the Crowdin page.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.