Случайная подборка модов
День одиночки
1.6
Долг. Философия Войны
4.0
Контракт на хорошую жизнь
4.1
R.M.A. Atmospheric Addon 3.0
4.0
G.L.A.D.I.A.T.O.R. II Время Альянса
3.4
Время Перемен 2.5
4.0
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  Аdmin
Воскресенье, 03.11.2013, 19:36 | Сообщение # 1
Статус:
Опытный:
Сообщений: 1538
Награды: 11
Регистрация: 28.03.2011

В данной теме вы можете задавать любые вопросы касательно S.T.A.L.K.E.R. моддинга.

  • Не флудить
  • Предварительно просматривайте раздел. Ответ на ваш вопрос может быть там.
  • В своем вопросе указывайте платформу моддинга - Тень Чернобыля, Чистое небо или Зов Припяти.





    У кого есть желание, создать FAQ по основным вопросам моддинга - обращаемся в ЛС.


    Архив

    Архив#2
  •   Злобная реклама
    Воскресенье, 03.11.2013, 19:36
    Статус:
    Сообщений: 666
    Регистрация: 28.03.2011
    Украина  FantomICW
    Суббота, 28.06.2014, 16:13 | Сообщение # 3511
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    Sanjaaa, Саня, дружище, ты в моддинге больше года, по-моему. За это время можно понять одну простую вещь - почти все логические и скриптовые действия, проверки можно запускать с помощью рестриктора. На рестриктор можно поставить почти что угодно. И как ты думаешь, как заспавнить предмет с проверкой на инфопорцию? Подсказка: не через апдейт актера. Саня, рестриктор, рестриктор, рестриктор. В ЗП есть функция spawn_object. В ТЧ - не помню, есть ли, но можно перенести, если что.
    Код
    [logic]
    active = sr_idle@spawn

    [sr_idle@spawn]
    on_info = {+info_portion} sr_idle@nil %=spawn_object(предмет:вейпоинт)%

    [sr_idle@nil]

    В любом случае, можно запустить твою функцию, которая спавнит предмет:
    Код
    [logic]
    active = sr_idle@spawn

    [sr_idle@spawn]
    on_info = {+info_portion} sr_idle@nil %=твоя_функция_из_xr_effects%

    [sr_idle@nil]

    Все ведь просто smile

    Добавлено (28.06.2014, 16:13)
    ---------------------------------------------
    saxar, вариантов - масса.
    1. Пропиши в конфиге сквада полтергейста:

    Код
    relationship = friend

    Или:
    Код
    relationship = neutral

    Там же можно и симпатию в числах.
    2. Функции скрипта game_relations.script.
    3. Прописать в логике combat_ignore.
    4. Функции из xr_effects.script: actor_friend и actor_neutral, которые можно запустить из логики моба.
    5. Функция set_squad_friend_to_actor оттуда же.
    6. Прямое использование движковых функций. Например, force_set_goodwill, set_squad_relation и set_relation, которые задействованы в методах выше, только в другой оболочке.
      Злобная реклама
    Суббота, 28.06.2014, 16:13
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Украина  stalker-MiX
    Суббота, 28.06.2014, 19:09 | Сообщение # 3512
    Статус:
    Неопытный:
    Сообщений: 534
    Награды: 2
    Регистрация: 20.02.2013

    Цитата saxar ()
    Сценку хочу сделать с этой музыкой

    saxar, biggrin

    можно только представить )))
      Злобная реклама
    Суббота, 28.06.2014, 19:09
    Статус:
    Сообщений: 666
    Регистрация: 20.02.2013
    Российская Федерация  Тортик-ложь
    Суббота, 28.06.2014, 20:57 | Сообщение # 3513
    Статус:
    Новичок:
    Сообщений: 220
    Награды: 0
    Регистрация: 19.12.2013

    Пост на 233-ей странице. Нормальные люди. Помогите. Пожалуйста.
    ---
    "Спасателей" слышать не хочу.
      Злобная реклама
    Суббота, 28.06.2014, 20:57
    Статус:
    Сообщений: 666
    Регистрация: 19.12.2013
    Российская Федерация  Stalker_AleX333
    Суббота, 28.06.2014, 21:29 | Сообщение # 3514
    AleX Mod
    Статус:
    Гость:
    Сообщений: 65
    Награды: 0
    Регистрация: 07.12.2010

    И снова очередная чертовщина, происходит у меня на глазах: 1) имеется набор диалогов для разных нпс, волей левой пятки ноги, вызываемых через логику, точнее секцию meet. Все они начинаются все с "нулевого" диалога. Но корректно работают лишь "стартовые" (в кавычках, по тому, что в файле профилей таковыми они не назначены), остальные отображаются в подобном виде:
    Пробовал изменить начало диалога на единицу - стабильный вылет, с руганью на не валидный xml файл, хотя у меня (с помощью спец. утилиты) проверку он прошел без ошибок. На всякий случай прилагаю логику этих нпс:

    НПС-1:


    НПС-2:


    2) по неведомой причине перестал спавниться квестовый предмет. Собственно, все к нему относящиеся:

    Фейковый тайник (нужен для того, чтобы основной не материализовался "из воздуха"):

    all.spawn:


    devices.ltx:


    logic:


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

    Основной (реальный) тайник:

    alex_mod_tasks.script (спавн через диалог):


    spawn_sections.ltx:


    devices.ltx:


    logic:


    З.Ы. Спавнящийся предмет имеет уникальный ID и зареган в quest_items.ltx и death_generic.ltx

    Буду признателен, если кто-нибудь подскажет, возможно ли проводить проверку в рестрикторе когда туда входит не ГГ, а конкретный НПС? (знаю только, что подобное есть для мобов)
    Сообщение отредактировал Stalker_AleX333 - Суббота, 28.06.2014, 21:54
      Злобная реклама
    Суббота, 28.06.2014, 21:29
    Статус:
    Сообщений: 666
    Регистрация: 07.12.2010
    Российская Федерация  ins33
    Суббота, 28.06.2014, 21:38 | Сообщение # 3515
    Dream Reader Mod
    Статус:
    Опытный:
    Сообщений: 2269
    Награды: 1
    Регистрация: 17.01.2012

    Тортик-ложь, Ищи поиском текста в моделях имя недостающей текстуры. И пропиши правильное имя.
      Злобная реклама
    Суббота, 28.06.2014, 21:38
    Статус:
    Сообщений: 666
    Регистрация: 17.01.2012
    Украина  FantomICW
    Суббота, 28.06.2014, 21:39 | Сообщение # 3516
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    Stalker_AleX333, заспавнить через =spawn_object_in(предмет:ящик) не хочешь? Функция есть в ЗП.
      Злобная реклама
    Суббота, 28.06.2014, 21:39
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Российская Федерация  Stalker_AleX333
    Суббота, 28.06.2014, 21:50 | Сообщение # 3517
    AleX Mod
    Статус:
    Гость:
    Сообщений: 65
    Награды: 0
    Регистрация: 07.12.2010

    FantomICW, тебя наверно ввел в заблуждение интерфейс - это ТЧ.
      Злобная реклама
    Суббота, 28.06.2014, 21:50
    Статус:
    Сообщений: 666
    Регистрация: 07.12.2010
    Украина  FantomICW
    Суббота, 28.06.2014, 22:04 | Сообщение # 3518
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    Stalker_AleX333, я знаю. Но если функции нету в ТЧ, то можно перенести из ЗП. Хотя, по-моему, в ТЧ тоже есть.
      Злобная реклама
    Суббота, 28.06.2014, 22:04
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Российская Федерация  Stalker_AleX333
    Суббота, 28.06.2014, 22:06 | Сообщение # 3519
    AleX Mod
    Статус:
    Гость:
    Сообщений: 65
    Награды: 0
    Регистрация: 07.12.2010

    FantomICW, что ж, попробую, может и сработает. (Вместо названия ящика можно подставить его ID?) По-поводу всего остального мысли есть? Буду рад услышать любые догадки.
    Сообщение отредактировал Stalker_AleX333 - Суббота, 28.06.2014, 22:09
      Злобная реклама
    Суббота, 28.06.2014, 22:06
    Статус:
    Сообщений: 666
    Регистрация: 07.12.2010
    Российская Федерация  ins33
    Суббота, 28.06.2014, 22:25 | Сообщение # 3520
    Dream Reader Mod
    Статус:
    Опытный:
    Сообщений: 2269
    Награды: 1
    Регистрация: 17.01.2012

    FantomICW, Нельзя. Т.К. в ТЧ нет get_story_object_id
    Я использую,
    Код
    ---------------------------------------------------------------------
    -- =give_items_nps(item:number)
    ---------------------------------------------------------------------

    function give_items_nps(actor, npc, p)
    local item = p and p[1]
    local to_obj = level_object_by_sid(p[2])
        alife():create(item,
         to_obj:position(),
         to_obj:level_vertex_id(),
         to_obj:game_vertex_id(),
         to_obj:id())
    end


    Stalker_AleX333, Без разницы нпс\моб\или... главное указать SID

    on_npc_in_zone = sid |name_restrictor|следующая схема %действие%

    Спавн не происходит у тебя из-за:
    1) Нет вызова ф-ии
    2) Не правильные координаты
    При спавне, повесь метку, что бы увидеть, где он спавнится. И аргументы в ф-ии не нужны.
    А, что не так с диалогом?
    Все диалоги должны начинаться с 0!
      Злобная реклама
    Суббота, 28.06.2014, 22:25
    Статус:
    Сообщений: 666
    Регистрация: 17.01.2012
    Российская Федерация  XoLoDoK
    Суббота, 28.06.2014, 22:40 | Сообщение # 3521
    Статус:
    Отмычка:
    Сообщений: 119
    Награды: 0
    Регистрация: 09.07.2013

    Прошу помощи!
    Хотел вырезать локацию Болота из RMA.

    SDK 0.4 есть, но я тупо путаюсь что мне делать, с чего начинать... Искал в Гугле но там все одно и тоже, ничего не понимаю. Объясните мне пожалуйста, поподробнее. Предлагаю skype d.u.s.h.a.12
    Помогите! cry
      Злобная реклама
    Суббота, 28.06.2014, 22:40
    Статус:
    Сообщений: 666
    Регистрация: 09.07.2013
    Российская Федерация  Stalker_AleX333
    Суббота, 28.06.2014, 23:07 | Сообщение # 3522
    AleX Mod
    Статус:
    Гость:
    Сообщений: 65
    Награды: 0
    Регистрация: 07.12.2010

    ins33, 1) по рестриктору - то, что нужно. А в общем, надо было мне внимательнее смотреть оригинальные файлы игры - там как раз нашлись подходящие примеры.
    2) насчет функции спавна предмета - мой косяк, вызов был из другого скрипта. Видать когда-то перенес и забыл. Не ясно только, почему игра не крашилась...
    3) Дык на скрине видно, что не так. Обычно это происходит когда нарушен порядок показа диалога.
    Но он одинаков для всех диалогов, а корректно отображаются только "стартовые".
    Сообщение отредактировал Stalker_AleX333 - Суббота, 28.06.2014, 23:13
      Злобная реклама
    Суббота, 28.06.2014, 23:07
    Статус:
    Сообщений: 666
    Регистрация: 07.12.2010
    Российская Федерация  strchi
    Воскресенье, 29.06.2014, 00:20 | Сообщение # 3523
    Статус:
    Опытный:
    Сообщений: 2467
    Награды: 13
    Регистрация: 05.10.2012

    wacko А AIwrapper под ЗП вообще существует? Не могу найти((
      Злобная реклама
    Воскресенье, 29.06.2014, 00:20
    Статус:
    Сообщений: 666
    Регистрация: 05.10.2012
    Российская Федерация  ins33
    Воскресенье, 29.06.2014, 00:48 | Сообщение # 3524
    Dream Reader Mod
    Статус:
    Опытный:
    Сообщений: 2269
    Награды: 1
    Регистрация: 17.01.2012

    Stalker_AleX333, Если диалог не правильно отображается, то это твой косяк. Судя по твоим словам, ты не разобрался в чём разница между start_dialog и actor_dialog. В первом случае первую фразу говорит нпс, а во втором, как видно из названия, актор.
    Сделай простой диалог, в котором для наглядности вместо фраз пропиши цифровые значения.
    0
    1
    2
    и т.д.
    За одно посмотри разницу start_dialog и actor_dialog
      Злобная реклама
    Воскресенье, 29.06.2014, 00:48
    Статус:
    Сообщений: 666
    Регистрация: 17.01.2012
    Российская Федерация  solix
    Воскресенье, 29.06.2014, 05:48 | Сообщение # 3525
    Статус:
    Бывалый:
    Сообщений: 792
    Награды: 10
    Регистрация: 08.09.2013

    Какая секция отвечает за гибель ГГ во время выброса.
      Злобная реклама
    Воскресенье, 29.06.2014, 05:48
    Статус:
    Сообщений: 666
    Регистрация: 08.09.2013
    Поиск: