Перейти к содержанию

Рекомендуемые сообщения

 
 
32 минуты назад, CiberZold сказал:

на модельку гражданского зомби натянуть модельки военных,

Это нужен спец по моделькам, моих знаний тут не хватит... Давно как то сделал модельку крысиного волка из отменённого Сталкер 2,  подогнанную под чуть увеличенный скелет тушкана, но вот человека кто бы смог привязать модельку на скелет так и не нашёл, тут то же самое,  нужен специалист.
А так да, смысла нет ставить ЗПешного зомби, ты всё  верно описал, если убрать из его инвентаря весь спавн с оружием, он становится просто истуканом. Сейчас попробовал, гражданские встают как влитые, и работают прекрасно, а ЗПешный, при переключении секции на агр, с оружием начинает стрелять. а если убираешь спавн из профиля. то просто истукан...
Задача была просто разнообразить население лабы для зачистки, чтоб не куча одного и того же...
 

 

Изменено пользователем Policai

Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
4 минуты назад, Policai сказал:

Это нужен спец по моделькам, моих знаний тут не хватит.

ну да ,ну все равно у тебя опыт моделирования больше, чем у большинства здесь)

6 минут назад, Policai сказал:

А так да, смысла нет ставить ЗПешного зомби,

этот вариант подойдёт для каких-то замудрённых сюжетных моментов, например был мирный зомби-нпс безоружный на базе, игрок с ним торговал, разговаривал, выполнял квесты, а потом неожиданный поворот в сюжете, или выбрав не тот диалог, этот зомби решит напасть на игрока и загрызть, забить ГГ голыми руками:u1F603:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Народ! а как принудительно заставить зомби идти на ГГ. даже если у него нет оружия??? Что прописать в последнюю секцию?
Сейчас логика у меня выглядит так:
 

Спойлер

 

[logic@mil_vive5_zombied_5]
suitable = {=target_squad_name(mil_vive5_zombied_1_squad) true
active = walker@mil_vive5_zombied_5
prior = 200
post_combat_time = 0,0

[walker@mil_vive5_zombied_5]
path_walk = zombied_5_walk
path_look = zombied_5_look
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
on_info = {-teleport_npc_mil_vive5_zombied_5} %=teleport_npc(mil_vive5_zombied_5_walk) +teleport_npc_mil_vive5_zombied_5%
on_info2 = {+viv_door_barokamera7r_open} walker@attack_5

[walker@attack_5]
path_walk = zombied_5_walk
path_look = zombied_5_look
combat_ignore_cond = false

 

Мне кажется она работает неправильно, всё равно, даже если  у него нет оружия, он как то должен реагировать на ГГ, он же зомби по сути,  а не стоять истуканом. 

Изменено пользователем Policai

Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Здравствуйте, не могу исправить вылет после создания смарт-террейнов. Вот лог:

Спойлер

CRIPT RUNTIME ERROR
stack traceback:
    [C]: in function 'gsub'
    ...l.k.e.r. - call of prypyat\gamedata\scripts\utils.script:469: in function 'get_scheme_by_section'
    ... - call of prypyat\gamedata\scripts\gulag_general.script:905: in function 'add_exclusive_job'
    ... - call of prypyat\gamedata\scripts\gulag_general.script:855: in function 'load_job'
    ... - call of prypyat\gamedata\scripts\smart_terrain.script:410: in function 'load_jobs'
    ... - call of prypyat\gamedata\scripts\smart_terrain.script:160: in function <... - call of prypyat\gamedata\scripts\smart_terrain.script:142>
 
FATAL ERROR
 
[error] Expression    : !m_error_code
[error] Function      : raii_guard::~raii_guard
[error] File          : C:\projects\xray-16\src\xrScriptEngine\script_engine.cpp
[error] Line          : 569
[error] Description   : ...l.k.e.r. - call of prypyat\gamedata\scripts\utils.script:469: bad argument #1 to 'gsub' (string expected, got nil)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 час назад, Policai сказал:

как принудительно заставить зомби идти на ГГ. даже если у него нет оружия???

если есть возможность посмотри где-то конфиги логики и скрипты на базе COC- COM, Dead Air,  и пр. , там зомби себя так и ведут - тупо идут за гг, если это можно назвать реакцией, хотя как по мне смысла от такого ручного зомби немного, уж если делать скрипт, то такой, чтоб безоружный зомби, подходил к игроку и бил его руками, хотя бы анимация камеры и урон.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

.

 

Изменено пользователем Pavel2000

 1540412914_ezgif.com-optimize(1).gif.ec7250e918399802d8fe85d6d4fd7081.gif

«Если долго мучиться, что-нибудь получится»

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
42 минуты назад, CiberZold сказал:

если есть возможность посмотри где-то конфиги логики и скрипты на базе COC

Нет возможности, да и кок имеет свои правки движка, не думаю что конфиги оттуда заработают на чистом ЗП


Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
47 минут назад, Policai сказал:

как принудительно заставить зомби идти на ГГ. даже если у него нет оружия??? Что прописать в последнюю секцию?

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

Импортируйте в gamedata\scripts приаттаченый скрипт от Alundaio xr_beh.script. Там много опций вариативного поведения непися, среди прочих есть и движение на цель. Тогда логика могла бы быть примерно такой:

[walker@mil_vive5_zombied_5]
...
on_info2 = {+viv_door_barokamera7r_open} beh@attack_5

[beh@attack_5]
gather_items_enabled = false
help_wounded_enabled = false
corpse_detection_enabled = false
behavior_state = beh_move
target = actor
walk_anim     = assault; поле для экперимента с нужной анимкой
jog_anim     = assault; поле для экперимента с нужной анимкой
run_anim     = assault; поле для экперимента с нужной анимкой

Этот скрипт даёт много опций поведения, с ними можно/нужно/надо разбираться по исходному коду (также прикрепляю архив с примерами beh-логики). Для активации требуется добавить следующую строку в modules.script:

load_scheme("axr_beh", "beh", 0)

Всё это я лично не тестировал, так, предположение навскидку. Если что-то пойдёт не так, то удалить/закомментить вышеуказанную активационную строку load_scheme. А пойти не так может многое, так как эта схема для CoC/Аномалии. :u1F923:

Update: протестировал и после примерно всего лишь 50 перезагрузок, в том числе с безлоговыми вылетами,  портировал под стандартный CoP. Но портировано пока что только поведение behavior_state = beh_move, другие  опции портируйте сами (дебаг-принт включён в скрипт). Впрочем, большинство опций должно пахать уже и так (не проверял).

Update2: вижу, такой порт уже успели обсудить. Voila! :u1F60E:

axr_beh.script modules.script utils_obj.script beh_scheme_logic_examples.rar


Я логи в баню удалил, а вот за за рейдеры – не помню!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

BarmaGlot  Я обыкновенный чайник, для меня это тёмный лес, а скрипты трогать для меня это как спутник запустить на луну..)))) Могу только что то готовое добавить, если кто то сделает и протестирует, или по рабочему образцу из ЗП что то подогнать  под себя, методом сравнения..))) 
Мне проще работать  в максе и сдк, там я хоть что то чуток умею..))


Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Policai А я готовое и предоставляю, но только для одного нового поведения "Двигаться на актёра". Скрипты все закинуть в gamedata/scripts, а вашу логику зомбака чутка рихтануть новой секцией, как указано в посте.


Я логи в баню удалил, а вот за за рейдеры – не помню!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

При установке поверх мода графических модов, затрагивающих погоду, скайбоксы, освещение и т.п. вылет при запуске игры со следующими ошибками (и подобными): 509548064_3.thumb.jpg.499d3e758f77a79cdc77294f2d297b69.jpg1382773778_2.jpg.db5eb21ef94a616b323b4b14fdf84c38.jpg52814545_1.jpg.58c76354428faacc4e113fdd944eb93a.jpg
Конкретно - после замены xrRender_R1 , R2 и прочих, а также xrGame.dll или xrEngine.exe, в зависимости от мода какой ставим. Видно, что дело в конфликте с рендером, но как с этим бороться - не в курсе...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
5 часов назад, Gerbys сказал:

Конкретно - после замены xrRender_R1 , R2 и прочих, а также xrGame.dll или xrEngine.exe, в зависимости от мода какой ставим. Видно, что дело в конфликте с рендером, но как с этим бороться - не в курсе.

dll-ки которые созданы при компиляции с другим правленным движком не пойдут с оригиналом движка ЗП, надо искать совместимые с твоим движком.

  • Лайк 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Как отключить выбросы на локации?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 час назад, Boomer сказал:

Как отключить выбросы на локации?

в surge_manager.ltx пишешь condlist = {=actor_on_level(название уровня)} false, true  и выбросов на локе не будет, можно ещё доп условия добавлять проверку наличия или отсутствие инфопоршня, пока в фигурных скобках выполняется условие true выброса не будет.

  • Спасибо 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
12 часов назад, BarmaGlot сказал:

А я готовое и предоставляю, но только для одного нового поведения "Двигаться на актёра". Скрипты все закинуть в gamedata/scripts, а вашу логику зомбака чутка рихтануть новой секцией, как указано в посте.

Спасибо конечно, но слишком уж много городьбы ненужной получается ради 4 зомби, и 5 минут игры... Проще оставить одних гражданских..)))) Я расчитывал что существует какая либо строка для логики,  по типу  actor_enemy
Вопрос к спецам! Возможно ли заставить стабильно работать схему  mob_remark
В логике у меня она присутствует для мутов в колбах, только для того чтоб повесить им нужную анимацию. Не логично, когда муты в колбах занимаются своими делами..)) но она работает коряво, то срабатывает то нет, и плюс к тому, если сохраниться возле них, и загрузиться с этого сохранения, то ВСЕ муты встают чётко по схеме, НО!!!! Повёрнуты все не на точки look, а куда то в 1 точку, предпологаю что центр локации... Это как то ремонтируется?
Для примера, логика у всех выглядит так

Спойлер

 

[logic@mil_vive2_bloodsucker_1]
suitable = {=is_monster_bloodsucker} true, {=check_npc_name(mil_vive2_bloodsucker_1)} true, {=target_squad_name(mil_vive2_bloodsucker_squad)} true     ;--
active = mob_walker@mil_vive2_bloodsucker_1
monster_job = true
prior = 100

[mob_walker@mil_vive2_bloodsucker_1]
path_walk = bloodsucker_1_walk
path_look = bloodsucker_1_look
npc_friendly = true
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
on_info = {-teleport_npc_mil_vive2_bloodsucker_1} %=teleport_npc(mil_vive2_bloodsucker_1_walk) +teleport_npc_mil_vive2_bloodsucker_1%
on_info2 = {+teleport_npc_mil_vive2_bloodsucker_1} mob_remark@mil_vive2_bloodsucker_1 

[mob_remark@mil_vive2_bloodsucker_1]
path_walk = bloodsucker_1_walk
path_look = bloodsucker_1_look
anim = sit_stand_up_0, stand_idle_1
npc_friendly = true
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
on_info = {+viv_door_barokamera2l_open} mob_home@mil_vive2_bloodsucker_1

[mob_home@mil_vive2_bloodsucker_1]
path_home = bloodsucker_1_home
home_min_radius = 30
home_max_radius = 40
aggressive = false
combat_ignore_cond = {=fighting_dist_ge(70)} true, false

 

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


Дополнено 47 минуты спустя

Ребят! Кто понимает скрипты, посмотрите пожалуста mob_remark.script
Есть ли там вообще чтение точек walk и look,  по моему нету, сделал со старта активной секцией mob_remark, и  мутант при старте, уже встаёт взглядом куда то в центр локи...
Отсюда возникает вопрос, есть ли возможность прописать нужную анимку в точку  look
чтоб отказаться от секции ремарк? Анимку имеется ввиду  из анимок самой модели.

Изменено пользователем Policai

Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 час назад, Policai сказал:

то ВСЕ муты встают чётко по схеме, НО!!!! Повёрнуты все не на точки look, а куда то в 1 точку, предпологаю что центр локации... Это как то ремонтируется?

Привет, Юра!

Я когда делал В западне начал переписывать схему, но бросил. В моде также монстры находились внутри клеток. Короче оставил в схеме только то, что моб стоит в клетке с анимацией stand_idle и смотрит всегда на ГГ.

Ниже файл.

mob_remark.script


Терпение... И все получится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

 

10 минут назад, makdm сказал:

Короче оставил в схеме только то, что моб стоит в клетке с анимацией stand_idle

Увы Дим, не подойдёт, мне нужно чтоб анимация стояла та которую сделал... К примеру снорк не имеет стоячую анимацию, я делал её сам и добавлял в файл анимации, кровосос  стоит и переодически присаживается по этой анимации, контролёр садится и сидит, при подходе встаёт,  что не логично в колбе... Тут вариант только добавлять по аналогии  mob_walker.script  параметр чтения точек валк и лук... Но я не знаю как  это работает и возможно ли... 

Изменено пользователем Policai

Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Понятно.

Тогда в своем скрипте после строки

function mob_remark:update(delta)

попробуй вставить вот это

local target = db.actor:position()
    local look_pt = utils.vector_copy_by_val( target ):sub( self.object:position() )
    look_pt:normalize()
    action( self.object, look( look.direction, look_pt )

По крайней мере моб должен быть всегда повернут к ГГ.


Терпение... И все получится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Здравствуйте, у меня следующий вопрос: как проигрывать визуальные эффекты в игре. По типу получения удара, затемнения экрана и тд . Например при выполнении квеста.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

makdm Policai mob_remark.script Я тоже этим занимался совсем недавно пилили сосыча с одним камрадом, чтобы моб мог прыгать через ремарк. Я проверял на кровососе и собаке. Всё норм работало

;anims = stand_idle_0 ; можно указывать анимки без таблицы anim например sit_idle_0, stand_idle_1
anim = stand_idle

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

Внимание! При подключении этой схемы нужно добавить ее в таблицу job_type_by_scheme

["mob_remark"]    = "point_job",

Странно, но об этом никто не пишет и не говорит


Дополнено 13 минуты спустя
В 02.06.2023 в 21:06, Policai сказал:

а как принудительно заставить зомби идти на ГГ

Можно попробовать такой код action_zombie_shoot:execute()

    --' Если мы с оружием дальше чем в 3 метрах от позиции, идем в нее.
    -- если с ножом или без активного итема - подходим почти вплотную
    local active_item = self.object:active_item()
    local sqr_dist = self.enemy_last_accessible_position:distance_to_sqr(self.object:position())
    if (sqr_dist > 9) or (active_item and active_item:clsid() == clsid.w_knife_s and sqr_dist >= 0.5) or not active_item then
        if self.valid_path == false then
            self.valid_path = true
             self.object:set_dest_level_vertex_id(self.enemy_last_accessible_vid)
        end

Если нужно убрать оружие то в логике в эффектах можно с помощью функции убрать оружие 

npc:set_item(object.idle, nil)

и переключить секцию

 

Изменено пользователем Mass

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Mass Я нуб  в скриптах, 
 

13 минут назад, Mass сказал:

["mob_remark"]    = "point_job",

Куда это добавить нужно?


Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Policai gulag_general.script

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
16 минут назад, Mass сказал:

Можно попробовать такой код action_zombie_shoot:execute()

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


Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Policai так можно же в логике проверять находится ли зомби в позиции не дальше 0.5 метров и запускать эффект

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
4 минуты назад, Mass сказал:

Policai так можно же в логике проверять находится ли зомби в позиции не дальше 0.5 метров и запускать эффект

А смысл? Городить кучу файлов и строк, ради 4 зомби и 2 минут игры???

Не помог твой файл, с ним вообще логика не переключается на ремарк. без него всё нормально, НО!!! При сейв лоаде секция ремарк сбрасывается и мутант стоит на том же месте, но без анимаций, просто руки  в стороны, и взглядом в центр локации... Изначальная проблема именно в том, что  всё работает, но при сейв лоаде сбрасывается...

Зы: а ауру у контролёра Дима мне помог убрать..)))  осталась одна проблема, именно со сбросом секции моб ремарк при сейв лоаде...


Дополнено 9 минуты спустя

Схема моб_ремарк изначально у пысов кривая,  и нестабильная. к тому же работает только когда ГГ в  зоне видимости моба. Для понимания, со старта игры. делаю переключение на ремарк  с моб валкера по поршню,  захожу в игру, анимация зависшая,  моб сидит в схеме моб валкер. Делаю переключение по команде
{=dist_to_actor_le(10)}, всё работает, подхожу к нему, он встаёт, (переключается на ремарк), делаю {=dist_to_actor_le(20)},
чтоб игрок не видел смену анимации, всё, логика не работает, зависает на валкере. подходи не подходи, рикакой реакции.
То есть, если смена секции проходит на глазах  у ГГ, то переключается. если в момент переключения ГГ не видит моба, то схема зависает на валкере. Вот как то так..((((

Думаю Дима посидит со скриптом и что нибудь придумает..))


Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   1 пользователь онлайн