ScreenTale — это легковесный оверлей-переводчик без рекламы и платных лимитов. Создан геймером для геймеров, чтобы с комфортом читать сюжет в непереведенных визуальных новеллах, JRPG, гачах и RPG-играх как через облачные сервисы, так и полностью офлайн с мощью современных локальных нейросетей.
-
In-Place AR-Оверлей (Бесшовное замещение текста): Режим нативного перевода прямо поверх интерфейса игры или бабблов манги.
- Smart Tint: Автоматический замер цвета фона по 4 точкам скрывает оригинальный английский/японский текст матовой подложкой в тон игре.
-
Пространственный наклон (
atan2): Текст перевода поворачивается под тем же углом, что и оригинальные надписи в кадре. - Автоподбор шрифта ($O(\log N)$): Бинарный расчёт кегля под размер оригинального диалогового окна с вертикальным авто-ростом плашки.
-
Индикатор «ИИ думает» (LookUpper-style): При точечном клике прямо под курсором парит янтарная капсула с танцующими звёздами
✦ ✦ ✦, плавно сменяясь переводом с упругой пружинной анимацией (Spring Pop-In). - (еще в разработке)
- Локальный LLM-перевод (llama.cpp + GGUF): Полноценные языковые модели прямо на вашей видеокарте или процессоре! Перевод художественного уровня, сохранение контекста сцены, сленга и характера персонажей без утечки данных в сеть.
- Автоматический менеджер рантаймов: Никакой ручной возни с C++ библиотеками. ScreenTale сам определяет железо (NVIDIA CUDA 12, Vulkan или CPU AVX2), скачивает официальные бинарники с GitHub и проводит скрытый Smoke Test перед запуском.
-
Каталог GGUF-моделей в 1 клик: Встроенный загрузчик проверенных моделей прямо в Настройках (
Hy-MT2 1.8B,Qwen 2.5 7B,Sakura 4B Galgame). - Сверхбыстрый нативный OCR: Мгновенное чтение через системный Windows OCR (WinRT API) за 10–25 мс с нулевой нагрузкой на видеокарту.
- RapidOCR & Вертикальный текст (Tategaki): Специализированный ONNX-движок для сложных стилизованных шрифтов и традиционных японских вертикальных столбцов (чтение сверху-вниз, справа-налево в манге и новеллах).
-
Автономный парящий мини-HUD: Открепляемый пульт управления с ручкой
⋮⋮, 4-сторонним магнитным докингом к углам экрана и защитой от перекрытия текста. -
Управление в 1 клик мыши:
- СКМ (Колёсико): Мгновенный точечный перевод фразы или кнопки под курсором.
- ПКМ: Быстрое растворение активных плашек перевода с экрана.
-
100% безопасность для античитов (Zero-Risk): Работает исключительно через сквозной системный слой (
HTTRANSPARENT). Не внедряется в память процессов и DirectX/OpenGL — бан исключен. -
Режим стримера (Anti-Loop): Защита от захвата через
SetWindowDisplayAffinity— плашки перевода видны только вам, но скрыты от записи OBS, Discord и скриншотеров (ShareX).
- [arch] Архитектура стратегий
ocr_engines.py: Базовый классBaseOcrEngineдля бесшовного переключения движков. - [feat] Нативный Windows OCR (WinRT API): Чтение кадра за 10–25 мс, 0 МБ VRAM.
- [feat] 🛸 Автономный парящий мини-HUD: Открепляемый тулбар с ручкой
⋮⋮, магнитным докингом к 4 углам и физикой коллизий. - [qol] ⏸️ Пауза авто-режима (
Alt + P): Заморозка сканирования на время боя с сохранением рамки. - [qol] 👻 Ghost Mode (
Alt + G): Сквозные клики сквозь окно перевода прямо в игру.
- [feat] Интеграция
RapidOCR(PaddleOCR на ONNX Runtime): Высокая точность на сложных игровых шрифтах. - [feat] Поддержка вертикального текста (Tategaki): Автоматическая сортировка японских столбцов (справа-налево, сверху-вниз) для новелл и бабблов манги.
- [ui] Переключатель направления: Тумблер
[ Горизонтальный | Вертикальный (Tategaki) ]в Настройках.
- [feat] Интеграция C++ рантайма
llama.cpp: Запуск GGUF-квантов черезllama-server.exeс привязкой к Windows Job Object (100% защита от процессов-зомби). - [feat] Автоматический менеджер рантаймов (
runtime_manager.py):- Аппаратное автоопределение железа (NVIDIA CUDA / Vulkan / CPU AVX2).
- Фоновое скачивание с официальных релизов GitHub, распаковка и скрытый Smoke Test (
--version).
- [feat] Каталог GGUF-моделей в Настройках: Загрузка в 1 клик моделей
Hy-MT2 1.8B,Qwen 2.5 7B,Sakura 4B. - [perf] Мониторинг VRAM и скорости: Отображение реального потребления видеопамяти через драйвер NVML и замер скорости холодного старта LLM в VRAM.
- [feat] Честная мультиязычность «Любой ➔ Любой»:
- Золотой пул из 12 языков:
RU,EN,JA,ZH,KO,ES,PT-BR,FR,DE,IT,PL,TR. - Быстрая смена направления перевода
[ Исходный ] ⇄ [ Целевой ]на лету.
- Золотой пул из 12 языков:
- [fix] 🖥️ Мультимониторный DPI (devicePixelRatio): Корректный расчёт координат на сложных сетапах с разным масштабированием (4K 150% + 1080p 100%).
- [feat] Полноэкранный AR-холст (
InPlaceCanvas): Нативное замещение текста прямо в игре через прозрачный слой Windows (HTTRANSPARENT). - [feat] Маскировка «Хамелеон» и наклон
atan2: Точный подбор цвета фона по 4 точкам и пространственный поворот плашек. - [feat] Мульти-бабблы без склеивания: Независимая посадка до 12 значимых реплик без превращения экрана в сплошной монолит.
- [ui] Индикатор LookUpper & Spring Pop-In: Парящая капсула со звёздами
✦ ✦ ✦при клике и упругая микро-пружинка при появлении перевода. - [ui] Глобальный тумблер в сайдбаре: Быстрое переключение между
[ 💬 Чат ]и[ 🎯 In-Place ]. - [feat] Интеграция мультиязычности UI (
locales/): Полная локализация интерфейса программы (EN / RU) с поддержкой кастомных JSON-переводов. - [qol] Управление мышью: Быстрый точечный перевод по клику на Колёсико (СКМ) и очистка по ПКМ.
- v1.0+ — Пользовательские глоссарии с автоопределением игры: Автоматическое распознавание активного окна игры и подгрузка словарей терминов/имён сообщества (
Sinners → Грешники,Dante → Данте).
| Сочетание / Клик | Действие |
|---|---|
Alt + Q |
1-Click скан окна игры (в режиме In-Place) / Перевод выделенной области |
Alt + W |
Включить / выключить авто-режим субтитров по рамке |
Клик СКМ (Колёсико) |
Точечный перевод фразы или кнопки под курсором мыши |
Клик ПКМ |
Мгновенно убрать активные плашки перевода с экрана |
Alt + P |
Пауза авто-режима (окно скрывается, тулбар остаётся) |
Ctrl + ~ |
Быстро скрыть / показать окно перевода (в режиме Чата) |
Alt + C |
Экстренно остановить перевод и очистить очередь |
Alt + X |
Очистить историю диалогов |
Alt + G |
Включить / выключить сквозной клик в игру (Ghost mode) |
(Все клавиатурные сочетания можно свободно переназначить в Настройках).
- Скачайте архив
ScreenTale_v0.7-beta.zipиз раздела Releases. - Распакуйте архив в любую удобную папку.
- Запустите
ScreenTale.exe. - Выберите режим работы в левом сайдбаре:
[ In-Place ]— для нативного замещения диалогов прямо в игре.[ Чат ]— для классического окна истории со скроллом.
- Во вкладке «Перевод» настройте движок:
- Быстрый облачный: Google Translate.
- Локальный ИИ: Выберите LLM, нажмите «Установить движок» (программа сама подберет CUDA или Vulkan) и скачайте проверенную модель (например,
Hy-MT2 1.8BилиQwen 2.5 7B).
- Клонируйте репозиторий:
git clone https://github.com/Xilleet/ScreenTale.git cd ScreenTale - Создайте и активируйте виртуальное окружение:
python -m venv .venv .venv\Scripts\activate
- Установите зависимости:
pip install -r requirements.txt
- Запустите приложение:
python main.py
# Разработано с ❤️ для любителей хороших игр, сюжетов и историй.
```