_g.script 3 669 Опубликовано 19 Октября 2016 Всем доброго дня. Возможно, мой вопрос несколько не по теме, однако оставлю здесь. Я так понимаю, что если хитовать актёра радиацией на обновлении, то защита костюма не учитывается. А вот если использовать следующий код, не появятся какие либо ненужные последствия? -- на дистанции ближе 10 метров постоянно излучает радиациюif self.object:clsid()==clsid.snork_s and self.object.health>0.10 then-- будем учитывать бронюlocal protect=1local suit=db.actor:item_in_slot(6)if suit thenlocal sect=db.actor:item_in_slot(6):section()local a=tonumber(system_ini():r_string(sect,"radiation_protection"))protect=protect*((1-(a*(db.actor:get_current_outfit():condition()))) or 1)endlocal target = self.object:get_enemy() or db.actorlocal dist = target:position():distance_to(self.object:position())if dist < 10 thenlocal scale = 0.001*(10-dist)SnorkNum = 1db.actor.radiation = scale*protectif inventory.belt["detector_simple"] or inventory.belt["detector_advances"]or inventory.belt["detector_elite"] or inventory.belt["bioradar"] thenlocal snd_obj = xr_sound.get_safe_sound_object([[detectors\geiger_1]])snd_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 0.5)endelseif SnorkNum thenSnorkNum = nilendend Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 19 Октября 2016 Самый лучший способ - убить. А вообще, файл game_relations, секция communities_relations. Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 7 Апреля 2017 @Lanta87, в чистом распакованном 1.0004 файл gameplay\tasks_darkvalley, в нём задание "bar_darklab_documents2". Там всё видно - после проверки наличия у ГГ документов (функция has_darklab_documents ) выдаются три поршня - bar_darklab_document_gain, dar_document5, val_raid_start. Вероятно, первый определяет, что квест сделан (но не сдан!), средний непонятно на фиг нужен, а последний отвечает за переход вояк в онлайн. В файле gameplay\dialogs_bar конструкции диалогов, где строка "<has_info>bar_darklab_document_gain</has_info>" означает, что фраза ниже этой строки будет доступна после получения нужного инфо. Ну в общем отсюда и надо плясать. @Lanta87, А что касается Сидоровича, то в all.spawn есть рестриктор "esc_return_from_dv". Видимо, нужно разобраться и в нём. Там имеем следующее - при входе ГГ в зону рестриктора выдаются инфопоршены - "esc_return", "esc_trader_speak", исполняется функция "esc_return_dv". Ту же логику имеет ещё один рестриктор - "esc_return_from_gar". 1 Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 8 Апреля 2017 Именные сейвы Полностью согласен. Я вообще считаю, стоит потратить немного времени и забиндить сохранения на хоткейс в меню, для сейвов, отсортированных по имени локации и дате. А так же сделать себе автосейвы при выбросе и взятии/выполнении/сдаче важных квестов. Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 8 Апреля 2017 Фигня эти ваши автосейвы А что мешает автоматизировать постановку на паузу перед сейвом? 1 Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 9 Апреля 2017 А давай попробуемПод паузой я имел ввиду main menu. Но на деле мало что даёт. Попробуй ка сохраниться на паузе или в меню, перед этим загрузив сейв. Почти гарантировано получим крах логики. Если ж кого то не устраивают дополнительные автосейвы (не те, что каждые n минут), не пользуйтесь ими. Я на тестах укрытий от выброса не получил ни одного битого сейва в начале выброса. Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 25 Сентября 2017 4 часа назад, Han Sola сказал: тут же пропадает без следа Может быть, стоит глянуть скрипты - отслеживается наличие у ГГ детектора и происходит удаление последнего. Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 7 Октября 2017 В 01.10.2017 в 22:04, вася5657 сказал: всегда одинаковое Вот так кондишн будет рандомным, и предельно ясно, что состояние ствола от 0 до 50% item:set_condition(math.random(0,0.50)) А item:set_condition((math.random(15)+75)/100) рандомно 0...15 плюс 75 и сумма делится на 100 1 Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 9 Февраля 2020 В 01.02.2020 в 22:49, MZMAN сказал: У кого-какие будут предложения С одной стороны, довольно просто в нужный момент удалять с ГГ одетый костюм и спавнить ему производный от удалённого с отключенной возможностью бега и тем же кондишеном. И обратно. Но это так себе способ, заморочки с новыми секциями костюмов и всё такое... Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 21 Мая 2020 17 минут назад, naxac сказал: визуал прописан в all.spawn как правило, в приоритете визуал именно из .xml 1 Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 21 Мая 2020 (изменено) 2 часа назад, Akello сказал: смотреть и пробовать дабы не пустословить, всё проверил. В all.spawn прописал левый визуал, в геймплее оставил запланированный. НПС заспаунился с визуалом, указанным в .xml. Более нигде визуал не указывал. 29 минут назад, naxac сказал: @mole venomous, нет, наоборот. Всё проверено практикой. Если xml-ы распакованы в геймдату, от них и танцы. Если конечно больше нет каких либо нюансов, о которых я не знаю. К слову, НПС для теста СИДовый и спауниться сразу с НИ, т.е. никак не для респавна. Изменено 21 Мая 2020 пользователем mole venomous 1 Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 1 Июня 2020 2 часа назад, Ninna сказал: добыть инфу Вот уж никогда не обращал внимания на эту ерунду, но думаю, можно выдавать нужные инфопорции в любом удобном месте из info_known_objects 1 2 Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 3 Июня 2020 Может кто-нибудь информативно пояснить роль пар-ров disp_rate и hit_rate в конфигах оружия? Насколько важны их значения для ГГ и НПС с мобами? Как конкретно эти цифры влияют на точность и повреждения? Я всегда их просто-напросто удалял. Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 3 Июня 2020 1 час назад, dsh сказал: никак не вляют Ясно, как я и подозревал. Вот уж заодно тогда поинтересуюсь. Могу ли я как то привнести рандома к хиту оружия? Если с кучностью всё понятно, то хит фиксирован, не считая дальности, иммунитетов, точек попадания и прочего. Т.е. без ковыряния движка, выставить величину hit_power в рамках "от и до" (какая нибудь поправка посредством скрипта, может). Или же овчинка выделки не стоит? Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 21 Июня 2020 2 часа назад, UriZzz сказал: перестаёт работать Я просто поставил вызов прятания рук из inventory.on_inventory_info. При использовании инвентаря всегда всё работает. Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 28 Июня 2020 27 минут назад, СЕРА сказал: нет переноса Не знаю, зачем он конечно нужен. Но если сделать так https://yadi.sk/i/OCiNGIS6WViPUg то будет как надо https://yadi.sk/i/o3cGiHvuH96Xvw Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 29 Июня 2020 7 часов назад, Святой Сев сказал: в чем разница между Собственно в том, они не взаимодействуют друг с другом никак, если пар-ру immunities_sect присвоены имена этих секций по отдельности. Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 30 Июня 2020 8 часов назад, Святой Сев сказал: Как то странно в итоге У ПЫСов многое странно... Профилей то можно самому наделать и привязать к ним иммунитеты, пар-ры атаки, визуалы, забиндить на нужные профиля скриптовые схемы и т.д. и т.п. 1 Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 5 Июля 2020 2 минуты назад, СЕРА сказал: зависает А в логе никаких подозрительных надписей нет? 1 Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение
_g.script 3 669 Опубликовано 9 Июля 2020 10 часов назад, Ninna сказал: как заспавнить Вот функция, удобно спаунить на ходу, тремя способами (по координатам, по имени профиля и ID Скрытый текст function AddItems(items,recipient) local count = 0 local pos, lvid, gvid, id, obj local function Compare(id) obj = alife():object(id) return obj and obj.profile_name and obj:profile_name() == recipient end for k, v in pairs(items) do if type(recipient)=='table' then for k, v in pairs (items[k]) do count = k for i=1, count do alife():create(v,vector():set(recipient['x'], recipient['y'],recipient['z']), recipient['lv'],recipient['gv']) end end elseif type(recipient)=='string' then if recipient =="actor" then obj = alife():actor() else for i=1, 65534 do local predicate = Compare(i) if predicate then break end end end if obj == nil then return end for k, v in pairs (items[k]) do count = k for i=1, count do alife():create(v, obj.position, obj.m_level_vertex_id, obj.m_game_vertex_id, obj.id) end end elseif type(recipient)=='number' then obj = level_object_by_sid(recipient) if obj ~= nil then id, pos, lvid, gvid= obj:id(), obj:position(), obj:level_vertex_id(), obj:game_vertex_id() elseif obj == nil then obj = alife():story_object(recipient) id, pos, lvid, gvid = obj.id, obj.position, obj.m_level_vertex_id, obj.m_game_vertex_id for k, v in pairs (items[k]) do count = k for i=1, count do alife():create(v, pos, lvid, gvid, id) end end end end end end function AddItemsByName() local items = { {[1]="item_1"}, -- итемы и их кол-во {[2]="item_2"}, {[5]="item_3"} } local recipient = "profile_name" -- имя из профиля AddItems(items,recipient) end function AddItemsByID() local items = { {[1]="item_1"}, -- итемы и их кол-во {[2]="item_2"}, {[5]="item_3"} } local recipient = 515 -- sid NPCа или кейса AddItems(items,recipient) end function AddItemsByPlace() local items = { {[1]="item_1"}, -- итемы и их кол-во {[2]="item_2"}, {[5]="item_3"} } local recipient = {x=124.25,y=-7.69,z=-11.66,lv=427496,gv=133} -- координаты и вертексы AddItems(items,recipient) end 1 1 Здесь могла быть ваша реклама. Поделиться этим сообщением Ссылка на сообщение