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

[SoC] Ковыряемся в файлах

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

@AndrewMor, не будет, если не добавишь чтение и обработку кондлиста в bind_heli.heli_die(obj).

local death_section = utils.cfg_get_string(st.ini, st.section_logic, "on_death", obj, false, "")
if death_section then
	local cond = xr_logic.cfg_get_condlist(st.ini, death_section, "on_info", obj)
	if cond then
		xr_logic.pick_section_from_condlist(db.actor, obj, cond.condlist)
	end
end

Как-то так.

  • Спасибо 1
  • Полезно 3
Ссылка на комментарий

@AndrewMor, в оригинале не работает on_death, насколько я помню (ТЧ 1.0004)

Лучше работать через хит...

  • Сомнительно 1

Не соответствует правилам.

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

@CRAZY_STALKER666, А то что Charsi написал, вам не видно?

  • Согласен 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.

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

Срочно нужна статья по расшифровке флагов в оллспавне.

object_flags =...

Помню, что видел где-то, может на Вики, может ещё где, но не могу найти :facepalm: . Ткните пожалуйста меня мордой лица в эту статью.

Спасибо.

"Кругом зомби.....у меня кончаются патроны...."

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

BFG, если кратко, то вот пост lsclon.

Добавлено BFG,

klGOLWb.gif

Неважно – сколько у тебя друзей. Важно - сколько из них помогут тебе в трудную минуту и сколько вспомнят о тебе когда им хорошо.

"Худ" и "Умное выпадание частей монстров" для Народной солянки

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

Доброго времени суток. Имеются два вопроса:

 

1) Почему при передаче предмета НПС, он остается в рюкзаке ГГ, хотя в диалоге написано, что предмет передан? Функция передачи:

function otdaem_item(first_speaker, second_speaker)
  dialogs.relocate_item_section(second_speaker, "item", "out")
end
В диалоге написано "предмет потерян", но все равно остается в рюкзаке. Что это такое?
 
2) Как создать звуковую схему для НПС, по типу как волк говорит "Подходи, пообщаемся"?
В скрипт sound_theme вношу по аналогии с другими схемами:
ph_snd_themes["zvuk_ot_npc"] = {[[characters_voice\location\zvuk_ot_npc]]}
В начале, и
zvuk_ot_npc = {min_snd = 7, max_snd = 10, rnd = 100, prior = 5, rnd_id = id(), into_id = id(), max_ids = {}},

Где-то в середине скрипта. Затем в config\misc\script_sound.ltx:

[zvuk_ot_npc_seq]
stalker = 0,location\zvuk_ot_npc

Затем в логику НПС прописываю:

snd = zvuk_ot_npc

Но в итоге в игре ни звука от НПС, ни вылета. Молчит как рыба. :unsure:  Что не так? 

Спасибо.

GTA 3 MAP X-Ray | NFS U:2 MAP X-Ray | RTCW MAP X-Ray | L2D | Куча раритетных модов на моем облаке — на память о былом.

JNCR — Coming Soon...

i5-10400F / RAM 16GB / GTX 1660 Super / 1TB HDD+256GB SSDm2 / Win 11 PRO x64 / Samsung Curved 27" x2

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

 

 

при передаче предмета НПС, он остается в рюкзаке ГГ,

 

Как по мне - давний баг странный какой-то.

Пользуюсь вот такой функцией, вроде всё хорошо...

 

function transfer_af_soul (npc, actor)
dialogs.relocate_item_section(npc, "af_soul", "out")
end

 

 

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

  • Спасибо 1

Не соответствует правилам.

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

 

 

В диалоге написано "предмет потерян", но все равно остается в рюкзаке. Что это такое?

Попробуй поменять в

dialogs.relocate_item_section(second_speaker, "item", "out")

second_speaker на first_speaker... И вообще - ф-ции этого плана чувствительны к месту вызова, т.е. из чьей фразы они вызываются: если фраза от НПСа, то движок в first_speaker передаст объект НПСа а в second_speaker - объект актера, если от актера - то в точности наоборот.

  • Спасибо 1
Ссылка на комментарий

 

 

Функция передачи:

 

Возможно перепутаны second_speaker и first_speaker. Никогда не понимал, зачем так делать. Если предмет отнимается у ГГ, то почему бы просто и не делать

  dialogs.relocate_item_section(db.actor, "item", "out")

  • Спасибо 1
Ссылка на комментарий

И вообще оно надо - именно ПЕРЕДАВАТЬ ?

А потом прописывать 100500 предметов в 100500 конфигов торговли, чтобы переданные предметы не показывались ?

 

local sim = alife()
local actor = db.actor	-- для тех, у кого "НЕТ, ПУСТЬ БУДУТ ОШИБКИ И ПУСТЬ ВЫЛЕТАЕТ !!!"
function remove_items( sect, n )	-- удаляем n предметов, помечаем не учитывать как использованные
	-- log( "info", "remove_items: %s, n: %s ", sect, n or 1 )
	local t, c = {}, 0
	local i_sect, obj
	if not n then n = 1 end
	for i = 0, actor:object_count() - 1 do
		item = actor:object( i )
		i_sect = item and item:section()
		-- log( "info", "remove_items, [%s], i: %s ", ( item and item:name() ) or "nil", i )
		if i_sect == sect then
			obj = sim:object( item:id() )
			if obj then
				c = c + 1
				t[c] = obj
				if c >= n then break end
	end	end	end
	if c ~= 0 then
		for i = 1, c do sim:release( t[i], true ) end
		news_remove_item( actor, "out", sect, c )
	end
end
news_remove_item() определить самостоятельно.

 

Касательно звуков - сделать %=play_snd_from_obj("звук")% по нужному условию - не ?

Изменено пользователем Dennis_Chikin
  • Спасибо 1
  • Нравится 1
  • Полезно 1
Ссылка на комментарий

 

 

Затем в логику НПС прописываю: snd = zvuk_ot_npc Но в итоге в игре ни звука от НПС, ни вылета. Молчит как рыба.   Что не так?  Спасибо.
 

Параметр snd доступен только для схемы remark, для других случаев есть функция play_snd_now

 

 

Касательно звуков - сделать %=play_snd_from_obj("звук")% по нужному условию - не ?

Для звука пука оно может и пойдёт, а для речи есть своя метода.

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

@Bak, у меня "snd" как раз в схеме ремарк. При чем родные ПЫС схемы работают и озвучиваются, а новые не хотят. Хотя сделано все по аналогии (копи-паст и смена имен звуков на свои).

GTA 3 MAP X-Ray | NFS U:2 MAP X-Ray | RTCW MAP X-Ray | L2D | Куча раритетных модов на моем облаке — на память о былом.

JNCR — Coming Soon...

i5-10400F / RAM 16GB / GTX 1660 Super / 1TB HDD+256GB SSDm2 / Win 11 PRO x64 / Samsung Curved 27" x2

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

"Для звука пука оно может и пойдёт, а для речи есть своя метода."

 

Да-да. Доведем вход в онлайн каждого непися до получаса !

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

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

... А наше дело маленькое - с ружьём да по болотам. (с)

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

@Max_Raf, однако у тебя в моде болезнь с отсутствием записи сохранения инфопоршней. Недавно HellRatz страдал тем же. У тебя из логики по функциям в скриптах идёт незатыкаемая команда на выдачу итема, в тот момент когда логика просчитывается с нуля, во время спавна ГГ. Либо у тебя в логике, отсутствуют сами ключи инфопоршней. Еще третий вариант - я могу ошибаться.

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

andreyholkin.gif

rod_cccp.gif

 

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

@Дизель, не, я по ходу о другом. Я юзаю каллбек получения предмета, и мне нужно понять, этот предмет я получил во время игры или этот предмет был получен до загрузки игры.

... А наше дело маленькое - с ружьём да по болотам. (с)

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

мне нужно понять, этот предмет я получил во время игры или этот предмет был получен до загрузки игры.

Отлавливай в той функции, в которой предмет выдается.

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

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

@Max_Raf, можно проверить, прошел ли уже апдейт актора (загружаемые вещи должны идти до первого апдейта).


@Dennis_Chikin, то есть то, что людина не будет шевелить губами при разговоре, и звук будет идти из левой пятки - это нормально, и всем так стоит делать?


@HellRatz, функция для единичного проигрывания звука от НПС, не нужно ничего никуда прописывать:



-- персонаж толкает речь
function npc_play_snd(actor, npc, p)
	if p[1] then
		local id = sound_theme.id()
		local character_prefix = npc:sound_prefix()
		npc:sound_prefix("characters_voice\\")
		local cnt = npc:add_sound(p[1], 64, snd_type.talk, 2, 1, id, "bip01_head")
		npc:sound_prefix(character_prefix)
		if cnt == 0 then
			printf("npc_play_snd[%s] cant find sound [%s]",npc:name(),tostring(p[1]))
			return
		end
		npc:play_sound(id, 0, 0, 1, 0, 0)
	end
end


%=npc_play_snd(scenario\agroprom\agr_base_commander_1)%
  • Спасибо 2
Ссылка на комментарий

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

 

В случае npc_play_snd - звук таки предварительно должен быть загружен в непися.

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

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

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

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

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

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

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

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

Войти

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

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

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

AMK-Team.ru

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