GOG Owned Games Highlighter for GameSieve

Highlights games on GameSieve that are owned on GOG

نووسەر
greasyrabbit
Daily installs
0
Total installs
1
Ratings
0 0 0
وەشان
1.1
Created
2025-06-07
Updated
2025-06-07
Size
7.46 KB
مۆڵەت
MIT
Applies to

GOG Owned Games Highlighter for GameSieve

A userscript that highlights games you own on GOG while browsing GameSieve. Makes it easy to identify which games in the GameSieve list are already part of your GOG library.

Homepage: https://github.com/shakeyourbunny/goggamesievehighlighter/

Screenshot of GameSieve with highlighted GOG games

Features

  • Highlights games you own on GOG with a green background on GameSieve
  • Automatically fetches your owned games list from GOG (requires you to be logged into GOG)
  • Implements intelligent caching to minimize API calls and improve performance
  • Works across all pages and navigation on GameSieve
  • Robust error handling for various scenarios (not logged in, API failures, etc.)

Requirements

  • A modern web browser (Chrome, Firefox, Edge, etc.)
  • A userscript manager extension (Tampermonkey, Greasemonkey, Violentmonkey)
  • An active GOG.com account (must be logged in for the script to work)

Installation

  1. Make sure you have a userscript manager installed in your browser
  2. Click here to install the script (link to your .user.js file on GitHub)
  3. Confirm the installation when prompted by your userscript manager
  4. Make sure you're logged into GOG.com in your browser
  5. Visit GameSieve and start browsing

How It Works

The script performs several operations to identify and highlight the games you own:

  1. Fetches the list of games you own from GOG's API
  2. Converts GOG's product IDs to game slugs using the GOG Database API
  3. Compares the games on the current GameSieve page with your owned games
  4. Applies a green background to games you already own

The script uses caching to improve performance:

  • Owned games list is cached for 1 hour
  • Product ID to slug mappings are cached for 2 weeks + random time (to avoid all mappings expiring at once)

Configuration

You can modify these variables at the top of the script to customize its behavior:

// Configuration
const DEBUG = false; // Set to true to enable detailed console logging
const OWNED_GAMES_TTL = 60 * 60 * 1000; // 1 hour in milliseconds
const MAPPING_TTL = (14 * 24 * 60 * 60 * 1000) + (Math.random() * 100 * 60 * 60 * 1000); // 2 weeks + random 100 hours
const HIGHLIGHT_COLOR = '#bc9aca"; // GOG color
  • DEBUG: When set to true, enables detailed logging of the script's operations in the browser console
  • OWNED_GAMES_TTL: How long to cache the list of owned games (in milliseconds)
  • MAPPING_TTL: How long to cache the product ID to slug mappings (in milliseconds)
  • HIGHLIGHT_COLOR: The background color to use for highlighting owned games

Known Issues

  • If you're not logged into GOG.com, the script will show an error in the console
  • Some games might not be highlighted if their URLs on GameSieve don't match the standard GOG URL pattern
  • In rare cases, the GOG Database API might not have mappings for newer games

Privacy Notice

This script only accesses your owned games data from GOG.com to determine which games to highlight. It does not collect, store, or transmit any personal information. All data is stored locally in your browser and is not shared with any third parties.

License

MIT license

Copyright (c) 2025 shakeyourbunny

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Contributing

Contributions are welcome! Feel free to open an issue or submit a pull request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Acknowledgments

  • GOG.com for the games ownership API
  • GameSieve for creating a great game discovery service