Я, конечно, уже похвалил Spalny_Vagon... Прочитав код по диагонали... И, спору нет, на "if randvar >= 33 && <= 66" компилятор скриптов GECK не жалуется - но каким осмысленным образом должны работать идущие подряд "&& <=", я, признаюсь, сообразить не могу. Сам я обычно стараюсь писать наиболее недвусмысленным образом; попробуй это условие записать как "(( randvar >= 33 ) && ( randvar <= 66 ))". Возможно, неошибка для компилятора оказывается ошибкой для интерпретатора?..
Сам я использовал бы, как я писал в начале разговора, левельный объект, который сам превратится во что-то случайным образом... Но если бы надо было именно вручную разложить шанс, я твой разбор процентов написал бы так (по существу всё то же только в профиль, но вроде бы чуточку точнее и выпендрёжнее элегантнее):
Код
SET randvar TO (GetRandomPercent * 3) / 100 ; вместо 0..99 сделали 0..2 IF randvar == 0 PlaceAtMe ArtifactTest04 1 ELSEIF randvar == 1 PlaceAtMe ArtifactTest05 1 ELSE PlaceAtMe ArtifactTest06 1 ENDIF
Извращенцы Что мешает использовать строгое неравенство с числом, на единицу большим/меньшим?
Во-первых, необходимость как можно меньше отклоняться от авторской орфографии. Во-вторых, мой вариант использует строгое равенство (и два условия вместо трёх). В-третьих, приличный компилятор сгенерирует равно эффективный код из обоих вариантов написания исходника, а неприличного не спасёт и терагерц на процессоре даже при самом красивом написании. В-четвёртых, я не извращенец, я зануда
Изменение репутации для пользователя Ipatow
IpatowOffline
Сообщение №1114
| Тема: Помощь по моддингу
написано: 22 апреля 2014, 20:37
| Отредактировано: Ipatow - 22 апреля 2014, 20:38
Как можно убрать с главного интерфеиса цифры и индикатор, который показывает сколько радиаций у ГГ накопилось и какую дозу он получает на данный момент в секунду?
Насколько я помню, моды вроде DUI позволяют динамически в игре, в частности, отключать панели интерфейса. Если не хочется ставить такой мод - сам поправь xml в папке Data\Menus... Оно наповал недокументированно, но для такой простой задачи достаточно интуитивно понятно. Можно скрыть ненужную панель, можно задвинуть её за край экрана...
Изменение репутации для пользователя Ipatow
IpatowOffline
Сообщение №1115
| Тема: Мастер мод-территория
написано: 23 апреля 2014, 04:15
| Отредактировано: Ipatow - 23 апреля 2014, 04:20
Не могу сказать ничего оптимистичного. Я не хочу бросать этот мод, я не собираюсь бросать этот мод, именно он у меня развёрнут "на верстаке". Но в этом году у меня нашлось от силы пару часов россыпью поминутно на моддинг. И я не знаю, когда этот бесконечный аврал закончится. Как странно уведомлялка тормознула. Послал информер квиток Sat, 19 Apr 2014 13:08:55 +0400 (MSK), дошло Wed, 23 Apr 2014 00:08:01 +0000
неужели в любом случае придётся создавать новый мод и копировать в него?
Формат ESP у тройки и вегаса разный. У тройки версия формата 0.94, у вегаса от 1.32 до 1.34. Различия в форматах у разных типов записей записей не всегда тривиальны, и перенос один-в-один для многих записей невозможен.
Старый вопрос по редактору ладшафта, да именно так все и делаю!
Чертовщина какая-то. Если есть место куда переустановить - попробуй взять оригинальную игру без никаких добавок (ни ручных подправок INI, ничегошеньки сверх того как установилось), взгромоздить на неё GECK из оригинального дистрибутива и ещё раз проверить. Я сам не видел, но слышал, что бывают странно ведущие себя сборные винегреты... Если же и стопроцентно оригинальный софт поведёт себя влево - останется только трижды постучать через плечо и окропить святой водой драйвера
Надо добавить (некоторым)торговцам на пустощи новые вещи, что-бы они обновлялись как обычные товары, т.е. случайным образом а не через стабильных три дня.
Добрый человек, ты открыл мне глаза! Я даже не подозревал, что обычные товары обновляются как попало, а не каждые iHoursToRespawnCell часов, как это сделано в фолаутах.. Вообще о товарах - с ними устраивают либо пассивную раздачу, либо активную.
Пассивно - это как сделано в оригинальной игре: в контейнеры (включая карманы), из которых продаёт товар торговец (это не только назначенный ему Merchant Container, но все принадлежащие ему контейнеры в радиусе видимости), складывают предметы (явно или опосредованно с элементом случайности при помощи левельных списков) - после чего с тем жёлтеньким интервалом каждый такой контейнер очищается и заново заполняется согласно списку.
Активный вариант - это когда где-то там крутится скрипт (квестовый хорош, он вертится одинаково где бы ни находился ГГ), который сам определяет, когда и что в какой контейнер сунуть. Интервалы могут быть сколь угодно длинные или короткие, не обязаны быть одинаковыми для всех контейнеров/торговцев... Ну, это как обычно со скриптами - как тебе вздумается, так оно и будет работать. Недостатков тут пара: во-первых, всё-таки жужжащий где-то там скрипт пусть чуть-чуть, но нагружает процессор. И, во-вторых, когда стандартная система регенерации опустошает контейнеры, она выбросит в том числе и то, что вложено тем скриптом. Это не беда, но это надо учитывать.
можно ли сделать так, чтобы NPC'ы при стрельбе из винтовок с оптикой использовали только IS-анимацию?
Использование одного или двух видов анимации - свойство оружия, не зависящее от того, у кого оружие в руках. Наверное, наиболее близко к твоей идее будет запретить оружию IS-анимацию и заменить гуманоидам соответствующие этому оружию файлы анимации "стрельбы навскидку" файлами "прицельной стрельбы" - всегда будет использоваться одна и та же анимация, называющаяся "навскидку", но на самом деле "прицельная".
Всем доброго времени суток , подскажите пожалуйста , после переодевания и перевооружения фракций , чтоб увидеть результат , обязательно нужно начинать новую игру ? Изменения вступят в силу только при начале новой игры , или это можно как то обойти чтоб на тэстирование реплейсера не уходило много времени?
Переодевание мобов происходит в момент регенерации ячейки, в которой они находятся. Я бы посоветовал создать тестовый интерьер (ну или напихать тестовых персонажей в существующий - главное, чтобы именно интерьер) и вручную регенерировать этот интерьер функцией ResetInterior. Вышел из дома, резетнул этот дом, снова зашёл - все внутри оделись заново.
У меня сначала возникала мысль - нельзя ли через Combat Style.. Залез посмотреть, вспомнил, почему я не лазаю в стили: голимая обливионщина меча и дубины, реликт доогнестрельных времён. Ни скрипты, ни пакеты в деле с боевыми анимациями не подспорье, в бою практически всё неуправляемое. Поскольку осмысленную призводительность даёт только движковый код, всё интерпретируемое просадит процессор.
Если повесить эффект зачарования с уроном на пулемёт, к примеру на "Миниган". Как он будет срабатывать? За каждый патрон выстреленный в очереди или 1 раз за очередь?
"Эффект зачарования с уроном" - я правильно понял, что по крайней мере один из базовых эффектов этого объектного эффекта уменьшает здоровье цели? Что происходит, когда мы в VATS заказываем стрельбу из автоматического оружия (т.е. условное нажатие на гашетку 1шт.). Будет исполнена очередь стандартной продолжительности (в секундах), то есть сделано N выстрелов (делим продолжительность на скорострельнсть). Каждый из N выстрелов потратит X патронов и выпустит Y снарядов. Влияние количества расходуемых патронов начинается и заканчивается тем, что если нужного числа нет, очередь получится короче. Каждый из N*Y снарядов, если он в кого-то попадает и наносит урон, вызывает срабатывание эффекта. Это может быть один раз за очередь, ноль раз за очередь (например - ну не пробивают пульки DT и урона не наносят), тыщу раз за очередь. Как повезёт.
Делались и как будто ещё продолжаются попытки как-то исполнить на беседковском движке концепцию карты первых фолов. Кажется, никто ещё не довёл дело до играбельного...
Свободный диалог - когда можно любого собеседника помимо стандартных реплик спросить, скажем - "а вот про Antanta ты слышал? Что можешь на этот счёт сказать?"... Реализация в лоб попросту невозможна, и даже косвенные варианты не кажутся сколько-нибудь простыми. Нет в движке строковых переменных.
Пошаговый бой - сразу ставим жирный крест, невозможно.
Статы, скиллы, перки, трейты - это возможно и кое-что существует. Классические перки точно реализовывали... Статы-скиллы, как я убедился лично, переделать в классический вид можно; такое плохо дружит с модами, но если не планировать сосуществование с другими модами, должно вполне получиться.
Система урона с раздельными DR/DT по шести поражающим факторам - не уверен, что это можно симулировать, а движок не поддержит.
Наверняка я запамятовал какие-то ещё фундаментальные концепции первых фолов, но уже перечисленное это в основном беда.
Если игнорировать всю эту беду... остаётся много работы. Выполнимой в принципе - и модели тут делали-раскрашивали, и диалоги озвучивали... Про расстановку мебели по интерьерам и не говорю. Но объём всего этого неподъёмный.
Резюме. Идея заманчивая, но это что-то вроде "мужики, а не слетать ли нам на Марс?" Возможно ли теоретически? Вполне. Реализуемо ли практически? Неа.
как сделать случайный выбор миссий например в терминале? Миссии можно будет проходить не ограниченное количество раз (заходим в меню терминала "Задачи" а там высвечивается одна случайная миссия из трех возможных) Как это сделать?
Допустим, мы хотим, чтобы при активации терминала в его меню (подтерминале "Задачи") становилась активной (получаемой) случайно одна из трёх задач и оставалась активной в течение часа (а не так что при каждом тыканьи новая задача).
На главный терминал (тот, который активируется из мира - пусть его EditorID будет MyMainTerm, а экземпляр в мире MyMainTermRef) вешаем скрипт:
Код
SCRIPTNAME MyTaskTermRememberRandomScript FLOAT TaskExpireTime SHORT TaskNo BEGIN OnActivate IF (GameDaysPassed - TaskExpireTime) > 0 SET TaskExpireTime TO GameDaysPassed + (1/24) SET TaskNo TO 1 + (GetRandomPercent*3/100) ENDIF Activate END
В подтерминале - который в MyMainTerm в пункте "Задачи" назначен как Sub Menu - создаём три пункта. Каждый из них даёт одну из наших трёх задач (как именно даёт сейчас не обсуждаем), и у каждого пункта в Item Conditions значится GetScriptVariable MyMainTermRef,TaskNo = 1 (или 2 или 3, там от единицы до тройки). Итого при активации главонго терминала, если с прошлой активации прошло больше часа, выбирается случайное число от единицы до тройки - и в подтерминале "Задачи" виден только пункт, соответствующий этому номеру.
Изменение репутации для пользователя Ipatow
IpatowOffline
Сообщение №1127
| Тема: ВОПРОСЫ по моддингу
написано: 7 мая 2014, 12:53
| Отредактировано: Ipatow - 7 мая 2014, 12:55
Хотел спросить, можно ли скриптом заставить камеру игрока перейти в позицию от третьего лица, или еще лучше, можно ли заставить камеру переместиться в назначенную точку, пока игрок в режиме DisablePlayerControl?
До сих пор встречавшиеся способы управления камерой - в оригинале игры при помощи уникальных анимаций для каждого конкретного случая, в модах, где хотелось показать ГГ со стороны - при помощи клонирования ГГ и показа клона ("камерой" и в этом случае был ГГ-от-первого-лица).
Как переключиться в третье лицо - использовать функцию скрипт экстендера TapControl на контрол номер 13 (TogglePOV).
Хочу прикрутить к оружию несколько эффектом зачарования. Стандартно, можно сделать только 1. Интересует, есть ли решение вопроса скриптом?
Да, объектный эффект один. Но он состоит из кучибазовых эффектов - каждый из которых с условиями (скажем, если цель робот, сработает первый, если на дворе ночь, сработает второй, если выполнена определённая стадия определённого квеста, сработает третий и т.п.). Если мало этих условий, то да, конечно, можно всё это ещё и заскриптовать. Какого имено результата ты хочешь добиться?
Базовыми? Гмм... Ну вообще, настоящий клон делается только скрипт экстендером (функция TempCloneForm)... Но если нужно сделать близнеца ГГ стандартными средствами... Пожалуй, так: SameSexAsPC+SexChange, MatchRace, MatchFaceGeometry, DuplicateAllItems.
несмотря на формат Nif -это совершенно разные игры
Я бы не стал "несмотреть" на формат NIF. А то этак можно договорить до попытки подключения в фолауты моделей из RIFT - а что, там тоже Gamebryo, тоже NIF... Тоже другой версии формата NIF.
Да практически всё в порядке перечисления функций...
Код
SET TheVar TO Player.PlaceAtMe SomeNPC 1 IF TheVar.SameSexAsPC == 0 TheVar.SexChange ENDIF TheVar.MatchRace Player TheVar.MatchFaceGeometry Player 100 TheVar.RemoveAllItems Player.DuplicateAllItems TheVar
Создал климат MyClimate. Добавил в него 3 своих погоды. Потом в настройках регионов выставил этот MyClimate вместо имеющихся.
Ты ничего не путаешь в терминологии? Климат назначается мирам/ячейкам, регионам назначается погода. В вегасе используются обе эти технологии, плюс периодическое SetWeather/ForceWeather из скриптов... Поясни, что именно ты сделал; то как ты написал - невозможно.
Удалить скрипты, форсирующие погоду или сделать свой?
Именно скрипты не особенно мешают. Но если ты только климатом своим заменял стандартные - поправь вдобавок и регионы. Половина погоды в вегасе контролируется оттуда - GSWeatherRegion [REGN:00123CE3], NVtheStripRegion [REGN:00161243], NVBlackMountainRegion [REGN:0016198B], NVJacobstownRegion [REGN:00164BA5] и т.д. Для верности просто перебери все стандартные погоды и проверь каждую на предмет того, где она используется (всю цепочку - например, NVLucky38PenthouseHazy [WTHR:0012ACE5] привязана к NVLucky38Climate [CLMT:0012A8F7], но вот он нигде не использован, и обоих можно спокойно игнорировать). Те цепочки, которые в итоге приводят к CELL/WRLD - вот их-то и надо перенаправлять на себя.
есть мод(комната, с размещенными в ней статическими объектами), который я делал в GECK для Fallout 3.Как мне перенести этот мод в Fallout NV?Или мне придется все создавать с нуля в GECK для NV?
Минимальные телодвижения - загрузить мод в TES5Edit (назвав его FO3Edit) и поменять в заголовке версию ESP на 1.32.. Даже на 1.34 - вроде вегасовский GECK такую делает.. и там же в заголовке поменять мастера с Fallout3.esm на FalloutNV.esm - и сохранить. Затем загрузить мод в TES5Edit (назвав его на этот раз FNVEdit) и прошерстить на предмет оборвавшихся ссылок - даже статики не все совпадают с тройки на вегас (хотя большинство осталось), лучше проверить. Когда скоропостижные ссылки в TES5Edit выправлены - можно загружать в вегасовский GECK (если сразу - он оборванные ссылки убьёт, не дав починить) и смотреть, всё ли хорошо.
почему очень крупные моды выходят только для ТЕСов?
По поводу "только" - большое яблоко и в самом деле мелочёвка?
По поводу равного уровня инструментария в скроллах и фолаутах - я очень-очень рад тем полезным и интересным возможностям для моддинга, которые добавили фолауты по сравнению с обливионом, но и жертвы на переезде обла-фол были чудовищны, вовсе не ограничиваясь упразднением сапог и мотоциклов. Со скайримом, вероятно, дело обстоит аналогично - мне, увы, хватило бесполых детей, чтобы больше никогда в сторону скайрима не смотреть - наверное, там и что-то добавлено более полезное и удобное чем в фолаутах... Резюмируя: сходство инструментов ещё не значит, что одно не менее привлекательно для моддера, чем другое. Это как сравнительная ремонтопригодность нейлоновой куртки на синтепоне и и курточки же из барана - где-то нейлон прогрессивнее, но двадцать лет спустя барашка всё ещё носят, а пластик давно сгорел в мусорке.
По поводу сайнс фентези... И то, и то фикшн - то есть не документалистика; доля и вкус невероятного отличаются для Перри Мейсона, Митрандира и Джима Кирка, но даже начиная плясать с любого из этих миров, можно свободно добавлять специй по вкусу, перенося центр тяжести на ракурс "другого жанра". Наука не антагонист магии, грань между ними определяется личным "я примерно представляю, как это устроено". Я бы сказал, что разница в мирах скроллов и фолаутов в принципиальной открытости-долгоигручести первых и принципиальной одноразовости вторых. Мир фолаутов лишается смысла при выполнении главного квеста, он весь расходуется на этот квест. Эта ва-банковость - тяжёлый удар по привлекательности мира для моддера.
Вполне можно организовать и игру после мэйн квеста.
Стопудово. Хотя что вашингтонщина, что невадщина проход ГГ переживают как в песне - "пред нами всё цветёт, за нами всё горит" - всегда есть возможность переноса действия куда-нибудь в "Пойнт-Мадре"... Что, впрочем, рождает две проблемы. Во-первых, это ещё-один-фолаутский-мир, а значит, мод ни разу не мелкий. И, во-вторых, тенденция менять ворлдспесы как перчатки очень недружелюбна к небольшим и средним модам.
Есть в GECK такие классы оружия OneHandPistolEnergy и TwoHandRifleEnergy, но используют они "общую" пистолетную и винтовочную анимацию
Не классы оружия, а типы оружейной анимации... Что, казалось бы, ещё ближе к заветной цели... Тем не менее, то, что написано в c:\_Fallout3\Platforms\Common\Code\Fallout Shared\TESActorBase.cpp (вообще-то, совершенно бесполезно знать, как называется этот файл), а там прописаны ровно 11 трёхсимвольных констант под это дело, может быть исправлено практически только с перекомпиляцией исполняемого файла игры. То есть практически не может быть исправлено.