Hokum Posted Tuesday at 04:49 PM Posted Tuesday at 04:49 PM (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 Edited yesterday at 04:04 PM by Hokum 7 8 Мой ПК: i7-12700K, 64Gb RAM@4000Mhz, 4080Super
Seawolf1992 Posted Wednesday at 08:52 AM Posted Wednesday at 08:52 AM Автору огромное спасибо за труд. Долгожданная программа. Но все таки как перевести на русский? Переводит только на английский.
Hokum Posted Wednesday at 02:15 PM Author Posted Wednesday at 02:15 PM (edited) 5 часов назад, Seawolf1992 сказал: Автору огромное спасибо за труд. Долгожданная программа. Но все таки как перевести на русский? Переводит только на английский. Привет, поясняю ОТКРЫТЬ ФАЙЛ МИССИИ Нажмите " Открыть файл миссии (.miz)" → выберите MyMission.miz __________ СКОПИРОВАТЬ ТЕКСТ Нажмите " Копировать весь текст" в левой панели __________ ПЕРЕВЕСТИ (ВНИМАТЕЛЬНО!) → ИИ-переводчик (ChatGPT, DeepSeek) Количество строк должно остаться без изменений! ВСТАВИТЬ ПЕРЕВОД Нажмите " Вставить из буфера" в правой панели Если что, сама программа не переводит, она удобно вытаскивает весь текст чтобы его скопировать для перевода. Проверь контекст (При первом запуске программа на EN языке и контекст тоже по умолчанию на EN из памяти грузит) если ИИ не переводит на русский. Я использую Deepseek, очень качественно на выходе получается, почти не отличить от ручной локализации) Отвечу на другие вопросы если есть Edited Wednesday at 02:18 PM by Hokum Мой ПК: i7-12700K, 64Gb RAM@4000Mhz, 4080Super
Seawolf1992 Posted Wednesday at 04:05 PM Posted Wednesday at 04:05 PM Все получилось отлично через DeepSeek. Просто сказка. Если бы сказали раньше, что будет такая программа, скептично не поверил бы. 1 минута и миссия на русском. Сколько мучений было раньше. Автор, Вы молодец. Закину донат. Удачи Вам во всем! 1
Hokum Posted Wednesday at 04:43 PM Author Posted Wednesday at 04:43 PM Большое спасибо за отзыв! Если я помог хоть кому-то, то уже все не зря Мой ПК: i7-12700K, 64Gb RAM@4000Mhz, 4080Super
Acriculor Posted Thursday at 03:27 AM Posted Thursday at 03:27 AM (edited) 10 часов назад, Hokum сказал: Большое спасибо за отзыв! Если я помог хоть кому-то, то уже все не зря Конечно не зря, потому что это очень полезный инструмент. Я раньше в редакторе парился. В нём заниматься переводом крайне неудобно. Да потом и забросил эти танцы с бубном. А сейчас, если захочется вновь перевести мисси, так это будет без прошлого геммороя. Edited Thursday at 03:27 AM by Acriculor
Crazzy_rusian Posted Thursday at 10:31 AM Posted Thursday at 10:31 AM (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 Thursday at 11:15 AM by Crazzy_rusian 9800x3d, 64gb RAM, MSI Suprim 5080 16gb, SSD 2Tb | Meta Quest 3 VR
Seawolf1992 Posted Thursday at 01:28 PM Posted Thursday at 01:28 PM (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 Thursday at 01:37 PM by Seawolf1992 1
Hokum Posted Thursday at 02:47 PM Author Posted Thursday at 02:47 PM 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
Hokum Posted Thursday at 02:57 PM Author Posted Thursday at 02:57 PM 4 часа назад, Crazzy_rusian сказал: Вот сюда вместо вставки из буфера, подставляешь то что тебе вернет ИИ-шка и по сути все. Единственная что скорее всего придется сделать интерфейс для регистрации пользователя(не уверен нужно ли это точно, надо проверять) Да, я конечно рассматривал возможность перевода через API ключ, но это сильно усложнит для конечного пользователя процесс и перегрузит интерфейс, так же рассматривал возможность подключения локальной ИИ модели на базе Ollama, хотя это так же может вызвать сложности у обычного пользователя(Но если грамотно "спрятать" функцию, то это может пригодиться для продвинутых пользователей, над этим я больше думаю и даже не исключаю такого варианта, но не сейчас) Даже deepseek при переводе миссий в котором есть английский чередующийся с китайским (да еще если строки перевода будут идти одна за одной с одинаковым переводом) неплохо так начинает "плыть", и стандартного контекста уже не достаточно. Но после некоторых изменений, все же можно заставить его перевести и это А ведь это облачная модель, она гораздо мощьнее локальной 1 Мой ПК: i7-12700K, 64Gb RAM@4000Mhz, 4080Super
marmeys Posted Thursday at 02:58 PM Posted Thursday at 02:58 PM (edited) посмотрите этот фаил миссии. пытался перевести. там около 450 строк. DeepSeek все перевел. в программе вашей только 160. остальное не переводит. . сможете перевести ? что можете сказать о миссии. в чем проблема? 3.08 - Air Air Exam.miz Edited Thursday at 03:01 PM by marmeys
Hokum Posted Thursday at 03:45 PM Author Posted Thursday at 03:45 PM (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. Если не хочется искать почему не хватает строк можно подправить контекст указав это явно. Спасибо, что поделился результатами. Текстовый файл с переводом прилагаю. Готовую миссию тоже, но настоятельно предлагаю закинуть текст в миссию и закрепить результат Еще можно проверить не было ли отключено отображение каких то ключей после копирования, но перед вставкой перевода Так же отвечу на другие вопросы) 3.08 - Air Air Exam_RU.miz перевод для 3.08 - Air Air Exam.miz.txt Edited Thursday at 03:48 PM by Hokum 1 Мой ПК: i7-12700K, 64Gb RAM@4000Mhz, 4080Super
marmeys Posted Thursday at 04:19 PM Posted Thursday at 04:19 PM (edited) Спасибо! а вот теперь я буду разбираться . что я делал не так. установил настройки как у вас. когда я копирую текст. он добавляет рекомендации для ИИ. вот это как работает? добавление рекомендаций. я пытался копировать текст "выделить все " и вставить(или копировать) его правой кнопкой мыши в ДИП СПИК . перевод также из ДИП спика вставить в окно перевода. не через буфер. или это тоже самое? тут как быть? или обязательно из буфера. Edited Thursday at 04:20 PM by marmeys
Hokum Posted Thursday at 08:31 PM Author Posted Thursday at 08:31 PM (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 Thursday at 08:36 PM by Hokum 1 Мой ПК: i7-12700K, 64Gb RAM@4000Mhz, 4080Super
marmeys Posted Thursday at 08:54 PM Posted Thursday at 08:54 PM Большое спасибо!!! вот теперь все понятно. 14 минут назад, Hokum сказал: Если количество строк не сошлось нужно посмотреть в каком месте ИИ объединил строки и разбить эту строку как в оригинале. Для миссий с количеством строк более 500 логичнее использовать специальные текстовые редакторы. 14 минут назад, Hokum сказал: если включен переключатель "Добавить контекст" то к скопированному тексту из миссии добавляется контекст для перевода для ИИ 17 минут назад, Hokum сказал: (ВНИМАТЕЛЬНО! КОЛИЧЕСТВО СТРОК ПЕРЕВОДА ДОЛЖНО СТРОГО СОВПАДАТЬ С КОЛИЧЕСТВОМ СТРОК ИЗ ОКНА ОРИГИНАЛЬНОГО ТЕКСТА) Это ЕДИНСТВЕННОЕ очень важные дополнения.. спс вопрос появился . зеленым выделил. это как сделать? и где? а номер строки? если надо.
Hokum Posted Thursday at 09:54 PM Author Posted Thursday at 09:54 PM Вот например оригинал: 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++ 1 Мой ПК: i7-12700K, 64Gb RAM@4000Mhz, 4080Super
marmeys Posted yesterday at 01:57 AM Posted yesterday at 01:57 AM (edited) Спасибо так понятней!!! а вот смотрите. миссия которую вы переводили из компании обучения на ф-18. перевод как то связан с другими миссиями в компании. например -- взлет с аэродрома и посадка туда же. все нормально слетал выполнил задание.. сажусь. сообшение. что я не зацепился за трос(и тут я понял что миссии взаимосвязаны) авианосца. в миссии авианосца нет. вот ссылка на обучаюшие компании. как это можно перевести. что скажете? очень интересное обучение! https://files.digitalcombatsimulator.com/userfiles/6a6/3s2uls723o70m1rw4pe1pms4k8gt1351/Gunthrek_Academy_FA-18_Bagel_Fixpack_v1.3.0.7z П.С.гениальная программа. просто чудо. Edited yesterday at 04:09 AM by marmeys
Hokum Posted yesterday at 06:23 AM Author Posted yesterday at 06:23 AM По сути кампания это просто набор миссий, они так же и переводятся отдельно. Можно открыть программой файл .cpm и перевести описание кампании.(заменится английское описание) 1 Мой ПК: i7-12700K, 64Gb RAM@4000Mhz, 4080Super
Recommended Posts