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

Магазинное питание оружия


Kirag

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

Пересмотрел еще раз конфиги этих магазинов, в charged-ах нигде _e в конце нету.

Видимо какой-то рандомный глюк движка... в любом случае он очень редкий.

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

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

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

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

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

Сообщение от модератора Ааз
Я думаю прочитать тему все-таки придется.:rtfm:
Изменено пользователем Ааз
Ссылка на комментарий

SERGIKSHEF - попробуй переустановить.

А кто нибудь пробовал адаптировать к Чистому Небу, сам не смогу, в скриптах полный ноль.

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

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

Изменено пользователем serega-gamer

Реклама любых модов бесплатно на моём

сайте писать в личку

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

serega-gamer - было подобное, дело не в скриптах, а в неправильном указании емкости магазинов в конфигах оружия. Скопируй из конфигов Кирага, или напиши сам заново, по типу:

ammo_mag_size = 1 ; ammo_mag_size = 30 ; clip (magazine) size

ammo_class = mag_30_5.45x39_fmj, mag_30_5.45x39_ap, mag_45_5.45x39_fmj, mag_45_5.45x39_ap

; ammo_class = ammo_5.45x39_ap,ammo_5.45x39_fmj ; name of the ltx-section of used ammo

конфиг АКС-74У, АКС-74, АН-94

 

 

 

 

Изменено пользователем desert
Ссылка на комментарий
desert спасибо но я уж разобрался

Сообщение от модератора Ааз
Спасибо пишем в личку. Не забывай про знаки препинания, пред светит.
Изменено пользователем Ааз

Реклама любых модов бесплатно на моём

сайте писать в личку

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

Мож пропустил но всеже

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

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

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

Мод классный, но при игре вот такие стабильные вылеты

 

При распитии водки или при попытке купить что либо за нее у вояк такой вылет:

 

FATAL ERROR

 

[error]Expression : fatal error

[error]Function : CScriptEngine::lua_error

[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp

[error]Line : 73

[error]Description : <no expression>

[error]Arguments : LUA error: ....t.a.l.k.e.r\gamedata\scripts\kirag_take_drop.script:128: attempt to call field 'vodka_effect' (a nil value)

 

 

stack trace:

 

И вот такой вылет происходит если попробывать выполнить какие либо действия с подствольниками, прицелами или глушителями

 

FATAL ERROR

 

[error]Expression : fatal error

[error]Function : CScriptEngine::lua_error

[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp

[error]Line : 73

[error]Description : <no expression>

[error]Arguments : LUA error: ....t.a.l.k.e.r\gamedata\scripts\kirag_take_drop.script:56: attempt to call field 'convert_addon' (a nil value)

 

 

stack trace:

 

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

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

www.vofka, Это автор не до конца "вырезал" мод из своей сборки. Лечатся эти два вылета просто: в файле kirag_take_drop.script закомментируй (поставь символ -- перед кодом) строки строки 56 и 128

Например:

--item_effects.convert_addon(takesect,takeid) --так должна выглядеть строка 56
и строка 128
--item_effects.vodka_effect(sect)

Из этого файла вызывается много интересных функций. Может быть Kirag выложит что-нибудь из этого (например ремонт :ny_thumbsup: )

S.T.A.L.K.E.R. Weapon modding team - группа вКонтакте

Зона, это не артефакты, деньги монстры или война...Это стиль жизни...

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

Всем привет!

Во первых респект автору этого чудного мода. Теперь по теме.

Адаптировал мод к Восстановлению старого сюжета. Вроде бы все совместил, игра пошла. Дошел до Свалки и при обыске убитого бандита - вылет. Причем сколько бы не перегружал сейв, именно при обыске одного из бандитов вылетает. Плюнул, перестал обыскивать бандюков, пошел дальше. На Агропроме после спасения Крота при обыске одного из солдат опять вылет и опять та же история с загрузкой сейвов - стабильный вылет. Начал просматривать логи и нашел одну закономерность: вылет происходит в этот момент - level_prefix_inventory_box_0023.

Лог вылета на Свалке при обыске бандита:

sv destroy object [44288][ammo_12x76_dart:ammo_12x76_dart44288] [43133]
sv reject. id_parent [0][actor:single_player] id_entity [44288][ammo_12x76_dart:ammo_12x76_dart44288] [43133]
sv destroy object [44298][inv_separator:inv_separator44298] [43133]
sv reject. id_parent [0][actor:single_player] id_entity [44298][inv_separator:inv_separator44298] [43133]
sv reject. id_parent [0][actor:single_player] id_entity [44289][ammo_12x76_dart:ammo_12x76_dart44289] [43134]
sv ownership id_parent [3191][inventory_box:level_prefix_inventory_box_0023] id_entity [44289][ammo_12x76_dart:ammo_12x76_dart44289] [43134]
sv reject. id_parent [0][actor:single_player] id_entity [44290][ammo_12x76_dart:ammo_12x76_dart44290] [43134]
sv ownership id_parent [3191][inventory_box:level_prefix_inventory_box_0023] id_entity [44290][ammo_12x76_dart:ammo_12x76_dart44290] [43134]
sv reject. id_parent [0][actor:single_player] id_entity [44288][NOTFOUND] [43134]

FATAL ERROR

[error]Expression    : assertion failed
[error]Function      : xrServer::Process_event_reject
[error]File          : E:\stalker\sources\trunk\xr_3da\xrGame\xrServer_process_event_reject.cpp
[error]Line          : 12
[error]Description   : e_parent && e_entity


Лог вылета на Агропроме при обыске солдата:

sv destroy object [45313][ammo_12x76_dart:ammo_12x76_dart45313] [29845]
sv reject. id_parent [0][actor:single_player] id_entity [45313][ammo_12x76_dart:ammo_12x76_dart45313] [29845]
sv destroy object [45324][inv_separator:inv_separator45324] [29845]
sv reject. id_parent [0][actor:single_player] id_entity [45324][inv_separator:inv_separator45324] [29845]
sv reject. id_parent [0][actor:single_player] id_entity [45315][ammo_12x76_dart:ammo_12x76_dart45315] [29846]
sv ownership id_parent [3191][inventory_box:level_prefix_inventory_box_0023] id_entity [45315][ammo_12x76_dart:ammo_12x76_dart45315] [29846]
sv reject. id_parent [0][actor:single_player] id_entity [45316][ammo_12x76_dart:ammo_12x76_dart45316] [29846]
sv ownership id_parent [3191][inventory_box:level_prefix_inventory_box_0023] id_entity [45316][ammo_12x76_dart:ammo_12x76_dart45316] [29846]
sv reject. id_parent [0][actor:single_player] id_entity [45313][NOTFOUND] [29846]

FATAL ERROR

[error]Expression    : assertion failed
[error]Function      : xrServer::Process_event_reject
[error]File          : E:\stalker\sources\trunk\xr_3da\xrGame\xrServer_process_event_reject.cpp
[error]Line          : 12
[error]Description   : e_parent && e_entity

Может быть кто сталкивался с такой заковыкой при совмещении мода с ВСС и может посказать откуда берется этот level_prefix_inventory_box_0023?

Вообще, если кто совмещал магазины и ВСС может выложите ссылки? Я в скриптах не очень силен, действую скорее интуитивно, может где накосячил при совмещении файлов. Поэтому было бы интересно посмотреть на работы других и сравнить с ними. Выше была ссылка на совмещение от Callisto, (№205) но пишет, что срок хранения окончен, хорошо бы обновить.

Всем удачи!

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

Добрый всем день!

Kirag не подскажешь решение проблемки?

Совместил магазины с Восстановлением старого сюжета. Все работает нормально. Потом решил ввести мод Реальные болты (Вот ссылочка http://narod.ru/disk/10137379001/realbolt_%20v1.02.7z.html Автор Charsi. Реализует болты, которые заканчиваются, можно поднимать брошеный болт.). Совместил скрипты. Загрузил игру, для теста сразу выдал у Сидора ПМ и обойму к нему. Все работает - и болты и магазины заряжаются-разряжаются правильно. Проблема началась после помощи Толику у вагончика. Зарядка-дозарядка-разрядка магазина проходит нормально. а вот при разрядке пистолета (без разницы в слоте или в инвентаре) происходит увеличение количества полных магазинов на количество патронов, которое было в пистолете на момент разрядки.

Чтобы выяснить "откуда растут ноги" в файле ammo_manager.script расскоментил 522 строку (qqq("process_new_ammo: released")) и выяснил что этот глюк начинается как только обыскиваешь труп или какой-либо тайник. То есть сначала при разрядке оружия выводятся сообщения QQQ, а как только обыскиваешь - сообщения прекращаются. Получается, что функция перепаковки патронов в магазин перестала работать. Я прав?

В чем может быть дело? Как исправить?

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

Какая-то мистическая комбинация - ВСС+магаз+реалболт. Вчера xer-urg в личке про нее же спрашивал, при активации болта переставала дозарядка работать... Теперь глюки с конвертацией магазинов...

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

 

Пришла в голову еще одна мысль - а нет ли в ВСС своего перепаковщика патронов (в смысле, из неполных пачек в меньшее к-во полных)? Или в реалболте? При адаптаци к Соли мой перепаковщик и перепаковщик из Соли здорово друг другу гадили, когда пытались отработать одновременно. И поскольку мой работает при открытии/закрытии инвентаря/торговли/обыска одновременно с определением пояса - глюки перепаковщика могут повесить к чертям и пояс, а то и вместе с биндером актора. Пришлось, насколько помню, перепаковщик из Соли отключить вообще.

 

Кстати, Marafon6540, попробуй раскомментить еще функции qqq на взятие/потерю предметов, может, вообще биндер актора висит...

 

Со скачкой у меня сейчас проблемы, весь трафик спалил, только тексты читать по карману :(

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

Мои работы:

Ночные прицелы + смена ножевого слота

AI вертолетов + ПЗРК

Soul Cube

 

Работаю только с ТЧ. С ковырянием ЧН/ЗП не связываюсь ни в какой форме. Совсем.

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

Kirag

После долгого ковыряния кажется докопался в чем причина. Глюк происходит в трех случаях: при торговле и при обыске трупа\ящика, т.е. когда открывается (не знаю как правильно это сказать) окно торговли - на одной стороне инвентарь ГГ, на другой инвентарь НПС\трупа\ящика. Дело в том, что в моде два вида болтов - bolt и fake_bolt. Так вот когда просто открываешь инвентарь клавишей i в нем виден только fake_bolt, а если торгуешь\обыскиваешь, то видны и fake_bolt и bolt. Получается что bolt в это время удаляется из своего 5 слота в инвентарь и сразу после этого начинают глючить магазины. Какая тут связь убей не пойму. Как его оставить в слоте у меня ума не хватает. Вроде бы и место это нашел в скрипте:

function on_info(info_id)
if info_id == "ui_car_body" or info_id == "ui_trade" then
	if db.actor:item_in_slot(5) then
		del_bolt()
		spawn_item_in_inv("fake_bolt")
	end		
elseif  info_id == "ui_car_body_hide" or info_id == "ui_trade_hide" then
	local obj = db.actor:object("fake_bolt")
	if obj then remove_item(obj) db.actor:transfer_item(db.actor:object("bolt"),db.actor)  end
	end
end

function del_bolt()
-- спавним болт чтоб не было битья сейва
local npc=db.actor
alife():create("bolt", npc:position(),npc:level_vertex_id(),npc:game_vertex_id(), 0)
f=true f2=true
bolt_in_hands_id=nil
db.actor:transfer_item(db.actor:item_in_slot(5),level.object_by_id(box_id))
end

а что делать с ним не знаю.

Да, есть еще четвертый случай - если сразу после начала игры выбросить bolt (он пока единственный). Выбросил - в слоте болтов ничего нет - не стал поднимать - разрядил пистолет - получил +8 магазинов. Поэтому я и сделал вывод, что если нет болта в слоте, начинаются проблемы.

P.S. Чертовы болты!... Но интересно.

Ссылка на комментарий
Marafon6540, а ты не в курсе, как сделать чтоб выброшенный болт сразу же можно было поднять? У меня при адаптации этих же болтов к магазинам получилось почему-то так: выкинутый болт должен полежать на земле с полминуты, потом он как бы подпрыгивает и только тогда его можно поднять. Глюков с работой магазинов не заметил. Может, тестил мало...
Ссылка на комментарий
k01jan, этого походу никак не сделаешь. Насколько я понимаю, выкидывается обычный болт, потом он убирается и подменяется фэйковым , который и можно поднять. Вот подпрыгивание и есть момент подмены.
Ссылка на комментарий

k01jan, Полностью согласен с xer-urg, у меня точно так же все происходит, только задержка не полминуты, а секунд 6-7. Кстати поднять можно и первый болт, и он явно еще не фейковый, прямо у Сидора если бросить. Но он тоже подпрыгивает, значит и он превращается в фейковый? Но в инвентаре при торговле он идет отдельно от фейковых и просто как болт, он всегда один.

 

Добавлено через 111 мин.:

xer-urg, выяснил дело точно не в ВСС. Поставил сейчас Магазины на чистый Сталкер, совместил с болтами и получил тоже самое, что и раньше - Магазины перестают работать как только открывается окно торговли или обыска. В файле bolt_mod.script есть функция function on_info(info_id) где упоминаются оба эти окна ("ui_car_body" и "ui_trade"), правда как на инфопоршни, но ссылок на саму эту функцию я больше нигде не нашел. В какую сторону дальше копать не знаю. Но задача становится все интересней. :dash2:

 

P.S. Сбрехал. Нашел ссылку на функцию. В bind_stalker. Попробую покопаться здесь.

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

Доброй всем ночи!

xer-urg, всё, совместил ВСС, Магазины, Болты. Сделал одну маленькую правочку: закомментировал в bind_stalker.script в функции actor_binder:info_callback обработку bolt_mod.on_info(info_id). Все работает.

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

А на ВСС нет никаких проблем. Для теста прошел Кордон и Свалку. Выполнял все квесты, примерно каждые 5 минут сохранял-загружал. Ни одной проблемы. Если еще интересует - пиши. Попробую куда-нибудь выложить адаптацию (никогда этого еще не делал).

 

Kirag, спасибо за наводку по направлению поиска ошибки. Отдельный респект за твой мод. Он у тебя супер! Когда с 2 обоймами к ПМ в одиночку штурмуешь АТП, а там ребятки с Бизонами - это что-то!

Кстати нашел в нем один "недостаток". Пришел с АТП, погода мерзкая, весь израненный, голодный, присел у костерка погреться, анекдотов послушать. Достал магазин от Бизона, решил зарядить в кругу друзей. И тут началось: Убери оружие-Чувак ты что оглох?-Опусти оружие. Пришлось прятаться в подвал, и там в одиночку, чтоб никто не дай бог не заметил набивать магазин.

Отсюда вывод - твой мод первый претендент на звание Самый интимный мод для Сталкера! :ny_z_6:

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

Marafon6540

Дело в том, что в моде два вида болтов - bolt и fake_bolt. Так вот когда просто открываешь инвентарь клавишей i в нем виден только fake_bolt, а если торгуешь\обыскиваешь, то видны и fake_bolt и bolt. Получается что bolt в это время удаляется из своего 5 слота в инвентарь и сразу после этого начинают глючить магазины. Какая тут связь убей не пойму.

 

Вот отсюда ноги и растут.

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

Удаляется предмет, как всегда, алайф релизом, по серверному объекту. Но у болта серверного объекта не существует, поэтому и удалить его невозможно, только бросать под ноги - я с этим сталкивался, когда делел смену худа в зависимости от костюма. И при попытке удалить несуществующий объект систему закономерно клинит.

 

А про недостаток - НПС реагируют, как я понимаю, на класс оружия (может, и на активный слот, но врядли - арты и детекторы в пистолетном слоте возмущения не вызывают), и им не интересно, опасно ли оно. Класс шотгана = "убери ствол". По хорошему, надо найти эту реакцию и прописать исключения, но искать было лень...

Мои работы:

Ночные прицелы + смена ножевого слота

AI вертолетов + ПЗРК

Soul Cube

 

Работаю только с ТЧ. С ковырянием ЧН/ЗП не связываюсь ни в какой форме. Совсем.

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

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

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

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

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

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

Войти

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

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

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