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

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


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

Ну да)

При инициализации иконки, она читает этот параметр из секции конфига того предмета, на который создается.

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

Я понял что моя старая подпись что-то нарушает. Удалил все ссылки.

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

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

@ARTLantist, нужно переписать функцию "trade_manager.update(npc)".

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

S.T.A.L.K.E.R. CoP Objects  >200 шт  (upd 21.05.26) - Скачать  (Яндекс-диск)

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

Заспавнил труп сталкера таким способом: alife():create("new_stalker",[координаты]):on_death(). Как теперь его отследить? И как получить его ID? Проверки по имени или секции не срабатывают.

New Anomalies 1.1 ☢☢☢ "Смерть-лампа" ☢☢☢ Дисраптор

Русификатор для игры Vendetta: Curse of Raven's Cry

@Jekyll Вот это не сгодится?

 

local spawn = alife():create(…)
level.client_spawn_manager():add(
spawn.id, -1, fx)

 

function fx(id, obj)
…
end

  • Спасибо 1
  • Полезно 1
  • Сомнительно 1

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

Шпаргалка

17.03.2021 в 13:36, Jekyll сказал(а):

И как получить его ID?

local s_obj = alife():create("new_stalker".....)

if s_obj then

     s_obj.id

  • Согласен 1
  • Полезно 2

Какую аналогию заполнения инвентаря дефолтных нпс можно придумать на замену прописыванию их в файлах character_drugs.xml, character_food.xml, character_item.xml, которые потом инклудятся в character_desc_general для этих нпс? Фигня в том, что там есть какой-то предел количества предметов, выйдя за который, игра уходит в вечную загрузку (ну лично у меня). Самый лучший вариант через скрипты, я думаю... Но как в таком случае отловить момент спавна нпс, чтобы заполнить его инвентарь?

@ARTLantist У серверных объектов НПС, есть свой биндер, расположен в файле se_stalker.script

И там среди прочего, есть такой метод

function se_stalker:on_spawn()

Который как раз и вызывается после появления в игре, нового серверного объекта нпс.

  • Спасибо 1
  • Полезно 1

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

Я понял что моя старая подпись что-то нарушает. Удалил все ссылки.

Заметил у себя один баг, не знаю, на каком этапе он появился, поэтому вынужден обратиться к знатокам. Вот в чём он проявляется: после смерти нпс идёт какая-то задержка, которая не даёт его обыскать. Надпись как бы есть, но жать F можно сколько угодно - пока не пройдет где-то 3-4 секунды - окно обыска трупа не откроется. С чем это может быть связано?

Только что, ARTLantist сказал(а):

С чем это может быть связано?

Предлагаешь форумчанам по-гадать на кофейной гуще? Или шар стеклянный поискать...

Мой тебе совет, как искать причины вообще любых каких угодно багов, уже был у тебя в личке. Ставь вызовы Msg во всех подозреваемых местах, и смотри что там творится. По цепочке начиная от обработки нажатия кнопок в Actor OnKeyboard, и до открытия окна CUICarBodyWnd его методом Show. Проследи по порядку, кто откуда кого вызывает, если твой движок не прикладывает время к каждой строчке лога автоматически, значит добавь в каждый Msg вывод Device.dwTimeGlobal.

Логи в руки, и вперед) Другого совета тут быть не может, полагаю. Тебе же для отладки нужен точный ответ, а не какие-то догадки. Он получается только так.

  • Согласен 1

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

Я понял что моя старая подпись что-то нарушает. Удалил все ссылки.

Здрасьте.

 

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

Пример: Юпитер, тоннель с призраком электрика и артефактом "Измененный изолятор" – из-под контейнера торчит приклад LR-300, но как вокруг ни пляши, автомат не берется. Судя по другим тайникам, при наведении на предмет должно отобразиться не только название, но и иконка, иначе предмет не возьмется. Значения take_dist и pickup_info_radius в конфигах те же, что и в ТЧ/ЧН.

Было ли это "вылечено" в модах, и каким способом?

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

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

Шпаргалка

Балуясь с COC 1.4.22 заметил что все трупы всегда лежат в онлайне. Есть ли какой человеческий способ без придумывания велосипедов заставить их переходить в оффлайн как и должны? cse_alife_human_stalker.can_switch_online(self) как я понял всегда возвращает true. Как это исправить?

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

@Max_Raf , можно в se_stalker.script в функции can_switch_online добавить свою проверку, например

if ( not self:alive() ) and self.position:distance_to( db.actor:position() ) > 150 then

  return false

end

 

  • Полезно 1

Аддон для ОП-2.09.2: Яндекс/Google/GitHub/Тема на AP-PRO

naxac.gif

Прикладываю к вопросу выше – на случай, если описания недостаточно: https://drive.google.com/file/d/1Nu8XpN0a1sswM_qDat-JHCx_LLXLjgBt

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

Шпаргалка

@Norman Eisenherz могу сильно ошибаться. Но как мне известно, работает оно таким образом, что должна быть видна сама кость (joint), которая как раз таки на этом скрине находится за препятствием. Как вариант, попробовать добавить дочернюю кость к прикладу и дулу - посмотреть, сработает ли.

☭- Пролетарии всех стран, соединяйтесь!

 

@naxac , неа, не помогло. Всё так же в онлайне. Я ранее делал немного иначе:

 

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

sw_sim = nil
sw_actor = nil
sw_max_dis = nil

function can_switch( self, f_online, f_offline )
	-- чтоб не дёргать по 100 раз
	sw_sim = sw_sim or alife()
	sw_actor = sw_actor or sw_sim and sw_sim:actor()
	sw_max_dist = sw_max_dist or sw_sim and sw_sim:switch_distance()
	
	-- если всё есть
	if self and sw_sim and sw_actor and sw_max_dist then
		if f_online then
			return self.position:distance_to(sw_actor.position) <= sw_max_dist or false
		elseif f_offline then
			return self.position:distance_to(sw_actor.position) > (sw_max_dist + 20) or false
		end
	end
	return true
end

function se_stalker:can_switch_offline()
	if self.group_id ~= 65535 then
		return true
	end

	if self.online then
		return can_switch( self, false, true )
	end

	return cse_alife_human_stalker.can_switch_offline(self)
end

function se_stalker:can_switch_online()
    if self.group_id ~= 65535 then
        return true
    end

	if not self.online then
		return can_switch( self, true, false )
	end

    return cse_alife_human_stalker.can_switch_online(self)
end

 

 

Мой велосипед вроде был работающим, но иногда ловил вылет в таком стиле:

 

ERROR: CGameObject:net_spawn() Object with ID already exists! ID=61719 self=sim_default_bandit_061719 other=sim_default_bandit_061719

 

То есть такое впечатление что объект переходил в онлайн и биндился дважды. Как пофиксить - не знаю.

 

 

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

@WizziGun Тоже юмор… А как быть с аптечками, у которых только одна кость, но, скажем, аптечка на полке на уровне глаз берется только в прыжке, а на уровне рук – свободно?

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

Шпаргалка

@Norman Eisenherz,

не знаю, что с этим оружием, что у тебя на скрине, но реагирует ГГ не на кость, а на шейп.

  • Полезно 1

ed_rez.gif

c1f11b67ff360413e81b4e4dcf21eb41.jpg

Здравствуйте. Подобный вопрос уже когда-то задавался в этой теме, но с тех пор много воды утекло.

Кто-нибудь проверял соотношения свойств артефактов ТЧ и ЗП? Например, ожог +10% (в ТЧ) равен термозащите +10 в ЗП? То же самое касается "восстановительно-накопительных" свойств.

New Anomalies 1.1 ☢☢☢ "Смерть-лампа" ☢☢☢ Дисраптор

Русификатор для игры Vendetta: Curse of Raven's Cry

Здрасьте.

 

Где хранится ссылка на текстуру рук без брони?

В ЧН это была модель [meshes\dynamics\weapons\wpn_hand\wpn_hand_01.ogf], но в ЗП при любых изменениях такой же модели игра никак не реагирует. Пробовал менять ссылки в [actor_hud] и в [outfit_base] – аналогично.

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

Шпаргалка

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

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

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

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

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

Войти

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

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

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