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

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

 
 

Появилось 2 вопроса:

  1. Можно ли как-то заагрить конкретный сквад мутантов на игрока или НПС? У меня есть сцена, где во время диалога между игроком и НПС должна напасть стая собак. Собаки спавнятся вне зоны видимости, после чего должны сразу атаковать (что-то вроде "по запаху учуяли"), но как такое сделать - я не знаю.
    Знаю про метод "нанести околонулевой урон скриптом", но тут проблема в том, что все собаки спавнятся за преградами, и не видят ни ГГ, ни НПС. Мб просто начнут бегать и "искать нападавшего", а нужно, чтобы сразу атаковали.
  2. Связано с первым: в логике НПС есть параметр combat_ignore_cond и combat_ignore_keep_when_attacked, который позволяет настроить, при каких условиях НПС игнорирует сражение. Но вопрос: если прописать что-то вроде = {=check_enemy_name(actor)} true, false, то будет ли вражеский НПС на этой логике атаковать игрока в битве? Хотелось бы реализовать, что ГГ отбивается от той самой своры собак вместе с вражеским НПС, а после битвы продолжить разговор как ни в чём не бывало.
    Теоретически, можно на саму битву сделать НПС дружественным к ГГ и вернуть отношения после, но очень хотелось бы без таких костылей обойтись, если возможно.
Изменено пользователем Prostomod

Мод в разработке - X-7: Эпицентр

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


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

Prostomod логика по идее должна сработать, я делал логику 

combat_ignore_cond = {=actor_enemy =check_enemy_name(actor)} false, {=hit_by_enemy} false, true

Чтобы НПС атаковал только если ГГ враг ИЛИ по нему кто-то хитанул (вроде кастомную проверку сделал), а в других случаях он стоит на месте. Соотвественно, если прописать наоборот {=check_enemy_name(actor)} true, false, то он будет атаковать всех врагов, кроме игрока. По идее.

Возможно еще нужно добавить строчку 

combat_ignore_keep_when_attacked = true

Но я не уверен. У меня прописано, вроде работает, уже не помню как я к этому пришел.

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


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

Чтобы НПС атаковал только если ГГ враг ИЛИ по нему кто-то хитанул (вроде кастомную проверку сделал), а в других случаях он стоит на месте

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

Так-то я написал, что если что, временно сделаю его союзником на время битвы (или другой какой промежуток времени), либо ещё где-то получится внести исправления для таких изменений, но хочу убедиться, нет ли уже готового функционала для такого, чтобы велосипеды не делать.


Мод в разработке - X-7: Эпицентр

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


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

Prostomod ну логика, которую вы предлагали, должна сработать. Если не работает, скажите, попробую поэкспериментировать тогда.

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


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

FalkineIsaku Да.


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

Neptun А как это сделать?

 

  • Печаль 1

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


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

FFFFF найди файл death_generic в папке configs/misc, и в секцию keep_items впиши "zat_b33_safe_container = true",

  • Смущение 1

𝐒𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟, 𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫…𝐬𝐭𝐨𝐩 𝐡𝐢𝐭𝐭𝐢𝐧𝐠 𝐲𝐨𝐮𝐫𝐬𝐞𝐥𝐟

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


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

Можно ли как-то заагрить конкретный сквад мутантов на игрока или НПС?

=set_squad_enemy_to_actor(сквад_мутантов)
=set_squads_enemies(сквад_мутантов:сквад_нпс)

11 часов назад, Prostomod сказал:

то будет ли вражеский НПС на этой логике атаковать игрока в битве?

нет

  • Лайк 1

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


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

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

А проблема состоит в том, что у меня мутанты очень часто застревают на одном месте в беге. Думал, пересобрав сетку я смогу это исправить, но не получилось. Или я что-то сделал не так. Может, знаете, в какую сторону стоит копать?

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

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


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

Mawrak Проверяйте АИ-сетку на валидность, устраняйте проблемы, перекомпилируйте и так до победы.


Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

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


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

Mawrak 

Спойлер

* New phase started: Calculating coverage...
    | Calculating...
    |    | * THREAD #0: Started.
    |    | * THREAD #0: Task Completed.
    |    | Time elapsed: 50 seconds
* Memory usage: 122 Mb
 
* New phase started: Saving nodes...
NS: 88, CNS: 23, ratio: 26.136364%
Renumbering nodes...
    | Saving header...
    | Saving nodes...
1994 Kb saved
* Memory usage: 124 Mb


Так примерно выглядит лог, когда нет ошибок сетки. В других случаях выводятся координаты неправильных нод, потом в ЛЕ спавнишь какой-нибудь мелкий объект и меняешь ему позицию, что из лога. Можно в настройках сдк, выставить комбинацию клавиш для команды Move Camera To (вызывает окно для ввода координат), но таким методом бывает трудно разглядеть непр.ноду на шф-мониторах. Несвязанные одиночные ноды (красные) можно найти кн. Select 0-link на вкладке ии-сетки.

Частые ошибки: несвязанные рядом ноды / блины / связь через объекты из-за малой высоты,

image.png.f7f2b783359c070be976061ba9fccf3c.png

 

  • Спасибо 1

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


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

denis2000 Yara суть в том, что во время компила никаких проблемных нод оно не выводит.

Спойлер

Screenshot_1.jpg.0084cd4b4a80783ffcf56342e6a01333.jpg

Screenshot_2.jpg.dd7aa95a0558aa6b3afa302b8ed19d3b.jpg

 

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


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

Mawrak Суть в том, что проверка сетки осуществляется отдельным ключем:

xrai.exe -verify

 

  • Спасибо 1

Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

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


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

denis2000 хочу еще уточнить, а single-linked nodes это тоже критично и надо исправлять? Просто я сейчас долго сидел и фиксил сетку, пока не довел до состояния, где оно пишет, что "AI-map is valid!". А мутанты, блин, все равно продолжают застревать. В основном снорки, но в целом с любыми может случится. 

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


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

single-linked nodes это тоже критично и надо исправлять?

Нет, это не критично.

12 часов назад, Mawrak сказал:

все равно продолжают застревать

То есть, еще раз:
1. АИ-сетка последней ревизии оценена как валидная и перенесена в игру.
2. На пути у них нет никаких спавн-объектов намертво прикрученных к полу в который они могут упереться.
3. Мутанты все равно стоят на месте и проигрывают анимацию передвижения, а при приближении могут "отлипнуть" и погнаться за ГГ.

Сможете скинуть файлы ai_map.part и spawn.part вашей локации и обязательно координаты проблемного места локации.

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

Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

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


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

Где взять чистую ЗП? Без сюжета и квестов.

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


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

denis2000 

1) Да, я сейчас специально еще раз пересобрал сетку и перепроверил, ИИ сетка выводится как валидная. И спавн новый собрал, накидав тестовых мобов. А проблемы еще есть. НО я еще проверил такой же спавн с прошлой сеткой, и все же улучшения есть, например в подземельях тушканы и снорки стабильно и часто застревают на старой сетке, а на новой кажется вообще не застревают (я не смог словить по крайней мере). То есть это уже большой прогресс, но проблемные места еще остались.

2) Есть ОДИН такой объект, но застревают они не на нем. Ну то есть они в теории могут в него врезаться тоже, но это не то, о чем я говорю. Я понимю, что мобы не видят динамических объектов такого типа, но я про ситуацию, когда они на ровном месте застревают.

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

Сейчас нашел две проблемные области (вероятно, есть еще, но пока хотя бы тут понять, что не так):

1) На полянке и ее окресностях на (-94.16, -9.88, -290.91) снорки застревают практически мгновенно, буквально через 5-10 секунд после втупления с ними в бой, практически все в какой-то момент ломаются.

2) В закутке на (-7.34, 0.00, -106.74) застревают снорки тоже, и иногда кровососы, но редко. Раньше (на старой ИИ сетке) было чаще, но все равно проблема есть.

Ссылка на файлы: https://drive.google.com/file/d/1oQK3z0FdsCIr32REelp1DwLEZDwSvgf4/view?usp=sharing
Сразу говорю, спавн там васянистый (первый мод, делался на конкурс за ограниченное время), но вот конкретно с данной проблемой это не должно быть связано, насколько я знаю.


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

Вообще могу видео с ошибкой записать еще, если надо

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

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


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

Где взять чистую ЗП? Без сюжета и квестов.

.актуально

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


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

Где взять чистую ЗП? Без сюжета и квестов.

Это что то интересное. Нужно специально испортить репутацию к группировкам, и поудалять техников и торговцев. И еще стартовый геймплей на поиск вертолётов отключить. 

А проводник считается за сюжетный элемент? Если да, то тогда нужны переходы на другие локации.

Вообще, это называется фриплей. Скорее всего такие моды уже есть.

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

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


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

ph0nkezz SZA Freeplay mod

  • Лайк 1

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


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

Всем, привет, понимаю, тема немного не подходящая, но честно говоря не знаю в какую другую с таким вопросом обратиться.
Вопрос такой, может кто-нибудь знает и подскажет, в каком формате шейдеры у Survarium'a?
После распаковки ресурсов, они (шейдеры) представлены в виде документа с закодированым названием и без расширения. Как я понял их надо декомпелировать, в нормальный формат. Но вот как и чем? Не знаю, в сети по Survarium'у практически нет материалов, а те что есть, на пример с софтом - старые, а ссылки в них мертвые. 
Заранее благодарю за совет, помощь или если у кого остался какой-нибудь софт по работе с файлами Survarium'а - напишите пожалуйста в личку, буду очень рад и признателен любой помощи.
У админов заранее прошу прощение, за немного не тематический вопрос.

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


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

Mawrak На версии 0.7 не читается ваш спавн и АИ-сетка. Поэтому ничего посмотреть своими глазами не смогу.

15 часов назад, Mawrak сказал:

Я понимю, что мобы не видят динамических объектов такого типа

Поправка: "не видят" если у объекта не установлен флаг Obstacle, второй момент такие объекты могут не иметь визуальной модели, но обладать коллизией (пример inventary_box).

Подытожу, мне известны две причины такого поведения мобов:
1. Коллизия с динамическим объектом.
2. Проблемная АИ-сетка, в частности к этому 100% приводит сетка имеющая несколько сегментов (что обнаруживается при валидации).
Какие еще конфигурации АИ-сетки приводят к такому, мне не известны, по крайней мере это не ситуация когда ноды сетки "погружены" в объект (например в террейн - это может стать проблемой после смерти моба, когда его регдол застрянет в объекте), это не ситуация когда одна нода соединена более чем с четырмя другими.
Какие могу дать рекомендации в этом случае:
1. Если есть возможность максимально упростить конфигурацию АИ-сетки в проблемном месте.
2. Избегать спавна мобов в таких местах.
 

Изменено пользователем denis2000
  • Лайк 1

Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

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


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

Как создать рестриктор который будет хилить сквады находящиеся в нём?

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


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

Skala , поставить скрипт зону - [script_zone]. В биндере зоны в методе on_enter(zone, obj) сделать проверку, что это НПС и восстановить ему здоровье.

if IsStalker(obj) or IsMonster(obj) then obj.health = 1 end


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

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


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

На версии 0.7 не читается ваш спавн и АИ-сетка. Поэтому ничего посмотреть своими глазами не смогу

Вот это вообще очень странно, так как мой СДК все спокойно открывает, я использую вот этот, если что. spawn.part вообще можно через блокнот открыть, там вроде видно, что все норм.

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

Спасибо за помощь и советы, я очень много узнал. 

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


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

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

Грамотное решение. 

У меня НПС отказывался входить в комнату. Вставал на пороге и дальше не шел. В SDK все было изумительно. Сетка была валидна. В итоге после суток мучений над логикой НПС и поиска черной кошки в черной комнате принял радикальное решение - удалил АИ-сетку и сгенерировал по новому. 

Проблема исчезла. НПС смело сделал шаг с порога в комнату.

 

 

  • Лайк 1
  • Мастер! 1

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

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


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

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

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

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

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

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

Войти

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

Войти

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

    Ни одного зарегистрированного пользователя не просматривает данную страницу