Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Malandrinus 615 Опубликовано 19 Мая 2010 Поделиться Опубликовано 19 Мая 2010 Наносить скриптом хит, подобрав силу и тип. Вроде после chemical_burn появляется только кровотечение Добавлю. Хит можно наносить и отрицательный и таким образом "лечить". В качестве альтернативы можно перехать на движок ЗП. Там вместо этой функции появилось нормальное свойство bleeding на чтение и запись. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
antreg 178 Опубликовано 19 Мая 2010 Поделиться Опубликовано 19 Мая 2010 (изменено) Elliond, Позволю заметить, что элементарная невнимательность присутствует. Лишняя буква "а": Вот так надо: #include "w_w2000.ltx" И вообще это не в той теме вопрос. Добавлено: Имя файла w_walther_wa_2000.ltx --такое длинное имя (со столькими "нижними подчёркиваниями") ни один мододел и грамотный создатель оружия не мог задать (то же самое относится и к скриптам, где есть ограничение на длинну имени), поэтому причину проблемы ищи там, где ты этот ствол взял - либо сам переименовал файл. Такого .ltx не должно быть. Измени и проверь на более коротком имени. Изменено 19 Мая 2010 пользователем antreg "Тайные Тропы 2" техподдержка "Ф.О.Т.О.Г.Р.А.Ф" техподдержка Ссылка на комментарий
Elliond 0 Опубликовано 19 Мая 2010 Поделиться Опубликовано 19 Мая 2010 (изменено) То ли лыжи не едут, то ли я е... Проверил, всё стоит на месте, всё прописано, однако вылет... Ладно, значит не судьба именно с этой винтовкой. Всем спасибо, кто уделил свое время моей проблеме. Elliond, Позволю заметить, что элементарная невнимательность присутствует. Лишняя буква "а": Вот так надо: #include "w_w2000.ltx" И вообще это не в той теме вопрос. Имя файла w_walther_wa_2000.ltx Изменено 19 Мая 2010 пользователем Elliond Защити зону от Долга! вступай в www.shoc-role.ucoz.ru !!! Ссылка на комментарий
Kirag 39 Опубликовано 19 Мая 2010 Поделиться Опубликовано 19 Мая 2010 Подскажите, пожалуйста, такой момент: Создаю alife():create-ом оружие в полуметре от актора, сразу при спавне меняю нет-пакет. На следующем же апдейте проверяю существование серверного объекта - все в порядке, существует сразу же. Но в онлайн оружие переходит только через несколько апдейтов, а иногда (очень редко, но все-таки) не хочет переходить в онлайн вообще. Если переиграть, то тот же ствол в тех же условиях с теми же изменениями в нет-пакете прекрасно переходит в онлайн, после чего спокойно переносится в инвентарь актора. От чего это зависит - непонятно Можно ли как-то насильно перевести серверный объект свежесозданного оружия в онлайн (id известен) сразу же после создания и как это сделать? Функцией switch_online из _g.script пробовал, толку не видно... Мои работы: Ночные прицелы + смена ножевого слота AI вертолетов + ПЗРК Soul Cube Работаю только с ТЧ. С ковырянием ЧН/ЗП не связываюсь ни в какой форме. Совсем. Ссылка на комментарий
vader92 0 Опубликовано 19 Мая 2010 Поделиться Опубликовано 19 Мая 2010 Доброй ночи. Подскажите, что мне нужно, что бы вывести на экран время, которое прошло с начала запуска игры. т.е. сколько часов/минут запущена игра. Знаю, что есть функция game.time(). Смог вывести худ игровое время. А что поменять в скрипте, что бы вместо игрового, показывалось время с начала запуска не пойму. Ссылка на комментарий
Malandrinus 615 Опубликовано 19 Мая 2010 Поделиться Опубликовано 19 Мая 2010 (изменено) Kirag, Можно ли как-то насильно перевести серверный объект свежесозданного оружия в онлайн (id известен) сразу же после создания и как это сделать? 1. Смутно уже помню, но переход в онлайн предваряется вызовом метода серверного объекта (вроде как can_switch_online), который позволяет/не позволяет объекту перейти в онлайн. Я это к тому, что эти вызовы идут периодически с частотой вроде как одна секунда (но точно уже не помню). Это значит, что количество апдейтов до перехода в онлайн в целом величина переменная. Это если объект своим ходом переходит (от попадания в зону вокруг актора). Если пытаешься форсировать с помощью set_switch_online/offline, то см. ниже (п.3). 2. Почему не переходит в онлайн вообще да ещё иногда - тут ничего сказать не могу без эксперимента. Может с нетпакетом накосячил. Оружие вообще не столь к этому чувствительно, как другие объекты. 3. Сразу не перевести никак, просто потому, что это технически невозможно. Создаёшь ты на сервере, а в онлайне объект появляется на клиенте. Хоть это и одна машина, но сетевая архитектура всё равно остаётся. Передача по сети (а перевод объекта в онлайн связан с передачей нетпакета) происходит асинхронно, т.е. ты инициировал передачу (и только) и управление возвращается к тебе в скрипт. Ясно, что как минимум раньше следующего апдейта результата не дождёшься. vader92, используй time_global() Изменено 19 Мая 2010 пользователем malandrinus Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Crazyman 0 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 (изменено) Как ускорить/увеличить время накопления силы перед броском гранаты/болта на ПКМ(Правая Кнопка Мыши)? А то у меня тяяяянется сила, тяянется, а тут раз и нету меня! И да, вот что ещё, где редактировать вот такие ящички? А то, что-то не то "поюзал", так на Кордоне, на базе вояк один ящик сломал, железый который, так оттуда "калаши" посыпались. Изменено 20 Мая 2010 пользователем Crazyman S.T.A.L.K.E.R. - Зов Припяти 1.6.00 + повелитель Зоны + мои всякие наработки = какая-то глобалка размером в 1,04 ГБ (1 117 802 496 байт) которая содержит 5580 файлов в 467 папках. Ссылка на комментарий
Гость max_max_08 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 У меня вопрос, как сделать что-бы предмет можно было использовать несколько раз, например 5 раз. И с каждым разом его состояние ухудшалось и при достижении 0 предмет удалился из инвертаря. Ссылка на комментарий
AK-103 15 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 Да, можно. Можно аптечке задать коэффициент "повреждения", например 0.25 процентов. Intel Centrino Mobile (Dual-core) T2700 2,328 GHz, Intel GMA 945GM, 2x1024 MB DDR2-667, WD Scorpio 1200BEVS Microsoft Windows 7 Professional N + Novell Linux 11.2 (OpenSUSE) Dual boot S.T.A.L.K.E.R. SHOC 1.0004 + AMK 1.4.1 + NS3 + NLC3 + Arsenal + Arsenal beta +New weapons Опытный американский дробовик XM1014 =O Хозяйке на заметку: Не спешите выбрасывать чеку от использованной гранаты Ф-1 или РГД-5 - с её помощью можно легко и удобно прикрепить игрушечного пингвинчика к своему рюкзаку. © not me Ссылка на комментарий
Kirag 39 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 malandrinus Я неверно выразился, само собой попытки вытащить в онлайн начинаются только на следующем апдейте. С нет-пакетом накосячить я врядли мог, он берется неизменным из предыдущего оружия, разница между старым и новым оружием - только визуал ХУД-а. По идее, там косячить просто не в чем. Сейчас поставил вывод инфы в лог на каждый апдейт, до выхода в онлайн "своим ходом" ничего не меняется, за вычетом не относящегося к делу мусора стабильно выдает вот такое: ... server object 28416 exists: true can_switch_online: true can_switch_offline :false ... То есть, по идее в оффлайне оружие ничто не держит, причем с самого начала следующего за спавном апдейта. Однако, когда пытаюсь пнуть объект в онлайн функциями alife():set_switch_online (id, true) alife():set_switch_offline (id, false) толку с того ноль. Все равно переходит только "своим ходом" через N апдейтов... Мои работы: Ночные прицелы + смена ножевого слота AI вертолетов + ПЗРК Soul Cube Работаю только с ТЧ. С ковырянием ЧН/ЗП не связываюсь ни в какой форме. Совсем. Ссылка на комментарий
Malandrinus 615 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 Kirag, В качестве предположения. Там есть флажки object_flags. Эти флажки, насколько я помню на запись работают, а вот при чтении почему-то не читались. Т.е. при записи их надо было явно выставлять независимо от того, что там прочиталось до этого. Среди прочих там имеются use_swiches (как-то так по памяти). Может быть невключённость этих флажков влияет? Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Unnamed Black Wolf 4 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 кстати true false, в роли второго параметра являются принудительностью перевода объекта.. Если true переводить объект принудительно и все остальное не важно, если false переводить объект по мере удаления от актера и выполнение задач поставленных ему... Ссылка на комментарий
elfog 0 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 (изменено) Спавн я всё таки победил спасибо Kirag'у, Вопрос таков, как вызвать преждевременный выброс? Всё для вызова уже есть. Как называется функция отвечающая за выброс и где она лежит? Изменено 20 Мая 2010 пользователем elfog morda. cod4 player Ссылка на комментарий
vader92 0 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 Прошу прощения за тупизм. Ранее я задавал вопрос, как вывести на экран время, которое прошло с начала запуска игры. Смог с помощью одного из уроков по модмейкерству вывести на худ игровое время: function show_time() local hud = get_hud() local cs = hud:GetCustomStatic("hud_show_time") if cs == nil then hud:AddCustomStatic("hud_time_static", true) hud:AddCustomStatic("hud_show_time", true) cs = hud:GetCustomStatic("hud_show_time") end local time_h = level.get_time_hours() local time_m = level.get_time_minutes() local msg if time_m >= 10 then msg = string.format(" %02d:%02d\n", time_h, time_m) else msg = string.format(" %02d:%02d\n", time_h, time_m) end if cs ~= nil then cs:wnd():SetText(msg) end end Так же я знаю, что за вывод реального времени с момента запуска игры отвечает функция time_global() Но что поменять в скрипте, что бы выводилось это самое нужное мне время я не знаю. Подскажите пожалуйста. Ссылка на комментарий
Darien 0 Опубликовано 20 Мая 2010 Поделиться Опубликовано 20 Мая 2010 vader92 Попробуй в нет спавне определять переменную как time_global(), например tim = time_global(). Это будет постоянное число, которое будет определено при каждой загрузке\старте игры. А затем вычитай из настоящего времени эту переменную - получишь время с момента загрузки. Вот пример: tim = 0 function actor_binder:net_spawn(data) -- Это в bind_stalker ... tim = time_global() ... end А вот это я уже вызываю функцию из другого файла: function method() start_time = time_global() - bind_stalker.tim news_manager.send_tip(db.actor, start_time, 0) end Приходит смс с четырёхзначным числом, например 4334, т.е. 4 секунды с гаком. Ссылка на комментарий
Гость max_max_08 Опубликовано 21 Мая 2010 Поделиться Опубликовано 21 Мая 2010 (изменено) elfog если ты делаеш на базе амк то в нем выброс вызывается таймером. Тогда тебе нужно создать всего лиш запуск тогоже таймера с временем на 1 секунду. Но не игровово времени, а реальново, т.е. amk.g_start_timer("blowout",0,0,0) игровое время amk.start_timer("blowout",1) реальное время. Изменено 21 Мая 2010 пользователем max_max_08 Ссылка на комментарий
DimOriN 35 Опубликовано 21 Мая 2010 Поделиться Опубликовано 21 Мая 2010 спавню непися в воздухе, киляю его, и меняю ему ник local obj = alife():create("bar_dolg_respawn_2", vector():set(14, 155, 673), 292018, 206) repack_npc(obj, "Генерал Таченко") function repack_npc(obj, name) local data = xr_packet.read_stalker_params(obj) data.charname = name data.health = 0 data.updhealth = 0 xr_packet.write_stalker_params(data, obj) end однако когда он переходит в онлайн - он оказывается не в сотне метров в воздухе, а гдето в полуметре от асфальта, как победить глюк? Ссылка на комментарий
elfog 0 Опубликовано 21 Мая 2010 Поделиться Опубликовано 21 Мая 2010 (изменено) max_max_08, за саму идею с таймером спасибо, но я не очень понял, что ты имеешь в виду, под именем таймера? Ты имеешь в виду к чему он привязывается? А можно ли напрямую вызвать выброс, без таймера? ЗЫ. Вопрос по тем же аномалиям, почему созданную мной аномалию все, без исключения, НПС не видят в упор, как будто для них ее нету? Аномалия срабатывает ... хрусь и трупы. Ещё один вопрос, аномалия после выбросов исчезать будет? Изменено 21 Мая 2010 пользователем elfog morda. cod4 player Ссылка на комментарий
Malandrinus 615 Опубликовано 21 Мая 2010 Поделиться Опубликовано 21 Мая 2010 (изменено) однако когда он переходит в онлайн - он оказывается не в сотне метров в воздухе, а гдето в полуметре от асфальта, как победить глюк? Для неживых объектов помогает снять флажок used_ai_location в поле object_flags. Флажок имеет маску 64. Не уверен однако, что для тушки это поможет. Живые объекты передвигаются по сетке. Может так статься, что независимо от "живости" привязка будет в любом случае. почему созданную мной аномалию все, без исключения, НПС не видят в упор, как будто для них ее нету? Ещё один вопрос, аномалия после выбросов исчезать будет? В АМК своя схема обхода аномалий, а встроенные движковые ограничения (вроде как) снимаются. Не разбирался подробно, но наверное надо как-то добавить свою аномалию в эту схему. Аномалия исходно - статический объект. Появляться и исчезать её заставили хитрые модостроители =) Т.е. опять же смотри, как это сделано в АМК. Изменено 21 Мая 2010 пользователем malandrinus Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Gonarh 3 Опубликовано 21 Мая 2010 Поделиться Опубликовано 21 Мая 2010 Для неживых объектов помогает снять флажок used_ai_location в поле object_flags. Флажок имеет маску 64 Как снять скриптом, я так понимаю, это делается при помощи математических действий? 118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105 Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти