KOT_B_CAПOГAX, это сделать возможно несколькими способами:
1) Редактируя расу (если эта раса не имеет своей Ability). Добавить ей Ability со скриптом. 2) Не редактируя расу. Если она имеет свое Ability, добавить туда маг. эффект со скриптом. 3) Добавить игроку Ability, которое будет воздействовать на НПС опред. расы вокруг игрока. К воздействию добавить скрипт. 4) В СК создать форм-лист с НПС и скриптом на собственном квесте раздать предметы этим НПС. В этом случае они могут быть любой расы.
Без скрипта - таких способов лично я не знаю (т.к. класс форм "Раса" не имеет ассоц. с ним инвентаря; а если бы имел, неизвестно, можно ли было бы добавлять предметы не с начала новой игры).
Изменение репутации для пользователя Multigone
MultigoneOffline
Сообщение №482
| Тема: Вопросы по скриптам Papyrus
написано: 24 февраля 2015, 23:37
| Отредактировано: Multigone - 24 февраля 2015, 23:37
Проблема: при прицеливании из лука движение курсора по горизонтальной оси происходит вдвое медленнее, чем по вертикальной.
Решение:
1) Открыть Movement Type -> NPC_BowDrawn_MT. 2) В графе Rotate In Place выставить значения 180 - 180. 3) В графе Rotate While Moving выставить значение 180.
4) Открыть Movement Type -> NPC_BowDrawn_QuickShot_MT. Проделать те же операции.
Кто-нибудь разбирался со звуком (Sound Descriptor)? Дело в том, что в окне Sound могут быть перечислены несколько ресурсов звука, и как по мне, при вызове Sound Descriptor'а воспроизводимый звук должен выбираться случайным образом из этого списка. Однако этого не приоисходит, и звук всегда играется по порядку от первого к последнему, и далее - только последний. Наблюдал такое поведение, указав Sound Descriptor для зелья (Potion).
Есть идеи, как средствами СК (не скриптами) заставить звук играться рандомно?
Lokimo, делаешь обычного торговца с пустым необновляемым сундуком, который может торговать всем. В результате все, что НПС купил, потом можно у него же и выкупить.
TRENER, если в окне превью видишь восклицательный знак в ромбе, значит, ресурсы, которые использует этот актер, запакованы в BSA (например, если выбираешь расу из Dragonborn) или полностью отсутствуют в папке Data. В других случаях все должно нормально отображаться.
Еще, возможно, для той расы, которую ты выбрал, не настроен внешний вид во вкладке Body Data.
FIDO_thon, настрой Package у актера. Для описанных тобой целей подойдет PackageTemplate -> UseMagic. Посмотри, как это устроено у др. НПС, например, ColetteMarence. Для имитации тренировки магии она пользуется пакетами, начинающимися на WCollegeColettePractice...
FIDO_thon, 2) Возможно. Реализацию, скорее всего, нужно делать через взрыв. В результате, рулет иногда будет смещаться на разное расстояние относительно точки попадания снаряда магии (особенность спавна через взрыв объекта с коллизией).
ЗЫ: А может, и не будет, если спавнить сперва маркер.
Amon, почему-то я сразу нашел, первый же ответ в поиске. Скорее всего, отсутствует искомый файл TESV_Papyrus_Flags.flg в папке Skyrim\Data\Scripts\Source
Amon, у тебя нет скриптов в папке Skyrim\Data\Scripts. Распакуй Skyrim\Data\Skyrim - Misc.bsa в отдельную папку. Из нее перемести папку Scripts (и все файлы внутри нее) в Skyrim\Data. Должно получиться так: Skyrim\Data\Scripts\(файлы с расширением .pex). После этого сможешь переводить скрипты (я надеюсь).
Fenk, файлы .pex должны находиться в Skyrim\Data\Scripts. Файлы .psc должны находиться в Skyrim\Data\Scripts\Source. В чем заключается твоя проблема в данном случае, я не знаю.
Если смотреть по скриншоту, то файл сохранился в правильной директории.
Professor_X, а смысл какой? 3 года вполне достаточно для одного заклинания, к тому же за это время можно и на следующее маны накопить. По теме вопроса: с помощью незначительных изменений ванильного заклинания - никак. С помощью скрипта и второго заклинания - пожалуй, можно (не уверен). В заклинании призыва нужно будет поменять тип на Constant (не уверен, будет ли работать с архетипом Summon Creature). Если нужны подробности, я распишу примерный порядок действий.
Изменение репутации для пользователя Multigone
MultigoneOffline
Сообщение №509
| Тема: Вопросы по скриптам Papyrus
написано: 5 мая 2015, 10:48
| Отредактировано: Multigone - 5 мая 2015, 11:06
Напрямую - невозможно, т.к. величина урона зависит от множества разных факторов. Косвенно - можно, через вычисление Actor Value до нанесения урона и после него. Если же актер будет получать урон от нескольких источников сразу, скорее всего, такой метод даст ошибку в расчете.
Пример:
Float fV = MyActor.GetAV("Health")
Event OnHit(ObjectReference akAggressor, Form akSource, Projectile akProjectile, bool abPowerAttack, bool abSneakAttack, bool abBashAttack, bool abHitBlocked, Form akWeapon) Float fD = MyActor.GetAV("Health") - fV ; переменная fD показывает величину изменения здоровья до и после воздействия. IF fD < 0.0 ; разница здоровья отрицательна, значит, получает урон. ELSE ; неотрицательна, значит, лечится (или без изменения). ENDIF fV +=fD