Модератор форума: КсюXa, ApeX  
Форум » Fallout 3 » Мастерская » Помощь по G.E.C.K. (Помощь по редактору)

Помощь по G.E.C.K.
КсюXa  Offline  Сообщение №1 написано: 25 сентября 2010, 10:57


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


Внимание!


Эта тема предназначена только для помощи, связанной с редактором G.E.C.K..
Все вопросы, касательно модмейкерского дела, прошу сюда - "Помощь по моддингу."

Тема по GECK раздела New Vegas



Veldion  Offline  Сообщение №1801 написано: 23 августа 2013, 08:15



268
Refusepit спасибо, но во первых OnHit врага вообще не вариант поскольку (число тех кто может быть врагом) х (число возможных видов применяемого оружия) = (короче КОШМАР), а во вторых важен как раз процесс, я любитель "типа реализма" чтобы модель оружия +/- соответствовала мощности и скорострельности, а модель брони защите....

Цитата Galko

Через переменные, "вычисляющие" цель

подскажи пожалуйста можно ли в таком случае назначить в качестве CombatTarget (как бы бредово не прозвучало) конкретную часть тела врага?.. чтобы потом использовать UseWeapon или что-то в этом роде...

refusepit  Offline  Сообщение №1802 написано: 23 августа 2013, 11:35



650
Но если важен сам процесс, тогда вообще никак. Посмотри окошко UseWeapon:



никак ты в нем не задашь часть тела. В настройках Combat Style тоже нет ничего подобного.

И killАctor - это тоже результат, а не процесс (я его использование и имел в виду, когда писал, но не стал входить в подробности, не зная востребованности идеи). "Убийца" в нем - это параметр для последующего определения ("Холмс, но кто же убил этого бедолагу? - Элементарно, Ватсон, дедуктивный метод bedolagaRef.isKiller player == 1 говорит о том, что убийца - игрок"), а не "руководство к действию" для назначенного убийцы в момент убийства.

Tipoksfall  Offline  Сообщение №1803 написано: 23 августа 2013, 11:56



73
https://modgames.net/load/32-1-0-1298  Мод Big Town Overhaul.  Там NPC и зверюки сквозь стены бегают как к себе домой, загрузил в гекк, но увы я особо не разбираюсь в нем. Посмотрел на примере стен по периметру как парадиз-фаллс. Вроде тоже самое. Collision markers (transparent) и стандартные заграждения (static), но через них по дороге параллельной выходу и просто сквозь забор все кроме меня проходят. Также npc выходят на патруль за пределы города, а потом возвращаются в город по дороге через забор. В gecke я этот patrol почему-то не нашел. Там другой набит, а он не ведет по этому маршруту. Подскажите в чем дело.

refusepit  Offline  Сообщение №1804 написано: 23 августа 2013, 13:13



650
Tipoksfall, НПЦ (но не игрок!) ведь ходят по Navmesh'у - специально создаваемой невидимой в игре поверхности.
Честно говоря, не знаю, совершенно ли они плюют на коллизию, если прямо сквозь нее проложен "навмеш", но теоретически - да, если есть "навмеш", значит, это путь, а не препятствие.

Tipoksfall  Offline  Сообщение №1805 написано: 23 августа 2013, 15:50 | Отредактировано: Tipoksfall - 23 августа 2013, 16:26



73
Да мод то нормальный, в том и дело что может я не туда смотрю, но не увидел навмешей сквозь стену. Там есть только один круговой по центру города и все. Через стену пробегают и зверюки, но они же не по навмешу идут. Также когда неписи преследуют например яо-гая, то они тоже пробегают сквозь забор. Это тоже явно не по навмешу.
Вот скриншот http://savepic.su/3039057.jpg
Навмеш по центру, через точку один пробегают все. Через точку 2 видел как подошел к забору радскорпион, потолкался и прошел сквозь стену. Через точку 3 у меня прибежал яо-гай так как догонял одного типка из другого мода, потом пробежал через 1. Все кинулись за ним через 1, завалили на нижнем домике, а потом через 1 вернулись.
Точка один у меня уже маленького модифицирована, не обращает внимания.
Collision marker ведь на животных действует?
Блин, походу я понял что такое навмеш (щелкнул Navmesh editing), надо все красные треугольнички удалить которые под заборы заходят. Сделаю, мне это не сложно.

Есть ли хоткей чтобы прям в окне редактора откопировать уже существующий объект?

Galko  Offline  Сообщение №1806 написано: 23 августа 2013, 16:50 | Отредактировано: Galko - 23 августа 2013, 17:37


GALAктическая мартышка


Цитата Tipoksfall

Есть ли хоткей чтобы прям в окне редактора откопировать уже существующий объект?


В окне рендера...
Contrl+D - дублирует выделенный объект. Дополнительные операции не нужны. После нажатия комбинаций клавиш - объект продублируется и возникнет точно на том же месте, что и оригинал и будет выделен. Остается только мышкой передвинуть его в нужное место.
Contrl+C - копирует выделенный объект
Contrl+V - вставляет скопированный объект (в этой же ячейке или в любую другую)
Копированием объекта нужно пользоваться аккуратно, возможно, что скопируется часть "навешенных" на этот объект всяких разностей. Лучше объект дублировать. Тогда будет "чистый" дубликат, с которым можно делать что угодно.
Если нужна копия базового объекта из окна объектов - то просто открываешь его и меняешь ID. Нажимаешь ОК и на вопрос о создании нового объекта тоже отвечаешь ОК. Получится полная копия, но только со своим уникальным ID
примечание: Базовые навыки в ГЕКК

Ваше счастье, что я не ваше счастье
Tipoksfall  Offline  Сообщение №1807 написано: 23 августа 2013, 19:10



73
Спасибо!

Quazar  Offline  Сообщение №1808 написано: 24 августа 2013, 05:50



446
Цитата Tipoksfall

надо все красные треугольнички удалить которые под заборы заходят.

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

Добавлено (24.08.2013, 09:50)
---------------------------------------------
вопрос к скриптерам (и не только): есть такой мод "переносная лампа", хороший мод но я его хотел доработать для себя - сделать так чтобы лампа хавала батарею не каждый раз как ты ее зажигаешь, а только через какоето время (через сутки например). так в процессе решения столкнулся с таким вопросом: как мне можно сохранить время если я выключил лампу раньше 24 часов и она не используется? в смысле, допустим включил я лампу, слетела батарейка с инвентаря, прошло 12 часов, потом я ее отключаю и включаю через какое время, но в расход идет уже то время что осталось (лампа дорабатывает оставшиеся 12 часов)...


Spalny_Vagon  Offline  Сообщение №1809 написано: 24 августа 2013, 08:21


Мастер


Цитата QuazarX

атарею не каждый раз как ты ее зажигаешь, а только через какоето время


Есть глобальные переменные, отвечающие за время. Например, gamedayspased. С ее помощью обычно организуют счетчики времени. Лампа включена - счетчик тикает, лампа выключена, счетчик остановлен.
Ну, где-то примерно так:
Код
scn FlashlightScript

float FissionCharge    ;остаток  
float timer     
float DeltaT
short LightOn
ref Light

begin onLoad
set Light to getlinkedref
end

begin onactivate
  if LightOn == 0                              ;если свет не включен
   if FissionCharge > 0         ;если батарея еще не разряжена полностью
    set LightOn to 1                              ;включить
     ligth.enable                              ;свет
    set timer to gamedayspassed     ;засечь время
   else                              ;если батарея полностью разряжена
    if player.getitemcount FissionBattery > 0  ;если у игрока есть запасная батарея
     player.removeitem FissionBattery 1  ;вставить батарею
     set FissionCharge to 1       ;зафиксировать полный заряд  
     ligth.enable                              ;включить
     set LightOn to 1         ;свет
     set timer to gamedayspassed    ;засечь время
    else                              ;если нет запасной батареи
;    showmessage [no fussion battery]   ;сообщить игроку "нет запасных батарей"
    endif
   endif
  else                              ;если свет включен
   set LightOn to 0                              ;выключить
   ligth.disable                              ;свет
  endif
end

begin gamemode
  if LightOn                              ;если свет включен
   if FissionCharge > 0         ;если батарея еще не разряжена полностью
    set DeltaT to gamedayspassed - timer   ;уменьшается
    set FissionCharge to FissionCharge - DeltaT    ;заряд батареи
   else                              ;если батарея полностью разрядилась
    set LightOn to 0                              ;выключить  
    ligth.disable                              ;свет
;   showmessage [need to insert new battery]    ;сообщить игроку о "батарея разрядилась"
   endif
  endif
end

Такой скрипт должен висеть на самой лампе. Источник света прилинкован к лампе и предварительно задисеблен. Как недостаток можно отметить то, что этот скрипт будет крутиться в каждом фрейме, а так же то, что если батарея полностью разрядилась, а игрок был в другой ячейке, то он может заметить момент отключения света при загрузке.

======================
Мод "Нью-Йорк" на русском: 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
Veldion  Offline  Сообщение №1810 написано: 24 августа 2013, 10:02



268
Спасибо всем за помощь!

Quazar  Offline  Сообщение №1811 написано: 24 августа 2013, 10:59 | Отредактировано: QuazarX - 24 августа 2013, 11:07



446
Цитата Spalny_Vagon

Такой скрипт должен висеть на самой лампе. Источник света прилинкован к лампе и предварительно задисеблен.

ага...тогда продолжение вопроса: а скрипт будет работать если я возьму лампу в инвентарь? она же ведь все-таки "переносная"...точнее при взятии в инвентарь активатор дисейблится и добавляется лампа как misc. при зажигании активатор вызывается через placeatme..может квестовым скриптом это можно като сделать?

Spalny_Vagon  Offline  Сообщение №1812 написано: 24 августа 2013, 16:13


Мастер


Цитата QuazarX

может квестовым скриптом это можно като сделать?


Наверное можно. Хотя, не исключено, что и обычным тоже можно обойтись. Нужно только переменные хранить в другом месте. Сделать их или глобальными, например. И для переносной лампы меню, скорее всего, понадобиться - зажечь, потушить, убрать в рюкзак. Каждый раз создавать рядом с собой новый активатор не рационально, проще двигать с места на место один и тот же (Moveto player). Точно так же можно двигать и источник света, кстати.

======================
Мод "Нью-Йорк" на русском: 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
Quazar  Offline  Сообщение №1813 написано: 26 августа 2013, 16:09



446
Spalny_Vagon, а можете подсказать еще по двум вопросам. 1. как можно определить что пистолет заряжен? 2. и если не заряжен то можно как-то добавить ему патроны без проигрывания анимации перезарядки?

з.и. это я все работаю над идеей самозарядного пистолета, я об этом писал выше...

Spalny_Vagon  Offline  Сообщение №1814 написано: 26 августа 2013, 17:16


Мастер


Цитата QuazarX

1. как можно определить что пистолет заряжен? 2. и если не заряжен то можно как-то добавить ему патроны без проигрывания анимации перезарядки?


Нет, про такое я не слышал.

======================
Мод "Нью-Йорк" на русском: 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
refusepit  Offline  Сообщение №1815 написано: 26 августа 2013, 21:33



650
Дорогая Америка, не поможешь ли ты мне с этими чертовыми "конверсациями"?

Вот хочу я, чтобы, как в Вегасе, напарник говорил мне, когда у него кончаются патроны. Что я для этого делаю:
1. Создаю в квесте конверсацию "У меня кончились патроны". Ни условий, ничего, просто запись в конверсациях, приоритет 100.
2. Напарнику пишу в скрипт:

begin onStartCombat

if патроны кончаются
    startConversation player convId
endif

3. Иду тестово драться, отняв у напарника патроны.

Он мне говорит: "Привет! Рад тебя видеть!". Приятно, конечно, но почему не "У меня кочаются патроны"? Что за неуместная вежливость?

Ipatow  Offline  Сообщение №1816 написано: 26 августа 2013, 21:53



Цитата refusepit

startConversation player convId

StartConversation:
Use the function to force a conversation between two NPCs, starting with a specified topic.
If called on an NPC who is in combat with the player, won't start conversation with the chosen topic but with the GREETINGS topic.

У меня нормально напарники между собой треплются... И на здоровье жалуются, и на нехватку патронов, и что босс давно не кормил... И из-под HELLO, и из-под IdleChatter - даже не возникало потребности специально тему для болтовни им задавать.

refusepit  Offline  Сообщение №1817 написано: 26 августа 2013, 22:23 | Отредактировано: refusepit - 26 августа 2013, 22:29



650
Эм... Раз тут у нас курсы английского для "тех, кому за" - это вот: "If called on an NPC who is in combat with the player, won't start conversation with the chosen topic but with the GREETINGS topic" означает, что "Если вызванный НПЦ находится в бою... гм... с игроком?... конверсацию надо вызывать из GREETINGS, а иначе нифига работать не будет"? :)

И, до кучи, вот это:

StartConversation player, ForceGreetTopic ref.joe ref.player [headtrack=1][allow movement=0]

что такое: ref.joe, ref.player? Что за "реф - точка"? У меня на нее ругается!

В принципе, поскольку напарник должен это сказать в воздух, можно поставить npcRef.startConversation npcRef greetingId ? Тихо сам с собою, так сказать?

Ipatow  Offline  Сообщение №1818 написано: 26 августа 2013, 22:36



Цитата refusepit

тут у нас курсы английского

В цитате сказано именно "сражается с ГГ", но моё мнение - неважно с кем; если NPC воюет, то какую бы тему ты ни пытался запустить, разговор начнётся с GREETING. Но это из раздела примечаний - а ключевой момент тут тот, что Conversation это не диалог с ГГ. Разговоры с ГГ - на закладке Topics.

Я бы предположил, что для твоих целей - проинформировать ГГ о чём-то, не начиная полноформатный диалог - правильнее использовать SayTo.

Tipoksfall  Offline  Сообщение №1819 написано: 27 августа 2013, 02:37



73
Пара вопросов по этому же моду https://modgames.net/load/32-1-0-1298 Big Town Overhaul
1) Почему на месте удаленных деревьев стоят какие-то 'деревца' из 4 граней в низком разрешении сквозь которые можно проходить и как их убрать? На этом моде в городе есть.
2) Заметил ночью в большом городе глюк от свет бочек стоящих на земле. На стены свет отбрасывают, а на землю нет. Подходишь поближе ничего, наводишь прицел на бочку - свет появляется, отводишь - исчезает. Еще один момент, походу там где стоят бочки, одна стандартная как в игре и одна на входе, автор мода понижал уровень земли, потому что центральная бочка висела в воздухе достаточно ощутимо. Поставил бочку в другом месте на дороге, где высота явно не затрагивалась - там все ок, а тут нет. Что это такое и что делать?

Ipatow  Offline  Сообщение №1820 написано: 27 августа 2013, 03:08



Цитата Tipoksfall

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

Проблемы с освещением земли - дефект игрового движка, тем более заметный, чем темнее. Чтобы было не очень заметно, авторы игры специально сделали очень светлые ночи...

refusepit  Offline  Сообщение №1821 написано: 27 августа 2013, 05:13



650
Ipatow, да, цель именно такова - выбросить в воздух реплику без продолжения, обязательно с субтитром, ибо озвучки всех этих фраз нет и не предвидится. Пробовал и SayTo, и Say - вообще ничего не происходит. При стартКонверсацион есть хоть какая-то реакция.
Однако, с учетом новой информации - о расположении реплики в "гритингсах" - попробую СайТо, как до гекка добреду. Спасибо.

DragonModNet  Offline  Сообщение №1822 написано: 27 августа 2013, 08:42



1
подскажите где можно скачать
готовую 3D модель
(оружие или броню одежду) если
знаете напишите мне в ЛС.

refusepit  Offline  Сообщение №1823 написано: 27 августа 2013, 08:53



650
DragonModNet, если любую-абы-какую, то тут полно модов в разделе файлы, а к ним - модели.

Galko  Offline  Сообщение №1824 написано: 27 августа 2013, 15:04


GALAктическая мартышка



Ваше счастье, что я не ваше счастье
refusepit  Offline  Сообщение №1825 написано: 28 августа 2013, 08:39 | Отредактировано: refusepit - 28 августа 2013, 10:59



650
Дорогая Америка, что-то я уже голову сломал, давай вместе подумаем?
Тема размышлений такая: можно ли отследить убийство/повреждение конкретным (т.е. на него можно повесить и скрипты, и эффекты, и что угодно) НПЦ других (уже не конкретных, любых!) НПЦ, кроме как эффектом на оружие, которым вооружен наш конкретный НПЦ?

Т.е. можно ли создать на НПЦ, его броне, вещи, добавляемой в его инвентарь (по onAdd) что-то, что будет свистеть - "он убил (попал, произошел onHit)" - но НЕ на оружии?

PS. На всякий случай поясню, зачем это - вдруг есть вообще не связанное с попаданиями решение: это для начисления игроку экспы за убитых напарником врагов. Сейчас это у меня эффект на винтовке, соответственно, напарник всю игру вынужден бегать с ней и только с ней, а все разнообразие оружия в игре - псу под хвост, хны, хны! :)

Ipatow  Offline  Сообщение №1826 написано: 28 августа 2013, 11:15



Цитата refusepit

Тема размышлений

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

refusepit  Offline  Сообщение №1827 написано: 28 августа 2013, 11:36



650
Ipatow, убедил. Душераздирающая картина! :)

Попробую утешиться маленькой плюшкой: а вот как в скрипте определить уровень сложности текущей игры? Там ведь для каждого уровня свои множители к опыту - а критерий их применения я не нашел. Мало того, что напарник всю игру бегает с одной винтовкой, так еще на "хардкоре" опыт с нее получает, как с "нормала". Должна же быть хоть какая-то справедливость в Америке, а?! :)

Ipatow  Offline  Сообщение №1828 написано: 28 августа 2013, 19:57



Цитата refusepit

как в скрипте определить уровень сложности текущей игры?

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

Tipoksfall  Offline  Сообщение №1829 написано: 28 августа 2013, 23:10 | Отредактировано: Tipoksfall - 28 августа 2013, 23:18



73
Подскажите пожалуйста, как вернуть изначальное значение, которое было в esmе. Например: берется fallout.esm, на его основе делается мод, там правится один package из fallout.esm, теперь над ним горит звездочка, мол подвергался корректировке. Как при активированном плагине вернуть изначальное состояние какого либо form id или base id в котором объект находится в esmе?
Или только зачистить все удалением через FO3Edit? Не гавкнется чего-нибудь тогда из-за этого? (В смысле: человеку было делать нечего, он например на стандартные ящики навешал флаги квестовый, подкорректировал, но не критично, пакеты в большом городе и прочее подобное по мелочи).

Ipatow  Offline  Сообщение №1830 написано: 29 августа 2013, 00:28



Цитата Tipoksfall

как вернуть изначальное значение, которое было в esmе

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

При помощи GECK тоже можно удалить объект из патча (то есть отменить вмешательство этого патча в этот объект). В диалоге, перечисляющем загружаемые патчи, есть кнопка Details - которая показывает список объектов патча (не требуется ничего загружать в GECK - это всё доступно уже тогда, когда ты только размышляешь "а не загрузить ли мне что-нибудь?"). В этом окошке работает кнопка Delete - которая включает/выключает флаг Ignore на выбранном мышкой объекте. Объект с таким флагом не будет загружен ни в игру, ни в GECK - загрузка патча с игнорируемыми объектами как активного и немедленное сохранение патча приведёт к исчезновению из патча этих объектов.

Форум » Fallout 3 » Мастерская » Помощь по G.E.C.K. (Помощь по редактору)
Поиск:





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