Модератор форума: КсюXa, ApeX  
Форум » Fallout: New Vegas » Мастерская » ВОПРОСЫ по моддингу (Спрашиваем и отвечаем на тему как сделать то или это...)

ВОПРОСЫ по моддингу
Defox  Offline  Сообщение №1 написано: 3 ноября 2010, 11:46 | Отредактировано: ApeX - 3 ноября 2018, 10:41


Project Fallout: Wild Wasteland


463
Прежде чем задавать вопрос - посмотрите в
>> КАРТОТЕКЕ <<

Возможно, там уже есть готовый ответ.

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

КсюXa  Offline  Сообщение №5671 написано: 20 сентября 2017, 13:34 | Отредактировано: КсюXa - 25 сентября 2017, 06:20


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


Цитата JIuKBuDaToR

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

  Блокнотик со скриптами - это как? Скрипт, как книга - пишется автором по конкретному поводу. И он есть у автора в моде - открывай и смотри.  И нет какого-то конкретного набора скриптов - есть набор команд и функций, из которых можно составить скрипт для своих целей. Это как слова, из которых составляется текст.
Список команд и функций и их описание можно найти в Инете в сотнях мест.
Пожалуй наиболее полный - это на Беседке и на "не Беседке". Правда там на английском.
На русском языке по запросу "Туториал по скриптингу Fallout для начинающих" в Яндексе дается большое количество ссылок. Даже на статью на нашем сайте.

Ой, всё...
JIuKBuDaToR  Offline  Сообщение №5672 написано: 20 сентября 2017, 13:49



64
КсюXa, а что насчет этого? 
Как создать патруль я в принципе понял. Вопрос в другом, как сделать так чтобы этот патруль появился в одной из 4х точек и при этом патруль должен идти по своему особому маршруту, который зависит от того, в какой точке появился этот маршрут?

"Хочешь сделать что-нибудь хорошее, сделай это сам!"
КсюXa  Offline  Сообщение №5673 написано: 20 сентября 2017, 15:14


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


Цитата JIuKBuDaToR

появился в одной из 4х точек и при этом патруль должен идти по своему особому маршруту, который зависит от того, в какой точке появился этот маршрут?

Уточняю - есть, например, четыре точки появления - 1, 2, 3, 4 и есть четыре маршрута - А, Б, В, Г . Если патруль случайным образом появился в точке 1 - то тогда пошел по маршруту А. Появился в точке 2 - пошел по маршруту Б и т.д.?
   Так в чем проблема? Точки появления создаешь ты, ты знаешь где они находятся. Ну так прокладывай отдельные маркеры патрулирования от точки 1 по маршруту А, отдельные маркеры от точки 2 - по маршруту Б и так далее.
И создавай четыре одинаковых, изначально отключенных визуально, патруля, по одному, для каждой точки появления. Кто же знает, что это разные патрули, в игре они будут выглядеть, как один и тот же, только в разных местах. Это всё не требует пока никаких скриптов, все делается на уровне чистого размещения объектов на местности.
  Далее - уже по-труднее - нужно рандомно подключать ту или иную точку появления патруля. Я так понимаю, что задумывается так: играем-играем, пробегаем мимо точки 1, а там может появиться патруль и топать в направлении А.
А может и не появится. Если не появился, то играем-играем, пробегаем мимо точки 2 - патруль там. Или его тоже нет. Если нет - можем вернуться в точку 1 или дойти до точки 3 - оппа! Патруль. Появилсо...
  Как реализовать... Ты же понимаешь, что вся обстановка в игре формируется только вокруг игрока, только в той ячейке, где тот в данный момент находится плюс соседние ячейки. В остальном мире будет пусто, только рельеф и ЛОДы. Поэтому, если игрок находится возле Ривет-сити, а точка номер 1 - возле Райвен-Рок,  то пока игрок не подойдет к Райвен-року - патруль всё равно не появится раньше. Поэтому тут логично возле точки 1 (да и возле остальных точек тоже) просто поставить триггер с прикрученным к нему скриптом.
  Скрипт будет реагировать на вхождение в триггер игрока (в скрипте создать блок  begin OnTriggerEnter player) и далее уже высчитывать - подключать ли привязанный к этой точке патруль или же не подключать, "оставить на потом", типа - пусть работает другой триггер и подключает "свой" патруль. Условием отказа или наоборот включения патруля можно выставить что угодно: наличие у игрока в кармане бутылки пива, ношение игроком определенной одежды, завершение определенной стадии какого-нибудь квеста, убийство определенного персонажа, определенное время суток или же чисто случайное значение некоей квестовой переменной (для этого нужно ввести в мод еще и технический квест). - вариантов куча. В зависимости от твоей задумки, по какой причине должен появляться патруль - будет строится далее скрипт и прописываться те или иные команды.

Ой, всё...
UnlimitedCloud  Offline  Сообщение №5674 написано: 20 сентября 2017, 15:30 | Отредактировано: UnlimitedCloud - 21 сентября 2017, 23:07



41
КсюXa, спс. В игре не видно модель. Очевидно, я где-то в другом месте напортачил. Но, пожалуй, потом доспехами займусь. Главное не потерять информацию. Сейчас же квест и оружие доделаю.
И, по традиции, вопросы:
1) Я заметил, что в геке в настройках оружия есть возможность поставить любой навык. То есть, теоретически, я могу дать персонажу хирургическую пилу и сказать, что это оружие скейлится будет от навыка медицина. А будет ли оно работать?
2) На некоторых моделях появляются такие здоровенные белые блики. От чего это зависит и как лечится? (как раз на ноже-пиле хирургическом появилось)
3) В геке создалась новая группа оружия. По какому принципу эти группы создаются? Ну что бы в ту же группу следующие пушки поместить и не плодить эти группы...  
Как-то сам вопрос отпал... Теперь другой. Как удалить лишнюю группу? ^o^
Тоже отпал. Само удаляется при перезапуске гека.

Когда небеса падут, а земля покроется пеплом, я буду сидеть на вершине мира и смеяться над вашими трупами (с).
JIuKBuDaToR  Offline  Сообщение №5675 написано: 21 сентября 2017, 06:52



64
КсюXa, ух, большое тебе спасибо! Буду пробовать)

Добавлено (21 Сентября 2017, 09:52)
---------------------------------------------
Есть новый вопросик. Я слышал, что нельзя дать айди объекту, который начинается с цифры. Почему? Какие объекты можно называть с цифр, а какие нет?


"Хочешь сделать что-нибудь хорошее, сделай это сам!"
tundruck73  Offline  Сообщение №5676 написано: 21 сентября 2017, 07:31



Дать ID, начинающийся с цифры, можно, только лучше этого не делать. Такие ID в скриптах не компиллируются.

Мосье, же не манж па сис жур...
Умер 23.04.2019
JIuKBuDaToR  Offline  Сообщение №5677 написано: 21 сентября 2017, 16:03



64
Так, новый вопрос))
Каким образом можно заставить Мистера Храбреца стрелять лазером вместо плазмы, существует готовая модель руки для робота?

"Хочешь сделать что-нибудь хорошее, сделай это сам!"
Shtuka  Сообщение №5678 написано: 21 сентября 2017, 21:04 | Отредактировано: shtuka - 21 сентября 2017, 21:22

JIuKBuDaToR, во вкладке оружия храбретца, которая Art&Sound ищете прожектиль и меняете его в выпадающем списке вместо Plasma01(вроде) на BeamLaser01(вроде),и все как бы. Ну еще звуки в этой вкладке можно поменять и еще... Вроде бы вы забирали у меня учебники, там есть про оружие брошурка от Графа, все там просто и полезно dr ...

tundruck73  Offline  Сообщение №5679 написано: 22 сентября 2017, 02:58 | Отредактировано: tundruck73 - 22 сентября 2017, 03:01



Верно, но если просто заменить у оружия прожектайл, то вообще все, кто пользуется этим оружием, станут стрелять лазером. А вот если создать на базе стандартного новое оружие, дать его какому-то определенному храбрецу и (это важно!) внести это оружие в FormList, который называется Embedded weapon (или сделать новый FormList, чтобы не трогать ванильный, назначить его своему роботу и добавить оружие туда), то только ваш робот будет стрелять лазером (или чем угодно еще). Прожектайл можно тоже новый сделать, со взрывом, к примеру. А на взрыв какие угодно эффекты можно повесить, если хочется.

Мосье, же не манж па сис жур...
Умер 23.04.2019
JIuKBuDaToR  Offline  Сообщение №5680 написано: 22 сентября 2017, 18:18



64
Такая ситуация, пишу сюда, ибо здесь актив.
Купил себе лицуху Трешки в Стиме, поставил Гекк, Фомм, Русификаторы (появился Russian.esp ) Захожу в гекк (он у меня частично переведенный от Galko), и думал, что начал *творить*)
Но, я заметил что в гекке объекты игры на английском языке, подключил Russian.esp , стали на русском. Вопрос. Будет ли мой мод работать у пользователей, которые имеют пиратку с русской версией игры? У них этого файла и в помине нету. Я сам англ не знаю, да и с родным языком намного приятнее работать.

"Хочешь сделать что-нибудь хорошее, сделай это сам!"
Ipatow  Offline  Сообщение №5681 написано: 22 сентября 2017, 18:50



Цитата JIuKBuDaToR

пишу сюда, ибо здесь актив

Если написать в форум третьего фола, и там начнётся актив :D

Двуязычная лицензия (хочешь подключаешь russian.esp, а хочешь играешь на языке оригинала) приказала долго ностальгировать с выходом DLC. Поскольку этот самый russian.esp оверрайдит записи fallout3.esm, чтобы произошли русские буквы - но DLC делают это же самое, причём по более существенным причинам, и наложение после них того esp их правки возвращает куда не надо. К "золотому изданию" лицензёры ещё и озвучку русскую сделали, так что в современном варианте russian.esp уже намертво вбит в fallout3.esm (пираты, что логично, использовали эту, последнюю, версию). Если DLC не используются, функционально без разницы, строить мод над сразу-русским fallout3.esm или над парой fallout3.esm+russian.esp, результат получится тот же. Если использовать DLC, разумно обходиться без esp-руссификатора при постройке мода (или тщательно проверять все оверрайды своего мода с помощью FO3Edit).

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

JIuKBuDaToR  Offline  Сообщение №5682 написано: 23 сентября 2017, 02:36 | Отредактировано: JIuKBuDaToR - 23 сентября 2017, 03:06



64
Ipatow, т.е. получается, что моды создавать лучше на русской пиратки?

"Хочешь сделать что-нибудь хорошее, сделай это сам!"
Ipatow  Offline  Сообщение №5683 написано: 23 сентября 2017, 06:41



Цитата JIuKBuDaToR

получается, что моды создавать лучше на русской пиратки?

Происхождение монолитного fallout3.esm несущественно. Если ты своими руками (FO3Plugin) вбиваешь своей лицензионной игре добавочный esp в главный esm, ты получаешь тот же самый монолитный fallout3.esm

JIuKBuDaToR  Offline  Сообщение №5684 написано: 23 сентября 2017, 09:21



64
Хм, действительно...
Таким же образом, я думаю можно вшить russian.esp в свой мод

Добавлено (23 Сентября 2017, 12:21)
---------------------------------------------
А где можно скачать java.ddl для FO3Plugin?


"Хочешь сделать что-нибудь хорошее, сделай это сам!"
Ipatow  Offline  Сообщение №5685 написано: 23 сентября 2017, 19:41



Цитата JIuKBuDaToR

Таким же образом, я думаю можно вшить russian.esp в свой мод

В мод оно (касающаяся мода часть руссификации) вошьётся само собой, если мод изготавливается при загруженном russian.esp... Вообще-то, большинство модов, которые не исправляют что-то в игре, а добавляют новое, с руссифицированностью игры сталкиваются ровно в одном месте: Пустоши могут ненароком переименоваться в Wasteland (но часто ли игроки смотрят туда, где оно написано?).

JIuKBuDaToR  Offline  Сообщение №5686 написано: 24 сентября 2017, 21:43 | Отредактировано: JIuKBuDaToR - 24 сентября 2017, 21:44



64
Уважаемые модмейкеры, я опять возвращаюсь к, больной для себя, теме со случайными встречами. Прошу кого-нибудь из вас написать скрипт для триггера, через которые будут появляться нпс, для примера я прошу написать скрипт для одного нпс с его появлением на одной из трех точек (А, В и С). Небольшое уточнение: мне не важно каким будет нпс, мне главное понять как мне нужно действовать и иметь при себе шаблонный скрипт, который уже буду изменять в зависимости от ситуации. Жду ответа. Заранее спасибо!

"Хочешь сделать что-нибудь хорошее, сделай это сам!"
Shtuka  Сообщение №5687 написано: 25 сентября 2017, 20:29

JIuKBuDaToR, извените, дорогой, мне лень писать этот скрипт :) . Потому что придется лезть в картотеку и листать там собирая ваш скрипт, помню там есть решения под вашу просьбу.

JIuKBuDaToR  Offline  Сообщение №5688 написано: 25 сентября 2017, 21:22 | Отредактировано: JIuKBuDaToR - 25 сентября 2017, 21:30



64
shtuka, Вот из 31 скрипта в картотеке моего как раз и нет. Ну, я подожду тогда, потому что мне действительно НУЖЕН этот скрипт.

"Хочешь сделать что-нибудь хорошее, сделай это сам!"
Shtuka  Сообщение №5689 написано: 26 сентября 2017, 04:25

JIuKBuDaToR,
1) как сделать активатор и повесить на него скрипт?
2) как сделать чтобы проходя через активатор, что-нибудь появлялось рядом или где нибудь?
3) как сделать чтобы это происходило один раз, постоянно или через промежуток времени?

На эти вопросы в картотеке(раздел скриптов? нефакт) ответы есть, отыскав их, вы легко решите свою задачу.

JIuKBuDaToR  Offline  Сообщение №5690 написано: 26 сентября 2017, 07:33 | Отредактировано: JIuKBuDaToR - 26 сентября 2017, 07:37



64
shtuka, Вы видимо когда читали мой вопрос, меня не так поняли. Заставить нпс появиться через скрипт и триггер я могу. Мне нужен скрипт, чтобы, когда гг входит в зону триггера нпс либо появился, либо не появился, а если и появился, то отключил из игры другие тригеры.

"Хочешь сделать что-нибудь хорошее, сделай это сам!"
Shtuka  Сообщение №5691 написано: 26 сентября 2017, 08:08

JIuKBuDaToR, конечно не так понял, инфы от вас тоже не шибко было :D . Да, здесь надо деликатное скриптовое решение, которое я не знаю(пока...), но есть мысля: повесить на всех трех ваших NPC скрипты(если не зането). Скрипт1:
Begin OnLoad
RefId(ваш тригер) Disable
RefId(ваш тригер)  MarkForDelete
End
 
Теперь первый появившийся удалит другие тригеры где он мог появиться. Ну а по вопросу рандомного появления NPC, вплоть до непоявления то этот вопрос я тоже поднимал здесь .

JIuKBuDaToR  Offline  Сообщение №5692 написано: 26 сентября 2017, 08:33



64
shtuka, Я описал подробно свой вопрос еще несколько дней назад. Ну, да ладно. В любом случае, мне остается только ждать

"Хочешь сделать что-нибудь хорошее, сделай это сам!"
КсюXa  Offline  Сообщение №5693 написано: 26 сентября 2017, 10:39 | Отредактировано: КсюXa - 26 сентября 2017, 13:40


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


Цитата JIuKBuDaToR

Заставить нпс появиться через скрипт и триггер я могу

  Ну а дальше известным тебе путем: в точке А ставишь непися №1, даешь ему реф-имя, делаешь изначально отключенным. Над всей зоной растягиваешь триггер, к этому триггеру цепляешь скрипт вида:
Если игрок вошел в зону триггера и если в данный момент значение переменной TempVariable равно 1
то заенейблить непися №1
и (по желанию) удалить триггер №2 и №3, а также их неписей)

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

Ой, всё...
JIuKBuDaToR  Offline  Сообщение №5694 написано: 26 сентября 2017, 10:46 | Отредактировано: JIuKBuDaToR - 26 сентября 2017, 10:48



64
КсюXa, Большое тебе спасибо! Обязательно попробую и отпишусь))

Если мне надо поставить четвертую точку, для этого нужно вписать ниже
elseif TempVariable == 3
elseif TempVariable == 4
??

"Хочешь сделать что-нибудь хорошее, сделай это сам!"
КсюXa  Offline  Сообщение №5695 написано: 26 сентября 2017, 11:03 | Отредактировано: КсюXa - 26 сентября 2017, 11:03


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


Цитата JIuKBuDaToR

Если мне надо поставить четвертую точку, для этого нужно вписать ниже

Yes, of course
Только не забудь в последней строчке вернуть на единичку, чтобы всё крутилось по кругу.

Ой, всё...
JIuKBuDaToR  Offline  Сообщение №5696 написано: 26 сентября 2017, 11:04



64
КсюXa, Благодарю! good

"Хочешь сделать что-нибудь хорошее, сделай это сам!"
Ipatow  Offline  Сообщение №5697 написано: 26 сентября 2017, 15:55 | Отредактировано: Ipatow - 26 сентября 2017, 15:57



Цитата КсюXa

begin GameMode
if TempVariable == 0
set TempVariable to 1


Это такой GetRandomPercent вручную? O_O Тогда бы хоть зависимость от погоды надо было добавить! :D

КсюXa  Offline  Сообщение №5698 написано: 26 сентября 2017, 16:11 | Отредактировано: Apex - 6 января 2018, 09:15


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


Цитата Ipatow

Это такой GetRandomPercent вручную?


Типа того.
PS. Если честно, просто забыла про эту функцию... unsure Да и особо никогда её и не понимала, не дружу я с математикой..

JIuKBuDaToR, тогда забудь, всё что написала выше, есть более приемлемое решение.
Как говорил один харьковчанин: - давай по-новой, Миша, всё х#йня...

Айяяй,КсюXa:D

Ой, всё...
JIuKBuDaToR  Offline  Сообщение №5699 написано: 26 сентября 2017, 16:49 | Отредактировано: JIuKBuDaToR - 26 сентября 2017, 16:50



64
КсюXa, И какое же?

"Хочешь сделать что-нибудь хорошее, сделай это сам!"
Ipatow  Offline  Сообщение №5700 написано: 26 сентября 2017, 19:05



Цитата JIuKBuDaToR

И какое же?



Выражение (1 + GetRandomPercent * число-вариантов / 100) после приведения к целому числу принимает значения от единицы до максимума случайным образом. То есть когда тебе нужно случайно выбрать что-то из конечного набора - порядковый номер варианта вычисляется так.

КсюXa предлагала решение менее эффективное, когда нужна именно абсолютная случайность, но, вообще-то, более гибкое, когда шансы зависят от множества аккумулирующихся факторов. Например, если вероятность тринадцатого варианта резко повышается в течение часа после того, как тебе дорогу перебежал чёрный радтаракан, это невозможно выразить формулой, это необходимо отслеживать скриптом-монитором.

Форум » Fallout: New Vegas » Мастерская » ВОПРОСЫ по моддингу (Спрашиваем и отвечаем на тему как сделать то или это...)
Поиск:





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