Случайная подборка модов
Сталкер "Диана"
2.0
Call of Misery
4.1
Тайный путь
3.6
Объединенный Пак 2.1
3.1
PCFM COP Addon
3.7
MISERY 2.2
4.1
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Модератор форума: FanG, Аdmin, FantomICW, Overfirst  
[CoP] Модострой: вопросница
Российская Федерация  Overfirst
Воскресенье, 31.12.2017, 13:17 | Сообщение # 1
Статус:
Бывалый:
Сообщений: 1081
Награды: 19
Регистрация: 11.06.2015

[CoP] Модострой: вопросница

Тема посвящена моддингу на платформе Зов Припяти.

Соседние темы: Тень Чернобыля / Чистое небо.


  • Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском по разделу, ответ на него, вероятно, уже есть.

  • Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода.

  • Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа).

  • Благодарность выражаем в личке или же ставим плюсик в историю репутации. Подобные посты будут удаляться.
  •   Злобная реклама
    Воскресенье, 31.12.2017, 13:17
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  PROforum
    Понедельник, 05.02.2018, 08:17 | Сообщение # 316
    Статус:
    Отмычка:
    Сообщений: 140
    Награды: 4
    Регистрация: 27.09.2015

    Цитата _S_k_i_F_ ()
    можно в таблицу писать <имя ствола>_nimble

    Не будет так работать, я же писал, что в скрипте отбрасывается часть названия секции, в моём случае « _nimble»
    Цитата _S_k_i_F_ ()
    Ну или преобразовать функцию set_best_weapon так:

    Не работает, вот лог:
      Злобная реклама
    Понедельник, 05.02.2018, 08:17
    Статус:
    Сообщений: 666
    Регистрация: 27.09.2015
    Российская Федерация  alanbrose
    Понедельник, 05.02.2018, 15:26 | Сообщение # 317
    Статус:
    Отмычка:
    Сообщений: 113
    Награды: 4
    Регистрация: 28.08.2015

    Всем привет. Хочу заспавнить пару трупов бандитов возле гг при старте игры. Подскажите самый простой способ и его реализацию.
      Злобная реклама
    Понедельник, 05.02.2018, 15:26
    Статус:
    Сообщений: 666
    Регистрация: 28.08.2015
    Российская Федерация  denis2000
    Понедельник, 05.02.2018, 15:31 | Сообщение # 318
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    alanbrose, Скриптом:
    Код
    [logic]
    active = sr_idle@1

    [sr_idle@1]
    on_info = sr_idle@end %=spawn_corpse(Кого_спавнить:Имя_пути_где_спавнить)%

    [sr_idle@end]
    Сообщение отредактировал denis2000 - Понедельник, 05.02.2018, 15:32
      Злобная реклама
    Понедельник, 05.02.2018, 15:31
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  alanbrose
    Понедельник, 05.02.2018, 15:39 | Сообщение # 319
    Статус:
    Отмычка:
    Сообщений: 113
    Награды: 4
    Регистрация: 28.08.2015

    denis2000, этот универсальный способ прописывать в xr_effects?

    Код
    function test_corpse_spawn
    alife():create("ID_НПС",vector():set(x,y,z),lvid,gvid):on_death()
    end


    Получается потребуется только character_desc и координаты, так ведь?
    Сообщение отредактировал alanbrose - Понедельник, 05.02.2018, 15:39
      Злобная реклама
    Понедельник, 05.02.2018, 15:39
    Статус:
    Сообщений: 666
    Регистрация: 28.08.2015
    Азербайджан  Hoperise
    Понедельник, 05.02.2018, 16:01 | Сообщение # 320
    Статус:
    Опытный:
    Сообщений: 1722
    Награды: 10
    Регистрация: 26.10.2016

    alanbrose, нет нужно прописать нпс профиль в папке гейплей, и спавн секшен в папке креатерс ещё.
      Злобная реклама
    Понедельник, 05.02.2018, 16:01
    Статус:
    Сообщений: 666
    Регистрация: 26.10.2016
    Монако  Lory
    Вторник, 06.02.2018, 03:01 | Сообщение # 321
    Статус:
    Отмычка:
    Сообщений: 102
    Награды: 0
    Регистрация: 24.09.2017

    Цитата _S_k_i_F_ ()
    Перемести файл squad_shram.ltx из configs/scripts/laba_x1/smart в configs/scripts/laba_x1

    Ничего не меняется, особенно интересно, что когда я меняю название в патч_волк и патч_лук с guard_3_walk и guard 3_look, на guard_2_walk и guard_2_look, то все аккуратно расположены по точкам, где в сдк поставлены вейпоинты, но все равно вместо Шрама стоит обычный нпс. И я починил ту проблему, когда нпс появлялись не в точках вейпоинтов, а далеко от них, а потом уже становились на точках - проблема была в том, что они спавнились на месте, где я поставил смарт_террейн и графпоинты, а смарт переместить именно в вейпоинты, это нереально. Как решить трабл этот?
      Злобная реклама
    Вторник, 06.02.2018, 03:01
    Статус:
    Сообщений: 666
    Регистрация: 24.09.2017
    Соединенные Штаты  Joni_009
    Вторник, 06.02.2018, 15:20 | Сообщение # 322
    Статус:
    Бывалый:
    Сообщений: 1008
    Награды: 14
    Регистрация: 25.05.2014

    Всем привет! Как отключить прожектора утром, а ночью чтобы наоборот включались?
      Злобная реклама
    Вторник, 06.02.2018, 15:20
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2014
    Украина  _S_k_i_F_
    Вторник, 06.02.2018, 16:51 | Сообщение # 323
    Золотой Обоз
    Статус:
    Опытный:
    Сообщений: 1311
    Награды: 9
    Регистрация: 09.08.2015

    Lory, ну понятно - там в чем фишка - нумерация должна с 1 начинаться и быть последовательной.
    Joni_009, назначь прожектору стори айди, и потом управляй из логики рестриктора:
    Код
    [logic]
    active = sr_idle@night

    [sr_idle@night]
    on _info = {=is_day} sr_idle@day %=turn_off(projector_id)%

    [sr_idle@day]
    on _info = {!is_day} sr_idle@night %=turn_on(projector_id)%
      Злобная реклама
    Вторник, 06.02.2018, 16:51
    Статус:
    Сообщений: 666
    Регистрация: 09.08.2015
    Российская Федерация  denis2000
    Вторник, 06.02.2018, 16:58 | Сообщение # 324
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Joni_009, В xr_effects.script функции включения и выключения:
    Код
    function turn_off_bar_lamps(actor, npc)
        local lamps_table = {
           ["bar_lights_fonar_1"] = true,
           ["bar_lights_fonar_2"] = true,
           ["bar_lights_fonar_3"] = true,
           ["bar_lights_fonar_4"] = true,
           ["bar_lights_fonar_5"] = true,
           ["bar_lights_fonar_6"] = true,
           ["bar_lights_fonar_7"] = true,
           ["bar_lights_fonar_8"] = true,
           ["bar_lights_fonar_9"] = true,
          }
        local obj
        for k,v in pairs(lamps_table) do
      obj = get_story_object(k)

      if obj then
       obj:get_hanging_lamp():turn_off()
      else
       --
      end
        end
    end

    function turn_on_bar_lamps(actor, npc)
        local lamps_table = {
           ["bar_lights_fonar_1"] = true,
           ["bar_lights_fonar_2"] = true,
           ["bar_lights_fonar_3"] = true,
           ["bar_lights_fonar_4"] = true,
           ["bar_lights_fonar_5"] = true,
           ["bar_lights_fonar_6"] = true,
           ["bar_lights_fonar_7"] = true,
           ["bar_lights_fonar_8"] = true,
           ["bar_lights_fonar_9"] = true,
          }
        local obj
        for k,v in pairs(lamps_table) do
      obj = get_story_object(k)

      if obj then
       obj:get_hanging_lamp():turn_on()
      else
       --
      end
        end
    end
    Сообщение отредактировал denis2000 - Вторник, 06.02.2018, 17:00
      Злобная реклама
    Вторник, 06.02.2018, 16:58
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Монако  Lory
    Вторник, 06.02.2018, 18:44 | Сообщение # 325
    Статус:
    Отмычка:
    Сообщений: 102
    Награды: 0
    Регистрация: 24.09.2017

    Цитата _S_k_i_F_ ()
    ну понятно - там в чем фишка - нумерация должна с 1 начинаться и быть последовательной.

    Я в моддинге ещё зелёный совсем, хотелось бы всё поподробнее
      Злобная реклама
    Вторник, 06.02.2018, 18:44
    Статус:
    Сообщений: 666
    Регистрация: 24.09.2017
    Российская Федерация  svo6o9a
    Вторник, 06.02.2018, 20:50 | Сообщение # 326
    Статус:
    Новичок:
    Сообщений: 236
    Награды: 2
    Регистрация: 19.11.2017

    Ошибка при compile\bild
    ERROR: Validation failed. Invalid scene.
    Сообщение отредактировал svo6o9a - Вторник, 06.02.2018, 20:51
      Злобная реклама
    Вторник, 06.02.2018, 20:50
    Статус:
    Сообщений: 666
    Регистрация: 19.11.2017
    Российская Федерация  atanda
    Вторник, 06.02.2018, 21:09 | Сообщение # 327
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    denis2000, есть более эргономичная реализация:
    Код

    action(obj, object(object.turn_off), cond(cond.time_end))

    obj - объект, на который ставим действие.
    object(object.turn_off) - действие. Объект класса object, что сделать в данный момент с объектом. Если быть более точным, то записывает в некое хранилище, откуда впоследствии выполнит. Также существуют ещё и класса look, move и, возможно, ещё. Я с этим не до конца разобрался. Пока понял, что класс действия преобразует константу, в данном случае turn_off, во что-то ещё. Или просто все эти классы действий были созданы чтобы иметь некий интерфейс, который будет затем подаваться классу entity_action.
    cond(cond.time_end) - ну... даже описывать надеюсь не надо.. Единственное, что скажу, что это условие при котором действие будет выполняться. Но у меня с этим как-то незаладилось(не все условия срабатывалми, поэтому и пришлось установить для этого объекта несвойственное для него условие окончания времени). Всего в этом классе имеется семь констант-условий, которые потом подаются конструктору этого класса. Это соответственно условие окончания анимации, движения, смотра*, времени(???), звука(так и не понял где его можно использовать) и ещё какие-то act_end, object_end - так и не понял за что они отвечают.

    Вообще с этими действиями можно играться - прожектору можно задать путь, на который он будет смотреть, с установкой скорости по х и у. Проверять окончание анимации(может прийти на помощь калбэку animation_end или как его там:) ). путь следования задать, при этом с условием. У меня, спойлерну немножко, так в своём моде несколько схем работает.

    *объекту класса look можно задать скорость, с которой он будет двигать направление взгляда в точку заданную ему, например:
    Код
    action(self.object, look(self.path:point(way_point), 0.3, 0.5), cond(cond.look_end))

    self.path:point(way_point) - выдрал из своей схемы, эта точка в которую будет смотреть объект
    0.3 и 0.5 - скорость движения до этой точки.
    cond(cond.look_end) - условие окончания "смотра", т.е. например дошёл он взглядом до этой точки и всё, условие выполнено.
      Злобная реклама
    Вторник, 06.02.2018, 21:09
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Российская Федерация  denis2000
    Вторник, 06.02.2018, 21:10 | Сообщение # 328
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    svo6o9a, Чуть выше по логу конкретная причина.
      Злобная реклама
    Вторник, 06.02.2018, 21:10
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Российская Федерация  svo6o9a
    Вторник, 06.02.2018, 21:12 | Сообщение # 329
    Статус:
    Новичок:
    Сообщений: 236
    Награды: 2
    Регистрация: 19.11.2017

    Вот что то
    Прикрепления: 1600467.png (102.5 Kb)
      Злобная реклама
    Вторник, 06.02.2018, 21:12
    Статус:
    Сообщений: 666
    Регистрация: 19.11.2017
    Российская Федерация  atanda
    Вторник, 06.02.2018, 21:17 | Сообщение # 330
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    del
    Сообщение отредактировал buffy - Вторник, 06.02.2018, 21:38
      Злобная реклама
    Вторник, 06.02.2018, 21:17
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Поиск: