Перейти к контенту

Внимание. На форуме проводятся технические работы с боковым меню.

_Val_ _Val_

[SoC] Ковыряемся в файлах


Рекомендуемые сообщения

Всем привет прошу помощи! Восстановил детекторы в тч при помощи belt  = true в файле items. Добавил. А теперь не знаю как убрать внутренний детектор у гг(когда на поясе и в инвенторе нет детектора пиликанье возле аномалий все равно есть)

Возрождаем ТЧ

Здравствуйте.

Каким образом можно поднять живого npc над поверхностью локации? Для actor есть возможность изменять координаты через set_actor_position, для npc я такой функции не нашел... set_const_force применить к живому npc тоже нет возможности, так как у живого npc:get_physics_shell() == nil :(

@div, изменив нужное свойство в абстрактной части нет-пакета объекта.
Например, можно воспользоваться модулем m_netpk от Артоса (если мы говорим о ванильном движке; в модифицированных это, возможно, сделать куда проще).

Модуль можно взять здесь:

Авторский пример изменения координат см. в описании внутри архива с модулем.

  • Нравится 1

Свои работы и совместные проекты: Инструмент, OGSM CS, Final Stroke, HARDWARMOD

Полезное: модули Артоса, XML парсер

@Kirgudu не знаю почему, но не получилось даже с примером из m_netpk > readme_m_netpk.txt:

У меня версия ТЧ 1.0004. Файлы из архива я разложил по папкам, дописал в конце функции start_game_callback в _g.script строку: m_netpk.attach(), тестирую так:

 

Полный код функции  test_abstract() из readme_m_netpk.txt скопировал в amk_mod.script, и вызываю ее из функции restore_sun(), где выводится сообщение от команды AMK TEAM при старте новой игры, но вентилятор не переносится :(

 

Хотя условия "if sobj then" и "if pk:isOk() then" выполняются - я проверил. Пробовал еще второй вариант с установкой колбэка с функцией, что есть в коде, но тоже не помогло :(

@Kirgudu , status для обоих вариантов тоже имеет значение true :(

Как еще можно найти возможную причину?

Изменено пользователем div

@div, в readme_m_netpk.txt есть раздел "Про специальный нет-пакет 'abstract'". Инструкции из него выполнены?

Свои работы и совместные проекты: Инструмент, OGSM CS, Final Stroke, HARDWARMOD

Полезное: модули Артоса, XML парсер

@Kirgudu ,вы про:

Цитата

Для уже существующих объектов в игре:
     требуется после задания изменений свойст объекта, перевести объект в оффлайн и обратно в онлайн, что модулем делается автоматически.
     Изменения вступят в силу в момент выхода объекта в онлайн.

?

 

Я делал несколько тестов: вызывал функцию test_abstract() из бункера и возле Волка, так же после этого сохранялся и загружал это сохранение, но вентилятор все равно на месте...

 

Возможно, я не совсем понимаю, что нужно сделать, чтобы изменить статус :unknw:

Изменено пользователем div
6 часов назад, div сказал:

У меня версия ТЧ 1.0004

А зачем?

Что за фанатизм искать себе проблемы там, где давным давно (!!!) Есть для них рабочие решения...

5 часов назад, div сказал:

после этого сохранялся и загружал это сохранение

Это не имеет никакого отношения к уводу объектов в оффлайн и затем в онлайн. Так ты наоборот стираешь из игры любые следы своих изменений... Если не сохранил их самостоятельно.

Тут давно всё есть.

Ищущий да обрящет.

5 часов назад, div сказал:

перевести объект в оффлайн и обратно в онлайн, что модулем делается автоматически.

Интересно, а как модуль это на 1.0004 сделает? Возможно я уже плохо помню, но без подключения к апдейту, там это нетривиальная задача, разве нет?

  • Нравится 2

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine / Мимокрокодил.

Я понял что моя старая подпись что-то нарушает. Удалил все ссылки.

@div, нет, я писал про пункты 1), 2) и 3) чуть пониже процитированной строки.
Но это действительно может быть совершенно не важно. Речь-то, как справедливо тут заметили, о версии 1.0004, а я на это не обратил внимания. Модуль Артоса предназначен для 1.0006.

  • Нравится 1

Свои работы и совместные проекты: Инструмент, OGSM CS, Final Stroke, HARDWARMOD

Полезное: модули Артоса, XML парсер

@Zander_driver ,@Kirgudu , у меня версия ТЧ 1.0004 работает стабильно, а с более новыми патчами иногда бывают вылеты :(

 

В readme_m_netpk версия 1.0004 вроде подходит

Цитата

    Заметки:
    - Версии нет-пакетов: ТЧ/ЧН/ЗП (SHoC/CS/SCoP), патч для ТЧ: 1.0004 и выше.

 

9 часов назад, Zander_driver сказал:

Это не имеет никакого отношения к уводу объектов в оффлайн и затем в онлайн.

 

то есть, переключить примерно так нужно:

alife():set_switch_offline(obj.id, true)
test_abstract()
alife():set_switch_online(obj.id, false)

?

 

1 час назад, Kirgudu сказал:

@div, нет, я писал про пункты 1), 2) и 3) чуть пониже процитированной строки.

Понятно, значит нужно еще файл se_item.script проверить / изменить.

 

Пока буду с этим разбираться, хочу спросить, если через m_netpk изменить position npc, чтобы он был выше поверхности карты и не стоял на каком-то объекте, его гравитация будет в ходе игры снижать, чтобы он опустился на поверхность, или же он застынет на измененных координатах и будет висеть в воздухе? Если первый вариант, то чтобы он завис в воздухе, менять координаты придется через update, как я понимаю?

Изменено пользователем div
1 час назад, div сказал:

В readme_m_netpk версия 1.0004 вроде подходит

Может и так, не проверял. Правда, внутри самого модуля она в шапке не упомянута.

11 часов назад, Zander_driver сказал:

Интересно, а как модуль это на 1.0004 сделает? Возможно я уже плохо помню, но без подключения к апдейту, там это нетривиальная задача, разве нет?

@Zander_driver, кстати, там level.add_call под капотом, см. do_switchings и execute_switchings. Так что очень может быть, что заработает.

1 час назад, div сказал:

переключить примерно так нужно:

Не нужно. При изменении абстрактной части нет-пакета модуль проделывает необходимые манипуляции автоматически, как и написано в readme. Если интересно, см. упомянутые выше функции модуля do_switchings и execute_switchings, там всё уже есть.

1 час назад, div сказал:

значит нужно еще файл se_item.script проверить / изменить.

Для NPC - скорее se_stalker.script

1 час назад, div сказал:

выше поверхности карты и не стоял на каком-то объекте

Не уверен, что подействует на живой объект, но можно попробовать при спавне НПС снять флаг use_ai_locations  =  128 (привязка к сетке). Делается это в том же модуле m_netpk, примеры есть на форуме, например этот из свежих: 

 

В общем, дальше надо экспериментировать.

  • Нравится 1

Свои работы и совместные проекты: Инструмент, OGSM CS, Final Stroke, HARDWARMOD

Полезное: модули Артоса, XML парсер

6 часов назад, div сказал:

то есть, переключить примерно так нужно:

В одном моменте (подряд в одном блоке кода) так точно НЕнадо делать. Объекту нужен как минимум 1 фрейм для того чтобы в оффлайн уйти, и так же как минимум 1 для входа в онлайн. Итого 2 апдейта.

Если писать все переключения "здесь и сейчас" то сработает просто одна последняя строка и всё. Т.е. не произойдет ничего.

 

Ну и, применительно к живым объектам. Скорее всего он будет возвращаться к АИ-сетке при любом движении. Или даже на ближайшем апдейте.

4 часа назад, Kirgudu сказал:

но можно попробовать при спавне НПС снять флаг use_ai_locations  =  128 (привязка к сетке)

Но, что при этом отвалится в логике НПС? Любопытный вопрос, на который у меня нет ответа. Но памятуя о том, что в коде обслуживающем действия НПС, обращения к АИ-сетке встречаются на каждом шагу, подозреваю что будут проблемы.

 

6 часов назад, div сказал:

у меня версия ТЧ 1.0004 работает стабильно, а с более новыми патчами иногда бывают вылеты

Я просто реально не понимаю этого беспричинного мазохизма. Зачем? Ради чего???

Стабильные и удобные для моддинга движки давным давно есть. Как тот же OGSR, к примеру. Зачем сидеть на древнем забагованном и кривом с безлоговыми вылетами на любой чих?

"Иногда бывают вылеты" - и к ним например в OGSR ВСЕГДА даются подробные информативные логи, что-где-почему пошло не так. В отличие от 1.0004-6. Вылет в любом моде в 2023 году - это скорее от того что добавляли что-то новое и не-до-отладили до ума. И если задаться целью "Просто сделать сталкер который не вылетает НИКОГДА, не добавляя ничего нового" - то допустим на OGSR это задача выполнимая более чем. А на 1.0004-6 как мы знаем из практики, нет.

  • Нравится 1

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine / Мимокрокодил.

Я понял что моя старая подпись что-то нарушает. Удалил все ссылки.

1 час назад, Zander_driver сказал:

Но, что при этом отвалится в логике НПС? Любопытный вопрос, на который у меня нет ответа. Но памятуя о том, что в коде обслуживающем действия НПС, обращения к АИ-сетке встречаются на каждом шагу, подозреваю что будут проблемы.

Тоже не знаю. Убирал флаги перехода в оффлайн у БТР, сбрасывал какие-то флаги у физ. объектов - проблем не было. НПС спавнить в воздухе в голову не приходило.

  • Согласен 1

Свои работы и совместные проекты: Инструмент, OGSM CS, Final Stroke, HARDWARMOD

Полезное: модули Артоса, XML парсер

@Zander_driver, у OGSR системные требования, как я понял, выше :(

 

ТЧ 1.0004 даже на старом железе без тормозов работает.

 

@Kirgudu, @Zander_driver, несколько раз перечитал readme_m_netpk, и если правильно понял, то менять статус объекта (или npc) online / offline не нужно?

 

Отталкиваюсь от части:

Цитата
При спавне нового игрового объекта:
	 изменения вступят в силу, как только мы выйдем из текущей скриптовой работы и управление вернется движку - он создаст объект и начнет записывать в него параметры.

...

Для уже существующих объектов в игре:
	 требуется после задания изменений свойст объекта, перевести объект в оффлайн и обратно в онлайн, что модулем делается автоматически.
	 Изменения вступят в силу в момент выхода объекта в онлайн.

 

 

или я не правильно понял эту часть?

  • Сочувствую 1
Только что, div сказал:

у OGSR системные требования, как я понял, выше

Конечно выше. Особенно, если речь о последних публичных версиях движка с вырезанными рендерами R2/R3.

Но ведь есть ЩПЫКи постарше и посговорчивее с системой. А адаптация старых и того проще.

Здесь могла быть ваша реклама.

7 часов назад, Kirgudu сказал:

Для NPC - скорее se_stalker.script

 

у меня загвоздка еще с примером из readme, с перемещением trader_ventilyator_0000, как указано в test_abstract()

 

Не совсем понял, как применить пункты 1), 2) и 3) из раздела "Как получить возможность менять абстрактную часть пакетов?"

или trader_ventilyator к этому не имеет отношения? Если да, то я совсем не понимаю, почему после вызова test_abstract() не происходит перемещение вентилятора... :to_take_umbrage:

1 час назад, div сказал:

у OGSR системные требования, как я понял, выше

А установить-запустить, пробовал?

Они хоть и выше, но на железе десятилетней давности (причем изначально не особо мощном даже 10 лет назад) - все нормально работало, хоть и не на максималках.

  • Согласен 1

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine / Мимокрокодил.

Я понял что моя старая подпись что-то нарушает. Удалил все ссылки.

6 минут назад, Zander_driver сказал:

А установить-запустить, пробовал?

 

пробовал два раза, у меня перезагрузка системного сразу после запуска... Списал это на старое железо, позже, как разберусь с m_netpk, посмотрю по совету @mole venomous другие версии. Сейчас ищу проблему, почему даже тестовый пример из m_netpk у меня не работает...

  • Полезно 1
Только что, div сказал:

другие версии

До версии 2.1.386 включительно ещё есть рендеры на выбор. Более новые уже только Dx11 и, соответственно, минимальные требования по железу выше.

  • Нравится 1
  • Полезно 1

Здесь могла быть ваша реклама.

Только что, div сказал:

у меня перезагрузка системного сразу после запуска...

Такое может быть на мой взгляд, от двух причин.

1) Может быть ЦП в перегрев уходит - проверь температуру проца при запуске, и если это оно, то надо кулер получше и/или термопасту обновить.

2) Может быть под нагрузкой не вывозит блок питания. Если с температурами ЦП все нормально, то это оно, и его надо менять на более хороший.

Кулер и Блок питания денег конечно стоят, но мне кажется это не такой уж страшно дорогой апгрейд, и его можно осилить.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine / Мимокрокодил.

Я понял что моя старая подпись что-то нарушает. Удалил все ссылки.

1 минуту назад, Купер сказал:

работало, ровно до тех самых пор (а это было уже давненько), пока разработчиков не понесло в ультимативные красивости

Ну, при желании можно же и старый OGSR откопать.

@div а какое железо если не секрет? Мне кажется, OGSR таки должен быть к железу в том числе старому, достаточно демократичен. О таких проблемах на нем первый раз слышу.

ЗЫ. У меня если что, старый OGSR-Original где-то на старом ПК должен валяться... хотя вряд ли это кому-то понадобится.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine / Мимокрокодил.

Я понял что моя старая подпись что-то нарушает. Удалил все ссылки.

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...