Поддержка мультиязычности в клиенте Lineage 2 - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Обучающие статьи

Обучающие статьи Собрание статей, мануалов и гайдов помогающих в создании и администрировании сервера Lineage 2.
Описание темы:Возможность выбора языка в настройке игры.

Ответ
Опции темы
Непрочитано 28.08.2010, 23:21   #1
Аватар для DreamTheater
Пользователь

Автор темы (Топик Стартер) Поддержка мультиязычности в клиенте Lineage 2

Итак мануал о том как сделать мультиязычный клиент своими руками.

Для работы нам понадобится:
  1. L2EncDec.
  2. Любой hex-редактор. Лично я использовал Hex Workshop.
  3. Файлы русской локализации.

Для начала нужно составить список файлов, которые нам понадобятся. Для этого в любом файловом менеджере (проводник, Total Commander и т. п.) открываем папку с клиентом еврооффа и делаем поисковый запрос "*-e.*" (кавычки ставить не нужно).

Поиск покажет Вам все файлы с окончанием на "-e" - это и есть файлы с английской локализацией. Теперь нужно по полученному списку вынуть из клиента руоффа аналогичные файлы с окончанием "-ru".

Вся локализация заключается в файлах *.dat и Lineage2RU.ini, которые находятся в системной папке, файле L2Font-ru.utx в папке SysTextures и файлах русской озвучки в папке Voice.

Хочу заметить, что у русского клиента файлов локализации будет немного больше чем у оригинального. Это связано с тем что Иннова напихала в него какой-то отсебятины, которая с EU-клиентом работать все равно не будет, поэтому отбирайте только те файлы, которые будут парой -e/-ru.

Далее *.dat нужно будет пропатчить, как это сделать было написано множество раз, поэтому не будем вдаваться в подробности. Хочу только сказать, что лучше всего сперва проверить работоспособность нашего "ру-патча", чтобы удостовериться что все файлы читаются нормально и клиент работает с ними без ошибок.

После того как Вы разместили все русские файлы на своих местах в оригинальном клиенте можно приступать к самой интересной части.

Находим в системной папке клиента файл localization.ini и раскодируем его при помощи L2EncDec'а (кодировать обратно при этом не обязательно, клиент будет работать и так). Для того чтобы включить в клиенте выбор языка нужно поменять несколько параметров. После редактирования файл должен выглядеть примерно так:
Код:
[LanguageSet]
Language=2
1=English
2=Russian
EnableEngSelection=True

[English]
English_Code=e
English_Font=L2Font-e.SmallFont-e
English_Glyph=SmallFont-e.gly
English_Font2=L2Font-e.LargeFont-e
English_Glyph2=LargeFont-e.gly
English_Minimap=L2Font-e.Minimap.worldmap
English_LogoTexture=L2Font-e.start_logo-e
English_LoadingTexture=L2Font-e.loading02-e
English_MiniLogoTexture=L2Font-e.mini_logo-e
English_TownMap=L2Font-e.TownMap
English_ReplayLogoTexture=L2Font-e.Replay_logo-e

[Russian]
Russian_Code=ru
Russian_Font=L2Font-ru.SmallFont-ru
Russian_Glyph=SmallFont-ru.gly
Russian_Font2=L2Font-ru.LargeFont-ru
Russian_Glyph2=LargeFont-ru.gly
Russian_Minimap=L2Font-ru.Minimap.worldmap
Russian_LogoTexture=L2Font-ru.start_logo-ru
Russian_LoadingTexture=L2Font-ru.loading02-ru
Russian_MiniLogoTexture=L2Font-ru.mini_logo-ru
Russian_TownMap=L2Font-ru.TownMap
Russian_ReplayLogoTexture=L2Font-ru.Replay_logo-ru
Неиспользуемые языки и блоки можно удалить.

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

Во всей данной работе есть один недостаток - в настройках клиента русский язык будет отображаться как Japanese, но где наши танки не ходили

Раскодируем файл interface.u и открываем в hex-редакторе.

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

В текстовом блоке редактора выполняем поиск по запросу "Japanese", первое же найденное совпадение это и есть то что мы ищем. Байты, составляющие слово, нужно заменить на "Russian ". В слове "Russian" меньше букв, поэтому замените лишний байт в конце слова пробелом. Сохраните файл и закодируйте его в обратном порядке.

Enjoy

Последний раз редактировалось Ashe; 01.03.2014 в 03:16.
DreamTheater вне форума Отправить сообщение для DreamTheater с помощью ICQ Ответить с цитированием
Сказали спасибо:
Непрочитано 30.08.2010, 00:46   #2
Аватар для DreamTheater
Пользователь

Автор темы (Топик Стартер) Re: Поддержка мультиязычности в клиенте Lineage 2

Ах да, и еще... Все данные манипуляции могут привести к непредвиденным проблемам, например к таким как нестыковка путей к текстурам, в результате чего местами возникнут черные поля, или неожиданные критические ошибки клиента. Те кто понял основную идею и немного понимает структуру hex-кода разберется дальше сам. Желаю удачи в ломании
DreamTheater вне форума Отправить сообщение для DreamTheater с помощью ICQ Ответить с цитированием
Непрочитано 02.09.2010, 14:59   #3
Аватар для Ultimate
Герой

По умолчанию Re: Поддержка мультиязычности в клиенте Lineage 2

Проблемка, при загрузке после выбора чара, черный экран)) тобишь лоадинг скрина нету.как то поправимо?
__________________
Если помог, ткни плюсеГ, это же так просто
Ultimate вне форума Отправить сообщение для Ultimate с помощью ICQ Ответить с цитированием
Непрочитано 03.09.2010, 02:28   #4
Аватар для DreamTheater
Пользователь

Автор темы (Топик Стартер) Re: Поддержка мультиязычности в клиенте Lineage 2

Цитата:
Сообщение от Ultimate Посмотреть сообщение
Проблемка, при загрузке после выбора чара, черный экран)) тобишь лоадинг скрина нету.как то поправимо?
Да, в файле interface.u заменить все L2Font-j на L2Font-e или L2Font-ru. Первый случай проще.
DreamTheater вне форума Отправить сообщение для DreamTheater с помощью ICQ Ответить с цитированием
Непрочитано 03.09.2010, 08:57   #5
Аватар для Ultimate
Герой

По умолчанию Re: Поддержка мультиязычности в клиенте Lineage 2

оу, круто. кстати не обязательно же кодировать обратно файл.
и еще вопросик. в игре карта только на русском. Ни как не выходит на англ сделать. В файле локализации все верно путь прописан. =(
__________________
Если помог, ткни плюсеГ, это же так просто
Ultimate вне форума Отправить сообщение для Ultimate с помощью ICQ Ответить с цитированием
Непрочитано 03.09.2010, 13:29   #6
Аватар для DreamTheater
Пользователь

Автор темы (Топик Стартер) Re: Поддержка мультиязычности в клиенте Lineage 2

Цитата:
Сообщение от Ultimate Посмотреть сообщение
оу, круто. кстати не обязательно же кодировать обратно файл.
и еще вопросик. в игре карта только на русском. Ни как не выходит на англ сделать. В файле локализации все верно путь прописан. =(
Дело в том, что в клиенте Эпилога, в зависимости от того какой сет выбран в файле localization.ini, всегда будут загружаться только звуки и текстуры языка по-умолчанию, независимо от выбранного в данный момент. На Фрее уже все в норме

Последний раз редактировалось DreamTheater; 03.09.2010 в 15:04.
DreamTheater вне форума Отправить сообщение для DreamTheater с помощью ICQ Ответить с цитированием
Непрочитано 02.11.2010, 00:02   #7
Пользователь

По умолчанию Re: Поддержка мультиязычности в клиенте Lineage 2

хм чет не появляется выбор языка =\

Последний раз редактировалось simon; 02.11.2010 в 08:49. Причина: =\
simon вне форума Ответить с цитированием
Непрочитано 02.11.2010, 00:07   #8
Аватар для Deazer

По умолчанию Re: Поддержка мультиязычности в клиенте Lineage 2

Интересная тема ! Спасибо
Deazer вне форума Ответить с цитированием
Непрочитано 30.03.2011, 01:59   #9
Пользователь

По умолчанию Re: Поддержка мультиязычности в клиенте Lineage 2

2DreamTheater

Мне вот интересно вставал вопрос чтобы в выпадающем меню сделать 3 языка.
Саму обработку кода я "вписал", но вот с выбором что-то никак. Выпадает всё равно 2, но там нет места чтобы воткнуть еще, и что-то немного "сложноватый" кусок.

Может есть какие идеи?
ma4o вне форума Ответить с цитированием
Непрочитано 30.03.2011, 02:25   #10
Аватар для Plush_Hero
Пользователь

По умолчанию Re: Поддержка мультиязычности в клиенте Lineage 2

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

ma4o,

Код:
[LanguageSet]
Language=2
1=English
2=Russian
EnableEngSelection=True
Параметр Language смнени с 2 на 3 , ну или сколько у тя там языков и допиши нужный тебе . Например 3=Albanskiy.
Если не поможет значит в НЕХ надо лазить . На досуге пороюсь , отпишу если чтото найду.
__________________
Plush_Hero вне форума Отправить сообщение для Plush_Hero с помощью Skype™ Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Режим разработчика в клиенте Lineage 2 PROGRAMMATOR Игровой клиент 85 31.08.2019 12:56
Поддержка клиента 1.5.1.14 RaZpiZdoS Серверная часть 6 16.04.2010 13:08
поддержка 1.5.1.9 XpyHDeL Серверная часть 11 15.02.2010 12:51
Поддержка квестов hardwar Lineage II 1 16.02.2009 15:03
Mu Web 0.3 rus, поддержка summoner'a lvs Веб обвязка 3 13.02.2009 15:51


© 2007–2019 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 20:18. Часовой пояс GMT +3.

Вверх