Показать сообщение отдельно
Непрочитано 12.04.2017, 22:16   #1136
Пользователь

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

Цитата:
Сообщение от Emperor Посмотреть сообщение
doesitmatter, Как самый умный распаковал всё на раб. стол и на нём же провернул распаковку *.xdat. В итоге еле очистил его от *.xml'ок.

Встал вопрос: А зачем, если нечем паковать обратно? Я наверное чего-то не понимаю, но я не вижу явного профита от анпака всех окон и их наполнения в виде *.xml. Впрочем для чего-то явно пригодится.
Я несколькими постами выше описывал процедуру запаковки. nwindow.dll умеет паковать *.xml обратно в system/Interface.xdat. Для этого нужно:
  • Добавить секцию UIEditor в system/Option.ini:
    Код:
    [UIEditor]
    SysPath=INTERFACE_PATH
    Где INTERFACE_PATH – путь к директории с нужными XML
  • В INTERFACE_PATH поместить *.xml интерфейса
  • В INTERFACE_PATH поместить Schema.xsd, которой соответствуют *.xml интерфейса. В принципе, схему можно сгенерировать и по xml (например, при помощи apache xmlbeans), главное, чтобы имена control-типов оканчивались на Type (например, WindowType). В UIEditor (///ui) есть список всех контролов.
  • Пропатчить nwindow.dll. Патчи для ct26 p4:
    • Включить сборку xdat: записать {0xb1, 0x01} по 0x103a0855
    • Отключить сборку UnrealScript (иначе движок не найдет линкер и упадет): {0x31, 0xc0, 0xc3} по 0x103a09d0.
Теперь при запуске игры nwindow будет пытаться собрать Interface.xdat

Последний раз редактировалось doesitmatter; 13.04.2017 в 05:01.
doesitmatter вне форума Ответить с цитированием
Сказали спасибо: