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

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

    Ссылка на конкурсную тему - тык

Не стесняюсь спросить....

Lorddemonik

★★★★★
Редактор раздела
Регистрация
17 Дек 2011
Сообщения
1.003
Благодарности
511
Баллы
350
Приветствую.
Возникла серьезная именно с массовыми заклинаниями. Когда одиночные заклинания вставляются и работают без проблем, то массовые либо работают неправильно, либо не работают вообще.

Итак:
Волна огня - Взята с этого форума. Анимации и эффект есть, урон только при приближении вплотную
Землятрясение(Quake) - Взята с Вога. Анимации и эффект есть, урон нет, только при приближении вплотную
Тряска(Extricate) - Взята с Вога. По идеи должна откидывать врагов, но аналогично, анимация и эффект есть, отброса нет

Может кто-нибудь объяснить, у массовых есть свои тонкости? Или это ручки?
Скрипты с исходниками прилагаю
https://yadi.sk/d/KyvlvGbh3SNtzA
Gratt, а можешь с вот этим помочь?
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.276
Благодарности
4.579
Баллы
625

Lorddemonik

★★★★★
Редактор раздела
Регистрация
17 Дек 2011
Сообщения
1.003
Благодарности
511
Баллы
350
Вога? а спелы точно под оригинал? если автор мад фрик, то он поехавший на икарусы мог туда что-угодно засунуть
Там есть заклинание на Икарус, но мы сейчас не про это. Даже попытка скопировать "Волну смерти" окончилась также, как и новые массовые - урон только вплотную. Из чего следует вопрос: как игра определяет что массовое, и где указан радиус "массовости"?
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.276
Благодарности
4.579
Баллы
625
где указан радиус "массовости"
нигде, если рассматривать на примере волны смерти, то расчет идет через коллизии. в партиклах кастования _CAST есть ключ shpscalekeys_s в котором описывается радиус волны для каждого последующего шага. как только ббокс частицы касается нпся, срабатывает условие нанесения урона. урон записывается в damage_per_level для инстанции C_SPELL

поведение спела определяется партиклом и типом коллизий (emfxcolldyn_s, emfxcolldynalign_s, emcheckcollision) в визуал фх, а алгоритм целей описывается в инстанции c_spell свойством targetCollectAlgo. см константы TARGET_COLLECT_
 

Lorddemonik

★★★★★
Редактор раздела
Регистрация
17 Дек 2011
Сообщения
1.003
Благодарности
511
Баллы
350
нигде, если рассматривать на примере волны смерти, то расчет идет через коллизии. в партиклах кастования _CAST есть ключ shpscalekeys_s в котором описывается радиус волны для каждого последующего шага. как только ббокс частицы касается нпся, срабатывает условие нанесения урона. урон записывается в damage_per_level для инстанции C_SPELL


поведение спела определяется партиклом и типом коллизий (emfxcolldyn_s, emfxcolldynalign_s, emcheckcollision) в визуал фх, а алгоритм целей описывается в инстанции c_spell свойством targetCollectAlgo. см константы TARGET_COLLECT_

Тогда я понять не могу, я полностью скопировал "Волну смерти", как в скриптах, так и в визуалах, лишь имя изменил. Однако заклинание не нанесло урона как "оригинал". Я что-то упустил?

У всех заклинаний, которые я вставил, есть своя "волна", но урон наносится только если встать в упор к НПС и скастовать. Из чего я могу сделать выводы, что игра не видит "волны" от заклинания как источник урона
 
Последнее редактирование:

Kreol Nekr

Участник форума
Регистрация
21 Ноя 2014
Сообщения
229
Благодарности
109
Баллы
190
ну ребят, вы как обычно.. все куда проще
в процессоре мьюзик зоуна в г2 есть условие, которое парсит суффикс имени. если на конце музыкальной зоны будет NCI или NCO, что соответствует аббревиатурам нью кемпа, то на локации пойдет снег. пруф:

а сами зоны вот:
Спасибо, не знал я об этом... Буду знать)
 

D36


Модостроитель
Регистрация
3 Дек 2014
Сообщения
2.124
Благодарности
3.215
Баллы
485
Декомпиляция сурсером из MDL в ASC, редактирование текстурной развертки в Блендере с плагином Керракса, сохранение ASC, попытка компиляции игрой, вылет:

bip.png


Что за зверь такой и как его побороть? Компилируемые модели - трон и кресло. Статические MDM и доспехи ASC редактируются в Блендере и компилируются игрой без проблем.
 

Вложения

  • thrones.rar
    30 KB · Просмотры: 53

alex_draven


Модостроитель
Регистрация
13 Сен 2007
Сообщения
2.184
Благодарности
2.879
Баллы
420
Хелпер (или бокс) Bip01 в нулевые локальные координаты кресла с нулевым вращением, а к нему приаттачить ZS_POS и ZM_.
Сообщение об ошибке, кстати, движок не в тему выдает.
 

D36


Модостроитель
Регистрация
3 Дек 2014
Сообщения
2.124
Благодарности
3.215
Баллы
485
Сложновато. Есть урок на эту тему? Не понимаю, почему все asc стульев-кресел-кроватей обходятся без bip01, они теряются при декомпиляции?
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.371
Благодарности
7.802
Баллы
995
Не понимаю, почему все asc стульев-кресел-кроватей обходятся без bip01, они теряются при декомпиляции?
Эм.. а зачем статичному объекту костная структура ?! bip01 это корневая косточка всей иерархии скелета анимированной модели, поэтому их там никогда и не было. А вот если бы кровать или стул выполняли какую либо собственную анимацию, тогда уже другое дело, и эта иерархия была бы соблюдена (См., например книжный стенд, у которого своя анима для перелистывания страниц).
Уроков на эту тему не припоминаю..
 

alex_draven


Модостроитель
Регистрация
13 Сен 2007
Сообщения
2.184
Благодарности
2.879
Баллы
420
Эм.. а зачем статичному объекту костная структура ?!
Х.з., Движок ругается почему-то на задвоение элементов с именем Bip01, а не на их отсутствие. В оригинальных статических мешах никаких Bip01 нет.
Надо смотреть, как прописаны статические мобы в спейсере. И делать по аналогии.

Иерархия в целом такая подразумевается:
_1.JPG _2.JPG

Статический моб будет прописан в спейсере как asc.
Динамический как MDS.

Но формальной разницы никакой. Я могу тупо прописать ASC из MDS и оно будет статическим. Так, например, накосячили в Готике 1 в свободной шахте, когда динамический моб с костром и жареным падальщиком прописали через ASC, а не через его MDS.
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.276
Благодарности
4.579
Баллы
625
они теряются при декомпиляции?
нет. возможно просто условие поставлено неверно, но не вникал. суть в том, что НОД как вспомогательный объект требует зависимость в качестве родительской кости. предполагается что ASC должна принимать вид:
upload_2018-3-9_14-19-27.png
в этом случае все закомпилится корректно. НО факт таков, что если заNOPать кусок компилятора с этой проверкой [на примере G2]:
upload_2018-3-9_14-21-26.png
и скормить ASC без родительской зависимости:
upload_2018-3-9_14-22-22.png
то скомпилится все также корректно, что и с bip01:
upload_2018-3-9_14-23-53.png
если декомпилируешь выходную MDL после ПАТЧИНГА, убедишься что действительно никаких bip01 там не будет

Не понимаю, почему все asc стульев-кресел-кроватей обходятся без bip01
значит компилировались они либо какой-то ранней версией спейсера или ранними версиями движка..
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.371
Благодарности
7.802
Баллы
995
Х.з., Движок ругается почему-то на задвоение элементов с именем Bip01, а не на их отсутствие.
Скорее косяки какие-то изначально при сборке были, либо компилили через костыли какие или спец софт. Гратт вон расписал как это дело костылями обходится.. как пример такого..

В оригинальных статических мешах никаких Bip01 нет.
Естественно их нет, иначе это были бы динамические меши со всем вытекающим..
 

D36


Модостроитель
Регистрация
3 Дек 2014
Сообщения
2.124
Благодарности
3.215
Баллы
485
Спасибо, Гратт, всё заработало. Теперь могу штамповать модельки как на конвейере.
Для потомков оставляю образцы правильно подготовленных исходников, компиляция которых не заканчивается ошибкой "more than 1 'BIP01' rootNode in hierarchy: ZS_POS0".

Хм, а меш zm_ должен остаться GEOMOBJECT или измениться на HELPEROBJECT? В принципе, прокатило и так и так, но есть ли принципиальная разница?
 

Вложения

  • ascs.rar
    38,4 KB · Просмотры: 55
Последнее редактирование:

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.276
Благодарности
4.579
Баллы
625
Хм, а меш zm_ должен остаться GEOMOBJECT или измениться на HELPEROBJECT? В принципе, прокатило и так и так, но есть ли принципиальная разница?
всего тегов 6. это COMMENT под описание продукта, SCENE для описания исходной сцены, MATERIAL_LIST для подробного описания материалов, MESH_SOFTSKINVERTS для описания ZM динамической геометрии, GEOMOBJECT для описания ZM статической геометрии, HELPEROBJECT - BIP кости и ZS слоты
 

alex_draven


Модостроитель
Регистрация
13 Сен 2007
Сообщения
2.184
Благодарности
2.879
Баллы
420
Естественно их нет, иначе это были бы динамические меши со всем вытекающим..
Нет. Разницы никакой.
Реальный статический меш - это вобы (VOB). И прописываются они через 3ds, а не ASC.

Мобы (MOB) - это любые объекты, с которыми возможно взаимодействие. Будь то лавка или анимированный станок. Прописываются через ASC или MDS (в котором есть несколько asc).

MOB в свою очередь в готике не имеет никакого отношения к NPC. Я вообще не знаю, какой дебил придумал называть npc "мобами".*facepalm*
 

MaGoth

★★★★★★★★★★★
Администратор
Регистрация
7 Янв 2003
Сообщения
19.371
Благодарности
7.802
Баллы
995
Нет. Разницы никакой.
Реальный статический меш - это вобы (VOB). И прописываются они через 3ds, а не ASC.
Я в курсе. что до статики, то таковой является любой неподвижный объект мира, и в каком он формате в итоге не суть важно. проблема в другом, в том что рв изначально компилила их через анус, отсюда и проблемы(пример в посте гратта с отсечением излишек), т.е. по сути костыль для компила. А вот для чего это делалось мне и самому интересно. Ведь любой костыль это по сути потенциальный глюкодром в будущем.. ::)

Мобы (MOB) - это любые объекты, с которыми возможно взаимодействие. Будь то лавка или анимированный станок. Прописываются через ASC или MDS (в котором есть несколько asc).
Угу, именно так..

MOB в свою очередь в готике не имеет никакого отношения к NPC. Я вообще не знаю, какой дебил придумал называть npc "мобами".*facepalm*
Это не дебилы придумали это правило такое в гейм-деве. Мобами обычно именуют всех существ населяющих мир(с точки зрения игрока, не программиста).:
Моб (англ. Mob, mobile, сокращение от англ. mobile object, подвижный объект) — любой нестатичный объект в компьютерной игре. Частными случаями мобов являются игровые персонажи, неигровые персонажи (NPC), монстры (агрессивные мобы).
 
Сверху Снизу