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

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

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

@Silver Raven,

on_actor_inside  = ...
on_actor_inside2 = ...
on_actor_inside3 = ...
...
Но не всегда такое разделение будет равнозначным - зависит от конкретной логики.
Ссылка на комментарий

 

 

Можно ли поставить/убрать отметку на карте в ПДА по координатам, без объекта?

 

Насколько мне известно - нет.

Подсвечивают обычно именно что-либо - рестриктор, нпц, мутанта - неважно.

Не соответствует правилам.

Ссылка на комментарий

@dPlayer, а в чем суть данного действия, можно поинтересоваться? Просто может будут какие-то идеи. А вообще правильно сказали, просто метку в воздух нельзя повесить. Что мешает повесить метку на рестриктор, например?

  • Согласен 1

GTA 3 MAP X-Ray | NFS U:2 MAP X-Ray | RTCW MAP X-Ray | L2D | Куча раритетных модов на моем облаке — на память о былом.

JNCR — Coming Soon...

i5-10400F / RAM 16GB / GTX 1660 Super / 1TB HDD+256GB SSDm2 / Win 11 PRO x64 / Samsung Curved 27" x2

Ссылка на комментарий

@dPlayer, немного рассуждений.

Движок вешает метку на обьект - материальную точку(условно говоря), которая имеет координаты в 3-д мире, а на карту переноситься каким-то подобием World2Screen функции. Тот же НПЦ, рестриктор - эволюция материальной точки. Что мешает тебе написать самую упрощенную реализацию такой мат.точки специально для твоей цели? А я скажу, что - здравый смысл) 

Space restrictor без логики - и есть мат.точка, максимально упрощенная. Спавнить его можно через скрипт(есть на форуме, надо поискать) или стандартно - all.spawn.

 

Ну, по теме вроде всё :)

Изменено пользователем CRAZY_STALKER666
  • Согласен 1

Не соответствует правилам.

Ссылка на комментарий

@dPlayer, метку можно повесить на невидимый (использовать ogf модельки из equipment_cache) и неюзаемый маленький объект с такой логикогй:

[logic]
active = ph_idle@none
 
[ph_idle@none]
nonscript_usable = false
tips = 

И таким конфигом:

[fake_inventory_box]:identity_immunities
$spawn 						= "devices\fake_inventory_box"
class						= O_INVBOX
cform						= skeleton
visual						= physics\equipment_cache\equipment_box_01_case.ogf
custom_data					= scripts\fake_inventory_box.ltx
radius						= 0
script_binding      		                = bind_physic_object.init
Изменено пользователем Silver Raven
  • Спасибо 1
  • Полезно 1

aka Stalker_AleX333
 
Мои проекты  - ЯндексДиск   |   Я на Gamer-Mods.ru

Ссылка на комментарий

 

 Silver Raven, так и не пойму почему для этих целей не брать рестриктор который сам по себе в игре не видим...

 

  • Согласен 1
Ссылка на комментарий

@Kondr48, Если работать через all.spawn, то я бы тоже отдал предпочтение рестриктору. А если через скрипты, гораздо проще (меньше кода) заспавнить такой вот объект.

  • Согласен 1

aka Stalker_AleX333
 
Мои проекты  - ЯндексДиск   |   Я на Gamer-Mods.ru

Ссылка на комментарий

 

Silver Raven, по сути если там нормальная функция для спавна рестриктора, вызов функции займет одну строку с параметрами.

 

Ссылка на комментарий

в чем суть

 

Ну например, поисковый квест, когда отметка непосредственно на объекте делает возможным по карте прицелиться ровно на середину отметки.

 

Что мешает

 

Ничего, так и придётся делать. Просто я думал, что можно обойтись без этого костыля.

УПД, в данном случае под отметкой я говорю про синий круг:

e15988c9fe.jpg

Кстати, у него радиус меняется?

 

 

Белого - меняеться

Что-то даже не могу вспомнить про белый круг в ТЧ... Как он называется?

Изменено пользователем dPlayer
Ссылка на комментарий
Кстати, у него радиус меняется?

У синего - нет. Белого - меняеться.

 

 

прицелиться ровно на середину отметки

Все метки ставятся ровно на середину обьекта. Если он меняет положение - следуют за ним.

Метка - движковая фича... 

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

Не соответствует правилам.

Ссылка на комментарий

 

 

когда отметка непосредственно на объекте

Так не вижу преград для спавна рестриктора. Вешаешь на него метку. Да, она будет по центру рестриктора, но сам квестовый объект ты спавни скриптом рандомно в пределах этой метки.  ;)

  • Согласен 1

GTA 3 MAP X-Ray | NFS U:2 MAP X-Ray | RTCW MAP X-Ray | L2D | Куча раритетных модов на моем облаке — на память о былом.

JNCR — Coming Soon...

i5-10400F / RAM 16GB / GTX 1660 Super / 1TB HDD+256GB SSDm2 / Win 11 PRO x64 / Samsung Curved 27" x2

Ссылка на комментарий

Или другой вариант, который я в NLC подсмотрел. В конфиге прописываются N меток, с разными текстурами, которые представляют из себя окружности не в центре этой текстуры. На нужный предмет назначается одна из этих отметок, случайная.

Изменено пользователем dsh
  • Полезно 2
Ссылка на комментарий

Я недавно таки дошел до этих спотов, не обошлось без движка, но обертка моя выглядит как-то так:

--// позиционная метка всегда сохраняется(!), могу сделать в движке опционально если надо
function add_map_spot(id, _type, hint, ser, not_del, not_all, pos, ln)
    assert(level.present(), 'level is not loaded')
    if not not_del then --// по умолчанию почистим объект от предыдущих спотов (флаг оставлен для создания псевдо-комплексного спота)
        remove_map_spot(id, _type, not_all)
    end
    if pos and ln then
        return level.map_add_position_spot_ser(pos, ln, _type, hint or "no_hint") --// тут необходимо возвратить айди метки, чтобы ее не потерять
    else
        level['map_add_object_spot'..(ser and '_ser' or '')](id, _type, hint or "no_hint")
    end
end

Только в движке нужно доделать таки дебаг этой фишки, чтобы айдишники не путались, там просто u16 одно прибавить и всего делов, возможно будет небольшая проблема с выделением памяти (для сохранения айди), тогда придется сделать два метода и один просто связать со скриптом, который через luabind будет давать нам массив, который мы будем сохранять.

 

На самом деле уже как двести лет функционал позволяет ставить метки кликая мышкой прямо по карте пда (правой кнопкой, например), только надо небольшую скриптовую обвязку написать с примитивным интерфейсом (выбор типа метки, текст метки). То есть тут билдовский вариант уже просто нервно покуривает. То есть алгоритм примитивный, получаем реальную позицию мышки, рисуем окно, получаем относительную позицию и ставим метку.

 

В любом случае даже если используете костыли с объектами, то придется вести массив, делать вменяемые функции для создания того же рестриктора, и далее просто сразу же вешать метку, используя хотя бы вот мою обертку, что я выше привел.

Ссылка на комментарий

Ну например, поисковый квест, когда отметка непосредственно на объекте делает возможным по карте прицелиться ровно на середину отметки.

 

Поисковые квесты с отметкой на карте - бред и нонсенс.

---------------------------------

www.amk-zone.de

Ссылка на комментарий

WizziGun, на самом деле такой себе совет, учитывая что это на один квест.

Wlad777, как раз-таки нет. Не имеется ввиду же точная метка. А примерную область накрыть очень даже не бред. А то искать где же там северо-восточно-южная часть хутора не всегда удобно и вообще нужно. В этом плане выигрывает ЗП, где ключевые объекты на карте отмечены.

Изменено пользователем Kondr48
  • Согласен 1
Ссылка на комментарий

Переработал одно из сообщений для квеста:

[logic]
active = sr_tip@alex_squad_sos_signal

[sr_tip@alex_squad_sos_signal]
name = generators_alex_squad_sos_signal_message
type = tips
sender = generators_alex_squad_sos_signal
cond = {-find_sos_signal_source_task_complite}
single = true
timeout = 3000
showtime = 7000
on_signal = tip_sended | sr_idle@start_quest_timer

[sr_idle@start_quest_timer]
on_timer = 6000 | nil %+find_sos_signal_source%

Игра крашится с руганью на news_manager: 

 

FATAL ERROR
 
[error]Expression    : fatal error
[error]Function      : CScriptEngine::lua_error
[error]File          : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp
[error]Line          : 73
[error]Description   : <no expression>
[error]Arguments     : LUA error: ... - trilogy\shoc\gamedata\scripts\news_manager.script:158: attempt to index field '?' (a nil value) 

 

 

 

Вроде, без все ошибок. Правильность инфопоршней проверил. Чего он еще хочет?

aka Stalker_AleX333
 
Мои проекты  - ЯндексДиск   |   Я на Gamer-Mods.ru

Ссылка на комментарий

@Silver Raven, а что мешает нормально, без участия рестриктора, отправить сообщение?

  • Согласен 1

Ранее был известен под ником BoBaH_671.

Ссылка на комментарий

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

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

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

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

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

Войти

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

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

AMK-Team.ru

×
×
  • Создать...