Skip to content

Releases: Xilleet/ScreenTale

ScreenTale v0.7-beta

Choose a tag to compare

@Xilleet Xilleet released this 06 Oct 12:36

Крупнейшее обновление ScreenTale с момента создания проекта! Полностью переосмыслил опыт взаимодействия с переводом в играх: встречайте режим In-Place (AR-Canvas), который замещает переводимый текст прямо поверх интерфейса игры без внедрения в память и без риска бана от античитов.


Главные новшества

1. Движок замещения (Adaptive AR-Canvas)

Больше никаких громоздких окон, перекрывающих геймплей. Новый режим In-Place проецирует перевод ровно на место оригинальных надписей:

  • Zero-Risk для античитов (100% безопасность): Отрисовка происходит через прозрачный системный слой Windows без DLL-инжектов и хуков DirectX/Vulkan. Easy Anti-Cheat, BattlEye и Vanguard абсолютно спокойны.
  • Сквозное управление: Игрок свободно кликает мышью сквозь переведённый текст в интерфейс игры.
  • Маскировка оригинала (Smart Tint): Алгоритм замеряет цвет фона по 4 углам текстового блока с отступом 3 px и заливает матовую подложку в тон диалогового окна игры или листа манги.
  • Бинарный авто-подбор шрифта: Кегль русского текста автоматически рассчитывается за микросекунды, чтобы перевод идеально вписался в оригинальный баббл. Если русский текст длиннее — плашка адаптивно увеличивается вниз.
  • Пространственная геометрия: Текст умеет наклоняться под углом оригинального арта игры (для стилизованных интерфейсов вроде Persona 5 и диагональных бабблов манги).
  • Мгновенное закрытие по ПКМ: Достаточно кликнуть правой кнопкой мыши в любой момент, чтобы убрать перевод с экрана раньше таймера.

2. Привязка к играм (Discord-Style) и умный Alt+Tab

ScreenTale теперь понимает, в какую именно игру вы играете:

  • Выбор активной игры в 1 клик: В левом сайдбаре доступно быстрое меню запущенных окон с глубокой Win32-фильтрацией (отсекает оверлеи NVIDIA, фоновые системные процессы и всплывашки).
  • Честные границы DWM: Захват считывает видимые границы окна игры без 7-пиксельных системных теней Windows 10/11.
  • Умный Alt+Tab: Свернули игру или переключились в Discord/браузер? Оверлей мгновенно прячется, не мешая работе за ПК. Вернулись в игру — перевод снова активен.
  • 1-Click перевод по Alt+Q: Если игра привязана, нажимать и тянуть рамку мышкой для выделения текста больше не нужно — окно игры сканируется и переводится мгновенно по одному нажатию клавиши.

3. Точечный перевод фраз по Ctrl + ЛКМ

Нужно перевести только один непонятный скилл или конкретную реплику без перевода всего экрана?

  • Зажмите Ctrl и кликните левой кнопкой мыши по любому слову внутри предложения.
  • Алгоритм пространственной кластеризации (cluster_lines) сам поймет границы диалогового баббла, переведёт всю фразу целиком и выведет аккуратную плашку ровно над ней, оставив весь остальной экран нетронутым.

4. Глобальный переключатель режимов и Режим Стримера

  • Новый переключатель в сайдбаре: Легко переключайтесь между [ Окно-чат ] (для неспешного чтения длинного лора с историей) и [ In-Place ] (для чистого погружения в геймплей).
  • Режим стримера (Streamer Mode): Тумблер в Настройках активирует системную защиту. При включении оверлей виден только вам на мониторе, но полностью скрыт от трансляций в OBS, Discord и скриншотов. При выключении — они снова захватывают перевод без проблем.

Оптимизации и стабильность

  • Плавные анимации окон: Окно настроек получило анимации сворачивания и разворачивания (Fade-In + Slide-Up) при взаимодействии с Панелью задач и системным треем.
  • Ленивая загрузка PyTorch: PyTorch больше не импортируется на старте программы (только при выборе переводчиков seq2seq - opus и nllb), устранив 3-секундный фриз запуска и сэкономив ~1 ГБ RAM при использовании LLM (GGUF) или онлайн-переводчиков.
  • Замок инференса: Авто-режим больше не заваливает очередь дублями запросов, пока локальная нейросеть занята генерацией ответа.
  • Адаптивный установщик Windows OCR: Новая информативная плашка с псевдо-терминалом и установкой языковых компонентов в 1 клик через PowerShell (без захламления раскладки клавиатуры лишними языками).
  • Нативная мультимониторность: Добавлен флаг all_screens=True для корректного захвата отрицательных координат на дополнительных мониторах.

Внутренние улучшения (Под капотом)

  • Автоматический тестовый раннер (test_suite.py): Добавлен комплексный стресс-тест из 23 проверок (конфиг, синтетический OCR, геометрия In-Place, Win32 трекер окон, Llama smoke test), прогоняемый за секунды перед каждым релизным билдом.
  • Очистка зависших процессов: Добавлен механизм автоматического глушения зомби-процессов llama-server.exe при старте приложения для защиты от утечек VRAM.
  • Устранены взаимные блокировки потоков в ocr_engines.py благодаря переходу на threading.RLock().
  • Исправлены ошибки типизации и форматирования по стандартам PEP 8 / Ruff.

Установка и обновление

Скачайте архив ScreenTale_v0.7.0.zip ниже, распакуйте в любую удобную папку и запустите ScreenTale.exe. Если у вас уже установлена предыдущая версия, программа обновится автоматически через встроенный апдейтер.

ScreenTale v0.6.2

Choose a tag to compare

@Xilleet Xilleet released this 30 Sep 12:46

Global Any-to-Any, Мульти-DPI & Раздел «Продвинутые»

Если предыдущий релиз 0.6.1 заложил мощный C++ фундамент локальных нейросетей, то сегодняшнее обновление распахивает двери приложения для всего мира.

Полностью сняли языковые оковы EN ➔ RU: встречайте поддержку 12 мировых языков в любых направлениях, аппаратную точность захвата на сложных мультимониторах и новый выделенный пункт меню для опытных пользователей!


🌍 Мультиязычность «Любой ➔ Любой» (Any-to-Any)

  • Пул из 12 языков:**
    В программу добавлена полноценная поддержка ключевых игровых языков планеты: Русский, English, 日本語 (Japanese), 中文 (Chinese), 한국어 (Korean), Español, Português (Brasil), Français, Deutsch, Italiano, Polski и Türkçe.

  • Любая комбинация направлений:
    Переводите с японского на русский (JA ➔ RU), с китайского на английский (ZH ➔ EN), с корейского на испанский (KO ➔ ES) — никаких ограничений.

  • Динамические системные промпты для LLM:
    При смене языковой пары системный промпт локальной нейросети перестраивается на лету, инструктируя модель переводить именно на выбранный диалект с сохранением стиля и эмоций.

  • Автоподхват в Windows OCR:
    Системный OCR-движок теперь сам переключает языковые пакеты Windows (ja-JP, zh-CN, en-US и др.) в зависимости от выбранного исходного языка.

    p.s. Вам все еще нужны эти языковые пакеты, т.е. они должны быть установлены в Windows.


Быстрое переключение языков прямо на парящем HUD

  • Интерактивный бейдж активной пары:
    На мини-тулбаре появилась аккуратная кнопка с флагами текущего направления (например, [ 🇯🇵 ➔ 🇷🇺 ]).

  • Динамическое всплывающее меню (MRU):
    Кликните по бейджу прямо во время игры — выпадет список ваших недавних языковых пар! Переключайтесь между японской новеллой и английской RPG в 1 клик без необходимости открывать окно Настроек.

  • Быстрый реверс ⇄:
    Кнопка смены мест языков мгновенно меняет направление перевода на противоположное.


Аппаратный Мультимониторный DPI (Multi-DPI Fix)

  • Пиксель-в-пиксель на любых экранах:
    Полностью переписали алгоритм расчёта масштаба экрана. Функция больше не опирается вслепую на главный экран.

  • Поддержка связок с разным масштабированием:
    Играете на 4K-мониторе (100%), пока ноутбук рядом работает в 150%. Больше никаких промахов мимо текста, сдвигов на пол-экрана и черных полос при захвате кадра!


Новая вкладка «Продвинутые» (Advanced Settings)

В левом сайдбаре Настроек появился новый раздел, разгрузивший основные экраны от технических настроек:

  • Управление потоками CPU:
    Слайдер выделения логических ядер процессора для llama.cpp. Режим «Авто» оставляет ровно половину ядер под систему и игру, защищая FPS от просадок и статтеров.

  • Задержка стабилизации текста (Дебаунс):
    Ползунок настройки авто-режима (200–2000 мс) переехал сюда из раздела «Перевод».

  • Подробное логирование (Verbose Mode):
    Тумблер детальной отладки перенесен из «О программе».


UX и полировка под капотом

  • Защита от шторма событий (Debounce слайдера ядер):
    Перетаскивание ползунка ядер больше не вызывает 15 перезапусков сервера подряд — сервер плавно перезапускается ровно один раз при отпускании мыши.

  • Защита для Opus-MT:
    При выборе легковесного офлайн-движка Opus-MT карточка языков аккуратно блокируется с замочком 🔒 Зафиксировано на EN ➔ RU, предотвращая ошибки несовместимости.

  • Мгновенное открытие списков без мерцания:
    Отключен архаичный 150-миллисекундный эффект, вызывавший просвечивание нижних кнопок при открытии выпадающих списков.

  • Единый размер шрифта:
    Решена проблема разнобоя шрифтов после скрытия/показа окна по Ctrl + ~.


Встроенная система диагностики (ScreenTale Doctor)

  • Появился автономный скрипт debug_diagnostics.py и флаг запуска python main.py --doctor.

  • За 1 секунду проверяет VRAM, драйверы, совместимость с CUDA/Vulkan, наличие пакетов Windows OCR и пакует все логи с системным отчётом в единый архив ScreenTale_Report.zip для быстрой техподдержки.


За кулисами разработки

Добавив мультиязычность, мы внезапно наткнулись на диковинный баг: Windows DirectWrite в панике сканировал все системные шрифты на диске, пытаясь отрендерить флаги-эмодзи, которых в системе вообще нет, а виндовый DWM сквозь полупрозрачное окно радостно показывал кнопки нижнего слоя в течение 150 мс анимации выкатывания списка. Пришлось нырнуть в исходники Qt, разогнать комбобоксы флагом отключения системных анимаций и заставить физику тулбара уважать границы экрана.


📦 Установка и обновление:

  1. Скачайте архив ScreenTale_v0.6.2.zip из блока Assets ниже.

  2. Распакуйте архив в удобное место.

  3. Запустите ScreenTale.exe.

  4. В Настройках во вкладке «Перевод» настройте вашу первую языковую пару!

💡 Совет для тех, кто обновляется:
Чтобы не перекачивать заново модели нейросетей и сохранить настройки — просто перенесите папку data из старой версии в папку с новой версией рядом с ScreenTale.exe.

ScreenTale v0.6.1

Choose a tag to compare

@Xilleet Xilleet released this 28 Sep 22:36

LLM Revolution, Автономные Рантаймы & RapidOCR Tategaki

Версия 0.6.1-beta — это самый масштабный технологический скачок в истории ScreenTale! Мы шагнули из эпохи простых переводчиков в эру полноценных локальных больших языковых моделей (LLM).

Больше никаких машинных дословных переводов: теперь диалоги в играх звучат живо, сленг переводится как сленг, ругательства звучат сочно, а персонажи сохраняют свой характер и эмоции. И всё это работает прямо на вашем ПК без интернета благодаря интеграции сверхбыстрого C++ рантайма llama.cpp и формата GGUF!


Эра локальных LLM: llama.cpp и GGUF-модели

  • Литературный перевод контекста:
    Нейросеть исправляет огрехи распознавания шрифтов и переводит сложные метафоры, идиомы и игровой лор так, будто игру локализовала профессиональная студия.

  • Каталог моделей в 1 клик:
    В меню Настройки ➔ «Перевод» появился встроенный каталог проверенных квантованных GGUF-моделей:

    • Hy-MT2 1.8B (Tencent) — легковесная модель для слабых ПК и ноутбуков без дискретной видеокарты.

    • Qwen 2.5 7B (Instruct) — абсолютный король качества для видеокарт с 6–8 ГБ VRAM (RTX 2060/3060 и выше).

    • Sakura 4B (Galgame / VN) — специализированный ИИ для японских визуальных новелл и манги (идеальная передача аниме-суффиксов и специфики жанра).

  • Молниеносный «холодный старт» (mmap):
    Благодаря прямой проекции памяти и DMA-переносу через шину PCIe, 4.5 ГБ модель GGUF залетает в видеопамять всего за пару секунд секунд (на примере видеокарты на 8гб)** (в 10 раз быстрее старых решений на PyTorch!).


Автономный менеджер рантаймов (Zero-Friction)

  • Больше никакой ручной возни с DLL:
    Вам больше не нужно лезть на GitHub, искать релизы под C++, распаковывать архивы и копировать cudart64_12.dll. ScreenTale теперь сам себе менеджер пакетов!

  • Аппаратное автоопределение железа:
    Программа на старте определяет конфигурацию вашего ПК:

    • NVIDIA GeForce ➔ скачивает связку CUDA 12.4 для максимальной скорости с задействованием тензорных ядер.

    • AMD Radeon / Intel Arc ➔ скачивает ультралегкий унифицированный движок Vulkan (~18 МБ).

    • Базовые ПК ➔ скачивает процессорную версию CPU (AVX2).

  • Скрытый Smoke Test за 0.2 секунды:
    Сразу после распаковки установщик в фоновом режиме прогоняет тестовый запуск (--version). Если драйвер устарел или в Windows не хватает библиотек — программа не упадет во время игры, а интеллигентно сообщит причину и предложит резервный бэкенд.

  • «Умное» меню выбора бэкенда:
    Кнопка «Сменить движок» снабжена защитой от ошибок: текущий движок отмечен галочкой ✓, а несовместимые с вашей видеокартой пункты аккуратно заблокированы с подсказкой причины.


RapidOCR & Чтение вертикальной манги (Tategaki)

  • Легковесный C++ OCR на ONNX Runtime:
    Добавлен движок RapidOCR, оптимизированный под сложные стилизованные шрифты, пиксель-арт и азиатские иероглифы.

  • Режим Tategaki (Японские столбцы):
    В настройки добавлен тумблер направления текста. В режиме Tategaki алгоритм группирует столбцы текста традиционным японским способом: справа-налево, сверху-вниз — идеальное спасение для бабблов манги и новелл!


Телеметрия VRAM и мониторинг железа

  • Живой монитор видеопамяти:
    Прямо над выбором моделей появилась стильная полоса VRAM, опрашивающая драйвер напрямую через нативный NVML. Вы всегда видите, сколько гигабайт видеопамяти сейчас занимает игра и модель (с точностью до процента).

  • Логирование скорости инициализации:
    В app.log и консоль теперь выводится точное время готовности сервера в миллисекундах.


Зачистка багов и оптимизация стабильности

Истреблена гонка GPU при старте: Ответ системного Windows OCR больше не сбрасывает режим видеокарты у локальных моделей на CPU.

Устранена рассинхронизация тумблеров: Переписана логика ToggleSwitch — ползунки больше не живут своей жизнью при программном переключении настроек.

Защита SSD от износа (Debounce): Движение слайдеров шрифта и прозрачности больше не спамит записью на диск десятками файлов в секунду.

Защита от перехвата скролла: Выпадающие списки моделей больше не реагируют на колесико мыши в закрытом состоянии — страница настроек скроллится гладко и без случайных переключений.

100% защита от процессов-зомби: llama-server.exe жестко привязан к Windows Job Object с флагом KILL_ON_JOB_CLOSE. Сервер гарантированно закрывается вместе со ScreenTale и никогда не зависнет в Диспетчере задач.

Потокобезопасный логгер: Перехватчик потоков логов защищен мьютексом (threading.Lock) — никаких повреждений файлов app.log при одновременных вызовах.


За кулисами разработки

«Знаете это чувство, когда ты садишься написать простой экранный переводчик, а через пару месяцев обнаруживаешь себя за разработкой собственного менеджера пакетов, архитектуры изоляции C++ процессов на уровне ядра Windows, детектора микроархитектур GPU и многопоточного загрузчика? "Мама, почему я разраб?" — этот вопрос звучал в моей голове всю последнюю неделю-две =)

Но результат того стоил. Версия 0.6.1-beta превращает ScreenTale в полноценную автономную станцию для локализации игр. Больше никаких консолей, никаких костылей — нажал кнопку, нейросеть загрузилась за 2 секунды прямо в VRAM, и погнали читать любимую новеллу или погружаться в лор любимой игры! 🎮✨»


Установка и запуск

  1. Скачайте архив ScreenTale_v0.6.1-beta.zip из блока Assets ниже.

  2. Распакуйте архив в любую удобную папку.

  3. Запустите ScreenTale.exe.

  4. Перейдите в Настройки ➔ «Перевод», выберите режим LLM и нажмите «Установить движок» — программа сама определит видеокарту (CUDA / Vulkan) и настроит всё за пару секунд, вам останется дождаться загрузки!

💡 Совет для тех, кто обновляется с предыдущих версий:
Чтобы сохранить свои настройки, скачанные GGUF-модели и кэш, просто перенесите папку data из старой версии в новую (рядом с ScreenTale.exe). Всё подхватится автоматически на лету!

ScreenTale v0.5.0

Choose a tag to compare

@Xilleet Xilleet released this 26 Sep 14:10

Windows OCR Milestone & Парящий Мини-HUD

Версия 0.5.0 открывает новую главу в истории ScreenTale! Мы совершили грандиозный технологический скачок: распознавание текста ускорилось в 20 раз,, а панель управления превратилась в полноценный модульный HUD.


Нативный Windows OCR

  • Молниеносный отклик:
    Благодаря переходу на системный WinRT API Windows 10/11 задержка распознавания кадра рухнула с тяжёлых 500 мс до рекордных 15–25 мс! Авто-режим больше не дёргается — чтение текста с экрана происходит плавно и в реальном времени.
    Системный OCR работает на ресурсах самой ОС, полностью освобождая VRAM и CPU для ваших игр. Никаких просадок FPS!
  • Выбор движка в Настройках:
    В Настройки → «Перевод» добавлен удобный переключатель между быстрым Windows OCR и классическим EasyOCR (PyTorch) с индивидуальным статусом работы для каждого.

Автономный парящий мини-HUD

  • Тулбар теперь свободный:
    Панель управления больше не прибита намертво к окну перевода. Справа появилась удобная ручка ⋮⋮, потянув за которую тулбар можно оторвать и утащить в любую точку экрана (хоть к миникарте, хоть на второй монитор).
  • Умный 4-сторонний магнит (Snap):
    Тулбар можно пристегнуть снаружи к любому из 4 углов окна перевода (сверху-справа, снизу-справа, сверху-слева, снизу-слева). Поднесите его ближе к любому углу — и он "прищёлкнется" с идеальным зазором.
  • Физика коллизий (Защита текста):
    Тулбар физически не может «провалиться» внутрь окна перевода и перекрыть текст или ресайз-грип. Если бросить его поверх текста — он сам мягко отскочит к ближайшему внешнему краю.
  • Защита от улетания за экран:
    Тулбар и окно перевода теперь аппаратно ограничены границами рабочего стола. Они поддерживают мультимониторные связки (2–3 экрана), но ни при каких обстоятельствах не улетят в «чёрную пустоту» за пределы видимости.

Пауза авто-режима (Alt + P)

  • Свободный обзор во время игровых битв и/или катсцен:
    Начался бой или длинный ролик? Нажмите Alt + P или кнопку ⏸ на тулбаре. Окно перевода мгновенно скроется с экрана, освободив 100% обзора игры, а на экране останется лишь аккуратный мини-пульт с горящей янтарной кнопкой ▶.
  • Моментальное чтение при снятии с паузы:
    Бой закончился? Нажимаем ▶ (или Alt + P) — окно возвращается, и текущая реплика считывается без необходимости прокручивать экран или двигать мышь.
  • Железная пауза:
    Запоздалые фоновые переводы больше не смогут самовольно открывать окно во время паузы.

Умная нормализация текста перед переводом

  • Склейка разорванных строк:
    Исправлена главная проблема токенизаторов нейросетей (Opus-MT / NLLB-200). Слова с переносом строки (infor-\nmation → information) автоматически сшиваются обратно, а одиночные разрывы строк превращаются в пробелы, сохраняя единый контекст предложения.
  • Чистка спецсимволов:
    Разношёрстные типографические кавычки (“, ”, «, »), кривые апострофы и длинные тире нормализуются в стандартный ASCII-вид, избавляя переводчик от мусорных токенов <unk>.
  • Защита цифр:
    Сохранено фирменное исправление путаницы буквы O и цифры 0 внутри чисел (2O24 → 2024).

Backpressure: защита от перегрузки очереди

  • Никаких зависаний при пропуске диалогов:
    Если вы зажали пробел для быстрой перемотки текста или на экране бушует анимация, очередь не раздувается до бесконечности. Система мягко отсекает промежуточный шум, удерживая буфер актуальным и защищая от 15-секундных таймаутов.
  • Чистое переключение моделей:
    При смене движков в Настройках (например, с Opus-MT на NLLB) очередь задач от старой модели моментально сбрасывается, исключая конфликты. Стоит учесть, что все переводы, которые не самоочистились, останутся в окне перевода.

За кулисами разработки

Интеграция системных C++ WinRT API, ускорение распознавания в 20 раз и оптимизация нейросетей заняли от силы час. Но вот битва с физикой парящего мини-тулбара (чтобы он не телепортировался, не тонул в текстурах окон, ровно магнитился к четырём углам и не перекрывал клики) — вымотала меня больше, чем весь исторический переезд проекта с CustomTkinter на PySide6 =)

Поэтому версия 0.5.0 официально закрыта, а я отправляюсь на пару недель заслуженного отдыха играть в игры. (но это не точно, а то меня вдруг опять индюк клюнет что-то доделать). Увидимся в v0.5.1, где я научу ScreenTale читать вертикальную мангу! 🎮🏖️


📦 Установка и запуск:

  1. Скачайте архив ScreenTale_v0.5.0.zip из раздела Assets ниже.
  2. Распакуйте архив в любую удобную папку.
  3. Запустите ScreenTale.exe.

💡 Совет для тех, кто обновляется с версии 0.4.4 или ранее:
Если ранее у вас была более старая версия и вы не хотите перекачивать по новой модели, то можете спокойно создать рядом с ScreenTale.exe папку data (если ее там еще нет) и закинуть туда папки easyocr_models и hf_cache, а так же config.json (чтобы настройки, которые были в предыдущей версии вами настроены, подтянулись в новой версии).

ScreenTale v0.4.5

Choose a tag to compare

@Xilleet Xilleet released this 25 Sep 15:40

Версия 0.4.5 закрывает все вопросы по стабильности работы сети, защищает от потери текста во время сетевых сбоев и приносит главную фичу долгожданного комфорта — бесшовный встроенный автоапдейтер!


FIFO-очередь диалогов (Защита от потери реплик)

  • Никакого потерянного текста при обрыве сети:
    Раньше, если интернет моргал или программа начинала долго переключаться на офлайн-модель, новые реплики из игры могли пропадать или устраивать кашу. Теперь под капотом работает строгая FIFO-очередь (First In, First Out).
  • Умная заморозка таймаутов:
    Пока локальная модель просыпается или загружается в память, все новые фразы аккуратно выстраиваются в очередь с сохранением точного времени. Как только модель готова — весь диалог переводится строго по цепочке, а сюжетный контекст больше никогда не теряется.
  • Экстренный сброс:
    Нажатие Alt + C или кнопки ■ теперь мгновенно очищает и текущий перевод, и всю накопившуюся очередь ожидания.

In-App автоапдейтер

  • Забудьте про ручное скачивание с GitHub:
    При запуске программа тихо проверяет наличие свежей версии`.
  • Красивое уведомление прямо в Настройках:
    Если вышла новая версия, в внизу окна настроек появляется аккуратная карточка с предложением обновиться.
  • Магия 1 клика:
    По нажатию кнопки [ Обновить сейчас ] программа сама скачает архив, проверит хэш (защита от битых файлов), закроется, аккуратно заменит файлы программы и перезапустится.
  • Полная безопасность данных:
    Папка data/ со всеми вашими настройками, логами и гигабайтами скачанных нейросетей при обновлении никогда не трогается и не затирается.
  • Забота о нервах:
    Если вам некогда обновляться прямо сейчас, кнопка [Напомнить через 7 дней ] спрячет баннер ровно на неделю.

Мелкие исправления

  • Умный Fallback без мусора в чате:
    При падении соединения с онлайн-переводчика программа больше не пугает игрока страшными техническими логами ошибок 429 в окне чата — она молча и бесшовно переключается на офлайн-модель , выводя только готовый чистый перевод.
  • Исправление кавычек:
    Устранен баг, из-за которого локальные модели иногда выплевывали HTML-кодировку кавычек (&quot;) вместо нормальных символов.
  • Защита от дублей в авто-режиме:
    Добавлена усиленная дедупликация, благодаря которой авто-режим больше не спамит одинаковыми репликами по два раза подряд.

📦 Установка и запуск:

  1. Скачайте архив ScreenTale_v0.4.5.zip из раздела Assets ниже.
  2. Распакуйте архив в любую удобную папку.
  3. Запустите ScreenTale.exe

💡 Совет для тех, кто обновляется с версии 0.4.4 или ранее:
Если ранее у вас была более старая версия и вы не хотите перекачивать по новой модели, то можете спокойно создать рядом с ScreenTale.exe папку data (если ее там еще нет) и закинуть туда папки easyocr_models и hf_cache, а так же config.json (чтобы настройки, которые были в предыдущей версии вами настроены, подтянулись в новой версии).

ScreenTale v0.4.4

Choose a tag to compare

@Xilleet Xilleet released this 24 Sep 21:57

Версия 0.4.4 целиком посвящена эргономике, контролю за дисковым пространством и комфорту при долгой игре. Мы собрали все ваши пожелания и добавили то, чего так не хватало для игры одной рукой!


Режим «Призрак» и плавающий тулбар

  • Сквозной клик прямо в игру (Alt + G или кнопка 👻):
    Окно перевода становится прозрачным для мыши — теперь можно спокойно кликать по диалогам и кнопкам в игре прямо сквозь текст перевода, не отодвигая окно в сторону!
  • Выборочный клик:
    Кликать сквозь текст можно, но сам мини-тулбар в углу остаётся активным — режим призрака можно в любой момент выключить повторным кликом по иконке мышкой.
  • Парящий мини-тулбар над окном:
    При наведении курсора в правом верхнем углу плавно всплывают 4 быстрые кнопки:
    • ↻ Повтор: мгновенно заново распознаёт и переводит последний участок экрана (спасает при опечатках OCR).
    • ■ Стоп: экстренная остановка зависшего перевода.
    • 🗑 Очистка: стирает всю простыню истории в окне.
    • 👻 Призрак: переключатель сквозного клика.

💾 Полный контроль над кэшем и моделями

  • Больше никаких случайных скачиваний на 2.5 ГБ:
    Кликая по моделям в настройках, закачка больше не стартует сама. Появилась понятная кнопка [ ⬇ Скачать модель ] с указанием примерного веса.
  • Удаление конкретных моделей в 1 клик:
    Рядом со скачанной моделью появилась кнопка [ Удалить ] с диалогом подтверждения. Можно удалить тяжелый NLLB, оставив легкий Opus, и освободить место на SSD.
  • Счётчик реального размера на диске:
    В настройках отображается честный объём скачанного кэша нейросетей + кнопка [ Очистить весь кэш ].
  • Умный Fallback при падении сети:
    Если интернет пропал, программа больше не крашится, а сама проверяет диск и бесшовно переключается на ту модель, которая реально скачана (Opus или NLLB). Если моделей нет — выведет вежливую подсказку.

📊 Индикация загрузки и авто-режим

  • Честная скорость в МБ/с:
    Под прогресс-баром скачивания теперь отображается скорость (МБ/с или КБ/с).
  • Слайдер чувствительности авто-режима:
    В Настройки $\rightarrow$ «Перевод» добавлен ползунок задержки дебаунса (от 200 мс до 2000 мс).

🎨 Идеальный контраст всех тем

  • Светлая тема переработана с нуля:
    Мягкий фон светлой бумаги + глубокий угольный текст высокой контрастности. Больше никакого блёклого нечитаемого серого текста!
  • Классическая тёмная тема:
    Приведена к строгому графитово-сапфировому стилю без мутных фиолетовых оттенков.
  • Фирменная Янтарная тема остаётся стилем по умолчанию.

🧹 Порядок под капотом

  • Изоляция данных в папку data/:
    Все файлы конфигурации (config.json), логи и кэши нейросетей теперь аккуратно изолированы в подпапке data/. В корне программы идеальный порядок.
  • Ротация 3 последних логов:
    При перезапуске приложения старый лог не затирается, а сдвигается в app_1.log и app_2.log

📦 Установка и запуск:

  1. Скачайте архив ScreenTale_v0.4.4.zip из раздела Assets ниже.
  2. Распакуйте в любую удобную папку.
  3. Запустите ScreenTale.exe

Если ранее у вас была более старая версия и вы не хотите перекачивать по новой модели, то можете спокойно создать рядом с ScreenTale.exe папку data (если ее там еще нет) и закинуть туда папки easyocr_models и hf_cache, а так же config.json (чтобы настройки, которые были в предыдущей версии вами настроены, подтянулись в новой версии)