Тема для вопросов по скриптингу.
Функции папируса:
На английском
На русском (не все, но базис)
#561
Отправлено
- werr, Chesh¡re и Olechkafum нравится это
#562
Отправлено
Но вот какие именно строки менять
Никакие.
Шанс на выпадение камней записан в левел листе с ними. Как раз тот самый ItemGems10 (ID 0010E992).
Условное "ничего" выпадает в 90% случаев, остальное (какой именно камень все-таки выпадет) зависит от уровня персонажа.
Правь этот левел лист.
- Leadaire это нравится
#563
Отправлено
Никакие.
Шанс на выпадение камней записан в левел листе с ними. Как раз тот самый ItemGems10 (ID 0010E992).
Условное "ничего" выпадает в 90% случаев, остальное (какой именно камень все-таки выпадет) зависит от уровня персонажа.
Правь этот левел лист.
Спасибо за оперативный ответ, буду пробовать!
#564
Отправлено
Такая проблемка. При создании скрипта
Event OnLocationChange(Location akOldLoc, Location akNewLoc)
if MQ104.GetStage() >= 160
(pWICourier as WICourierScript).addItemToContainer(LetterQst, 1)
AliasPlayer.Clear()
GetOwningQuest().SetStage(200)
GetOwningQuest().Stop()
endIf
endEvent
выдает ошибку, что переменная MQ104 - undefined? насколько я понял, она не объявлена. Но каким образом? Skyrim.esm то подгружен. В общем мне надо, чтобы курьер после определенного события принес мне письмо.
И еще такой вопрос, как задать условие, чтобы курьер пришел после взятия лвл? И надо ли вообще какое-то условие, чтобы этот долбанный курьер уже приперся?
Может ты можешь помочь?
_______________
И еще такой вопрос, если есть возможность, хотелось бы, чтобы была проверка по уровню персонажа, чтобы ниже определенного лвл, диалог не появлялся.
Сообщение отредактировал Leadaire: 09 ноября 2019 - 09:45
#565
Отправлено
выдает ошибку, что переменная MQ104 - undefined? насколько я понял, она не объявлена. Но каким образом? Skyrim.esm то подгружен. В общем мне надо, чтобы курьер после определенного события принес мне письмо.
Ну так она и не объявлена нигде. Скрипт не знает, что эти буковки обозначают.
Проперти типа "квест" для нее задай, и в СК свяжи с нужным квестом.
И еще такой вопрос, если есть возможность, хотелось бы, чтобы была проверка по уровню персонажа, чтобы ниже определенного лвл, диалог не появлялся.
Кондишны по центру используй. GetLevel, игрок, число, тип AND.
- Leadaire это нравится
#566
Отправлено
Ну так она и не объявлена нигде. Скрипт не знает, что эти буковки обозначают.
Проперти типа "квест" для нее задай, и в СК свяжи с нужным квестом.
Кондишны по центру используй. GetLevel, игрок, число, тип AND.
и еще такой вопрос, при таком условии if MQ104.GetStage() >= 160, скрипт стартанет именно после прохождения данного квеста? или можно условно мой мод загрузить на старый сейв и скрипт запустится? Как сделать запуск второго квеста, после завершения первого квеста (моих), через определенный промежуток времени (игрового)?
#567
Отправлено
и еще такой вопрос, при таком условии if MQ104.GetStage() >= 160, скрипт стартанет именно после прохождения данного квеста? или можно условно мой мод загрузить на старый сейв и скрипт запустится? Как сделать запуск второго квеста, после завершения первого квеста (моих), через определенный промежуток времени (игрового)?
Это зависит от стадии на момент завершения квеста.
На всякий случай добавь условие "или" на проверку завершения. Типа
if (MQ104.GetStage() >= 160) || (MQ104.IsCompleted())
Чтоб скрипт работал, вещь, к которой он прицеплен, должна быть условно активна. Например, если квест не запущен - то его скрипты не работают.
Так что чтоб твой скрипт начал получать ивенты (OnLocationChanged) и делать код в этих ивентах - он должен быть куда-то прикреплен. Например, к алиасу игрока в активном квесте.
На завершающей стадии квеста даешь команду "ждать игровое время", и потом - команду на запуск следующего квеста. Или скрытно запускаешь квест сразу, но с неотображаемой в журнале первой стадией. Потом уже в этом квесте по прошествии времени переводишь стадию на отображаемую (хз, можно так, или нет).
- Leadaire это нравится
#568
Отправлено
Это зависит от стадии на момент завершения квеста.
На всякий случай добавь условие "или" на проверку завершения. Типа
if (MQ104.GetStage() >= 160) || (MQ104.IsCompleted())Чтоб скрипт работал, вещь, к которой он прицеплен, должна быть условно активна. Например, если квест не запущен - то его скрипты не работают.
Так что чтоб твой скрипт начал получать ивенты (OnLocationChanged) и делать код в этих ивентах - он должен быть куда-то прикреплен. Например, к алиасу игрока в активном квесте.
На завершающей стадии квеста даешь команду "ждать игровое время", и потом - команду на запуск следующего квеста. Или скрытно запускаешь квест сразу, но с неотображаемой в журнале первой стадией. Потом уже в этом квесте по прошествии времени переводишь стадию на отображаемую (хз, можно так, или нет).
Что прописывать для команды ожидания игрового времени?
#569
Отправлено
Что прописывать для команды ожидания игрового времени?
https://www.creation...:Script_Objects
Осваивай поиск.
Конкретно это - ищи "wait".
#573
Отправлено
Господа, нужна помощь. По задумке после окончания диалога игрока должно сразу телепортировать на маркер. Вопрос - как это сделать? Я не могу подобрать соответствующий ивент, потому что ничего не происходит, а если просто вписать в фрагмент папируса в окошке "end" Game.GetPlayer().MoveTo("имя маркера") КК ругается: variable "имя маркера" is undefined. Хелп плиз. У меня как новичка уже мозг плавится.
#574
Отправлено
Господа, нужна помощь. По задумке после окончания диалога игрока должно сразу телепортировать на маркер. Вопрос - как это сделать? Я не могу подобрать соответствующий ивент, потому что ничего не происходит, а если просто вписать в фрагмент папируса в окошке "end" Game.GetPlayer().MoveTo("имя маркера") КК ругается: variable "имя маркера" is undefined. Хелп плиз. У меня как новичка уже мозг плавится.
Привяжи просто окончание диалога к получению определённой квестовой стадии, а затем сделай скрипт, что на этой стадии будет телепортировать игрока к маркеру
#575
Отправлено
КК ругается: variable "имя маркера" is undefined.
Потому что надо через проперти этот маркер задать, либо напрямую, либо взять его из другого скрипта, где он задан.
Не помню, можно там из окна диалога напрямую его скрипт редачить, или нет.
Вроде можно - компилишь что-нибудь, чтоб скрипт создался, потом редактируешь - вроде должно сработать.
#576
Отправлено
Привяжи просто окончание диалога к получению определённой квестовой стадии, а затем сделай скрипт, что на этой стадии будет телепортировать игрока к маркеру
Если делать полноценный скрипт, то опять же надо ивент. Я тоже об этом думал, но не смог ничего рабочего написать
Потому что надо через проперти этот маркер задать, либо напрямую, либо взять его из другого скрипта, где он задан.
Не помню, можно там из окна диалога напрямую его скрипт редачить, или нет.
Вроде можно - компилишь что-нибудь, чтоб скрипт создался, потом редактируешь - вроде должно сработать.
Опять же, функция без ивента работать не хочет. Впихнуть строку проблемы нет, и проперти задать тоже, но нужен блин ивент.
UPD: чуть-чуть покопавшись смог-таки изменить фрагмент, чтобы телепорт сработал. Но вскрылась другая проблема - на нпс висит скрипт на СellDetach(Attach, Detached/AttachedFrom), то есть по задумке он должен отводить игрока в другое место. И при телепорте игрока нпс должен телепортироваться следом. Но почему-то остается на месте при любой вариации этого скрипта. Выглядит это так:
ObjectReference Property aaaHTFTGroom Auto
Event OnCellDetach (Actor aaaHappyTogetherGroom)
aaaHappyTogetherGroom.MoveTo(aaaHTFTGroom)
EndEvent
Причем скрипт скомпилировался, все нормально. Но нпс все равно не портуется.
И еще небольшой вопрос. Как заставить forcegreet адекватно работать? Единственный вариант который нашел я - это сделать сцену, и в самого нпс вшить скрипт через OnCellAttach. Но я не уверен, что это самый корректный из возможных.
Сообщение отредактировал mantik903: 01 января 2020 - 22:20
#577
Отправлено
Опять же, функция без ивента работать не хочет. Впихнуть строку проблемы нет, и проперти задать тоже, но нужен блин ивент.
Фрагменты срабатывают без ивента в самом скрипте - они запускаются через начало\окончание диалога, смотря куда скрипт впишешь.
Причем скрипт скомпилировался, все нормально. Но нпс все равно не портуется.
Аттач-Детач очень странно работают на самом деле.
Если тебе надо, чтоб НПС вместе с игроком телепортировался - ну так тем же скриптом его и телепортируй, в чем проблема?
Как заставить forcegreet адекватно работать?
АИ-пакеты используй.
#578
Отправлено
Если тебе надо, чтоб НПС вместе с игроком телепортировался - ну так тем же скриптом его и телепортируй, в чем проблема?
Попробовал по аналогии, но все равно не хочет. Для игрока у меня прописано
ObjectReference Property aaaHTFT2Player Auto
Game.GetPlayer().MoveTo(aaaHTFT2Player)
Для нпс
ObjectReference Property aaaHTFT2Groom Auto
Actor aaaHappyTogetherGroom
aaaHappyTogetherGroom.MoveTo(aaaHTFT2Groom)
И нпс телепортироваться все равно упорно отказывается.
#579
Отправлено
Попробовал по аналогии, но все равно не хочет. Для игрока у меня прописано
ObjectReference Property aaaHTFT2Player Auto
Game.GetPlayer().MoveTo(aaaHTFT2Player)
Для нпс
ObjectReference Property aaaHTFT2Groom Auto
Actor aaaHappyTogetherGroomaaaHappyTogetherGroom.MoveTo(aaaHTFT2Groom)
И нпс телепортироваться все равно упорно отказывается.
НПСа тоже через проперти задать попробуй, либо как Actor, либо как ObjectReference.
Не помню уже, как там правильно это делается в таких случаях. Давно скрипты не писал, забыл все =)
#580
Отправлено
НПСа тоже через проперти задать попробуй, либо как Actor, либо как ObjectReference.
Не помню уже, как там правильно это делается в таких случаях. Давно скрипты не писал, забыл все =)Через
Через актера не сработало, а вот через объект - вполне (умом папирус не понять). Спасибо большое)
#581
Отправлено
Ребят, как называется предметы типа Парагон из dlc Dawnguard в creation kit? Хочу сделать мод на квест с маркерами на них. Ни в одном разделе не нашел, даже поиск в All ничего не выдает. Искал по слову Paragon и их типу.
Сообщение отредактировал Leadaire: 12 января 2020 - 23:00
Темы с аналогичным тегами papyrus, help, скрипты, вопросы
Моддинг →
Моддинг Skyrim →
Восстановление на основе Зала ДозораАвтор Alex_andra, 11 дек 2023 mod, help |
|
|||
|
Моддинг →
Моддинг Skyrim →
Отстройка ВинтерхолдаАвтор Alex_andra, 10 авг 2023 bugs, moding, help |
|
||
Моддинг →
Моддинг Oblivion →
Скрипт Для СнаряженияАвтор БесездаБойчик, 07 сен 2022 скрипты, скрипт |
|
|||
Моддинг →
Моддинг Skyrim →
Нужны добровольцы для теста модаАвтор arkadiy111, 11 апр 2022 help |
|
|||
help
Моддинг →
Моддинг Skyrim →
Ram and Skyrim seАвтор Samurai1, 03 апр 2022 help |
|
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 скрытых