ColR_iT 171 Опубликовано 27 Мая 2013 Поделиться Опубликовано 27 Мая 2013 Сталкер Лом, как думаешь, т.к. баг появился не недавно, а существует с релиза, то неужели бы никто бы его за столько времени не решил скриптами, если бы это было возможно? А с переходом на другую схему, что у тебя? Ссылка на комментарий
Сталкер Лом 356 Опубликовано 27 Мая 2013 Поделиться Опубликовано 27 Мая 2013 ColR_iT, поглядел форум и увидел Ваш урок по Кодовым тайникам, решил сделать подобное, но для дверцы сейфа (при вводе правильного пароля дверцу можно будет открыть). Заменил строки в ph_code.script: Было: if tonumber(text) == self.st.code then if self.st.on_code then printf("ph_code <OnNumberReceive>: on_code [%s]", text) xr_logic.pick_section_from_condlist(db.actor, self.object, self.st.on_code.condlist) endend Стало: if tonumber(text) == self.st.code then if self.st.on_code ~= nil then printf("ph_code <OnNumberReceive>: on_code [%s]", text) local section = xr_logic.pick_section_from_condlist(db.actor, self.object, self.st.on_code.condlist) xr_logic.switch_to_section(self.object, self.st, section) return true endend То есть, как указанно в уроке. Однако, при вводе правильного пароля ловлю вылет с жалобой на xr_logic.script: FATAL ERROR[error]Expression : !m_error_code[error]Function : raii_guard::~raii_guard[error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp[error]Line : 748[error]Description : ....e.r. - Зов Припяти\gamedata\scripts\xr_logic.script:381: attempt to call method 'section_exist' (a nil value) Вот на эту функцию: if not ini:section_exist(section) then abort("object '%s': activate_by_section: section '%s' does not exist", npc:name(), section)end На всякий случай приведу и логику двери: [logic]active = ph_code@close[ph_code@close]code = 1935on_code = ph_door@closed %=play_sound(seif_unlock)%[ph_door@closed]closed = truelocked = falseon_use = ph_door@opensnd_open_start = trader_door_open_startsnd_close_start = trader_door_close_startsnd_close_stop = trader_door_close_stop[ph_door@open]closed = falselocked = falseon_use = ph_door@closedsnd_open_start = trader_door_open_startsnd_close_start = trader_door_close_startsnd_close_stop = trader_door_close_stop "Вот, собственно, и всё..." (с) Работы на Artstation - https://www.artstation.com/artist/stalker_lom Ссылка на комментарий
ColR_iT 171 Опубликовано 27 Мая 2013 Поделиться Опубликовано 27 Мая 2013 (изменено) Сталкер Лом, скинь файл xr_logic.script, он у тебя изменённый, не могу общую картинку себе "нарисовать". P.S. не забывай про теги code. Изменено 27 Мая 2013 пользователем ColR_iT Ссылка на комментарий
Сталкер Лом 356 Опубликовано 27 Мая 2013 Поделиться Опубликовано 27 Мая 2013 ColR_iT, вот ссылка:http://rghost.ru/46298854 Работы на Artstation - https://www.artstation.com/artist/stalker_lom Ссылка на комментарий
ColR_iT 171 Опубликовано 27 Мая 2013 Поделиться Опубликовано 27 Мая 2013 Сталкер Лом, как оказалось, причина ошибки в том, что в функцию switch_to_section вторым параметром нужно передавать не саму табличку self.st, а одно из полей этой таблицы self.st.ini. 1 Ссылка на комментарий
stalker_mk2345 0 Опубликовано 29 Мая 2013 Поделиться Опубликовано 29 Мая 2013 (изменено) Как урезать видимость НПС? В файле m_stalker.ltx в секции stalker поправь значение двум (а может и одному) параметру: eye_fov - угол зрения; eye_range - дальность видимости. ColR_iT Изменено 29 Мая 2013 пользователем ColR_iT Ссылка на комментарий
serega-gamer 0 Опубликовано 8 Июня 2013 Поделиться Опубликовано 8 Июня 2013 Приветствую. Подскажите пожалуйста, как можно устроить проверку по имени секции, на количество появившихся боеприпасов в инвентаре гг? (ЗП) Реклама любых модов бесплатно на моём сайте писать в личку Ссылка на комментарий
Shredder 49 Опубликовано 9 Июня 2013 Поделиться Опубликовано 9 Июня 2013 Через колбэки item_take, item_drop. Поскольку любое добавление/удаление предметов проходит через эти колбэки, можно кэшировать кол-во патронов и проверять только одну переменную, а не перебирать весь инвентарь. ammos = {} function take_item(item) if item:clsid() == clsid.wpn_ammo_s then local sect = item:section() if not ammos[sect] then ammos[sect] = 0 end ammos[sect] = ammos[sect] + get_ammo_size(item) end end function drop_item(item) if item:clsid() == clsid.wpn_ammo_s then ammos[item:section()] = ammos[item:section()] - get_ammo_size(item) end end function ammo_in_inv(sect) return ammos[sect] or 0 end function get_ammo_size(obj) local se_obj = alife():object(obj:id()) packet:w_begin(0) se_obj:STATE_Write(packet) packet:r_seek(packet:w_tell() - 2) return packet:r_s16() end Вызов item_take и item_drop добавишь в bind_stalker.script. Кол-во патронов проверяешь через ammo_in_inv Ссылка на комментарий
JohnWaine 1 Опубликовано 9 Июня 2013 Поделиться Опубликовано 9 Июня 2013 (изменено) Запрещено оставлять повторные сообщения, даже в разных темах. Пока-что - устное предупреждение. ColR_iT Изменено 9 Июня 2013 пользователем ColR_iT Спуск! Выстрел! И воздух рассекая Судьба моя устремлена вперед Свинцом одарит, душу отнимая. Сквозь дырку в каске жизнь твоя уйдет. Ссылка на комментарий
Wo1fRam 79 Опубликовано 11 Июня 2013 Поделиться Опубликовано 11 Июня 2013 (изменено) Здрасьте. Можно ли скриптом проверить погоду? Вроде, где-то видел, что в логике прописывалось то ли is_rain, то ли is_rainy, а сейчас не могу найти. Или мне приснилось?.. Перефразирую вопрос: можно ли скриптом проверить какая секция погоды в данный момент задействована? Изменено 11 Июня 2013 пользователем ColR_iT Мой канал на YouTube Бессмысленно осмысливать смысл неосмысленными мыслями. Ссылка на комментарий
ColR_iT 171 Опубликовано 11 Июня 2013 Поделиться Опубликовано 11 Июня 2013 @Wo1fRam, абсолютно разные вопросы. Получить интенсивность дождя в текущем пресете можно при помощи функции level.rain_factor(). А вот на счёт секции сложнее. Здесь ещё нужно уточнить какая именно секция тебя интересует. Есть функция level.get_weather(), она возвращает название погоды из секции weather в файле environment.ltx. Но я не знаю, чем она может тебе помочь. Ссылка на комментарий
stalkerok007 9 Опубликовано 16 Июня 2013 Поделиться Опубликовано 16 Июня 2013 Всем привет. Я вот задался вопросом после просмотра видео с тестовыми анимками разраба Долины Шорохов... В ЗП ИИ настолько развит, что неписи сами, видя препятствия, в виде ящиков, лезут на них, или как? Или в логику пишется ремарка на определенный вей-поинт, в которой непись сию анимку проигрывает? Я прямо удивился... Ах да... Наверно в вершине пути на имени точки прописали "|a="... Точно, тупанул... Но все равно это трудно вымерять, подгонять... Метром ошибся - непись по воздуху полезет. Ссылка на комментарий
tyrkmen 0 Опубликовано 17 Июня 2013 Поделиться Опубликовано 17 Июня 2013 привет всем. стоит 2.2 sigerous mod - в нем обнаружил что НПС не боятся вообще выбросов. Где подредактировать данный параметр? В версиях 1,7-2,1 НПС помирали после выбросов очень хорошо, в 2.2 уже нет. Ссылка на комментарий
S.K.Y.M.I.X.X.E.R.S 4 Опубликовано 17 Июня 2013 Поделиться Опубликовано 17 Июня 2013 (изменено) Доброго времени суток всем. Вопрос касается логики CoP =run_postprocess(black:номер:true) откуда знать какой писать номер, брать спонтанный из головы. . То, что он затем используется при остановке процесса это понятно. Заранее спасибо. stalkerok007 Здесь ничего непонятного нет. НПС плевать где есть сетка. Главное чтобы он стартанул из нее. Здесь вопрос в другом. Такие анимы специально пишутся под специальные места на локации. Если анимацию "вылезает на ящик" можно использовать н-р на Затоне (хотя он на ящик вылезет и даже пойдет по нему, когда на ящике АИ сетки нету, потому что это является частью самой анимации.). Ну а дальше он пойдет по воздуху до АИ. На видео он стартует из сетки и заканчивает на сетке. А там на ящике 100 процентов есть АИ. В ЗП ИИ настолько развит, что неписи сами, видя препятствия, в виде ящиков, лезут на них, или как? Или в логику пишется ремарка на определенный вей-поинт, в которой непись сию анимку проигрывает? Я прямо удивился... С анимой "наброска каши", то она подойдет только в одно место на локации, разве что кухни будут везде одинаковые , н-р Холоду на базе ЧН она не подойдет. Эти анамация также сделаны, как анимы в ЧН перелаз через забор на Янтаре. А думаешь, что если на старте ЧН, когда Лебедев отдает честь и уходит, то он идет по сетке? Нет, это его анимация такая .Там сетка будет, или не будет не важно. В логике задаешь ремарку и название анимации и все он ее выполняет. По постпроцессу. Номер писать нужно действительно с головы. Этот номер будет присвоен объекту постпроцесса как id. Главное, чтобы он не повторялся, иначе может выйти весьма неприятная ситуация, когда завершится должен был одни процесс, а завершается другой. ColR_iT Изменено 18 Июня 2013 пользователем ColR_iT Ссылка на комментарий
lambdist 16 Опубликовано 18 Июня 2013 Поделиться Опубликовано 18 Июня 2013 Какой нужно изменить параметр в конфигах гранат и бинокля, чтобы можно было с ними носить детектор? A.A.A. Modpack:https://yadi.sk/d/UPMwEl7ecjN4i Ссылка на комментарий
Сталкер Лом 356 Опубликовано 18 Июня 2013 Поделиться Опубликовано 18 Июня 2013 lambdist, есть такой параметр: single_handed, если его приравнять к единице, то можно будет брать одной рукой. P.S. С биноклем - это да, но как будешь вкручиваться с гранатой? Кольцо взглядом вырываем? Работы на Artstation - https://www.artstation.com/artist/stalker_lom Ссылка на комментарий
Artworth 1 Опубликовано 18 Июня 2013 Поделиться Опубликовано 18 Июня 2013 Народ, а у кого-нибудь получалось (кто-нибудь вообще пробовал??) исправить бинокль: в ТЧ и ЧН подносишь к глазам - и кратность увеличения та, что выставил при прошлом использовании, а в ЗП - каждый раз сразу максимальное увеличение... Раздражает, однако. Правкой конфигов дело не исправить. Где копать? Ссылка на комментарий
S.K.Y.M.I.X.X.E.R.S 4 Опубликовано 19 Июня 2013 Поделиться Опубликовано 19 Июня 2013 HI ALL !!! Когда в валкере задаешь название команды "team = имя команды", больше нигде не нужно ее регистрировать? И вообще, что оно дает, когда каждому нпс из сквада прописать ее? Ссылка на комментарий
stalkerok007 9 Опубликовано 20 Июня 2013 Поделиться Опубликовано 20 Июня 2013 (изменено) Всем привет. Решил заняться спавном через смарты-сквады в ЗП. Однако, меня заканал вылет: Expression : !m_error_code Function : raii_guard::~raii_guard File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp Line : 748 Description : ...\gamedata\scripts\smart_terrain.script:1139: attempt to perform arithmetic on field 'arrive_dist' (a nil value) Все файлы, которые менял, я перекопал, и arrive_dist нигде не прописывал (ибо как я понял, обойтись можно и без этого параметра). В чем может быть проблема? Напишите самую распространенную причину сего вылета. Если необходимо - приведу текста всех измененных мною файлов (то, что менял). Заранее спасибо. З.Ы. Гугл не помог, как и поиск по АМК-форуму. Всё, справился сам =) Изменено 20 Июня 2013 пользователем stalkerok007 Ссылка на комментарий
S.K.Y.M.I.X.X.E.R.S 4 Опубликовано 20 Июня 2013 Поделиться Опубликовано 20 Июня 2013 stalkerok007 покажи, что ты редактировал Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти