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

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

 

61561952a1.png

Тема посвящена моддингу на платформе Зов Припяти.

 

Правила темы:

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

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


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

liner Ваши НПС переключаются в онлайн тогда, когда смарт-террейн окажется на дистанции меньше switch_distance.

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


Путь во мгле.
Связь времен.

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

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


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

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

AoZ3rtzipWk.jpg

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


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

Подскажите пожалуйста, скачал сборку Демосфена, распаковал файлы script а там в файле набор иэроглефов, ни блокнот ни нотепад+ не открывает нормально, может это зашифрованые файлы Разведки США...😂 есть ищо чем открыть ?

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


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

Kalambur А файликом кинете?


Путь во мгле.
Связь времен.

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

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


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

Hozar_2002 Очистил кэш, не помогло

https://disk.yandex.ru/i/NheVMqc9F83uPA

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


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

Как убрать это свечение?
 

Спойлер

ss-04-20-21-09-13-39-garbage.jpg

 

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


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

Как можно реализовать смену саундтреков? То есть, как сделать так, чтобы в нужной определенный момент саундтрек локаций замолкал и заиграл нужный?

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


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

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

Спойлер

[logic]
active = heli_move@idle

[heli_move@idle]
path_move = esc_base_heli_walk
path_look = esc_base_heli_look
max_velocity = 155
engine_sound = false
mute = false
default_velocity = 125
on_info = {+esc_a1_heli0_start} heli_move@to_base

[heli_move@to_base]:heli_move@idle
on_game_timer = 10|{~50} heli_move@p1, {~50} heli_move@p2, {~50} heli_move@p3, heli_move@p4

[heli_move@to_city]
path_move = esc_base_heli_walk
path_look = esc_base_heli_1_4_look
max_velocity = 162
engine_sound = true
mute = false
default_velocity = 130
on_game_timer = 365|%-esc_a1_heli0_start% heli_move@idle

[heli_move@p1]
path_move = esc_base_heli_1_walk
path_look = esc_base_heli_1_posadka_look
max_velocity = 130
engine_sound = true
mute = true
default_velocity = 91
combat_enemy = actor
combat_use_rocket = {!squad_exist(esc_a1_rota2) !squad_exist(esc_a1_rota)} true, false
min_mgun_attack_dist = 7
max_mgun_attack_dist = 200
on_info = {!heli_see_actor} heli_move@p1_wait
on_info1 = {+esc_a1_heli0_go_back} heli_move@to_city

[heli_move@p1_wait]:heli_move@p1
path_move = esc_base_heli_1_walk
max_velocity = 110
default_velocity = 90
on_info = {=heli_see_actor} heli_move@p1
on_game_timer = 100|{~50} heli_move@p1_wait, {~50} heli_move@p2_wait, {~50} heli_move@p3_wait, heli_move@p4_wait

[heli_move@p2]:heli_move@p1
path_move = esc_base_heli_2_walk
max_mgun_attack_dist = 216

[heli_move@p2_wait]:heli_move@p1_wait
path_move = esc_base_heli_2_walk
on_info = {=heli_see_actor} heli_move@p2
on_game_timer = 100|%+esc_a1_heli0_go_back% heli_move@to_city

[heli_move@p3]:heli_move@p1
path_move = esc_base_heli_3_walk

[heli_move@p3_wait]:heli_move@p1_wait
path_move = esc_base_heli_3_walk
on_info = {=heli_see_actor} heli_move@p3

[heli_move@p4]:heli_move@p1
path_move = esc_base_heli_4_walk

[heli_move@p4_wait]:heli_move@p1_wait
path_move = esc_base_heli_4_walk
on_info = {=heli_see_actor} heli_move@p4

 

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


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

Написал логику для вёртолёта (не совсем нормальную, для тестов)

На эти параметры ориентируйся

 

Спойлер

[heli_move@attack]
path_move = heli_attack_gg_move ;Путь на котором висит вертушка
path_look = actor ;Направление носа вертушки
max_velocity = 20 ;Скорость полёта
upd_vis = 3 ;Время повторного поиска цели при потере её видимости ( если не нашли через 3 секунды - ищем новую цель).
engine_sound = true ;Звук двигателя включён
immortal = true ;Отключаем разрушение вертолёта, даже если потеря "здоровья" вертушки равна 100%
invulnerable = true ;Включена неуязвимость вертолёта
enemy = actor ;Атаковать только Главного Героя
use_mgun = true ;Разрешаем использовать пулемёт
use_rocket = false ;Запрещаем использовать ракеты

 

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


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

В игре есть метод начать неразрываемый диалог с НПС, однако существует хитрость: если нажать паузу, а затем Esc, то такой диалог всё-таки закроется. Как это поправить?

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


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

Как сделать так, чтобы НПС подходили и лутали трупы монстров (по аналогии с трупами сталкеров), но только НПС лут не спаунится, а облутанный монстр заносится в таблицу.

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


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

Как сделать бессмертный сквад (симуляционных НПС), имеющий story_id?

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

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


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

Как сделать бессмертный сквад (симуляционных НПС), имеющий story_id?

Прописать неуязвимость членам сквада в секции сквада, например

invulnerable = {+pri_a28_update_task_cover_strelok} false, true

21 час назад, liner сказал:

Как сделать так, чтобы НПС подходили и лутали трупы монстров

Написать схему ИИ аналогичную xr_corpse_detection.script только для лутания монстров.

 

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

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


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

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

function music_on(actor, npc)
    xr_effects.play_snd(db.actor,nil,{[1]="sounds\music\credits.ogg"})
end

Вызываю её в action у нужной фразы, но звук не проигрывается

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


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

xr_effects.play_snd(db.actor,nil,{[1]="sounds\music\credits.ogg"})

В файле xr_effects.script нет функции play_snd

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


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

makdm Ясно. Тогда как написать функцию верно? Желательно конечно, чтобы музыка затихала плавно, но это, как понимаю, надо сам звук редактировать.

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


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

Что я не так делаю?
Я пытаюсь добавить спот на объект, но выходит вот это:
 

Спойлер

ss-04-24-21-14-23-07-escape.jpg

Объект, на которого я хочу повесить соп, находится на локации на которой находится ГГ.
Я пытался повесить спот и на level_changer, и на space_restrictor.


Дополнено 0 минут спустя
2 минуты назад, Yura001 сказал:

makdm Ясно. Тогда как написать функцию верно? Желательно конечно, чтобы музыка затихала плавно, но это, как понимаю, надо сам звук редактировать.

xr_sound.set_sound_play(actor:id(), секция звука в script_sounds.ltx или путь к звуку)

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

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


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

Я пытаюсь добавить спот на объект, но выходит вот это

level.map_add_object_spot( obj_id,  "primary_object",  hint )

obj_id - айдишник объекта

primary_object - текстура метки

hint - надпись при наведении курсора на объект

 

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

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


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

Что я не так делаю?
Я пытаюсь добавить спот на объект

local spot_1 = get_story_object_id("id_объекта")
level.map_add_object_spot_ser(spot_1, "текстура_метки", "Описание")

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


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

liner 

23 часа назад, liner сказал:

xr_sound.set_sound_play(actor:id(), секция звука в script_sounds.ltx или путь к звуку)

Если прописать путь к звуку без кавычек, то перестают работать остальные скрипты в файле(ну не правильный синтаксис, как я понимаю). Если с кавычками, то просто звук не проигрывается. Может ли быть проблема в том, что я работаю в СДК на новой локации? Путь если что выглядит вот так: sounds\music\credits.ogg

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


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

Можете подсказать о чем ошибка

[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   : ...k.e.r. call of pripyat\gamedata\scripts\utils.script:469: bad argument #1 to 'gsub' (string expected, got nil)
 

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


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

Если с кавычками, то просто звук не проигрывается

Должно выглядеть так:
xr_sound.set_sound_play(db.actor:id(), "название_звука")
А звук должен быть зареган в script_sound для actor:
 

[название_звука]
type = actor
npc_prefix = false
path = music\название_звука
shuffle = rnd
idle = 1,1,100

 


Дополнено 1 минуту спустя
1 час назад, Daniil1989 сказал:

Можете подсказать о чем ошибка

В чём угодно, но, вероятно, в том, что редактировали в последнюю очередь. Логично?

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

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


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

liner 

Если прописать путь к звуку без кавычек, то перестают работать остальные скрипты в файле(ну не правильный синтаксис, как я понимаю). Если с кавычками, то просто звук не проигрывается. Может ли быть проблема в том, что я работаю в СДК на новой локации? Путь если что выглядит вот так: sounds\music\credits.ogg

Спросили бы для начала, как путь к файлу в скрипах писать... Или шаблон бы посмотрели в других скриптах..
Например вот так, как у меня:
sound_object("material\\dead-body\\collide\\hithard0"..tostring(math.random(1, 6)).."hl"):play_at_pos(object, object:position(), sound_object.s3d)


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

Как сделать так, чтобы после того, как ГГ дал аптечку раненому НПС, то выполнялась определённая функция?

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


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

Здравствуйте!

Как сделать так, чтобы при проигрывании анимации перезарядки оружия проигрывалась анимация камеры? (Как в ориг. ЗП или в некоторых оружейных модах, как в Gunslinger) 

Нужно ли где-то прописать путь к анимации?

Заранее спасибо 

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

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


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

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

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

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

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

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

Войти

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

Войти

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