Skip to content

Crimsab/ggdeals-steam-companion

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

GG.deals Steam Companion

A userscript that enhances Steam store pages by displaying price comparisons from GG.deals directly on the game page.

GitHub Greasy Fork

Disclaimer: This is an unofficial userscript and is not affiliated with, endorsed by, or connected to GG.deals or Steam in any way. This script simply provides a convenient interface to publicly available data from GG.deals.

GG.deals Steam Companion

Installation

  1. First, install a userscript manager:

  2. Click this link to install the script: ➡️ INSTALL GG.DEALS STEAM COMPANION ⬅️

    If the automatic installation doesn't work:

    • Open your userscript manager's dashboard
    • Create a new script
    • Copy and paste the contents from this link
    • Save the script

Examples

Full View

Full View Screenshot

Compact View

Compact View Screenshot

Bundle/Package View

Bundle View Screenshot

Features

  • Shows real-time price comparisons from official stores and keyshops
  • Displays historical low prices with dates
  • Clean and modern UI that matches Steam's design
  • Toggle between official stores and keyshop prices
  • Remembers your display preferences
  • Automatic price highlighting for best deals
  • Responsive design that works on all screen sizes
  • Cache system with 24-hour duration and manual refresh option

Usage

  1. Visit any Game page or DLC page on the Steam store
  2. The script will automatically add a price comparison section above the purchase options
  3. Use the toggles to show/hide official stores and keyshop prices
  4. Click "View Offers" to see all available deals on GG.deals

Changelog

1.6.4

  • Fixed Steam Sub ID Support: Steam sub IDs are no longer supported by GG.deals API - now automatically extracts app ID from Steam page URL
  • Enhanced Error Logging: Added detailed error reporting with URLs, status codes, and timestamps for better debugging
  • Improved Settings Icon: Replaced buggy gear icon with clean, modern settings panel icon
  • Smart Cloudflare Handling: Better detection and user feedback when Cloudflare blocks requests
  • API-First Approach: Prioritizes API usage for better reliability and performance

1.6.3

  • Steam Sub ID Fix: Updated API endpoints to use app IDs for both apps and subs (GG.deals API change)
  • Web Scraping Priority: Updated URL formats to try app format first for better compatibility

1.6.2

  • Cloudflare Protection Handling: Added smart fallback mechanism when Cloudflare blocks web scraping
  • Enhanced Error Detection: Specific detection for 403 errors with helpful user notifications
  • Graceful Degradation: Containers remain visible with helpful messages instead of disappearing
  • Updated Known Limitations: Documented Cloudflare protection and API recommendations

1.6.1

  • Enhanced Error Logging: Added detailed error reporting with URLs, status codes, and timestamps
  • Better Debugging: Comprehensive error objects for easier troubleshooting

1.6

  • Added official API support (requires your API key)
  • Option to disable/enable web scraping
  • Option to disable/enable API
  • Complete customization of the colors
  • Option to choose the preferred region and the currency (API)
  • If web scraping is off, it doesn't show the prices for the bundles (API gives null data in response)

1.5.1

  • Fixed tooltip hover on historical prices

1.5

  • Fixed button going over container, fixed uneven icon, moved updated text as tooltip

1.4

  • Added bundle displays, fixed UI errors, forced correct URLs, and other small things

1.3

  • Various fixes
  • Integrated suggestions from @enchained for /issues/1, 2 & 3 (better title search, compact view and support for package and bundles)

1.2

  • LICENSE and greasyfork upload

1.1

  • Integration of a cache system for the prices, with manual refresh

1.0

  • Initial release

Known Limitations

  • Bundles: Always use web scraping, never API (GG.deals API doesn't support Steam bundles)
  • Steam Sub IDs: No longer supported by GG.deals API - script automatically extracts app IDs from Steam pages (I don't know why they removed it)
  • Cloudflare Protection: GG.deals website uses Cloudflare which may block automated requests, like the Steam Resolvers (HTTP 403 errors)
  • API vs Web Scraping: API is recommended for best reliability and performance

Troubleshooting

Common Issues

"No data found for this game"

  • This usually means the game isn't in GG.deals database
  • For Steam subs, the script now automatically extracts the correct app ID
  • Try refreshing the page or using the manual refresh button

HTTP 403 Errors

  • Cloudflare is blocking the request
  • Enable API usage with a valid API key for best results
  • Web scraping may be temporarily unavailable

Prices not updating

  • Check if API is enabled and API key is valid
  • Try manual refresh button
  • Check browser console for detailed error messages

Debug Information

The script provides detailed error logging in the browser console (F12 → Console) including:

  • Request URLs and status codes
  • Steam IDs being used
  • API responses and error details
  • Timestamps for all operations

Permissions

The script requires the following permissions:

  • Access to store.steampowered.com
  • Access to gg.deals
  • XMLHttpRequest to fetch price data
  • Storage to save your display preferences

Contributing

Feel free to submit issues and enhancement requests!

Credits

Price data is provided by GG.deals. All trademarks and copyrights belong to their respective owners.

About

A ggdeals companion for Steam. Check the lowest prices in seconds.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published