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

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



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




ApeX  Online  Сообщение №1621 написано: 20 марта 2018, 02:23



georgy11,  стрелочки кликабельны
22. Как сделать так, что бы после активации предмета (активатора - дверь, стул, ящик и тп.) выводилось сообщение с текстом?
 Создание квеста (из ссылки в Картотеке)

georgy11  Offline  Сообщение №1622 написано: 20 марта 2018, 14:35



31
Да,спасибо. Но все же это немного не то)) Из всего перечисленого мне ближе всего подходит последний тутор,так как мой простенький квест ограничевается лишь поиском записей. Ну в целом да,согласен,вдруг решу добавить еще что-то.

КсюXa  Offline  Сообщение №1623 написано: 21 марта 2018, 09:57


Гид по Мастерской


Цитата georgy11

читаем там найденную записку,после прочтения появляется название квеста "Невидимый враг", и добавляется задание:

То тогда делаешь так...
  
Что-то я увлеклась, целый туториал получилсо.  :)

Ой, всё...
ApeX  Online  Сообщение №1624 написано: 21 марта 2018, 10:13



Цитата КсюXa

Что-то я увлеклась, целый туториал получилсо. :)

 Закинь, сама знаешь куда :D . Там не помешает, раз нет такого конкретного.

КсюXa  Offline  Сообщение №1625 написано: 21 марта 2018, 10:20


Гид по Мастерской


georgy11, кстати - вот образец плагина. Можешь посмотреть-поковырять. Записка лежит в Гудспрингсе, на крыльце магазина Чета, предметы (правда всего пять, на двадцать у меня терпения не хватило) разбросаны неподалеку, на каждый указывает маркер компаса. Ну и в конце ждет на том же крылечке награда. ;)

Ой, всё...
georgy11  Offline  Сообщение №1626 написано: 21 марта 2018, 17:37



31
:D Жесть какая,спасибо огромное! Попробую обязательно все,квестер из меня никакой,разве что идей для их создания много. Но это будет первый шаг,с вашей помощью,на эту скользкую дорожку. Спасибо вам ребят,за то что учите нас нубов :D КсЮха giverose

JupiterJour  Offline  Сообщение №1627 написано: 21 марта 2018, 19:17


_


Можно ещё "Моё первое убежище" перечитать повнимательнее. Создание квеста там как раз на примере поиска записки.

КсюXa  Offline  Сообщение №1628 написано: 22 марта 2018, 03:25


Гид по Мастерской


У меня вот вопрос: в моде у одного довольно сильного модмейкера наткнулась на такой момент - в условиях топика стоит
GetStage XXXX >= 2 AND
GetStage XXXX < 3  AND

Вот интересно - зачем так сделано? Что можно воткнуть между 2-й и 3-й стадиями? Почему не поставить просто "Стадия равна двум"?  А ведь это сделано специально, практически во всех топиках мода так прописано.

Ой, всё...
Ipatow  Offline  Сообщение №1629 написано: 22 марта 2018, 04:51



Цитата КсюXa

GetStage XXXX >= 2 AND
GetStage XXXX < 3  AND

Вот интересно - зачем так сделано? Что можно воткнуть между 2-й и 3-й стадиями? Почему не поставить просто "Стадия равна двум"?

Формально "целое значение больше или равно двум и притом меньше трёх" в точности означает "целое значение равно двум", каково бы ни было происхождение этого целого значения. В то же время разработка движется инкрементально, и кроме релизных в последовательности бывают тестовые версии. Возможно, в какой-то момент там были не двойка и тройка, а двойка и семёрка. Да, в момент смены семёрки на тройку вроде бы идеально совсем выкинуть второе условие, а в первом сменить знак на равенство - но! Если автор предполагает двльнейшую разработку, которая будет ещё не раз нуждаться в отладке, а для отладки там должен быть всё-таки диапазон, а не точная цифра... Тогда лучше держать два условия, чтобы уменшить количество исправлений (и опечаток) при очередном переходе от релиза к бете и обратно. Это только один из вариантов, как и для чего могла образоваться такая конструкция... Конечно, могла быть и совершенно нелепая причина вроде того, что автор по религиозным соображениям не признаёт равенства! :D

КсюXa  Offline  Сообщение №1630 написано: 22 марта 2018, 06:15


Гид по Мастерской


Ipatow, похоже, что всё-таки первое... Мод явно не завершен, поскольку в нем есть много моментов, нуждающихся в доработке. Но автор давно его забросил :(  А жаль.
---------------------------------------------
Тогда еще вопрос из области телепатии.
Там же в моде есть два топика, принадлежащих разным персонажам. У обоих топиков в результ-скрипте (begin) прописан показ определенного месседжа плюс еще кое-какие действия. Мистика, но факт - у одного непися после произнесения топика месседж показывается, у другого - нет :( . Причем эти самые "еще кое-какие действия" из этого же результ-скрипта выполняются, т.е. - скрипт срабатывает!!! Загадка, над которой бьюсь уже четыре дня dash . Месседжи ничем друг от друга не отличаются, кроме текста.

Добавлено (22 Марта 2018, 09:15)
---------------------------------------------
Тэк-с... Пока печатала сообщение - меня осенила мысль. Я её подумала и проверила на практике. В общем - с месседжами разобралась :) 
Никогда не сталкивалась с этим ранее и ни за что бы не подумала, что если в результ-скрипте ОДНОГО квеста объявлена переменная, а в ДРУГОМ квесте в результ-скрипте есть переменная с таким же именем - то это считается одной, общей переменной. dash 
Поэтому у меня (и у автора оригинального мода) второй месседж и не показывался, что первый топик менял значение переменной.


Ой, всё...
Ipatow  Offline  Сообщение №1631 написано: 22 марта 2018, 07:34 | Отредактировано: Ipatow - 22 марта 2018, 07:36



Цитата КсюXa

Никогда не сталкивалась с этим ранее и ни за что бы не подумала, что если в результ-скрипте ОДНОГО квеста объявлена переменная, а в ДРУГОМ квесте в результ-скрипте есть переменная с таким же именем - то это считается одной, общей переменной.

Такое распространяется на все безымянные скрипты - из диалогов, из пакетов, из стадий квестов, из перков... Я не знаю, все ли они считаются частью одного и того же скрипта - вроде бы объектного на мобе, я помню пересечения с ним по именам переменных - но по меньшей мере многие. Даже если на объекте скрипта нет - всё это исправно дописывается к пустому скрипту. Как я понимаю, это фундаментальное свойство скриптового двигателя фолаутов - исполняются только именованные скрипты. В случае со скриптом реплики - когда реплика может произноситься разными персонажами - это должно порой вызывать волшебные происшествия, поскольку в объектных скриптах разных персонажей одинаково могут называться сильно разные по смыслу и даже типу переменные.

JupiterJour  Offline  Сообщение №1632 написано: 22 марта 2018, 08:14 | Отредактировано: Joopeeter - 22 марта 2018, 08:15


_


Об эти переменные в результах тут вообще регулярно бьются и спрашивают. Не так часто как про "голова не совпадает с телом" и "я удалил леса и горы, теперь у меня везде торчат ЛОДы", но всё же. Хотя в учебнике, казалось бы, чёрным по белому. Может, в Картотеку добавить:
- Можно ли объявлять переменные в результ-скриптах?
- И НЕ ДУМАЙ!

КсюXa  Offline  Сообщение №1633 написано: 22 марта 2018, 08:24 | Отредактировано: КсюXa - 22 марта 2018, 08:25


Гид по Мастерской


Цитата Joopeeter

Хотя в учебнике, казалось бы, чёрным по белому

А что за учебник? А то я как-то всё больше по разговорам на форуме учусь

Ой, всё...
JupiterJour  Offline  Сообщение №1634 написано: 22 марта 2018, 10:54


_


По скриптам Обливиона учебник, какой же ещё. На форуме тоже про переменные в результах было раза три или четыре.
Бывает, такие переменные в результах работают, но если кто не хочет себе геморрой, тому не надо так делать. Тем более нет таких случаев, когда переменную нельзя было бы объявить в специально предназначенных для этого местах.

Di_Shiper  Offline  Сообщение №1635 написано: 14 апреля 2018, 14:00


Технодиктатор


26
Приветствую. Написал скрипт. а как компилировать его - найти не могу, вижу только полную перекомпиляцию всех, что мне абсолютно не нужно.  Установлен geck 1.4 и power-up для него.

Unreal Engine, VR/AR developer, 3D-artist, modmaker.
ApeX  Online  Сообщение №1636 написано: 14 апреля 2018, 14:36



Компилировать специально и не надо. Для того, чтобы написать скрипт надо: нажать на карандаш на верхней панели, вписать , выбрать тип и нажать на значок дискетки. После этого скрипт можно применять на чем-то\ком-то.

Di_Shiper  Offline  Сообщение №1637 написано: 14 апреля 2018, 14:40


Технодиктатор


26
Цитата ApeX

После этого скрипт можно применять на чем-то\ком-то.

Значит в синтаксисе накосячил, раз не пашет)

Unreal Engine, VR/AR developer, 3D-artist, modmaker.
КсюXa  Offline  Сообщение №1638 написано: 14 апреля 2018, 15:02


Гид по Мастерской


Цитата Di_Shiper

Значит в синтаксисе накосячил,


А при сохранении скрипта редактор не выкидывал сообщение об ошибке? Типа: в строке ХХХ неверная функция Y? Хотя, если ГЕКК без глюкоисправителя - то сообщений не будет, разрабы "постарались", кастрировали и без того несчастный редактор.
Ну и как сказал бы Леонид Аркадьевич: скрипт - в студию!

Ой, всё...
Di_Shiper  Offline  Сообщение №1639 написано: 14 апреля 2018, 15:06


Технодиктатор


26
Цитата КсюXa

А при сохранении скрипта редактор не выкидывал сообщение об ошибке? Типа: в строке ХХХ неверная функция Y? Хотя, если ГЕКК без глюкоисправителя - то сообщений не будет, разрабы "постарались", кастрировали и без того несчастный редактор.

Ну вот как раз для нормального дебага поставил power-up. А ошибок вроде не выдавало. Вообще бы инфы по синтаксису бы по-больше где-то почитать...

Unreal Engine, VR/AR developer, 3D-artist, modmaker.
КсюXa  Offline  Сообщение №1640 написано: 14 апреля 2018, 15:13


Гид по Мастерской


Цитата Di_Shiper

А ошибок вроде не выдавало


Раз не выдавало - так может скрипт рабочий? Просто не запускается. Он на что повешен? Какой у него "игровой" блок?.
блок GameMode работает, когда идет игровой процесс
блок OnActivate - когда активируется заскриптованный объект
блок... Ну и так далее...
У тебя как?

Ой, всё...
Di_Shiper  Offline  Сообщение №1641 написано: 14 апреля 2018, 15:21


Технодиктатор


26
Цитата КсюXa

У тебя как?

Ну вот как раз по вашей же рекомендации делал:

б) создать базовый эффект, со скриптом, меняющим карму. Базовый эффект
назначить актор-эффекту. В перке в качестве точки входа выбрать кнопку
"Способность" и выбрать из списка этот актор-эффект.

Unreal Engine, VR/AR developer, 3D-artist, modmaker.
КсюXa  Offline  Сообщение №1642 написано: 14 апреля 2018, 16:29


Гид по Мастерской


Цитата Di_Shiper

базовый эффект, со скриптом


тогда нужен блок ScriptEffectStart\ScriptEffectFinish

Ой, всё...
youngyone01  Offline  Сообщение №1643 написано: 15 апреля 2018, 12:43



3
Если кто разбирается, подскажите:

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

Команды, начинающиеся с "player.", например добавить перк, и.т.д. работают, но мне также потребовалось изменить значения параметров, относящихся к "Game settings".

И к своему разочарованию я обнаружил, что GECK по непонятной мне причине не хочет компилировать скрипт с командой "setgs" :( , а как по другому внести изменения в параметры "Game settings" я не знаю  dash 

Если кто-нибудь компетентен в данном вопросе, то заранее благодарен за совет.

Ipatow  Offline  Сообщение №1644 написано: 15 апреля 2018, 13:01



Цитата youngyone01

GECK по непонятной мне причине не хочет компилировать скрипт с командой "setgs"

А GECK через экстендер запускается? Функция-то из расширенного набора.

youngyone01  Offline  Сообщение №1645 написано: 15 апреля 2018, 13:29 | Отредактировано: youngyone01 - 15 апреля 2018, 13:38



3
Цитата Ipatow

А GECK через экстендер запускается? Функция-то из расширенного набора.


Запускаю GECK с правами администратора через ярлык с припиской в конце " nvse_loader.exe" -editor " не знаю, достаточно этого, или нет.

Т.е., в принципе крманда "setgs" должна работать и в скрипте тоже, не только в консоли? На неё нет каких-то ограничений?

P.S.: заранее извиняюсь, если мои вопросы звучат глупо, я пока очень мало понимаю в создании скриптов.

Ipatow  Offline  Сообщение №1646 написано: 15 апреля 2018, 13:50



Цитата youngyone01

Запускаю GECK с правами администратора через ярлык с припиской в конце " nvse_loader.exe" -editor " не знаю, достаточно этого, или нет.Т.е., в принципе крманда "setgs" должна и в скрипте тоже, не только в консоли? На неё нет каких-то ограничений?

Во-первых, с запуском всё правильно.

Во-вторых, ты отрыл мне глаза на особенности вегасовского экстендера, см. комментарий в конце описания SetGameSetting. Нет ли странностей с использованием консольной функции из скрипта - в данном случае в виде con_SetGameSetting, сказать не могу, но некоторые подобным образом завёрнутые функции игру клинили (они работали, но после них всё оказывалось печёнками наружу). Насколько надёжнее в этом смысле экстендер-плагиновская функция Console - тоже не знаю, но по крайней мере эти варианты компилироваться будут, и их работоспособность можно будет протестировать.

На практике я работал только с FOSE и пользовался только SetNumericGameSetting, которая в скриптах сразу была уместна.

youngyone01  Offline  Сообщение №1647 написано: 9 мая 2018, 15:18 | Отредактировано: youngyone01 - 9 мая 2018, 15:27



3
Очень хорошее разъяснение! Большое Вам спасибо!  :)

valambar  Offline  Сообщение №1648 написано: 22 мая 2018, 07:28 | Отредактировано: valambar - 22 мая 2018, 07:29



513
Подскажите, как навесить специальную анимацию (например, игры на скрипке) не на НПС, а на ГГ,  допустим, при активации той же скрипки в инвентаре. Подозреваю, что там должны быть команды disableplayercontrols, потом playsound с указанием звука со скрипичной мелодией, и потом в конце мелодии enableplayercontrols. Но чувствую, что там еще какие-то тонкости есть, которых не знаю.

КсюXa  Offline  Сообщение №1649 написано: 22 мая 2018, 10:10


Гид по Мастерской


Цитата valambar

как навесить специальную анимацию (например, игры на скрипке) не на НПС, а на ГГ

Примерно так же, как навесить анимацию падения от взрыва гранаты при виде от 1-го лица. И дизейблить игрока обязательно, ага.

Ой, всё...
JupiterJour  Offline  Сообщение №1650 написано: 22 мая 2018, 11:53


_


Добавлю, что анимации, предназначенные для просмотра от третьего лица, от первого лица не работают. Я пробовал так запускать курение сигарет и дуковское питьё из горла. Не видно ни рук, ни предмета в руках, видно только некоторое покачивание камеры.

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





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