Модератор форума: КсюXa, ApeX  
Форум » Fallout: New Vegas » Мастерская » Скрипты (Вопросы и ответы)

Скрипты
a3apbi4  Offline  Сообщение №1 написано: 7 декабря 2010, 18:01



11
Скрипты - неотъемлемая часть GECK. При написании возникает очень много казусов. Данная тема должна помочь не наступать на "грабли" новичкам и делиться опытом с другими более продвинутых мододелов.




Vdova  Offline  Сообщение №781 написано: 18 августа 2012, 13:22



13
lol
ой, да забыл добавить это мое желание, а не то что я сделал
как реализовать ?

rizys-mod  Offline  Сообщение №782 написано: 18 августа 2012, 13:37


Команда "Rizys-Mod"


250
Vdova, не если розговор 2-х нпц, тогда нужно изучить аи пакеты. Ну и в результ скрипте аи пакета добавить objectRef.enbale

Команда "Rizys-mod" - разработка плагинов на Fallout.
ITU  Offline  Сообщение №783 написано: 18 августа 2012, 16:10



995
rizys-mod, полная задумка мой мод, выложен на сайте.
в данном случаи это "восковые фигуры" уже одетые, выставлены в музеи.
скрипт активации добавлен для теста ихнего поведения при возврате назад, на свое место, на свой маркер, moveto.
такое же функцию при посещении помещения ГГ, иначе живые существа имеют свойства передвигаться.
такие же, с такой же фигней манекены.
и повторяю одинаковые, одни визуально сдвигаются вверх, другое нормально на месте стоят, в чем разница не пойму совсем.

сначало я подумал что они рядом стоят, так нет, ничего не меняет
думал что зависит просто от координат по высоте, тоже не влияет

причем я пробовал на другом компе, такого не наблюдал, мне последовали сообщения о багах, я не мог понять, пока с рабочего ноута не попробовал

rizys-mod  Offline  Сообщение №784 написано: 18 августа 2012, 16:29


Команда "Rizys-Mod"


250
ITU,
Цитата ITU

в данном случаи это "восковые фигуры" уже одетые, выставлены в музеи.
скрипт активации добавлен для теста ихнего поведения при возврате назад, на свое место, на свой маркер, moveto.
такое же функцию при посещении помещения ГГ, иначе живые существа имеют свойства передвигаться.


Не могу я понять из этих слов, что должно происходить. Каком возврате назад, если они восковые фигуры? Они теперь ещё и ходят...

Команда "Rizys-mod" - разработка плагинов на Fallout.
ITU  Offline  Сообщение №785 написано: 18 августа 2012, 17:05



995
Цитата rizys-mod

Они теперь ещё и ходят...


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

rizys-mod  Offline  Сообщение №786 написано: 18 августа 2012, 19:32


Команда "Rizys-Mod"


250
ITU, а зачем тогда Moveto? Он не нужен, ты же и так ставишь на свои координаты.

Команда "Rizys-mod" - разработка плагинов на Fallout.
bruner  Offline  Сообщение №787 написано: 21 августа 2012, 11:02



67
Вопросик: Есть квест (просто диалог, без привязки к конкретному неписю, для всей группы)
Работает нормально, но иногда забивает диалоги по прохождению основного сюжета.
Вопрос в том, как можно выключить этот квест оперативно и потом, при необходимости включить?
Пробовал делать условие по присутствию определенного предмета в инвентаре ГГ, коряво получилось.

(К примеру, оптимальный вариант - положил в инвентарь плюшевого мишку - работает квест, выбросил из инвентаря, не работает)

все суета, сует...
Galko  Offline  Сообщение №788 написано: 21 августа 2012, 11:12 | Отредактировано: Galko - 21 августа 2012, 11:13


GALAктическая мартышка


Цитата bruner

но иногда забивает диалоги по прохождению основного сюжета


Это как? Диалоги основного сюжета уходят вниз, на более низкие позиции? Или просто не появляются? Если просто располагаются ниже - у своего квеста поставь более низкий приоритет. И в своих диалогах не отмечай у топиков Top Level (быть всегда наверху)
Если же диалоги основного квеста полностью пропадают - извини тут ты "накосячил" И надо конкретно разбираться.

Ваше счастье, что я не ваше счастье
JupiterJour  Offline  Сообщение №789 написано: 21 августа 2012, 11:26


_


Приветствия из квестов с высоким приоритетом забивают приветствия с низким. Если после приветствия диалог построен через поле Choices и никогда не возвращается в "корень", то возможна ситуация, когда у других квестов не будет шанса вставить словечко. Тогда надо снижать приоритет и настраивать условия.
Если же по каким-то причинам надо обязательно заниматься гемором в виде запусков-остановок квеста, то запуск - StartQuest, а остановка - StopQuest.

bruner  Offline  Сообщение №790 написано: 21 августа 2012, 14:28



67
Да, хотелось бы именно это - Запуск, остановка, тока вот как это сделать в игре?

все суета, сует...
rizys-mod  Offline  Сообщение №791 написано: 21 августа 2012, 14:32


Команда "Rizys-Mod"


250
Цитата Joopeeter

а остановка - StopQuest


Команда "Rizys-mod" - разработка плагинов на Fallout.
ITU  Offline  Сообщение №792 написано: 21 августа 2012, 16:24



995
Цитата rizys-mod

а зачем тогда Moveto?


При загрузки сохранения у неписей есть такой свойство перемещаться... даже если они выставлены в одном место с отключенным АИ...
хотя чет у меня зародилась идея, сделать пакет , а отключение пакета и АИ по расстоянию от маркера...

bruner  Offline  Сообщение №793 написано: 21 августа 2012, 19:27



67
Да нет, с командами то понятно, а вот куда их вставлять то?

все суета, сует...
Frostik  Offline  Сообщение №794 написано: 21 августа 2012, 20:10



53
Ищу скрипт с респавном мобов с применением таймера 2-3 мин после смерти. Пишут, что надо юзать x-marker, чтобы респ был по маркеру, а не на поле боя.

PS Сам пока не могу сделать такой скрипт ) знаний маловато.

rizys-mod  Offline  Сообщение №795 написано: 22 августа 2012, 12:58 | Отредактировано: rizys-mod - 21 августа 2012, 20:42


Команда "Rizys-Mod"


250
Цитата bruner

Да нет, с командами то понятно, а вот куда их вставлять то?


проверяем мишку (player.additemcount mishka >= 1). Можно делать квестовым скриптом, но наверно скрипт не будет работать если его остановить, можно ставить на мишку скрипт :D
Frostik, да можно делать как хочешь, например так:
Code
short doOnce
float Timer

Begin GameMode
if getdead == 1 && doOnce == 0
set doOnce to 1
set Timer to 120
endif

if (Timer > 0) && (doOnce == 1)
set Timer to (Timer - GetSecondsPassed)
elseif (doOnce == 1)
markerRef.placeatme mob 1, 250, 1
set doOnce to 0
endif
End

Добавлено (22.08.2012, 16:58)
---------------------------------------------
Такой вопрос, почему не работает строчка:

Code
MyChairRef.Activate Player 1

Команда "Rizys-mod" - разработка плагинов на Fallout.
Artem13  Offline  Сообщение №796 написано: 22 августа 2012, 14:07


Mercenaries. Со смертью на ты.


Цитата rizys-mod

Такой вопрос, почему не работает строчка:


А что она должна делать? Ты принудительно запрещаешь дефолтную активацию. А есть ли на контейнере скрипт с секцией OnActivate, в которой своё действие описываешь?

<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a>
Да, мы бандиты и бродяги, как злословит молва,
Мы попадаем в передряги, помня эти слова.
Смотри вперед и не сдавайся ты на милость судьбе!
Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
rizys-mod  Offline  Сообщение №797 написано: 22 августа 2012, 14:42


Команда "Rizys-Mod"


250
Artem13, это фурнитура, перемещаю к гг и активирую с помощью скрипта.

Команда "Rizys-mod" - разработка плагинов на Fallout.
Artem13  Offline  Сообщение №798 написано: 22 августа 2012, 15:46 | Отредактировано: Artem13 - 22 августа 2012, 15:48


Mercenaries. Со смертью на ты.


А фурнитуру так нельзя активировать, няз. Нужно либо создавать активатор с той же моделью, либо использовать возможности Перка/Квеста для активации (гдето там есть возможность добавления кнопки для взаимодействия), но такая активация исключительно интерактивна, т.е. скриптом не инициализируется.
ЗЫ Сейчас только дошло (не так прочитал ИД) - ты на стул пытаешься игрока усадить, чтоли?

<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a>
Да, мы бандиты и бродяги, как злословит молва,
Мы попадаем в передряги, помня эти слова.
Смотри вперед и не сдавайся ты на милость судьбе!
Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
rizys-mod  Offline  Сообщение №799 написано: 22 августа 2012, 15:52


Команда "Rizys-Mod"


250
Цитата Artem13

ЗЫ Сейчас только дошло (не так прочитал ИД) - ты на стул пытаешься игрока усадить, чтоли?


Но нужно именно переместить стул , а только потом сесть.

Команда "Rizys-mod" - разработка плагинов на Fallout.
Artem13  Offline  Сообщение №800 написано: 22 августа 2012, 16:00 | Отредактировано: Artem13 - 22 августа 2012, 16:02


Mercenaries. Со смертью на ты.


Цитата rizys-mod

Уже делали.


Эээ, а тогда в чём трабла? Ну попробуй единицу выкинуть нафик или ноль врисовать вместо.

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

<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a>
Да, мы бандиты и бродяги, как злословит молва,
Мы попадаем в передряги, помня эти слова.
Смотри вперед и не сдавайся ты на милость судьбе!
Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
rizys-mod  Offline  Сообщение №801 написано: 22 августа 2012, 16:10 | Отредактировано: rizys-mod - 22 августа 2012, 16:09


Команда "Rizys-Mod"


250
Вот как я примерно пробовал сделать задумку:

; на квесте


Ну и часть от скрипта активатора:

Добавлено (22.08.2012, 20:10)
---------------------------------------------

Цитата Artem13

Эээ, а тогда в чём трабла?


Трабла в том, что я делаю так как в моде, но видимо что-то упускаю. Не могу понять что именно, и не помню этот ли скрипт я в игре использовал или нет. А мод в котором так делали называется ХоверЧайд.

Команда "Rizys-mod" - разработка плагинов на Fallout.
Artem13  Offline  Сообщение №802 написано: 22 августа 2012, 16:23 | Отредактировано: Artem13 - 22 августа 2012, 16:24


Mercenaries. Со смертью на ты.


У тебя тут
Цитата rizys-mod

 if Timer2 > 0
     set Timer2 to Timer2 - SecondsPassed
     SetPos X MyX      
SetPos Y MyY      
SetPos Z MyZ
endif     
elseif MountAction > 0


endif или elseif лишний. Или какой то if пропущен. Скрипт вообще компилиться не должен.

<a class="link" href="http://nick-name.ru/sertificates/278209/" rel="nofollow" target="_blank"> border="0" alt=""/</a>
Да, мы бандиты и бродяги, как злословит молва,
Мы попадаем в передряги, помня эти слова.
Смотри вперед и не сдавайся ты на милость судьбе!
Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
rizys-mod  Offline  Сообщение №803 написано: 22 августа 2012, 16:29


Команда "Rizys-Mod"


250
Artem13, я же написал скрипт не полный, полный смысла нет писать (остальное работает), вот именно elseif и стоял в ховерчайде, я смотрел где там заканчивали, у меня конец такой же, только вот там работает а у меня нет. Может гг должен точно быть в маркере?

Команда "Rizys-mod" - разработка плагинов на Fallout.
Frostik  Offline  Сообщение №804 написано: 23 августа 2012, 21:42 | Отредактировано: Frostik - 23 августа 2012, 21:44



53
В чем может быть проблема? (


rizys-mod  Offline  Сообщение №805 написано: 23 августа 2012, 22:30


Команда "Rizys-Mod"


250
Frostik, ты наверно не понял, нужно поставить XMarkerHeading и дать ему Ref ссылку, в скрипте я написал для примера markerRef.

Команда "Rizys-mod" - разработка плагинов на Fallout.
JupiterJour  Offline  Сообщение №806 написано: 23 августа 2012, 22:38


_


Цитата Frostik

В чем может быть проблема?


Текущая - в том, что markerRef либо не создан, либо не назначен постоянной ссылкой (Persistent Reference).
Грядущая - в том, что каждый дохлый заскриптованный моб не возрождается на маркере каждые две минуты, а рождается на маркере каждые две минуты. Не многовато ли выйдет? :D

rizys-mod  Offline  Сообщение №807 написано: 23 августа 2012, 22:42 | Отредактировано: rizys-mod - 23 августа 2012, 22:48


Команда "Rizys-Mod"


250
Цитата Joopeeter

а рождается на маркере каждые две минуты. Не многовато ли выйдет?


Мой косяк.

Frostik, за место Set DoOnce to 0 поставь Set DoOnce to 2 (в 16 строчке).

Команда "Rizys-mod" - разработка плагинов на Fallout.
Frostik  Offline  Сообщение №808 написано: 23 августа 2012, 22:49 | Отредактировано: Frostik - 24 августа 2012, 09:20



53
Спасибо, буду пробовать.

Слепил _очень_ укрепленный форпост НКР, на который рейдеры постоянно нападают. (По сюжету игры так и должно быть. :) )
Снайперы на вышках, дзоты итд... Огневая мощь достаточная для 40-50 вражин, атакующих одновременно, даже если будет активный респ.



Не сохраняется у меня скрипт. Маркер XMarkerHeading создал, связал его с мобом (Linked ref) и наоборот. ))
Галочка Persistent Reference включена по умолчанию.

KAIN48  Offline  Сообщение №809 написано: 24 августа 2012, 12:19


Шаманистый шаман


Frostik, Привет!
XMarkerHeading это ID имя маркера, ты в скрипте даешь команду отправить на маркер вояк, а на какой из 2666 маркеров в игре.
Возможно в этом ошибка.
Попробуй присвоить маркеру REF имя, например aaaAttackMarkerREF

aaaAttackMarkerREF.PlaceAtMe вояки

Пока.

Мы вышли из дома, когда во всех... Поздно вышли!
Frostik  Offline  Сообщение №810 написано: 24 августа 2012, 23:25



53
Всем спасибо, получилось! С количеством и временем респа конечно же переборщил, но все можно оптимизировать. И еще не понравилось возникновение рейдеров на пустом месте ))) придется прятать маркеры за домами. :)

Форум » Fallout: New Vegas » Мастерская » Скрипты (Вопросы и ответы)
Поиск:





Ответ на жалобу смотрите в разделе жалоб