Редактируем interface.u (Hex вариант) - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Игровой клиент

Игровой клиент Есть вопросы по поводу редактирования dat, utx и других файлов клиента, пожалуйста, задавайте их здесь.

Ответ
Опции темы
Непрочитано 05.04.2016, 22:48   #1
Герой

Автор темы (Топик Стартер) Редактируем interface.u (Hex вариант)

Раз уж пошла такая пьянка с большим интересном к редактированию интерфейса решил поговорить о насилии редактировании interface.u. На вбросы уровня гуру в этом направлении не претендую, но думаю пара-тройка людей оценит.

Итак, инструментарий:
- UTPT
- l2decrypt (либо кому-чем удобно декомпилить клиентские файлы)
- Хекс редактор. Я использую 010 Editor

В качестве примера запилим следующую штуку*:

*Сделано в качестве примера, многого ожидать не стоит

Открыв в UT Package Tool interface.u, ищем нужный участок кода (для просмотра выбираем нужный класс \ функцию -> ПКМ -> Decompile). В примере один из вариантов - это


Код:
if ( bShowHPBar && (GetGameStateName() != "SPECIALCAMERASTATE") ) 
  {
    barHP.ShowWindow(); 
  } else { 
    barHP.HideWindow(); 
  }
Цель: заменить barHP.HideWindow() на barHP.ShowWindow().
Так независимо от кода выше будет отображаться HP, для всех целей в таргете.
Для этого нужно найти barHP.HideWindow() в байт коде. Тут поможет смещение:



Как включить отображение смещений в коде:
Свернуть ↑Развернуть ↓

Переходим к байт коду, для этого в UTPT жмем ПКМ по HandleTargetUpdate и выбираем Analize Raw Object


В появившемся окне жмем Format -> Auto format, в результате получаем следующий вид:


Далее - Jump -> To Object Offcet и вставляем смещение нужной строки (у нас это 0x00000755)


Получаем:
img:
Свернуть ↑Развернуть ↓

Т.е. barHP.HideWindow() соответствует 19 01 47 33 06 00 00 1C 96 16 в байт-коде.
Такую же процедуру проворачиваем и с barHP.ShowWindow(). Ему соответствует 19 01 47 33 06 00 00 1C A1 16.

Теперь собственно к редактированию:
Анпакаем interface.u. Я это делаю банальным перестаскиванием interface.u на l2decrypt.exe в проводнике, в результате чего появляется interface.u.clear, с ним и будем работать. Можно прогнать l2endec'ом, или еще чем...
Анпакнутый u открываем в хекс-редакторе и ищем строку с необходимым байт-кодом (Ctr + F -> 19 01 47 33 06 00 00 1C 96 16).



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



Заменяем 19 01 47 33 06 00 00 1C 96 16 на 19 01 47 33 06 00 00 1C A1 16 ( по сути один байт)



сохраняем, упаковываем (опять же любым доступным способом), готово.



Почему 010 Editor?:
Свернуть ↑Развернуть ↓


Может кто подкинет варианты упрощения процедуры, а то и вовсе другие варианты, был бы рад
__________________
Aka Stels
Shayne вне форума Отправить сообщение для Shayne с помощью Skype™ Ответить с цитированием
Сказали спасибо:
Непрочитано 06.04.2016, 00:11   #2
Аватар для Emperor
Пользователь

По умолчанию Re: Редактируем interface.u (Hex вариант)

Вопрос из разряда "просто интересно": А бар живой? Или не отображает действительность на хп игроков?
Emperor вне форума Ответить с цитированием
Непрочитано 06.04.2016, 00:15   #3
Аватар для Zubastic
ZG troll squad

По умолчанию Re: Редактируем interface.u (Hex вариант)

Отображает
Вброшу:
__________________
Zubastic на форуме Ответить с цитированием
Сказали спасибо:
Непрочитано 06.04.2016, 00:26   #4
Герой

Автор темы (Топик Стартер) Re: Редактируем interface.u (Hex вариант)

Цитата:
Сообщение от Emperor Посмотреть сообщение
Вопрос из разряда "просто интересно": А бар живой? Или не отображает действительность на хп игроков?
В этом варианте отображает на момент взятия в таргет, дальше не меняется.
__________________
Aka Stels
Shayne вне форума Отправить сообщение для Shayne с помощью Skype™ Ответить с цитированием
Непрочитано 06.04.2016, 01:23   #5
Аватар для Zubastic
ZG troll squad

По умолчанию Re: Редактируем interface.u (Hex вариант)

Цитата:
Сообщение от Shayne Посмотреть сообщение
В этом варианте отображает на момент взятия в таргет, дальше не меняется.
Не до конца доломали просто
__________________
Zubastic на форуме Ответить с цитированием
Непрочитано 06.04.2016, 09:57   #6
Герой

Автор темы (Топик Стартер) Re: Редактируем interface.u (Hex вариант)

Не в том месте. Да и полоску двигать нужно, но это уже следующая история
__________________
Aka Stels
Shayne вне форума Отправить сообщение для Shayne с помощью Skype™ Ответить с цитированием
Непрочитано 06.04.2016, 13:48   #7
Аватар для ChiF
Заинтересовавшийся

По умолчанию Re: Редактируем interface.u (Hex вариант)

ну гайд, профа вместо статуса, был бы более актуален)
ChiF вне форума Ответить с цитированием
Непрочитано 06.04.2016, 15:22   #8
Аватар для Emperor
Пользователь

По умолчанию Re: Редактируем interface.u (Hex вариант)

Цитата:
Сообщение от ChiF Посмотреть сообщение
ну гайд, профа вместо статуса, был бы более актуален)
Emperor вне форума Ответить с цитированием
Непрочитано 06.04.2016, 16:57   #9
Герой

Автор темы (Топик Стартер) Re: Редактируем interface.u (Hex вариант)

Цитата:
Сообщение от ChiF Посмотреть сообщение
ну гайд, профа вместо статуса, был бы более актуален)
Давай файлом скину да и всё, зачем эти гайды?)
__________________
Aka Stels
Shayne вне форума Отправить сообщение для Shayne с помощью Skype™ Ответить с цитированием
Непрочитано 09.04.2016, 13:47   #10
Аватар для fabuLous
Пользователь

По умолчанию Re: Редактируем interface.u (Hex вариант)

Цитата:
Сообщение от Shayne Посмотреть сообщение
Давай файлом скину да и всё, зачем эти гайды?)
он сам всё хочет
чтоб сделать такой же патч как в шаре
но сделал то сам
__________________
6k mmr es player
fabuLous вне форума Отправить сообщение для fabuLous с помощью Skype™ Ответить с цитированием
Ответ


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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как изменить заставку в игре или же редактируем L2Font-e.utx gorodetskiy Обучающие статьи 80 17.05.2016 05:02
Interface.u. kapa528 Игровой клиент 7 24.10.2015 03:07
Защита от кликера. Вариант. itcry Lineage II 36 02.02.2013 09:55
Редактируем DAT файлы при помощи Excel. trevolta Обучающие статьи 1 15.06.2011 08:39
[Гайд]Редактируем текстовые файлы клиента MMd Клиент 0 27.01.2010 13:59


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

Вверх