Здравствуйте, гость ( Вход | Регистрация )

3 страниц V < 1 2 3  
Ответить в эту темуОткрыть новую тему
> Маунты мутанты, помогите с 2.0.3 клиентом!!!
mAdShAkEr
сообщение 21.8.2014, 14:09
Сообщение #41


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.522
Возраст: 26



Цитата(StaticZ @ 21.8.2014, 13:56) *

ID уникален по определению. ID внутри мула не тоже самое что ID анимации. Для трансляции ID используется bodyconv.def


по этому и получилось как-то коряво у меня. Хотелось бы узнать об этом по более, чтобы не было недоумений таких как другая анимация при смерти и.т.п Так как вы разработчик программы фиддлер хочу попросить вас просветить меня по подробней в эту программу. Например каким образом мне через фиддлер сделать тоже самое что я сделал через мулпатчер? Может и не будет проблем тогда... Не очень бы хотелось ковырять файлы в папке с уо... ну кроме mobtypes.def понятно что без него ни как.
Извиняюсь но я может чего-то не понимаю, но как мне узнать что айдишник на который я хочу вставить анимацю не занят. Просто в мулпатчере есть 3 слоя слотов все,полные,пустые. Вот я выбираю пустые они обозначены красным цветом, на один из таких пустых слотов вешаю анимацию, и вот что я в итоге получаю то что мне надо ковырять деф файлы
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
mAdShAkEr
сообщение 21.8.2014, 14:29
Сообщение #42


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.522
Возраст: 26



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

Хочу взять стандартный аним.мул и попробовать сделать все заного через фиддлер только мне бы понять как он работает, хотя-бы инструкции по тому что не надо сделать
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
StaticZ
сообщение 21.8.2014, 16:45
Сообщение #43


*********

Разработчик проекта "Квинтэссенция"
Сообщений: 2.155
Регистрация: 15.6.2009
Группа: Пользователи
Наличность: 0
Из: РФ, Москва
Пользователь №: 11.948



Цитата(mAdShAkEr @ 21.8.2014, 15:09) *
Извиняюсь но я может чего-то не понимаю, но как мне узнать что айдишник на который я хочу вставить анимацю не занят. Просто в мулпатчере есть 3 слоя слотов все,полные,пустые. Вот я выбираю пустые они обозначены красным цветом, на один из таких пустых слотов вешаю анимацию, и вот что я в итоге получаю то что мне надо ковырять деф файлы

Когда клиенту посылается команда отображения анимации с неким ID, то он делает следующие вещи:

1) Ищет этот ID в mobtypes.txt, откуда получает тип (L,H,P) анимации и флаги (насколько мне известно их значение так и не выявлено, просто копируйте с других анимаций наиболее близкой к вашей по расположению, типу и предназначению). Если анимация с данным ID не найдена, то она игнорируется.
2) Затем проверяется файл body.def на предмет необходимости переопределения ID анимации и ее цвета. В результате получаем newID (если запись с ID там отсутствует, то newID = ID)
3) Теперь клиенту необходимо понять индекс anim#.mul файла в котором находиться эта анимация и ее номер animID в этом файле. Для этого и служит файл bodyconv.def, как видно таблица там только для anim2.mul, anim3.mul, anim4.mul, anim5.mul. Отсюда следует, что если для анимации newID animID не определен (-1), то animID = newID, а индекс файла 1 (anim.mul).
4) После этого проверяется файл anim#.def (где # - индекс мула, полученного в пред пункте) на предмет необходимости переопределения animID анимации и ее цвета. В результате получаем new_animID (если запись с ID там отсутствует, то new_animID = animID)
5) Ну и в заключение остается лишь взять анимацию с индексом new_animID в уже определенным ранее муле.


* Если у нас анимация трупа, вместо 2го пункта, ID и цвет трупа переопределяются в corpse.def, после чего для нового ID выполняется шаг 1, и далее по порядку кроме 2го (во избежание рекурсии)

* Если у нас анимация экипировки персонажа (в том числе и лошади, что с точки зрения программной логики ничем не отличаются от анимации меча или шлема), между 1ым и 2ым пунктами вставляется дополнительное преобразование анимации ID, цвета и гампа (ID которого связан с ID анимации), в зависимости от ID анимации на которое оно одето (таким образом например подменяется анимация и гампы шлемов на эльфах) из equipconv.def. После чего для нового ID выполняется все с самого начала с 1го пункта.

* Насчет порядка обработки corpse.def и equipconv.def могу ошибаться, специально не изучал из-за отсутствия надобности.

* По заверением разработчиков ID анимации не может быть больше 2048, однако на практике по наблюдением при использовании некоторых ID выше 2000 начинается какая-то магия, так что изучать лучше на более низких... Вообще ограничение на анимацию это пожалуй самое серьезное ограничение клиента, а ее расширение - один из майлстоунов UCS, но не уверен что это вообще получиться реализовать...





Вот так все устроенно и работает. В теории все ID которых нет в списке mobtypes.txt не заняты, однако из-за большего числа переопределений и подмен используется много лишних ID. Мы не выдержили - вытряхнули все из мулов, вычистили все *.def'ы и пересобрали все с нуля вручную. ID'шников, порядка и прозрачности стало куда больше, но если нужна лишь пара свободных ID, то проще поковыряться поискать, чем все переделывать...

Сообщение отредактировал StaticZ - 21.8.2014, 16:49


--------------------
RP сервер UO: Quintessence, а также ПО: EssenceUCS, EssenceUDK, CentrEd+, Fiddler+ и др.
Game isn't a dream, it is the reality, reality which is coming while we dream...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
mAdShAkEr
сообщение 21.8.2014, 17:10
Сообщение #44


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.522
Возраст: 26



Цитата(StaticZ @ 21.8.2014, 16:45) *

Когда клиенту посылается команда отображения анимации с неким ID, то он делает следующие вещи:

1) Ищет этот ID в mobtypes.txt, откуда получает тип (L,H,P) анимации и флаги (насколько мне известно их значение так и не выявлено, просто копируйте с других анимаций наиболее близкой к вашей по расположению, типу и предназначению). Если анимация с данным ID не найдена, то она игнорируется.
2) Затем проверяется файл body.def на предмет необходимости переопределения ID анимации и ее цвета. В результате получаем newID (если запись с ID там отсутствует, то newID = ID)
3) Теперь клиенту необходимо понять индекс anim#.mul файла в котором находиться эта анимация и ее номер animID в этом файле. Для этого и служит файл bodyconv.def, как видно таблица там только для anim2.mul, anim3.mul, anim4.mul, anim5.mul. Отсюда следует, что если для анимации newID animID не определен (-1), то animID = newID, а индекс файла 1 (anim.mul).
4) После этого проверяется файл anim#.def (где # - индекс мула, полученного в пред пункте) на предмет необходимости переопределения animID анимации и ее цвета. В результате получаем new_animID (если запись с ID там отсутствует, то new_animID = animID)
5) Ну и в заключение остается лишь взять анимацию с индексом new_animID в уже определенным ранее муле.
* Если у нас анимация трупа, вместо 2го пункта, ID и цвет трупа переопределяются в corpse.def, после чего для нового ID выполняется шаг 1, и далее по порядку кроме 2го (во избежание рекурсии)

* Если у нас анимация экипировки персонажа (в том числе и лошади, что с точки зрения программной логики ничем не отличаются от анимации меча или шлема), между 1ым и 2ым пунктами вставляется дополнительное преобразование анимации ID, цвета и гампа (ID которого связан с ID анимации), в зависимости от ID анимации на которое оно одето (таким образом например подменяется анимация и гампы шлемов на эльфах) из equipconv.def. После чего для нового ID выполняется все с самого начала с 1го пункта.

* Насчет порядка обработки corpse.def и equipconv.def могу ошибаться, специально не изучал из-за отсутствия надобности.

* По заверением разработчиков ID анимации не может быть больше 2048, однако на практике по наблюдением при использовании некоторых ID выше 2000 начинается какая-то магия, так что изучать лучше на более низких... Вообще ограничение на анимацию это пожалуй самое серьезное ограничение клиента, а ее расширение - один из майлстоунов UCS, но не уверен что это вообще получиться реализовать...
Вот так все устроенно и работает. В теории все ID которых нет в списке mobtypes.txt не заняты, однако из-за большего числа переопределений и подмен используется много лишних ID. Мы не выдержили - вытряхнули все из мулов, вычистили все *.def'ы и пересобрали все с нуля вручную. ID'шников, порядка и прозрачности стало куда больше, но если нужна лишь пара свободных ID, то проще поковыряться поискать, чем все переделывать...



Спасибо большое за то что вносите ясность по моему вопросу! Хотелось бы узнать на счет фиддлера. Какую версию лучше скачать и небольшая инструкция от разработчика не помешала бы
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
StaticZ
сообщение 21.8.2014, 19:56
Сообщение #45


*********

Разработчик проекта "Квинтэссенция"
Сообщений: 2.155
Регистрация: 15.6.2009
Группа: Пользователи
Наличность: 0
Из: РФ, Москва
Пользователь №: 11.948



Цитата(mAdShAkEr @ 21.8.2014, 18:10) *

Спасибо большое за то что вносите ясность по моему вопросу! Хотелось бы узнать на счет фиддлера. Какую версию лучше скачать и небольшая инструкция от разработчика не помешала бы
Последнею. "Инструкции от разработчика" надо искать на оф сайте. А вообще можно минут 10 потыкать по кнопкам и все станет понятно безо всяких инструкций.


--------------------
RP сервер UO: Quintessence, а также ПО: EssenceUCS, EssenceUDK, CentrEd+, Fiddler+ и др.
Game isn't a dream, it is the reality, reality which is coming while we dream...
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

3 страниц V < 1 2 3
Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 27.4.2024, 23:16
Designed by Nickostyle