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

akortunov

Граждане
  • Постов

    1098
  • Зарегистрирован

  • Посещение

Весь контент akortunov

  1. По порядку:1. Зачарованные и незачарованные - это совершенно разные предметы с разным Id, и объединить их в одну стопку не получится. Разве что только объединять одинаковые предметы с разным числом зарядов. 2. С заскриптованными надо проверять - в Морровинде они точно не складывались (например, пепельные статуи), в OpenMW такого пока не видел. Там вроде надо, чтобы скрипт одинаковый на предметах висел. 3. С украденными/неукраденными проблемы в OpenMW нет, о чем уже неоднократно упоминалось, да и механика стака здесь вообще не при делах.
  2. Более того, в Морровинде счетчик краденных предметов далеко не всегда очищался (не в курсе, чинит ли это MCP). В результате стражники могли конфисковать все найденные алмазы до конца игры. В OpenMW такого произвола нет. Именно. Что понимается под механикой стака, и что с ней не так? Не сказал бы, что это просто - тогда надо еще точное время кражи предмета хранить, и прорабатывать специальную логику, которая будет постоянно пробегать по инвентарю и очищать тэги через определенные промежутки времени.
  3. Это не решение проблемы. Те же стражники могут отобрать алмаз, купленный в Морнхолде, в качестве алмаза, украденного у Налькарии, или где-нибудь в крепости Дагот Ура (там у некоторых предметов тоже владельцы есть). Это проще уже существующей в Морровинде системы, и подобным образом работают более новые игры серии. Моя позиция такова: если уж менять существующую систему, делать это надо по-человечески, а не городить новые костыли.
  4. Я в свое время через обратную карманную кражу разруливал - надо подбросить Налькарии в инвентарь любой алмаз, и счетчик уменьшится. А вообще для предметов можно тэг "Краденный" ввести. Стражники будут отбирать любые предметы с этим тэгом, они будут в разных стопках в инвентаре. В принципе, можно ввести ограничение на торговлю - краденные предметы можно продавать только Хаджитам и торговцам из Гильдии Воров и Мораг Тонга (такие предметы не будут отображаться в меню торговли), ну или через serviceRefusal, но там надо новую консольную команду создавать для проверки, есть ли у персонажа краденные предметы. Не уверен, что делать, если предмет был украден у скупщика краденого. Как Скайрим подобные ситуации разруливает? В любом случае, у такого подхода есть проблемы: 1. Требуется изменение формата сохранения 2. Оно не совместимо с оригинальной системой воровства, и как опцию сделать будет сложновато. Разве что при взятии предмета использовать обе системы, а при проверке на краденое - только выбранную. 3. Могут быть эксплоиты со сбросом тэга (например, при зачаровании краденного предмета). Значение сохранять можно, но не нужно, т.к. у одной стопки один владелец. А как потом отдельно предметы выбирать? Например, конкретно краденный алмаз, или поврежденный меч? Идея стопки в том, что в ней все предметы полностью взаимозаменяемы.
  5. Я же написал, что в скриптах у нужных персонажей надо переменную "NoFall" объявлять (это мод править). Костыль конечно, но вариантов получше я не вижу.
  6. Обновил архив с патчами. Из нового: 1. Сервис для перезарядки магических предметов за деньги у зачарователей. 2. Пришлось переработать патч для физики. Теперь по умолчанию используется поведение OpenMW, но игнорируются неподвижные объекты с объявленной в скрипте переменной NoFall. Способа получше, как обойти ограничение, ничего не поломав, я не нашел.
  7. Это с чего это вдруг он должен быть эффективнее? Не забываем также, что блокирование оружием быстро просаживает его состояние. Короткими клинками особенно не позащищаешься, особенно, если у врага секира. Кстати, а каким должен быть износ при блокировании оружием? Сейчас он такой же, как и при блокировании щитом (входящий урон вычитается из состояния предмета, которым блок поставили). По умолчанию в Морровинде у щитов раза в два меньше максимальное состояние, чем у аналогичного полноразмерного одноручного оружия, и раза в три меньше, чем у аналогичного двуручного.
  8. Ну так и я о том же. Возни много, профита мало. Ради одного блока не вижу смысла это отдельно тащить - можно тупо щиту модель от оружия поставить, эффект тот же будет.
  9. Предлагаю решать проблемы по мере их поступления. Для dual-wielding'а надо еще кучу анимаций как минимум (которые непонятно, как выглядеть должны), не считая проблем с движком и интерфейсом. Зачехление оружия допиливать, как минимум. Плюс если такая атака будет дольше, то смысла в ней вообще нет - какая разница, ударить два раза с одной руки или один раз с двух? Плюс разное оружие может иметь разный радиус поражения и разную скорость атаки, их как-то синхронизировать надо. Да и вообще, есть ли примеры RPG от первого лица, где dual-wielding был нормально реализован? Скайрим не предлагать, там он чисто для галочки. Да и как это фехтование должно выглядеть? По идее, длинным клинком в правой руке атакуем, коротким в левой парируем удары - все равно до противника не дотянуться. Но если оружие в левой руке чисто для парирования, то чем оно лучше щита?
  10. Если кому интересно, готов прототип расширенной блокировки. Она включает в себя: 1. Ручную блокировку. Добавляет новую горячую клавишу для блока. При удерживании клавиши (кнопки мыши) персонаж переходит в защитную стойку и может блокировать удары, но не может атаковать. Бегать в защитной стойке нельзя, можно только ходить. Также я пока не трогал механику расчета вероятности успешного блока - сейчас она по-прежнему зависит от навыка блока героя и от оружейного навыка атакующего. 2. Блокировку оружием. Соответственно, изнашиваться будет оно, а не щит. В остальном механика та же. Работает для неписей, но они не будут блокировать, если у оружия осталось меньше 50% состояния или урон от атаки превышает 10% от максимального состояния оружия. Для боя без оружия механика блока пока не проработана. 3. Блокировку метательных снарядов щитом. Работает для неписей. Герою для блока надо быть в защитной стойке. Пока более-менее проработана только механика, т.е. нет анимации и озвучки. Как блокировка озвучена в Скайриме? Допустим, мы возьмем звуки с какого-нибудь плагина типа Immersive Sounds, если позволят копирайты. Но это уже ESP нужен? В качестве заглушки для защитной стойки пока используется анимация удерживания факела, для блокировки оружием - анимация блокировки щитом. Если кто-то захочет сделать анимации, то теоретически можно сделать анимации парирования (и звук) разными для разных типов ударов (рубящие, режущие, колющие). Код здесь: https://github.com/a...tended_blocking Буду рад отзывам и тестам. В первую очередь меня интересует, нужна ли эта фича вообще, а если нужна, то насколько удобно ее использовать. То ли у меня руки кривые, то ли я чего-то не знаю. Тупое удаление узлов не прокатывает - персонаж перестает двигать правой ногой. Может кто-нибудь правильно очистить эту анимацию: https://yadi.sk/d/lzB0MsEv3T4ibP?
  11. Ну тогда жду в личку (чтобы не мусорить в основной теме) вывод CI/before_script.msvc.sh с дополнительным ключом -V (регистр важен). Также не забываем, что скрипт надо запускать из корневой директории проекта (там еще директория CI есть). Можно скриншотом. Если там какая-то ошибка, он ее должен был вывести. Установщики Boost, MyGUI и прочего барахла запускались?
  12. Если все отработалось нормально, скрипт должен был файл OpenMW.sln создать. Его можно либо через Visual Studio открыть и там сборку запустить, либо можно попробовать build.msvc.sh использовать, чтобы из командной строки OpenMW собирать. В крайнем случае, можно тему на форуме OpenMW создать. Берутся же откуда-то сборки под Винду?
  13. Чаще всего для Windows разработчики используют это руководство: https://gist.github....0454e99b3952405 В общем, надо Visual Studio, Git for Windows и CMake. Далее запускается скрипт, который скачивает и устанавливает зависимости типа OpenAL и Bullet. Сам, честно, этот скрипт использовать не пытался - использую Linux, там настройка намного проще. Продолжение про поржать: получилось запилить ручную блокировку, но пока что она использует анимацию держания факела, т.к. нет подходящих анимаций. Код здесь: https://github.com/akortunov/openmw/tree/extended_blocking
  14. Добавлять-то можно, но их обработка в движке должна быть прописана. А там как обычно - скажут, что после 1.0. А вообще в OpenMW есть такая штука, как CharacterController. Это такой объект, который запускает анимации в зависимости от текущего состояния анимируемого объекта. Конкретно по поводу ступенек: я не в курсе, как их отдельно выделить. Есть функция getOnSlope(), но она проверяет, что объект находится на любой наклонной плоскости, по которой можно подняться. Если есть охота поэкспериментировать с новыми анимациями, то однозначно надо учиться компилировать OpenMW самостоятельно.
  15. Да там на видео ничего интересного все равно не будет - обычная Морровская блокировка, тупо без щита в руке.
  16. Просто персонаж должен брать оружие с того места, к которому оно прикреплено, чтобы не было рассинхронизации. Это надо во время игры видеть, желательно с низким fps. В курсе: https://github.com/O...penmw/pull/1615 Народ одобряет, но вау-эффекта нет. scrawl написал только, что боится, что моды с ножнами потом переделывать придется, если мы что-то поменяем. Чисто поржать: научил персонажей блокировать удары оружием. Недостатки: 1. Нет анимаций блокировки - используется анимация щита 2. Поскольку используются хитбоксы, нет точного контакта оружия атакующего и нападающего, как в слэшерах. Впрочем, такая проблема есть и со щитами как в Морровинде, так и в OpenMW. 3. Пока непонятно, где брать озвучку. Из Скайрима утащить?
  17. Круто! Только к этой анимации потом unequip нужна будет. По-хорошему, надо бы совместно с отображением оружия делать, но scrawl пока до нас не снизошел.
  18. У меня она примерно так и работает. Только Attach по идее должен быть в начале - при старте анимации экипировки оружие исчезает со спины и прикрепляется к руке. С передвинутым Attach оружие материализуется в руке где-то на середине движения. Надо собственно движение после Attach удлинять, плюс само движение изменить.
  19. И что с этим делать? Как-то конвертировать? Только стадии, вроде: к ним обработчики привязаны (типа прикрепить оружие к руке, добавить стрелу, скастовать заклинание и т.д.) Могу файл анимации у себя проверить. Только желательно, чтобы там сильное замедление было.
  20. По поводу раздельной загрузки анимаций: принципиально оно работает, но есть нюансы. Я попытался добавить анимации из AnimKit, они добавляются, но персонажа немного корежит. В консоли есть строки: Warning: addAnimSource: can't find bone 'bip01 l toe0' in meshes\xbase_anim.nif (referenced by animations/xbase_anim/knockdown;.kf) Warning: addAnimSource: can't find bone 'bip01 r toe0' in meshes\xbase_anim.nif (referenced by animations/xbase_anim/knockdown;.kf) Warning: addAnimSource: can't find bone 'bip01 tail' in meshes\xbase_anim.nif (referenced by animations/xbase_anim/knockdown;.kf) Warning: addAnimSource: can't find bone 'bip01 tail1' in meshes\xbase_anim.nif (referenced by animations/xbase_anim/knockdown;.kf) Warning: addAnimSource: can't find bone 'bip01 tail2' in meshes\xbase_anim.nif (referenced by animations/xbase_anim/knockdown;.kf) Warning: addAnimSource: can't find bone 'bip01 tail3' in meshes\xbase_anim.nif (referenced by animations/xbase_anim/knockdown;.kf)С какого перепугу анимации гуманоидов используют кости хвоста? Или это я чего-то не понимаю? Я проверил xbase_anim.nif, там действительно этих костей нет. Или там AnimKit потом при объединении какую-то магию дополнительно проводит? Анимации зверорас вроде грузятся нормально - у них эти кости есть. Есть у кого-нибудь kf-файлы для отдельных групп?
  21. Вот здесь не понял. Эта фича работает для неписей и гуманоидных существ тоже, а не только для игроков. Соответственно, анимации нужны хотя бы для неписей. Да, и не забываем, что ножны рисуются также на кукле персонажа в инвентаре. По поводу конкретно этих трех клинков - да, для них ножны никак не сделаешь.
  22. Ну это уже задача для моделлеров. С точки зрения движка неважно, ремешки тут будут, полные ножны, или чехол для лука.
  23. Если вкратце: получилось запилить ножны (хранятся в виде отдельной модели рядом с моделью оружия). Работает как для героя, так и для неписей. Текущие морровиндовские анимации плохо подходят для ножен, так что их неплохо бы заменить. Также пока непонятно, как это будет выглядеть для изогнутых мечей (сабель и прочих дайкатан)
  24. Прошу прощения за небольшой оффтоп, но никто ничего не пытался ничего сделать с анимациями поворота от третьего лица? Если медленно поворачиваться, то персонаж дергается. Замечал такое и в OpenMW, и в Морровинде. В OpenMW баг более заметен при высоком скорости движения персонажа, чем в Морровинде.
  25. По поводу хекс-редактора: насколько я помню, скрипты могут хранится уже скомпилированными, так что может не прокатить. По-хорошему, это разработчиков мода просить надо. Вообще, в заскриптованных модах иногда жесть творится. Разработчики OpenMW в таких случаях обычно отправляют чинить скрипты. Из последних таких перлов могу вспомнить поиск и отключение нескольких тысяч объектов (одних и тех же!) по текстовому ID каждый кадр, запихивание главного героя без бодипартов внутрь другого персонажа и попытку использовать логическое "И" в скриптах (&& - движок тупо воспринимает это как дополнительный текстовый аргумент).
×
×
  • Создать...