macron 1 898 Опубликовано 22 Апреля 2014 Скажите, а скриптами можно в ТЧ 1.0006 ускорить мышиный курсор в UI-менюшках (главное меню, инвентарь и т.п.)? Уж больно он неповоротливый. ЗЫ: знаю, что через движок точно можно, но пока никто не сделал, рассматриваю скрипты как альтернативу. Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 22 Апреля 2014 (изменено) @Dennis_Chikin, судя по вопросам, ты раньше не имел дел с движком 1.0007. Скажем так: перейдя с него на 6, сразу заметна разница. Нет, mouse_sens относится только к 3D, а не UI. В теме ковыряний движка я тоже спросил, но и скриптовой вариант не помешал бы. Изменено 22 Апреля 2014 пользователем macron Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 26 Апреля 2014 Вопрос по скриптовому ускорению мышиного курсора в UI-менюшках снимается в связи с движковой реализацией данной фичи. 1 Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 8 Февраля 2015 как узнать координаты ГГ на мультиплеерной карте? rs_stats 1 разве не катит ? Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 2 Июня 2015 (изменено) Тут вопрос возник (ТЧ с модом OLR). Пытаемся сделать, чтобы в момент сохранения проверялись координаты всех объектов локации, и если у каких-то объектов координаты совпадут с координатами заданного объекта (в данном примере это changer_test), то чтобы такие объекты удалялись. Вот такой скрипт подгружаем, но он всегда даёт положительный результат, ничего не удаляя, то есть сравнение не срабатывает. local changer_test = alife():object("lvl14_stancia_level_changer_0001") function update() if db.actor then for i=1,65535 do local gluk_obg = level.object_by_id(i) if gluk_obg ~= nil and gluk_obg:position():distance_to(changer_test)<0.01 then amk.remove_item(gluk_obg) news_manager.send_tip(db.actor, "Удаляем глючный объект - ОК") log1("Удаляем глючный объект - ОК") break elseif i == 65535 then news_manager.send_tip(db.actor, "нет глючных объектов") end end end end Изменено 2 Июня 2015 пользователем macron Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 2 Июля 2015 (изменено) Можете исправить, где-то накосячил, наверное. Пытаюсь создать скрипт, удаляющий объект по заданным xyz координатам. Непосредственно для уничтожения задействован amk.remove_item. Но до него, наверно, даже не доходит. -- удаление объектов совпадающих по координатам с lvl14_stancia_level_changer_0001 -- координаты объекта для уничтожения local gluk_object:position() = vector():set(116.575942993164, -0.0990743637084961, 518.794067382813) local actor = db.actor local lev_name = level.name() function update() if actor and lev_name == lname then for i=1,65535 do local gluk_object = level.object_by_id(i) if gluk_object ~= nil amk.remove_item(gluk_object) else end end end end Изменено 2 Июля 2015 пользователем macron Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 2 Июля 2015 (изменено) функция довольно странная, что хочешь от нее? Сам скрипт должен вызываться из bind_stalker.script в момент сохранения, дабы удалить объекты совпадающие по координатам с левелчейнжерами (игра иногда генерит такие кривые объекты, использующие координаты и parent_id от левелчейнжера, в результате чего бьются сейвы - рождаются вылеты "child registered but not found"). Соответственно, заранее зная и забив точные координаты всех левелчейнжеров в этот скрипт, можно проблему решить. Пока что отрабатываю саму возможность удаления объектов по заданным координатам. Но проблема в том, что умею только совмещать скрипты, в остальном ни хрена не разбираюсь, поэтому мои функции могут быть чрезвычайно странными. Изменено 2 Июля 2015 пользователем macron Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 4 Июля 2015 (изменено) Как-нибудь можно обнулить parent_id у объекта? Вот есть объект gluk_object. Надо что-то типа gluk_object.parent_id == 0. Изменено 4 Июля 2015 пользователем macron Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 4 Июля 2015 (изменено) "Обнуленный" парент это кстати 65534 (показатель бесхозности), 0 - это актор. Поэкспериментировал с перепаковкой сейва. Если у глючных объектов ставить parent_id = 0, то они действительно появляются в инвентаре актора. Обычно это арты и антирады, так что нормально. А если им ставить 65534, то еще при загрузке такого сейва идет вылет 001B:036AF2D9 xrGame.dll. Вообще, изначально планировалось удалять эти объекты согласно немного доработанному варианту того скрипта, что недавно обсуждали. Сама схема работоспособна, но конкретно удаление не срабатывает ни через amk.remove_item(gluk_object), ни через alife():release(gluk_object, true). Может, хоть обнуление parent_id сработает. Изменено 4 Июля 2015 пользователем macron Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 4 Июля 2015 (изменено) На сколько я понял, проблема в том, что бывает такое, что у "глючного" объекта совпадают координаты с левелченджером и это вызывает вылет при загрузке сейва. Да, координаты совпадают. Но вылетает из-за того, что эти объекты еще ставят себе id от левелчейнжера в качестве parent_id. Я почему-то такого у себя никогда не видел... В OLR заспавнено очень много "всякой дряни" и физики. Возможно, из-за нехватки ID или еще чего, игра иногда дурит. В общем, вот что сейчас вышло. Объекты в нужной точке в момент сейва так и не удаляются. Если исправить больше нечего, забьем. Вроде в далеком будущем в новой версии обещали многое движком исправить. В test.txt сам текст + полный bind_stalker.script на всякий случай. http://rghost.ru/6qN89Tfr8 Изменено 4 Июля 2015 пользователем macron Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 4 Июля 2015 а что мешает при спавне объекта проверить координаты спавна и если они в зоне левел-ченджера, то сдвинуть спавн за пределы зоны перехода вглубь локации? Вылетает не из-за координат, а из-за использования id от левелчейнжера в качестве parent_id. Кстати, визуально эти объекты (пара артов, несколько антирадов) в том месте я так и не нашел. @Карлан, я вставил новый текст вместо старого, но лучше не стало. Боюсь, проблема серьезная, требует непосредственного профессионального подхода/тестирования. Решать такие вопросы сейчас через меня - примерно то же самое, как пытаться чинить компьютер по телефону. Если здесь есть истинные фанаты OLR (в чем сильно сомневаюсь), конечно обращайтесь, материал предоставлю, а так - только время зря потратим. Всем спасибо за участие. Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 4 Июля 2015 Почистите лс ok расскажи когда они родителя обретают Глюко-объекты рождаются в процессе игры, "в зависимости от расположения звезд на небе". Наиболее подвержены им ЧАЭС и Янтарь. Вот конфиги ЧАЭС из распакованного алспавна и битого сейва, если интересно. Нужные секции можно найти по поиску 116.575942993164, -0.0990743637084961, 518.794067382813 http://rghost.ru/6yLdDMshh Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 4 Июля 2015 (изменено) да по барабану когда рождаются, ты выясни когда родителем лч становится На то, чтобы хоть как-то научиться распаковывать олровские сейвы и на их основе установить связь битых сейвов с левелчейнжерами ушел год. К тому времени, когда ты получишь от меня новый ответ, скорее всего, он будет уже неактуален. Пока отвечу так: объекты породила Зона. Можно ли так, перед сохранением проверить не совпдает ли parent_id объекта с id левелчейнджера и если совпадает то удалять объект? Тоже вариант. Но пока даже без проверок объекты удалять не получается. Изменено 4 Июля 2015 пользователем macron Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 4 Июля 2015 просто выведи в лог sobj.parent_id у объектов до сейва, и после лоада Вот последний bind_stalker.script. Можешь сам добавить туда, о чем пишешь, если это то что нужно... Говорю же, не всегда врубаюсь, о чем вы, скриптеры, толкуете. А если и врубаюсь, могу неделю изучать/экспериментировать с последовательностью расположения какой-нибудь скобки. http://rghost.ru/7tJpxtFrS Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 4 Июля 2015 (изменено) замени свой сейв на этот: Ok. При использовании старого сейва в котором есть левелчейнжер - глухо виснет при попытке сохраниться, наверное пытается грохнуть левелчейнжер. При использовании переделанного сейва (без левелчейнжера) сейвится нормально, но в логе ничего интересного. Только ! Unknown command: parent_id[lvl14_stancia_space_restrictor]. http://rghost.ru/8SXL6J5Lw Изменено 4 Июля 2015 пользователем macron Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 5 Июля 2015 (изменено) а разве имя нужного объекта неизвестно? Имя, наверное, может быть любое. Как и количество объектов (хотя, обычно в пределах 10-15).Известны лишь координаты (идентичны координатам левелчейнжера) и то, что берут его ID в качестве PARENT_ID. Тут как бы задача получить универсальную удалялку (в будущем - по одной универсальной удалялке на каждый левелчейнжер конкретного уровня и для каждого уровня + добавить имена самих левелчейнжеров в исключения, чтобы их тоже не затерло). ЗЫ: для экспериментов с конкретным сейвом, имена, конечно, известны. Недавно ltx из сейва выкладывал. Изменено 5 Июля 2015 пользователем macron Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 5 Июля 2015 @makdm, @Zander_driver, спасиба, мужики! Обе схемы заработали. Назовём тогда "схема за 05.07.2015 от makdm с правками от Zander_driver". В момент сейва глючные объекты удаляются не только на текущем уровне, но сразу на всех. Думаю, попробовать её же и при старте/загрузке игры включать, чтобы заранее грохала, особенно если попадется старый глючный сейв... Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 6 Января 2016 А не существует ли "универсального" скрипта для удаления пустых пачек патронов из инвентаря? Не сильно надо, но вдруг уже выкладывали... http://images.gameru.net/image/direct/feeb3c7175.jpg Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 6 Января 2016 Это похоже в каком-то моде накрутили, что пачки имеют 0 патронов ? В оригинале такого вроде не замечал... Кстати, да. Dunin_ammo как раз здесь используется, чтобы на пояс полные пачки вешались. Раз в оригинале такого нет, то, стало быть, мелкий побочный эффект от него. Вопрос снимается. Поделиться этим сообщением Ссылка на сообщение
macron 1 898 Опубликовано 20 Августа 2017 В 19.08.2017 в 23:23, Lebedev30 сказал: В 19.08.2017 в 23:19, nego сказал: Здравствуйте ВАМ. Как можно в ТЧ...04 сделать арты, увеличивающие переносимый вес? Меня этот вопрос интересовал и давно, но для ТЧ даже таких модов не встречалось или инструкций. Лучше на ЧН или ЗП переходи. Сразу видно, в OLR не играли. Поделиться этим сообщением Ссылка на сообщение