Artos 99 Опубликовано 9 Февраля 2012 Поделиться Опубликовано 9 Февраля 2012 (изменено) ziStam, каких-либо штатных или иных удобных методов отслеживать анимации (иль подобное) для монстров нет. У них нет менеджеров состояния/движения/анимации/... как у сталкеров. Все в основном идет mob_capture из xr_logic.script, и если проанализировать - любая сторонняя схема может перебить прежнее и забрать управление на себя. Тут только перелопачивать скрипты и вставлять проверки на "если монстр свободен - то только тогда брать управление и командовать им", но ... это может порой и недопустимо. Добавлено через 2 мин.: *Shoker*, а я и не говорил про нет-пакеты для патронов. Они были упомянуты в связке - нельзя трогать свеже-убиенного НПС, пока у него в руках активно оружие, т.е. удалять его и его оружие в это время никак нельзя ... Добавлено через 2 мин.: P.S. Вот когда пояснишь, что же ты хочешь от нет-пакетов для оружия у трупа - тогда и можно гадать дальше ... Что-то мне подсказывает, что ты пытаешься чесать правой пяткой левое ухо ... ;-) Изменено 9 Февраля 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
*Shoker* 322 Опубликовано 9 Февраля 2012 Поделиться Опубликовано 9 Февраля 2012 (изменено) Я дополнил пост выше. Мне нужно каким то образом помечать оружие для игрока. Т.к у меня оружие делится на оружие с трупов, и купленное оружие. Сперва я хотел менять ему имя в инвенторе. Но это не получилось. Теперь я хочу ему апгрейд дописывать со своим текстом, чтобы хоть как то различать пушки. Изменено 9 Февраля 2012 пользователем *Shoker* Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О Мастер аномалий на свою заднюю точку. Ссылка на комментарий
Artos 99 Опубликовано 9 Февраля 2012 Поделиться Опубликовано 9 Февраля 2012 (изменено) *Shoker*, хм ... что мешает ставить метки оружию при покупке? Что мешает ставить метки при дропе оружия? Под меткой подразумеваю не изменение чего-либо в свойствах предмета - а создание некоего массива, куда по имени/идентификатору заносить потребное (метить), и эту табличку сохранять в сэйвах. Все же стОит различать свойства самого предмета и пользовательские/модмейкерские данные для этого объекта и без особой нужды их не перемешивать. На крайний случай - сделай биндер оружию и используй pstor'ы для каждого такого ствола - вот тебе и не потребуется ковырять нет-пакеты и будешь запоминать метки вместе с оружием. Вот только такой вариант будет прокатывать для "онлайн"-оружия. Изменено 9 Февраля 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
*Shoker* 322 Опубликовано 9 Февраля 2012 Поделиться Опубликовано 9 Февраля 2012 (изменено) Да не нужны мне метки\pstor-ы, я хочу показать ИГРОКУ, у которого в инвенторе лежит два совершенно одинаковых по внешнему виду и конфигам оружия, но разных на уровне скриптов. Мне надо, чтобы это увидел игрок, увидел при просмотре инвенторя в свойствах предмета, увидел при торговле там же и прочее... Для себя на уровне скриптов у меня это давно реализовано, но мне нужно донести это визуально игроку в максимально удобной форме. Именно для этого я хотел поменять оружию название скриптом, именно для этого я сейчас пытаюсь провернуть трюк с апгрейдами, потому что они сразу бросаются в глаза игроку. Собстно никто не пробовал менять предмету нет-пакет, пока он находятся в инвенторе игрока? Можно ли предмет там переносить в онлайн\оффлайн, или надо обязательно выкинуть его инвенторя. Изменено 9 Февраля 2012 пользователем *Shoker* Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О Мастер аномалий на свою заднюю точку. Ссылка на комментарий
ziStam 1 Опубликовано 9 Февраля 2012 Поделиться Опубликовано 9 Февраля 2012 (изменено) Artos, а нельзя ли сделать немоного по другому, наоборот, т.е "если монстр занят каким либо действием, то берем управление на себя и отпускаем его если дистанция до игрока допустим 10 метров"? И еще, недавно начали происходить произвольные вылеты со строчкой в логе(точного лога пока нет): application is aborting Что это примрно может быть? Понимаю что пальцем в небо, но может мысли какие и есть... Изменено 9 Февраля 2012 пользователем ziStam Legend of Stalker Ссылка на комментарий
*Shoker* 322 Опубликовано 9 Февраля 2012 Поделиться Опубликовано 9 Февраля 2012 (изменено) > application is aborting Проблема с моделью скорее всего. У меня было когда omf-файл был взят от другой модели. Ищи место где вылет постоянный, и думай, кто там может рядом быть. Изменено 9 Февраля 2012 пользователем *Shoker* Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О Мастер аномалий на свою заднюю точку. Ссылка на комментарий
ziStam 1 Опубликовано 9 Февраля 2012 Поделиться Опубликовано 9 Февраля 2012 (изменено) *Shoker*, это началось вроде с попытки вставить новую анимацию смарткавера из чн в зп, но в игре оно почему-то нехотело нормально отыгрыватся и я отрубил вроде как все хвосты к чн-вским каверам, но вылеты остались, причем вылет происходит произвольно, либо во время синхронизации либо где-то где стоит кавер с новой анимацией. Интерестно то, что в omf-файлах сами анимации есть, но проигрыватся они не хотели не в игре, не в сдк, что странно... Изменено 9 Февраля 2012 пользователем ziStam Legend of Stalker Ссылка на комментарий
*Shoker* 322 Опубликовано 9 Февраля 2012 Поделиться Опубликовано 9 Февраля 2012 Ну в любом случае копай в этом направлении. Может у тебя какая то модель из ЧН не имеет\имеет лишние анимации или типа того. По идее у тебя модель будет вылетать сразу, как тока появится в игре. Так что можешь просто ставить на карту сталкеров и смотреть с какой моделью будет вылет... тут уже сам решай. Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О Мастер аномалий на свою заднюю точку. Ссылка на комментарий
Zander_driver 10 335 Опубликовано 10 Февраля 2012 Поделиться Опубликовано 10 Февраля 2012 (изменено) Такой вопрос: Хотел зделать чтобы антирадар без жгута не использовался но когда есть жгут антирадар спавнится в инвентарь но не используется, прошу мне помочь, указать на мою ошибку. function use_antirad() if not db.actor:object("zgyt") then spawn_to_inventar("antirad") news_manager.send_tip(db.actor, game.translate_string("У_вас_нет_жгута.")) elseif db.actor:object("zgyt") then spawn_to_inventar("antirad_norm") del_zgyt() db.actor:eat(db.actor:object("antirad_norm")) end end -- Функция спавна в инвентарь. function spawn_to_inventar(spawn_item, npc) if npc==nil then npc=db.actor end return alife():create(spawn_item, npc:position(), npc:level_vertex_id(), npc:game_vertex_id(), npc:id()) end -- Функция удаления. function del_zgyt() local oItem = db.actor:object("zgyt") if oItem then db.actor:drop_item(oItem) alife():release(alife():object(oItem:id()), true) end end У тебя в одной и той же функции происходит спавн предмета в инвентарь и его съедание. Так нельзя) В это время предмета, который ты спавнишь, еще не существует. Поэтому и съесть нечего. Он появится когда функция завершила работу. Изменено 10 Февраля 2012 пользователем Zander_driver Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Ссылка на комментарий
Artos 99 Опубликовано 10 Февраля 2012 Поделиться Опубликовано 10 Февраля 2012 (изменено) Zander_driver, поправлю: Предмет после спавна (команды из функции спавна) появится СРАЗУ, но(!) это будет серверный объект. "Поедать" же можно только клиентские объекты. Клиентский объект появится не "по завершению работы функции", а по завершении всей процедуры его (объекта) регистрации в игре, на что, глубо говоря, тратится 1-2 периода апдейта актора. Добавлено через 6 мин.: ziStam: а нельзя ли сделать немоного по другому, наоборот, ... Можно, делай. Я дал ответ о том, "как продлить время", т.е. чтобы анимация не прерывалась, для чего нужно исключить перехватывание управление монстром ... Ты же теперь сам хочешь перехватывать и управлять им. Ну что ж, и это не запрещено. Изменено 10 Февраля 2012 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
S.T.A.L.K.E.R-DOLG 1 Опубликовано 10 Февраля 2012 Поделиться Опубликовано 10 Февраля 2012 (изменено) Как сделать respawn НПС на новой локации? Не стОит задавать банальных вопросов, ответ на которые очевиден. Создай/заспавни на новые локации свои респавнеры и будет тебе респавн неписей иль чего захотелось. --/Artos Изменено 10 Февраля 2012 пользователем Artos Пункт 3. Ссылка на комментарий
KD87 718 Опубликовано 10 Февраля 2012 Поделиться Опубликовано 10 Февраля 2012 (изменено) ziStam, с монстрами дело такое. Они управляются с помощью методов класса entity_action. У монстров есть очередь действий, можно получить текущее действие, можно добавить новое, но вот изменить текущее - никак. Так что ответ на твой вопрос - никак не продлить. Можно только узнать, закончилось ли действие. Но ты покопайся в скриптах типа mob_***.script, вероятно, где-то ошибка, из-за которой анимация и не проигрывается до конца. Изменено 10 Февраля 2012 пользователем KD87 Ссылка на комментарий
S.T.A.L.K.E.R-DOLG 1 Опубликовано 11 Февраля 2012 Поделиться Опубликовано 11 Февраля 2012 Дай статью как это сделать )))) Пункт 3. Ссылка на комментарий
*Shoker* 322 Опубликовано 11 Февраля 2012 Поделиться Опубликовано 11 Февраля 2012 (изменено) ziStam А ты на ЗП делаешь? Там у снорка вроде бы тока анимация stand_run_0 Или ты анимацию не из конфигов, а скриптами вызываешь? Если ты анимацию вызываешь из конфигов, или просто заменил существующию на свою, то скрипты тебе врятле помогут. Надо крутить конфиги\модели. Ежели анимация у тебя вызывается скриптами, тогда можно что нибудь попробовать. Изменено 11 Февраля 2012 пользователем *Shoker* Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О Мастер аномалий на свою заднюю точку. Ссылка на комментарий
Boofer 0 Опубликовано 11 Февраля 2012 Поделиться Опубликовано 11 Февраля 2012 (изменено) Как должна выглядеть логика моба при таком раскладе действий? После спавна моб ждёт 10 игровых минут и потом направляется в заданную точку, но при этои игнорируя ГГ. Изменено 11 Февраля 2012 пользователем Boofer Ссылка на комментарий
*Shoker* 322 Опубликовано 11 Февраля 2012 Поделиться Опубликовано 11 Февраля 2012 Boofer Схема mob_walk Две секции. Активная первая. В ней ставь on_timer = 10 | переключение на другую@секцию (как то так) через 10 секунд. В другой секции кажется ставь combat = ... или combat_ignore = true, опять таки глянешь в готовых примерах или в статьях,и там настраиваешь игнорирование им врагов. Я точно не помню как это выглядит, но сделать в целом просто. Правда скорее всего он будет игнорировать не только игрока, но и всех врагов. Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О Мастер аномалий на свою заднюю точку. Ссылка на комментарий
Boofer 0 Опубликовано 11 Февраля 2012 Поделиться Опубликовано 11 Февраля 2012 *Shoker*, если так, тогда уж combat_ignore в активную писать. И не combat_ignore = true, а combat_ignore = combat_ignore [combat_ignore] И тут уже параметры. Да и вообще работает схема combat_ignore у мобов? И где бы ещё эти готовые примеры найти... Ссылка на комментарий
gruber 2 481 Опубликовано 11 Февраля 2012 Поделиться Опубликовано 11 Февраля 2012 (изменено) Смотрите в логике - оверрайды для монстров (кажется так).Тутора нет под рукою, но там команда есть на игнор актера, до первой атаки с его стороны - actor_frend=true так кажется.В ТТ2 есть собака проводник - пример подобной логики еще логика кабанов и тушканов на стадионе в Припяти с оригинала. Изменено 11 Февраля 2012 пользователем gruber Ссылка на комментарий
Boofer 0 Опубликовано 11 Февраля 2012 Поделиться Опубликовано 11 Февраля 2012 (изменено) gruber, нашёл тутор, спасибо, попробую. Добавлено через 43 мин.: В туторе такого не нашёл. Кто знает как через логику убить моба, или это невозможно? А вот с этим, плз, в соответствующий топик: "[XXX] Ковыряемся в файлах". Собственно возьми готоую логику/скрипты для "учебной" плоти с Кордона (ТЧ), в которой и пауза (хотя и по рестриктору) и игнор и убийство ... --/Artos Изменено 11 Февраля 2012 пользователем Artos Ссылка на комментарий
*Shoker* 322 Опубликовано 11 Февраля 2012 Поделиться Опубликовано 11 Февраля 2012 (изменено) Возможно кому то будет интересно, столкнулся сегодня с вылетом в ЧН: FATAL ERROR [error]Expression : error handler is invoked! [error]Function : invalid_parameter_handler [error]File : E:\priquel\sources\engine\xrCore\xrDebugNew.cpp [error]Line : 793 [error]Description : stack trace: Вываливался при попытке вывести UI с листом названий инвентарных предметов. Покапавшись и проведя тесты - выяснил, что игра валилась при попытке добавить в лист строчку "Противорадиационные препараты" Причём достаточно было изменить любую букву\заменить пробел на _\написать любое другое слов и вылет прекращался. Я честно говоря немного ... Полез сюда на форум и оказалось, что я (и не только) уже сталкивался давно с этим вылетом. Это какой то баг с разрешением экрана. У меня вылет происходил на 1280x1024, стоит сменить разрешение (я себе на 800x поставил + vid_restart в консоли для гарантии) и вылет пропал... Вот такой он... Сталкер. Антирад пришлось переименовать. Изменено 11 Февраля 2012 пользователем *Shoker* Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О Мастер аномалий на свою заднюю точку. Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти