Эта тема предназначена только для помощи, связанной с редактором G.E.C.K.. Все вопросы, касательно модмейкерского дела, прошу сюда - "Помощь по моддингу."
Если вместо ГЕККа запускается белый экран - это из-за ENBшного d3d9.dll в папке игры. Если после одного из обновлений винды при попытке редактирования лица перса или попытке открыть любое оружие стала выскакивать вот такая надпись Assert File: C:\projects\fallout3PC\BSShader\BSShaderManager.cpp(пути могут различаться) Line: 1996 После чего ГЕКК сворачивается. Вопрос решатся запуском ГЕКК через основную игровую видюху. Установленная по умолчанию в настройках интегрированная выдаёт такую ошибку.
сколько "оборотов с секунду" делает скриптовый блок GameMode?
Gamemode должен срабатывать в каждом фрейме, если "скриптоноситель" находится в одной ячейке с игроком. Чем дальше от игрока, тем реже он срабатывает, а может и вообще остановиться. Поэтому, теоретически, число оборотов не превышает FPS, наверное так.
====================== Мод "Нью-Йорк" на русском: https://modgames.net/load/fallout3/addon/new-york-bolshoe-yabloko/34-1-0-1294 Мод "Нью-Йорк" на английском: https://modgames.net/load/fallout3/kvesty/the-big-apple/23-1-0-19771
Gamemode должен срабатывать в каждом фрейме, если "скриптоноситель" находится в одной ячейке с игроком. Чем дальше от игрока, тем реже он срабатывает, а может и вообще остановиться
Чем дальше тем реже??? А конкретную цифру если объект находится в руках ГГ (оружие)? все таки 25 или 30? или что-то другое? а то FPS понятие относительное... Конкретная цифра нужна для расчета движения ProjectileNode'а по кромке клинка. Да такой вот бред
цифра нужна для расчета движения ProjectileNode'а по кромке клинка
Привязывайся к секундомеру. К абсолютному времени, которое не зависит от тормознутости машины вообще, загруженности её в данный момент программами, количества бешеных скриптов в самой игре... Да, когда система тормозит, передвигаться эта искорка будет рывками а ля слайдшоу, но по крайней мере твой бенгальский меч не будет индикатором перегрузки торрента, вертящегося где-то там на заднем плане...
цифра нужна для расчета движения ProjectileNode'а по кромке клинка
Ну да, я сам дурак, неправильно выразился... Смысл такой: собственная анимация модели циклически двигает ProjectileNode по "контрольным точкам" клинка (с этим проблем нет). Нужно сделать чтобы "выстрелы" производились именно в этих точках. То есть в идеале синхронизировать время, которое прописано для появления ProjectileNode'а в "контрольной точке" в NifScope, со временем выстрела которое назначается игрой. Привязаться к таймеру я пробовал, но толи я где накосячил (не силен я в скриптах), толи игра не понимает 4-х знаков после запятой... короче все вообще работать перестало... Подскажи можно ли в реальном времени привязать активатор к конкретно указанному ноду непися? Это бы решило все проблемы...
Изменение репутации для пользователя Spalny_Vagon
Spalny_VagonOffline
Сообщение №2167
написано: 8 марта 2014, 08:49
| Отредактировано: Spalny_Vagon - 8 марта 2014, 08:50
Всем привет. Столкнулся с проблемой: устанавливаю ГЕКК, запускаю его и он начинает плеваться в меня такими ошибками:
EDITOR: Editor ID 'MenuIconEquipType' (00000260) is not unique, previous object (0000025F) is type MICN. Editor ID will be set to 'MenuIconEquipTypeDUPLICATE000'. EDITOR: Editor ID 'MenuIconEquipType' (00000261) is not unique, previous object (0000025F) is type MICN. Editor ID will be set to 'MenuIconEquipTypeDUPLICATE001'. EDITOR: Editor ID 'MenuIconEquipType' (00000262) is not unique, previous object (0000025F) is type MICN. Editor ID will be set to 'MenuIconEquipTypeDUPLICATE002'. EDITOR: Editor ID 'MenuIconEquipType' (00000263) is not unique, previous object (0000025F) is type MICN. Editor ID will be set to 'MenuIconEquipTypeDUPLICATE003'. EDITOR: Editor ID 'MenuIconEquipType' (00000265) is not unique, previous object (0000025F) is type MICN. Editor ID will be set to 'MenuIconEquipTypeDUPLICATE004'
После чего перестаёт отвечать и закрывается. Что это такое и как с этим бороться? -------------------------------------------------17.03.14--------------------------------------------------- Ребята, не молчите, пожалуйста!
И снова здравствуйте граждане. Пара возможно нубских вопросов, но просмотрев несколько обучалок я не нашел вразумительных ответов...
1). Что конкретно делает параметр оружия Sight Usage ?
2). Что конкретно делает параметр оружия Crit Dmg ? увеличивает урон на указанное число единиц (Урон = Damage + CritDmg) увеличивает урон на указанное число процентов (Урон = Damage + Damage x CritDmg / 100) увеличивает урон в указанное число раз (Урон = Damage x CritDmg) нужное подчеркнуть
Всем привет,подскажите пожалуйста.У меня в ГЕККЕ не работает редактор Ландшафта (не изменяет высоту земли,с текстурным редактированием все в порядке)Причем если ставить галочки например на сглаживании или выравнивании то работает,а без них (самостоятельное изменение типа выкопать яму) никак.В чем может быть проблема и как её исправить?
Изменение репутации для пользователя ValLео
ValLеоOffline
Сообщение №2172
написано: 13 апреля 2014, 08:53
| Отредактировано: ValLео - 13 апреля 2014, 08:57
Попробуй приблизить\отдалить поверхность ландшафта, чтобы ячейка локации перегрузилась. Обычно отказ в копке ямы происходит, когда "шаришься" в поисках места, тыкаешься туда-сюда, особенно где-нибудь близко к границе ячейки и ячейка как бы подвисает.
Добавлено (13 Апреля 2014, 13:56) --------------------------------------------- ValLео, Нет всеравно не работает.Я вот думаю может есть какая нибудь кнопка блокирующая эту функцию,я вполне мог что нибудь не то нажать.
если ставить галочки например на сглаживании или выравнивании то работает,а без них (самостоятельное изменение типа выкопать яму) никак. В чем может быть проблема и как её исправить?
Для проверки, делаешь ли ты то, что должно работать. Выбрал ячейку, пошёл в окошко Render, открыл редактор ландшафта, снял галки сглаживания-утаптывания, выбрал радиус например 5, навёл мышку в рендерное окно, прижал левую кнопку и неумолимо потянул мышь вверх или вниз. И поверхность в красном кружочке (не помню по умолчанию стоит ли галка "показывать радиус", я смысла в её отключении не вижу) соответственно вверх или вниз не потащилась?
Изменение репутации для пользователя protecron
protecronOffline
Сообщение №2176
написано: 19 апреля 2014, 15:43
| Отредактировано: trem200 - 19 апреля 2014, 15:51
народ, а почему кто то не может сделать видео уроки что так сложно но или в письменном виде хоть чтобы было так сказать отправная точка по редакторе Geck Когда включаю Geck у меня вылазиет ошибка что делать
Изменение репутации для пользователя ValLео
ValLеоOffline
Сообщение №2177
написано: 20 апреля 2014, 07:10
| Отредактировано: ValLео - 20 апреля 2014, 16:21
кто то не может сделать видео уроки что так сложно
А какой урок Вы ждете? У Васи при запуске "вылазиет" одна ошибка, у Пети - другая, у Коли - третья... И что - для Васи, Пети и Коли нужно делать каждому по видео-уроку? Или все-таки Васе-Пете-Коле лучше сначала почитать, что пишут на форумах, почитать имеющиеся туториалы и попытаться разобраться самому, что, кстати, принесет пользу В-П-К в плане понимания основ моддинга, а уж потом спрашивать про те моменты, которые неясны? По поводу Вашего вопроса: вооружившись англо-русским словарем можно понять из сообщения об ошибке, что у объекта 00000260 его эдитор-айди "MenuIconEquipType" не уникален, поскольку уже имеется объект 0000025F с точно таким же эдитор-айди. Поэтому айди объекта 00000260 "MenuIconEquipType" будет редактором переименовано в "MenuIconEquipTypeDUPLICATE000". Ну а поскольку редактор "неуполномочен" менять что-либо в главном мастер-файле Fallout3.esm - то он и не может сделать переименование у данного объекта и "плюется" сообщениями об ошибках и даже по-просту вылетает. Можно сказать одно - пользуйтесь не пиратской копией игры. Поскольку в "настоящем" мастер-файле объект 00000260 имеет название MenuIconEquipTypeHeadWear, а объект 0000025F называется MenuIconEquipTypeBodyWear. А у Вас в вашем мастер-файле они оба носят короткое название MenuIconEquipType
Изменение репутации для пользователя Pobrodim
PobrodimOffline
Сообщение №2178
написано: 20 апреля 2014, 08:35
| Отредактировано: Pobrodim - 20 апреля 2014, 08:43
Подскажите, можно-ли настраивать вероятность появления у НПС оружия из одного списка? Например, в LeveledItem "RaiderWeaponRifle" задействовано несколько стволов (5). Как сделать, чтобы в 80% случаев рейдерам раздавался один из них, а для остальных стволов вероятность раздачи была (100-80)/4 = 5%? И второй вопрос - по дробовикам. Урон для выстрела, Damage, разделяется по числу дробин - урон меняется в зависимости от того, сколько дробин попало в цель. В случае нанесения критического урона (например - выстрел из сника) значение CritDmg добавляется для каждой дробинки попавшей в цель, или один раз на весь выстрел?
Можно сказать одно - пользуйтесь не пиратской копией игры. Поскольку в "настоящем" мастер-файле объект 00000260 должен иметь название MenuIconEquipTypeHeadWear, а объект 0000025F должен называться MenuIconEquipTypeBodyWear. А у Вас в вашем мастер-файле они оба носят короткое название MenuIconEquipTypeа
А можно просто переименовать эти файлы и всё
Добавлено (20 Апреля 2014, 15:46) --------------------------------------------- Может вопрос будет глупым, но я его задам сколько времени уходит на создания квеста в редакторе geck с базовым уровнем знания редактора
Изменение репутации для пользователя ValLео
ValLеоOffline
Сообщение №2180
написано: 20 апреля 2014, 16:00
| Отредактировано: ValLео - 20 апреля 2014, 16:06
Вдохни… взгляни вокруг, поверь в спасенье, Ведь между злом - песчинки доброты… И вспомни, прочитай в безбрежном небе, Что кто-то дышит, пока дышишь ты...
Возможно ли так сделать, чтобы спавнился один из них рандомно?
Если нужно создавать объекты с причудливым шансом - скажем, в 2% случаев должен появляться первый объект, в 27% второй и в остальных 71% третий, то разумно посчитать шанс вручную при помощи GetRandomPercent по предложенной Spalny_Vagon схеме. Если же шансы условно простые - скажем, в двух случаях из четырёх нужен первый объект, в одном второй и в одном третий - создай левельный объект из двух первых и по одному второго и третьего объекта, назначив им всем первый левел и указав "генерировать случайно один объект из списка", и при помощи PlaceAtMe клади этот левельный объект - он сам превратится в то, что надо. Та же идея, что повсеместное "надеть на NPC одну броньку из вот этих и дать ему одну саблю из вот этих"...
Изменение репутации для пользователя BigBadBoss
BigBadBossOffline
Сообщение №2184
написано: 21 апреля 2014, 17:33
| Отредактировано: BigBadBoss - 21 апреля 2014, 17:37
Ipatow, Да. Мне нужно чтобы каждый раз какой-нибуть артефакт спавнился из газового облака. С одинаковым шансом падения т.е. 33/33/33.
Spalny_Vagon, скрипт работает отлично кроме того места где нужно спавнить рандомно эти вот обьекты. Основу скрипта я взял со скрипта газового облака (того который загорается когда в нём стреляешь или проектиль типа плазмы залетает в него.Называется он TrapGasScript.) Изменил только FormList:ы и добавил PlaceAtme. Попробывал вашу конструкцию. Как появлялся первый так и появляется. Только сейчас скрипт поработав раза 2 перестаёт работать вообще. У вас видимо ошибка в начале скрипта еще. Там где short radnvar перепутаны буквы.
Идея у меня какая. Я создал 3 пистолета "детектора". Снаряды из этих пистолетов должны "взрывать" газовое облако из которого вываливается артефакт. Первый пистолет должен спавнить артефакт только первого уровня т.е. ArtifactTest04. Второи пистолет должен спавнить из газового облака либо ArtifactTest04 либо ArtifactTest05. Третии пистолет должен "спавнить" один из трех артефактов ArtifactTest04, ArtifactTest05 или ArtifactTest06. При взрыве газа всегда должен падать артефакт. Во втором и третьем случае рандомно какоито один. Первый пистолет работает хорошо, всегда падает артефакт. В других случаях только один и тот же тот что в скрипте первее. Я еще раз скрипт выложу. На этот раз Полностью. Посмотрите еще раз пожаилуиста.
Скрипт :
scn MyAnomalyDetectedWithDetectorScript
ref enteringObject
short randvar
begin onHitWith MyDetectorDetectionProjectileList
;ExplodesGasTrapsOnHit is a form list that has every type of weapon fire
and explosion that could potentially ignite a gas trap on contact.
do 5
end
Begin onTriggerEnter
set enteringObject to getActionRef
if (enteringObject.isInList MyDetectorDetectionProjectileList)
placeatme ArtifactTest04 1
do 5
endif
end
ref enteringObject
begin onHitWith MyDetectorDetectionProjectileList02
;ExplodesGasTrapsOnHit is a form list that has every type of weapon fire
and explosion that could potentially ignite a gas trap on contact.
do 5
end
begin onTriggerEnter
set enteringObject to getActionRef
if (enteringObject.isInList MyDetectorDetectionProjectileList02)
placeatme ArtifactTest04 || ArtifactTest05 1
do 5
endif
end
ref enteringObject
begin onHitWith MyDetectorDetectionProjectileList03
;ExplodesGasTrapsOnHit is a form list that has every type of weapon fire
and explosion that could potentially ignite a gas trap on contact.
do 5
end
begin onTriggerEnter
set enteringObject to getActionRef
if (enteringObject.isInList MyDetectorDetectionProjectileList03)
set randvar to getrandompercent
if randvar < 33
placeatme ArtifactTest04 1
elseif randvar >= 33 && <= 66
placeatme ArtifactTest05 1
elseif randvar > 66
placeatme ArtifactTest06 1
endif
;do 5
endif
end
Вдохни… взгляни вокруг, поверь в спасенье, Ведь между злом - песчинки доброты… И вспомни, прочитай в безбрежном небе, Что кто-то дышит, пока дышишь ты...
Graf, Так помоги. Напиши скрипт как надо. Я за год учебы в инсте всё позабыл.
Вдохни… взгляни вокруг, поверь в спасенье, Ведь между злом - песчинки доброты… И вспомни, прочитай в безбрежном небе, Что кто-то дышит, пока дышишь ты...
Я совершенно согласен с вердиктом Graf, но буду слегка многословнее.
Вот это DamageObject на пятёрочку где попало - оно сознательно вписано или просто понравилось, как пишется слово "do"?.. И ведь только ради него в скрипт навтыканы все эти блоки onHitWith...
Многократно вписанный блок onTriggerEnter - ты ожидал, что они все будут работать? Работает только первый подходящий блок - который у тебя положит безвариантный ArtifactTest04 и на этом вся эпопея onTriggerEnter заканчивается, написанным после "end" никто не поинтересуется.
Многократные декларации одной и той же переменной (ref enteringObject) - нехорошо так делать.
"placeatme ArtifactTest04 || ArtifactTest05 1" - ты вообще понимаешь, что делает операция "две палки" (оно же "логическое ИЛИ")?
Гмм.. Если подумать, не всё очень плохо - та часть, что написана Spalny_Vagon, написана вполне грамотно. К несчастью, она находится в последнем из неработающих блоков onTriggerEnter...
Ipatow, Во спс. Разъяснил. Сейчас скрипт доделаю тогда. Если всё как надо будет, то мод сделаю с аномалиями. Пусть и не так как задумывал изначально.
Do5 -это было уже в скрипте с которого я брал базу для своего. Сознательно вписано разработчиками игры Fallout 3. Видимо я скопировал просто его еще 3 раза.
Я сам не с Россий. У меня по скриптингу чисто англииские инструкций. Там написано было что || -это значит "OR". Помню год назад писал скрипт кравта разной фигни для себя. Вот там использовал эту операцию и работала правильно. Думал мб тут сработает, а оказывается нет.
Спс за то что разжевал.
Вдохни… взгляни вокруг, поверь в спасенье, Ведь между злом - песчинки доброты… И вспомни, прочитай в безбрежном небе, Что кто-то дышит, пока дышишь ты...
Да, значит оно именно это. Но сущность-то в том, как это работает. Если написано "set A to B || C" - это не значит "присвойте переменной A значение переменной B или если хотите переменной C", это присвоение переменной A результата операции OR над переменными B и C. Основное использование логических операций - при обработке условий. Например, "if (A > B) || (C < D)" - отличный пример: операции больше/меньше результатом дают истина/ложь, а это самый тот тип данных для логических операций.
if (enteringObject.isInList MyDetectorDetectionProjectileList03)
placeatme ArtifactTest06 1
do 5
endif
end
Проблема в этом :
short radnvar
set randvar to getrandompercent if randvar < 33 placeatme ArtifactTest04 1 elseif randvar >= 33 && <= 66 placeatme ArtifactTest05 1 elseif randvar > 66 placeatme ArtifactTest06 1 endif
; do 5 и т.д.
Либо я неправильно использую эту конструкцию. Либо она просто не работает в самой игре.
Вдохни… взгляни вокруг, поверь в спасенье, Ведь между злом - песчинки доброты… И вспомни, прочитай в безбрежном небе, Что кто-то дышит, пока дышишь ты...