Вышло Ultimate Steam Enhancer 2.0 — расширение, добавляющее в Steam ссылки на русификаторы, русские магазины-дискаунтеры и прочие полезные для России функции
Приветствуем!
Сегодня вышел Ultimate Steam Enhancer 2.0 — масштабное обновление комплексного скрипта от @0wn3df1x.
Этот проект — результат кропотливой работы, направленной на то, чтобы сделать взаимодействие с платформой Steam ещё более удобным и информативным, особенно для русскоязычных игроков. В новой версии скрипт стал полностью модульным, обзавелся удобным меню настроек и получил множество как совершенно новых функций, так и кардинальных улучшений для уже существующих.
Чтобы вам было проще сориентироваться, мы подготовили два отдельных блока с информацией:
Для тех, кто уже знаком с ранними версиями скрипта, мы собрали подробный список всех ключевых изменений:
Версия 2.0.0
Юбилейное обновление знаменует собой новую эру для Ultimate Steam Enhancer.
Глобальное улучшение: Меню настроек U.S.E.
Теперь все опции доступны через удобное графическое меню.
- Доступ: Меню настроек U.S.E. находится в выпадающем меню вашего профиля Steam (в правом верхнем углу).
- Управление модулями: Легко включайте и отключайте отдельные модули скрипта.
- Дополнительные опции: Настраивайте поведение конкретных функций, таких как автоматическое раскрытие блоков или загрузка данных.
![[Изображение: Расположение меню
настроек U.S.E. в профиле Steam]](https://i.imgur.com/QUdKoCH.png)
![[Изображение:
Пример панели настроек Ultimate Steam Enhancer]](https://i.imgur.com/2HTlfLu.png)
Это изменение делает скрипт значительно более дружелюбным для пользователей и упрощает его персонализацию.
Новые функции
Что делает: Добавляет кнопку "Анализатор цен" на страницу игры. Этот мощный инструмент позволяет детально анализировать региональные цены игры в Steam двумя способами: в рублях (по умолчанию) и в долларах США (переключаемый режим).
После нажатия кнопки "Сбор данных" в специальном окне, модуль выполняет следующее:
Режим Рублей:
- Определяет AppID текущей игры и запрашивает цены через официальное API Steam для 41 региона.
- В качестве базы для расчета рекомендованной рублевой цены используется цена в США (USD).
- Цены из всех регионов, включая Россию, конвертируются в рубли по актуальным обменным курсам для прямого сопоставления.
- Производится ключевое сравнение: фактическая цена в российском Steam сопоставляется с официально рекомендованной Valve ценой для России. Отклонения подсвечиваются.
- Отображается рейтинг российской цены среди всех проанализированных стран, позволяя увидеть её место от самой дешёвой к самой дорогой в рублевом эквиваленте.
Режим Долларов США:
- Активируется кнопкой "USD" в окне анализатора. Интерфейс и названия валют переключаются на английский язык.
- Цены всех регионов также запрашиваются через API Steam и конвертируются в доллары США.
- Цена в США используется как базовый ориентир (100%) для сравнения с ценами других регионов.
- Отображается процентное отклонение цен других регионов от цены в США.
- Представляется общий рейтинг всех региональных цен в долларовом эквиваленте.
- Этот режим полезен для оценки ценовой политики при общении с разработчиками/издателями.
Примечание: Если игра в США бесплатна или цена для нее не найдена, возможности анализа в обоих режимах могут быть ограничены.
⚠️ Важная информация:
Каждый полный сбор данных подразумевает отправку ~41 запроса к серверам Steam. Пожалуйста, используйте эту функцию обдуманно. Частое использование может привести к временному ограничению доступа к API Steam.
![[Изображение: Пример работы
анализатора региональных цен]](https://i.imgur.com/OzebvaA.png)
Что делает: Заменяет старый модуль "Цены (VGT)". Добавляет кнопку "%" рядом с кнопкой "В желаемое" на странице игры. Нажатие открывает модальное окно с ценами на эту игру из различных популярных цифровых магазинов.
Возможности окна агрегатора:
- Отображение предложений из множества магазинов, включая: SteamBuy, Playo, SteamPay, Gabestore, GamersBase, Igromagaz, GamesForFarm, Gamazavr, GameRay, KupiKod, KeysForGamers, Zaka-zaka, Buka, GGSEL, Plati.Market и текущей страницы Steam.
- Сортировка по цене, проценту скидки, сумме скидки, названию.
- Фильтрация по диапазону цен, проценту и сумме скидки, наличию скидки, названию (слова через ";"), магазинам.
- Исключение товаров по ключевым словам.
- Сохранение состояния фильтров, сортировки и исключений между сессиями.
- Экспорт и импорт списка исключений для удобного переноса и резервного копирования.
Нажмите кнопку импорта (→) и вставьте в появившееся окно следующий текст:
онлайн,оффлайн,dlc,аккаунт,ps4,xbox,digi361,ibloodrue,mangarded,siparisapp,multimarket,trustytop,cyber steam shop,boostgame,cloud-gaming.store,promarket88,offline,-seyter-,paul fox,sirdjinn,аренда,4ilgames,keks12,damhubmarket,nt-store,ps5,@mediasoft,dofamine game,hactier,alz0n,top-games,solo29,nerd shop,1gamestore,tobeclosertoyou
Использует различные методы для получения цен (API, парсинг HTML) для предоставления наиболее полной картины.
![[Изображение:
Пример интерфейса агрегатора цен]](https://i.imgur.com/9cZk873.png)
Что делает: Добавляет кнопку "GIFT" в блок с кнопкой "В желаемое" на странице игры.
Нажатие открывает окно, где можно:
- Выбрать регион друга из списка.
- Нажать "Узнать", чтобы запросить цену игры в этом регионе.
- Увидеть цену друга (сконвертированную в вашу валюту), процент разницы и вердикт (Можно подарить / Нельзя подарить), основанный на правилах Steam о разнице цен (обычно ±10-15%).
Использует те же механизмы получения цен и курсов валют, что и помощник для списка желаемого.
![[Изображение: Пример работы помощника
подарков на странице игры]](https://i.imgur.com/jDdf4pR.png)
Что делает: Добавляет блок "Рулетка Stelicas" на страницу вашей активности Steam (steamcommunity.com/my/home). Позволяет загрузить CSV-файл, сгенерированный приложением Stelicas, применить к нему разнообразные фильтры и случайным образом выбрать игру из вашей коллекции.
Возможности:
- Загрузка CSV-данных из Stelicas.
- Система фильтрации: по категориям коллекций Stelicas, дате выхода, пользовательским тегам, поддержке русского языка (интерфейс, субтитры, озвучка), а также по диапазонам количества отзывов и общего рейтинга игры.
- Анимированная рулетка для выбора случайной игры.
- Возможность включить приоритет по отзывам и рейтингу.
- Переключение в режим просмотра всей отфильтрованной подборки игр.
- Отображение подробной информации о выбранной игре.
- Прямые ссылки на страницу игры в Steam и для её запуска.
Подробная инструкция доступна по нажатию на значок вопроса ? в окне самой рулетки.
![[Изображение: Пример модального окна
Рулетки Stelicas с фильтрами]](https://i.imgur.com/KDfW10m.png)
Что делает: Добавляет значок лупы на страницу списка желаемого. Позволяет определить, какие игры из вашего вишлиста можно подарить друзьям в других регионах.
Основные функции:
- Загружает игры из отображаемого списка желаемого и выводит их в виде информативных карточек с возможностью сортировки.
-
Активирует режим помощника
подарков:
- Вы выбираете регион вашего друга.
- Скрипт запрашивает цены на игры для выбранного региона.
- Цены друга конвертируются в вашу валюту.
- Отображается разница в цене с цветовой индикацией (зелёный - можно дарить, красный - нельзя).
- Доступен фильтр "Можно подарить".
Это помогает легко найти подходящие и экономически целесообразные подарки для друзей за границей.
![[Изображение: Пример работы помощника
подарков для списка желаемого]](https://i.imgur.com/WPbhyPI.png)
Улучшения существующих функций
Модуль информации об обзорах на странице игры был расширен:
-
Новинка: Глобальный монитор
обзоров!
- При щелчке по строке "Тотальные" открывается окно "Глобальный монитор обзоров".
- Этот инструмент позволяет собрать (по кнопке "Собрать") и визуализировать статистику обзоров по 27 языкам Steam.
- Отображается таблица с рейтингом языков по количеству обзоров и доле в общей массе.
- Интерактивная круговая диаграмма для наглядного представления распределения обзоров по языкам.
![[Изображение: Глобальный монитор
обзоров с таблицей и диаграммой]](https://i.imgur.com/2azVyAW.png)
⚠️ Важное замечание о зависимостях:
Отключение этого модуля через новое меню настроек приведет к автоматическому отключению или нарушению корректной работы модулей «Время прохождения (HLTB)», «Русификаторы (ZOG)» и «Время друзей / Глобальные достижения», так как они критически зависят от его функционала по отображению элементов на странице игры.
Модуль отслеживания был полностью переработан, получил новое имя "Наблюдатель" и значительно расширил свои возможности. Теперь он следит не только за списком желаемого, но и за вашей библиотекой, а также предлагает гибкие настройки для ускорения работы.
-
Комплексное отслеживание:
"Наблюдатель" теперь отслеживает
изменения как для Списка
желаемого, так и для
Библиотеки:
- Для желаемого: изменение даты выхода, выход из раннего доступа, появление/изменение русского языка.
- Для библиотеки: выход игры из раннего доступа, а также появление или изменение русской локализации (с точным указанием, что было добавлено или убрано: интерфейс, озвучка, субтитры).
- Гибкие настройки
сканирования: В панели уведомлений
появился значок настроек,
который открывает меню с новыми опциями:
- Возможность включать или отключать проверку для желаемого и библиотеки по отдельности.
- Оптимизация проверки библиотеки: Добавлены опции для значительного ускорения повторных сканирований. Можно отключить перепроверку игр, у которых уже есть любая русская локализация, или, для более детального контроля, перепроверять только те игры, у которых нет полной локализации.
-
Улучшенный интерфейс:
- Раздельные индикаторы статуса (Ж/Б), показывающие, как давно обновлялись данные для Желаемого и Библиотеки.
- Более информативные уведомления, четко разделенные по источнику (Желаемое/Библиотека) и типу изменения.
-
Управление хранилищем:
Новая кнопка "Хранилище"
позволяет вручную очистить кэш
сохраненных данных для списка желаемого
или библиотеки. Это полезно, если вы
хотите принудительно запустить полное
повторное сканирование.
![[Изображение: Пример панели
уведомлений Наблюдателя]](https://i.imgur.com/BpuDq6U.png)
![[Изображение: Пример окна управления
хранилищем Наблюдателя]](https://i.imgur.com/nI6Uoo0.png)
Модуль скрытия новостей в новостном центре получил следующие улучшения:
- "Мягкое" скрытие: При установке галочки новость сначала становится полупрозрачной, отмечаясь для последующего подтверждения скрытия.
- Панель
управления:
- Кнопка "Скрыть выбранные (X)" с счетчиком.
- Индикатор "В хранилище: X" показывает общее количество скрытых новостей.
- Кнопка "Отменить" для отмены последнего действия по скрытию (активна 6 секунд).
- Переключатель "Показать скрытое" / "Спрятать скрытое" для временного отображения скрытых новостей в затемненном виде.
- Новинка: Панель "Хранилище
скрытых новостей"!
- Открывается кнопкой "Хранилище" из панели управления.
- Отображает список всех постоянно скрытых новостей (название игры, заголовок, AppID).
- Позволяет выборочно "Вернуть" новость из хранилища.
- Кнопка "Очистить хранилище" для полного удаления всех скрытых новостей (требует подтверждения).
![[Изображение: Пример интерфейса
фильтра новостей]](https://i.imgur.com/iYTtyWk.png)
![[Изображение: Пример интерфейса
хранилища новостей]](https://i.imgur.com/T5pUb9a.png)
Модуль поиска русификаторов был кардинально переработан и больше не использует устаревающую базу данных.
- Поиск в реальном времени: Вместо статической базы данных теперь скрипт выполняет поиск напрямую на сайте ZoneOfGames.ru в момент вашего запроса, гарантируя максимальную актуальность информации.
- Выбор из совпадений: Если найдено несколько похожих игр, скрипт предложит вам список для выбора. Это исключает ошибки при поиске игр с похожими названиями (например, 'Half-Life' и 'Half-Life 2') и обеспечивает более высокую точность.
![[Изображение: Пример отображения
информации о русификаторах с ZOG]](https://i.imgur.com/XgAVWAp.png)
Модуль, отображающий информацию об играх в ленте активности, был улучшен для более точного отображения изображений.
-
Точные изображения: Вместо
использования стандартного имени файла
header.jpg
, скрипт теперь запрашивает у API Steam точное имя файла обложки игры. Это решает проблему, когда для некоторых игр отображалась неверная или отсутствующая картинка. - Повышенная надежность: Новый метод гарантирует, что во всплывающей подсказке будет показано именно то изображение, которое разработчик установил в качестве основного для страницы в магазине.
Технические изменения
-
Новые библиотеки:
- Добавлена
библиотека
Chart.js
для построения диаграмм в "Глобальном мониторе обзоров". - Добавлен плагин
chartjs-plugin-datalabels
для отображения меток данных на диаграммах.
- Добавлена
библиотека
- Обновлены директивы
@connect
:- Добавлено множество новых доменов для работы "Агрегатора цен (%)", "Анализатора цен" и "Помощников подарков".
- Удален домен
vgtimes.ru
в связи с заменой соответствующего модуля.
- Общая оптимизация кода и улучшение стабильности работы существующих модулей.
Удаленные функции
- Агрегатор цен (VGTimes): Модуль был полностью удален и заменен новым, более функциональным модулем "Агрегатор цен (%)".
- Отслеживание вишлиста (wishlistTracker): Старый модуль был заменен на новый, более комплексный модуль "Наблюдатель (Желаемое/Библиотека)".
Для тех, кто видит Ultimate Steam Enhancer впервые, мы подготовили полное описание всех его возможностей:
Ultimate Steam Enhancer
Ultimate Steam Enhancer — это мощный пользовательский скрипт для платформы Steam, расширяющий стандартные возможности магазина и сообщества. Он объединяет в себе функционал множества инструментов, предоставляя пользователю расширенный контроль и доступ к дополнительной информации об играх, ценах, переводах, обзорах, активности друзей и многом другом.
Функции на странице игры
Что делает:
- Отображает значки-индикаторы наличия русского языка (интерфейс, озвучка, субтитры) прямо на странице игры.
- Добавляет под
стандартными обзорами блок с
расширенной статистикой (загружается по
щелчку или автоматически, если включена
опция):
- Тотальные: Все обзоры Steam (включая активации ключами).
- Безкитайские: Обзоры за исключением написанных на китайском языке.
- Русские: Только обзоры на русском языке.
- Модальные окна:
- При щелчке по строке "Русские" открывается окно с актуальными русскоязычными обзорами для этой игры.
- При щелчке по строке "Тотальные" открывается окно "Глобальный монитор обзоров". Этот инструмент позволяет собрать (по кнопке "Собрать") и визуализировать статистику обзоров по 27 языкам Steam. Он показывает таблицу с рейтингом языков по количеству обзоров и доле в общей массе, а также интерактивную круговую диаграмму для наглядного представления.
Важное замечание о зависимостях:
Отключение этого модуля приведет к автоматическому отключению или нарушению корректной работы модулей «Время прохождения (HLTB)», «Русификаторы (ZOG)» и «Время друзей / Глобальные достижения», так как они критически зависят от его функционала по отображению элементов на странице игры.
Что
делает:
Добавляет компактный
блок с информацией о времени прохождения
игры, полученной с популярного сайта
HowLongToBeat.com.
Показывает среднее время для разных стилей:
- Только основной сюжет.
- Сюжет + дополнительные задания.
- Полное прохождение (100%).
- Усредненное время для всех стилей.
Рядом со временем
указывается количество игроков, на чьих
данных основана статистика.
Поиск
игры в базе HLTB идет по названию, при
неоднозначности предлагается выбор из
похожих вариантов.
![[Пример отображения времени
прохождения с HowLongToBeat]](https://i.imgur.com/6tgxA2s.png)
Что делает:
Добавляет
блок с информацией о наличии
русификаторов для игры на сайте ZoneOfGames.ru.
В блоке отображается:
- Название игры (ведет на страницу игры в базе ZOG).
- Список доступных русификаторов. Каждая запись является ссылкой на соответствующий файл/страницу на ZOG.
- Если переводы не найдены, выводится соответствующее сообщение.
Поиск происходит в реальном времени. Скрипт автоматически определяет название игры, выполняет поиск по алфавитному указателю на ZoneOfGames.ru и предлагает вам выбрать наиболее точное совпадение.
![[Пример отображения информации о
русификаторах с ZOG]](https://i.imgur.com/XgAVWAp.png)
Что
делает:
Отображает блок с
информацией о времени, которое ваши
друзья провели в этой игре, а также о
статистике глобальных достижений Steam.
Время друзей:
- Максимальное время прохождения (И ник друга со ссылкой).
- Среднее время прохождения (и указание количества друзей, по которым высчитывалось среднее).
- Минимальное время прохождения.
Глобальные достижения:
- Процент "платины" (процент получивших самое редкое достижение).
- Средний прогресс выполнения всех достижений.
Данные загружаются при раскрытии блока.
![[Пример отображения времени
друзей и статистики достижений]](https://i.imgur.com/9TaMCbZ.png)
Что
делает:
Показывает небольшую
плашку над изображением игры с
информацией о статусе раннего доступа
(Early Access).
- Если
игра еще в раннем доступе:
Отображается, сколько времени игра уже
находится в нем
(например, "В раннем доступе уже 1 год и 3 месяца").
-
Если игра вышла из раннего
доступа: Отображается, сколько
времени игра провела в нем до релиза
(например, "Вышла спустя 2 года раннего доступа").
Расчет времени
динамический. Использует даты со
страницы Steam.
А также может
подтягивать дату старта раннего доступа
из собственной базы для вышедших игр,
если Steam ее не показывает.
Что делает:
Добавляет
кнопку "Анализатор цен" на страницу игры.
Этот инструмент позволяет анализировать
региональные цены двумя способами:
в рублях (по умолчанию) и в долларах
США (переключаемый режим).
После нажатия кнопки "Сбор данных" в специальном окне, модуль выполняет следующее в зависимости от выбранного режима:
- Режим Рублей (по
умолчанию):
- Определяет AppID текущей игры и запрашивает цены через официальное API Steam (IStoreBrowseService/GetItems) для множества регионов.
- В качестве базы для расчета рекомендованной рублевой цены используется цена в США (USD).
- Цены из всех регионов, включая Россию, конвертируются в рубли по актуальным обменным курсам для прямого сопоставления.
- Производится ключевое сравнение: фактическая цена в российском Steam сопоставляется с официально рекомендованной Valve ценой для России. Отклонения подсвечиваются.
- Отображается рейтинг российской цены среди всех проанализированных стран, позволяя увидеть её место от самой дешёвой к самой дорогой в рублевом эквиваленте.
- Режим Долларов
США (переключаемый):
- Активируется кнопкой "USD" в окне анализатора. Интерфейс и названия валют переключаются на английский язык.
- Цены всех регионов также запрашиваются через API Steam и конвертируются в доллары США.
- Цена в США используется как базовый ориентир (100%) для сравнения с ценами других регионов.
- Отображается процентное отклонение цен других регионов от цены в США.
- Представляется общий рейтинг всех региональных цен в долларовом эквиваленте.
- Этот режим полезен для оценки ценовой политики при общении с разработчиками/издателями.
Примечание: Если игра в США бесплатна или цена для нее не найдена, возможности анализа в обоих режимах могут быть ограничены. Вся собранная информация представляется в модальном окне.
Важная информация:
Каждый полный сбор данных подразумевает отправку ~41 запроса к серверам Steam (точное количество зависит от числа доступных регионов). Пожалуйста, используйте эту функцию обдуманно. Частое нажатие кнопки на разных играх в течение короткого периода времени может привести к временному ограничению доступа к API Steam (обычно на 5-15 минут).
![[Пример работы
анализатора региональных цен]](https://i.imgur.com/OzebvaA.png)
Что делает:
Добавляет
кнопку "Plati" рядом с кнопкой "В желаемое"
на странице игры.
Нажатие
открывает полноэкранное окно для поиска
предложений по этой игре на торговой
площадке Plati.Market.
Возможности окна поиска:
- Автозаполнение поиска названием текущей игры.
- Ручной ввод и поиск.
- Подсказки при вводе (API Plati).
- Сортировка по цене, продажам, релевантности, названию, дате, рейтингу продавца и др.
- Фильтрация по цене (RUR, USD, EUR, UAH), продажам, рейтингу, наличию плохих отзывов/возвратов, участию в скидках, дате добавления.
- Исключение товаров по ключевым словам (панель справа).
- Сохранение фильтров, сортировки, валюты и исключений.
Используются официальные API Plati.Market.
![[Модальное окно
поиска цен на Plati.Market]](https://i.imgur.com/j1TGmY8.png)
Что делает:
Добавляет
кнопку "%" рядом с кнопкой "В желаемое" на
странице игры.
Нажатие открывает
модальное окно с ценами на эту игру из
различных цифровых магазинов.
Возможности окна агрегатора:
- Отображение предложений из магазинов: SteamBuy, Playo, SteamPay, Gabestore, GamersBase, Igromagaz, GamesForFarm, Gamazavr, GameRay, KupiKod, KeysForGamers, Zaka-zaka, Buka, GGSEL, Plati.Market и текущей страницы Steam.
- Сортировка по цене, проценту скидки, сумме скидки, названию.
- Фильтрация по диапазону цен, проценту и сумме скидки, наличию скидки, названию (слова через ";"), магазинам.
- Исключение товаров по ключевым словам.
- Сохранение состояния фильтров, сортировки и исключений.
- Экспорт и импорт списка исключений для удобного переноса и резервного копирования.
Нажмите кнопку импорта (→) и вставьте в появившееся окно следующий текст:
онлайн,оффлайн,dlc,аккаунт,ps4,xbox,digi361,ibloodrue,mangarded,siparisapp,multimarket,trustytop,cyber steam shop,boostgame,cloud-gaming.store,promarket88,offline,-seyter-,paul fox,sirdjinn,аренда,4ilgames,keks12,damhubmarket,nt-store,ps5,@mediasoft,dofamine game,hactier,alz0n,top-games,solo29,nerd shop,1gamestore,tobeclosertoyou
Использует различные методы для получения цен (API, парсинг HTML).
![[Пример агрегатора цен]](https://i.imgur.com/9cZk873.png)
Что делает:
Добавляет
кнопку "GIFT" в блок с кнопкой "В желаемое"
на странице игры.
Нажатие открывает окно, где можно:
- Выбрать регион друга из списка.
- Нажать "Узнать", чтобы запросить цену игры в этом регионе.
- Увидеть цену друга (сконвертированную в вашу валюту), процент разницы и вердикт (Можно подарить / Нельзя подарить), основанный на правилах Steam о разнице цен (±10%).
Использует те же механизмы получения цен и курсов валют, что и помощник для списка желаемого.
![[Пример работы
помощника подарков на странице игры]](https://i.imgur.com/jDdf4pR.png)
Улучшения каталога Steam
Что
делает:
Расширяет функционал
страницы поиска по каталогу Steam (store.steampowered.com/search/).
При наведении:
- Появляется всплывающая подсказка
слева от строки игры с подробной
информацией:
издатели, разработчики, серия, отзывы (% и кол-во), статус раннего доступа, поддержка языков, первые 5 меток, краткое описание.
Фильтры (панель справа):
-
Русский перевод:
- Только текст: Игры с рус. интерфейсом/субтитрами (без озвучки).
- Озвучка: Игры с русской озвучкой.
- Без перевода: Игры без русского языка.
- DLC:
- Только
ваши DLC: Показывает только DLC для игр,
которые есть в вашей библиотеке
(сами DLC подсвечиваются фиолетовым фоном).
- Только
ваши DLC: Показывает только DLC для игр,
которые есть в вашей библиотеке
Фильтры применяются динамически по мере получения данных от API.
Что
делает:
Добавляет инструменты
для массового скрытия неинтересующих
игр прямо со страницы поиска по каталогу.
Элементы интерфейса:
- Счетчик отображаемых игр (слева вверху).
- Чекбокс слева от каждой игры (кроме уже купленных/скрытых/в желаемом) для отметки на скрытие.
- Кнопка "Скрыть выбранное" (слева вверху).
Принцип работы:
- Отмечаете чекбоксами игры, которые хотите скрыть.
- Нажимаете "Скрыть выбранное".
- Скрипт добавляет эти игры в ваш официальный список игнорируемых в Steam и удаляет их элементы со страницы.
В отличие от стандартного механизма Steam, элементы полностью удаляются из DOM, что улучшает производительность при работе с большим количеством результатов.
Внимание: Рекомендуется
использовать только при необходимости
массового скрытия.
Для обычного
просмотра каталога лучше отключать эту
опцию.
![[Пример
системы скрытия игр в каталоге]](https://i.imgur.com/uCA8x2P.png)
Сообщество и активность
Что
делает:
Добавляет всплывающую
подсказку при наведении на название игры
в вашей ленте активности Steam (steamcommunity.com/my/home).
Подсказка содержит подробную информацию об игре, аналогичную той, что показывается в каталоге поиска:
- Название и изображение-шапка.
- Дата выхода.
- Издатели, разработчики, серия игр.
- Отзывы (% и кол-во).
- Статус раннего доступа.
- Поддержка русского и английского языков.
- Первые 5 меток.
- Краткое описание.
Данные загружаются через API Steam.
![[Пример дополнительной
информации в ленте активности Steam]](https://i.imgur.com/xE75iU8.png)
Что делает:
Добавляет
блок "Рулетка Stelicas" на страницу вашей
активности Steam (steamcommunity.com/my/home). Позволяет
загрузить CSV-файл, сгенерированный
приложением Stelicas, применить к нему
разнообразные фильтры и случайным
образом выбрать игру из вашей коллекции.
Возможности:
- Загрузка CSV-данных из Stelicas (содержащих информацию о ваших играх и коллекциях).
- Система фильтрации: по категориям коллекций Stelicas, дате выхода, пользовательским тегам, поддержке русского языка (интерфейс, субтитры, озвучка), а также по диапазонам количества отзывов и общего рейтинга игры.
- Анимированная рулетка для выбора случайной игры из отфильтрованного списка.
- Возможность включить приоритет по отзывам и рейтингу, чтобы игры с лучшими показателями имели больше шансов на выпадение.
- Переключение в режим просмотра всей отфильтрованной подборки игр в виде удобных карточек (изображение и название).
- Отображение подробной информации о выбранной (или просматриваемой в подборке) игре: постер, название, рейтинг и количество отзывов, краткое описание, основные теги, точная дата выхода, разработчики/издатели, информация о поддержке русского языка.
- Прямые ссылки на страницу игры в сообществе Steam и для её запуска через протокол steam://run/<AppID>.
Как пользоваться:
- Подробная инструкция по подготовке CSV-файла и использованию всех функций рулетки доступна по нажатию на значок вопроса ? в правом верхнем углу окна самой рулетки.
Примечание: Качество работы и полнота информации в рулетке напрямую зависят от корректности и актуальности данных в предоставленном CSV-файле из Stelicas.
![[Рулетка
Stelicas]](https://i.imgur.com/KDfW10m.png)
Торговая площадка
Что
делает:
Добавляет
информационный блок на страницу
предмета на торговой площадке Steam (steamcommunity.com/market/).
Блок содержит:
-
Таблицу с историей продаж по годам:
- Общая сумма продаж за год (в рублях).
- Примерная сумма, полученная разработчиком игры.
- Примерная сумма, полученная Valve.
- Итоговую сумму продаж за все время.
- Итоговые суммы, полученные разработчиком и Valve.
Данные загружаются через API истории цен Steam.
![[Пример
информации об исторических продажах на
торговой площадке]](https://i.imgur.com/ZPnzyNH.png)
Новости и список желаемого
Что делает:
Отслеживает изменения в вашем списке
желаемого Steam и в вашей библиотеке игр,
отображает календарь релизов.
Основные функции:
- В правом верхнем углу страниц Steam появляется кнопка "Наблюдатель".
- Индикаторы статуса (Ж/Б): Показывают, как давно обновлялись данные для Желаемого и Библиотеки.
- Счетчик уведомлений: Показывает количество новых (непрочитанных) изменений.
-
Панель уведомлений (по щелчку на
кнопку):
- Кнопка "Обновить" для ручного запуска проверки (использует Steam API).
-
Настройки (значок
шестерёнки): Открывает выпадающее
меню с опциями:
- Список желаемого / Библиотека: Позволяют включать/отключать проверку для каждой из секций.
- Перепроверять игры с русским: (Опция для Библиотеки). По умолчанию включена. Если её отключить, скрипт пропустит проверку игр, для которых уже известно о наличии любой русской локализации. Это значительно ускоряет повторные обновления.
- ...только без полной локализации: (Доступна, если предыдущая опция отключена). Если включить, то из повторной проверки будут исключаться только игры с полной локализацией (интерфейс+озвучка+субтитры). Игры с частичным переводом продолжат проверяться.
- Список изменений:
- Список желаемого: Изменение даты выхода, статуса раннего доступа или русского языка.
- Библиотека: Выход игры из раннего доступа, появление/изменение русского языка (и тип локализации).
- Кнопки для отметки уведомления как прочитанного (конверт) или удаления (крестик).
- Кнопка "Очистить" для удаления всех уведомлений.
- Кнопка "Календарь".
- Кнопка "Хранилище" для очистки сохраненных данных.
-
Календарь релизов (по щелчку на
кнопку "Календарь"):
- Отображает игры из вашего списка желаемого в виде календаря по месяцам.
- Показывает игры с точными датами выхода в будущем.
- Для игр с примерной датой (месяц, квартал, год) отображается подсказка при наведении.
- Позволяет подгружать следующие месяцы.
-
Хранилище (по щелчку на кнопку
"Хранилище"):
- Позволяет очистить кэш дат/статусов для списка желаемого или для игр библиотеки.
Требует авторизации. Обработка больших списков/библиотек может занять время. Используйте новые опции в настройках для ускорения сканирования библиотеки.
Что делает:
Добавляет
значок лупы. Позволяет определить, какие
игры можно подарить друзьям в других
регионах.
Основные функции:
- Загружает игры из отображаемого списка желаемого и выводит их в виде информативных карточек с возможностью сортировки.
- Активирует
режим помощника подарков:
- Вы выбираете регион вашего друга.
- Скрипт запрашивает цены на игры из списка желаемого для выбранного региона.
- Цены друга конвертируются в вашу валюту (используется API курсов валют).
- Отображается разница в
цене между вашим регионом и
регионом друга
(с цветовой индикацией: зелёный - можно дарить (разница до ±10%), красный - нельзя). - Доступен фильтр "Можно подарить", который показывает только те игры, у которых разница в цене до ±10% и которые Steam разрешает покупать в подарок.
Это помогает легко найти подходящие и экономически целесообразные подарки для друзей за границей.
Скорость загрузки данных зависит от размера списка желаемого.
![[Пример работы помощника подарков для
списка желаемого]](https://i.imgur.com/WPbhyPI.png)
Что
делает:
Позволяет гибко
управлять отображением новостей в
новостном центре Steam (store.steampowered.com/news/), скрывая
неинтересные материалы.
Основные возможности и использование:
-
Выбор новостей для скрытия:
- На каждой новости в правой части изображения появляется крупный квадратный чекбокс.
- При установке галочки новость становится полупрозрачной ("мягкое" скрытие) и отмечается для последующего подтверждения скрытия. Повторный щелчок снимает отметку.
- Панель
управления (справа вверху):
- "Скрыть выбранные
(X)": Нажатие этой кнопки перемещает все
отмеченные (полупрозрачные) новости в
постоянное хранилище.
- Новость исчезает с экрана (или становится затемненной, если включен режим "Показать скрытое").
- Счетчик в скобках показывает, сколько новостей сейчас выбрано.
- "В хранилище: X": Эта надпись показывает общее количество новостей, находящихся в хранилище скрытых новостей.
- "Отменить": Появляется после подтверждения скрытия и активна 15 секунд. Позволяет отменить последнее действие по добавлению новостей в хранилище.
-
"Показать скрытое" / "Спрятать
скрытое": Переключатель.
- Если выбрано "Показать скрытое", новости из вашего хранилища будут отображаться в ленте, но в затемненном виде.
- В режиме "Спрятать скрытое" они полностью исчезают.
- "Хранилище": Открывает модальное окно для управления списком постоянно скрытых новостей.
- "Скрыть выбранные
(X)": Нажатие этой кнопки перемещает все
отмеченные (полупрозрачные) новости в
постоянное хранилище.
- Панель "Хранилище скрытых
новостей":
- Отображает список всех новостей, добавленных в постоянное хранилище. Для каждой записи указывается название игры, заголовок новости и ее AppID.
- "Вернуть": Кнопка напротив каждой записи позволяет удалить новость из хранилища и немедленно отобразить ее в ленте. Чекбокс на этой новости также снова станет активным.
- "Очистить хранилище": Удаляет все новости из вашего списка постоянно скрытых. Требует подтверждения.
- "Закрыть": Закрывает панель хранилища.
Настройки
Для настройки
отдельных модулей скрипта и их
параметров используйте меню настроек
U.S.E.
Оно находится в выпадающем
меню вашего профиля Steam (в правом верхнем
углу), как показано ниже:
![[Расположение меню настроек U.S.E.
в профиле Steam]](https://i.imgur.com/QUdKoCH.png)
В открывшемся окне настроек вы сможете включать или отключать модули скрипта:
![[Пример панели настроек Ultimate Steam
Enhancer]](https://i.imgur.com/oTJeMwz.png)
Также в меню настроек доступны следующие опции:
Если включено, блок с информацией о времени прохождения (HLTB) на странице игры будет автоматически раскрываться при загрузке страницы (если основной модуль HLTB включен).
Удобно, если вы всегда хотите видеть эту информацию без лишнего щелчка.
Если включено, блок с дополнительными обзорами (Тотальные, Безкитайские, Русские) на странице игры будет загружаться автоматически при загрузке страницы (если основной модуль 'Индикаторы/Обзоры' включен).
Экономит щелчок, если вам всегда нужна эта статистика.
Функция для переводчиков и интересующихся. Если включено, в блоках дополнительной информации (в каталоге при наведении и в ленте активности при наведении) будет также отображаться информация о поддержке английского языка (интерфейс, озвучка, субтитры), аналогично русскому.
По умолчанию эта информация скрыта для экономии места.
Как установить:
- Установите Tampermonkey — расширение для
подключения пользовательских скриптов.
Если у вас необычный браузер, то на этой странице есть множество
альтернативных вариантов.
- Если
вы ставите расширение впервые, то после
установки введите в адресной строке:
chrome://extensions
и в правом верхнем углу включите «режим разработчика».
- Если
вы ставите расширение впервые, то после
установки введите в адресной строке:
- Зайдите на страницу Ultimate Steam Enhancer и нажмите кнопку «Установить скрипт».
Новости и статьи по тегам:
- 4 Battlefield 2042 заняла три места в еженедельном топе продаж Steam
- 33 Максимальный онлайн Steam-версии Sackboy: A Big Adventure составил всего 592 человека
- 8 Nioh 2 — The Complete Edition выйдет в Steam в феврале
- 1 Бесплатно и навсегда: Geneshift Battle Royale Turbo в Steam
- 13 Overwatch 2 вышел в Steam
- 8 Тираж Valhelm достиг 3 миллионов – последний миллион был продан за 3 дня
Такими темпами, возможно, когда-нибудь в России появится свой аналог steamdb
Успехов в развитии проекта 
Офигенно! Прям залип в него, пошёл щёлкать на все интересующие меня игры.
Вот только одного не понял:
Где эта строка “Русские”? В упор не вижу.
Есть ли совместимость с Augmented steam или большая часть функционала и так дублирована?
Совместимо с Augmented Steam и SteamDB. Функционал не дублировался.
Все функции оригинальные, из чужих скриптов и плагинов ничего не заимствовал.
Насколько мне известно, единственное, что может присутствовать где-то ещё — это время с HLTB.
В Augmented Steam видел подобное или в каком-то похожем плагине.
Блин. Я даже не знал об этом. Зачетно и очень информативно. Лаконичный интерфейс, и подробная информация уже сверху.
Одно плохо, если игры заблочены в нашей необъятной, то и нет никакой информации, естественно. Ведь она работает только на главном экране продукта.
Для этого случая можно держать другой браузер, туда тоже плагин поставить.
В конце адресной строки пишется /?cc=us
Например: https://store.steampowered.com/app/1771300/Kingdom_Come_Deliverance_II/?cc=us
И там часть функционала для страницы работает (языки, русификаторы, hltb, глобальные достижения, агрегатор цен, возможность подарка в другой регион).
Сделать для Millennium и вообще будет пушка.
я может тупой, но у меня не работает, пробовал на яндексе и опере(чистой)
установился только вручную через копирование кода. Никаких изменений не увидел. Видимо не работает у меня. Опера 119
chrome://extensions
opera://extensions
включили режим разработчика?
Использую Opera 119.
@0wn3df1x
Интересно. А Tamper Monkey из Opera store или из Chrome store?
Попробуйте эту версию из Chrome Store:
https://chromewebstore.google.com/detail/tampermonkey-beta/gcalenpjmijncebpfijmoaglllgpjagf
@0wn3df1x нет, с этим тоже самое. То есть ничего. Все работает, криво код скопировал
Перезапуск браузера тоже ничего не даёт?
А в консоли на Ctrl+Shit+C что-нибудь есть?
Я попробовал установить плагин на Opera, Chrome и Edge. Везде работает.
Работает с логином и без логина в аккаунт.
Можно попробовать поставить галочку на “Разрешить использование в режиме инкогнито”.
Затем щёлкнуть в левом верхнем углу браузера и выбрать “Создать приватное окно”

И там перейти на страницу любой игры Steam.
Я вижу:
Если вариант с инкогнито сработает, значит какое-то расширение конфликтует с Tamper Monkey и со скриптом, правда непонятно какое.
Понял, дополнительное возможное решение убрал под спойлер.
@Dustex удалось чего-нибудь добиться?
Существует вероятность, что проблема заключается в Tamper Monkey, который поставлен из Opera Store. Когда-то давно были жалобы на версию из Opera Store, мол она урезанная или багованная, из-за чего люди ставили версию из Chrome Store. Я от себя рекомендую ставить Beta-версию из Chrome Store, я лично к ней привык, в основном браузере стоит она, а на Chrome стоит стандартная версия.
И важно, чтобы был включен режим разработчика.
у меня расширение и скрипт заработали, но криво, я бы скинул скрин, но не понимаю как
В Steam отправил заявку. Можно мне через личные сообщения скинуть скрин.
не пришло, видимо не тому кинул, у меня в группах ZOG есть
Нашёл, первая заявка любителю хентая ушла.
Вроде со всеми возникшими вопросами разобрались, всё работает, ничего править не пришлось.
Но заметил, что не всем понятен функционал. Поэтому настоятельно рекомендую:
Войдите в меню скрипта.
Оно находится в выпадающем меню вашего профиля Steam (в правом верхнем углу), как показано ниже:
В открывшемся окне настроек вы увидите все модули:
Просто щёлкните по значку (i) справа от любого модуля и вы увидите, как им пользоваться и что он даёт:

В шапку темы добавлено видео с демонстрацией возможностей.
Я так понимаю это приблуда чисто для браузера?
@0wn3df1x у меня при нажатии кнопки установить скрипт перекидывает на такую страницу, а после скачивает сам скрипт в формате js
да
И какой браузер?
Если tamper monkey установлен и включен, и режим разработчика включен, то при нажатии “Установить скрипт” должно появляться окно с предложением установить скрипт.
В теории браузер мог заблокировать дополнительное окно. Во время нажатия установить скрипт, когда открывается та страница, в адресной строке, спрва, случайно нет никакого нового значка? При щелчке по этому новому значку может быть написано “всплывающее окно заблокировано”.
Если установлен и режим разработчика включён, то можно попытаться поставить путём копирования кода из JS:
Ох тыж мама моя дорогая, да вы просто боженька, открыли для меня Америку просто с этой припиской
“/?cc=us”. Спасибо!!!
PS
достаточно выйти из аккаутна стим в родном браузере и все будет работать
Можно и так, но мне лично легче открыть второй браузер, чем в свой аккаунт входить-выходить.
Плюс часть функционала скрипта завязана именно на пользовательский аккаунт. То же отслеживание игр в библиотеке и списка желаемого например.
Тогда она нафиг не нужна.
Хотелось бы написать про “доступность подарков”. Я тут вот о чем еще подумал. На примере игры Medieval 2 total war. В Казахстане игра продается, а в России нет и в таком случае плагин пишет “ошибка”. А есть ли планы на будущее и вообще такая возможность сделать проверку в качестве подарков игр доступных в одном регионе и недоступных в другом? Вот этот медивл несмотря на то что не продается в ру регионе совершенно спокойно дарится. И было бы здорово зайдя в одном браузере через казахов нажать кнопочку и увидеть, что игру можно отправить подарком на российский аккаунт.
Расширение огонь

В клиент Steam это имплементировать невозможно физически. Это может быть реализуемо только на каком-нибудь независимом от Valve, стороннем open-source клиенте типа миллениума. Но это может быть актуально для тех, кто оригинальным клиентом не пользуется вообще.
Я лично использую клиент только для запуска игр. Для сёрфинга магазина и прочего, имхо, клиент не подходит.
Во вторник PermPresident задавал подобный вопрос, он звучал так:
Процитирую мой ответ от вторника:
С помощью скрипта возможность дарения недоступных игр проверить не получится. Функция “доступность подарков” предназначена для проверки возможности дарения игр, которые продаются в обоих регионах. Она использует общедоступные цены и правило Steam о процентной разнице.
В случае недоступных игр цена в недоступном регионе является технической и видна только на стороне издателей/разработчиков, а также для серверов Steam, обычный пользователь получить её не может. Информация о том, может ли недоступная игра быть подарена в какой-то регион, может быть получена только методом тыка:
Почему это нельзя автоматизировать в скрипте для проверки возможности дарения в другой регион?
Как можно понять из написанного выше (а ещё из файла checkout.js), вся логика проверки скрыта на сервере.
А стало быть скрипт не может получить доступ к этой технической цене, потому что Steam её не показывает. Мы также не можем заранее симулировать этот запрос для всех игр в списке желаемого друга, так как для этого потребовалось бы от добавлять каждую игру в корзину по одной и инициировать подарочную транзакцию, что быстро приведёт к блокировке, т.к. эндпоинт inittransaction имеет жёсткие встроенные ограничения на количество транзакций, результатом будет ошибка 53: “За последние несколько часов вы пытались совершить слишком много покупок”. Добавление всех игр сразу не пройдёт, потому что помимо ошибки 72 есть ошибка 2 - “На счете недостаточно средств”. И так далее.
И в продолжение ответа на:
Учитывая написанное выше, может появиться вопрос:
Если техническая цена недоступна, каким образом функционируют сервисы, которые отправляют подарки?
Ответ давал в декабре 2024-го.
Как устроены магазины, которые дарят гифты в регионы, где игра недоступна:
Именно поэтому некоторые люди попадают в замешательство. К примеру:
Работает и в обратную сторону. Люди видят, что в Казахстане цена 2000 рублей, а продавцы предлагают за 1000.
Значит, что техническая рублёвая цена находится в районе 1000 и есть регион, где цена укладывается в рамки 10%.
P.S. У меня есть подозрение, что владельцы магазинов гифтов имеют доступ к некой централизованной системе, где концентрируются данные о возможности дарения игр из одного региона в другой. Ибо для получения этой информации требуются колоссальные ресурсы (как в плане финансов, так и в плане аккаунтов), я сомневаюсь, что у продавцов поголовно есть доступ к подобной махине в виде огромной ботосетке для проверке дарения. Скорее всего есть какой-то закрытый клуб для своих или оптовиков, но я в их круги не вхож, не слышал.
Очень крутая и удобная штука! Огромное спасибо. Жаль нельзя проверить еще доступность подарка, если в RU сегменте нет игры.
А так, очень информативное и удобное расширение.
Просто великолепно, низкий поклон за труд!
На предыдущей странице писал, почему в данный момент это нельзя реализовать.
73 Вышло Ultimate Steam Enhancer 2.0 — расширение, добавляющее в Steam ссылки на русификаторы, русские магазины-дискаунтеры и прочие полезные для России функции
@0wn3df1x Добрый день.

Расширение отличное, да вот незадача. Скрипт установлен через adguard. Сейчас в любом браузере крашится на попытке вывести правые блоки с инфой. Предыдущая версия работала отлично и в браузере и в steam.
Планируете ли поддержку adguard в новой версии?
UPD: В общем закостылил себе исправление, Добавил первой строкой
var unsafeWindow = typeof unsafeWindow === 'undefined' ? window: unsafeWindow;
Ага, как раз и писал, что жалко нельзя проверить. Но всё равно, безумно крутой функционал!
Корень проблемы заключается в различиях между средами выполнения пользовательских скриптов в Tampermonkey (и аналогичных расширениях) и в AdGuard. В вашем логе ошибок ключевой момент - ReferenceError: unsafeWindow is not defined.
Объект unsafeWindow - это специфический API, предоставляемый большинством специализированных менеджеров пользовательских скриптов. Он дает скрипту привилегированный доступ к глобальному объекту window страницы и его переменным. Это необходимо для корректного взаимодействия с функциями и данными, которые использует сам Steam.
Судя по всему, среда выполнения скриптов в AdGuard не предоставляет этот специфический объект unsafeWindow, что и приводит к ошибке. Поскольку скрипт разрабатывался и тестировался в окружении Tampermonkey, где этот API гарантированно есть, возникает данная ошибка совместимости.
В предыдущих версиях скрипта (например, 1.9.5) большинство модулей работало через прямые API-запросы к серверам Steam (с помощью GM_xmlhttpRequest). Для этого не требовался доступ к контексту самой веб-страницы, и стандартного объекта window было достаточно.
В процессе разработки версии 2.0.0 были добавлены новые, более сложные функции, в частности “Помощник подарков в списке желаемого” (wishlistGiftHelper). Его задача - работать с уже загруженным на странице списком игр. Steam помещает эти данные в глобальную JavaScript-переменную g_rgWishlistData, которая является свойством объекта window самой страницы.
Здесь и возникает ключевая техническая проблема: из-за политики безопасности браузеров пользовательские скрипты выполняются в изолированной среде (песочнице). Простое обращение к window из скрипта дает доступ к window этой песочницы, а не страницы. Поэтому window.g_rgWishlistData возвращало undefined.
Решением этой проблемы стало unsafeWindow. После чего я решил стандартизировать его использование во всех частях скрипта.
В теории этот полифил должен сработать для части модулей. Он проверяет наличие unsafeWindow и, если его нет, создает локальную переменную с таким же именем, присваивая ей стандартный объект window.
Но есть нюанс. Простое приравнивание unsafeWindow к window не всегда является полноценной заменой. Как уже упоминалось, некоторые модули, типа “Доступность подарков (список желаемого)”, зависят от unsafeWindow для доступа к данным, которые Steam загружает динамически (к глобальному массиву с играми g_rgWishlistData). Из-за изоляции контекстов скриптов, стандартный window может не дать доступа к этим данным. В связи с этим, у меня есть вопрос: После использования того костыля, корректно ли работает функционал помощника подарков на странице списка желаемого? Загружаются ли игры после нажатия “Собрать данные”?
@0wn3df1x Протестировал, что работает/не работает
Для страницы игры
Время прохождения (HLTB) — ok
Русификаторы (ZOG) — ok
Время друзей / Глобальные достижения — частично (не работает время друзей — всегда не играли)
Индикатор раннего доступа — ok
Анализатор цен — ok
Поиск цен Plati.Market — ok
Агрегатор цен (%) — ok
Доступность подарков (страница игры) — ok
Для каталога
Доп. инфо / Фильтры — ok
Скрытие игр — ok
Для ленты активности
Доп. инфо в ленте активности — ok
Рулетка Stelicas — вроде ok (открывается, csv не проверял)
Для торговой площадки
Продажи предмета — ok
Для списка желаемого / Новостей
Наблюдатель (Желаемое/Библиотека) — не работает (отображается, но всегда пусто)
Доступность подарков (список желаемого) — не работает
Фильтр новостей — ok
Дополнительные настройки
Авто-раскрытие HLTB — ok
Показ инфо об англ. Языке — ok
Авто-загрузка доп. Обзоров — ok
Немного обманул в прошлом сообщении, что прямо все работало в прошлой версии. По сути то, что не работает сейчас, не работало и в прошлой, только добавились краши.
Да, как я и предполагал, за исключением дополнения в виде наблюдателя времени друзей.
Экосистема менеджеров (Tampermonkey, Greasemonkey, Violentmonkey и др.), а также сред выполнения скриптов, встроенных в другие расширения (как в AdGuard), довольно разнообразна. Да, все они служат одной цели, но их внутренние реализации могут существенно отличаться. В основе их работы лежит концепция песочницы - изолированной среды, которая создается из соображений безопасности, чтобы пользовательский скрипт не мог бесконтрольно хозяйничать на странице, например, похищая личные данные. Но строгость этой песочницы и набор инструментов, которые предоставляются скрипту для общения с внешним миром, сильно варьируются. Хотя все они стремятся следовать общему стандарту Greasemonkey API, их реализации отличаются. Tampermonkey, на сегодняшний день, является наиболее функционально полным и стабильным менеджером, который реализует даже самые специфические, но ставшие стандартом де-факто в сообществе, возможности API, такие как unsafeWindow и гибкое управление кросс-доменными запросами.
Другие менеджеры зачастую являются форками (ответвлениями) более старых версий или независимыми разработками, которые догоняют “золотой стандарт” по функциональности с разной скоростью. Иногда это приводит к тому, что в них отсутствуют определённые функции.
Например, некоторое время назад была проблема с работой другого моего скрипта в OrangeMonkey (который использовал наш главадмин SerGEAnt). Она была связана с тем, как расширение обрабатывало разрешения на кросс-доменные запросы и взаимодействие с веб-редактором CKEDITOR, который используется на многих форумах на движке Invasion Board. Скрипту требовался доступ к API редактора, но OrangeMonkey не предоставлял необходимого моста для выхода из “песочницы”, что приводило к ошибке. В то же время в Tampermonkey этой проблемы уже не было, так как его разработчики реализовали более продвинутые механизмы взаимодействия с контекстом страницы. Это классический пример рассинхронизации в разработке, где одно расширение уже адаптировалось под новые веб-технологии, а другое - ещё нет.
AdGuard, конечно, довольно мощнейший инструмент для блокировки контента и защита приватности, но выполнение пользовательских скриптов является его вторичной, хоть и очень полезной, функцией. Поэтому вполне объяснимо, что его песочница может быть более строгой, а среда выполнения не предоставляет некоторые узкоспециализированные, но критически важные для сложных скриптов API, такие как unsafeWindow. Это не столько недостаток, сколько фундаментальное различие в философии разработки: приоритет отдается максимальной безопасности, иногда в ущерб расширенной функциональности пользовательских скриптов.
Теперь давайте пройдёмся по результатам.
Это как раз то, о чём я писал в предыдущем сообщении. Во время разработки скрипт все еще мог получить список игр из window, но где-то с полторы недели назад Valve немного изменила свой фронтенд. Они всё активнее используют современные фреймворки, которые строят страницу динамически, а данные хранят внутри своей инкапсулированной экосистемы (состояние компонентов). Раньше переменные могли просто объявляться в глобальной области видимости, теперь же они "живут" внутри фреймворка, и доступ к ним снаружи затруднен. В какой-то момент массив с ID игр из списка желаемого (g_rgWishlistData), который раньше был легко доступен, стал инициализироваться таким образом, что его можно прочитать только через прямой доступ к JavaScript-контексту самой страницы.
Именно для этого понадобился unsafeWindow. Он как ключ, который позволяет скрипту, работающему в изолированной песочнице, дотянуться до переменных на основной странице. Костыль (var unsafeWindow = window;) - это хороший фикс для предотвращения падения скрипта от ReferenceError, но он лишь создаёт псевдоним для window песочницы, в которой g_rgWishlistData по-прежнему не существует. AdGuard не предоставляет этот ключ, поэтому скрипт не может найти ID и сообщает об ошибке.
Здесь причина схожа, но связана не столько с доступом к переменным, сколько с изоляцией сессии аутентификации. Ваше тестирование подтверждает, что среда AdGuard, скорее всего, выполняет скрипты в настолько изолированном контексте, что они не имеют полного доступа к вашей браузерной сессии на сайтах Steam.
Для работы этих модулей необходима авторизация. Её отсутствие или изоляция приводят к неработоспособности:
https://store.steampowered.com/dynamicstore/userdata/
Когда вы авторизованы, сервер Steam отдает специальный JSON-файл, содержащий ID ваших игр из rgWishlist, rgOwnedApps и т.д. (в этом JSON также содержатся ваши настройки персонализации магазина, но нет и не может быть логина, хэша пароля, платёжной информации или токенов аутентификации). Скрипт использует эти ID, чтобы затем сделать отдельные, публичные запросы к API Steam и получить информацию по каждой конкретной игре. Когда скрипт через GM_xmlhttpRequest делает запрос к /userdata/, этот запрос должен содержать ваши аутентификационные данные. Если среда выполнения (AdGuard) не передает их, для сервера Steam этот запрос выглядит как анонимный, и он возвращает пустой ответ. Таким образом, у модуля просто нет исходных данных для работы - он не знает, за какими играми ему нужно следить, и его панель остается пустой.
https://steamcommunity.com/my/friendsthatplay/1245620
она генерируется сервером динамически, специально для вашего аккаунта. Для анонимного пользователя или для скрипта, работающего в изолированной сессии без доступа к актуальным данным, такой страницы не существует - Steam просто не вернет нужные данные. Соответственно, без доступа к этой странице скрипт не может извлечь имена друзей и их наигранные часы и делает логичный вывод - “друзья не играли”.
Вот как-то так.
Спасибо за развернутый ответ. Поживу тогда с костылем. Того, что работает мне с головой хватает
В любом случае благодарю за вашу работу. Скрипт шикарный. )
Все-таки решил поковырять скрипт. В документации API AG указано, что они поддерживают методы GM.
https://adguard.com/kb/ru/general/extensions/#поддерживаемые-функции-gm
Добавил разрешение
// @grant unsafeWindow
Что произошло
Можете пожалуйста добавить в ваше расширение этот скрипт, чтобы больше никогда не видеть "Ой, извините", т.к. даже переадресация на Центр сообщества намного лучше, чем это бесполезное "Ой, извините".
P.S. Возможно ли во всём расширении или хотя бы только в Агрегаторе цен сделать конвертацию рублей в CIS - U.S. Dollar, как это сделано в расширении SteamDB или на сайте hot.game. Просто в СНГ регионе намного удобнее видеть все цены в долларах, чем в рублях.
У меня есть идея получше. Вернусь с ней позже.
Списки изменений (Чейнджлоги)
Многие из нас сталкивались с несовершенством системы меток в Steam. Разработчик может указать до 20 меток для своей игры, из которых первые 5 считаются основными и наиболее весомыми. При этом сообщество игроков может голосовать и влиять на положение этих меток в общем списке, повышая или понижая их релевантность.
В теории это звучит неплохо, но на практике система часто даёт сбой. Из-за шутников или скоординированных "рейдов" игры начинают получать метки, которые совершенно их не характеризуют. В результате милая головоломка про котят может внезапно получить тег «Психологический хоррор», а хардкорный симулятор выживания — метку «Казуальная игра».
Эти «шуточные» метки обычно не имеют большого веса, но всё равно попадают в двадцатку. Из-за этого, когда вы ищете в магазине хорроры, Steam подсовывает вам ту самую игру про котят, а в подборку казуальных игр попадает хардкорный выживач. Это засоряет поиск и мешает находить то, что действительно нужно.
Чтобы решить эту проблему и вернуть контроль над поиском в ваши руки, я добавил в скрипт новый инструмент — «Умные метки».
Его суть проста: он позволяет фильтровать игры не просто по наличию метки, а по её весомости. Теперь вы можете сказать скрипту: «Покажи мне только те игры, где метка „Рогалик“ входит в топ-7 самых релевантных». Это позволяет мгновенно отсечь все проекты, где этот тег был добавлен случайно или ради шутки и не является для игры определяющим. Точно так же вы можете и полностью скрыть игры, имеющие определённые метки, чтобы они не мешались в результатах.
С этим обновлением ваш поиск станет значительно чище и точнее.
Новые возможностиЧто это? В панель фильтров на странице поиска по каталогу добавлена новая секция «Умные метки». Этот инструмент даёт беспрецедентный контроль над результатами поиска.
Как это работает?
Фильтры можно легко перетаскивать между секциями, чтобы быстро менять логику отбора.
Что это? Та же самая система фильтрации по меткам доступна и в «Помощнике подарков» для вашего списка желаемого.
Почему это важно?
Кнопка «Умные метки...» добавлена в раскрывающуюся панель фильтров.
В этой версии было добавлено несколько новых функций, улучшена работа существующих модулей и расширен список поддерживаемых магазинов.
Новые возможностиЧто это? Этот модуль автоматически добавляет на страницы игр в магазине и сообществе Steam недостающие кнопки со ссылками на полезные ресурсы.
Какие ссылки добавляются?
Почему это важно? Модуль особенно полезен на страницах, открытых в «виртуальном режиме инкогнито», где другие расширения (например, Augmented Steam или официальное расширение SteamDB), добавляющие аналогичные кнопки, могут не работать. Кроме того, Steam часто скрывает кнопку перехода в магазин для игр, недоступных в вашем регионе, и этот модуль восстанавливает её, избавляя от необходимости искать обходные пути.
Что это? Фоновый модуль, который автоматически исправляет встроенные виджеты Steam (например, на форумах или в ленте активности), если они заблокированы в вашем регионе.
Как это работает? Скрипт обнаруживает заблокированный виджет и пытается перезагрузить его, используя регионы из настроек «Инкогнито». Теперь вы будете знать, что за игра скрывалась за надписью о недоступности, без необходимости изучать код страницы.
Почему это важно? Вместо сообщения об ошибке вы увидите полноценный виджет с информацией об игре, как если бы он не был заблокирован.
Правила отправки подарков были скорректированы для более точного соответствия механизмам Steam.
Это техническое обновление, направленное на исправление критической ошибки в работе функции «Виртуальный режим „Инкогнито“». Значительно повышена надежность и совместимость, особенно для пользователей браузера Firefox.
ИсправленияЭто обновление сфокусировано на повышении удобства и надежности. Добавлены новые настройки автоматизации для «Агрегатора цен», улучшен механизм обхода региональных блокировок и доработана логика отображения данных в «Помощнике подарков».
Улучшения и нововведения⚠️ Важно:
При включенной авто-подстановке для более точного поиска рекомендуется сокращать название.
Например, вместо "DEATH STRANDING DIRECTOR'S CUT" лучше оставить "DEATH STRANDING".
Это обновление вносит ряд улучшений в существующий функционал.
Улучшения и нововведенияЭто обновление направлено на решение ключевых проблем, с которыми сталкивались пользователи, а также на улучшение стабильности и удобства использования скрипта.
Ключевое нововведение: Виртуальный режим инкогнитоРанее для просмотра страниц, недоступных в регионе, пользователи прибегали к ручным методам: выходили из аккаунта, использовали другой браузер или открывали страницу в режиме инкогнито браузера (самый быстрый), после чего добавляли в адрес ?cc=us. Однако в режиме инкогнито этот способ имел критический недостаток - "age gate" (проверка возраста). Steam не позволял подтвердить возраст для "запрещенной" территории, делая метод бесполезным для игр с рейтингом 18+. Пользователи предлагали альтернативные решения — сделать простое перенаправление в центр сообщества, но это лишило бы пользователей ценной информации, предоставляемой нашим скриптом.
В связи с этим мы разработали "виртуальный режим инкогнито" — комплексное решение, которое обходит эти ограничения.
Преимущества:
⚠️ Важно:
Наш подход не нарушает "Соглашение подписчика Steam", поскольку не использует VPN, прокси и другие запрещенные соглашением средства для сокрытия IP-адреса. Он задействует легитимный, предоставленный самой Valve механизм просмотра страниц для другого региона — параметр ?cc=. Запрос анонимной сессии необходим исключительно для того, чтобы изолировать этот просмотр от данных основного аккаунта. По сути, скрипт показывает то, что любой человек видит, зайдя на страницу игры с параметром ?cc=us без входа в аккаунт. Эта функция предназначена исключительно для просмотра информации и обеспечения работы функций расширения. Она не является инструментом для совершения нелегитимных покупок.
Юбилейное обновление знаменует собой новую эру для Ultimate Steam Enhancer.
Глобальное улучшение: Меню настроек U.S.E.Теперь все опции доступны через удобное графическое меню.
Это изменение делает скрипт значительно более дружелюбным для пользователей и упрощает его персонализацию.
Что делает: Добавляет кнопку "Анализатор цен" на страницу игры. Этот мощный инструмент позволяет детально анализировать региональные цены игры в Steam двумя способами: в рублях (по умолчанию) и в долларах США (переключаемый режим).
После нажатия кнопки "Сбор данных" в специальном окне, модуль выполняет следующее:
Режим Рублей:- Определяет AppID текущей игры и запрашивает цены через официальное API Steam для 41 региона.
- В качестве базы для расчета рекомендованной рублевой цены используется цена в США (USD).
- Цены из всех регионов, включая Россию, конвертируются в рубли по актуальным обменным курсам для прямого сопоставления.
- Производится ключевое сравнение: фактическая цена в российском Steam сопоставляется с официально рекомендованной Valve ценой для России. Отклонения подсвечиваются.
- Отображается рейтинг российской цены среди всех проанализированных стран, позволяя увидеть её место от самой дешёвой к самой дорогой в рублевом эквиваленте.
Режим Долларов США:Примечание: Если игра в США бесплатна или цена для нее не найдена, возможности анализа в обоих режимах могут быть ограничены.
⚠️ Важная информация:
Каждый полный сбор данных подразумевает отправку ~41 запроса к серверам Steam. Пожалуйста, используйте эту функцию обдуманно. Частое использование может привести к временному ограничению доступа к API Steam.
Что делает: Заменяет старый модуль "Цены (VGT)". Добавляет кнопку "%" рядом с кнопкой "В желаемое" на странице игры. Нажатие открывает модальное окно с ценами на эту игру из различных популярных цифровых магазинов.
Возможности окна агрегатора:
Нажмите кнопку импорта (→) и вставьте в появившееся окно следующий текст:
онлайн,оффлайн,dlc,аккаунт,ps4,xbox,digi361,ibloodrue,mangarded,siparisapp,multimarket,trustytop,cyber steam shop,boostgame,cloud-gaming.store,promarket88,offline,-seyter-,paul fox,sirdjinn,аренда,4ilgames,keks12,damhubmarket,nt-store,ps5,@mediasoft,dofamine game,hactier,alz0n,top-games,solo29,nerd shop,1gamestore,tobeclosertoyouИспользует различные методы для получения цен (API, парсинг HTML) для предоставления наиболее полной картины.
Что делает: Добавляет кнопку "GIFT" в блок с кнопкой "В желаемое" на странице игры.
Нажатие открывает окно, где можно:
Использует те же механизмы получения цен и курсов валют, что и помощник для списка желаемого.
Что делает: Добавляет блок "Рулетка Stelicas" на страницу вашей активности Steam (steamcommunity.com/my/home). Позволяет загрузить CSV-файл, сгенерированный приложением Stelicas, применить к нему разнообразные фильтры и случайным образом выбрать игру из вашей коллекции.
Возможности:
Подробная инструкция доступна по нажатию на значок вопроса ? в окне самой рулетки.
Что делает: Добавляет значок лупы на страницу списка желаемого. Позволяет определить, какие игры из вашего вишлиста можно подарить друзьям в других регионах.
Основные функции:
Это помогает легко найти подходящие и экономически целесообразные подарки для друзей за границей.
Модуль информации об обзорах на странице игры был расширен:
⚠️ Важное замечание о зависимостях:
Отключение этого модуля через новое меню настроек приведет к автоматическому отключению или нарушению корректной работы модулей «Время прохождения (HLTB)», «Русификаторы (ZOG)» и «Время друзей / Глобальные достижения», так как они критически зависят от его функционала по отображению элементов на странице игры.
Модуль отслеживания был полностью переработан, получил новое имя "Наблюдатель" и значительно расширил свои возможности. Теперь он следит не только за списком желаемого, но и за вашей библиотекой, а также предлагает гибкие настройки для ускорения работы.
Модуль скрытия новостей в новостном центре получил следующие улучшения:
Модуль поиска русификаторов был кардинально переработан и больше не использует устаревающую базу данных.
Модуль, отображающий информацию об играх в ленте активности, был улучшен для более точного отображения изображений.
Актуальный функционал (Версия 2.1.5)
В связи с увеличением объёма и для удобства последующих обновлений, полное описание всех функций было перенесено на GitHub Pages.
Это просто праздник какой-то. С блекджеком и не заблокированными играми. Приеду домой, надо опробывать.
Круто, спасибо. Также хочу предложить некоторые замечания и предложения для данного функционала:
В коде скрипта, почти в самом начале, через ctrl+f найдите:
statusElement.textContent = 'Шаг 2/3: Проверка страницы...'; const gamePageUrl = `https://store.steampowered.com/app/${appId}/?cc=us&l=russian`;Там замените cc=us на cc=az или любой другой желаемый регион.
Настройку добавлю в следующей версии.
Не понял вопрос. Добавить возможность отобразить главную или любую страницу магазина в режиме инкогнито по кнопке?
Возможность открывать любую страницу по кнопке добавлю в следующей версии, но там будет нюанс: Главная страница откроется, страница какого-нибудь жанра типа рогалик тоже, страница активности пользователя — нет (но оно понятно, инкогнито же), страница поиска по каталогу не будет работать полноценно, потому что в стандартном режиме там включена автоматическая прокрутка на следующие странице. При автоматической прокрутке, как и в других динамических элементах, используются оригинальные данные аккаунта. Т.е. если после перезагрузки первый набор игр будет в долларах, то при скролле — загрузятся данные для аккаунта и они будут в рублях, с ограничениями и прочим.
Заставить их работать в этом режиме технически невозможно из-за того, как устроен сам процесс обхода и как работают браузерные расширения.
Когда мы заходим на заблокированную страницу, браузер сначала загружает ее как обычно. В этот момент расширения SteamDB и Augmented Steam видят знакомый адрес, срабатывают и добавляют на страницу свои элементы.
Затем в дело вступает Ultimate Steam Enhancer. Он определяет, что страница заблокирована, и выполняет свой трюк: получает код незаблокированной страницы и полностью заменяет им содержимое текущей вкладки. В этот момент происходит ключевое событие: вся первоначальная страница (включая все элементы, добавленные SteamDB и Augmented Steam) безвозвратно уничтожается.
Для браузера мы не перешли на новую страницу - адрес в строке остался прежним. Поэтому у расширений нет сигнала и триггера, чтобы запуститься повторно. Они уже отработали один раз при первоначальной загрузке и не знают, что содержимое страницы было полностью подменено скриптом.
Это ограничение является важной частью системы безопасности браузера. Если бы один скрипт мог заставить другое, совершенно независимое расширение, выполнять свой код - это открыло бы путь для вредоносных действий. Поэтому все расширения и скрипты работают в своих изолированных “песочницах” и не могут командовать друг другом.
Таким образом, “виртуальный режим инкогнито” - это эффективный, но радикальный метод, который создает новую, чистую страницу, на которой могут работать только функции самого Ultimate Steam Enhancer, запущенные уже после подмены контента. Это является неизбежным компромиссом для обхода ограничений таким способом..
Не понимаю, о чём речь. Если и видел такое, то не помню, где именно.
Возможно. В качестве временного решения можно использовать пипетку какого-нибудь Ublock, чтобы избавиться от надоедливого элемента.
Спасибо автору.
Продублирую предложение: Возможность включить/отключить функцию “Виртуальный режим инкогнито” в меню.
Ещё предложение: добавить в агрегатор цен магазин ключей от МТС - rushbe.ru
Ultimate Steam Enhancer обновился до версии 2.1.1 — это обновление сфокусировано на добавлении новых опций для кастомизации и улучшении существующих модулей на основе отзывов.
Это обновление вносит ряд улучшений в существующий функционал.
Улучшения и нововведенияХочется видеть в сканере цен фильтры “gift, ключ, аккаунт” которые сохраняли бы свои настройки ещё. Дабы отсеивать эту шелуху виде аккаунтов. А то заходишь и ведешь весь этот хлам по 100, 150, 200р. Если выставлять фильтр цены это не удобно
Справа в агрегаторе цен есть пользовательский список исключений:

онлайн,оффлайн,dlc,аккаунт,ps4,xbox,digi361,ibloodrue,mangarded,siparisapp,multimarket,trustytop,cyber steam shop,boostgame,cloud-gaming.store,promarket88,offline,-seyter-,paul fox,sirdjinn,аренда,4ilgames,keks12,damhubmarket,nt-store,ps5,@mediasoft,dofamine game,hactier,alz0n,top-games,solo29,nerd shop,1gamestore,tobeclosertoyouПомимо добавления по слову через +, есть функция импорт и экспорта списка исключений (стрелочка ниже).
В описании функционала я оставил список рекомендуемых исключений (можно импортировать).
Пользователь может вносить отдельные слова или названия продавцов — они будут отфильтрованы.
В рекомендуемых исключениях уже внесена часть продавцов, которые занимаются продажей аккаунтов.
Нашёл ещё такой баг (скидка соответствует, а цена нет):
Также хочу предложить ещё два улучшения:
Сделал отдельный скрипт. В Ultimate Steam Enhancer встраивать не буду, так как этот скрипт работает вообще на всех сайтах (@match *://*/*), что является излишним для U.S.E.
Скрипт предназначен для решения одной конкретной задачи - разблокировки информационных виджетов Steam на сторонних сайтах (например, SteamDB), которые показывают ошибку из-за региональных ограничений.
- Он автоматически находит на любой странице виджеты от Steam.
- Скрипт сперва проверяет, действительно ли виджет заблокирован (ищет текст ошибки).
- Если блокировка подтверждена, он последовательно пытается разблокировать его, перебирая разные регионы (us, ch, kz, jp) и устанавливая русский язык (l=russian), пока не найдет рабочий вариант. || Можно добавить свой регион, делается так:const REGIONS_TO_TRY = ['us', 'ch', 'kz', 'jp'];меняется наconst REGIONS_TO_TRY = ['az', 'us', 'ch', 'kz', 'jp'];
- Если ни один из регионов не помог, виджет заменяется на информативное сообщение об ошибке.
- Скрипт обрабатывает как стандартный атрибут src, так и data-src, который используется для "ленивой загрузки" виджетов.
- Благодаря использованию MutationObserver, скрипт также отслеживает и исправляет виджеты, которые подгружаются на страницу динамически.
Установка- Убедитесь, что у вас установлено браузерное расширение Tampermonkey (или его аналог).
- Нажмите на значок расширения и выберите “Создать новый скрипт”
- Замените содержимое на открывшейся странице на скрипт ниже.
- Нажмите файл > сохранить.
Код скрипта (Версия 1.0)// ==UserScript==// @name Steam Widget Region Fix// @namespace http://tampermonkey.net/// @version 1.0// @description Находит заблокированные виджеты Steam, проверяет их содержимое и последовательно подбирает регион для разблокировки.// @author 0wn3df1x// @match *://*/*// @grant GM_xmlhttpRequest// @connect store.steampowered.com// @connect steamcommunity.com// @run-at document-idle// ==/UserScript==(function() { 'use strict'; const REGIONS_TO_TRY = ['us', 'ch', 'kz', 'jp']; const LANGUAGE = 'russian'; const ERROR_TEXT_MARKER = 'Невозможно загрузить информацию об этом предмете'; const FINAL_ERROR_MESSAGE = 'Не удаётся разблокировать виджет, все регионы проверены.'; const TARGET_URL_PART = 'store.steampowered.com/widget/'; const isUrlBlocked = (urlString) => { return new Promise((resolve) => { GM_xmlhttpRequest({ method: "GET", url: urlString, onload: function(response) { if (response.responseText && response.responseText.includes(ERROR_TEXT_MARKER)) { resolve(true); } else { resolve(false); } }, onerror: function() { resolve(true); } }); }); }; const createFallbackElement = () => { const fallback = document.createElement('div'); fallback.textContent = FINAL_ERROR_MESSAGE; fallback.style.cssText = ` display: flex; align-items: center; justify-content: center; width: 100%; min-height: 100px; background-color: #1b2838; color: #ff6b6b; font-family: 'Motiva Sans', sans-serif; font-size: 14px; text-align: center; border: 1px dashed #ff6b6b; padding: 10px; box-sizing: border-box; `; return fallback; }; const processIframe = async (iframe) => { if (iframe.dataset.steamWidgetProcessed) { return; } iframe.dataset.steamWidgetProcessed = 'true'; const originalUrl = iframe.src || iframe.dataset.src; if (!originalUrl || !originalUrl.includes(TARGET_URL_PART)) { return; } console.log(`[Steam Widget Fix] Проверяю виджет:`, iframe); const isInitiallyBlocked = await isUrlBlocked(originalUrl); if (!isInitiallyBlocked) { console.log(`[Steam Widget Fix] Виджет не заблокирован, пропускаю.`); return; } console.log(`[Steam Widget Fix] Виджет заблокирован. Начинаю подбор региона...`); for (const region of REGIONS_TO_TRY) { const url = new URL(originalUrl); url.searchParams.set('cc', region); url.searchParams.set('l', LANGUAGE); const newUrlString = url.toString(); console.log(`[Steam Widget Fix] -> Пробую регион: ${region} (${newUrlString})`); const isStillBlocked = await isUrlBlocked(newUrlString); if (!isStillBlocked) { console.log(`[Steam Widget Fix] УСПЕХ! Регион '${region}' работает. Обновляю iframe.`); if (iframe.src) iframe.src = newUrlString; if (iframe.dataset.src) iframe.dataset.src = newUrlString; return; } } console.error(`[Steam Widget Fix] НЕУДАЧА. Ни один из регионов не помог. Заменяю виджет.`); const fallbackElement = createFallbackElement(); if (iframe.parentNode) { iframe.parentNode.replaceChild(fallbackElement, iframe); } }; const observeAndProcess = () => { const selector = `iframe[src*="${TARGET_URL_PART}"], iframe[data-src*="${TARGET_URL_PART}"]`; document.querySelectorAll(selector).forEach(processIframe); const observer = new MutationObserver((mutations) => { for (const mutation of mutations) { for (const node of mutation.addedNodes) { if (node.nodeType === Node.ELEMENT_NODE) { if (node.matches(selector)) { processIframe(node); } else { node.querySelectorAll(selector).forEach(processIframe); } } } } }); observer.observe(document.documentElement, { childList: true, subtree: true }); }; observeAndProcess();})();С российского айпи не получается воспроизвести. С американского айпи тоже.
Со среднеазиатского воспроизводится на Gamersbase, т.е. при айпи той же Средней Азии он присылает долларовую цену вместо рублёвой.
Скрипт изначально ожидает, что цены, получаемые из сторонних магазинов указаны в рублях (RUB). Когда пользователь переключает режим отображения в доллары (USD), скрипт берет числовое значение цены (которое он считает рублями) и конвертирует его в доллары. Это приводит к результатам, как на скриншоте.
Я подшаманю GamersBase и SteamPay, чтобы они могли работать с долларовым приходом. Всё остальное по мере выявления. Каждый магазин - это отдельный модуль. Поэтому к каждому нужен свой подход, если с ним случается ошибка.
Ultimate Steam Enhancer обновился до версии 2.1.2 — это обновление сфокусировано на повышении удобства и надежности. Добавлены новые настройки автоматизации для «Агрегатора цен», улучшен механизм обхода региональных блокировок и доработана логика отображения данных в «Помощнике подарков».
Это обновление сфокусировано на повышении удобства и надежности. Добавлены новые настройки автоматизации для «Агрегатора цен», улучшен механизм обхода региональных блокировок и доработана логика отображения данных в «Помощнике подарков».
Улучшения и нововведения⚠️ Важно:
При включенной авто-подстановке для более точного поиска рекомендуется сокращать название.
Например, вместо "DEATH STRANDING DIRECTOR'S CUT" лучше оставить "DEATH STRANDING".
Добрый день, на эдже всё работает, но на Firefox и на violet и на tamper не даёт инкогнито сессию, вот логи:
[U.S.E. Unblocker] Не удалось получить cookies с текущей попытки. Заголовки ответа: Object { headers: "Server: nginx\r\n Content-Type: text/html; charset=UTF-8\r\n Expires: Mon, 26 Jul 1997 05:00:00 GMT\r\n Cache-Control: no-cache\r\n Content-Security-Policy: default-src blob: data: https: 'unsafe-inline' 'unsafe-eval'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://store.fastly.steamstatic.com/ https://recaptcha.net https://www.google.com/recaptcha/ https://www.gstatic.cn/recaptcha/ https://www.gstatic.com/recaptcha/ https://www.youtube.com/ https://s.ytimg.com https://js.hcaptcha.com; object-src 'none'; connect-src 'self' http://store.steampowered.com https://store.steampowered.com http://127.0.0.1:27060 ws://127.0.0.1:27060 https://community.fastly.steamstatic.com/ https://steamcommunity.com/ wss://community.steam-api.com/websocket/ https://api.steampowered.com/ https://login.steampowered.com/ https://help.steampowered.com/ https://steam.tv/ https://shared.fastly.steamstatic.com/ https://checkout.steampowered.com/; frame-src 'self' steam: http://www.youtube.com https://www.youtube.com https://www.google.com https://sketchfab.com https://player.vimeo.com https://steamcommunity.com/ https://login.steampowered.com/ https://help.steampowered.com/ https://checkout.steampowered.com/ https://www.google.com/recaptcha/ https://recaptcha.net/recaptcha/ https://*.hcaptcha.com; frame-ancestors 'none';\r\n X-Frame-Options: DENY\r\n Content-Encoding: gzip\r\n Vary: Accept-Encoding\r\n Strict-Transport-Security: max-age=10368000\r\n Content-Length: 37261\r\n Date: Thu, 26 Jun 2025 16:22:33 GMT\r\n Connection: keep-alive\r\n Set-Cookie: steamCountry=RU|[REDACTED]; path=/; secure; HttpOnly; SameSite=None\r\n Set-Cookie: browserid=[REDACTED]; expires=Fri, 26-Jun-2026 16:22:33 GMT; Max-Age=31536000; path=/; secure; SameSite=None\r\n Set-Cookie: sessionid=[REDACTED]; Path=/; Secure; SameSite=None\r\n"}Ниже будет обновление.
Ultimate Steam Enhancer обновился до версии 2.1.3 — это обновление является техническим и исправляет критическую ошибку в работе функции «Виртуальный режим „Инкогнито“», которая могла проявляться у пользователей Firefox.
Это техническое обновление, направленное на исправление критической ошибки в работе функции «Виртуальный режим „Инкогнито“». Значительно повышена надежность и совместимость, особенно для пользователей браузера Firefox.
ИсправленияUltimate Steam Enhancer — это мощный пользовательский скрипт для платформы Steam, расширяющий стандартные возможности магазина и сообщества. Он объединяет в себе функционал множества инструментов, предоставляя пользователю расширенный контроль и доступ к дополнительной информации об играх, ценах, переводах, обзорах, активности друзей и многом другом.
Что делает:
Важное замечание о зависимостях:
Отключение этого модуля приведет к автоматическому отключению или нарушению корректной работы модулей «Время прохождения (HLTB)», «Русификаторы (ZOG)» и «Время друзей / Глобальные достижения», так как они критически зависят от его функционала по отображению элементов на странице игры.
Что делает:
Добавляет компактный блок с информацией о времени прохождения игры, полученной с популярного сайта HowLongToBeat.com.
Показывает среднее время для разных стилей:
Рядом со временем указывается количество игроков, на чьих данных основана статистика.
Поиск игры в базе HLTB идет по названию, при неоднозначности предлагается выбор из похожих вариантов.
Что делает:
Добавляет блок с информацией о наличии русификаторов для игры на сайте ZoneOfGames.ru.
В блоке отображается:
Поиск происходит в реальном времени. Скрипт автоматически определяет название игры, выполняет поиск по алфавитному указателю на ZoneOfGames.ru и предлагает вам выбрать наиболее точное совпадение.
Что делает:
1. Плавающий блок статистики (у шапки игры)Добавляет на страницу игры два независимых блока, расширяющих информацию о действиях ваших друзей и глобальной статистике достижений.
Справа от изображения игры появляется компактный значок, при нажатии на который загружается и отображается сводная статистика:
Время друзей:
Глобальные достижения:
⚠️ Важное примечание:
Этот блок появляется только в том случае, если Steam не отображает на странице стандартный блок с рекомендациями друзей (например, на страницах, открытых с помощью виртуального режима инкогнито).
Скрипт добавляет в правую колонку подробный список друзей, взаимодействовавших с игрой, сгруппированный по категориям:
Каждая категория сопровождается сеткой из шести аватаров друзей со ссылками на их профили.
Что делает:
Показывает небольшую плашку над изображением игры с информацией о статусе раннего доступа (Early Access).
(например, "В раннем доступе уже 1 год и 3 месяца").
(например, "Вышла спустя 2 года раннего доступа").
Расчет времени динамический. Использует даты со страницы Steam.
А также может подтягивать дату старта раннего доступа из собственной базы для вышедших игр, если Steam ее не показывает.
Что делает:
Добавляет кнопку "Анализатор цен" на страницу игры. Этот инструмент позволяет анализировать региональные цены двумя способами:
в рублях (по умолчанию) и в долларах США (переключаемый режим).
После нажатия кнопки "Сбор данных" в специальном окне, модуль выполняет следующее в зависимости от выбранного режима:
Примечание: Если игра в США бесплатна или цена для нее не найдена, возможности анализа в обоих режимах могут быть ограничены. Вся собранная информация представляется в модальном окне.
Важная информация:
Каждый полный сбор данных подразумевает отправку ~41 запроса к серверам Steam (точное количество зависит от числа доступных регионов). Пожалуйста, используйте эту функцию обдуманно. Частое нажатие кнопки на разных играх в течение короткого периода времени может привести к временному ограничению доступа к API Steam (обычно на 5-15 минут).
Что делает:
Добавляет кнопку "Plati" рядом с кнопкой "В желаемое" на странице игры.
Нажатие открывает полноэкранное окно для поиска предложений по этой игре на торговой площадке Plati.Market.
Возможности окна поиска:
Используются официальные API Plati.Market.
Что делает:
Добавляет кнопку "%" рядом с кнопкой "В желаемое" на странице игры.
Нажатие открывает модальное окно с ценами на эту игру из различных цифровых магазинов.
Возможности окна агрегатора:
Нажмите кнопку импорта (→) и вставьте в появившееся окно следующий текст:
онлайн,оффлайн,dlc,аккаунт,ps4,xbox,digi361,ibloodrue,mangarded,siparisapp,multimarket,trustytop,cyber steam shop,boostgame,cloud-gaming.store,promarket88,offline,-seyter-,paul fox,sirdjinn,аренда,4ilgames,keks12,damhubmarket,nt-store,ps5,@mediasoft,dofamine game,hactier,alz0n,top-games,solo29,nerd shop,1gamestore,tobeclosertoyouИспользует различные методы для получения цен (API, парсинг HTML).
Что делает:
Добавляет кнопку "GIFT" в блок с кнопкой "В желаемое" на странице игры.
Нажатие открывает окно, где можно:
Использует те же механизмы получения цен и курсов валют, что и помощник для списка желаемого.
Что делает:
Расширяет функционал страницы поиска по каталогу Steam (store.steampowered.com/search/).
При наведении:
издатели, разработчики, серия, отзывы (% и кол-во), статус раннего доступа, поддержка языков, первые 5 меток, краткое описание.
Фильтры (панель справа):
(сами DLC подсвечиваются фиолетовым фоном).
Фильтры применяются динамически по мере получения данных от API.
Что делает:
Добавляет инструменты для массового скрытия неинтересующих игр прямо со страницы поиска по каталогу.
Элементы интерфейса:
Принцип работы:
В отличие от стандартного механизма Steam, элементы полностью удаляются из DOM, что улучшает производительность при работе с большим количеством результатов.
Внимание: Рекомендуется использовать только при необходимости массового скрытия.
Для обычного просмотра каталога лучше отключать эту опцию.
Что делает:
Добавляет всплывающую подсказку при наведении на название игры в вашей ленте активности Steam (steamcommunity.com/my/home).
Подсказка содержит подробную информацию об игре, аналогичную той, что показывается в каталоге поиска:
Данные загружаются через API Steam.
Что делает:
Добавляет блок "Рулетка Stelicas" на страницу вашей активности Steam (steamcommunity.com/my/home). Позволяет загрузить CSV-файл, сгенерированный приложением Stelicas, применить к нему разнообразные фильтры и случайным образом выбрать игру из вашей коллекции.
Возможности:
Как пользоваться:
Примечание: Качество работы и полнота информации в рулетке напрямую зависят от корректности и актуальности данных в предоставленном CSV-файле из Stelicas.
Что делает:
Полностью автоматизирует просмотр страниц Steam, недоступных в вашем регионе, без необходимости использования VPN, прокси или ручных манипуляций с URL.
Принцип работы:
Преимущества и настройки:
Что делает:
Добавляет информационный блок на страницу предмета на торговой площадке Steam (steamcommunity.com/market/).
Блок содержит:
Данные загружаются через API истории цен Steam.
Что делает:
Отслеживает изменения в вашем списке желаемого Steam и в вашей библиотеке игр, отображает календарь релизов.
Основные функции:
Требует авторизации. Обработка больших списков/библиотек может занять время. Используйте новые опции в настройках для ускорения сканирования библиотеки.
Что делает:
Добавляет значок лупы. Позволяет определить, какие игры можно подарить друзьям в других регионах.
Основные функции:
(с цветовой индикацией: зелёный - можно дарить (разница до ±10%), красный - нельзя).
Это помогает легко найти подходящие и экономически целесообразные подарки для друзей за границей.
Скорость загрузки данных зависит от размера списка желаемого.
Что делает:
Позволяет гибко управлять отображением новостей в новостном центре Steam (store.steampowered.com/news/), скрывая неинтересные материалы.
Основные возможности и использование:
Для настройки отдельных модулей скрипта и их параметров используйте меню настроек U.S.E.
Оно находится в выпадающем меню вашего профиля Steam (в правом верхнем углу), как показано ниже:
В открывшемся окне настроек вы сможете включать или отключать модули скрипта:
Также в меню настроек доступны следующие опции:
Если включено, блок с информацией о времени прохождения (HLTB) на странице игры будет автоматически раскрываться при загрузке страницы (если основной модуль HLTB включен).
Удобно, если вы всегда хотите видеть эту информацию без лишнего щелчка.
Если включено, блок с дополнительными обзорами (Тотальные, Безкитайские, Русские) на странице игры будет загружаться автоматически при загрузке страницы (если основной модуль 'Индикаторы/Обзоры' включен).
Экономит щелчок, если вам всегда нужна эта статистика.
Функция для переводчиков и интересующихся. Если включено, в блоках дополнительной информации (в каталоге при наведении и в ленте активности при наведении) будет также отображаться информация о поддержке английского языка (интерфейс, озвучка, субтитры), аналогично русскому.
По умолчанию эта информация скрыта для экономии места.
Если опция включена, при открытии модального окна Агрегатора цен (%) сбор предложений из магазинов начнется автоматически, без необходимости нажимать кнопку "Обновить %".
Это удобно, если вы всегда хотите сразу видеть актуальные цены при каждом открытии окна.
Если опция включена, после завершения сбора данных (как ручного, так и автоматического) название текущей игры будет автоматически вставлено в поле фильтра по названию.
⚠️ Важно:
Для более точного поиска рекомендуется сокращать подставленное название. Например, вместо "DEATH STRANDING DIRECTOR'S CUT" лучше оставить только "DEATH STRANDING". Это поможет найти предложения, где продавцы могли изменить или сократить название, например, "Death Stranding (Director's Cut)" или "Death Stranding D.C.".
Эта секция позволяет управлять функцией обхода региональных блокировок.
Не работает, последний Хром. Установил через копирование текста самого скрипта. На странице игр в стиме видно, что скрипт включён, но в меню пользователя нет U.S.E. Не понимаю, в чём дело.
chrome://extensions
включен режим разработчика
https://greasyfork.org/en/scripts/526180-ultimate-steam-enhancer
Если у вас Tampermonkey Beta (Или даже обычная версия из Chrome store), включен режим разработчика, а скрипт не работает — скорее всего вы зацепили что-то лишнее при копировании, или наоборот конец или начало потерялось при копировании.
Проверял последнюю версию скрипта:
По ctrl+shift+с висит ошибка:
Прослушиватели событий выгрузки устарели и будут удалены.
Установил по кнопке. И даже переустановил — всё равно без изменений :(.
Ошибка “Прослушиватели событий выгрузки устарели...” относится к очень старой версии библиотеки jQuery (1.8.3), которую использует сам сайт Steam. Эта ошибка не связана с работой пользовательского скрипта
Гипотетически может быть конфликт с какими-то другими расширениями, если они установлены. Есть мессенджер или Steam? А то тут долго выяснять.
Отключил всё — не помогло.
Код дружбы — в личке.
Отключил всё — не помогло.
Код дружбы — в личке.
Разобрались: в настройках расширения Tampermonkey надо включить галочку
Важная информация для пользователей Google Chrome (версии 138 и новее)
Если вы столкнулись с тем, что скрипт перестал работать (особенно после переустановки/обновления браузера или расширения Tampermonkey), пожалуйста, ознакомьтесь с информацией ниже.
Начиная с версии 138, Google внедрила новый, более строгий механизм безопасности для браузера Chrome. Ранее для работы пользовательских скриптов достаточно было включить общий "Режим разработчика" в настройках расширений.
Теперь эта логика изменена. Google считает глобальный переключатель небезопасным и заменила его на индивидуальное разрешение для каждого расширения. Для всех новых установок расширений, способных выполнять скрипты (как Tampermonkey), это разрешение по умолчанию выключено.
Именно поэтому после чистой установки или переустановки Tampermonkey скрипт U.S.E. может не работать — браузер просто не дает расширению права на выполнение кода.
Необъяснимо, но факт: расширение Hot.Game+ работает в "виртуальном режиме инкогнито". Но почему-то только с этой игрой:



В любом случае, возможно ли добавить в "виртуальный режим инкогнито" эти три функции со скриншотов (код для них можно взять из соответствующих расширений):
Скорее всего, у этого расширения есть какой-то затуп конкретно с этой страницей, из-за чего оно прогружается с запозданием и, следовательно, работает.
Вот эту функцию не получится добавить. О связи со SteamDB отвечал на странице расширения, повторю здесь:
Основная проблема со SteamDB связана со следующим правилом сайта:
Перевод: SteamDB - это некоммерческий проект, который поддерживается силами энтузиастов. Обслуживание сайта уже отнимает у нас массу времени и сил. Разработка качественного API - это не только колоссальный труд, но и создание рисков для злоупотреблений, , бороться с которыми у нас нет возможностей. По этой же причине мы запрещаем автоматический сбор данных (скрапинг и парсинг) с нашего сайта. Рекомендуем вам получать всю информацию напрямую из Steam.
Официальный плагин SteamDB использует собственный эндпоинт ExtensionAppPrice. Он используется только для получения данных о минимальных ценах на страницах игр, т.е. он работает с одиночными запросами без батчей.
P.S. С недавних пор добавился дополнительный слой защиты. Т.е. эндпоинт отдаёт данные только расширениям по типу собственного расширения SteamDB, там дополнительные проверки со стороны сервера. При попытке получить данные через Userscript или даже через консоль или адресную строку, сервер сразу считает это за попытку скрапинга.
P.S.2. Борьба со скрапингом, кстати, касается самого расширения. Когда человек открывает много страниц с играми за короткий промежуток времени - сервер блокирует получение цен даже через официальное расширение, воспринимая это как попытку скраппинга. Хотя это касается и прямого взаимодействия со SteamDB. Если всерьёз взяться за изучение страниц игр, переходя по ссылкам на самом SteamDB или используя его поисковую систему для изучения той же истории изменений - он аналогично повесит временный блок, считая это попыткой скрапинга. Всё жёстко, короче говоря.
В старой версии скрипта использовался агрегатор VGTimes.
После появления функции агрегатора цен — другие агрегаторы были исключены (в том числе для того, чтобы не было проблем с правами и прочим).
На данный момент наш агрегатор имеет более обширный охват магазинов, чем любой другой, а следовательно предоставляет гораздо больше информации о выгодных предложениях. В нём есть магазины с ценами гораздо ниже.
В перспективе могу попробовать добавить отсутствующие у нас:
(Иностранные площадки, которые не принимают СБП/российские карты и т.д. не добавляю).
С этой функцией нужно подумать. Добавить поиск этих элементов на странице, если нет — добавлять в том же виде.
Ultimate Steam Enhancer обновился до версии 2.1.4 — в этой версии было добавлено несколько новых функций, улучшена работа существующих модулей и расширен список поддерживаемых магазинов.
В этой версии было добавлено несколько новых функций, улучшена работа существующих модулей и расширен список поддерживаемых магазинов.
Новые возможностиЧто это? Этот модуль автоматически добавляет на страницы игр в магазине и сообществе Steam недостающие кнопки со ссылками на полезные ресурсы.
Какие ссылки добавляются?
Почему это важно? Модуль особенно полезен на страницах, открытых в «виртуальном режиме инкогнито», где другие расширения (например, Augmented Steam или официальное расширение SteamDB), добавляющие аналогичные кнопки, могут не работать. Кроме того, Steam часто скрывает кнопку перехода в магазин для игр, недоступных в вашем регионе, и этот модуль восстанавливает её, избавляя от необходимости искать обходные пути.
Что это? Фоновый модуль, который автоматически исправляет встроенные виджеты Steam (например, на форумах или в ленте активности), если они заблокированы в вашем регионе.
Как это работает? Скрипт обнаруживает заблокированный виджет и пытается перезагрузить его, используя регионы из настроек «Инкогнито». Теперь вы будете знать, что за игра скрывалась за надписью о недоступности, без необходимости изучать код страницы.
Почему это важно? Вместо сообщения об ошибке вы увидите полноценный виджет с информацией об игре, как если бы он не был заблокирован.
Правила отправки подарков были скорректированы для более точного соответствия механизмам Steam.
Ultimate Steam Enhancer — это мощный пользовательский скрипт для платформы Steam, расширяющий стандартные возможности магазина и сообщества. Он объединяет в себе функционал множества инструментов, предоставляя пользователю расширенный контроль и доступ к дополнительной информации об играх, ценах, переводах, обзорах, активности друзей и многом другом.
Что делает:
Важное замечание о зависимостях:
Отключение этого модуля приведет к автоматическому отключению или нарушению корректной работы модулей «Время прохождения (HLTB)», «Русификаторы (ZOG)» и «Время друзей / Глобальные достижения», так как они критически зависят от его функционала по отображению элементов на странице игры.
Что делает:
Добавляет компактный блок с информацией о времени прохождения игры, полученной с популярного сайта HowLongToBeat.com.
Показывает среднее время для разных стилей:
Рядом со временем указывается количество игроков, на чьих данных основана статистика.
Поиск игры в базе HLTB идет по названию, при неоднозначности предлагается выбор из похожих вариантов.
Что делает:
Добавляет блок с информацией о наличии русификаторов для игры на сайте ZoneOfGames.ru.
В блоке отображается:
Поиск происходит в реальном времени. Скрипт автоматически определяет название игры, выполняет поиск по алфавитному указателю на ZoneOfGames.ru и предлагает вам выбрать наиболее точное совпадение.
Что делает:
1. Плавающий блок статистики (у шапки игры)Добавляет на страницу игры два независимых блока, расширяющих информацию о действиях ваших друзей и глобальной статистике достижений.
Справа от изображения игры появляется компактный значок, при нажатии на который загружается и отображается сводная статистика:
Время друзей:
Глобальные достижения:
⚠️ Важное примечание:
Этот блок появляется только в том случае, если Steam не отображает на странице стандартный блок с рекомендациями друзей (например, на страницах, открытых с помощью виртуального режима инкогнито).
Скрипт добавляет в правую колонку подробный список друзей, взаимодействовавших с игрой, сгруппированный по категориям:
Каждая категория сопровождается сеткой из шести аватаров друзей со ссылками на их профили.
Что делает:
Показывает небольшую плашку над изображением игры с информацией о статусе раннего доступа (Early Access).
(например, "В раннем доступе уже 1 год и 3 месяца").
(например, "Вышла спустя 2 года раннего доступа").
Расчет времени динамический. Использует даты со страницы Steam.
А также может подтягивать дату старта раннего доступа из собственной базы для вышедших игр, если Steam ее не показывает.
Что делает:
Добавляет кнопку "Анализатор цен" на страницу игры. Этот инструмент позволяет анализировать региональные цены двумя способами:
в рублях (по умолчанию) и в долларах США (переключаемый режим).
После нажатия кнопки "Сбор данных" в специальном окне, модуль выполняет следующее в зависимости от выбранного режима:
Примечание: Если игра в США бесплатна или цена для нее не найдена, возможности анализа в обоих режимах могут быть ограничены. Вся собранная информация представляется в модальном окне.
Важная информация:
Каждый полный сбор данных подразумевает отправку ~41 запроса к серверам Steam (точное количество зависит от числа доступных регионов). Пожалуйста, используйте эту функцию обдуманно. Частое нажатие кнопки на разных играх в течение короткого периода времени может привести к временному ограничению доступа к API Steam (обычно на 5-15 минут).
Что делает:
Добавляет кнопку "Plati" рядом с кнопкой "В желаемое" на странице игры.
Нажатие открывает полноэкранное окно для поиска предложений по этой игре на торговой площадке Plati.Market.
Возможности окна поиска:
Используются официальные API Plati.Market.
Что делает:
Добавляет кнопку "%" рядом с кнопкой "В желаемое" на странице игры.
Нажатие открывает модальное окно с ценами на эту игру из различных цифровых магазинов.
Возможности окна агрегатора:
Нажмите кнопку импорта (→) и вставьте в появившееся окно следующий текст:
онлайн,оффлайн,аккаунт,ps4,xbox,digi361,ibloodrue,mangarded,siparisapp,multimarket,trustytop,cyber steam shop,boostgame,cloud-gaming.store,promarket88,offline,-seyter-,paul fox,sirdjinn,аренда,4ilgames,keks12,damhubmarket,nt-store,ps5,@mediasoft,dofamine game,hactier,alz0n,top-games,solo29,nerd shop,1gamestore,tobeclosertoyou,artbook,pack,havengames,soundtrack,seller-dealer,veryfastshop,namcogames,galaxylink,alex_lin,voronpb,infinity store,gamesstoregg,sallerok,ivi seller,pixel play,unlockonline,9paco,lifeda,kalinowskystore,gamershouse,thundergames,x4,jolly roger,f0cus,mando,big-kyl,ps3,ooh wee game,freshaccountsell,im6ot market,ghondik,kostet624,epic store,egsИспользует различные методы для получения цен (API, парсинг HTML).
Что делает:
Добавляет кнопку "GIFT" в блок с кнопкой "В желаемое" на странице игры.
Нажатие открывает окно, где можно:
Логика проверки: Модуль учитывает, что цена в регионе получателя не должна превышать цену в регионе дарителя более чем на 15%. Этот порог учитывает возможные расхождения в курсах конвертации, используемых Steam. Проверка в обратную сторону (когда цена у дарителя значительно выше) была убрана для более точного соответствия текущей политике Steam.
Что делает:
Расширяет функционал страницы поиска по каталогу Steam (store.steampowered.com/search/).
При наведении:
издатели, разработчики, серия, отзывы (% и кол-во), статус раннего доступа, поддержка языков, первые 5 меток, краткое описание.
Фильтры (панель справа):
(сами DLC подсвечиваются фиолетовым фоном).
Фильтры применяются динамически по мере получения данных от API.
Что делает:
Добавляет инструменты для массового скрытия неинтересующих игр прямо со страницы поиска по каталогу.
Элементы интерфейса:
Принцип работы:
В отличие от стандартного механизма Steam, элементы полностью удаляются из DOM, что улучшает производительность при работе с большим количеством результатов.
Внимание: Рекомендуется использовать только при необходимости массового скрытия.
Для обычного просмотра каталога лучше отключать эту опцию.
Что делает:
Добавляет всплывающую подсказку при наведении на название игры в вашей ленте активности Steam (steamcommunity.com/my/home).
Подсказка содержит подробную информацию об игре, аналогичную той, что показывается в каталоге поиска:
Данные загружаются через API Steam.
Что делает:
Добавляет блок "Рулетка Stelicas" на страницу вашей активности Steam (steamcommunity.com/my/home). Позволяет загрузить CSV-файл, сгенерированный приложением Stelicas, применить к нему разнообразные фильтры и случайным образом выбрать игру из вашей коллекции.
Возможности:
Как пользоваться:
Примечание: Качество работы и полнота информации в рулетке напрямую зависят от корректности и актуальности данных в предоставленном CSV-файле из Stelicas.
Что делает:
Полностью автоматизирует просмотр страниц Steam, недоступных в вашем регионе, без необходимости использования VPN, прокси или ручных манипуляций с URL.
Принцип работы:
Преимущества и настройки:
Что делает:
Добавляет информационный блок на страницу предмета на торговой площадке Steam (steamcommunity.com/market/).
Блок содержит:
Данные загружаются через API истории цен Steam.
Что делает:
Отслеживает изменения в вашем списке желаемого Steam и в вашей библиотеке игр, отображает календарь релизов.
Основные функции:
Требует авторизации. Обработка больших списков/библиотек может занять время. Используйте новые опции в настройках для ускорения сканирования библиотеки.
Что делает:
Добавляет значок лупы. Позволяет определить, какие игры можно подарить друзьям в других регионах.
Основные функции:
(с цветовой индикацией: зелёный - можно дарить, красный - нельзя).
Это помогает легко найти подходящие и экономически целесообразные подарки для друзей за границей.
Скорость загрузки данных зависит от размера списка желаемого.
Что делает:
Позволяет гибко управлять отображением новостей в новостном центре Steam (store.steampowered.com/news/), скрывая неинтересные материалы.
Основные возможности и использование:
Что делает: Добавляет недостающие кнопки со ссылками на полезные ресурсы прямо в блок с официальными ссылками на странице игры.
Работает на страницах как в магазине Steam, так и в сообществе.
Добавляемые кнопки:
Почему это важно? Модуль особенно полезен на страницах, открытых в «виртуальном режиме инкогнито», где другие расширения (например, Augmented Steam или официальное расширение SteamDB), добавляющие аналогичные кнопки, могут не работать. Кроме того, Steam часто скрывает кнопку перехода в магазин для игр, недоступных в вашем регионе, и этот модуль восстанавливает её, избавляя от необходимости искать обходные пути.
Что делает: Данный модуль работает в фоновом режиме на любой странице и автоматически исправляет встроенные виджеты Steam (например, при вставке ссылки на игру на форуме или в ленте активности), которые могут быть заблокированы в вашем регионе.
Принцип работы:
Почему это важно? Теперь вы будете знать, что за игра скрывалась за надписью о недоступности в регионе, без необходимости изучать код страницы. Вместо сообщения об ошибке вы увидите полноценный виджет с информацией об игре, как если бы он не был заблокирован.
Для настройки отдельных модулей скрипта и их параметров используйте меню настроек U.S.E.
Оно находится в выпадающем меню вашего профиля Steam (в правом верхнем углу), как показано ниже:
В открывшемся окне настроек вы сможете включать или отключать модули скрипта:
Также в меню настроек доступны следующие опции:
Если включено, блок с информацией о времени прохождения (HLTB) на странице игры будет автоматически раскрываться при загрузке страницы (если основной модуль HLTB включен).
Удобно, если вы всегда хотите видеть эту информацию без лишнего щелчка.
Если включено, блок с дополнительными обзорами (Тотальные, Безкитайские, Русские) на странице игры будет загружаться автоматически при загрузке страницы (если основной модуль 'Индикаторы/Обзоры' включен).
Экономит щелчок, если вам всегда нужна эта статистика.
Функция для переводчиков и интересующихся. Если включено, в блоках дополнительной информации (в каталоге при наведении и в ленте активности при наведении) будет также отображаться информация о поддержке английского языка (интерфейс, озвучка, субтитры), аналогично русскому.
По умолчанию эта информация скрыта для экономии места.
Если опция включена, при открытии модального окна Агрегатора цен (%) сбор предложений из магазинов начнется автоматически, без необходимости нажимать кнопку "Обновить %".
Это удобно, если вы всегда хотите сразу видеть актуальные цены при каждом открытии окна.
Если опция включена, после завершения сбора данных (как ручного, так и автоматического) название текущей игры будет автоматически вставлено в поле фильтра по названию.
⚠️ Важно:
Для более точного поиска рекомендуется сокращать подставленное название. Например, вместо "DEATH STRANDING DIRECTOR'S CUT" лучше оставить только "DEATH STRANDING". Это поможет найти предложения, где продавцы могли изменить или сократить название, например, "Death Stranding (Director's Cut)" или "Death Stranding D.C.".
Эта секция позволяет управлять функцией обхода региональных блокировок.
Не первый раз замечаю, агрегатор цен — иногда на сервисе купикод показывает самую выгодную цену (на ключ/гифт), но если перейти на страницу товара в этом сервисе — то такой цены для ру региона нет...
Это нормально.
Проблема заключается в том, как магазин Kupikod предоставляет информацию о ценах через свой программный интерфейс (API), который и использует наш агрегатор.
Вот пример:
Ключевой момент в том, что API магазина Kupikod возвращает цену в рублях, даже если товар недоступен для покупки в российском регионе.
Как мы знаем (и видим на странице Red Dead Redemption), для региона "Россия" стоит пометка "Недоступно в выбранном регионе", но рядом всё равно отображается цена в рублях (673₽).
Это происходит потому, что система Kupikod, вместо того, чтобы поставить в российскую цену NULL (тогда было бы понятно, что в России игра недоступна), автоматически подставляет цену из самого дешёвого доступного региона и отдаёт её в API. Почему так - неизвестно.
А поскольку агрегатор цен работает с теми данными, которые ему предоставляет магазин, у него нет способа догадаться, что цена в поле rub - это цена не для России, а дублирование из другого самого дешевого региона.
Да, можно было бы после получения ответа от API дополнительно запрашивать страницу каждого предложенного товара (а их может быть несколько, потому что при поиске по названию магазин может возвращать от одного до десятка вариантов), анализировать её HTML-код, и искать там информацию о региональных ограничениях. Но это удар по оптимизации и стабильности парсера.
Важно понимать, что агрегатор - это в первую очередь мощный информационный инструмент, задача которого - собрать в одном месте максимум предложений из разных источников, чтобы предоставить пользователю полную картину рынка.
Из коробки агрегатор может показать сотни вариантов, включая не самые релевантные, вроде аренды аккаунтов. Именно для этого в его правой панели предусмотрена гибкая система исключений. Пользователь может отсеять "мусор", добавив в фильтр ключевые слова типа “оффлайн”, “аренда” или даже названия конкретных продавцов, которые занимаются только арендой аккаунтов. (В описании скрипта есть мой личный список продавцов и исключений, его можно импортировать и затем пополнять своими вариантами.)
Когда первичное пространство очищено, пользователь остается с более релевантными предложениями. Дальше - больше возможностей для уточнения. Хочет конкретное издание? Просто вводит в фильтр по названию слово “Deluxe” или “Ultimate”, и предложения мгновенно отфильтруются.
Затем начинается ручной отбор, но уже из узкого круга кандидатов. Пользователь быстро просматривает результаты, отбрасывая глазами ненужные DLC, и доходит до базовой игры. Здесь и происходит реальная экономия времени: вместо того чтобы вручную открывать 10+ магазинов, сравнивать цены, записывая их на листочек, пользователь видит все варианты в одном окне.
Да, может оказаться, что самое дешевое предложение после перехода содержит пометку "Весь мир (No RU)", т.е. недоступно в России. Но уже следующее за ним, возможно, будет именно тем, что нужно - с глобальным ключом, который активируется и в России.
В этом и заключается основная цель агрегатора: собрать всё, что возможно, дать инструменты для фильтрации и позволить принять взвешенное решение на основе самой полной информации.
Ultimate Steam Enhancer обновился до версии 2.1.5.
Многие из нас сталкивались с несовершенством системы меток в Steam. Разработчик может указать до 20 меток для своей игры, из которых первые 5 считаются основными и наиболее весомыми. При этом сообщество игроков может голосовать и влиять на положение этих меток в общем списке, повышая или понижая их релевантность.
В теории это звучит неплохо, но на практике система часто даёт сбой. Из-за шутников или скоординированных "рейдов" игры начинают получать метки, которые совершенно их не характеризуют. В результате милая головоломка про котят может внезапно получить тег «Психологический хоррор», а хардкорный симулятор выживания — метку «Казуальная игра».
Эти «шуточные» метки обычно не имеют большого веса, но всё равно попадают в двадцатку. Из-за этого, когда вы ищете в магазине хорроры, Steam подсовывает вам ту самую игру про котят, а в подборку казуальных игр попадает хардкорный выживач. Это засоряет поиск и мешает находить то, что действительно нужно.
Чтобы решить эту проблему и вернуть контроль над поиском в ваши руки, я добавил в скрипт новый инструмент — «Умные метки».
Его суть проста: он позволяет фильтровать игры не просто по наличию метки, а по её весомости. Теперь вы можете сказать скрипту: «Покажи мне только те игры, где метка „Рогалик“ входит в топ-7 самых релевантных». Это позволяет мгновенно отсечь все проекты, где этот тег был добавлен случайно или ради шутки и не является для игры определяющим. Точно так же вы можете и полностью скрыть игры, имеющие определённые метки, чтобы они не мешались в результатах.
С этим обновлением ваш поиск станет значительно чище и точнее.
Новые возможностиЧто это? В панель фильтров на странице поиска по каталогу добавлена новая секция «Умные метки». Этот инструмент даёт беспрецедентный контроль над результатами поиска.
Как это работает?
Фильтры можно легко перетаскивать между секциями, чтобы быстро менять логику отбора.
Что это? Та же самая система фильтрации по меткам доступна и в «Помощнике подарков» для вашего списка желаемого.
Почему это важно?
Кнопка «Умные метки...» добавлена в раскрывающуюся панель фильтров.
Ultimate Steam Enhancer обновился до версии 2.1.6.
Крупное обновление для Агрегатора цен (%), добавляющее инструменты для уточнения поиска, гибкой фильтрации по названию и улучшения удобства использования.
Новые возможностиЧто это? В шапке агрегатора появилась новая кнопка со значком карандаша. Она открывает инструмент для точной настройки поиска.
Как это работает?
Этот инструмент позволяет отсекать лишнее и находить самые выгодные предложения на нужную вам версию игры.
Что это? Фильтр по названию теперь поддерживает логические операторы {и}, {или}, {не} для создания сложных и точных запросов.
Что это? Функция импорта списка исключений теперь предлагает два режима, делая управление вашими фильтрами более гибким.
Что это? В правом верхнем углу окна агрегатора добавлена кнопка сворачивания (—). Она позволяет временно скрыть окно, не теряя результаты поиска.
Как это работает?
Сравнение агрегатора цен из Ultimate Steam Enhancer с другими российскими агрегаторами на примере поиска цены на Indiana Jones and the Fate of Atlantis
Цены начинаются со 119 рублей, но есть нюанс: Gaminvo и HRK Games не ведут дела в России и россиянин не может заплатить на этих ресурсах не вывернувшись наизнанку и не теряя средств на конвертациях.
Реальная цена на Wyrel c комиссией — 344 рубля.
Смена региона выдаёт цену в недоступных для россиян магазинах:
Цены нет.
Реальная цена в GOG - 539 рублей. Roxen прекратил работу в 2022-м году.
Реальная цена на SteamBuy — 389 рублей.
Здесь, если потрудиться найти доступный промокод для KFG, цена будет 299 рублей.
Итого, во всех известных агрегаторах приобретение игры обойдётся минимум в 299 рублей.
А теперь данные из агрегатора Ultimate Steam Enhancer:

Минимальная цена — 199 рублей.