на главную
об игре
Star Wars: Knights of the Old Republic 2 - The Sith Lords 06.12.2004

Star Wars: KoTOR 2 "dlgeditor_232_rus Редактор диалогов игры С поддержкой русского языка"

Многие в комментариях часто интересуются - почему модификации на Kotor и Kotor2 никто не переводит- потому что не было нормальной проги- точнее прога то была, но поддержки русской локали в нее не завезли. (А моды часто используют файлы .dlg, не только .tlk, для которого есть редактор)

Так вот добрый товарищ virusman по моей просьбе запилил поддержку русского языка, за что ему огромное спасибо. Теперь она должна читать и сохранять файлы. И в принципе каждый, у кого есть время, может перевести мод.

Что в архиве:
1. папка src (большинству не понадобится никогда в жизни) - в ней код и уникальные модули для этой программы, если кому-то захочется ее под себя подделать)
2.Собственно гвоздь программы - dlg editor( То что он читает по русски не значит что у него русский интерфейс! Но не кидайтесь камнями! Там и так все понятно.)
3. Небольшая прога GFFEditor(она сможет перевести те типы файлов которые не может dlgeditor)

Примечания: 1.подходит и под star wars knights of the old republic 2 и под 1.
2.Чтобы сменить шрифт запусти и закрой программу один раз, потом в C:\Windows\dlgeditor.ini можешь поменять Tree Font Size на любой другой. Или %system%, если windows установлен в другой папке.

P.S. Также спасибо товарищу KuraiNeko, который в свое время поднял у меня интерес к этой теме.

Комментарии: 25
Ваш комментарий

Довольно интересная прога. Спасибо большое за старания)

1

Хmах Tendegern Спасибо за добрые слова. Хотя повторю еще раз - написал эту версию virusman , я только попросил, так что ему надо сказать большое спасибо. Щас времени не много, перевожу мод. Но вот ОЧЕНЬ КРАТКАЯ инструкция как пользоваться: 1. качаете какой-либо мод, где в папке override есть файлы .dlg (или можно их извлекать из файлов .mod, но это долго, может потом напишу) 2. открываете этой прогой и вместо строчек, написанных на английском - entrry и reply( красных и синих) тыкнув на них, пишете русский текст в окошке справа. 3. Когда все перевели тыкаете file - save. Все остальные функции проги, если вы хотите просто переводить трогать не стоит.

1

Не сегодня-завтра напишу как пользоваться, если надо. Обновлено 02.03.2016 Нашел свой старый перевод Риадми для длг эдитора, который делал когда-то, но забросил и думал, что потерял. Может содержать ошибки и неясности, неполон, желания доделывать нет, но и так при одновременном открытии программы и ридми неплохо помогает. Все функции, которые нужны для перевода и даже больше здесь переведены. Удобней скопировать себе в блокнот и читать оттуда.

Спойлер

----------------- DLGEditor v2.3.2 rus Редактор диалогов игры с поддержкой русского языка. 2014. ----------------- Перевод - StoRm4ik. (?) - то, что автор как бы и сделал, а как бы и нет. Не знает работает ли. Общие сведения: ---------- DLGEditor - это диалоговый просмотрщик, имеющий графический интерфейс и возможность редактирования для Star Wars: Рыцари Старой Республики и Star Wars: Рыцари Старой Республики II: The Sith Lords. Редактор разделен на две области. Верхняя панель содержит TreeView - прорисовку диалога - имея в виду NPC, выступающего красным (Entry) и персонажа отвечающего синим (Reply). После выделения узла дерева, появляются подробные информеры в нижней панели, содержащей узел специфической информации, которая может быть изменена. Панель меню DLGEditor ---------------------- ---[File]--- File: New - Будет создан новый диалог (только с корневым узлом). File: Open... - Позволяет пользователю просматривать диалоговое окно открываемого файла. File: Revert - Это приведет к тому, что текущее диалоговое окно потеряет все изменения с момента его последнего сохранения. File: Close - Закрывает текущее диалоговое окно. Представленные "деревья" будут удалены. File: Save - Сохраняет диалог с текущим именем. File: Save As... - Показывает диалоговое окно Сохранить как... позволяя пользователю просматривать и указывать путь. File: Change TLK File Paths... - Открывает всплывающее окно, содержащее текущие пути, указанные в Котора и ТСЛ файлах dialog.tlk. Кнопки [...] позволяют пользователю выбрать файл dialog.tlk если он хочет его использовать DLG-редактором. File: Launch in GFF Editor - Если GFF editor.exe присутствует в текущем каталоге, он будет запущен текущим диалоговым окном. File: Launch in DLGEdit - Если Regedit.exe присутствует в текущем каталоге, он будет запущен текущим диалоговым окном. File: Exit - Завершает работу DLGEditor. ---[EDIT]--- Edit: Undo - поддерживается 4 уровня отмены(уборка текста). Edit: Add New Entry - Добавляет диалоговую ветвь Entry (красный), которую говорит NPC. Если корневой узел или REPLY будет выделен, когда выбрана эта команда меню, новая запись появится непосредственно под выделенным узлом и станет выделенной. Если запись выделена, когда из этого меню выбрана команда, будет добавлена новая REPLY ветвь и новая Entry будет прикреплена к ней. Edit: Add New Reply - Добавляет REPLY (синюю) диалоговую ветвь, которую говорит игрок. Если запись выделена, когда эта команда меню выбрана, новая запись появится непосредственно под выделенным узлом и станет выделенной. Если Корневой узел или REPLY будет выделен, когда из этого меню выбрана команда, будет добавлена новая ветвь Entry и новый REPLY будет прикреплен к ней. Edit: Break Link With Parent рвет родительскую ветку, создавая Orphan - This will sever the parent-child relationship between two branches. If there is no other link Orphan to the severed child branch, it will become an Orphan. Edit: Delete Node Completely - удаляет узел репли или ентри из диалога This will remove the Entry or Reply node completely from the dialog, severing all parent-child relationships (which may cause other child branches to become Orphans.) Edit: Automatically Apply Changes - Включение этой опции меню заставит TreeView(дерево) и внутреннее представление памяти из диалогового окна обновляться каждый раз когда выбран узел. Если снять этот флажок и  создать кнопку Внести Изменения в нижней панели, которая должна быть нажата, чтобы обновить TreeView( в виде дерева) и структуру памяти. Этот пункт меню по умолчанию включен. Edit: Cut Node - This will cause a Break Link With Parent at the current node, рвет ветку, но хранит в памяти but will store the broken branch in an internal buffer. Edit: Copy Node - Similar to Cut Node but without causing the current node to как cut но не отрывает строку be broken from its parent. Edit: Paste Node as Copy - This will paste a symbolic link to the branch that was previously stored via Cut Node or Copy Node. The index of the node pasted will be the same as the index of the copied or cut node. Edit: Paste Node as Copy - This will create a new branch identical to the branch that was previously stored via Cut Node or Copy Node. The index of the node pasted will be different from that of the copied or cut node. Edit: Delete All Orphans - Этот пункт меню будет активен, если Orphans присутствуют в текущем диалоге. При нажатии он включит просмотр Orphans и рекурсивно удалит каждый ORPHAN узел. ---[MODE]--- Mode: Toggle Mode: KotOR. Mode: Toggle Mode: TSL - В диалоговом режиме Котор, DLGEditor переключится на KotOR dialog.tlk файл и покажет только KotOR поддерживаемые диалоговые поля в нижней панели. Если KotOR dialog.tlk файл не доступен, DLGEditor будет генерировать сообщение об ошибке и будет переключаться в режим TSL. И наоборот. Mode: Language Settings - Плевать на это, не важно - Котор не поддерживает официально русский текст. Mode: Resolution - Установка разрешения экрана сделает шрифты и мини-приложения выглядящими больше или меньше. Изменения не произойдут пока DLG редактор не будет закрыт и вновь открыт. Опция Use Default вернет масштабирование обратно к нормальному размеру при возобновлении работы редактора DLG. ---[VIEW]--- View: Show Conditionals in Tree - This will display conditional scripts in the Показывает скрипты Treeview pane. These are the scripts that are run to determine whether the branch will be displayed as a dialog option in-game. Conditional scripts will appear in angle brackets prepended to the text for each node. If no conditional is present, empty angle brackets will appear. Note: TSL has two possible conditions per node and will therefore show two sets of angle brackets prepeneded to each branch. View: Show Scripts in Tree - This will display conditional scripts in the Показывает скрипты Treeview pane. These are the scripts that are run to when the dialog option is selected in-game. Scripts will appear in angle brackets appended to the text for each node. If no script is present, empty angle brackets will appear. Note: TSL has two possible scripts per node and will therefore show two sets of angle brackets appended to each branch. View: Show Indices in Tree - Показывает цифру ентри или репли This will display each node's index in the Treeview pane. Indices are listed as E# or R# depending on whether they are Entries or Replies. Each # represents a unique branch of the dialog. The treeview may show the same branch more than once in case of multiple points of branch entry. Indices appear in square brackets prepended to the text of the branch. View: Show Orphaned Replies/Entries - Orphan nodes will normally not appear in Показывает не участвующие the Treeview since they have no branch в игре строки entry point; that is, they have no parent and will not appear in-game. When this option is selected, Orphan nodes will appear as purple and will be listed underneath the Root Node. If this value is turned off and orphans do exist, a popup box will appear one time to alert you to that fact. Expand All: Открывает все ветви для просмотра. Узлы будут отображаться с [-] показателем. Fold All: Скрывает все ветви, кроме тех, что в корневом узле. Узлы будут отображаются с [+] показателем. Go to Index: Эта опция меню позволяет пользователю переходить к определенному индексу в диалоге. Индексы должны быть в пределах допустимого диапазона и иметь синтаксис E # или R #. Если выбранный индекс представляет Orphaned узел и Показ Orphaned Replies/Entries не включается, то всплывающее окно сообщит пользователю. Search by StringRef: Всплывающее окно появится, позволяя пользователю указать String Ref. Будет искаться диалоговое окно начиная с Entry, после которой будет искаться в REPLY в числовом порядке. Если найдено, узел дерева будет выделен и отобразится. Если большечем один экземпляр найден, появится всплывающее окно с запросом пользователю, следует ли отображать следующий экземпляр. Если поиск сбоит всплывающее окно сообщит пользователю. Search by Text: Похожа на поиск по StringRef исключением части текста использованного в качестве критерия поиска. Поиск будет применяться к обоим локализованные строкам и dialog.tlk строкам. ---[HELP]--- Help: About DLGEditor... - показывает версию и информацию о разработчике. Использование DLGEditor ----------------------- 1.После запуска DLGEditor будет пытаться найти dialog.tlk файлы для KotOR и TSL. При обнаружении обоих файлов запуск будет происходить без каких-либо окон сообщения. Если только один из двух dialog.tlk файлов найден, появится появится окно сообщения указывая на это и предполагая, что вы выберете Файл: Изменить ТЛК путь к файлам... (Ctrl + T), чтобы вручную выбрать недостающий TLK файл, если это необходимо. Если ни один dialog.tlk файл найден, DLGEditor откроет [Файл: Измените ТЛК пути к файлам ...] диалоговое окно. Если пользователь не в состоянии указать расположение по меньшей мере одного dialog.tlk, DLGEditor завершит работу. (Если вы пытаетесь работать полностью в автономном режиме для полностью настраиваемого диалога и не имеете dialog.tlk ссылки, просто обманите DLGEditor путем переименования любого файла в dialog.tlk и указав DLGEditor путь на него для обоих KoTOR и TSL) Текущий dialog.tlk файл всегда отображается в левом нижнем углу нижней панели. 2.Начните использовать DLGEditor, открыв существующий Файл DLG или создав новый с нуля. DLG файлы из KotOR и TSL могут быть извлечены с помощью KotOR Tool. При открытии DLGEditor будет пытаться определить, является ли .DLG KotORовским или диалогом TSL и автоматически переключится на KotOR или TSL режим (как - можно увидеть в меню Режим). Если, однако, режим не может быть переключен в связи с отсутствием этого dialog.tlk файла, пользователь будет проинформирован с помощью окна сообщения. 3.Диалоги появятся в верхней панели как TreeView. Узел на дереве может быть выделен одним щелчком мыши на нем. Выделенный узел будет отображать узлы свойств в нижней панели. Затем пользователь может редактировать эти свойства. Щелчок правой кнопкой мыши на узле вызовет контекстное меню для быстрого редактирования вариантов. 3.Корневой узел является особым узлом, который содержит общие свойства диалога. Эти свойства влияют на весь диалог. Промежуточные узлы представляют собой Entry или REPLY строки. НПС говорят линии Entry (показано красным); игрок говорит ответ Reply (показано синим цветом). Свойства Replies и Entries очень похожи. Свойства корневого узла ----------------------------- - Ambient Track: Resref музыкального файла (номер) - Camera Model: (?)a Resref камеры - Delay Entry: целое число, описывающее за сколько секунд задержки NPC будет реагировать на игрока - Delay Reply: целое число, описывающее за сколько секунд задержки перед игроком будет разрешено дать ответ - Script that fires when conversation ends: Resref со скриптом, который срабатывает когда диалог заканчивается нормально. - Script that fires if conversation aborts: Resref со скриптом, который срабатывает, если разговор прерывается преждевременно (например, в связи с боем). Я не уверен, работает ли это все в Которе / TSL. - Skippable: Логическое значение, означает что диалог может быть пропущен. - UnequipHItem: (?)логика - UnequipItems: (?)логика - Voiceover ID: Идентификатор звука, Resref. Для получения дополнительной информации об этом поле посмотрите учебник по добавлению голоса и синхронизации видео и звука в диалоге на: http://www.lucasforums.com/showthread.php?s=&threadid=126746 - Conversation Type: Является ли это разговором человек с человеком или компьютер с человеком. - Computer Type: Для разговора. Type = компьютер, это внешний вид компьютера. - AlienRaceOwner: Ссылки на строки в alien.2da для дроидов по умолчанию или чужеродных звуков. Полезно для диалогов, которые в основном дроид / чужой. (TSL only) - RecordNoVO: Если 1, то это означает, этот диалог использует звуки чужого или дроида из alienvo.2da с помощью AlienRaceOwner как строки по умолчанию. Полезно для диалогов, которые, прежде всего, дроид / чужой. Узлы могут варьировать звук, используя Emotion или свои значения AlienRaceNode этого узла. (Только TSL) - PostProcOwner: ? (integer) (TSL only) Свойства узлов веток в режиме KotOR --------------------------------------------- - Speaker/Listener: говорящий / слушающий. Если пусто - то NPC, который начал диалог. - Скрипт, который определяет Доступность 1 : Это скрипт, которой оценивает диалоговое окно для этой ветви. Скрипт должен быть объявлен как "int StartingConditional ()"и возвращаться 0 или 1 после завершения. Эта диалоговая ветвь не будет звучать или быть доступной, если сценарий возвращается в 0. - Скрипт при разговоре 2: Этот скрипт будет работать, когда это ветвь разговора. - VO_ResRef: Используется для озвучки за кадром и синхронизации видео и звука в диалоге. - Sound: Используется для чужих и дроидов звучит в диалоге вместо VO_Resref (KotOR only) - Sound Exists: Логика - Delay: Задержка перед этой веткой разговора (seconds?) - WaitFlags: ? (integer) - CameraID: использовать заранее определенную камеру для этой ветви. Камеры определяются в файле .Git по каждому району под поля CameraList. - CameraAngle: целое число, указывающее угол используемойкамеры, когда это Entry разговор. - FadeType: целое число, которое определяет тип Fade In / Fade эффектов используемых в этой ветке. / for more information on the next 4 fields see: \ \ http://www.lucasforums.com/showthread.php?s=&threadid=143372 / - Quest: ссылка на global.jrl квест - QuestEntry: запись, которая должна быть добавлены к журналу игрока, когда идет эта ветвь разговора - PlotIndex: ссылка на global.jrl квест - PlotXPPercentage: множитель за вознаграждение опытом точки после завершения квеста - Comment: данное поле просто так - для хранения комментариев разработчика - StrRef: Если это значение равно 0 или больше, то это значение - указатель на dialog.tlk запись. Если значение равно -1, то текст хранится в самом файле .DLG (так что большинство пользовательских диалогов будет -1 в и этом поле). - Text: Текст говорящего. Оно станет полем только для чтения, если StrRef не -1. - Animations: Вы можете выбрать анимации, которые Игрок / Нпс будут выполнять в диалоге путем перетаскивания анимации из доступных Списков Анимации к текущему списку анимации и выбрав Участника. Участник может иметь тег NPC или может быть представляющим основного персонажа NPC. Чтобы анимировать игрока, укажите его как Участника. Свойства узлов веток в режиме TSL --------------------------------------------- (TSL поддерживает все поля KotOR плюс следующие поля.) Conditional #1: Это то же самое как и "сценарий, который определяет Доступность диалога" выше Conditional #2: Вторичный скрипт для определения доступности Script #1: Это то же самое как и "Скрипт при разговоре 2" выше Script #2: Вторичный скрипт Скрипт при разговоре 2 P1 through P5: TSL поддерживает параметры, которые могут быть переданы в скриптах. Р1-Р5 представляют целые значения и скрипты (как в нормальные, и условные), которые делаются с помощью функции GetScriptParameter. String Param: TSL поддерживает параметры, которые могут быть переданы в скриптах.Парам представляет собой строковое значение и скрипты (как в нормальные,и условные) которые делаются с помощью GetScriptStringParameter функции. Not: Изменяет результат условного скрипта Logic: (?) Должна быть 0, если Условие № 2 не уточнено. В противном случае 0 означает результаты обоих условий. Emotion: Используется для озвучки чужеродных / дроидов, меняет произнесенный звук. Ссылка на alienvo.2da FacialAnim: (?) Не уверен, отменили эту идею или нет, но думаю, что некоторые модели содержали лицевые анимации, на которые этот параметр будет ссылатьсяй. AlienRaceNode: Когда RecordNoVOOverride = 1 для этого узла, это значение ссылки строки в alienvo.2da используется для звуков дроидов и чужих. См. также Эмоция для данного узла. PostProcNode: (?) Integer NodeID: (?) Integer CamVidEffect: Изменяет стиль камеры во время этой ветви диалога. Не уверен, насколько обширно этот параметр был реализован. RecordNoVOOverride: Если 1, этот узел будет использовать звуки дроида или чужого, а не VO_Resref. Значение данного узла AlienRaceNode и Emotion свойств смотри выше в alienvo.2da. Полезно, когда дроиды / пришельцы говорят во время диалога людей. RecordVO: Когда 1, то указывает, что данный узел будет использовать VO_Resref, даже если RecordNoVO General Properties равны 1. Полезно, когда люди говорят во время диалога дроида / чужого. Node Unskippable: Логическое значение, переопределяет параметр Dialog по стандарту Skippable (см. Свойства корневого узла). CameraAnimation: (?) СЛОВО осуществляещее анимацию камеры. Дополнительная информация ----------------------- Для получения дополнительной информации о DLG формате файла посмотрите: http://nwn.bioware.com/developers/Bioware_Aurora_Conversation_Format.pdf Для более подробной информации о моддинге KotOR и TSL посетите: http://www.lucasforums.com/forumdisplay.php?s=&forumid=324 Эта утилита предназначена для всех моддеров, которые хотят улучшить игровые возможности Star Wars для себя и других. Контактная информация: ----------------------- Разработчик: tk102 zxcvbnm6012@yahoo.com Пожалуйста, направляйте свои замечания, предложения, упущения, представления и ошибки по электронному адресу, указанному здесь. - Хотя я писал автору, а он мне не ответил) ну да ладно.

0

StoRm4ik напиши пожалуйста, и напиши какой от этой программы толк.

0

Доктор_блад какой толк писал уже- прога поддерживает русский, через нее переводить удобней, может перевести те файлы. что находятся не в tlk а в dlg. как пользоваться попозже напишу.

0

Воу. Отличная, при том и полезная штука) Спасибо.

0

Окно справа есть, но текст в нём не редактируется.

0

Лис Аика Поконкретней пожалуйста - что пытался перевести, я в принципе догадываюсь, где мог возникнуть косяк, прога рабочая 100%.

0

StoRm4ik Файлы tlk из Override, относящиеся к проекту реставрации. В нижней половине программы, в окне инструментов, в левой верхней части окно с отображаемым текстом. По идее оно должно быть белым и текст в нём должен поддаваться редактуре, но это окошко серое и текст не редактируется.

0

StoRm4ik И очень хочется перевести Планету Дроидов.

0

Лис Аика хочешь кинь мне файл, я могу глянуть, но скорее всего дело в том, что строка файла "прописана" в .tlk файле. Над окном с отображаемым текстом есть строка StrRef, так вот если в написано ней -1, то текст хранится в самом файле .DLG и его можно редактировать, а если любое рандомное число от 0 или больше, то это значение - указатель на dialog.tlk запись, и надо редактировать файл dialog.tlk другой прогой. Сам я не сталкивался, так что надо бы протестить будет ли это работать, но по идее должно - если лень искать в тлк файле строку можешь изменить значение StrRef на -1 и написать после этого перевод в окно.

0

fanssciw нет проблем, что перевести решил?

0

fanssciw А не ты ли прошлую версию тлрсм переводил? Кстати, если возникнут какие-то вопросы, обращайся, попробую ответить. Насчет шрифтов, не знаешь чем их редактировать, я просто с ними ни разу не сталкивался. Хотелось бы сделать шрифты поздоровее. Или есть какие- то ограничения на размер шрифтов?

0

StoRm4ik Да хотя бы взять те же зогавские шрифты от сержанта и сделать их под 1680x1050, 1980x1050 разрешения. Txi файлы обычным блокнотом можно править, а dds нужно прогнать через nwnexplorer и уже в tga формате в том же фотошопе перерисовывать. Если просто в txi файлах увеличить размер букв они получаться размытыми.

0

У кого-нибудь уже есть сделанный перевод для TSLRCM 1.8.3B??

0

LaiCORE http://www.playground.ru/files/rusifikator_kotor_ii_tslrcm_m4-78-93922/

0

Может я неправильно что-то делаю но у меня не получается перевести мо Revenge of Revan. Может скажете почему не получается?

0

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

0

Только Вирус не писал прогину) Как собственно и я (KuraiNeko) Все что было от меня - добыча с реверсом оригинального кода эдитора + сборище всех хеобходимых модулей к перлу, после чего перепиливал тулкид под русню, как итог - вышло читает и не записывает причем по моему собственному же затупу) Вирус потом затуп поправил. Однако авторство ДЛГ эдитора не принадлежит никому из нас) Рус версии или не рус - не имеет значение)

0

Andrey Savenkov Ну, так я же и не писал, что virusman - автор , а то, что он доделал поддержку русского языка. В комментах я писал про именно переведенную версию, но чтобы не было не верного понимания исправил сейчас там слова. За реверс - спасибо, модули, насколько знаю, может и ошибаюсь, virusman искал в базе скриптов для перл и на старварскнайтс.ком. Твоя версия, насколько щас помню (возможно путаю еще с какой-то прогой) вроде записывала - просто крокозябрами, и это было не удобно, в игре при наличии русских шрифтов - все работало. Так что, я авторство никому не приписывал , хотя и недоволен тем, что tk102 мне, в свое время, даже не ответил, хотя возможно, он вообще этим уже не занимался. В любом случае - главное, что теперь поддержка русского языка в проге есть - так что и тебе спасибо, и virusman`у, и автору оригинальной проги.

0

StoRm4ik Это да, в одном плейсменте затупил и не проставил utf8 кодиру, в результате сохранение русского выливалось в кроки) В последствии копания мне надоели и Вирус безусловно красавчик что нашел этот затуп. Касательно бургов - они не особо спешат обычно делиться исходниками, и это печаль)

0

я предложил бы собраться в 4-6 человек и перевести все отдельные диалоги за неделю в полне, и за мода KOTOR "Restored Content Mod 2.0", потому что одному это тяжело и долго.

0

А почему нельзя редактировать диалоги? Можно изменить только то, чего не было раньше

0