Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
shooting unicorn 0 Опубликовано 18 Октября 2010 Поделиться Опубликовано 18 Октября 2010 (изменено) Я как-то задавал вопрос о бессмертие здесь Цитата либо сделать копию модели, аккуратно поправить в ней #include и сделать/прописать секцию иммунитета для бессмертных Это как сделать?? Объясните поподробнее Мне ответили тогда shooting unicorn В идеале - перевести модельку в формат .object конвертером Бардака, загрузить в СДК и поправить ссылку на файл инклуда в Object -> User Data. Потом экспорт обратно в .ogf, и в новом файле инклуда прописать нужные параметры защиты. Если нет СДК или неохота с ним возиться, можно просто скопировать модель под другим именем, открыть ее в hex-editor-е или в текстовом редакторе (notepad++ справляется, с обычным блокнотом возможны проблемы, 50/50). Поиском найти #include, обычно в конце файла, за ним будет идти ссылка на файл, типа вот такого: #include "models\capture\exo_helmet_damage_med.ltx" Правим ссылку на свой файл - но при таких правках важно строго соблюдать неизменность количества символов, иначе модель не будет работать. Сохраняем и в новом файле инклуда прописываем нужные параметры защиты. Если нигде не накосячили по ходу, должно получиться. Тогда получилось так, что не было у меня времени этим заниматься. А сейчас я к этому вернулся. И вот хочу воспользоваться hex едитором и сделать бесмертие Серому, который на свалке. Открываю папку с моделями сталкеров. Там следующие папки: bandit, camo, dolg, fanatic, monolit, novice, partizan, rasvet, stalker, svoboda и unique_traders. Так вот я так понимаю что Серый будет в папке stalker. В этой папке файлы stalker_1.ogf, stalker_2.ogf, stalker_3.ogf и т.д. до stalker_20.ogf. И вот у меня такой вопрос какой из этих файлов надо править, чтобы сделать бессмертие Серому? И еще вопрос как определять, для кого какой файл брать ( допустим если подопоный был бы не серый, а Крот)? Изменено 18 Октября 2010 пользователем shooting unicorn Ссылка на комментарий
gruber 2 481 Опубликовано 18 Октября 2010 Поделиться Опубликовано 18 Октября 2010 (изменено) shooting unicorn, Модель присваевается в секции спавна в ал-спавн.Или в профиле перса в характер деке Вообще ты бы почитал основы(шпаргалку,статьи на вики),а то не зная букваря пытаешься квантовую физику понять Изменено 18 Октября 2010 пользователем gruber Ссылка на комментарий
IQDDD 5 Опубликовано 19 Октября 2010 Поделиться Опубликовано 19 Октября 2010 (изменено) Ищу функции: 1. Выбросить объект obj из инвентаря объекта par. 2. Возвращает obj, который актор на данный момент держит в руках. 3. Возвращает true, если obj на данный момент находится в секции в инвентаре (например, артефакт на поясе, или спрятанное оружие). Иначе false. Изменено 19 Октября 2010 пользователем IQDDD Ссылка на комментарий
Министр 3 Опубликовано 19 Октября 2010 Поделиться Опубликовано 19 Октября 2010 IQDDD, 1. par:drop_item(obj) 2. db.actor:active_item() 3. По этому вопросу читай "Справочник по функциям и классам", насколько я помню есть ф-ия для перебора инвентаря, которая в последнюю очередь перебирает вещи из слотов. Ссылка на комментарий
_Призрак_ 11 Опубликовано 20 Октября 2010 Поделиться Опубликовано 20 Октября 2010 Возвратился к вопросу со временем в билде 3120. Получилось получить время так: local t = game.get_game_time() local y,m,d,h,minut,sec,ms = t:get() -- получаем текущие значения Но выставить так: local t = game.get_game_time() local y = 2012 local m = 6 local d = 12 local h = 10 local minut = 10 local secunda = 5 local ms = 3 t:set(y,m,d,h,minut,secunda,ms) У меня не получилось. Даже просто прибавить к времени еще один час ничего не давало. Пытался так: local t = game.get_game_time() -- получить текущее время local dt = game.CTime() -- объект с нулевым счётчиком dt:setHMS(10,10,5) t:set(dt) И так: local t = game.get_game_time() -- получить текущее время local dt = game.CTime() -- объект с нулевым счётчиком dt:setHMS(10,10,5) -- устанавливаем смещение в один час t:set(dt) -- меняем t, увеличивая на один час И так: local t = game.get_game_time() t:setHMS(10,10,5) Но ничего не получается Freedom Ссылка на комментарий
Kolmogor 5 Опубликовано 20 Октября 2010 Поделиться Опубликовано 20 Октября 2010 Это ты все задаешь время в переменной t, но не в игре. Где-то в _g.script была функция установки времени. Принцип приблизительно следующий: задается большой time_factor и в ждут в цикле, пока время в игре не станет больше нужного. Потом time_factor возвращается обратно. Возможно и сейчас можно что-нибудь похожее сделать Ссылка на комментарий
stunder 12 Опубликовано 20 Октября 2010 Поделиться Опубликовано 20 Октября 2010 Expression : fatal error Function : CBlender_default::Compile File : E:\stalker\patch_1_0004\xr_3da\xrRender_R1\BlenderDefault.cpp Line : 50 Description : <no expression> Arguments : Not enought textures for shader, base tex: prop\prop_socket1 Ммм, как лечить? Сообщение от администратора n6260 Переведи в переводчике Not enought textures for shader и тебе откроется страшная тайна Мод "Жесть" В команду Two Team ("Жесть") требуется моделлер. Ссылка на комментарий
IQDDD 5 Опубликовано 20 Октября 2010 Поделиться Опубликовано 20 Октября 2010 Ищу функции: 1. Возвращает вес инвентаря ГГ. (Перебор объектов инвентаря actorMass=actorMass+db.actor:object(i):mass() результатов не даёт, т.к. mass() почему-то возвращает всегда 0. 2. Возвращает максимальный вес инвентаря ГГ (могу и через .ltx, но может есть способ быстрее?) 3. Возвращает true, если актор перегружен (или 3, или 1, т.к. эти функции в условиях моей задачи взаимозаменяемые), иначе false. 4. Получить массу по секции объекта (без вылетов в случае отсутствия параметров, т.е. возвращения nil) Ссылка на комментарий
Министр 3 Опубликовано 20 Октября 2010 Поделиться Опубликовано 20 Октября 2010 (изменено) IQDDD, 1. Почитай последние страницы этой темы, если не ошибаюсь, то об этом что-то говорилось. 2. А чем способ через чтения из конфига не быстр? 3. В _g есть ф-ия on_actor_cant_walk_weight. Можно с ней покопаться... 4. if system_ini():line_exist(obj_section, "inv_weight") then return system_ini():r_float(obj_section, "inv_weight") end Изменено 20 Октября 2010 пользователем Министр Ссылка на комментарий
Gonarh 5 Опубликовано 20 Октября 2010 Поделиться Опубликовано 20 Октября 2010 (изменено) есть ли возможность определить момент попадания болта в спейсрестриктор? Если кому интересно, проблему решил навешиванием на болт своего биндера в файле config\weapons\w_bolt.ltx добавляем строку script_binding = xr_bolt.bind создаем скрипт xr_bolt.script примерно такого содержания function bind(obj) local new_binder = bolt_binder(obj) obj:bind_object(new_binder) end class "bolt_binder" ( object_binder ) function bolt_binder:__init(obj) super(obj) self.obj = obj self.timer_update = game.time() self.worked = false self.trigger = false end function bolt_binder:update(delta) if self.timer_update<=game.time() then self.timer_update=game.time()+1500 else return end --здесь делаем необходимые нам дела )))) --в моем случае необходимо было из подготовленной заранее таблицы спейсрестрикторов --выбрать ту в которую текущий болт попал if not self.trigger then for i, tp in pairs(g_teleports.array_space_rest) do local obj = alife():object(tp.id) if obj then if self.obj:position():distance_to(obj.position)<=2.5 then if not self.worked then self.worked = true self.trigger = true break end end end end end if self.worked then --выполняем нужные нам действия ))) self.worked = false end end Изменено 20 Октября 2010 пользователем Gonarh 118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105 Ссылка на комментарий
Гость max_max_08 Опубликовано 21 Октября 2010 Поделиться Опубликовано 21 Октября 2010 Столкнулся с такой проблемой. Спавню скриптом нпс, нэт пакетом выставляю значение здоровья = 0, в профиле прописан квестовый предмет (qwest_item = true). Когда обыскиваеш этот труп предмет находится в нем, а если сделать сэйв/лоад то итем куда-то исчезает. Подскажите как решить такую проблемку. Ссылка на комментарий
MgVolkolak 0 Опубликовано 21 Октября 2010 Поделиться Опубликовано 21 Октября 2010 Доброй ночи! В каком файле можно изменить процент выпадания патронов с трупа в зависимости от сложности игры? Сообщение от администратора n6260 death_items_count.лтх "Зло перестало быть слепой хаотичной силой. Сегодня Зло действует по праву закона - ибо у него теперь есть права. Оно действует в соответствии с заключенными мирными договорами, ибо о Зле подумали, заключая эти договоры. Геральт из Ривии, ведьмак." Ссылка на комментарий
Ирбис 183 Опубликовано 22 Октября 2010 Поделиться Опубликовано 22 Октября 2010 Где можно посмотреть список доступных в игре шрифтов стиля letterica ? Замедляю полураспад души стержнями музыки Ссылка на комментарий
Comador 203 Опубликовано 22 Октября 2010 Поделиться Опубликовано 22 Октября 2010 Ирбис, в файле fonts.ltx, что в папке config. Просто распакуй архивы Сталкера (не солянки). Неважно – сколько у тебя друзей. Важно - сколько из них помогут тебе в трудную минуту и сколько вспомнят о тебе когда им хорошо. "Худ" и "Умное выпадание частей монстров" для Народной солянки Ссылка на комментарий
Stalk15 27 Опубликовано 22 Октября 2010 Поделиться Опубликовано 22 Октября 2010 (изменено) Совершенно не получается дать обьекту стори_ид при спавне.Делал так: local obj = alife():create("esc_npc",vector():set(x1,y1,z1),lvid, gvid) local t = amk.read_stalker_params(obj) t.story_id = 30139 amk.write_stalker_params(t,obj) Так же менял визуал неписю - все работает, а вот стори_ид не назначается, я пробовал определить НПС по этому новому стори_иду: local obj = alife():story_object( 30139 ) сдесь даже проверка на существование не проходит.Новый стори_ид прописывал в game_story_ids.ltx. Может кто-нибудь подсобить другим, более надежным вариантом назначения стори_ида?Или я ошибку где-то допустил? Изменено 22 Октября 2010 пользователем Stalk15 Ссылка на комментарий
Kolmogor 5 Опубликовано 22 Октября 2010 Поделиться Опубликовано 22 Октября 2010 А ты вообще откуда взял, что надо так стори_ид устанавливать? t.story_id = 30139 В amk.script read_stalker_params и функцтях, которые она вызывает, такой параметр не читается. И соответственно потом и не пишется Есть параметр sid, то есть надо так: t.sid = 30139 Названия параметров по-хорошему надо смотреть в amk.script. Ссылка на комментарий
Malandrinus 615 Опубликовано 22 Октября 2010 Поделиться Опубликовано 22 Октября 2010 Stalk15, Kolmogor, с изменением story id через нетпакеты есть ещё одна неприятность. Для объекта то он меняется, а вот в разных внутренних структурах не прописывается. Т.е. скажем искать по свежеизменённому story id получится не раньше, чем после перезагрузки. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Gandifil 0 Опубликовано 22 Октября 2010 Поделиться Опубликовано 22 Октября 2010 Извините, если задаю вопрос не туда куда нужно. После долго-го перерыва(они полезны), решил поиграть в сталкер, начав новую игру.Когда прохожу мимо плоти вначале(которая еще в аномалию бросается) компьютер вылетает.Причем вылетает прямо в момент смерти плоти.Вот лог: Expression : fatal error Function : CScriptEngine::lua_error File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp Line : 73 Description : <no expression> Arguments : LUA error: ....l.k.e.r\gamedata\scripts\smart_monster_parts.script:300: attempt to index global 'arc' (a nil value) Конечно в моей gamedata много модов и моих исправлений, но ни одно из них не касалось монстров. Правда мог повлиять "Фотореалистичная зона: Живность " но мне он важен.Скажите пожалуйста как это исправить?Можно конечно пройти мимо, но потом аукнется? Дурак знает как затеять драку, умный знает как победить в драке, мудрец знает как избежать драки. Ссылка на комментарий
Kolmogor 5 Опубликовано 22 Октября 2010 Поделиться Опубликовано 22 Октября 2010 Arguments : LUA error: ....l.k.e.r\gamedata\scripts\smart_monster_parts.script:300: attempt to index global 'arc' (a nil value) Собственно все ясно или отсутствует скрипт arc.script или в нем ошибка. Вылеты будут при каждом убийстве монстра Эти скрипты из русиного мода Smart Monster Parts(Умное выпадение частей монстров). Попробуй найти его и переставить. ну и конкретно arc.script используется и в других модах от Руси и Ко: биорадар, контейнеры и радиация от артов в инвентаре Ссылка на комментарий
izot 0 Опубликовано 22 Октября 2010 Поделиться Опубликовано 22 Октября 2010 Ребята, подскажите где поправить бинокль? http://ipicture.ru/uploads/101020/6SlxHTT4UT.jpg Сообщение от администратора n6260 Иконку что ли (которая в правом нижнем углу)? Просто указать правильные координаты. Как определять координаты и т.д. Читай в теме "редактора иконок" (раздел модинга) или в моем туторе по добавлению оружия в теме Арсенала. Так у меня в файле S.T.A.L.K.E.R\gamedata\config\weapons\w_binoc.ltx прописан путь именно к биноклю, а отображается пм. Сообщение от администратора n6260 Тебе не путь к модели надо править. А иконку предмета Это гораздо проще и легче. Добавлено через 12 мин.: n6260 Тоесть надо вместо икони пм поставить иконку бинокля? Но у ни по сетке размеры разные. Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти