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

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


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

6 минут назад, sno сказал:

У всех death_items... и death_generic с нужного мне тольно дроп в инвентаре, йего количесиво и вероятность, а мне же нужно именно количество патронов в магазине, а на счет "в смерть_менеджере на итерации прописать оружию item:unload_magazine()", где его конкретно прописать так чтоб оно разряжало (или изменяло количество патронов в заряженом магазине) дробнутуе с нпс оружие ?

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

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

нужно сделать его или пустым либо с минимальным количеством патронов

 

В death_manager.script найди функцию set_weapon_drop_condition и добавь в ней item:set_ammo_elapsed(0)

 

function set_weapon_drop_condition(item)
	local condition = (math.random(40)+40)/100
	item:set_condition(condition)
	item:set_ammo_elapsed(0)
end

 

  • Спасибо 1
  • Полезно 2
Ссылка на комментарий
1 час назад, Jurok сказал:

В death_manager.script найди функцию set_weapon_drop_condition и добавь в ней item:set_ammo_elapsed(0)

Все прелесно заработало. Если можно еще один вопрос, я так понял здесь указанное отсутствие патронов (в принципе почти то что нужно), но, можно изменить этот показатель на процент например, я то не уверен но возможно здесь можно как-то это провернуть :

	local condition  = (math.random(40)+40)/100
	--printf("condition [%s]", tostring(condition))

?

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

Не совсем понимаю, что требуется. Рандомная вероятность полной очистки рожка? Вот пример из моей разработки:

function set_weapon_drop_condition(item)
	local condition = (math.random(40)+40)/100 
	local chance = 0.8 -- чем больше число, тем выше шанс очистки рожка.
	item:set_condition(condition)
	if (math.random() < chance) then
		item:set_ammo_elapsed(0)
	end
end

 

Изменено пользователем Jurok
  • Полезно 2
Ссылка на комментарий
15 часов назад, Jurok сказал:

Не совсем понимаю, что требуется. Рандомная вероятность полной очистки рожка? Вот пример из моей разработки:

Я имею в виду можно ли как-то указать диапазон количества например 1-12 патронов, но при этом например существуют магазины по 8 патронов и не будет ли сбоев в ситуации, когда рандом поставит на магазин с 8 патронов 12, можно ли это обыграть уравнением, По сути я хочу чтобы он не был пустым и не был полным, например чтобы с калаша дропалясь меньшая часть обоймы (0-20%, или 0-8 едениц), Просто если указать фиксированный диапазон в единицах 1-12 то как оно будет реагировать на обоймы с меньшим количеством патронов ? 

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

Добавлено  HellRatz,

Красный цвет текста - цвет администрации, использовать его запрещено. Устное предупреждение, пост поправил.

Ссылка на комментарий
11 часов назад, sno сказал:

можно ли как-то указать диапазон количества например 1-12 патронов, но при этом например существуют магазины по 8 патронов и не будет ли сбоев в ситуации, когда рандом поставит на магазин с 8 патронов 12

Ну так там-же, в смерть_менеджере, получай емкость магазина для оружия, а затем тем-же рандомом заполняй его на нужный процент. 

  • Нравится 1
Ссылка на комментарий
29 минут назад, AndreySol сказал:

Ну так там-же, в смерть_менеджере, получай емкость магазина для оружия, а затем тем-же рандомом заполняй его на нужный процент. 

Как ето можно прописать, у меня сейчас стоит так:

function set_weapon_drop_condition(item)
	local condition  = (math.random(40)+40)/100
	--printf("condition [%s]", tostring(condition))
	item:set_condition(condition)
	item:set_ammo_elapsed(1)

Дает 1 патрон или пустую обойму.

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

Всем прива

У меня возник один вопрос, на который я пока так и не смог найти ответа: я искал для своего мини-проэкта некоторые пушки, которые оказались только Shoker weapons mod(ну или как то так он называется). Но вот в чём беда - игра при попытке взять оружие в руки вылетает вот с этим

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

[error]Expression    : pm->m_animations.size()
[error]Function      : player_hud_motion_container::load
[error]File          : player_hud.cpp
[error]Line          : 103
[error]Description   : motion not found [lancew_m60_no_reload]

Из моего опыта я знаю, что это вылет связан с отсутствием прописанной в худ рук "wpn_hand_название_hud_animation.omf", но у оружие(в данном случае М60) такого файла в папке модели нет, в следствии, и прописать его "в руки"нельзя. Может кто знает как обходить данныу проблему? Был бы очень принателен, если бы поделидись советами и опытом?:)

 

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

В само "шокере" файлв по типу "wpn_hand_название_hud_animation.omf" почти нету (возможно используются дефолтные из ЗП) а у меня дефолтные заменены на их аналоги из CoP_Re-Animation_Project_2

 

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

Лучше сделать мод с 0, чем пытаться залатать багованный.

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

Как ето можно прописать,

Вариантов судя по всему два - получить емкость магазина из конфига оружия или из его нет-пакета. Тут надо спросить более сведущих в этом вопросе, что менее напряжно для двигла. Попробуй спросить об этом в разделе "Оружейка", как будет ответ - смогу подкинуть вариант кода.

Ссылка на комментарий
14 минут назад, Han Sola сказал:

Может кто знает

Я, конечно, специалист тот ещё :biggrin:. Попробуй просмотреть все "wpn_hand_название_hud_animation.omf". Была мода ради экономии все анимации засовывать в один ствол. В общем, стоит посмотреть самый большой по размеру  "wpn_hand_название_hud_animation.omf" - возможно там всё как раз и есть.

Ссылка на комментарий
25 минут назад, Купер сказал:

Была мода ради экономии все анимации засовывать в один ствол

ДА, а ведь догадлив ты черт:) Так все и было - в браунинг все запихали, воры:angry:

  • Смешно 1

Лучше сделать мод с 0, чем пытаться залатать багованный.

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

@sno, попробуй так:

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

function set_weapon_drop_condition(item)
    local condition  = (math.random(40)+40)/100
    item:set_condition(condition)
    local mag_size = system_ini():r_float(item:section(),"ammo_mag_size")
    item:set_ammo_elapsed(math.random(1, mag_size*0.5))
end

Патронов будет всегда меньше чем пол обоймы.

  • Спасибо 1

S.T.A.L.K.E.R. CoP Objects (upd 02.09.24)

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

@WinCap Спасибо, результат меня впринципе устраивает, от нуля до половины, но я думаю что в конечном пропишу 0.3, вилетов не было, все работает стабильно и заставляет економить патроны :) 

Изменено пользователем sno
Ссылка на комментарий

Добрый вечер. Собрал для себя небольшой мод, в который вставил динамические новости 1.02 от VanoSanturi. Обнаружилось неприятное - новости перестают приходить после 2-3 часов игрового времени. Не подскажете, из-за чего они перестают работать?

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

Подскажите пожалуйста:

как увеличить радиус слышимости окружающих звуков ? А то вблизи всё громко стреляет, рычит и трещит, а метров на 50 уже не слышно...

И второй вопр. Как сделать подбор предметов по одному, а не всю кучу за одно нажатие ?

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

как увеличить радиус слышимости окружающих звуков ?

Править звуки в СДК.

13 минут назад, sem_27 сказал:

Как сделать подбор предметов по одному, а не всю кучу за одно нажатие ?

ЕМНИП - править движок.

  • Согласен 1
 

Мать: ASRock X470 Master SLI. Процессор: AMD Ryzen 9 3900X 12-Core(4200 MHz).
Память: Patriot Memory 3200 C16 Series. DDR4-3200(1600МГц), 16Гбх2(32Гб).
Видео: GeForce GTX 1060 6GB. Блок питания: CoolerMaster 750 Вт. Корпус: Zalman i3 Edge.

Химера конечно сильный хищник, а все держится дома. Чего же ты пришел к ней домой и пытаешься её убить? © Болотный Доктор

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

Исправил ошибку, из-за которой переставали приходить новости в моде Dynamic news cop 1.02 от VanoSanturi.

Нужно исправить 2 скрипта: bind_stalker.script и VSm.script

 

в bind_stalker.script - функцию VScallback.OnActorUpdate(self,delta) заменить на VSm.OnActorUpdate(delta)

 

в VSm.script - функцию OnActorUpdate(binder) заменить на OnActorUpdate(delta)

 

На этом всё, всем удачи.

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

Всем привет! Хочу выдернуть костюмчики модели сталкеров из ЗОВ ПРИПЯТИ complete mod для чистой ЗП. Выдернул meshes и textures - act. Ничего не изменилось. Помогите пожалуйста. 

Добавлено  Murarius,

Перемещено.

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

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

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

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

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

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

Войти

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

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

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