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

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

23 часа назад, Labadal сказал:

3. Создал для них три точки walk и три точки look.

Флаги в путях проставил?

Clipboard01.jpg

https://xray-engine.org/index.php?title=Точки_пути_(way_point)

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

Господа, вопрос такой:

 

Хочу сделать рестриктор, что бы выдался квест при заходе в него.

(Можно инфопоршень, неважно).

 

А то по трем гайдам, у меня проблемы, везде вылеты с логом по "g_.script'у" с ошибкой "#2". 

Направьте пожалуйста, и прошу прощения если оффтоп. 

ТЧ. 1.0004

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

@EGER.OVERKILL WF , рестриктор на вход, там при входе актёру выдать инфо, который запустит квест. Прошу прощения, но с телефона не могу привести примеры кодов. 

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


Подарки

  • 5
  • 4
  • 2
  • Ссылка на комментарий
    23 минуты назад, mole venomous сказал:

    выдать инфо, который запустит квест.

    Это понял, делаю по урокам разным, но результат один, при НИ вылет.

     

    Как правильнее сделать выдачу поршня в логике?

    Я делаю так: 

     

    Скрытый текст

    custom_data = <<END

    [logic]
    active = sr_idle

    [sr_idle]
    on_inside = %+kura%
    END 

     

    Изменено пользователем EGER.OVERKILL WF
    Ссылка на комментарий
    34 минуты назад, EGER.OVERKILL WF сказал:

    делаю по урокам

    Неправильные уроки потому что.

    Не on_inside, а on_actor_inside

     

    Можно добавить еще nil (on_actor_inside = nil %+kura%), чтобы при заходе в рестриктор и срабатывании инфопоршня/функции рестриктор больше не проверялся на апдтейте (т.е при повторном заходе в зону рестриктора повторной выдачи/вызова не будет). Если вызов поршня/функции должен повторяться, nil не нужен.

    • Согласен 2

    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


    Подарки

  • 2
  • Ссылка на комментарий
    9 минут назад, HellRatz сказал:

    nil (on_actor_inside = nil %+kura%)

    Cпасибо за ценные инструкции, я по этому сюда и написал, тут люди грамотные собрались.

    Сейчас попробую. 

     

    Скрытый текст

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    [871]

    ; cse_abstract properties
    section_name = space_restrictor
    name = wy
    position =  -40.14, -15.15, -159.5; 13.43, 4. 51, 91.69
    direction = 0.0, 0.0, 0.0
    id = 65535
    version = 118
    script_version = 6
    spawn_id = 871

    ; cse_alife_object properties
    game_vertex_id = 108
    level_vertex_id = 238464
    object_flags = 0xffffff3e
    custom_data = <<END

    [logic]
    active = sr_idle

    [sr_idle]
    on_actor_inside = nil %+kura%
    END

    ; cse_shape properties
    shapes = shape0
    shape0:type = sphere
    shape0:offset = 0,0,0
    shape0:radius = 5

    ; cse_alife_space_restrictor properties
    restrictor_type = 0

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    Но поршень который выдается, не активирует квест. (Хотя должен), В диалоге поршень отыгрывается нормально и выдается квест. 

     

    Бегаю по этому месту (координатам которые указывал), по прежнему, никакой реакции.

    Изменено пользователем EGER.OVERKILL WF
    Ссылка на комментарий

    @EGER.OVERKILL WF а рестриктор правильно установлен? Имею ввиду его шейп, ГГ точно внутри рестриктора находится? Т.к работа ведется в распакованном олл.спаун, а не СДК, можно было что-то не так сделать. Повесь выдачу сообщения при заходе в рестриктор. Если ничего не будет, то ответ на поверхности. 

    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


    Подарки

  • 2
  • Ссылка на комментарий
    1 час назад, EGER.OVERKILL WF сказал:

    квест

    А с квестом порядок? Вызове поршень другим способом для проверки. 

     

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


    Подарки

  • 4
  • 4
  • 3
  • 5
  • Ссылка на комментарий
    1 минуту назад, mole venomous сказал:

    поршень другим способом

    Да, порядок. Вызываю диалогом, и все работает как надо. 

     

    16 минут назад, HellRatz сказал:

    а рестриктор правильно установлен?

    На счет правильности, не уверен.

    Сейчас попробую, подскажете как реализовать, или тоже через поршни следует делать? (сообщение)

    23 минуты назад, HellRatz сказал:

    Имею ввиду его шейп

    Сообщение нет. Вы правы, ничего не происходит.

    Скрипт сообщения заведомо рабочий, так что в нём ошибки быть не может.

     

    Как правильно установить шейп?

    Делаю по координатам, там где спавниться один из моих НПС.

    Нпс есть, рестриктора нет (исходя из данных выше.)

    2 часа назад, HellRatz сказал:

    а рестриктор правильно установлен? Имею ввиду его шейп

    В этом я новичок, и по сему, что именно "на поверхности", и как поправить шейп, я не понимаю.

    Подскажите пожалуйста. 

     

    Насколько я догадываюсь, редактировать нужно то, что под "cse_shape properties". 

    У меня там следующая билеберда: (брал из этого же файла, с другого рестриктора) 

    Скрытый текст

    ; cse_shape properties
    shapes = 1
    shape_0:type = sphere
    shape_0:offset = 0,0,0
    shape_0:radius = 4.5480751991272

     

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

    @EGER.OVERKILL WF Шейп может быть шаром, боксом, любого размера. Но что у тебя взято за исходник неизвестно. Вижу, что тип шейпа у тебя шарообразный shape_0:type = sphere. Попробуй поставить box, может быть поможет.

     

    ; cse_shape properties
    shapes = shape0
    shape0:type = box
    shape0:axis_x = 2.64159965515137,0,0 --ширина зоны по X
    shape0:axis_y = 0,2.22759985923767,0 --ширина зоны по Y
    shape0:axis_z = 0,0,2.64159965515137 --ширина зоны по Z
    shape0:offset = 0,0,0 --поворот по осям (x,y,z)

     

    Вообще для таких работ целесообразно использовать СДК. Создание правильных и нужных рестрикторов через копи-паст в all.spawn не самый грамотный подход.

    • Согласен 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


    Подарки

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

    Почему не поэкспериментировать с размером сферы или бокса? Или тут нужно его прям хитро уместить? Бокс можно вращать же... 

    Короче, я вообще не вижу проблемы. Или просто не понял проблему... 

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


    Подарки

  • 5
  • 3
  • 3
  • 4
  • Ссылка на комментарий
    13 часов назад, HellRatz сказал:

    через копи-паст в all.spawn не самый грамотный подход.

    Знаю, но я только учусь. Думая, что если взять что-то за основу исходно рабочее (оригинальное), ну такой уж я выбор сделал, в данном случае. Про СДК знаю, но слишком уж много заморочек получается для всего этого, три редактора на один рестриктор и это в лучшем случае. Основная мысль - сделать максимально просто и красиво, но видимо без стороннего софта и знающих людей, одному реализовать слишком уж проблемно. 

     

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

    P.S Локация кордон, все Х,Y,Z взяты из Позишн Информера. 

    Скрытый текст

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

    [871]

    ; cse_abstract properties
    section_name = space_restrictor
    name = wy
    position =  6.638, 2.548, 72.340
    direction = -0.79547029733658, 0.0, 0.60599255561829
    id = 65535
    version = 118
    script_version = 6
    spawn_id = 871

    ; cse_alife_object properties
    game_vertex_id = 89
    distance = 9.8000002
    level_vertex_id = 283095
    object_flags = 0xffffff3e
    custom_data = <<END
    [logic]
    active = sr_idle

    [sr_idle]
    nil (on_actor_inside = nil %+kura%)
    END

    ; cse_shape properties
    shapes = shape0
    shape0:type = box
    shape0:axis_x = 2.64159965515137,0,0 --ширина зоны по X
    shape0:axis_y = 0,2.22759985923767,0 --ширина зоны по Y
    shape0:axis_z = 0,0,2.64159965515137 --ширина зоны по Z
    shape0:offset = 0,0,0 --поворот по осям (x,y,z)

    ; cse_alife_space_restrictor properties
    restrictor_type = 0

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

     

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

    @EGER.OVERKILL WF ,

    31 минуту назад, EGER.OVERKILL WF сказал:

    [logic]
    active = sr_idle

    [sr_idle]
    on_actor_inside = nil %+kura%

     

    И вот здесь всё-таки так, по моему:

    31 минуту назад, EGER.OVERKILL WF сказал:

    ; cse_shape properties
    shapes = 1
    shape0:type = box

    ...

     

    Изменено пользователем Купер
    • Согласен 1
    Ссылка на комментарий
    6 минут назад, Купер сказал:

    shapes = 1
    shape0:type = box

    В данный момент меня поправили, уже так 

    Скрытый текст

    ; cse_shape properties
    shapes = shape0
    shape0:type = sphere
    shape0:offset = 0, 0, 0
    shape0:radius = 5

    Скрытый текст

    [logic]
    active = sr_idle

    [sr_idle]
    on_actor_inside = {-kura} nil %+kura%

    {...} - условия для выполнения

    %...% - действия

    Должно быть все таки условие? Или нет?

    Меня просто интересует, можно ли задать рестриктору логику что при заходе в него, гг получает поршень (и квест соотв.) , или нет? (без условия.)

    Если так, то считается ли условием, наличие другого инфопоршня? 

    Ссылка на комментарий
    7 часов назад, EGER.OVERKILL WF сказал:

    shape0:axis_x = 2.64159965515137,0,0 --ширина зоны по X
    shape0:axis_y = 0,2.22759985923767,0 --ширина зоны по Y
    shape0:axis_z = 0,0,2.64159965515137 --ширина зоны по Z
    shape0:offset = 0,0,0 --поворот по осям (x,y,z)

    Так чему же тут будут равны, ширина зоны по Х, Y, и т.д... ась?

    0 -- неизвестные движку символы. Скорее всего получится vector3(NaN), т.е. недействительный.
    Немножко ликбеза...

    Скрытый текст

     

    При чтении текстовых файлов (конфиги, скрипты, алл.спавн), движок X-Ray предусматривает наличие в файле комментариев. Как это работает: При чтении очередной строки, движок ищет ключевые символы обозначающие начало комментария.

    Если он их находит, все после этих символов, движком не воспринимается - это комментарий предназначенный для людей, а не для движка.

    Если он их НЕ находит. То всю строку он пытается интерпретировать как ключ = значение. Или просто значение.

    Т.е. в данном случае

    shape0:axis_x

    Ключ

    2.64159965515137,0,0 --ширина зоны по X

    Значение. Это не число, это не вектор. Это непонятная движку абракадабра. Результатом интерпретации этой строки будет NaN или NULL или еще что-нибудь в таком духе.

     

    Как правильно ставить комментарии:

    В файлах LTX конфигов и аллспавна

    ; это комментарий.
    -- А это НЕ комментарий. Движок будет пытаться интерпретировать это как значение.

    Просто символ ; (точка с запятой) все что до него - ключи и значения, все что после - комментарии

    В файлах скриптов на языке Луа, т.е. *.script

    -- это комментарий
    --[[ И
    это тоже 
    комментарий
    ]]
    ; А это НЕ комментарий.

    Очевидно что для скриптов, и для конфигов-спавна, ключевые символы комментирования разные. Не путайте их между собой, не надо писать конфиги так как будто это скрипты, и наоборот.

     

     

    P.S.
     

    Скрытый текст

     

    По этому "птичьему языку", то бишь логикой иксрея, который состоит из %, фигурных скобочек и разных других непонятных закорючек. Не помогу, т.к. этого языка не знаю, никогда им не пользовался, понятия не имею зачем его вообще придумали.

    С грустью наблюдаю попытки делать что-то на этой ущербной системе, когда же людям надоест кушать кактус? :mda:

     

     

    • Спасибо 1
    • Согласен 1
    • Полезно 1
    • Сомнительно 1

    Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

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

    AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

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

    доброго вечера, в общем такая проблема: 
    получаю цель: local target = level.get_target_obj() (это XRE, но не суть)

     

    получаю имя секции этой цели (в моём случае сталкера): local sect = target:profile_name()

     

    далее, я хочу удалить именно этого нпс:

    		for a=10,65634,1 do
    		local obj=alife():object(a)
    		if obj and target and string.find(obj:name(),sect) then
    		alife():release(obj,true)
    		end
    		end

    но дело в том, что есть нпс, типа:

    south_digger_default1
    south_digger_default2
    south_digger_default3
    south_digger_default4

    и при "удалении" одного - у меня удаляются все. (то есть если я удалю одного нпс из деревни новичков, например, то там останется только Волк). Как мне удалить именно того, кого я выбрал? 

    God save Hatsune Miku!


    Подарки

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

    @Manool Хорошо, я вот удалил этого нпс. Допустим, через некоторое время я хочу его вновь заспавнить (именно его (с таким же именем и тд)). Как это сделать? причем так, чтоб он вновь стал "работать" под своей логикой, и присоединился к своему гулагу, если был в нем.
    Ещё раз спасибо.

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

    God save Hatsune Miku!


    Подарки

  • Ссылка на комментарий
    23 часа назад, Zander_driver сказал:

    Немножко ликбеза...

    Боже, храни вас господь. Низкий поклон, и уважение.

    Именно ваше решение, с ликбезом и комментариями помогло мне! 

     

    Выражаю благодарность! Теперь, все работает как часы.

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

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

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

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

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

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

    Войти

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

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

    AMK-Team.ru

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