Перейти к контенту

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

2 часа назад, Pavel_2000 сказал:

чтоб писало "Найден артефакт: (арт)" 

 

	if db.actor:object("af_medusa") and not db.actor:has_info("medusa") then
		db.actor:give_info_portion("medusa")
        local art_name = "Найден артефакт: %c[255,255,50,50]"..game.translate_string(system_ini():r_string("af_medusa", "inv_name")).."%c[default]"
        news_manager.send_tip(db.actor, art_name, 0, "got_artefact", 3000)
	end

 

  • Спасибо 1
  • Нравится 2
  • Согласен 1
Ссылка на комментарий

@Kirgudu @ted.80 Спасибо, в конечном результате получилось так:

    if db.actor:object("af_medusa") and not db.actor:has_info("medusa") then
	    db.actor:give_info_portion("medusa")
        local art_name = game.translate_string("st_find_af")..": %c[255,255,50,50]"..game.translate_string(system_ini():r_string("af_medusa", "inv_name")).."%c[default]"
        news_manager.send_tip(db.actor, art_name, 0, "got_artefact", 3000)
    end

Результат(тык)

У меня новый вопрос. Не могу найти где в зп прописан спавн квестовых трупов типо Баржи, Майрона в пещере контролёра и тому подобных

  • Нравится 3
Ссылка на комментарий

@Colder Поиском по коду найти где она выводится, и закомментировать эту строку.

  • Спасибо 1
  • Нравится 2

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий

Как в труп заспавнить предмет? Пробывал так:

Скрытый текст

    local obj = alife():create("stalker_general_1", vector():set(37.906, -11.880, -246.436), 57809, 1482)
    if obj then
    obj:on_death()
    ogse.spawn_item_in_inv("mutant_krovosos_jaw", obj)

 

Ссылка на комментарий

Colder
on_death(), видимо, подразумевает, событие?
а оно есть?

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

Железо: Intel Core i5 9400F / 16Gb DDR4 2400MHz / SSD NVMe M.2 Samsung 970 EVO Plus 256Gb / GF GTX 1050Ti 4Gb Ось: Win10x64

Ссылка на комментарий
31 минуту назад, Colder сказал:

Как в труп заспавнить предмет?

как вариант, в файлах characrer desc в описании непися которому ты хочешь дать предмет, ты же я так понимаю хочешь дать предмет конкретному неписю-трупу ,а не просто рандомному созданной на этой секции, так вот в файлах описании в секции [spawn] прописываешь нужные предметы, а потому убиваешь непися через спавн ставя ему health = -1 , и вещи из этого файла должны быть при нём + те которые заспавнит death_manager.script

Ссылка на комментарий

@Colder В death_manager.create_release_item(npc) где нибудь в конце сделай что то подобное

 

    if npc:name() == "esc_shilo_band" then
        ogse.spawn_item_in_inv("part6", npc)
        ogse.spawn_item_in_inv("money_gg", npc)
        ogse.spawn_item_in_inv("wpn_ks23", npc)
    end

 

  • Спасибо 1
  • Полезно 1
Ссылка на комментарий
09.02.2024 в 16:11, Colder сказал:

Как в труп заспавнить предмет?

Всё проще. Вызов alife():create(аргументы с ID владельца, кому спавним.)

И во всех "обертках" со времен амк и до сих пор, делается именно так.

  • Спасибо 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий

HUD скрывается при использовании оптики, даже если заткнуть ссылки в начале [xr_effects.script] – остается только править движок.

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

  • Полезно 1
  • Смешно 1

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

Ссылка на комментарий
09.02.2024 в 20:11, Colder сказал:

obj:on_death()

а где ты откопал метод on_death() для а-лайфного объекта, и что он должен делать? так спавнили трупы в старых солянках, но там ещё был и файл логики, где прописывали скрипт по которому убивали непися, так что я не уверен что этот метод рабочий остался для ОГСР.

Ссылка на комментарий

@tyto Все это делается только через движок.

Скриптами, без лютых костылей никак (А костыли, если их все же делать, получатся настолько лютыми, что результат вас все равно не обрадует).

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий

То, что повешено на худ пользователем, именно при использовании оптики не скрывается, хотя в катсценах, диалогах и т. д. скрывается и это (кроме ЗП – там всегда только вручную). В старых модах вроде "Фотографа" можно наблюдать на худе самодельные часы при использовании прицела без черной заливки снаружи.

  • Согласен 1

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

Ссылка на комментарий

Доброй ночи, сталкерА, и не очень! :drinks:

 

Прошу подсказки - как вывести в лог ВСЕ имеющиеся в памяти у игрока инфопоршни?

if has_alife_info (...) then

Это построение вызывает у меня некое недоумение, явно что-то не правильно ведь? Нужен шаблон на любое строковое выражение вроде. :unknw:

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

С уважением, КенГуру ;)

Пилим S.T.A.L.K.E.R UZI

Ссылка на комментарий

1. Мудреный вариант: взять список [system.ltx] [info_portions] files и перебрать все указанные файлы как текст через getFS():r_open(путь):r_stringZ() с проверкой "есть/нет" по каждому info_id.

2. Ленивый вариант: добавить вывод всех инфо-поршней в консоль в actor_binder:info_callback() и "слушать" с начала новой игры.

3. Неясный вариант: в ЧН вскоре после загрузки в консоль высыпается этот самый список – можно там посмотреть, но вроде как это движковый вызов. Единственное, что можно понять из самого списка – у инфо-поршней есть фиксированные id: [0]=[global_dialogs] … [1350]=[info_up_ac_spas12].

  • Спасибо 1

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

Ссылка на комментарий

@Norman Eisenherz  спасибо за ответ. К сожалению, ни один из вариантов не подойдёт. Нужно здесь и сейчас, как говорится, получить весь список, чтобы потом чесать репу - насколько велика проблема, и как её решить. У меня мод на основе ТЧ, сюжет не вырезан, проверил - в скриптах ПЫСов выдаётся 805 порций инфы, а удаляется 18. Хочу победить переполнение стека, давнюю болячку мода. Перевод на движок ОГСР проблему не решил, либо я криворуко наплодил где-то сущностей (хотя вроде не должен был - не совсем дурак :biggrin: )

А перебор поршней поимённо, это, как сам понимаешь - тот ещё ёжик..

С уважением, КенГуру ;)

Пилим S.T.A.L.K.E.R UZI

Ссылка на комментарий

@kenguru а почему виноваты в переполнении памяти именно инфопоршни ,вылетать по памяти может и из-за скриптов (скорее всего) перегружающих проц и память, и и из-за настроек графики и информации относящейся к алайфу (неписи, монстры их память), в памяти также хранятся данные динамических физ объектов и пр. мусора, если у тебя всего этого много, вылеты последует на чистом движке ТЧ точно, ОГСР в этом плане получше, но беды со скриптами от мододелов он не исправит.

Ссылка на комментарий
4 часа назад, kenguru сказал:

Хочу победить переполнение стека

А инфопоршни какое к этому имеют отношение?

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий

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

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    Ни один зарегистрированный пользователь не просматривает эту страницу.

AMK-Team.ru

×
×
  • Создать...