Перейти к содержанию

Все о pro файлах


inclay

Рекомендуемые сообщения

Опубликовано

Народ,я читал мануал по работе с файлами pro ,впринципе мне все понятно...но только вот я не понял как в прототипе изменять номер изображения предмета,как не ломал голову,всеравно не получилось(((расскажите пожалуйста!

My NaMe Is KID!!!

Опубликовано

Если ты смотрел протосы с помощью ProtoView, то почитай документацию к проге в HTML (версия 2)... Там довольно понятно все прописано (особенно в приложение 4 загляни)... Если все-же будут непонятки, спрашивай, желательно с конкретным примером, постараемся прояснить... :)

... но это не станет помехой прогулке романтика ©

post-2-1161272426.gif

Опубликовано

Ой,торн,я как не пытался ранее разобраться в этом мануале...чтото запутался(((Кароч,я хочу взять прототип детонатора и хочу ему изменить изображение,хочу как бы не изменять старый детонатор а взять прототип и на его основе сделать пару новых изменений,вот впринципе в мануале на сайте я все понял кроме одново,как вычислять номера изображений... а именно

 

Желтые метки .Довольно противные. Вся цифирь, отмеченная желтым - отвечает за графику - как предмет выглядит в четырех основных видах - на "земле", в контейнере (или инвентаре), в "руках" и на схематике. К сожалению, у Круппа это подробно не изложено. Придется мне самому, хоть тонкости я изрядно подзабыл...

На строке ...00040. C000 1C60 - эта строчка отвечает за вид предмета "на полу"

На строке ...00140. C000 1C60 - эта строчка отвечает за вид предмета "на полу"

На строке ...00180. C010 1C60 - эта строчка отвечает за вид предмета в контейнере или в инвентаре

На строке ...001C0. C020 1C60 - эта строчка отвечает за вид предмета в "в руках"

Далее - чисто эмпирические наблюдения и данные "метода научного тыка"... Поскольку - мы будем лишь переделывать предметы из готовых, присутствующих в игре, то, наверное, и этого хватит... 1C60 - непосредственно номер art-файла из документов "прописки" этих файлов, конкретно - item_ground.mes, item_inven.mes, item_paper.mes и item_schematic.mes, что находятся в папке data/art/item .Номер вычисляется по "эмпирической" формуле, после перевода в десятичный вид 1C60, что будет 24604. Формула такая: (24604 - 24416) / 2 - 20 = 74 . Почему она такая - без понятия. Как понятно, что в ней меняются только значения 24604 и 74, остальное - константа... Как использовать. Во всех mes - файлах, отвечающих за art номера предметов одинаковы. Вам хочется, чтоб у Вашего меча был внешний вид Бенгалианского меча. Находим номер art, открыв tem_inven.mes:

{63}{I_CalEliteGuardSword.art}

{64}{I_sword_of_balance.ART}

{65}{I_BangellianScurge.ART}//10

{66}{needart.art}

{67}{I_2hsword06.ART}

Его номер 65. Нет проблем. Решаем уравнение 65=(Х - 24416) / 2 - 20, где Х - искомое число, которое мы переведем в hex и подставим вместо 1С60. Получается 24586. Переводим в hex - 600A. Не забываем переставить 60 и 0А при редактировании кода. Редактируем hex, подставляя в код 0А60 вместо 1С60 и проверяем резалт. У меня все ОК. При сборке получился нужный мне внешний вид - Бич во всей красе.

C000, C000, C010, C020. Данные цифры отвечают за тип оружия или амуниции или что Вы еще редактируете. Как их считать - не знаю. Просто беру готовый номер из образца и не меняю его. Если кто посчитает - как вычислять - пришлите формулу, буду благодарен и закончу этот раздел. А пока - рекомендую поступать аналогично мне, не тратя попусту время... В следующий раз сделаем вместе ключ. А то я в своем моде никак не доделаю Ключ Единорога. Если в результате проверок что-то не получается - задавайте в форуме нашем вопросы, попробую разобраться... И (при желании) шлите мне в почту свои pro, что б не на пальцах... Не забывайте "чистить" папку map при проверках и пробах.

 

 

я не разобрался,помогите

My NaMe Is KID!!!

Опубликовано

Любопытно... нужно будет порыть протосы... тем-более что их вроде как % на 80-85 уже разобрали...

Я вот так и не понял - что не получилось... вроде-бы ж уже заменил ассоциируемую картинку?

Кстати, имя протоса который редактируеш? Или еще лучше - скинь его сюда!

Опубликовано

Если просто - вместо одной картинки поставить другую - с тем же номером art - то ничего не надо переделывать.

 

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

Про этот именно случай и был написан "мануал".

Где-то на форуме уже было написано, что для разных категорий/групп предметов - "формула" числа для подстановки - своя. Принцип "нахождения" - методом тыка. И я, и eml78 - так и не поняли принципа - как "универсально", для любого предмета движок считает это число (впрочем, есть в протосе и еще пара "белых" пятен).

 

Поэтому, чисто интуитивно. На уровне ощущений. Похоже, кстати, что Крупп - этот принцип знал, но не написал :lol2:

 

Пожтому. Кусок кода - в студию. И номера art. И номер протоса.

 

В принципе - попробуй сам. Суть - подгонка. Открываешь в хек-редакторе несколько протосов с порядковыми номерами - рядом с нужным. Зная - где прописан нужный код - сравниваешь биты из "соседних" протосов. На сколько они отличаются друг от друга, чему кратны. Примерно зная, как можно получить искомое число - перебираешь варианты. Я другого способа не знаю. Хотя - всегда получалось, хотя и нудно :cray: И тупо, вообще-то. Шаманством попахивает.

userbar_008.gif

Опубликовано

Что-то нигде не видел, добавлю сюда, типы из исходников ProView:

 

Weapon //перевод из description.mes

$0040: 'бумер ' //{Метательный снаряд}

$0080: 'кинжал '

$00C0: 'меч '

$0100: 'топор '

$0140: 'булава '

$0180: 'пистоль ' //{Револьвер}

$01C0: 'меч 2 ' //{Палаш}

$0200: 'лук '

$0280: 'ружье ' //{Дробовик}

$0340: 'посох '

Вот только малехо не врубаюсь кое во что... ну да ладно... об этом ниже

 

Armor

$0042: 'шерсть '

$0082: 'кожа '

$00C2: 'кольчуга '

$0102: 'машина '

$0142: 'роба '

$0182: 'пластина '

$01C2: 'ужас '

$0202: 'костюм '

$4002: 'щит '

$8002: 'шлем '

$C002: 'перчатки '

$10002: 'сапоги '

$14002: 'кольцо '

$18002: 'медальон '

 

В PRO файле, в обрятном порядке, перед номером арт-а!

 

Теперь о спрайтах на примере 006056 - Weapon.pro {Дробовик} с приминением Pro View:

h0000000048: 80 02 02 60 {Ground}

h0000000147: 80 02 02 60 {Schema}

h0000000184: 80 12 02 60 {Inventory} - как видим тут, значение 0280 увеличилось, и стало 1280!

h000000018С: 80 22 02 60 {CharModel} - как видим тут, значение 1280 еще раз увеличилось, и стало 2280!

h00000001С6: 80 22 02 60 {Equipped} - тут значение типа осталось не измененным с прошлого раза - 2280...

Но это не аксиома... в некоторых протосах такое чувство что от фанаря прыгают, в некоторых видах... =)

Опубликовано

Как человек (по сути) гуманитарный - hex - просто ненавижу...

 

А вот, что скачут от балды... Это точно. Впечатление иногда такое.

 

Еще хуже дело, когда делаешь свой протос. Новый. Сколько мы не колдовали - ни одного. Додумались только до использования "резервных". Что есть в игре, но не используются. Пара ячеек - так и остались "белыми пятнами".

userbar_008.gif

Опубликовано

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

 

да,и измененные протосы можно в игру загружать...ну я имею ввиду чтобы их там торгоши продавали?

My NaMe Is KID!!!

Опубликовано

Если я хочу сделать совершенно новый предмет, который будет генериться по сундукам и прочим контейнерам, к примеру.

Я понарисовал толпу камешков-колец-бутылок. Хотел бы их ввести в игру. Совсем новых. Без замены чего-либо, а только - добавляя. Тоже - новое генеренное оружие, схематики, доспехи и т.п. Без прототипа - можно (без проблем) делать любые - но уникальные вещи, которые не "генерятся" движком, не продаются в магазинах, а - вручную прописываются в игре, в единственном экземпляре (ну - пусть не в единственном - но вручную).

userbar_008.gif

Опубликовано

Что-то нигде не видел, добавлю сюда, типы из исходников ProView:

Слушай, а и вправду, может ты сможешь немного доделать эту прогу?

Добавить возможность редактирования?

Это ведь жутко необходимая прога для моддинга... :shok:

... но это не станет помехой прогулке романтика ©

post-2-1161272426.gif

Опубликовано

Ненавижу редактировать pro, но thorn прав. Не заглядывая далеко, есть предположение что некоторые товарисчи (вроде меня :yahoo: ) еще пару-тройку лет будут здесь копошится и прога бы помогла. Поддерживаю просьбу, но - по возможности конечно. :yes: И при желании.

userbar_008.gif

Опубликовано

У нас появилась надежда!

 

Пока придется обойтись Хекседитом.

Кстати, для редактирования некоторых прототипов (НПС) вообще можно обойтись простым текстовым редактором... :)

... но это не станет помехой прогулке романтика ©

post-2-1161272426.gif

  • 3 недели спустя...
Опубликовано

То_CORVETTE: Ты бы конкретно сказал, какой именно протос тебе надо отредактировать?

 

Ну а в общем.... приблизительно так получается...

 

Смотрим протос в Протовью, например первый кинжал data\proto\006049 - Weapon.pro

 

Видим следующее (справа внизу)

 

>Materail: 5 (metal)

>Sound_item: 4000 (swish_thin.wav)

>Ground: 40+4 [Pal=0] кинжал ( 0x60080080)

>Schema: 40+4 [Pal=0] кинжал ( 0x60080080)

>Inventory: 40+4 [Pal=0] кинжал ( 0x60081080)

>CharModel: 40+4 [Pal=0] кинжал ( 0x60082080)

>Equipped: 40+4 [Pal=0] кинжал ( 0x60082080)

 

Далее нужны файлы

data\art\item\

item_ground.mes

item_inven.mes

item_paper.mes

item_schematic.mes

 

 

АРТ на земле у всех кинжалов одинаков.

 

Открываем второй файл item_inven.mes и находим строку (40+4)=44

{44}{i_generic_dagger.ART}

Это АРТ кинжала в инвенторе.

Например решаем заменить его на картинку Механического кинжала

{56}{I_MechanicalDagger.ART}

Открываем прототип 006049 - Weapon.pro в Хексредакторе...

Ищем подряд идущие байты 80 00 08 60 (это 0x60080080 в обратном порядке) - встречаются в файле два раза...

Менять собственно надо только выделенное...

Какой номер нужен - вычисляем приблизительно так...

08(хекс)=8(десятичное)/2=4 +40 = 44 - это номер текущего АРТа (кинжалы начинаются на 40)

Новый номер 56-40 =16 *2 =32(десятичное) =20(хекс)

Проверяем - смотрим в Протовью Мех.кинжал - похоже...

Вписываем новое значение в Хексредакторе...

 

Ищем подряд идущие байты 80 10 08 60 (это 0x60081080 в обратном порядке) - встречаются в файле один раз... вписываем новое значение 20.

 

Ищем подряд идущие байты 80 20 08 60 (это 0x60082080 в обратном порядке) - встречаются в файле два раза... вписываем новое значение 20.

 

Вот собственно и все (действительно немного похоже на шаманство :yahoo: )

Сохраняем протос и в игре обычный кинжал теперь будет выглядеть как механический во всех случаях...

 

Если чего непонятно, спрашивай....

... но это не станет помехой прогулке романтика ©

post-2-1161272426.gif

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
×
×
  • Создать...