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

Рекомендуемые сообщения

Опубликовано

Привет всем. Давно уже сделал мод который отключает одних нпс ставя вместо них копии.
Вот скрипт на стадии квеста
 

SetObjectiveDisplayed(10, 1)

Alias_DBSideContract01NarfiAlias.GetReference().Enable()

Alias_OriginalNarfiAlias.GetReference().Disable()
DarkBrotherhood DBScript = DarkBrotherhoodQuest as DarkBrotherhood
if DBScript.pNarfiAlreadyDead == 1
     SetStage (20)
     ;DBScript.FirstKill +1	 
endif

Он отключает оригинального Нарфи подставляя ложного. В алиасах тоже есть originalMarfiAlias. И там прописан Нарфи.  Оригинальный. Но Настоящий не отключается. как итог 2 Нарфи. Где ошибка? Как его отключить на время квеста?

Опубликовано
21.10.2022 08:34:42, angel-deff сказал(-а):

Привет всем. Давно уже сделал мод который отключает одних нпс ставя вместо них копии.
Вот скрипт на стадии квеста
 

SetObjectiveDisplayed(10, 1)

Alias_DBSideContract01NarfiAlias.GetReference().Enable()

Alias_OriginalNarfiAlias.GetReference().Disable()
DarkBrotherhood DBScript = DarkBrotherhoodQuest as DarkBrotherhood
if DBScript.pNarfiAlreadyDead == 1
     SetStage (20)
     ;DBScript.FirstKill +1	 
endif

Он отключает оригинального Нарфи подставляя ложного. В алиасах тоже есть originalMarfiAlias. И там прописан Нарфи.  Оригинальный. Но Настоящий не отключается. как итог 2 Нарфи. Где ошибка? Как его отключить на время квеста?

 

 

 

Alias_OriginalNarfiAlias.GetActorReference().disable()  - попробуйте так

Опубликовано
21.10.2022 12:01:34, elrian2 сказал(-а):

Alias_OriginalNarfiAlias.GetActorReference().disable()  - попробуйте так

SetObjectiveDisplayed(10, 1)

Alias_DBSideContract01NarfiAlias.GetReference().Enable()

Alias_OriginalNarfiAlias.GetActorReference().disable() ; Âûêëþ÷àåì îðèãèíàëüíîãî Íàðôè

не помогло. Увы.  В алеасах на него ведёт спец-ссылка а не уникальный.

Опубликовано
21.10.2022 12:45:29, Azazellz сказал(-а):

Ну и прежде всего убедись, что алиас нормально заполнился.

Алиас я первым делом заполнил.  Реф на Нирфи через win object все чекбоксы отключены. Скрин есть но как скинуть не знаю.

Опубликовано
21.10.2022 13:53:23, angel-deff сказал(-а):

Алиас я первым делом заполнил.  Реф на Нирфи через win object все чекбоксы отключены. Скрин есть но как скинуть не знаю.

Проверять нужно в игре.
Actor Narfi = NarfiAlias.GetReference() as Actor
Debug.Trace("MyScript / Actor Narfi = " + Narfi as String)
Narfi.Disable()

————————————
don't forget your falls
————————————

Опубликовано
21.10.2022 18:04:14, Meridiano сказал(-а):

Проверять нужно в игре.

Actor Narfi = NarfiAlias.GetReference() as Actor
Debug.Trace("MyScript / Actor Narfi = " + Narfi as String)
Narfi.Disable()

Кину скрипт в стадию квеста и отпишусь
Опубликовано

Консольными командами тоже можно, вроде как.

Но я уже не помню, какая команда выдавала принадлежность НПС к тому или иному алиасу.

Посмотри на СК-вики, там был полный список команд.

Опубликовано
22.10.2022 06:48:15, Azazellz сказал(-а):

Консольными командами тоже можно, вроде как.

Но я уже не помню, какая команда выдавала принадлежность НПС к тому или иному алиасу.

Посмотри на СК-вики, там был полный список команд.

Scriptname Test_NarfiAlias extends actor

Actor Narfi = NarfiAlias.GetReference() as Actor
Debug.Trace("Test_NarfiAlias / Actor Narfi = " + Narfi as String)
Narfi.Disable()
А такой скрипт подойдёт? В смысле, он верно сделан?

Опубликовано

Друзья, доброго времени суток! подскажите как можно переделать мод с броней из версии SE в LE? заранее большое спасибо!)

Опубликовано
24.10.2022 19:13:08, Dim8719 сказал(-а):

Друзья, доброго времени суток! подскажите как можно переделать мод с броней из версии SE в LE? заранее большое спасибо!)

Модели той же программой, что и с LE в SE конвертирует. Они там все двусторонние.

esp-файл - никак. Насколько мне известно, чтоб получить полностью совместимую версию надо пересоздавать всё вручную. В остальных случаях конвертации (СК, хЭдит) возможны ошибки, так как меняется только версия файла, но не структура.

Опубликовано
25.10.2022 09:28:59, Azazellz сказал(-а):

Модели той же программой, что и с LE в SE конвертирует. Они там все двусторонние.

esp-файл - никак. Насколько мне известно, чтоб получить полностью совместимую версию надо пересоздавать всё вручную. В остальных случаях конвертации (СК, хЭдит) возможны ошибки, так как меняется только версия файла, но не структура.

Подскажите пожалуйста! какие для этого есть программы? И мне нужно переделать сами модели, без есп файла...

Опубликовано
26.10.2022 09:56:50, Dim8719 сказал(-а):

Подскажите пожалуйста! какие для этого есть программы? И мне нужно переделать сами модели, без есп файла...

Гуглится же элементарно, в том числе на русском.

Основных программ две - SSE Nif Optimizer и Cathedral Assets Optimizer.

Опубликовано (изменено)

Привет. Нужен скрипт который при касте заклинания отнимает 50% манны гг. Независимо от ее количества. В игре есть заклятие с подобным скриптом?

Scriptname SGC_RemoveMagik extends spell  

Event OnEffectStart (Actor akTarget)
PlayerRef.Target().DamageActorValue("Health")
endEVENT

Я вот написал этот. Естесственно заменю потом на magic

Изменено пользователем angel-deff
Опубликовано
27.10.2022 12:07:38, angel-deff сказал(-а):
В игре есть заклятие с подобным скриптом?

Нет.

Чтоб раздамажить на определенный процент - тебе надо его сначала вычислить. И там свои подводные камни могут быть с получением точного значения, с учетом всех модификаторов.

Плюс есть значение текущее - и максимальное.

Ну и это тебе в любом случае не помешает кастовать этот спелл при отсутствии маны.

Опубликовано
Где можно подглядеть скрипт, который включит активатор при получении определенного предмета или прохождении стадии квеста?
Опубликовано
30.10.2022 18:40:06, angel-deff сказал(-а):

Где можно подглядеть скрипт, который включит активатор при получении определенного предмета или прохождении стадии квеста?

Включение/отключение активатора ничем не отличается от включения/отключения НПС. Ты же вроде это делал, нет?

Просто разные объекты указываешь как цель, и всё.

Опубликовано
30.10.2022 19:35:12, Azazellz сказал(-а):

Включение/отключение активатора ничем не отличается от включения/отключения НПС. Ты же вроде это делал, нет?

Просто разные объекты указываешь как цель, и всё.

Делал, но там папирус в стадиях квеста. В моём моде квестов нет. Ну и к тому-же а если игрок прошёл квест? В этом случае мои изменения не сработают. и активатор будет отключен. А второй     запускаться должен когда гг получает камень не через диалог..

Опубликовано
31.10.2022 03:08:55, angel-deff сказал(-а):
В моём моде квестов нет.

Ну так сделай.

Можно скрытый квест, который этим всем и будет управлять. У Скайрима дофига механик, большинство работает как раз на квестах. Один из самых стабильных методов для переключения всякой всячины и хранения данных без риска их потери.

Опубликовано
31.10.2022 12:00:28, Azazellz сказал(-а):

Ну так сделай.

Можно скрытый квест, который этим всем и будет управлять. У Скайрима дофига механик, большинство работает как раз на квестах. Один из самых стабильных методов для переключения всякой всячины и хранения данных без риска их потери.

Тоесть можно создать алиас, привязать на него активатор  в условиах алиаса вписав нужный квест сюжета и в стадию вписать название алиаса.Activator Enable?

Опубликовано
01.11.2022 04:50:53, angel-deff сказал(-а):

Тоесть можно создать алиас, привязать на него активатор  в условиах алиаса вписав нужный квест сюжета и в стадию вписать название алиаса.Activator Enable?

Эээ. Тут зависит от того, что тебе вообще надо сделать.

 

Ну, например, проверить, на какой стадии квеста игрок находится, чтоб если он какую-то часть прошел, то активатор бы включился.

Создаешь квест, который запускается один раз при старте игры, и который будет своими скриптами это делать. Алиас тут не обязателен, можно проверять сразу нужный квест и активировать объект непосредственно.

 

А вот как к уже активному квесту прицепиться, да чтобы без изменения его скриптов - я как-то вот так сходу придумать не могу.

Но можно и обходными путями - например, поставив триггер в важную квестовую локацию, который будет срабатывать в зависимости от того, на какой стадии отслеживаемого квеста игрок туда пришел. Т.е. если он, скажем, в Ветреный Пик пришел просто погулять, без квеста на табличку - маркер в последней комнате это проверит, и ничего не запустит. А вот если квест на табличку взят или уже пройден - то скрипт с маркера сработает и что-то сделает.

Опубликовано

If DB04.GetStage() == 40
  Activator.Statue Enable
EndIf
Вот так? Похожий был в одном моде завернутый в ивент. Только там не активатор а другой квест

Опубликовано
01.11.2022 14:09:47, angel-deff сказал(-а):

If DB04.GetStage() == 40
  Activator.Statue Enable
EndIf
Вот так? Похожий был в одном моде завернутый в ивент. Только там не активатор а другой квест

Типа того, да.

Синтаксис команд я уже не помню, но сама идея правильная - проверить стадию квеста, и активировать что тебе надо.

Разве что вместо == 40, я бы поставил >= 40.

Т.е. если игрок уже ушел дальше по квесту, и находится на стадии больше 40-й, то штука все равно запустится.

 

Плюс, возможно, надо дополнительное условие предусмотреть на то, что квест завершен.

Но это не точно, так как я не помню, может ли скрипт получить стадию из уже закрытого квеста, или он там просто 0 выдаст.

Опубликовано
02.11.2022 12:57:50, Azazellz сказал(-а):

Типа того, да.

Синтаксис команд я уже не помню, но сама идея правильная - проверить стадию квеста, и активировать что тебе надо.

Разве что вместо == 40, я бы поставил >= 40.

Т.е. если игрок уже ушел дальше по квесту, и находится на стадии больше 40-й, то штука все равно запустится.

 

Плюс, возможно, надо дополнительное условие предусмотреть на то, что квест завершен.

Но это не точно, так как я не помню, может ли скрипт получить стадию из уже закрытого квеста, или он там просто 0 выдаст.

Попробую. В моде где я спер идею скрипта он к алиасу привязан был. Попробую создать квест с алиасом без стадий.

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...