• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
  • Друзья, доброго времени суток! Спешите принять участие в оценке работ на конкурсе "Таинственные миры" 2024!
    Ждем именно вас!

    Ссылка на конкурсную тему - тык
    Ссылка на тему с работами участников- тык

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.332
Баллы
315
GORN_NAEMNIK написал(а):
Гм... Оказывается, что движок принципиально не хочет компилировать шлем (все предметы скомпилировал, думал, шлем тоже - а нет). Наотрез отказывается переделать его на MRM. Может это из-за похожего имени файла? Доспех: ITAR_GWARD_M.
Шлем: ITAR_GWARD_HELM_M.
Хм.....
Странно ???
вышли мне в личку скрипт шлема и доспехов и модель шлема
а я гляну и отпишусь.
 
Последнее редактирование модератором:

GeorG

Участник форума
Регистрация
27 Авг 2008
Сообщения
3.447
Благодарности
11
Баллы
295
2GORN_NAEMNIK: А в 3D максе ты правильно все имена картам задал?
 

Marvіn

Участник форума
Регистрация
17 Апр 2008
Сообщения
99
Благодарности
9
Баллы
180
2GORN_NAEMNIK:
Открой файл ARMOR_PAL_H.ASC и посмотри как там сделан шлем. Проще всего привязать шлем к скелету модификатором Skin или Physique, так как это в принципе и реализовано в готике.
Также обрати внимание на ссылки:
Динамическая модель (3DS Max, анимация и меши)
Динамическая модель: описание eventTag'ов
2Saturas:
А тебе ПРЕДУПРЕЖДЕНИЕ!
К скелету привязывать не надо. Шлем должен быть формата .3ds
совпадать с координатами мира
то есть должен находится где и голова гг
и в .ASC сохранять не надо.
а также ...
Он автоматически привязывается когда его одеваеш я так
без привязки делаю все норм
и повторяются все движения
попробуй сам и увидеш и сохранять надо в .3ds
а ну поподробней. :eek: Эти слова это выстрел впустую. Если ты все так красиво сделал, то мог бы ему выложить свои скрипты и рассказать все подробно. Я этим лично не занимался, но что бы такое реализовать надо неплохо поработать, особенно новичку.
А то что ты написал
шлем нужно прописывать в Visual = "Palhelm.3ds";
а пункты
visual_change =".asc";
visual_skin = 0;
нужно удалять.
все!
ни о чем, абсолютно, не говорит. В лучшем случаи шлем просто попадет в руку ГГ. HumanS.mds определяет что будет происходить и в какой слот что-то будет ложиться.
Не вводи форумитов в заблуждение.
Жду вразумительных объяснений и подтверждений твоих слов.
 
Последнее редактирование модератором:

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.332
Баллы
315
Жду вразумительных объяснений и подтверждений твоих слов.
Вот скрипт это вразумительное обьяснение?
INSTANCE ITAR_HOOD_FIRE (C_Item)
{
name = "Капюшон огня";

mainflag = ITEM_KAT_ARMOR;
flags = 0;

protection [PROT_EDGE] = 20;
protection [PROT_BLUNT] = 20;
protection [PROT_POINT] = 20;
protection [PROT_FIRE] = 0;
protection [PROT_MAGIC] = 0;

value = 348;

wear = WEAR_HEAD;

visual = "Hood_Fire.3DS";
visual_skin = 0;
material = MAT_LEATHER;

description = name;

TEXT[1] = NAME_Prot_Edge;
COUNT[1] = protection [PROT_EDGE];

TEXT[2] = NAME_Prot_Point;
COUNT[2] = protection [PROT_POINT];

TEXT[3] = NAME_Prot_Fire;
COUNT[3] = protection [PROT_FIRE];

TEXT[4] = NAME_Prot_Magic;
COUNT[4] = protection [PROT_MAGIC];

TEXT[5] = NAME_Value;
COUNT[5] = value;
};
Никакой привязки не нужно нужно только установить wear = wear_head;
при этом двиг сам привязывает его к ZS_HELM
и
Да ошибочка вышла это не нужно
visual_change          =  ".asc";
а это нужно

visual_skin          =  0;
эта строка отвечает за скининг модели
и вот фотки как это все выглядит
и еще моделька все в одном архиве.


2Marvіn:
В лучшем случаи шлем просто попадет в руку ГГ. HumanS.mds определяет что будет происходить и в какой слот что-то будет ложиться.
И ненужно доказывать то в чем не уверен
а опредаляет что куда вставлять (какие слоты)
обьекты с префиксом ZS_ на модели перса ;)
 
Последнее редактирование модератором:

Marvіn

Участник форума
Регистрация
17 Апр 2008
Сообщения
99
Благодарности
9
Баллы
180
2Saturas:
Ок, тогда вопрос снят. Приношу свои ИЗВИНЕНИЯ.
Но на будущее все таки вот так и давай ответ, полностью и понятно для всех. Автор сообщения должен отвечать за его содержимое.

И ненужно доказывать то в чем не уверен
Тогда в таком случаи тебе пред по справедливости, ибо не в одном выше сказаном твоем посту ты не указал что надо в скриптах прописать wear = WEAR_HEAD;
Вопрос закрыт.

Опять 25 2Saturas:
с тебя пред снят, скажи спасибо GeorG. Моя вина не досмотрел что
GORN_NAEMNIK знает об wear = WEAR_HEAD;
В максе удалил меш броника паладина, оставил и переделал шлем, экспортировал в asc и 3ds форматах в data/work/meshes , прописал в скриптах как броню, изменил WEAR_TORSO на WEAR_HEAD....
 

TemplaR

Участник форума
Регистрация
16 Ноя 2008
Сообщения
322
Благодарности
0
Баллы
175
Всем привет! Вот решил поделиться наблюдениями: Вы заметили, что функция "Сглаживание"работает только в компилированных зенах?
З.ы. собственно вопрос, другой: У всех так, или только у меня?
 
Последнее редактирование модератором:

mage

Участник форума
Регистрация
29 Сен 2008
Сообщения
382
Благодарности
1
Баллы
175
Решил создать артефакт который даёт возможность летать. И для этого я решил изменить Humans_Skeleton_Fly.mds
Там я изменил 1 анимацию(вернее создал с 0) скорость полёта там изменена.
А декомпилировал это. в тексте этого файла название анимации которую хочу заменить не нашёл.
Я создал замену SKE_FLY_JUMPBACK_A01.asc этой анимации(полученой из декомпиляции Humans_Skeleton_Fly.mds), в тексте Humans_Skeleton_Fly.mds не употребляеться SKE_FLY_JUMPBACK_A01.asc

--//Хм... честно говоря не понял, ничего это скрытый вопрос или просто лирические рассуждения :D // Marvin //--
Я декомпилировал Humans_Skeleton_Fly.mds, изменил там SKE_FLY_JUMPBACK_A01.asc, но там длина анимациий другая (там 4 анимаций слепили в 1). потом скопировал Humans_Skeleton_Fly.mds, решил изменить, вместо SKE_FLY_JUMPBACK_A01.asc прописать свою анимацию, но несмог найти её(нажимал ctrl f - пишет что этого нет.)
что делать? // mage //--
 

Marvіn

Участник форума
Регистрация
17 Апр 2008
Сообщения
99
Благодарности
9
Баллы
180
2mage:
Ты что-то напутал ??? ты хочешь сказать что SKE_FLY_JUMPBACK_A01.asc отсутствует в файле Humans_Skeleton_Fly.mds ? Если так то ты ошибаешься, этот *.asc файл там описан в таком виде Ske_Fly_JumpBack_A01.asc, возможно ты ищешь в файле с учетом регистра...
 

Heku4

Участник форума
Регистрация
25 Фев 2009
Сообщения
10
Благодарности
0
Баллы
150
У меня такой вопрос назрел. В одной из статей, описывается как сделать движущийся объект-лодку. Возможно ли сделать так чтобы лодка плавала не только вперед и назад но и могла плыть по извилистой реке? Естественна поворачивая на поворотах?
 

Myxomop

Почетный форумчанин
Регистрация
28 Май 2005
Сообщения
3.236
Благодарности
2.575
Баллы
455
2Heku4:
А в чем проблема, если ты читал статью? Как маркеры мувера расположишь, так лодка плыть и будет.
 

mage

Участник форума
Регистрация
29 Сен 2008
Сообщения
382
Благодарности
1
Баллы
175
Всё изменил, нашёл ту строку.
Изменил
Например это
ani ("t_FistRunStrafeL" 1"" 0.1 0.1 M. "Ske_Fly_A02.asc" F 81 104)

заменил на
ani ("s_FistRun" 1"s_FistRun" 0.0 0.2 MI"Fly_A01.asc"

F 20 30)
И так изменил многие анимации.
Но когда использую этот артефакт(типа зелья скорости) - ГГ тупо встаёт в положение анимации и не как не двигаеться ???
 
Последнее редактирование модератором:

alex_draven


Модостроитель
Регистрация
13 Сен 2007
Сообщения
2.184
Благодарности
2.879
Баллы
420
Н-да... Судя по коду скрипта, заменил стрейф на простой. Не ясно, как вообще ещё не высветило fatal:goodbye! Прежде, чем что-либо менять, надо разобраться как это работает.
И вообще по теме не ясно, какая задача стоит. Прикрутить ГГ полёт? Если так, то вряд ли выйдет.
Думаю, что структура hum_body_naked0.asc не совместима с телом мага-скелета ввиду отсутствия нижних конечностей у последнего. Если нужно заставить ГГ парить- делай всё с нуля через оверлей. И за базу надо брать biped hum_body_naked0.asc.

P.S. Опишу всё ж общий подход. Думаю, полезно будет.

Создаём скрипт HUMANS_FLY.MDS со следующей структурой:
Model ("HUS")
{
meshAndTree ("HUM_Body_Naked0.ASC"DONT_USE_MESH)

aniEnum
{
//RUN-Mode
ani ("s_Run" 1"s_Run"0.1 0.1 MI "HUM_FLYAmbient.asc" F 0 N)
//Run-Loop
ani ("t_Run_2_RunL" 1"s_RunL"0.0 0.0 M. "HUM_FLY.ASC" F 0 N)

ani ("s_RunL"1"s_RunL"0.0 0.0 M. "HUM_FLY.ASC" F N+1 NN)

ani ("t_RunL_2_Run" 1"s_Run"0.0 0.0 M. "HUM_FLY.ASC" F NN+1 NNN)

aniBlend ("t_RunR_2_Run" "s_Run"0.2 0.2)
}
}

HUM_FLYAmbient.asc- анимация простоя (ГГ парит над одной точкой) длиной от 0 до N кадров
HUM_FLY.ASC- анимация полёта длиной от 0 до NNN кадров. В свою очередь, чодержит 3 фазы:
t_Run_2_RunL- переход от простоя к циклу полёта s_RunL- длина от 0 до N
s_RunL- цикл полёта. Анимация должна быть циклической, чтоб не было рывков. Длина от N+1 до NN кадров
t_RunL_2_Run- фаза торможения, т.е. переход от цикла полёта до остановки. Длина от NN+1 до NNN кадров, т.е. до конца.

Все анимации делаются самостоятельно из файла HUM_Bodu_Naked0.max, находящимся в GMDK.

Далее создаём в игре кольцо и в нём прописываем on_equip=fly_start и on_unequip=fly_stop функции.
Первая ниже инстанции кольца будет такой:

func void fly_start()
{
ApplyOverlayMDS(self,HUMANS_FLY.MDS);
};

Вторая далее:
func void fly_stop()
{
RemoveOverlayMDS(self,HUMANS_FLY.MDS);
};

Теперь надев кольцо левитации, ГГ будет носиться по земле, как полуденица в Ведьмаке.
Удачи в эеспериментах!
 
Последнее редактирование модератором:

mage

Участник форума
Регистрация
29 Сен 2008
Сообщения
382
Благодарности
1
Баллы
175
Заработало!
Спасибо!

В самих скриптах(МДС) можно изменить скорость анимации?
 

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.332
Баллы
315
mage написал(а):
Заработало!
Спасибо!

В самих скриптах(МДС) можно изменить скорость анимации?
Вроде можно путем измениния
количества кадров св сеунду (FPS)
но не обещаю тк я а нимой не занимался.
 
Последнее редактирование модератором:

alex_draven


Модостроитель
Регистрация
13 Сен 2007
Сообщения
2.184
Благодарности
2.879
Баллы
420
Можно замедлять, если добавить параметр fps:12.5, напимер, так:

ani ("s_RunL" 1"s_RunL"0.0 0.0 M. "HUM_FLY.ASC" F 0 100 FPS:12.5)

По умолчанию и во избежании глюков все анимашки надо делать 25 FPS.

Ускорять можно только в 3ДсМакс. В правом нижнем углу есть кнопка, вызывающая пресет времени. Там надо задать rescale. Через скрипт ускорение не будет работать.
 
Последнее редактирование модератором:

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.332
Баллы
315
Если чисто из тех что в игре есть то просто в скрипте пишеш нужный *.tga файл
это шрифт
а вот если какойто свой хочеш то здесь уже нужно из *.ttf нужно *.tga
делать а дальше пихать в папку Textures и прописывать в качестве шрифта на пример для диалога.
 

darkelf

Участник форума
Регистрация
28 Фев 2009
Сообщения
29
Благодарности
0
Баллы
150
Вобще частично понял частично нет:
вот что я понял. нужно из .ttf в .tga перегнать.
Кинуть в папку текстур.
А как прописывать в качестве шрифта ? можно пример ?
 

GeorG

Участник форума
Регистрация
27 Авг 2008
Сообщения
3.447
Благодарности
11
Баллы
295
2darkelf:

Код:
AI_PrintScreen("Мой шрифт",-1,-1,FONT_ScreenSmall,2);

Вместо FONT_ScreenSmall подставляешь свой

Пост ниже:

Быц!!!...наверное не выспался, извиняюсь, самое главное не учёл ::)
 
Последнее редактирование модератором:

Saturas


Модостроитель
Регистрация
11 Фев 2009
Сообщения
2.512
Благодарности
1.332
Баллы
315
GeorG написал(а):
2darkelf:

Код:
AI_PrintScreen("Мой шрифт",-1,-1,FONT_ScreenSmall,2);

Вместо FONT_ScreenSmall подставляешь свой
Ыыээ
немного не так
он имеет в виду как свой шрифт потавить
FONT_ScreenSmall описан в Constants.d
этой строкой
Код:
const string FONT_ScreenSmall       = "FONT_OLD_10_WHITE.TGA";    //мелкий экранный шрифт
и чтобы впихнуть свой шрифт то нужно сделать так:
Код:
const string FONT_Твой шрифт      = "Твой шрифт.TGA";
Вот так!
 
Последнее редактирование модератором:

mage

Участник форума
Регистрация
29 Сен 2008
Сообщения
382
Благодарности
1
Баллы
175
Решил сделать чтоб ГГ и над вадой также летел, заминил анимацию, на анимацию плаванья, но ГГ почемуто проваливаеться до пояса, повысил положение в анимации, по всё-равно ГГ проваливаеться :eek: и причём также.

Для кольца полёта чтоб убрать урон от падение надо поставить защиту от падения, или есть более умный способ?
 
Сверху Снизу