Azazellz Опубликовано 8 сентября, 2018 Опубликовано 8 сентября, 2018 Ссылки на компоненты "квеста", о которых ты до этого и понятия не имел - ерунда, конечно, ничем не помогло. Инструкции по тому, как отслеживать статус компонента в скрипте - тоже ерунда, ты же это и так прекрасно знал. *это был сарказм, есливчо* Если ты не в состоянии разобраться в том, что тебе дали (а дали тебе для решения твоей проблемы достаточно информации), но вместо этого можешь только ныть - это не моя проблема.
stanislavd Опубликовано 8 сентября, 2018 Опубликовано 8 сентября, 2018 демагог ты наш!читай внимательно, когда люди задают вопросы и тогда столько воды не будет! я этим занимался года 3-4 назад, решил опять попробовать... мне много чего надо вспомнить... единственный мой плюс - файлы наработок, благодаря которым я быстрее начинаю ориентироваться...это ты у нас изучал информатику высоких уровней, мы дальше двкашного бейсика и маткада на пне не проходили...но и эти скудные познания позволяют хоть как то держаться на плаву! и в отличии от тебя, как я посмотрю, у меня идей в голове побольше... но к моему сожалению, не хватает базы для полномасштабного конструирования... и главное различие между мной и тобой: я в большей степени сценарист, ты тот кто может сделать... я еще пороюсь и я вспомню... но люди почитав мои выкладки, достанут этот квест и разнообразят свои пещеры... а мне скучно ставить этот квест в таком состоянии, я хочу модернизировать его, что и пытаюсь сделать... с твоей помощью, или без твоей помощи, но я это сделаю... могу сказать только, что в моей голове куча ЛОГИЧЕСКИХ КВЕСТОВ, для моих локаций)))
Azazellz Опубликовано 8 сентября, 2018 Опубликовано 8 сентября, 2018 08.09.2018 07:20:45, stanislavd сказал(-а): это ты у нас изучал информатику высоких уровней, мы дальше двкашного бейсика и маткада на пне не проходили... Ща будет разрыв шаблона, но я даже маткада не знаю. Зато помню (кажется) чуть-чуть из бейсика. И немного паскаль. Но это все мои знания по програмированию. Папирус я изучал на чужих скриптах и немного по вики. И я не могу сказать, что я так прям хорошо умею писать скрипты.
stanislavd Опубликовано 8 сентября, 2018 Опубликовано 8 сентября, 2018 А я и Паскаля не знаю.... То что мне удалось прочитать ещё в школьные годы это маленькая брошюрка... И с папирусом так же как и у тебя... Ничего.... Вспомним потихоньку... А там и вернёмся к прошлому квесту, который 3 года назад делал... Только теперь, благодаря этой ситуации, я вижу в какую сторону копать....
CISCO.:i:..:i:. Опубликовано 10 сентября, 2018 Опубликовано 10 сентября, 2018 (изменено) Доброго времени суток. Товарищи столкнулся с проблемой - в игре есть CraftingCookingFireSpit (вертел) так вот у него есть анимация вращения (мяса на вертеле) но эта анимация проигрывается лишь когда НПС или ГГ что то готовят и сами рукой его вертят. Мне же нужно что бы он вертелся сам по себе при его его активации с триггера. Для этого я создал новый объект в WorldObjects\Activator назвал его 0000_HMD_CraftingCookingFireSpit и указал путь к модели Furniture\FireSpitCooking.nif. На триггер прикрутил самодельный скрипт - но ничего не работает - нажимаю на триггер но созданный мной вертел не проигрывает анимацию (то есть триггер активатор должен активировать анимацию на 0000_HMD_CraftingCookingFireSpit - но этого не происходит). Хотя подобным образом я сделал дверь в WorldObjects\Activator и она открывается и закрывается так же с помощью триггера активатора на котором прикручен всё тот же скрипт. не могу понять в чём беда. Scriptname _0000_HMD_Play_Animation extends ObjectReference import debug import utility objectReference property Animation_Object auto Event onTriggerEnter(objectReference triggerRef) Actor actorRef = triggerRef as Actor if(actorRef == game.getPlayer()) Animation_Object.playAnimation("isCookingSpit") endif endEvent Изменено 10 сентября, 2018 пользователем CISCO.:i:..:i:.
SETABAN Опубликовано 11 сентября, 2018 Опубликовано 11 сентября, 2018 День добрый. Может кто подсказать как ,к примеру, железный слиток сделать статичным? Чтобы его нельзя было взять.
CISCO.:i:..:i:. Опубликовано 11 сентября, 2018 Опубликовано 11 сентября, 2018 11.09.2018 11:29:03, SETABAN сказал(-а): День добрый. Может кто подсказать как ,к примеру, железный слиток сделать статичным? Чтобы его нельзя было взят Создаешь новый объект в статике и указываешь путь к текстурам - путь можно скопировать из описания железного слитка - графа model
SETABAN Опубликовано 11 сентября, 2018 Опубликовано 11 сентября, 2018 11.09.2018 11:49:12, CISCO.:i:..:i:. сказал(-а): Создаешь новый объект в статике и указываешь путь к текстурам - путь можно скопировать из описания железного слитка - графа model Копирование пути к nif помогло, но я пробовал ранее вручную искать по этому пути слиток (тщетно). Почему-то в папке такого файла не существует, а если просто скопировать путь к несуществующему, то без проблем.
mr Jyggalag Опубликовано 11 сентября, 2018 Опубликовано 11 сентября, 2018 11.09.2018 12:04:33, SETABAN сказал(-а):Копирование пути к nif помогло, но я пробовал ранее вручную искать по этому пути слиток (тщетно). Почему-то в папке такого файла не существует, а если просто скопировать путь к несуществующему, то без проблем.Дело в том, что моделька лежит в одном из файлов .bsa с которым СК и работает.
SETABAN Опубликовано 11 сентября, 2018 Опубликовано 11 сентября, 2018 Появился ещё вопрос. Можно ли передвинуть маркер у кузницы? А то у меня персонаж держится за воздух и стоит в углях при анимации.
CISCO.:i:..:i:. Опубликовано 11 сентября, 2018 Опубликовано 11 сентября, 2018 (изменено) 11.09.2018 21:13:27, SETABAN сказал(-а): Появился ещё вопрос. Можно ли передвинуть маркер у кузницы? А то у меня персонаж держится за воздух и стоит в углях при анимации. как я понял у тебя в игре кузница стоит иначе чем в СК - тогда сделай то что я описал ниже. Скорее всего тут проблема сохранёнки - попробуй выйти с локации и сохраниться - после выйди из игры - затем отключи свой мод в лаунчере и загрузи то самое сохранение - после загрузки снова сохранись и выйди из игры - теперь подключи свой мод в лаунчере - и всё должно заработать как нужно. Изменено 11 сентября, 2018 пользователем CISCO.:i:..:i:.
SETABAN Опубликовано 11 сентября, 2018 Опубликовано 11 сентября, 2018 11.09.2018 21:29:23, CISCO.:i:..:i:. сказал(-а): как я понял у тебя в игре кузница стоит иначе чем в СК - тогда сделай то что я описал ниже. Скорее всего тут проблема сохранёнки - попробуй выйти с локации и сохраниться - после выйди из игры - затем отключи свой мод в лаунчере и загрузи то самое сохранение - после загрузки снова сохранись и выйди из игры - теперь подключи свой мод в лаунчере - и всё должно заработать как нужно. К сожалению не помогло. А разве в СК нельзя добавить маркер отдельно? Прописав нужную анимацию к примеру и поставить куда следует, а то слишком привязан к игровым моделям в таком случае.
SETABAN Опубликовано 11 сентября, 2018 Опубликовано 11 сентября, 2018 11.09.2018 21:29:23, CISCO.:i:..:i:. сказал(-а): как я понял у тебя в игре кузница стоит иначе чем в СК - тогда сделай то что я описал ниже. Скорее всего тут проблема сохранёнки - попробуй выйти с локации и сохраниться - после выйди из игры - затем отключи свой мод в лаунчере и загрузи то самое сохранение - после загрузки снова сохранись и выйди из игры - теперь подключи свой мод в лаунчере - и всё должно заработать как нужно. А анимация такая видимо от того, что кузница у меня меньше оригинальной, но мне так надо.
CISCO.:i:..:i:. Опубликовано 11 сентября, 2018 Опубликовано 11 сентября, 2018 (изменено) 11.09.2018 21:48:14, SETABAN сказал(-а): А анимация такая видимо от того, что кузница у меня меньше оригинальной, но мне так надо. а ну тогда конечно будет всё через одно место. что за кузница у тебя? есть три варианта - у тебя какая именно? - и ещё вопрос - тебе важна сама анимация или же просто результат? можешь просто сделать статику из кузницы - и прикрутить поверх места наковальни новую наковальню CraftingBlacksmithAnvil - и тогда ГГ будет просто крафтить предметы - стуча молотком по наковальне. Изменено 11 сентября, 2018 пользователем CISCO.:i:..:i:.
CISCO.:i:..:i:. Опубликовано 11 сентября, 2018 Опубликовано 11 сентября, 2018 да и вообще можно сделать кузницу самому из статики - главное поставить наковальню. Лично у меня кузница сделана из WRIntFloorDirtStrFireAlcove01 (за огонь в кузнице отвечают три FXfireWithEmbersLight увеличенных до размеров 1.8) и вплотную к ней стоит пьедестал DweClutterPedestal02 а в него вмонтирована наковальня CraftingBlacksmithAnvil - мне ванильные кузницы не очень нравятся - а возится в 3D редакторе мне лень - да и не умею я - использую то что есть.
SETABAN Опубликовано 12 сентября, 2018 Опубликовано 12 сентября, 2018 (изменено) 11.09.2018 23:47:56, CISCO.:i:..:i:. сказал(-а): да и вообще можно сделать кузницу самому из статики - главное поставить наковальню. Лично у меня кузница сделана из WRIntFloorDirtStrFireAlcove01 (за огонь в кузнице отвечают три FXfireWithEmbersLight увеличенных до размеров 1.8) и вплотную к ней стоит пьедестал DweClutterPedestal02 а в него вмонтирована наковальня CraftingBlacksmithAnvil - мне ванильные кузницы не очень нравятся - а возится в 3D редакторе мне лень - да и не умею я - использую то что есть. Пока ты отвечал я сделал точно так же, ибо много мороки с подгоном стандартных под желаемое. А можно у "костра" огонь выключить? Turn off fire не помогает. Изменено 12 сентября, 2018 пользователем SETABAN
mr Jyggalag Опубликовано 12 сентября, 2018 Опубликовано 12 сентября, 2018 12.09.2018 01:50:27, SETABAN сказал(-а):А можно у "костра" огонь выключить? Turn off fire не помогает.Имеется в виду графическое отображение эффекта огня? В таком случае можно забить в поисковике объектов "Ember" и затем заметить старый костёр новым (ручками или через ctr+f)
Azazellz Опубликовано 12 сентября, 2018 Опубликовано 12 сентября, 2018 Наковальню, кстати, "монтировать" куда-то там необязательно. Взять ту же этеревию кузницу - там вообще просто маркер, который при использовании открывает меню крафта.
CISCO.:i:..:i:. Опубликовано 12 сентября, 2018 Опубликовано 12 сентября, 2018 12.09.2018 01:50:27, SETABAN сказал(-а):А можно у "костра" огонь выключить? Turn off fire не помогает. Можно конечно для этого тебе понадобятся FXfireWithEmbersLight (Disable) и FXfireWithEmbersOut (Enable) - XMarker (Disable) и скрипт на активатор Scriptname _0000_HMD_Enable_VS_Disable_Script extends ObjectReference bool property isInPullPosition = True Auto ObjectReference Property enable_VS_disable Auto EVENT onActivate (objectReference triggerRef) IF (isInPullPosition) enable_VS_disable.enable() isInPullPosition = False else enable_VS_disable.disable() isInPullPosition = True endIF endEVENT В настройках скрипта enable_VS_disable укажи XMarker - а к нему уже привяжи через EnableParent огонь FXfireWithEmbersLight
CISCO.:i:..:i:. Опубликовано 12 сентября, 2018 Опубликовано 12 сентября, 2018 (изменено) В настройках скрипта enable_VS_disable укажи XMarker - а к нему уже привяжи через EnableParent огонь FXfireWithEmbersLight Таким вот образом при активации триггера-активатора у тебя будет появляться огонь(FXfireWithEmbersLight) поверх тлеющих углей(FXfireWithEmbersOut) - если хочешь наоборот что бы огонь изначально горел просто поменяй местами в скрипте очередность enable/disable и на самих объектах значение enable/disable. Изменено 12 сентября, 2018 пользователем CISCO.:i:..:i:.
CISCO.:i:..:i:. Опубликовано 12 сентября, 2018 Опубликовано 12 сентября, 2018 (изменено) У меня вопрос - в интерьерах да и в ячейках экстерьеров существует как я понял условное ограничение в 157 Mb - но у меня уже превышение в 1,5 раза (и это ещё без навмешей) - кроме подтормаживания картинки чем ещё мне это грозит? Изменено 12 сентября, 2018 пользователем CISCO.:i:..:i:.
Azazellz Опубликовано 12 сентября, 2018 Опубликовано 12 сентября, 2018 (изменено) 12.09.2018 14:41:28, CISCO.:i:..:i:. сказал(-а):У меня вопрос - в интерьерах да и в ячейках экстерьеров существует как я понял условное ограничение в 157 Mb - но у меня уже превышение в 1,5 раза (и это ещё без навмешей) - кроме подтормаживания картинки чем ещё мне это грозит?Падением ФПС.Вплоть до околонулевых значений. И я сейчас серьезен.В "Последнем драконе", в Сентинеле счетчик ФПС иногда (в зависимости от точки и угла зрения) у меня показывал цифру 3 (ТРИ). Без ЕНБ и графических наворотов, просто скайрим "как есть" (это при том, что в обычных локациях у меня стабильные 60, даже под ЕНБ).Авторы чрезвычайно перегрузили локацию деталями, в результате если в настройках дальность отрисовки была выше средней, ФПС пробивал дно. Слишком много объектов. Оптимизация мода - очень важный момент, не стоит его игнорировать.А, ну и возможные вылеты еще. Как от переполнения памяти, так и по чисто внутренним причинам. Изменено 12 сентября, 2018 пользователем Azazellz
stanislavd Опубликовано 12 сентября, 2018 Опубликовано 12 сентября, 2018 я нуб... пока не получается написать дочерний скрипт... НО! вставив в скрипт default2StateActivator 5 строчек я добился нужного эффекта!!! одну ObjectReference Property MyThing1 Auto и по две: MyThing1.Disable() MyThing1.Enable() сам скрипт: Scriptname default2StateActivator extends ObjectReference Conditional {for any activator with standard open/close states} import debug import utility bool property isOpen = false auto conditional {set to true to start open} bool property doOnce = false auto {set to true to open/close on first activation only} bool property isAnimating = false auto Hidden {is the activator currently animating from one state to another?} string property openAnim = "open" auto {animation to play when opening} string property closeAnim = "close" auto {animation to play when closing} string property openEvent = "opening" auto {open event name - waits for this event before considering itself "open"} string property closeEvent = "closing" auto {close event name - waits for this event before considering itself "closed"} string property startOpenAnim = "opened" auto {OnLoad calls this if the object starts in the open state} bool property bAllowInterrupt = FALSE auto {Allow interrupts while animation? Default: FALSE} bool property zInvertCollision = FALSE auto {Typically this will be False (DEFAULT). The References LinkRef'd Chained with the TwoStateCollisionKeyword will typically be Enabled onOpen, and Disabled on Close. If you want that functionality inverted set this to TRUE} ObjectReference Property MyThing1 Auto int property myState = 1 auto hidden keyword property TwoStateCollisionKeyword auto ; true when static or animating ; 0 == open or opening ; 1 == closed or closing EVENT OnLoad() SetDefaultState() endEVENT Event OnReset() SetDefaultState() EndEvent ;This has to be handled as a function, since OnLoad and OnReset can fire in either order, and we can't handle competing animation calls. Function SetDefaultState() if (isOpen) playAnimationandWait(startOpenAnim, openEvent) if (zInvertCollision == FALSE) trace(self + " Disabling Collision") DisableLinkChain(TwoStateCollisionKeyword) else trace(self + " Enabling Collision") EnableLinkChain(TwoStateCollisionKeyword) endif myState = 0 Else playAnimationandWait(closeAnim, closeEvent) if (zInvertCollision == FALSE) trace(self + " Enabling Collision") EnableLinkChain(TwoStateCollisionKeyword) else trace(self + " Disabling Collision") DisableLinkChain(TwoStateCollisionKeyword) endif myState = 1 EndIf EndFunction auto STATE waiting ; waiting to be activated EVENT onActivate (objectReference triggerRef) ; Debug.Trace("d2SA RESETS: " + Self + " " + isOpen) ; switch open state when activated SetOpen(!isOpen) if (doOnce) gotostate("done") endif endEVENT endState STATE busy ; This is the state when I'm busy animating EVENT onActivate (objectReference triggerRef) if bAllowInterrupt == TRUE ; send the activation\ SetOpen(!isOpen) else ; block activation trace (self + " Busy") endif endEVENT endSTATE STATE done EVENT onActivate (objectReference triggerRef) ;Do nothing endEVENT endSTATE function SetOpen(bool abOpen = true) ; if busy, wait to finish while getState() == "busy" wait(1) endWhile ; open/close if necessary isAnimating = true if abOpen && !isOpen gotoState ("busy") trace(self + " Opening") if bAllowInterrupt == TRUE || !Is3DLoaded() playAnimation(openAnim) ; Animate Open else playAnimationandWait(openAnim, openEvent) ; Animate Open endif trace(self + " Opened") if (zInvertCollision == FALSE) trace(self + " Disabling Collision") DisableLinkChain(TwoStateCollisionKeyword) MyThing1.Enable() else trace(self + " Enabling Collision") EnableLinkChain(TwoStateCollisionKeyword) MyThing1.Disable() endif isOpen = true gotoState("waiting") elseif !abOpen && isOpen gotoState ("busy") trace(self + " Closing") if bAllowInterrupt == TRUE || !Is3DLoaded() playAnimation(closeAnim) else playAnimationandWait(closeAnim, closeEvent) ; Animate Closed endif trace(self + " Closed") if (zInvertCollision == FALSE) trace(self + " Enabling Collision") EnableLinkChain(TwoStateCollisionKeyword) MyThing1.Disable() else trace(self + " Disabling Collision") DisableLinkChain(TwoStateCollisionKeyword) MyThing1.Enable() endif isOpen = false gotoState("waiting") endif isAnimating = false endFunction мне нужен просто дочерний скрипт, чтобы не влазить каждый раз в ванильные скрипты! ну не научился я ещё этому...до конца тему не понимаю....
CISCO.:i:..:i:. Опубликовано 12 сентября, 2018 Опубликовано 12 сентября, 2018 Во первых - тебе сюда с этим вопросом - http://tesall.ru/topic/17490-voprosy-po-skriptam/page-21 Во вторых - что значит дочерний скрипт?
stanislavd Опубликовано 13 сентября, 2018 Опубликовано 13 сентября, 2018 в папирусе 2 вида скриптов: материнский и дочерний (образно говоря) материнский - основной скрипт имеет переменные дочекрний - скрипт расширения
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти