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

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


Project Fallout: Wild Wasteland


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

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

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

MaxwellDemon  Offline  Сообщение №5221 написано: 18 марта 2016, 15:16



104
Цитата JacksonRR24

в личку писать свою задумку?


Зачем? здесь пиши, может кому пригодится ... формируй мысль пока, я поем пойду.

JacksonRR24  Offline  Сообщение №5222 написано: 18 марта 2016, 15:18



29
MaxwellDemon, приятного аппетита.

MaxwellDemon  Offline  Сообщение №5223 написано: 18 марта 2016, 15:27



104
Цитата JacksonRR24

Хотя именно этот скрипт работает с НПС. А какой скрипт отвечает за урон "на себя"?


Ну и да, разберёмся с понятиями:
Скрипт - грубо говоря набор команд и условий.
Команда - действие которое происходит в определённый момент.
Условие - тот самый "определённый момент" в которы происходит то самое "действие"

DamageActorValue - это команда, выбираем параметры для неё, в твоём случае получится нечто вроде:

Player.DamageActorValue Health 0.5

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

ApeX  Offline  Сообщение №5224 написано: 18 марта 2016, 15:29



Цитата JacksonRR24

я пробовал, но минуты переводятся в секунды

Странно.У дефолтной химии действие проходят за минуты.А Reduce(ухудшение параметров.) длится днями.

JacksonRR24  Offline  Сообщение №5225 написано: 18 марта 2016, 15:37



29
MaxwellDemon, ага, смысл я понял.

Добавлено (18 Марта 2016, 18:37)
---------------------------------------------
apex77, ухудшение параметров - это величина постоянная. У тебя будет отнят, например, 1 пункт СИЛЫ, и величина эта не изменится. А здоровье уменьшается безостановочно, из персонажа вылетает хпшка за хпшкой).

Добавлено (18 Марта 2016, 18:37)
---------------------------------------------
Вот инструкции по радиации

Каждая степень рад. заражения ускоряет потерю здоровья. Степеней у Джоша Сойера (я его мод дорабатываю под себя) пять, но они другие - 400, 550, 700, 850 и 1000.

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

1 игровой час = 2 минуты реального времени.

Когда персонаж набирает 400 рад, он должен потерять 200 хп за 30 игровых часов (или 60 минут реального времени).
550 рад - потеря 200 хп за 15 игровых часов (30 реальных минут).
700 рад - потеря 200 хп за 5 игровых часов (10 реальных минут).
850 рад - потеря 200 хп за 3 игровых часа (6 реальных минут).
1000 рад менять не нужно.

Вроде всё.


ApeX  Offline  Сообщение №5226 написано: 18 марта 2016, 15:47



Речь не о величине,а о том что это работает не только в секундах.

JacksonRR24  Offline  Сообщение №5227 написано: 18 марта 2016, 15:53



29
http://savepic.ru/8984154.htm

Я же уже говорил.
Две минуты - это то же самое, что 120 секунд. Дамаг будет проходить не два раза по одному разу в минуту, а всё равно 120 раз по одному разу в секунду :) . То есть по сути выбор между минутами и секундами ничего не меняет).

MaxwellDemon  Offline  Сообщение №5228 написано: 18 марта 2016, 16:23



104
JacksonRR24,  уточняем.

Цитата JacksonRR24

1 игровой час = 2 минуты реального времени.


Строго говоря это не всегда так... Я буду делать расчёты в реальном времени, так мы избежим ситуаций типа: отправился в <<быстрое путешествие>> - умер. Да и других нестыковок с игровым временем хватает...

Второй момент, как там называются (в моде, в GECK, в Actor Effect) стадии радиации?

Radiation1000
Radiation200
Radiation400
Radiation600
Radiation800

Так? Просто правильнее будет операться не на количество рад, а на стадии. Это то же избавит от нестыковок...

ApeX  Offline  Сообщение №5229 написано: 18 марта 2016, 16:26



Значит или скриптом,который без проблем переварит дробные, или дополнительный плюсовый эффект.

JacksonRR24  Offline  Сообщение №5230 написано: 18 марта 2016, 17:31



29
MaxwellDemon, неважно, в каком времени вы будете делать расчёты, ибо 1 игровой час и 2 минуты реального времени - это одно и то же, если я правильно вас понял.

Цитата MaxwellDemon

Второй момент, как там называются (в моде, в GECK, в Actor Effect) стадии радиации?Radiation1000
Radiation200
Radiation400
Radiation600
Radiation800

Да, они именно так и называются, но при этом значения у них те, которые я указал).

Добавлено (18 Марта 2016, 19:36)
---------------------------------------------
Apex, ну если вдруг у MaxwellDemon не получится со скриптом, то буду добавлять плюсовый эффект).

Добавлено (18 Марта 2016, 20:31)
---------------------------------------------
Ребята, плюсовый эффект НЕ РАБОТАЕТ. Я брал дамаг 100 и хил 99, эффект получался -1 ОЗ в секунду. То же самое с 1000 и 999. Взял 1000 и 990 - это -10 ОЗ в секунду. Какие бы значения я не брал, всё равно меньше, чем -1 ОЗ в секунду не получится. GECK десятичные не допускает, его не обманешь))).


MaxwellDemon  Offline  Сообщение №5231 написано: 18 марта 2016, 18:33 | Отредактировано: MaxwellDemon - 18 марта 2016, 18:47



104
0. Текст скрипта

Код
scn ModRadiationSCRIPT

Begin GameMode

    If Player.IsSpellTarget Radiation800 == 1

        Player.DamageActorValue Health 0.5555

    ElseIf Player.IsSpellTarget Radiation600 == 1

        Player.DamageActorValue Health 0.3333

    ElseIf Player.IsSpellTarget Radiation400 == 1

        Player.DamageActorValue Health 0.1111

    ElseIf Player.IsSpellTarget Radiation200 == 1

        Player.DamageActorValue Health 0.0555

    EndIf

End

1. Создаёшь скрипт



2. Жмёшь Ок

3. Создаёшь квест



4. Жмёшь Ок

5. Открываешь созданый квест



6. Жмёшь Ок

7. Сохраняешь мод

8. Имена скрипта и квеста конечно можно придумать самому,  я просто подсказал стиль названий, что бы не запутаться потом...

JacksonRR24  Offline  Сообщение №5232 написано: 18 марта 2016, 19:05



29
Всё работает, всё круто.

MaxwellDemon  Offline  Сообщение №5233 написано: 18 марта 2016, 19:14 | Отредактировано: MaxwellDemon - 18 марта 2016, 19:15



104
Числа:

0.5555
0.3333
0.1111
0.0555

Это урон в секунду, захотел поправить, посчитал на калькуляторе, подменил числа в скрипте (для соответствующей стадии радиации), пересохранил.

JacksonRR24  Offline  Сообщение №5234 написано: 18 марта 2016, 19:18



29
Как этот скрипт работает, я разобрался). Урон в секунду - окей. Спасибо  :) .

MaxwellDemon  Offline  Сообщение №5235 написано: 18 марта 2016, 19:28 | Отредактировано: MaxwellDemon - 18 марта 2016, 19:30



104
формула расчёта урона в секунду проще некуда:

X / Y

Где X = количиство здоровья которое теряется за определённое время.
Где Y = то самое "определённое время" за которое теряется то самое "количество здоровья" (в секундах)

Например, рассмотрим твой вариант с первой стадией радиации:

Цитата JacksonRR24

должен потерять 200 хп за 30 игровых часов (или 60 минут реального времени)


Тут X = 200
Тут Y = 3600

200 / 3600 = 0.055555555555555555555555555555556
Округляем вниз до 4-ёх цифр после 0 (в стили Bethesda) получаем то самое число из скрипта = 0.0555

JacksonRR24  Offline  Сообщение №5236 написано: 18 марта 2016, 19:32



29
Да, я уже вывел эту формулу, но всё равно спасибо).

Добавлено (18 Марта 2016, 22:32)
---------------------------------------------
Единственный вопрос - для чего нужна ротация квеста?


MaxwellDemon  Offline  Сообщение №5237 написано: 18 марта 2016, 19:45



104
Цитата JacksonRR24

Единственный вопрос - для чего нужна ротация квеста?


Может я неудачно выразился ... я имел ввиду время через которое квест повторяет присвоенный скрипт.
Не то слово подобрал ... частота тут больше подходит.

Так вот частоту скрипта в квесте ставим 1 и сводим скрипт к урону в секунду (частоту скрипта в квесте ставим 60 и сводим скрипт к урону в минуту).

Добавлено (18 Марта 2016, 22:44)
---------------------------------------------
частоту скрипта в квесте ставим 0.001 и сводим скрипт к урону в миллисекунду

Добавлено (18 Марта 2016, 22:45)
---------------------------------------------
Думаю смысл понятен...


JacksonRR24  Offline  Сообщение №5238 написано: 19 марта 2016, 08:28 | Отредактировано: JacksonRR24 - 19 марта 2016, 08:30



29
Ага, ясно, спасибо).

Добавлено (19 Марта 2016, 11:28)
---------------------------------------------
Доброе утро  :) .
Примечание к моду "ModRadiation". Мод работает только в реальном времени. При использовании функций "Ждать" и "Спать" мод не ускоряет своё действие. Количество здоровья при рад. заражении остаётся таким же, каким было, независимо от того, сколько часов игрок проспал или прождал  :) .

КсюXa  Offline  Сообщение №5239 написано: 19 марта 2016, 10:48


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


Цитата JacksonRR24

При использовании функций "Ждать" и "Спать"


Так запретить эти функции. Дескать, какое ждать-спать, когда у тебя здоровье утекает. Иди, лечись.

Ой, всё...
JacksonRR24  Offline  Сообщение №5240 написано: 19 марта 2016, 11:15



29
КсюXa, по идее, для запрета этих функций должно быть условие "потеря здоровья", но в пип-бое во вкладке "эффекты" этот эффект не отображён. По сути, это вообще не эффект, а работа квестового скрипта. Возможно, запрет функций при "скриптовой" потере здоровья можно добавить опять же скриптом, но со скриптами я не умею работать.
Однако, так как я пользуюсь этим модом только для себя, можно запретить использование этих функций не скриптом, а просто самому себе :) .  Дескать, какое ждать-спать, когда у тебя здоровье утекает. Иди, лечись :D .

MaxwellDemon  Offline  Сообщение №5241 написано: 19 марта 2016, 12:02



104
Цитата MaxwellDemon

правильнее будет операться не на количество рад, а на стадии


Врубаешься чё к чему?

КсюXa  Offline  Сообщение №5242 написано: 19 марта 2016, 12:02 | Отредактировано: КсюXa - 19 марта 2016, 12:03


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


Цитата JacksonRR24

запретить использование этих функций не скриптом, а просто самому себе


Я обычно так и делаю. Железной воли человек... :)

Ой, всё...
JacksonRR24  Offline  Сообщение №5243 написано: 19 марта 2016, 12:15 | Отредактировано: JacksonRR24 - 19 марта 2016, 12:16



29
Цитата MaxwellDemon

Врубаешься чё к чему?


Кажется, да. Можно в тот же самый скрипт, который ты написал, вставить запрет на использование функций "Ждать" и "Спать" в каждую стадию рад. заражения. Этот запрет можно не завязывать на потерю здоровья, а просто добавить, и всё.

MaxwellDemon  Offline  Сообщение №5244 написано: 19 марта 2016, 12:50



104
Цитата JacksonRR24

Этот запрет можно не завязывать на потерю здоровья


В том смысле если тебе понадобилось где то условие той (самой потери здоровья), то ты можешь использовать в этом условии соответствующую стадию радиации.

То есть:

Если игрок теряет 0.0555 здоровья в секунду         ==         Если у игрока малое рад-отравление

JacksonRR24  Offline  Сообщение №5245 написано: 19 марта 2016, 13:16 | Отредактировано: JacksonRR24 - 19 марта 2016, 13:12



29
MaxwellDemon, да, согласен, завязка на разные стадии радиации будет определённее, конкретнее.

Добавлено (19 Марта 2016, 16:14)
---------------------------------------------
Соответственно, вопрос. Какой скриптовой командой можно запретить использование функций "Ждать" и "Спать"?

Добавлено (19 Марта 2016, 16:16)
---------------------------------------------

Цитата КсюXa

Я обычно так и делаю. Железной воли человек...


Только ограничение самого себя может в какой-то момент вылететь из головы и забыться). Скрипт в таком случае надёжнее).

MaxwellDemon  Offline  Сообщение №5246 написано: 19 марта 2016, 14:30



104
Цитата JacksonRR24

для запрета этих функций должно быть условие "потеря здоровья"


"Хорошо поставленный вопрос - половина ответа"

JacksonRR24, а если вот так? Надо было сразу так сделать...



На мой взгляд лучший вариант.

JacksonRR24  Offline  Сообщение №5247 написано: 19 марта 2016, 14:55 | Отредактировано: JacksonRR24 - 19 марта 2016, 15:15



29
MaxwellDemon, блин, круто).

predator1286  Offline  Сообщение №5248 написано: 19 марта 2016, 20:34



43
Все таки товарищи как достать анимации и экспортировать их в макс !? из фалаута 4 ! в нипскопе не посмотреть их такова расширения нет по анимка !  а тока hkx !

КсюXa  Offline  Сообщение №5249 написано: 20 марта 2016, 05:00 | Отредактировано: КсюXa - 20 марта 2016, 05:52


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


Цитата predator1286

в нипскопе не посмотреть

  А нифскоп показывает только те файлы, про которые "знает". Если почитать комментарии на форуме Ф4, то там все жалуются на то, что пока еще не выпущена работоспособная версия нифскоп, позволяющая НОРМАЛЬНО работать с файлами Фола4 (да Вы и сами жаловались Кристе, что нифига новый нифскоп не открывает).
  Именно поэтому сайт завален кучей ретекстур всего, что только можно перекрасить из готового в игре и практически нет ни одной новой модели чего либо (не считая извращений в боди-слайдере или рипов моделей из игр с последующими танцами с бубном для конвертации\адаптации крутыми 3Д-мастерами )
  PS. Поскольку движок Ф4 ближе к Скайримовскому, чем к тройке или вегасу - лучше эти вопросы задать на скайримовском форуме ;)

Ой, всё...
MaxwellDemon  Offline  Сообщение №5250 написано: 20 марта 2016, 07:14 | Отредактировано: MaxwellDemon - 20 марта 2016, 07:06



104
Вопрос к опытным мододелам:

Делаю большой мод на играбельный вид от 3-его лица. Получается многое... Застрял вот на чём:
Точность "горизонтальной" стрельбы (примерно от -20 до 20 градусов (X)), во врагов на близком расстоянии (примерно ближе 300 пунктов).

Решение вижу следующее (всё работает в режиме реального времени):

1. Проверить угол взгляда (X) - не проблема.
2. Плавно смещать прицел, в зависимости от угла - не проблема.
3. Проверить наличие врага под прицелом - не проблема.
4. Проверить дистанцию до врага - не проблема.
5. Плавно изменять угол отклонения снаряда, в зависимости от дистанции - не проблема.*

* Вот тут всплывает неиграбельный момент - порой пули летят абсолютно не туда куда целишься, в принципе понятно почему, но бывают просто невероятные отклонения... Несмотря на отклонения, стрельба (в целом) однозначно становится более точной, но когда "пули летят словно птицы" - это просто режет глаз, что относит мод к неиграбельному. Вот к чему я склоняюсь, в плане решения этой проблемы:

6. Сделать два комплекта отображения снаряда (Projectile), невидимый и стандартный - не проблема.
7. Проверить тип боеприпасов у экипированного оружия - не проблема.
8. Подменять Projectile, в зависимости от дистанции и боеприпасов - не проблема.*

* Теперь, когда "пули летят словно птицы" (обычно это происходит, когда цель "уворачивается") - это уже не видно. Но тут всплывает уже менее неиграбельный момент - "дырки от пуль" появляются на стене/потолке, что меньше, но всёже режет глаз... Вот к чему я склоняюсь, в плане решения этой проблемы:

9. Сделать два комплекта "дырок от пуль" (Impact Data Set), только по плоти и по остальному - не проблема.*
10. Подменять Impact Data Set, в зависимости от дистанции, боеприпасов и Projectile - проблема!!!**

** Необходимой команды в GECK+FOSE я не нашёл ... если она всё-таки есть - подскажите - это было бы идеальным решением! Но если такая функция недоступна - вот к чему я склоняюсь, в плане решения этой проблемы:

11. Заменить стандартный Impact Data Set на Impact Data Set только по плоти - не проблема.
12. Добавить к стандартному Projectile взрыв (Explosion), который будет иметь только один эффект - Impact Data Set по всем материалам кроме "только по плоти" - не проблема.***

***Вот тут всплывает неиграбельный момент - "дырки от пуль" отображаются, но (мягко говоря) через раз!
Если поиграться с параметрами вышеупомянутых Projectile и Explosion - эффект меняется, но играбельный вариант нащупать не могу ... но чувствую он где-то рядом!

В игре всё выглядит так:
Когда враг далеко (или его нет под прицелом) - стрельба отображается как обычно.
Когда враг подходит на расстояние, при котором стандартная стрельба просто не попадает в прицел - стрельба отображается следующим образом:
Если вы попали по цели - стрельба отображается как обычно.
Если вы промахнулись - выстрел происходит, но снаряд и "дырка от пули" просто не отображаются.

Если вдруг возникнет вопрос - стоит ли так заморачиваться, отвечу:
По мимо этого уже сделано гораздо больше, для того что бы в итоге получить удовольствие от Fallout, как от 3D-Action-RPG и порадовать этим ценителей жанра ... ну никак я не могу воспринимать Fallout, как FPS-RPG ... ну никак...

Добавлено (20 Марта 2016, 10:14)
---------------------------------------------
Ну и конечно, альтернативные идеи, о том - как сделать стрельбу от 3-го лица играбельной - приветствуются...


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





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