1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

[гайд] разбираем interfaces.pck .dtf .htf .stf

Тема в разделе 'PW Клиент', создана пользователем Hecate, 27 янв 2011.

  1. TopicStarter Overlay

    Hecate Пользователи

    Сообщения:
    1
    Лайки:
    14
    Пол:
    Женский
    Репутация:
    0
    ключевые папки interfaces.pck:

    faces - файлы окна создания персонажа (прически, лицо, тело и т.д.)
    logs - лог файлы, забытые доблестными разработчиками при сборке клиента (папка может отсутствовать)
    terrain - строительство домов
    wiki - файлы для кнопки wikipedia в клиенте 1.4.2+

    типы файлов внутри interfaces.pck и вложенных подпапках:

    .dtf - файлы, в которых заданы размеры всех окон, их внешний вид, кнопки, выпадающие списки и т.д.
    .htf - всплывающие подсказки и описания при наведении на кнопки и меню
    .stf - название и имена кнопок/меню практически всего клиента (за исключением тех, что прописаны для разговоров НПСов в эле)
    .xml - начиная с ревизии 390 pwi клиент ориентирован на распознавание этих типов файлов вместо .dtf (возможно скоро будет конвертер)
    script\config\global_api.lua - файл с md5 для maps, которая никак не проверяется
    iconlist_guild.dds - см пункт про лог файлы, что делают иконки гильдий тут, а не в сюрфейсе не понятно
    version.sw - файл с версией interfaces.pck, на который обычно смотрит патчер при сверке версии клиента с версией cpw
    ingame.dcf и loginui.dcf два ключевых файла, в которых хранится перечень файлов для загрузки интерфейса и логина
    (ошибки в них могут привести к вылетам клиента)
    Например, панель быстрого доступа к скиллам, взятая из клиента 1.4.1+ размером 8х9 (а не 8х6) приводит к светофору:
    меняем ingame.dcf:
    на
    о светофорах связанных с другими клиентскими файлами - не в этой теме.

    Как связаны между собой эти файлы? В dtf рисуются окна, кнопки и остальное с использованием переменных и их id команд (описание переменных приведу ниже), практически для всех id есть соответствующие названия, которые берутся из stf файлов, у части id есть ещё и всплывающие подсказки - находящиеся в htf.
    Откуда берутся номера id известно видимо только китайцам...

    dtf файлы:

    часто встречаемые переменные:


    Если необходимо поменять то или иное окно, проще всего найти stf файл, которому будет соответствовать свой dtf с таким же именем. Искать можно например через какой-нибудь TotalCommader - "Поиск" - "С текcтом" - например вводим искомое - "Характеристики", ставим галку "Unicode" и тотал найдет character.htf.

    рассмотрим пример строк из character.dtf:
    (для редактирования dtf лучше использовать MadEdit, т.к. в нем хорошо видна китайская кодировка имен файлов и папок)
    скачать MadEdit

    DIALOG "Win_Character" 0 0 311 420 0 1 10 "Window\对话框_标准边框x.dds" "" "" 0 0 283 33 "人鱼传说新界面\面板关闭按钮.tga" 47 30 96 96 96 255 1

    задаем размеры окна и фон:
    0 0 - начальная координата от которой будет рисоваться окно
    311 420 - размер изображения (т.е. это прямоугольник размером 311 пикселей по горизонтали и 420 по вертикали)
    "Window\ 对话框_标准边框x.dds" - изначальный фон для окна характеристик персонажа (полупрозрачный с тонкой рамкой, все пути изображений берутся из surfaces.pck)
    0 0 283 33 - от координаты 0 0 на расстоянии 283 по горизонтали и 33 по вертикали рисуется "人鱼传说新界面\面板关闭按钮.tga" (кнопка закрытия)

    EDIT "Img_Title" "" "" 20 26 276 32 "人鱼传说新界面\title.tga" 2 15 255 255 255 "TEXT" 1 0 20
    прямоугольник для титульной надписи:
    20 26 - координаты от которой будет начинается отрисовка изображения
    276 32 - размер изображения
    2 - порядковый номер для изображения (видимо просто для справки, т.к. изменение значения ничего не меняет)
    15 255 255 255 - 3 цифры цвет для текста в формате RGB и тень

    IMAGEPICTURE "Img_Char" "" "" 27 81 64 64 0 0 ""
    изображение лица персонажа:
    27 81 - начало отрисовки картинки
    64 64 - размер картинки (изображение лица перса)
    0 0 - непрозрачная dds (т.е. поверх основного фона и надписей)

    IMAGEPICTURE "Control_7599104" "" "" 4 0 305 425 1 0 "人鱼传说新界面\未命名-1副本.dds"
    рисуем рамку для всего окна:
    4 0 - начало отрисовки картинки (это фигурная pwi рамка для окна)
    305 425 - размер картинки
    1 0 - прозрачность картинки (при наложении текста- текст будет виден)

    STILLIMAGEBUTTON "Btn_AddStr" "addstr" "SFX\Interface\ClickB.wav" 99 251 9 9 0 0 0 0 6 15 255 0 255 255 "Button\按钮_加1.bmp" "Button\按钮_加2.bmp" 7 1
    кнопка добавления поинтов силы:
    "SFX\Interface\ClickB.wav" - звук при нажатии (пути к звукам берутся из sfx.pck!)
    99 251 - расположение кнопки
    9 9 - её размеры
    остальные параметры не так важны
    "Button\按钮_加1.bmp" "Button\按钮_加2.bmp" - собственно само изображение ненажатой и нажатой кнопки и 7 - её порядковый номер

    LABEL "HP" "" "" 26 172 92 14 28 16 29 255 203 74 255
    ЖС и значение:
    26 172 - координата начала отрисовки
    92 14 - область отведенная для текста (прямоугольник 92*14)
    28 - порядковый номер для текста
    16 - размер шрифта
    29 - номер строки из character.htf, из которой берется сам текст
    255 203 74 255 - 3 цифры цвет шрифта в формате RGB и тень

    ... далее строки аналогичны для понимания.

    Для того, чтобы рисовать все эти цифры не в голове, может пригодиться банальный paint, в котором есть возможность задать область главного окна, по координатам рисовать примерные эскизы окна и пункты меню:
    эскиз:
    клиент:

    Если координаты начинаются с "-2000 -2000" - значит просто кнопка убрана с экрана (зачастую это связано с тем, что изображение кнопки уже есть в клиенте, но функция ещё не доступна... хотя это можно использовать в своих целях)
    Если начало строки начинается с "#" - то строка закомментирована, т.е. не обрабатывается ехе.

    htf файлы:
    В них хранятся всплывающие подсказки. Для редактирования этих файлов нет ничего сложного - обычные текстовые документы, в которых есть переменная и описание для неё.

    stf файлы:
    Также как и htf являются простыми текстовыми документами, но за место переменных в них каждая строка имеет свой порядковый номер, на который ссылаются dtf пункты.

    [hr]

    Для чего нужно изменять файлы interfaces.pck:

    Зачастую файлы взятые с pwi/Китая/руофа содержат не совсем приятный внешний вид, орфографические ошибки и очепятки. Например в окне ставок не убирается полное название локации, клана и время сражения. ГМ панель очень неудобна своим размером с полосами прокруток. При даунгрейде интерфейса многие кпопки и меню бывают не рабочими и просто бывают лишними. Кнопка вызова GM перестает работать из-за смены версии и смены id исполняемой команды. Список можно продолжать и дальше...

    Если необходимо сделать рабочий PWI клиент 1.4.2+ для версии сервера 1.3.6-, то над клиентом так же придется потрудиться, чтобы убрать много лишних кнопок, пофиксить те кнопки которые есть, подвинуть пункты меню и увеличить размеры некоторых окон для русского текста (т.к. многие английские слова намного короче русских... видимо об этом переводчики руофа не знали).

    Изменение файлов interfaces.pck может сделать сервер более отличающимся от других- например изменение ingame.stf (в котором хранится очень много игровых сообщений и описаний- звания, статусы, объявления в мир, системные сообщение и т.д.)
    Можно задать определенные цвета для определенных статических сообщений в чате из того же ingame.stf и некоторых файлов config.pck (если перед описанием поставить ^00ff00- получим зеленый цвет сообщения, ^ff0000-красный... и т.д.)
    цвета тут - http://www.artlebedev.ru/tools/colors/

    Вот несколько примеров "до" и "после" изменения :
    GM панель
    до -
    после -

    Оконо ставок
    до -
    после -

    Окно характеристик персонажа
    до -
    после -

    Инвентарь
    до -
    после -

    Многим известное увеличенное окно скиллов
    до -
    после -

    Уверена, что убирание иконок медитации и котов из клиента в купе с удалением медитации с панелей стартовых персонажей (о чем есть другие гайды) + запаковка через Molebox / Enigma Protector файлов elementclient.exe, interfaces.pck, configs.pck, serverlist.txt *.data & etc может дать неплохой результат в борьбе с дюпом и прочими "проблемами".

    Удачных издевательств над клиентом^^
    shadowvzs, Caristo, Samuel и 105 другим нравится это.
  2. MorzE nullptr AngeliCore Пользователи

    Сообщения:
    198
    Лайки:
    134
    Пол:
    Мужской
    Репутация:
    3
    Страна:
    Russian Federation Russian Federation
    Спасибо за проделанную работу. Плюсонул.
  3. JoLan Команда форума Администратор AngeliCore Программист

    Сообщения:
    1.061
    Лайки:
    948
    Пол:
    Мужской
    Репутация:
    6
    Команда:
    AngeliCore
    Страна:
    Russian Federation Russian Federation
    //Хоть это и запрещено правилами, но не могу не высказаться. Hecate, спасибо огромное, хотя, даже словами это не выразить.
  4. Kenpachi™ Who Crazy? Old school Пользователи Just a troll

    Сообщения:
    361
    Лайки:
    195
    Пол:
    Женский
    Репутация:
    0
    Команда:
    Solo
    Аригато годзаймас! ^^
  5. BEE Пользователи

    Сообщения:
    17
    Лайки:
    2
    Репутация:
    0
    Спасибо, очень хорошо все расписано и оформлено. Многого не знал.
  6. kolaymbych1 Пользователи

    Сообщения:
    7
    Лайки:
    11
    Пол:
    Мужской
    Репутация:
    0
    Команда:
    Fuk Online
    На повышение за такую работу надо)
  7. nikes Программист Пользователи

    Сообщения:
    90
    Лайки:
    62
    Пол:
    Мужской
    Репутация:
    -2
    Команда:
    -=hunters=-
    Увы но это нам уже не понадобица
  8. mreco Пользователи

    Сообщения:
    1
    Лайки:
    1
    Репутация:
    0
    Как в интерфейс.пкк называется окно крафта?
  9. TopicStarter Overlay

    Hecate Пользователи

    Сообщения:
    1
    Лайки:
    14
    Пол:
    Женский
    Репутация:
    0
    Искомые слова - смотрим окно крафта в клиенте, видим: "Изготовить", "Ремесло", "Ур.", "Макс.", "Навык", "Предмет", "Сделать", "Отмена".
    Следовательно, найдя stf файл, в котором содержатся все эти слова и будет крафтом.

    Найдя produce_icon.stf, не трудно догадаться, что самим файлом, в котором "нарисовано" окно крафта будет produce_icon.dtf
  10. mreco Пользователи

    Сообщения:
    1
    Лайки:
    1
    Репутация:
    0
    Ещё вопрос, не знаешь почему не каким образом не хочет меняться Новости при входе в игру и выбор персонажей, всё что в игре то просто а всё что до неё просто ни в какую, даже если размер вручную подбирать
  11. gemer Пользователи

    Сообщения:
    42
    Лайки:
    70
    Пол:
    Мужской
    Репутация:
    0
    Работа очень хорошая, плюс поставил=)))
  12. G Twenty Пользователи

    Сообщения:
    9
    Лайки:
    0
    Репутация:
    0
    хм... ты точно не забыл запаковать? а то минут 20 потратил тупо выискивая проблему, а оказалось просто)
    p.s. только что отредактировал экран ввода логина\пароля, экран "Входим в игру, подождите пожалуйста" и экран выбора персонажей. Особых затруднений не возникло.
  13. nikes Программист Пользователи

    Сообщения:
    90
    Лайки:
    62
    Пол:
    Мужской
    Репутация:
    -2
    Команда:
    -=hunters=-
    Как узнать координаты Место нахождения??
  14. Crys1s Пользователи

    Сообщения:
    7
    Лайки:
    2
    Репутация:
    0
    Что в этом гайде хорошего? я не чего нужного и полезного не нашел! Скоро уже гайды пойдут как менять ноздрю персонажу!
  15. ТАМИОР ... Пользователи

    Сообщения:
    125
    Лайки:
    52
    Пол:
    Мужской
    Репутация:
    0
    Ну видимо у тебя просто мозг не мог сообразить для чего гайд написан. Лично мне он помог в нескольких аспектах да и не только мне он помог... За такую работу на продвижение бы пользователя.
    2 пользователям это нравится.
  16. gemer Пользователи

    Сообщения:
    42
    Лайки:
    70
    Пол:
    Мужской
    Репутация:
    0
    Это просто из той серии людей, которые то что делают люди для новичков, считает за обязательсва того человека который стараеться, или я не понимаю, такие люди хотят поставить свой мего мозг превыше остальных. Мда. Не когда не понимал таких людей, а человек постарался и молодец, я выше уже это написал. :D
  17. Desprado Пользователи

    Сообщения:
    0
    Лайки:
    0
    Репутация:
    0
    Можно по подробней? какой файл за скилы отвечает?
  18. concueror123 Пользователи

    Сообщения:
    64
    Лайки:
    6
    Репутация:
    0
    Команда:
    Свободен
    А по названию файла найти слабо? :)
  19. xBOINGx Пользователи

    Сообщения:
    0
    Лайки:
    0
    Пол:
    Мужской
    Репутация:
    0
    Команда:
    Нет
    Окно изученых скилов: skill.dtf
    Дерево скилов вара: skill_0.dtf
    Дерево скилов мага: skill_1.dtf
    Дерево скилов шамана: skill_2.dtf
    Дерево скилов друида: skill_3.dtf
    Дерево скилов оборотня: skill_4.dtf
    Дерево скилов убийцы: skill_5.dtf
    Дерево скилов лучника: skill_6.dtf
    Дерево скилов жреца: skill_7.dtf
    Окно изучения скилов у наставника: teach.dtf
    Типо так...
  20. Black Scorpion Пользователи

    Сообщения:
    1
    Лайки:
    0
    Репутация:
    0
    А как в тотал командере искать китайские слова в файлах?Например: Window\对话框_标准边框.dds
    Когда запускаю поиск с этими словами(любыми китайскими),он их не находит :)
Черновик сохранён Черновик удалён
Similar Threads
  1. Rovento
    Ответов:
    1
    Просмотров:
    7.047
  2. Fituchini
    Ответов:
    9
    Просмотров:
    2.387
  3. ПафоС
    Ответов:
    10
    Просмотров:
    2.229
  4. Tails
    Ответов:
    20
    Просмотров:
    3.347
  5. Tails

    1.4.4 interfaces

    Tails, 13 окт 2013, в разделе: PW Клиент
    Ответов:
    10
    Просмотров:
    2.767
Загрузка...

Поделиться этой страницей