Jump to content

Релиз DCS Translation TOOL v1.01


Recommended Posts

Posted (edited)

Приветствую.

Выпускаю в релиз программу-инструмент для текстового перевода миссий игры DCS World на разные языки

DCS Translation TOOL v1.01DCS_Translation_TOOL_1.01.exe

Изначально я делал её как небольшую программу для личных нужд, но затем меня так увлекла эта идея и сам процесс, что я решил во что бы то ни стало создать удобную и простую программу для таких же фанатов игры, которые, как и я, сталкиваются с языковым барьером.

Интерфейс выполнен в стиле игры и доступен на английском и русском языках. Программа написана с использованием ИИ на Python (сам я очень далёк от программирования 🙂), но сделана со всей скрупулёзностью и душой.

Прошу, попробуйте её в деле и напишите отзывы и предложения, если она вам понравится. Откройте для себя простой способ играть в любые кампании и отдельные миссии, не испытывая проблем с локализацией.


Скачать с сайта DCS World https://www.digitalcombatsimulator.com/ru/files/3348756/
Ссылка на гитхаб https://github.com/Hokum-A/dcs-translation-tool

screen2.jpg

 

Edited by Hokum
  • Like 7
  • Thanks 8

Мой ПК:

 

 

i7-12700K, 64Gb RAM@4000Mhz, 4080Super

 

Posted

Автору огромное спасибо за труд. Долгожданная программа. Но все таки как перевести на русский? Переводит только на английский.

Posted (edited)
5 часов назад, Seawolf1992 сказал:

Автору огромное спасибо за труд. Долгожданная программа. Но все таки как перевести на русский? Переводит только на английский.

Привет, поясняю😀

🟩 ОТКРЫТЬ ФАЙЛ МИССИИ

Нажмите "📂 Открыть файл миссии (.miz)" → выберите MyMission.miz

__________

🟦 СКОПИРОВАТЬ ТЕКСТ

Нажмите "📋 Копировать весь текст" в левой панели

__________

🟪 ПЕРЕВЕСТИ (ВНИМАТЕЛЬНО!)

→ ИИ-переводчик (ChatGPT, DeepSeek)
Количество строк должно остаться без изменений!
 

🟨 ВСТАВИТЬ ПЕРЕВОД

Нажмите "📋 Вставить из буфера" в правой панели

 

Если что, сама программа не переводит, она удобно вытаскивает весь текст чтобы его скопировать для перевода.
Проверь контекст (При первом запуске программа на EN языке и контекст тоже по умолчанию на EN из памяти грузит) если ИИ не переводит на русский.
Я использую Deepseek, очень качественно на выходе получается, почти не отличить от ручной локализации)
Отвечу на другие вопросы если есть😅

Edited by Hokum

Мой ПК:

 

 

i7-12700K, 64Gb RAM@4000Mhz, 4080Super

 

Posted

Все получилось отлично через DeepSeek. Просто сказка. Если бы сказали раньше, что будет такая программа, скептично не поверил бы. 1 минута и миссия на русском. Сколько мучений было раньше. Автор, Вы молодец. Закину донат. Удачи Вам во всем!

  • Like 1
Posted

Большое спасибо за отзыв! Если я помог хоть кому-то, то уже все не зря😀

Мой ПК:

 

 

i7-12700K, 64Gb RAM@4000Mhz, 4080Super

 

Posted (edited)
10 часов назад, Hokum сказал:

Большое спасибо за отзыв! Если я помог хоть кому-то, то уже все не зря😀

Конечно не зря, потому что это очень полезный инструмент. Я раньше в редакторе парился. В нём заниматься переводом крайне неудобно. Да потом и забросил эти танцы с бубном. А сейчас, если захочется вновь перевести мисси, так это будет без прошлого геммороя.

Edited by Acriculor
Posted (edited)
18 часов назад, Hokum сказал:

Большое спасибо за отзыв!

Спасибо! Очень полезная штука! А не рассматривал возможность прикрутить работу через API с ИИ-шками? Чтоб переводило по кнопке само. Или там ключи все платные? С тем же chatgpt через библиотеку open-ai это можно сделать. 

PS: посмотрел по гиту код, у тебя уже по сути все готово для этого.

def paste_from_clipboard(self):
        """Вставляет текст из буфера обмена Windows"""
        clipboard = QApplication.clipboard()
        text = clipboard.text()
        
        if text:
            self.translated_text_all.setPlainText(text)
            self.statusBar().showMessage(get_translation(self.current_language, 'status_text_pasted'))
        else:
            self.statusBar().showMessage(get_translation(self.current_language, 'status_clipboard_empty'))

Вот сюда вместо вставки из буфера, подставляешь то что тебе вернет ИИ-шка и по сути все. Единственная что скорее всего придется сделать интерфейс для регистрации пользователя(не уверен нужно ли это точно, надо проверять)

PPS: хотя забей я сейчас спросил у самого гпт - да у него ключи платные, списываться будут за каждый токен. 

Edited by Crazzy_rusian

9800x3d, 64gb RAM, MSI Suprim 5080 16gb, SSD 2Tb | Meta Quest 3 VR 

 

Posted (edited)

Уважаемый Hokum. Посмотрите переупаковку в новый файл миссии. Для примера, взял "Lesson 26 - AIM120 LINK and Multi Targets Pt 1.miz" из FA-18C/Missions/Training/.
Все перевел. Сохранить перевод-Сохранить как-RU(Язык не важен)-Сохранить как. В новом файле миссии "ΓÇÄFA18_120_LK16.jpg" вместо ‎"FA18_120_LK16.jpg". Остальное все соответствует. 

Поспешил отправить. Может надо очистить в Windows - TEMP или какой то временный буфер.

Edited by Seawolf1992
  • Like 1
Posted
1 час назад, Seawolf1992 сказал:

Уважаемый Hokum. Посмотрите переупаковку в новый файл миссии. Для примера, взял "Lesson 26 - AIM120 LINK and Multi Targets Pt 1.miz" из FA-18C/Missions/Training/.
Все перевел. Сохранить перевод-Сохранить как-RU(Язык не важен)-Сохранить как. В новом файле миссии "ΓÇÄFA18_120_LK16.jpg" вместо ‎"FA18_120_LK16.jpg". Остальное все соответствует. 

Поспешил отправить. Может надо очистить в Windows - TEMP или какой то временный буфер.

Большое спасибо за баг репорт!

Проблема устранена и в новой версии ВСЕ имена файлов будут проходить проверку. Пока что пользуйтесь, это единичный случай.
После необходимых доработок и улучшений выйдет в свет 🫡

В оригинальном .miz файле некоторые имена (например, тот самый .jpg) начинались со специального невидимого символа — LRM (Left-to-Right Mark). В кодировке UTF-8 это байты E2 80 8E. Однако в архивах без явной пометки UTF-8, Python читал их как кодировку CP437, превращая в кракозябры ΓÇÄ. При сохранении эта ошибка «закреплялась», и в новом архиве имя файла менялось навсегда.

Мой ПК:

 

 

i7-12700K, 64Gb RAM@4000Mhz, 4080Super

 

Posted
4 часа назад, Crazzy_rusian сказал:

Вот сюда вместо вставки из буфера, подставляешь то что тебе вернет ИИ-шка и по сути все. Единственная что скорее всего придется сделать интерфейс для регистрации пользователя(не уверен нужно ли это точно, надо проверять)

Да, я конечно рассматривал возможность перевода через API ключ, но это сильно усложнит для конечного пользователя процесс и перегрузит интерфейс, так же рассматривал возможность подключения локальной ИИ модели на базе Ollama, хотя это так же может вызвать сложности у обычного пользователя(Но если грамотно "спрятать" функцию, то это может пригодиться для продвинутых пользователей, над этим я больше думаю и даже не исключаю такого варианта, но не сейчас) Даже deepseek при переводе миссий в котором есть английский чередующийся с китайским (да еще если строки перевода будут идти одна за одной с одинаковым переводом) неплохо так начинает "плыть", и стандартного контекста уже не достаточно. Но после некоторых изменений, все же можно заставить его перевести и это😅 А ведь это облачная модель, она гораздо мощьнее локальной

  • Thanks 1

Мой ПК:

 

 

i7-12700K, 64Gb RAM@4000Mhz, 4080Super

 

Posted (edited)

посмотрите этот фаил миссии. пытался перевести. там около 450 строк. DeepSeek все перевел. в программе вашей только 160. остальное не переводит. .  сможете перевести ? что можете сказать о миссии. в чем проблема?

3.08 - Air Air Exam.miz

Edited by marmeys
Posted (edited)
46 минут назад, marmeys сказал:

посмотрите этот фаил миссии. пытался перевести. там около 450 строк. DeepSeek все перевел. в программе вашей только 160. остальное не переводит. .  сможете перевести ? что можете сказать о миссии. в чем проблема?

3.08 - Air Air Exam.miz 1.71 \u041c\u0411 · 1 загрузка

Привет, открыл 403 строки, скинул на перевод в deepseek. Deepseek выдал 400 строк. 2 минуты я искал где он склеил 3 строки. Без проблем нашел ориентируясь по цифрам строк. Итог:
1. Программа обработала корректно

2. Переводчик перевел хорошо, но склеил 3 предложения (для 400 строк я считаю очень достойный результат)

3. Если не хочется искать почему не хватает строк можно подправить контекст указав это явно.
На форум.jpg

Спасибо, что поделился результатами. Текстовый файл с переводом прилагаю. Готовую миссию тоже, но настоятельно предлагаю закинуть текст в миссию и закрепить результат 😀
Еще можно проверить не было ли отключено отображение каких то ключей после копирования, но перед вставкой перевода
Так же отвечу на другие вопросы)

3.08 - Air Air Exam_RU.miz перевод для 3.08 - Air Air Exam.miz.txt

Edited by Hokum
  • Like 1

Мой ПК:

 

 

i7-12700K, 64Gb RAM@4000Mhz, 4080Super

 

Posted (edited)

Спасибо! а вот теперь я буду разбираться . что я делал не так. установил настройки как у вас.  когда я копирую текст. он добавляет  рекомендации для ИИ. вот это как работает? добавление рекомендаций. я пытался копировать текст "выделить все " и вставить(или копировать) его правой кнопкой мыши в ДИП СПИК . перевод также из ДИП спика вставить в окно перевода. не через буфер. или это тоже самое? тут как быть? или обязательно  из буфера. 

Edited by marmeys
Posted (edited)

Сделал много мелких изменений в программе и исправил ошибку о которой сообщал Seawolf1992

Скачать можно с GitHub или приложу так же к посту
https://github.com/Hokum-A/dcs-translation-tool/releases/tag/1.01

 

4 часа назад, marmeys сказал:

Спасибо! а вот теперь я буду разбираться . что я делал не так. установил настройки как у вас.  когда я копирую текст. он добавляет  рекомендации для ИИ. вот это как работает? добавление рекомендаций. я пытался копировать текст "выделить все " и вставить(или копировать) его правой кнопкой мыши в ДИП СПИК . перевод также из ДИП спика вставить в окно перевода. не через буфер. или это тоже самое? тут как быть? или обязательно  из буфера. 

Открываем файл: В окне оригинального текста появляется весь текст в миссии(соответственно ключам) 
Копируем текст кнопкой "Копировать весь текст"(если включен переключатель "Добавить контекст" то к скопированному тексту из миссии добавляется контекст для перевода для ИИ) Это просто правила для ИИ чтобы он лучше сделал перевод, ты его можешь написать свой при желании.
Переведенный текст копируем в буфер обмена и вставляем в окно перевода. Если количество строк сошлось, можно нажимать "Сохранить перевод" и играть
Если количество строк не сошлось нужно посмотреть в каком месте ИИ объединил строки и разбить эту строку как в оригинале. Для миссий с количеством строк более 500 логичнее использовать специальные текстовые редакторы.

Копировать или вставлять текст можно и просто из окна, значения не имеет. Главное правило это, как написано в инструкции:
🟪 ПЕРЕВЕСТИ (ВНИМАТЕЛЬНО! КОЛИЧЕСТВО СТРОК ПЕРЕВОДА ДОЛЖНО СТРОГО СОВПАДАТЬ С КОЛИЧЕСТВОМ СТРОК ИЗ ОКНА ОРИГИНАЛЬНОГО ТЕКСТА)
Это ЕДИНСТВЕННОЕ условие для качественного перевода.
Наверное тебе ИИ просто склеил строки и из 403 они превратились в 160.

Справа сверху есть инструкция по переводу, там все очень просто описано. Если есть еще вопросы, готов ответить 🫡

DCS_Translation_TOOL_1.01.exe

Edited by Hokum
  • Like 1

Мой ПК:

 

 

i7-12700K, 64Gb RAM@4000Mhz, 4080Super

 

Posted

Большое спасибо!!! вот теперь все понятно. 

14 минут назад, Hokum сказал:

Если количество строк не сошлось нужно посмотреть в каком месте ИИ объединил строки и разбить эту строку как в оригинале. Для миссий с количеством строк более 500 логичнее использовать специальные текстовые редакторы.

 

14 минут назад, Hokum сказал:

если включен переключатель "Добавить контекст" то к скопированному тексту из миссии добавляется контекст для перевода для ИИ

17 минут назад, Hokum сказал:

(ВНИМАТЕЛЬНО! КОЛИЧЕСТВО СТРОК ПЕРЕВОДА ДОЛЖНО СТРОГО СОВПАДАТЬ С КОЛИЧЕСТВОМ СТРОК ИЗ ОКНА ОРИГИНАЛЬНОГО ТЕКСТА)
Это ЕДИНСТВЕННОЕ

 

очень важные дополнения.. спс

вопрос появился . зеленым выделил. это как сделать? и где? а номер строки? если надо.

Posted

Вот например оригинал:
 

1 Press I/P to continue

2 CHECKRIDE FAILED

3 Verify TACAN, set BRC at 129.

4 Lastly will be roll calibration, which will have the bottom crosshair move using the TDC. Align the bottom crosshair with the vertical line and press cage/

5 uncage to set it.

6 Once that's done, press the ALIGN button on the MDI again to store the alignment, and we're all set.

7 RTB.


ИИ может объединить на: 
 

1 Press I/P to continue

2 CHECKRIDE FAILED

3 Verify TACAN, set BRC at 129.

4 Lastly will be roll calibration, which will have the bottom crosshair move using the TDC. Align the bottom crosshair with the vertical line and press cage uncage to set it.

5 Once that's done, press the ALIGN button on the MDI again to store the alignment, and we're all set.

6 RTB.

Если объединений не много можно прокрутить по 100+- строк для начала и сравнить простые надписи типа RTB. Видим, что в оригинале это 7 строка а в переводе 6, значит в промежутке от 1-6 есть объединение строк. Листаем наполовину назад видим: простую надпись Verify TACAN, set BRC at 129. обе на строке 3 значит все что 1-3 ИИ сделал правильно, смотрим 3-6 и тут уже заметно будет смещение. Ставим курсор перед надписью uncage to set it. и нажимаем Enter. Все. Все строки ниже, включая  uncage to set it., сместились на свои места. 

В тексте обычно много терминов и их очень легко сопоставлять по номерам строк.
Или же как вариант просто поругать ИИ объяснить что у тебя не совпало количество строк и пусть просто переделает все, от того насколько ты это хорошо объяснишь зависит насколько правильно ИИ сделает. Но обычно это не сложно, я в версии 1.01 немного поменял контекст по умолчанию, можешь глянуть и сделать даже лучше 😀
Так же немного обновил инструкцию.

Я не призываю редактировать текст в моей программе, лучше это делать в специальных текстовых редакторах типа notepad++

 

  • Like 1

Мой ПК:

 

 

i7-12700K, 64Gb RAM@4000Mhz, 4080Super

 

Posted (edited)

Спасибо так понятней!!!   а вот смотрите.  миссия которую вы переводили из компании обучения на ф-18. перевод  как то связан с другими миссиями в компании. например -- взлет с аэродрома и посадка туда же.  все нормально слетал выполнил задание.. сажусь.  сообшение.  что я не зацепился за трос(и тут я понял что миссии взаимосвязаны) авианосца. в миссии авианосца нет.

вот ссылка на обучаюшие компании. как это можно перевести. что скажете? очень интересное обучение!

https://files.digitalcombatsimulator.com/userfiles/6a6/3s2uls723o70m1rw4pe1pms4k8gt1351/Gunthrek_Academy_FA-18_Bagel_Fixpack_v1.3.0.7z

П.С.гениальная программа. просто чудо. 

Edited by marmeys
Posted

По сути кампания это просто набор миссий, они так же и переводятся отдельно. Можно открыть программой файл  .cpm и перевести описание кампании.(заменится английское описание) 

  • Like 1

Мой ПК:

 

 

i7-12700K, 64Gb RAM@4000Mhz, 4080Super

 

  • Hokum changed the title to Релиз DCS Translation TOOL v1.01
×
×
  • Create New...