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

mantik903

Пользователь
  • Постов

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

  • Посещение

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

  1. Проблема в том что я все галочки расставлял по гайдам. Скрипты, как и надо, через миск ставил. И ничего, бсашник не работает. Зато просто папка - вполне.
  2. В архиве только есп, я не делал бса. Но я так понимаю, что именно этим мне и надо заняться?   upd: да, очевидно именно это мне и надо сделать. Но как узнать, какие именно файлы надо копировать в архив? Только скрипты, меши и текстуры? И как из скриптов выцепить нужные, их ведь дофига? Плюс скрипты все равно не работают, хотя бса сделан. Как эта херня вообще должна быть реализована...   Мораль - если скопировать папки со скриптами и звуком все норм. Но почему бса не работает, если попытаться все эти же папки в него собрать?
  3. Новая, крайне неожиданная проблема. Дал мод другому человеку, а у него после разговора (там форсгрит) не активируется квест, хотя должен. В чем тут-то проблема? У меня все работает как часы, а у него будто скрипт на установку стадии в одной из реплик сломался. Проверяли через команду - у квеста нулевая стадия. Единственная разница - у него лицуха, у меня пиратка. Версии одинаковые, набор модов тоже, там только стандартные. Скидывал я еспшник и папки с компиляцией тектсур лиц/тел. Я дропнул не все?
  4. Теперь новая проблема. Тот самый скрипт на зачет целей по текущей стаадии: int MyQuestStage1 = MyQuest.GetStage() if MyQuest.GetStage() != 17 && MyQuest.GetStage() != 26 && MyQuest.GetStage() != 37 MyQuest.SetObjectiveCompleted(MyQuestStage1) elseif MyQuest.GetStage() == 17 MyQuest.SetObjectiveCompleted(15) elseif MyQuest.GetStage() == 26 MyQuest.SetObjectiveCompleted(25) elseif MyQuest.GetStage() == 37 MyQuest.SetObjectiveCompleted(45) endif Но он не выполняет стадии. В чем причина? То есть он компилируется, и в игре работает (проверено через меседжбокс), но саму свою цель выполнения задач не исполняет, они остаются активными.
  5. И снова вопрос. Если мне нужно чтобы скрипт на контейнере сработал только один раз, хотя сам контейнер можно открывать на разных стадиях (скрипт активирует 10 разных стадий в зависимости от текущей), как его заморозить после первой активации?
  6. Вот, именно на это я и надеялся. Спасибо большое, пойду тестить)
  7. Ты не понял. Смотри, предмет можно подобрать на любой стадии от 20 до 90. При подъеме автоматом ставится 91. Но при этом та задача на которой игрок был до этого остается незавершенной. Смысл квеста вообще найти этот предмет. Но из-за того что я не знаю, на какой стадии игрок его поднимет, мне либо надо писать objectivecomplete на каждую из этих задач, либо сделать скрипт, который сам автоматом вычислит текущую задачу и закроет именно ее, что мне и надо. То есть как я понимаю, надо через getstage получить нынешнюю стадию, но как заставить скрипт запомнить это значение и именно его подставить в objectivecomplete (стадии почти всегда равноценны задачам)? Ту страницу кстати впервые вижу, спасибо большое.
  8. Насчет анимации пока ничего не нашел, а с копией пришлось устраивать танцы с бубном в стиле "оставить алиас на месте, активировав его в нужный момент, а до этого вручную добавлять/удалять конкретный предмет в инвентари нпсов". Но теперь новый вопрос. Если у меня есть стадия квеста, которую можно получить в любой момент, подобрав определенный предмет, как должен выглядеть скрипт, который выяснит текущую стадию и закроет именно ее? Спамить десять строк objectivecomplete не хочется, но кроме того, что в скрипте должна быть функция getstage больше ничего в голову не приходит.
  9. А вот и новые вопросы. Как заставить нпса в сцене сесть на стул и запустить анимацию письма? Я пробовал сделать пакет "идти и использовать идл", но нпс просто подходит к стулу (идет он к хмаркеру, стул в упор стоит, но в пакете назначен как маркер, который надо использовать), после чего разворачивается и уходит. А еще после сцены у него активируется агрессивное поведение с "тебе тут не рады", бегом за игроком и так далее. В чем проблема? И еще один небольшой вопрос. Если по сцене нпс выкидывает записку, как заставить ее алиас оказаться в мире? Из инвентаря я его допустим удалю через RemoveItem(Alias.GetReference()). Но что надо сделать, чтобы он оказался на земле? DropItem, к слову, почему-то не сработал, хотя скрипт успешно скомпилировался. А еще почему-то алиас другой записки, которая должна быть в инвентаре нпса, несмотря на стоящие галки initially disabled и allow disabled, все равно включен сам по себе, без активации.
  10. Большое спасибо, все сработало, по всем пунктам. Правда чем дальше я закапываюсь в квест, тем больше бредовых мыслей у меня возникает. Думаю, я тут еще пару раз отмечусь со странными идеями)
  11. Насчет скрипта я понял, спасибо.   Насчет маркера - алиас надо делать на референс или локацию? Потому что ни на маркер, ни на кусок пола оно не срабатывает, хотя когда поставил другой алиас - все работает как надо.   К слову об алиасах. При попытке поместить алиас предмета в контейнер в игре ничего не появляется, хотя до этого работало. С чем это может быть связано?   И еще один вопрос. Можно ли как-то указать условием диалога наличие в инвентаре игрока предмета? Через getincontainer с таргетом игрока и назначением через алиас не сработало. Я ошибся в деталях или это невозможно?  
  12. И еще вопрос. Есть вот такой скрипт, он работает:   Event OnContainerChanged(ObjectReference newContainer, ObjectReference oldContainer) if (aaaHappyTogether.GetStageDone(20)) endif if (newContainer == Game.GetPlayer())                 aaaHappyTogether.SetObjectivedisplayed(40)    aaaHappyTogether.SetStage(40) endif EndEvent   Но если заменить GetStageDone на просто GetStage или IsRunning чтобы ввести зависимость от активной на данный момент стадии, мне выбивает ошибку "too many arguments passed to function". В чем проблема?
  13. Господа, подскажите. Если я хочу в квесте отправить игрока обыскивать комнату, как мне сделать меткой цели саму комнату? Пытался ставить xmarker и через алиас назначать его целью - в игре ничего не отображается.
  14. Господа, такой вопрос. В самой игре совершенно не хочет отображаться описание стадии квеста (то, которое в Log Entry). Просто пустое пространство в дневнике, хотя текст есть. И когда я делал другой квест, тоже на русском, все показывало. Может там какое-то ограничение на максимальное число символов или еще что?
  15. Через актера не сработало, а вот через объект - вполне (умом папирус не понять). Спасибо большое)
  16. Попробовал по аналогии, но все равно не хочет. Для игрока у меня прописано  ObjectReference Property aaaHTFT2Player Auto Game.GetPlayer().MoveTo(aaaHTFT2Player)   Для нпс ObjectReference Property aaaHTFT2Groom Auto Actor aaaHappyTogetherGroom aaaHappyTogetherGroom.MoveTo(aaaHTFT2Groom)   И нпс телепортироваться все равно упорно отказывается.
  17. Если делать полноценный скрипт, то опять же надо ивент. Я тоже об этом думал, но не смог ничего рабочего написать   Опять же, функция без ивента работать не хочет. Впихнуть строку проблемы нет, и проперти задать тоже, но нужен блин ивент.   UPD: чуть-чуть покопавшись смог-таки изменить фрагмент, чтобы телепорт сработал. Но вскрылась другая проблема - на нпс висит скрипт на СellDetach(Attach, Detached/AttachedFrom), то есть по задумке он должен отводить игрока в другое место. И при телепорте игрока нпс должен телепортироваться следом. Но почему-то остается на месте при любой вариации этого скрипта. Выглядит это так: ObjectReference Property aaaHTFTGroom  Auto  Event OnCellDetach (Actor aaaHappyTogetherGroom) aaaHappyTogetherGroom.MoveTo(aaaHTFTGroom) EndEvent Причем скрипт скомпилировался, все нормально. Но нпс все равно не портуется.   И еще небольшой вопрос. Как заставить forcegreet адекватно работать? Единственный вариант который нашел я - это сделать сцену, и в самого нпс вшить скрипт через OnCellAttach. Но я не уверен, что это самый корректный из возможных.
  18. Господа, нужна помощь. По задумке после окончания диалога игрока должно сразу телепортировать на маркер. Вопрос - как это сделать? Я не могу подобрать соответствующий ивент, потому что ничего не происходит, а если просто вписать в фрагмент папируса в окошке "end" Game.GetPlayer().MoveTo("имя маркера") КК ругается: variable "имя маркера" is undefined. Хелп плиз. У меня как новичка уже мозг плавится.
  19. mantik903

    Companion Margarett Lena

    После того как убил вдову и взял с нее листок не появляется новая строчка в диалоге, в чем прикол?
  20. Дракон из стены торчит, если что
  21. Люди, хелп. Играл сколько-то лет назад с модом, который в подвале одного из купленных домов (мне упорно кажется, что в скинграде, но не уверен) ставит фонтан в виде дракона и бассейн под ним. Но сколько ищу - не могу найти
×
×
  • Создать...