Случайная подборка модов
Тайные Тропы 2
4.2
Hibernation Evil - Эпизод I
2.8
Блудный сын
2.8
Хроники Кайдана
3.6
Секрет Дианы
2.2
Призраки прошлого
3.2
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  Wolfstalker
Понедельник, 22.10.2012, 14:58 | Сообщение # 1
Статус:
Легенда:
Сообщений: 2258
Награды: 15
Регистрация: 05.04.2010

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

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





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


    Архив

    Архив#2
  •   Злобная реклама
    Понедельник, 22.10.2012, 14:58
    Статус:
    Сообщений: 666
    Регистрация: 05.04.2010
    Российская Федерация  Wo1fRam
    Среда, 16.10.2013, 09:22 | Сообщение # 9331
    Статус:
    Новичок:
    Сообщений: 357
    Награды: 4
    Регистрация: 12.03.2013

    [Karpov_SK], не совсем правда. Граф-поинты служат скорее ориентирами, чем путями.

    saxar, смотри как прописаны другие локации. И прописывай по образцу. Или видеоуроки смотри
      Злобная реклама
    Среда, 16.10.2013, 09:22
    Статус:
    Сообщений: 666
    Регистрация: 12.03.2013
    Российская Федерация  wind
    Среда, 16.10.2013, 12:54 | Сообщение # 9332
    Reach mod + Slenderman
    Статус:
    Отмычка:
    Сообщений: 164
    Награды: 1
    Регистрация: 12.02.2011

    как создать квест в сталкере зп придти на определенную точку?
    как сделать чтобы квест брался на определенной точке?
    и как создать квест что бы при взятии кого нибудь предмета появлялся квест?
      Злобная реклама
    Среда, 16.10.2013, 12:54
    Статус:
    Сообщений: 666
    Регистрация: 12.02.2011
    Украина  FantomICW
    Среда, 16.10.2013, 13:21 | Сообщение # 9333
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    wind, это все делается с помощью логики и рестрикторов. Ну, еще коллбек можно поставить. Я не буду рассказывать о создании квеста с нуля, ибо уроки в интернете есть (особое внимание удели урокам Геонозиса). А вот логику рестрикторов, пожалуй, подскажу.
    1. Итак, в конфиге задание ставим кондлист выполнения:
    Код
    condlist_0 = {+actor_on_test_place} complete

    actor_on_test_place - инфопорция, по получении которой задание будет выполнено.
    Логика рестриктора:
    Код
    [logic]
    active = sr_idle@wait

    [sr_idle@wait]
    on_actor_in_zone = название_рестриктора | sr_idle@nil %+actor_on_test_place%

    [sr_idle@nil]

    Итак, при попадании ГГ в нужное место (рестриктор), будет выдаваться финишная инфопорция.
    2. Опять же, ставим рестриктор в нужном месте, и запускаем квест через его логику:
    Код
    [logic]
    active = sr_idle@wait

    [sr_idle@wait]
    on_actor_in_zone = название_рестриктора | sr_idle@nil %=give_task(название_задания)%

    [sr_idle@nil]

    Для выдачи задания используем функцию give_task из xr_effects.script.
    3. Рестриктор:
    Код
    [logic]
    active = sr_idle@wait

    [sr_idle@wait]
    on_info = {=actor_has_item(предмет)} sr_idle@nil %=give_task(название_задания)%

    [sr_idle@nil]

    Проверяем наличие предмета через функциональную проверку actor_has_item из xr_conditions.script.
    Как-то так.

    P.S.
    Под конец я переключаю секцию логики рестриктора на нулевую. Если рестриктор больше не нужен, лучше отключить его, чтобы не было дополнительной нагрузки на движок.
      Злобная реклама
    Среда, 16.10.2013, 13:21
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Российская Федерация  wind
    Среда, 16.10.2013, 13:24 | Сообщение # 9334
    Reach mod + Slenderman
    Статус:
    Отмычка:
    Сообщений: 164
    Награды: 1
    Регистрация: 12.02.2011

    спасибо
      Злобная реклама
    Среда, 16.10.2013, 13:24
    Статус:
    Сообщений: 666
    Регистрация: 12.02.2011
    Португалия  mwesten1
    Среда, 16.10.2013, 15:44 | Сообщение # 9335
    Статус:
    Новичок:
    Сообщений: 326
    Награды: 1
    Регистрация: 01.09.2012

    народ а можно изменять вес который актёр может нести в соответсвии с уровнем сложности?
      Злобная реклама
    Среда, 16.10.2013, 15:44
    Статус:
    Сообщений: 666
    Регистрация: 01.09.2012
    Украина  [Karpov_SK]
    Среда, 16.10.2013, 18:11 | Сообщение # 9336
    Exclusion Zone Mod
    Статус:
    Бывалый:
    Сообщений: 600
    Награды: 12
    Регистрация: 26.08.2013

    Есть-ли возможность востановить схему sr_sound на ЗП.
      Злобная реклама
    Среда, 16.10.2013, 18:11
    Статус:
    Сообщений: 666
    Регистрация: 26.08.2013
    Украина  FantomICW
    Среда, 16.10.2013, 18:24 | Сообщение # 9337
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    [Karpov_SK], да, это вполне возможно.
    1. Зарегистрировать скрипт схемы в modules.script:
    Код
    load_scheme("sr_sound","sr_sound",stype_restrictor)

    2. Скопировать с ТЧ/ЧН сам скрипт логики sr_sound.script и поместить в ЗП.
    3. Вернуть в скрипт xr_sound.script следующие строки:
    Код
    --' Таблица для хранения созданных саунд обжектов.
    sound_object_by_theme = {}
    --' type = [random|seq|looped]
    function get_sound_object(theme, t_type)
    if sound_theme.ph_snd_themes[theme] == nil then
    abort("ph_snd_themes for theme %s", tostring(theme))
    return
    end

    if sound_object_by_theme[theme] == nil then
    sound_object_by_theme[theme] = {}
    end

    if t_type == nil then
    t_type = "random"
    end

    --' Выбор следующего айдишника
    local play_id = -1
    local table_size = table.getn(sound_theme.ph_snd_themes[theme])
    if sound_object_by_theme[theme].last_id == nil then
    if t_type == "random" then
    if table_size >= 2 then
    play_id = math.random(1, table_size)
    else
    play_id = 1
    end
    else
    play_id = 1
    end
    else
    if t_type == "random" then
    if table_size >= 2 then
    play_id = math.random(1, table_size - 1)
    if play_id >= sound_object_by_theme[theme].last_id then play_id = play_id + 1 end
    else
    play_id = 1
    end
    else
    if sound_object_by_theme[theme].last_id < table_size then
    play_id = sound_object_by_theme[theme].last_id + 1
    else
    if type == "looped" then
    play_id = 1
    end
    end
    end   
    end

    printf("SOUND_OBJECT: selected id [%s] for theme [%s], type [%s], size [%s]", tostring(play_id), tostring(theme), tostring(type), table_size)

    if play_id == -1 then
    return
    end
    --' Проверяем создан ли у нас соответствующий саунд обжект или его надо создать
    if sound_object_by_theme[theme][play_id] == nil then
    if type(sound_theme.ph_snd_themes[theme][play_id]) == "table" then
    sound_object_by_theme[theme][play_id.."_r"] = get_safe_sound_object(sound_theme.ph_snd_themes[theme][play_id][1].."_r")
    sound_object_by_theme[theme][play_id.."_l"] = get_safe_sound_object(sound_theme.ph_snd_themes[theme][play_id][1].."_l")
    else
    sound_object_by_theme[theme][play_id] = get_safe_sound_object(sound_theme.ph_snd_themes[theme][play_id])
    end
    end

    sound_object_by_theme[theme].last_id = play_id

    --' Возвращаем саунд обжект
    if type(sound_theme.ph_snd_themes[theme][play_id]) == "table" then
    return sound_object_by_theme[theme][play_id.."_r"], sound_object_by_theme[theme][play_id.."_l"]
    else
    return sound_object_by_theme[theme][play_id]
    end
    end

    local sound_object_by_path = {}
    --' Обертка вокруг функции, возвращающий звуковой объект.
    function get_safe_sound_object(path)
    if sound_object_by_path[path] == nil then
    sound_object_by_path[path] = sound_object(path)
    end
    return sound_object_by_path[path]
    end

    function stop_all_sound_object()
    for k,v in pairs(sound_object_by_path) do
    if v:playing() then
    v:stop()
    end
    end
    end
    function clear_all_sound_object()
    sound_object_by_theme = {}
    end
    Сообщение отредактировал FantomICW - Среда, 16.10.2013, 18:25
      Злобная реклама
    Среда, 16.10.2013, 18:24
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Португалия  mwesten1
    Среда, 16.10.2013, 19:12 | Сообщение # 9338
    Статус:
    Новичок:
    Сообщений: 326
    Награды: 1
    Регистрация: 01.09.2012

    почему я не могу изменить музыку главного меню? любая музыка из сталкера туда идет, даже wasteland2 теней чернобыля идет а моя не идет.
      Злобная реклама
    Среда, 16.10.2013, 19:12
    Статус:
    Сообщений: 666
    Регистрация: 01.09.2012
    Украина  [Karpov_SK]
    Среда, 16.10.2013, 19:22 | Сообщение # 9339
    Exclusion Zone Mod
    Статус:
    Бывалый:
    Сообщений: 600
    Награды: 12
    Регистрация: 26.08.2013

    mwesten1, Неправельно конвертируеш значит, какая платформа?
      Злобная реклама
    Среда, 16.10.2013, 19:22
    Статус:
    Сообщений: 666
    Регистрация: 26.08.2013
    Португалия  mwesten1
    Среда, 16.10.2013, 19:25 | Сообщение # 9340
    Статус:
    Новичок:
    Сообщений: 326
    Награды: 1
    Регистрация: 01.09.2012

    Цитата [Karpov_SK
    ;546650]mwesten1, Неправельно конвертируеш значит, какая платформа?


    зов припяти, конвертирую в сдк, пробовал конвертировать в аудасити в .огг тож не конает
      Злобная реклама
    Среда, 16.10.2013, 19:25
    Статус:
    Сообщений: 666
    Регистрация: 01.09.2012
    Украина  [Karpov_SK]
    Среда, 16.10.2013, 19:29 | Сообщение # 9341
    Exclusion Zone Mod
    Статус:
    Бывалый:
    Сообщений: 600
    Награды: 12
    Регистрация: 26.08.2013

    mwesten1, Если тебе для главного меню необязательно использовать СДК. Переконвертируй с помощью aimp3. C стандартными параметрами.
      Злобная реклама
    Среда, 16.10.2013, 19:29
    Статус:
    Сообщений: 666
    Регистрация: 26.08.2013
    Португалия  mwesten1
    Среда, 16.10.2013, 19:36 | Сообщение # 9342
    Статус:
    Новичок:
    Сообщений: 326
    Награды: 1
    Регистрация: 01.09.2012

    а как с етим работать? что за интерфейс такой?

    Добавлено (16.10.2013, 19:34)
    ---------------------------------------------
    вроде понял

    Добавлено (16.10.2013, 19:36)
    ---------------------------------------------
    нет всёравно не идет. игра тупо крашытся

      Злобная реклама
    Среда, 16.10.2013, 19:36
    Статус:
    Сообщений: 666
    Регистрация: 01.09.2012
    Российская Федерация  zhuravll1488
    Среда, 16.10.2013, 20:27 | Сообщение # 9343
    Статус:
    Зевака:
    Сообщений: 6
    Награды: 0
    Регистрация: 30.05.2011

    подскажите, как можно свести на нет глянцевитость поверхностей при полном динамическом освещении в Сталкер тч. или как сделать, чтобы на всей карте лежала тень, как под кустами и деревьями.
      Злобная реклама
    Среда, 16.10.2013, 20:27
    Статус:
    Сообщений: 666
    Регистрация: 30.05.2011
    Российская Федерация  Wo1fRam
    Среда, 16.10.2013, 20:42 | Сообщение # 9344
    Статус:
    Новичок:
    Сообщений: 357
    Награды: 4
    Регистрация: 12.03.2013

    Цитата mwesten1 ()
    игра тупо крашытся

    Лог в студию. Экстрасенсы в отпуске
      Злобная реклама
    Среда, 16.10.2013, 20:42
    Статус:
    Сообщений: 666
    Регистрация: 12.03.2013
    Португалия  mwesten1
    Среда, 16.10.2013, 20:55 | Сообщение # 9345
    Статус:
    Новичок:
    Сообщений: 326
    Награды: 1
    Регистрация: 01.09.2012

    Цитата Wo1fRam ()
    Лог в студию. Экстрасенсы в отпуске


    FATAL ERROR

    [error]Expression : wave&&wave->length()
    [error]Function : CSoundRender_Source::LoadWave
    [error]File : D:\prog_repository\sources\trunk\xrSound\SoundRender_Source_loader.cpp
    [error]Line : 65
    [error]Description : Can't open wave file:
    [error]Arguments : d:\s.t.a.l.k.e.r. - call of pripyat\gamedata\sounds\music\menusound.ogg

    Добавлено (16.10.2013, 20:55)
    ---------------------------------------------
    это?

      Злобная реклама
    Среда, 16.10.2013, 20:55
    Статус:
    Сообщений: 666
    Регистрация: 01.09.2012
    Поиск: