À propos du projet

Steam Trading Card Helper est un script Tampermonkey destiné à la communauté Steam. Il permet de scanner les prix des cartes Steam, d'estimer le coût des badges, d'aider à l'achat, de gérer les bons de commande à long terme, de synthétiser des badges en lot et de traiter les objets communautaires en double. Le script n'est pas un produit officiel de Valve ou de Steam ; l'utilisateur assume les risques liés à son utilisation. Après l'installation, l'utilisateur peut activer le script sur sa page de badge Steam. L'interface comprend des onglets pour le scan de prix, la commande de cartes, les bons de commande, les tendances des prix, la synthèse des badges, la liste noire, les objets excédentaires, la collection d'objets et les paramètres. Le scan de prix permet de scanner des badges normaux ou brillants, les restantes disponibles, la quantité possédée, le prix des cartes, le coût par set complet et le coût pour un badge maximisé. Les résultats du scan peuvent être enregistrés dans les cartes commandées ou ajouter manuellement un jeu via son AppID pour recalculer. Les données de prix sont d'abord lues depuis la page listing du Steam Market, obtenant ainsi le carnet de commandes actuel et les historiques de transactions récents ; la méthode priceoverview n'est utilisée qu'en secours si les champs requis manquent. Toutes les requêtes priceoverview partagent une limite de 20 par minute. Les méthodes de prix incluent le prix le plus bas en vente, le prix moyen et le prix maximum d'achat. Un prix manquant n'est pas considéré comme zéro ; les incohérences de devise, les réponses corrompues ou les échecs de requête conservent le prix comme manquants. L'estimation des coûts utilise uniquement les données déjà obtenues lors du scan, sans envoyer de requêtes supplémentaires lors du changement de méthode de prix ou de sélection. Les éléments estimés incluent le total de complétion, le total pour un set complet et le total pour un badge maximisé. Le total en haut n'agrège que les éléments sélectionnés ; si un jeu sélectionné a un prix manquant, le total affiche « - ». En mode manuel, l'estimation inclut l'ajustement du prix d'achat et garantit de ne pas être inférieur au prix minimum du marché dans la devise actuelle ; le mode de tarification intelligente utilise l'ajustement sans mur de la stratégie sélectionnée. La logique des quantités d'achat prend en charge le complément d'un set, le complément jusqu'au niveau 5, l'achat d'un set et l'achat de cinq sets. Le bon de commande à long terme peut utiliser comme référence le prix le plus bas en vente, le prix moyen ou le prix maximum d'achat, avec un ajustement du prix d'achat. La tarification intelligente s'applique uniquement aux bons de commande à long terme : elle lit la profondeur complète du carnet d'ordres, identifie les hauts prix isolés en tête et le mur d'ordre le plus récent, puis choisit le prix selon une stratégie conservatrice, équilibrée ou d'achat aggressif. Le prix final ne doit pas être inférieur au prix minimum du marché et, s'il existe un prix de vente minimum, ne doit pas dépasser ce prix moins 0,01. Le scan et le filtrage prennent en charge les cartes normales et brillantes, le nombre maximal de pages de badges et la prise en compte ou non des jeux encore en période de drop. Un set dont le prix dépasse le seuil maximal est ignoré ; la prédiction anticipée réduit les requêtes suivantes lorsque quelques échantillons valides ont nettement dépassé le seuil. Les résultats du scan peuvent être mis en cache dans les cartes commandées. La blacklist automatique enregistre les résultats de vérification de prix complets ou de prédiction anticipée ; la blacklist fixe n'est pas nettoyée par expiration. La couleur de l'estimation maximisée permet de distinguer le volume de transactions récent. La synthèse de badges peut scanner les decks complétés et exclure les jeux de la blacklist, supporte la mise à niveau progressive ou la mise à niveau directe au maximum, permet également de saisir manuellement les occurrences pour chaque élément ou de définir tous à 1, au maximum ou à zéro. La soumission exige une confirmation. La fonctionnalité objets excédentaires réserve les sets nécessaires pour atteindre le niveau de badge cible, puis liste la quantité réellement excédentaire ; les fonds d'écran et émoticônes peuvent avoir un nombre de conservation par défaut et l'inclusion des objets de la boutique de points est optionnelle. La comparaison oppose le montant net après taxes de la vente sur le marché à la valeur nette après taxes de la décomposition en gemmes ; la vente et la décomposition sont toujours soumises séquentiellement après confirmation. La collection d'objets protège les objets spécifiés contre les propositions de vente ou de décomposition. Dans les paramètres de concurrence, les requêtes de type HTML ont la concurrence désactivée par défaut avec un niveau de 4 ; les autres requêtes ont la concurrence activée par défaut avec un niveau de 8. Le niveau de concurrence peut être réglé de 1 à 20. La lecture paginée ainsi que les opérations d'écriture comme commander, annuler, vendre, décomposer et synthétiser ne s'exécutent pas en parallèle. Le prix des sacs de gemmes est lu automatiquement à l'ouverture du plugin ; un clic sur actualiser force une relecture. La personnalisation supporte le glissement des onglets supérieurs pour ajuster l'ordre, la définition d'une couleur d'onglet HEX à six chiffres par onglet, l'ajustement de la hauteur de la zone de journal, et l'export ou l'import de données JSON incluant les paramètres, le cache, l'historique des prix, la collection et l'état de l'interface. En cas d'échec de l'import, les données originales sont restaurées ; la sauvegarde n'inclut pas l'état de connexion Steam. Les avertissements d'utilisation incluent le fait que les prix du marché, la profondeur des ordres et les stocks changent constamment, et que les estimations ne représentent pas les montants de transaction finaux ; en cas d'échecs de requêtes consécutifs ou d'erreur 429, il convient de réduire la concurrence ou de suspendre puis de réessayer. Avant toute commande, annulation, vente, décomposition ou synthèse, il faut vérifier la fenêtre de confirmation ; la décomposition est irréversible et la vente peut nécessiter une confirmation via l'application mobile Steam. Côté développement, npm test lance les tests automatisés, npm run build génère le script utilisateur et npm run check exécute les tests puis reconstruit. Le projet est sous licence MIT.