Сталкер Лом 356 Опубликовано 13 Августа 2013 tyrkmen, с уверенностью тебе говорю, что NPC на аномалии в ЗП не реагируют, с минами ситуация аналогична. Смерть от Выброса - surgue_manager.script там есть условие, мол, всех, кто вне укрытий - убить, а далее - ищи то, что тебе нужно. Чтобы оружие выдирать - нужно уроки поглядеть, например, на сайте этого мода, в теме КМБ посмотри, там даже специально для SGM урок написан. Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 14 Августа 2013 (изменено) stalkerok007, если ты своему мутанту прописал класс Бюрера\Контролёра\Полтергейста, то естественно двигатель будет просить "родные" параметры этого класса, допустим, для Бюрера - телекинез, сканирование месности и грави-щит... А ещё соответствующие анимации для этих способностей. Я знаю только одну способность, которую, вроде бы, можно прикрутить ко всем: сбивание прицела (и то это только говор, я лишь на псевдопсе пробовал). Ну, а если ты и класс не менял, то я тебе не советчик... Изменено 14 Августа 2013 пользователем Сталкер Лом Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 14 Августа 2013 Artworth, Что-то статьи не нашёл, привожу часть из моего конфига псевдособаки: ;-----------------------Сбивание прицела--------------------------max_anti_aim = 10anti_aim_timeout = 2 ; сек, ожидание после которого можно снова применить абилкуanti_aim_effectors = effector_monster_hit_1, effector_monster_hit_2, effector_monster_hit_3, effector_monster_hit_4 ; камера-эффекторы, один из которых будет выбран и примененanti_aim_animation = stand_howling_ ;stand_attack_ ; анимация, которая отыгрывается у монстраanti_aim_max_angle = 0.5 ; угол в котором полностью не детектится прицеливание)anti_aim_detection_gain_speed = 0.6 ; скорость детекта прицеливанияanti_aim_detection_loose_speed = 0.05 ; скорость постоянного спадания детекта прицеливания "Вот, собственно, и всё" (с) stalkerok007, мы, наверное, говорим о разных классах. Я говорю о движковых классах например, для Плоти существовали такие: SM_FLESH (такой используется в релизной версии), AI_FLE_G (Для группы), AI_FLESH. То есть, если ты берёшь конфиг от Плоти, то и движковый класс должен быть от Плоти. Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 14 Августа 2013 Artworth, да, нет. Вставляй в конфигурационный файл эту "врезку" и страдай на здоровье . Псевдособака время от времени будет "рыкать" на тебя и у тебя из за этого ствол будет дёргаться. Особо пакостливо выходит, когда одна тебе прицел сбивает, а другая на тебя прыгает... Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 15 Августа 2013 azrael1325, да не "скорее всего", а так и есть. Мы (Мододелы) используем классы, которые до нас сделали GSC, это наш удел. Пока. Хотя в двигателе уже кое-что меняли (Я говорю о X-ray Extentions и Cut X-Ray Mod), но делается это всё трудно и по аналогии с чем-то, а не с нуля, так что, "пользуйтесь тем, шо есть" (с). Новый класс сделать можно, но для этого нужны познания в двигателе и информация о других классах, дабы сделать что-то, хотя бы, на основе уже имеющегося, мол, "от всего понемногу", тогда результат будет. Но опять же, это, пока, не для нас. Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 29 Августа 2013 (изменено) Buck81, он? Если да, то не отвечай: не флуди . ----------------------------------------------------------------------------------- -- Sidor etc binding ----------------------------------------------------------------------------------- function bind(obj) local new_binder = trader_object_binder(obj) obj:bind_object(new_binder) end ------------------------------------------------------------------------------------ class "trader_object_binder" (object_binder) function trader_object_binder:__init(obj) super(obj) self.loaded = false end function trader_object_binder:reload(section) object_binder.reload(self, section) end function trader_object_binder:reinit() object_binder.reinit(self) db.storage[self.object:id()] = { } self.st = db.storage[self.object:id()] end function trader_object_binder:update(delta) object_binder.update(self, delta) -- Апдейт торговли if self.object:clsid() == clsid.script_trader then trade_manager.update(self.object) end local st = db.storage[self.object:id()] if st ~= nil and st.active_scheme ~= nil then xr_logic.try_switch_to_another_section(self.object, st[st.active_scheme], db.actor) end if self.st.active_section ~= nil then xr_logic.issue_event(self.object, self.st[self.st.active_scheme], "update", delta) end end function trader_object_binder:net_spawn(sobject) if not object_binder.net_spawn(self, sobject) then return false end local on_offline_condlist = db.storage[self.object:id()] and db.storage[self.object:id()].overrides and db.storage[self.object:id()].overrides.on_offline_condlist if on_offline_condlist ~= nil then xr_logic.pick_section_from_condlist(db.actor, self.object, on_offline_condlist) end if not self.object:alive() then return true end if alife():object(self.object:id()) == nil then return false end db.add_obj(self.object) if self.object:clsid() == clsid.script_trader then self.object:set_trader_global_anim("idle_spinka") smart_terrain.setup_gulag_and_logic_on_spawn( self.object, self.st, sobject, modules.stype_trader, self.loaded) end return true end function trader_object_binder:net_destroy() xr_sound.stop_sounds_by_id(self.object:id()) local st = db.storage[self.object:id()] if st and st.active_scheme then xr_logic.issue_event(self.object, st[st.active_scheme], "net_destroy") end if db.offline_objects[self.object:id()] then db.offline_objects[self.object:id()].level_vertex_id = self.object:level_vertex_id() db.offline_objects[self.object:id()].active_section = db.storage[self.object:id()].active_section end db.del_obj(self.object) db.storage[self.object:id()] = nil object_binder.net_destroy(self) end function trader_object_binder:net_save_relevant() return true end function trader_object_binder:save(packet) set_save_marker(packet, "save", false, "trader_object_binder") object_binder.save(self, packet) xr_logic.save_obj(self.object, packet) if self.object:clsid() == clsid.script_trader then trade_manager.save(self.object, packet) end set_save_marker(packet, "save", true, "trader_object_binder") end function trader_object_binder:load(reader) self.loaded = true set_save_marker(reader, "load", false, "trader_object_binder") object_binder.load(self, reader) xr_logic.load_obj(self.object, reader) if self.object:clsid() == clsid.script_trader then trade_manager.load(self.object, reader) end set_save_marker(reader, "load", true, "trader_object_binder") end Изменено 29 Августа 2013 пользователем Сталкер Лом Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 10 Сентября 2013 buck81, Есть такое. Поиск почаще используй, тот же Яндекс... http://rghost.ru/48667589 Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 17 Сентября 2013 Здравствуйте, товарищи. Я тут в ПДА задумал кнопочки прикрутить, которые будут функционировать в режиме просмотра карты: сделал ГУИ, который запускается вместе с открытием вкладки "карта", но из за него весь ПДА "отключался" - он переставал функционировать, хотя кнопки при наведении ни них курсором реагируют. Сначала решил, что это из за того, что у меня "статик-элемент" от ГУИ растянут на весь экран - уменьшил его, но всё осталось так же... Это значит, что ГУИ перекрывает все позади него стоящие элементы? Так? FEET, если анимпоинт "последний" по номеру, то с него и будет уходить NPC, потому как, при доступности новой работы, перерасчёт работ для NPC из смарта не происходит - уходит на "новую" работу только NPC с самой последней, по счёту, работы. Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 20 Октября 2013 Transcend, после начала игры, симуляция начинается ровно через час. В simulation_object_props.ltx настрой свои смарты по аналогии с уже имеющимися, в конфигах смартов укажи максимальное значение "вместимости" и всё, коли в скриптах Болота зарегистрированы. Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 6 Января 2014 (изменено) slayer_kch, Перейди на статическое освещение и поставь погоду Map - должно помочь. ммихаилл, ты будь повежливее с людьми, тебе сказали ровно столько же, сколько и всем давалось сначала: образец, статью и устное предписание. Все так начинали (кроме тех, кто был первым - у тех вообще ничего не было), если тебе нужно, то тебе этого должно быть достаточно. Пробуй. Спавнить с начала Новой Игры нужно, в ЗП, так: в simulation.ltx ищи секцию [start_position_<тех. название твоей локации>] и ниже вписывай <Твой сквад> = <имя смарта, на котором нужно спавнить>. Это, как уже сказали выше, и для NPC, и для мутантов. Изменено 6 Января 2014 пользователем Сталкер Лом Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 10 Января 2014 Здравствуйте. Не подскажете проверку на то, что оружие выстрелило? По-моему, где-то это в состоянии оружия проверяли, да позабыл... Заранее спасибо. Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 10 Января 2014 Скриптовая проверка, после которой запускается функция. Что то вроде If xr_conditions.weapon_shoot() then ... end P.S. Проверка "от балды" написана. Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 14 Января 2014 Clayman, Ну, я это понял так, что если в возможных целях сквада указать и ГГ, то они будут стремиться в место, где он стоит. Допустим, такое есть у мутантов: если ГГ ближе 150м, то можно пойти и попробовать немного покусать его. У неписей враждебных группировок есть такое же. Для ощущения пущей враждебности было сделано, наверное: чутьё у мутантов, перехватчики сигналов ПДА у неписей и в таком же духе, что может подумать игрок... Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 16 Января 2014 Clayman, выходит, что так. По крайней мере я частенько замечал, что когда я прохожу мимо мутантов, то они начинают следовать за мной... Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 18 Января 2014 Запомни правило: чтобы экспортировать модель из милки в формат СДК (.object) нужно в конце имени файла указать расширение, т.е. .object иначе у тебя файл не сохранится. А вот в СДК уже, после настройки модели, можно будет сконвертить в .ogf . Да, прежде чем экспортировать в ОГФку настрой кости, хотя бы шейпы, либо подгрузи их из библиотек СДК ( по пути rawdata\objects\dynamics\actors будет файл stalker.bones). P.S. Думаю, что плагины импорта\экспорта для милки у тебя уже стоят... Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 18 Января 2014 Зажимаешь правый Shift и одну из кнопок мыши и будет тебе перемещение\вращение камеры. А сами модели в СДК крутятся только при спавне, либо расстановки на локации. P.S. С нашим интернетом я тебе не то что СДК не скину - даже на видеообзорчик не хватит скорости... Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 19 Января 2014 Если вылет при переходе Петрухи в онлайн, то у тебя, скорее всего, не настроены шейпы. Если вылет при попытке поговорить с ним, то это не моделька виновата. И прикрепляй к сообщению лог (последние его 10-15 строк) под спойлер - он поможет найти причину. Вот алгоритм настройки модели в Actor Editor: 1. Подгружаем модель.object, переходим во вкладку bones и нажимаем ниже кнопку load. 2. Идём по пути editors\rawdata\objects\dynamics\actors и выбираем stalker_1.bones (можно и stalker.bones - я разницы не видел, кроме даты создания файла, возможно _1 с правленными костями...). 3. Кости готовы. Теперь идём во вкладку object и в окне ниже ставим галки у Make Progressive и HQ Geometry (ставить при условии, что у тебя стоит фикс сглаживания для СДК ЗП, иначе от этого пункта толку не будет) и в меню User Data вписываем #include "models\capture\stalker_neutral_2.ltx", так как у нас Путруха в Заре. 4. В Surfaces настраиваем материалы для модели (не обязательно). 5. Во вкладке Motions в пункте Motion references укажи галочкой следующие пикеты анимаций в каталоге actors: stalker_anomation , stalker_scenario_anomation , stalker_scripts_anomations и stalker_smart_cover_anomation . 6. Теперь экспортируем модельку. Придётся малость подождать, пока пройдут процессы Make Progressive и HQ Geometry. После проверяй. P.S. Названия анимаций могут содержать ошибки: на память писал - но они там есть, "Мимо не пройдёшь". Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 19 Февраля 2014 Здравствуйте, не могу понять момент: Мастерю матюгальник, ставлю ему в логику такое условие on_info2 = {=check_smart_alarm_status(escape_roadblock:alarm)} ph_sound@alarm но игра вылетает с логом [error]Expression : !m_error_code [error]Function : raii_guard::~raii_guard [error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp [error]Line : 748 [error]Description : ... - Зов Припяти\gamedata\scripts\xr_conditions.script:615: attempt to index local 'smart_control' (a nil value) Мол, не может найти смарт (хотя он есть), но это ещё "ладно", я понять не могу следующее: Игра жалуется на то, что локальная smart_control равна nil, но ведь выше есть "затычка": if smart_control == nil then abort("Cannot calculate 'check_smart_alarm_status' for smart %s", tostring(smart_name)) end Это как? Почему всё-таки вылет идёт? ммихаилл, В логику непися ставишь такую конструкцию: on_info = {=actor_in_zone(Имя_твоего_рестикора)} %=actor_enemy% Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 23 Марта 2014 (изменено) Здравствуйте. Руки добрались до стационарного пулемёта на блокпосте вояк. Задаю логику пулемёту: [logic] active = ph_idle [ph_idle] auto_fire = false on_info = {=dist_to_actor_le(100) +esc_minigunner} ph_minigun@actor [ph_minigun@actor] fire_angle = 150 track_target = true target = actor fire_range = 100 fire_repeat = 5 fire_time = 5 auto_fire = true on_info = {-esc_minigunner} ph_idle@stop on_info2 = {=dist_to_actor_ge(100)} ph_idle@stop shoot_only_on_visible = false [ph_idle@stop] auto_fire = false on_info = {=dist_to_actor_le(100) +esc_minigunner} ph_minigun@actor on_info2 = {-esc_minigunner} ph_idle Но при приближении к пулемёту ловлю вылет: FATAL ERROR [error]Expression : !m_error_code [error]Function : raii_guard::~raii_guard [error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp [error]Line : 748 [error]Description : ....r. - Зов Припяти\gamedata\scripts\ph_minigun.script:65: attempt to index field 'mgun' (a nil value) Скрипт оригинальный, из ЗП. Заменял его на версию ЧН - тоже самое. Кто-нибудь вообще делал пулемётные турели в ЗП? Работали ли? Изменено 23 Марта 2014 пользователем Сталкер Лом Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение
Сталкер Лом 356 Опубликовано 3 Апреля 2014 Ezio_Auditore900, ПНВ можно включить при одетом шлеме, либо броне, если в их секции описаны эффекты ПНВ. Броня и шлемы построены на своих классах, а артефакты на своих - какие особенности есть у одного, то может отсутствовать в другом классе и просто так параметры от одного класса в задействовать другом, без правок в двигле игры, не получится. Но это не значит, что нельзя сделать эффект ПНВ при нахождении артефакта на поясе... Если интересно, как скриптово это сделать - стучи в ЛС, а то там нужно уточнять детали. 2 Работы на Artstation - https://www.artstation.com/artist/stalker_lom Поделиться этим сообщением Ссылка на сообщение