1. Your Game Keys
Import from Humble Bundle
To import your Humble Bundle keys automatically:
- Log in to Humble Bundle in your browser
- Open browser DevTools (F12 → Application/Storage tab)
- Find "Cookies" → "https://www.humblebundle.com"
- Copy the value of
_simpleauth_sesscookie - Paste it below and click "Authenticate"
Note: Your cookie is stored only in your browser session and is not saved permanently.
Paste your games (one per line: "Game Title, Key" or just "Game Title")
2. Friends' Wishlists
Import from Steam
To automatically fetch your friends' wishlists:
- Sign in with your Steam account using the button below
- Your friends list will appear
- Click "Fetch Wishlist" or "Update Wishlist" to import their games
Manual import (if not using Steam)
- Visit your friend's Steam wishlist page (must be set to "Friends Only" or "Public")
- Open browser console (F12 → Console tab)
- Copy and paste this code, then press Enter:
(async function() {console.log('🔍 Extracting wishlist data...');if (typeof g_rgWishlistData !== 'undefined' && g_rgWishlistData) {try {const games = Object.values(g_rgWishlistData).map((game) => game.name);if (games.length > 0) {copy(games.join(' | '));console.log('✅ Copied', games.length, 'games from internal data!');return;}} catch (e) {console.log('⚠️ Could not access internal data, trying alternative method...');}}console.log('📜 Starting game capture...');console.log('⏳ You have 60 seconds to scroll to the bottom of the wishlist!');console.log('💡 Scroll slowly - games will be captured as they appear');const capturedGames = new Set();const selectors = ['a.Fuz2JeT4RfI-','.wishlistRow .title','.wishlist_row .title','[class*="StoreSaleWidgetTitle"]','.gameListRowItemName'];const captureInterval = setInterval(() => {for (const selector of selectors) {const elements = document.querySelectorAll(selector);if (elements.length > 0) {elements.forEach(el => {const gameName = el.textContent?.trim();if (gameName) {capturedGames.add(gameName);}});break;}}}, 100);let lastCount = 0;const progressInterval = setInterval(() => {if (capturedGames.size !== lastCount) {console.log(` 📊 Captured ${capturedGames.size} games so far...`);lastCount = capturedGames.size;}}, 2000);await new Promise(r => setTimeout(r, 60000));clearInterval(captureInterval);clearInterval(progressInterval);if (capturedGames.size === 0) {console.error('❌ No games found. This wishlist might be empty or private.');alert('❌ No games found. This wishlist might be empty or private.');} else {const gamesList = Array.from(capturedGames);const gamesText = gamesList.join(' | ');const textarea = document.createElement('textarea');textarea.value = gamesText;textarea.style.position = 'fixed';textarea.style.top = '0';textarea.style.left = '0';textarea.style.width = '2em';textarea.style.height = '2em';textarea.style.padding = '0';textarea.style.border = 'none';textarea.style.outline = 'none';textarea.style.boxShadow = 'none';textarea.style.background = 'transparent';document.body.appendChild(textarea);textarea.focus();textarea.select();let copySucceeded = false;try {copySucceeded = document.execCommand('copy');} catch (err) {console.error('Copy failed:', err);}document.body.removeChild(textarea);console.log(`✅ Copied ${gamesList.length} unique games to clipboard!`);if (copySucceeded) {alert(`✅ Success! Copied ${gamesList.length} games to clipboard.\n\nNow paste them into the wishlist textarea with format:\nFriendName: [paste here]\n\nNote: Games are separated by pipes (|)`);} else {prompt(`⚠️ Auto-copy failed. Please manually copy this text (Ctrl+C or Cmd+C):`, gamesText);}}})(); - Scroll slowly to the bottom (you have 60 seconds). Games are captured as you scroll!
- After 60 seconds, game names will be copied automatically to your clipboard
- Paste below with friend's name in format:
FriendName: Game1 | Game2 | Game3