Случайная подборка модов
Nature Winter v2.0 «Квантовый скачок»
4.0
Смерти Вопреки. В Паутине лжи
4.1
Погоня за Праздником 2: В Ожидании Чуда...
4.1
Вектор Отчуждения
4.2
Oblivion Lost Remake 2.0
4.1
Игра Душ: Эксельсиор
4.4
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  А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
    Российская Федерация  DukeKAn
    Воскресенье, 10.01.2016, 23:34 | Сообщение # 9256
    Статус:
    Неопытный:
    Сообщений: 491
    Награды: 8
    Регистрация: 25.11.2012

    FonSwong, не вылетает?
      Злобная реклама
    Воскресенье, 10.01.2016, 23:34
    Статус:
    Сообщений: 666
    Регистрация: 25.11.2012
    Российская Федерация  Arist
    Воскресенье, 10.01.2016, 23:58 | Сообщение # 9257
    Статус:
    Неопытный:
    Сообщений: 481
    Награды: 1
    Регистрация: 08.07.2012

    Цитата
    Ребятки, нужна помощь с логикой в ТЧ. Заспавнил типа одного у бункера, он должен проговорить фразу, а потом подключиться к смарту и пойти в деревню. Но он продолжает стоять после того, как фразу проговорил. В чем проблема?

    Сразу ставить:
    [smart_terrains]
    esc_lager = true

    За образец взять Шустрого. Прописать своему НПС эксклюзивную работу, как у Шустрого, типа:
    predicate = function(obj_info)
    return obj_info.profile_name == "esc_shustryi"
    end
    Чтобы, никто другой не занял его место. Добавить логику и в смарт число(capacity =) увеличить.

    Добавлено (10.01.2016, 23:58)
    ---------------------------------------------
    Advisor890, логика смарта,типа:
    [smart_terrain]
    targets =
    sim_type = default
    sim_value = true
    squad_capacity = 1
    squad_id = 111111 ;свой ай-ди, чтобы не повторялся на локе
    ;respawn_sector = monster
    mutant_lair = true

    Обязательно две точки в WAY:смарт_kamp_1 и смарт_kamp_1_task
    Сделать сквад и если надо с начала игры, то в faction_monster.ltx в
    [start_position]
    сквад = смарт

      Злобная реклама
    Воскресенье, 10.01.2016, 23:58
    Статус:
    Сообщений: 666
    Регистрация: 08.07.2012
    Российская Федерация  Advisor890
    Понедельник, 11.01.2016, 01:47 | Сообщение # 9258
    Статус:
    Отмычка:
    Сообщений: 115
    Награды: 1
    Регистрация: 07.07.2012

    Arist, В targets надо что-то прописывать? Или этот параметр можно оставить пустым? Еще вопрос: Как правильно настроить сквад для такого смарта?

    Добавлено (11.01.2016, 01:47)
    ---------------------------------------------
    Arist, И ещё. Создал смарт с логикой как ты и сказал. Прописал смарт собаки.
    Во время загрузки уровня выдает вылет:
    Expression : fatal error
    Function : CScriptEngine::lua_error
    File : E:\priquel\sources\engine\xrServerEntities\script_engine.cpp
    Line : 180
    Description : <no expression>
    Arguments : LUA error: ....Р. - Чистое Небо\gamedata\scripts\se_monster.script:214: attempt to index field 'exclusives' (a nil value)

    В чем может быть ошибка и как это исправить?

      Злобная реклама
    Понедельник, 11.01.2016, 01:47
    Статус:
    Сообщений: 666
    Регистрация: 07.07.2012
    Российская Федерация  FonSwong
    Понедельник, 11.01.2016, 05:31 | Сообщение # 9259
    Статус:
    Опытный:
    Сообщений: 1593
    Награды: 1
    Регистрация: 21.12.2014

    DukeKAn, ошибку выдаёт:
    Код
    ! Unknown command: ...ames\s.t.a.l.k.e.r_ogse\gamedata\scripts\test.script:5:_attempt_to_call_global_'get_npc_relation'_(a_nil_value)

    После вывода в онлайн:
    Код
    snpc = alife():object(275)
    snpc.force_offline = nil

    Не получаю клиентскую юзердату, npc=nil:
    Код
    npc = level.object_by_id(275)

    То есть я пытаюсь получить отношение Кузнецова(275)(под мостом) к ГГ, находясь в деревне новичков(Кузнецов в оффлайне)
    Сообщение отредактировал FonSwong - Понедельник, 11.01.2016, 05:50
      Злобная реклама
    Понедельник, 11.01.2016, 05:31
    Статус:
    Сообщений: 666
    Регистрация: 21.12.2014
    Российская Федерация  Arist
    Понедельник, 11.01.2016, 08:18 | Сообщение # 9260
    Статус:
    Неопытный:
    Сообщений: 481
    Награды: 1
    Регистрация: 08.07.2012

    Advisor890, Как пример:


    Добавлено (11.01.2016, 08:18)
    ---------------------------------------------
    targets - если надо, чтобы на смарт нападали или сквад из смарта перемещался в другой смарт. Можно на другую локацию.
    Сообщение отредактировал Arist - Понедельник, 11.01.2016, 09:01
      Злобная реклама
    Понедельник, 11.01.2016, 08:18
    Статус:
    Сообщений: 666
    Регистрация: 08.07.2012
    Российская Федерация  denis2000
    Понедельник, 11.01.2016, 10:56 | Сообщение # 9261
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата FonSwong ()
    где косяк?

    Вот здесь: snpc.force_offline = nil
    Цитата FonSwong ()
    Не получаю клиентскую юзердату, npc=nil:

    Естественно: level.object_by_id дает nil для объекта в офлайне.
      Злобная реклама
    Понедельник, 11.01.2016, 10:56
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  Advisor890
    Понедельник, 11.01.2016, 14:12 | Сообщение # 9262
    Статус:
    Отмычка:
    Сообщений: 115
    Награды: 1
    Регистрация: 07.07.2012

    Arist, А вот если я добавляю смарт на новую локацию.
    мне её надо ещё где прописывать помимо [spawn_by_level] в fuction_monster и [levels] в smart_names?
    Просто я сейчас создал смарт на твоем примере, прибежал на место его расположения, а там никого нету.
    Кстати вопрос с вылетом когда прописываешь этот смарт мутанту методом "[smart_terrains] название_смарта = true"
    остается открытым. Игра вылетает при загрузке уровня. Или же все таки в ЧН нельзя так присваивать смарты мутантам?(как в ТЧ)
    Сообщение отредактировал Advisor890 - Понедельник, 11.01.2016, 14:17
      Злобная реклама
    Понедельник, 11.01.2016, 14:12
    Статус:
    Сообщений: 666
    Регистрация: 07.07.2012
    Российская Федерация  FonSwong
    Понедельник, 11.01.2016, 14:50 | Сообщение # 9263
    Статус:
    Опытный:
    Сообщений: 1593
    Награды: 1
    Регистрация: 21.12.2014

    snpc.force_offline = true -- выводит в оффлайн
    snpc.force_offline = nil -- выводит в онлайн
    Как вывести в онлайн?(как я понял я неправильно вывожу?)
      Злобная реклама
    Понедельник, 11.01.2016, 14:50
    Статус:
    Сообщений: 666
    Регистрация: 21.12.2014
    Российская Федерация  Кошелев
    Понедельник, 11.01.2016, 14:56 | Сообщение # 9264
    Статус:
    Гость:
    Сообщений: 30
    Награды: 0
    Регистрация: 10.01.2016

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

    Добавлено (11.01.2016, 14:56)
    ---------------------------------------------
    FonSwong, Не знаю на какой платформе, но операторы вывода НПС в оффлайн и онлайн в ТЧ выглядят так

    Код
    alife():set_switch_offline (id, value)
    alife():set_switch_online (id, value)

    Добавлено (11.01.2016, 14:56)
    ---------------------------------------------
    Задать эти параметры можно из отдельного скрипта или напрямую из логики НПС

      Злобная реклама
    Понедельник, 11.01.2016, 14:56
    Статус:
    Сообщений: 666
    Регистрация: 10.01.2016
    Российская Федерация  Arist
    Понедельник, 11.01.2016, 15:26 | Сообщение # 9265
    Статус:
    Неопытный:
    Сообщений: 481
    Награды: 1
    Регистрация: 08.07.2012

    Advisor890,
    Цитата
    Или же все таки в ЧН нельзя так присваивать смарты мутантам?(как в ТЧ)
    - конечно нельзя. Возьму, для примера, Росток. Скрипты, куда я дописывал:
    sim_board.script
    sim_squad_generic.script
    xrs_dynamic_music_themes.script
    xr_surge.script -- для выброса, если надо

    Далее в misc\faction** группировка
    И в game_map_single.ltx и game_levels.ltx
    Сообщение отредактировал Arist - Понедельник, 11.01.2016, 15:30
      Злобная реклама
    Понедельник, 11.01.2016, 15:26
    Статус:
    Сообщений: 666
    Регистрация: 08.07.2012
    Российская Федерация  Advisor890
    Понедельник, 11.01.2016, 15:35 | Сообщение # 9266
    Статус:
    Отмычка:
    Сообщений: 115
    Награды: 1
    Регистрация: 07.07.2012

    Arist, Свою локацию надо прописать во все faction_***?
    Мне же нужно только смарт для мутантов, поэтому я прописал её только в faction_monster.
      Злобная реклама
    Понедельник, 11.01.2016, 15:35
    Статус:
    Сообщений: 666
    Регистрация: 07.07.2012
    Российская Федерация  Arist
    Понедельник, 11.01.2016, 15:43 | Сообщение # 9267
    Статус:
    Неопытный:
    Сообщений: 481
    Награды: 1
    Регистрация: 08.07.2012

    Advisor890, только мутантам тогда.
      Злобная реклама
    Понедельник, 11.01.2016, 15:43
    Статус:
    Сообщений: 666
    Регистрация: 08.07.2012
    Российская Федерация  denis2000
    Понедельник, 11.01.2016, 15:49 | Сообщение # 9268
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата FonSwong ()
    snpc.force_offline = true -- выводит в оффлайн
    snpc.force_offline = nil -- выводит в онлайн

    Откуда вы взяли эту чушь!?
    Цитата Кошелев ()
    alife():set_switch_offline (id, value)
    alife():set_switch_online (id, value)

    Вот правильные операторы!
    Значит для вывода в онлайн и запрете вернуться в офлайн:
    Код
    alife():set_switch_offline (id, false)
    alife():set_switch_online (id, true)

    Но этого мало, после установки флагов online/offline нужно дождаться выхода объекта в онлайн:
    Код

    alife():set_switch_offline (275, false)
    alife():set_switch_online (275, true) --Вывести онлайн (вернее поставить флаги для вывода)
    local wait_online = function()
        if snpc.online then
         return true
        end
       end
       
       local do_online = function()
        --------
                        --Действия с онлайн объектом
                        --------
                        alife():set_switch_offline (275, true) --Вернуть в офлайн
                        alife():set_switch_online (275, false)
       end

       level.add_call( wait_online, do_online )
      Злобная реклама
    Понедельник, 11.01.2016, 15:49
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  Arist
    Понедельник, 11.01.2016, 16:19 | Сообщение # 9269
    Статус:
    Неопытный:
    Сообщений: 481
    Награды: 1
    Регистрация: 08.07.2012

    Advisor890, может поможет, из моего faction_monster.ltx


    Сделал сквад:
    [dogs_generic]
    auto_id = true
    faction = monster
    npc = dog_strong, dog_normal, dog_normal, dog_weak, dog_weak
    show_spot = true

    И в начале игры на все локи, для живности, в разные смарты, добавляю сквад собак.

    Добавлено (11.01.2016, 16:19)
    ---------------------------------------------
    ****************************
    И ещё. Во всех смартах мутантов я ставил параметр:
    sim_value = 1
    Не могу вспомнить, зачем?

    Сообщение отредактировал Arist - Понедельник, 11.01.2016, 16:09
      Злобная реклама
    Понедельник, 11.01.2016, 16:19
    Статус:
    Сообщений: 666
    Регистрация: 08.07.2012
    Соединенные Штаты  Joni_009
    Понедельник, 11.01.2016, 17:19 | Сообщение # 9270
    Статус:
    Бывалый:
    Сообщений: 1008
    Награды: 14
    Регистрация: 25.05.2014

    Всем привет народ, такая проблемка у меня. Создал торговца на локации, все норм работает прописал ему метку:
    Код
    level_spot = trader

    А в ПДА он как торговец не отмечается, что не так?
      Злобная реклама
    Понедельник, 11.01.2016, 17:19
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2014
    Поиск: