Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском по разделу, ответ на него, вероятно, уже есть.
Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода.
Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа).
Благодарность выражаем в личке или же ставим плюсик в историю репутации. Подобные посты будут удаляться.
OP_artovod, AziatkaVictor, Как же вы странно анекдоты рассказываете. Один рассказчик - начало, второй - середину, а мне что концовку самому придумывать? Как же весь анекдот от оного рассказчика услышать? Как в школе учили: вступление—основная часть—заключение: Что хочу сделать, что сделал и что не получается?
Сообщение отредактировал denis2000 - Четверг, 21.05.2020, 13:21
denis2000, ну, как я понял, он хочет сделать НПС с одинаковыми визуалами, но разным снаряжением (у одного АК, у второго ТОЗ). Он пытался сделать на подобии sim_default_группировка, но либо не знает как, либо делает так же как и sim_default_stalker, но оно не работает.
Добро. Дайте пример таблицы и счётчика, то есть в таблице прописано 20 доступных объектов, игрок должен хоть раз за игру подержать в руках 15 объектов из этой двадцатки (НЕобязательно, чтобы у игрока одновременно было 15 объектов), соответственно, когда счётчик достигает 15, происходит действие. Написал такую функцию, но она не работает:
Код
local pda_table = { "npc_pda_borzoy", "npc_pda_sutener", "npc_pda_dry", "npc_pda_panamorev", "npc_pda_tarakan", "npc_pda_begemot", "npc_pda_aferist", "npc_pda_pirat", "npc_pda_marader_trade", "npc_pda_semeckiy", "npc_pda_chekan", "npc_pda_morda", "npc_pda_kulak", "npc_pda_pron", "npc_pda_zver", "npc_pda_courier", "npc_pda_fedych", "npc_pda_eger", "npc_pda_fagot", "npc_pda_army_sniper" } local pda_counter = 0 for k,v in pairs (pda_table) do if xr_conditions.actor_has_item(actor, npc, v) then pda_counter = pda_counter + 1 end
Разумеется, это часть большой функции, все теги и проверки далее в скрипте присутствуют.
Сообщение отредактировал Neptun - Четверг, 21.05.2020, 14:04
в теле функции, то при каждом вызове вы будете ее обнулять. Эту переменную в обязательном порядке нужно сохранять в сейв и восстанавливать при загрузке, иными словами обнулять ее стоит только если из сейва ее не считали. Я думаю нет необходимости в проверке через функцию из xr_conditions, можно вписать такое условие:
Код
db.actor:object( v ) ~= nil
Проверка в цикле сама по себе ущербна! Есть же колбек на получение объекта ГГ (actor_binder:on_item_take), вот там и нужно проверять входящие объекты на совпадение с таблицей. Лучше всего через Динамическое подключение/отключение функций.
Сообщение отредактировал denis2000 - Четверг, 21.05.2020, 14:19
Гаспада с нпс я разобрался и кажется начал разбираться с атмосфером переустановил его проблема не решилась, точнее решилась но частично, на оргиналах зп всё работает но на кардоне и болотах нет и я вот думаю может надо локации куда то в скрипт в писать погодный или нет?
AziatkaVictor, нет вы неправильно поняли я имею в виду скрипты атмосфера, потому что как и куда вписывать новые локи я знаю AziatkaVictor,
Добавлено (21.05.2020, 14:38) --------------------------------------------- AziatkaVictor, к примеру вот какая то проверка
function WeatherManager:get_level_name() local level_name=level.name() if level_name~="jupiter" and level_name~="pripyat" then level_name="zaton" end return level_name end
OP_artovod, нет, это ты не так понял. Я про скрипты и говорю. И конфиг тоже править надо, в котором игрок выбирает погоду на уровнях. Я не про подключение локации к игре, а к атмосфиру.
Сообщение отредактировал AziatkaVictor - Четверг, 21.05.2020, 14:42
У меня такое было, у моего NPC также стояла метка, но на карте так и не было метки, если отойти от NPC на расстояние где он пропадает и вернутся то метка появится
Значит в начале игры буду телепортировать актёра в конец карты, потом обратно.
AziatkaVictor, нет ну это всё понятно просто я в скриптах не силён и может что ненужное сделаю вот в чём беда
Добавлено (21.05.2020, 15:02) --------------------------------------------- Expression : !m_error_code Function : raii_guard::~raii_guard File : ..\xrServerEntities\script_storage.cpp Line : 748 Description : ...call of pripyat\gamedata\scripts\bind_stalker.script:504: attempt to concatenate field '?' (a nil value) что за вылет
Добавлено (21.05.2020, 15:04) --------------------------------------------- get_console():execute("g_game_difficulty "..game_difficulty_by_num[game_difficulty]) вот строка на которую ссылается лог
OP_artovod, Мб новую сложность создал, или что-то редактировал со сложностями, или добавлял. Игра не может выслать это в консоль. Можешь попробовать перед строчкой написать -- , это может устранить вылет
Добавлено (21.05.2020, 18:58) --------------------------------------------- У тебя вылетает игра при загрузке актёра. Может что-то правил/добавлял неизвестное для игры значения?
Пытаюсь поменять имя на основе мода SZA Freemode. Меняю GENERATE_NAME_stalker в character_desc_general на st_actor_name. Результатов 0, если кто-то сталкивался с этим дайте знать.