Случайная подборка модов
Call of Pripyat Complete
3.7
Krovosos mod v. 3.8
4.0
Вектор Отчуждения
4.2
G.L.A.D.I.A.T.O.R. II Время Альянса
3.4
«В аду… Псы»
3.6
The Second Sun
2.9
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  А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
    Российская Федерация  Mel
    Суббота, 01.03.2014, 19:18 | Сообщение # 1951
    Anarchy Cell Mod
    Статус:
    Бывалый:
    Сообщений: 651
    Награды: 4
    Регистрация: 22.08.2013

    ColR_iT, к сожалению урон здоровью не идет. По аномалии как по бульвару хожу.
      Злобная реклама
    Суббота, 01.03.2014, 19:18
    Статус:
    Сообщений: 666
    Регистрация: 22.08.2013
    Российская Федерация  Asfagan
    Суббота, 01.03.2014, 19:21 | Сообщение # 1952
    Статус:
    Бывалый:
    Сообщений: 929
    Награды: 12
    Регистрация: 01.02.2014

    FantomICW, еще вопрос. создал простого НПС, как теперь посредством диалога сделать, чтобы он выдал предмет взамен другого предмета? т.е. я ему, а он мне.
      Злобная реклама
    Суббота, 01.03.2014, 19:21
    Статус:
    Сообщений: 666
    Регистрация: 01.02.2014
    Украина  FantomICW
    Суббота, 01.03.2014, 19:40 | Сообщение # 1953
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    Asfagan, читай туторы по диалогам. Через акшион. Используй функции relocate_item_to_actor и relocate_item_from_actor.
      Злобная реклама
    Суббота, 01.03.2014, 19:40
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Беларусь  UX-3000
    Суббота, 01.03.2014, 19:49 | Сообщение # 1954
    Статус:
    Бывалый:
    Сообщений: 623
    Награды: 5
    Регистрация: 07.06.2013

    У меня простой (и может быть кому-нибудь покажется дурацкий вопрос) - как быстрее убрать с экрана сообщение для ГГ, чтобы оно не висело слишком долго - может быть есть функция типа clear tip (да, туплю, но всё-равно это очень нужно для работы).

    Пример:

    news_manager.send_tip(db.actor, "%c[255,255,128,128]СПРАВОЧНИК АРТЕФАКТОВ:\n%c[default]Вы подняли вредный антиартефакт.\\nНи в коем случае не ложите его в ячейку костюма - это смертельно опасно.\\nНайдите возле аномальной зоны металлический изолирующий контейнер и скиньте антиартефакт во внутрь его.\\nИ не забудьте принять антирад и возможно подлечиться аптечкой.", nil, nil, 30000)
      Злобная реклама
    Суббота, 01.03.2014, 19:49
    Статус:
    Сообщений: 666
    Регистрация: 07.06.2013
    Российская Федерация  Streels
    Суббота, 01.03.2014, 20:00 | Сообщение # 1955
    Статус:
    Опытный:
    Сообщений: 2088
    Награды: 4
    Регистрация: 28.09.2012

    UX-3000,

    Цитата UX-3000 ()
    news_manager.send_tip(db.actor, "%c[255,255,128,128]СПРАВОЧНИК АРТЕФАКТОВ:\n%c[default]Вы подняли вредный антиартефакт.\\nНи в коем случае не ложите его в ячейку костюма - это смертельно опасно.\\nНайдите возле аномальной зоны металлический изолирующий контейнер и скиньте антиартефакт во внутрь его.\\nИ не забудьте принять антирад и возможно подлечиться аптечкой.", nil, nil, 30000)


    Попробуй изменить значение выделенных цифр на 10000, например.
    Сообщение отредактировал Streels - Суббота, 01.03.2014, 20:01
      Злобная реклама
    Суббота, 01.03.2014, 20:00
    Статус:
    Сообщений: 666
    Регистрация: 28.09.2012
    Украина  FantomICW
    Суббота, 01.03.2014, 20:05 | Сообщение # 1956
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    UX-3000, смотри:
    Код
    news_manager.send_tip(actor, news_id, timeout, sender, showtime, sender_id)
    news_manager.send_tip(db.actor, "текст", задержка_перед_отправкой, "иконка_сообщения", время_показа, id_отправителя)
      Злобная реклама
    Суббота, 01.03.2014, 20:05
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Российская Федерация  Asfagan
    Суббота, 01.03.2014, 20:53 | Сообщение # 1957
    Статус:
    Бывалый:
    Сообщений: 929
    Награды: 12
    Регистрация: 01.02.2014

    FantomICW, а поподробнее можно? желательно с примером
      Злобная реклама
    Суббота, 01.03.2014, 20:53
    Статус:
    Сообщений: 666
    Регистрация: 01.02.2014
    Беларусь  UX-3000
    Суббота, 01.03.2014, 21:02 | Сообщение # 1958
    Статус:
    Бывалый:
    Сообщений: 623
    Награды: 5
    Регистрация: 07.06.2013

    FantomICW, Streels, спасибо - попробую. Ещё будет вопрос по замещению части одного скрипта другим (более компактным) - ну через время выложу куски кодов. Думаю, один Вам будет знаком.

    К примеру, есть много таких блоков (для каждого вида артефактов - не важно вредных или не сильно):



    Нужно объединить такие блоки во что-то более компактное (возможно с перебором имён артов, если сильно вешать память не будет, конечно). К примеру в одном из скриптов СВ: Послушник видел вот этот кусок кода:



    В чём разница - у меня фонит (с постэффектами и сообщением об опасности), если лежит в рюкзаке, если взяли арт, у вас же - при подборе самого арта идёт быстрый удар-шок и постэффекты от него. Можно ли сделать гибридную компиляцию кода, при которой и первый скрипт удастся оптимизировать, и во второй можно будет добавить что-то? (скорее всего может пригодиться для полной версии СВ).
    Сообщение отредактировал UX-3000 - Суббота, 01.03.2014, 21:16
      Злобная реклама
    Суббота, 01.03.2014, 21:02
    Статус:
    Сообщений: 666
    Регистрация: 07.06.2013
    Украина  FantomICW
    Суббота, 01.03.2014, 21:19 | Сообщение # 1959
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    Asfagan, я могу тебе сразу готовый вариант кинуть с любым названием предметов и самой функции. Но прежде этого, давай ты попробуешь это сделать сам? Туторы по диалогам - просто дофига. А про скриптовую часть - открываем файл dialogs_лока.script (ЗП) и смотрим, как там реализовано перемещение предметов. Берем как основу, меняем название, все. Каждый успешный модмейкер в свою время ломал голову над вот такими задачками. И старались понять и освоить многое сами. Вот поверь, ты если сам это сделаешь, тебе будет приятней. Это ведь не текстурирование или сложное скриптование, о которых нужно лекции читать. Давай, попробуй, не получиться, отпишешься.

    Добавлено (01.03.2014, 21:19)
    ---------------------------------------------
    UX-3000, ты как функцию запускаешь?

      Злобная реклама
    Суббота, 01.03.2014, 21:19
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Беларусь  UX-3000
    Суббота, 01.03.2014, 21:30 | Сообщение # 1960
    Статус:
    Бывалый:
    Сообщений: 623
    Награды: 5
    Регистрация: 07.06.2013

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

    Вызываю в бинд-сталкере функцию (инклудов там очень много от разных допов). Просто значительно модифицировал вот этот скрипт. Спросил предварительно у автора (на АМК-форуме ранее):

    swm_art_rad.art_rad_main()

    Ну это пока просто набор функций function art_rad_main()
    if db.actor:object("af_antigravi") then ..... для каждого вида арта,
    ну а возможность оптимизировать целый список в пару строчек, согласись,
    стоит затраченного времени, думаю.
    Сообщение отредактировал UX-3000 - Суббота, 01.03.2014, 21:32
      Злобная реклама
    Суббота, 01.03.2014, 21:30
    Статус:
    Сообщений: 666
    Регистрация: 07.06.2013
    Украина  FantomICW
    Суббота, 01.03.2014, 21:34 | Сообщение # 1961
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    UX-3000, например, вызов для списка артов одного типа можно было бы как-то так сократить:
    Код
    --/Эффект при поднятии артефакта  
    function on_item_take(obj)  
    local art_hit_gravi_table = {
         [1] = "af_cristall_flower",
         [2] = "af_night_star",  
         [3] = "af_gravi",
         [4] = "af_medusa",
         [5] = "af_vyvert",  
         [6] = "af_gold_fish"
    }
         for k,v in pairs(art_hit_gravi_table) do
          if db.actor:object(v) then
           this.art_hit_gravitational()  
       end
      end
    end

    Добавлено (01.03.2014, 21:34)
    ---------------------------------------------

    Цитата UX-3000 ()
    Вызываю в бинд-сталкере

    Конкретней, пожалуйста. В какой функции? Апдейт?
    Цитата UX-3000 ()
    ты не против если я попробую создать рабочую функцию

    Мне чего против быть-то?))
      Злобная реклама
    Суббота, 01.03.2014, 21:34
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Беларусь  UX-3000
    Суббота, 01.03.2014, 21:43 | Сообщение # 1962
    Статус:
    Бывалый:
    Сообщений: 623
    Награды: 5
    Регистрация: 07.06.2013

    В Послушнике в бинд-сталкере вызывается вот тут:

    function actor_binder:on_item_take (obj)
    ......
    treasure_manager.get_treasure_manager():on_item_take(obj:id())
    ins_arts.on_item_take(obj)
    end

    у меня здесь:
    function actor_binder:update(delta)
    ................
    --' SWM COP
    swm_art_rad.art_rad_main()
    --' SWM COP

    Добавлено (01.03.2014, 21:41)
    ---------------------------------------------
    Т.е. вызов разный, получается.....

    Добавлено (01.03.2014, 21:43)
    ---------------------------------------------
    Потому что у Вас апдейт на подбор арта, а у нас - на нахождение в рюкзаке актора.

      Злобная реклама
    Суббота, 01.03.2014, 21:43
    Статус:
    Сообщений: 666
    Регистрация: 07.06.2013
    Украина  FantomICW
    Суббота, 01.03.2014, 21:44 | Сообщение # 1963
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    UX-3000, ну, все логично, понятно, почему у тебя постоянно эффекты воспроизводятся. У нас стоит коллбек поднятия предмета, а у тебя, в данном случае, - коллбек наличия предмета. Не суй функции на апдейт. Никогда не суй. Если это только не постоянный элемент худа, например. Вызов своей функции переноси на on_item_take, как в СВ. Не забудь об аргументе obj.
      Злобная реклама
    Суббота, 01.03.2014, 21:44
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Беларусь  UX-3000
    Суббота, 01.03.2014, 21:52 | Сообщение # 1964
    Статус:
    Бывалый:
    Сообщений: 623
    Награды: 5
    Регистрация: 07.06.2013

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

    Если удастся гибрид этих идей собрать - напишу что получилось в итоге.

    Добавлено (01.03.2014, 21:52)
    ---------------------------------------------
    И спасибо за советы - конечно, многому ещё учиться надо, но лучше учиться на реальном примере.

    Сообщение отредактировал UX-3000 - Суббота, 01.03.2014, 21:51
      Злобная реклама
    Суббота, 01.03.2014, 21:52
    Статус:
    Сообщений: 666
    Регистрация: 07.06.2013
    Украина  FantomICW
    Суббота, 01.03.2014, 21:55 | Сообщение # 1965
    Проект Смерти Вопреки
    Статус:
    Опытный:
    Сообщений: 2259
    Награды: 8
    Регистрация: 06.01.2013

    UX-3000, всегда пожалуйста wink
      Злобная реклама
    Суббота, 01.03.2014, 21:55
    Статус:
    Сообщений: 666
    Регистрация: 06.01.2013
    Поиск: