Случайная подборка модов
Anomaly 1.5. Beta 3.0
4.5
Игра Душ: Эксельсиор
4.4
Old Episodes. Episode 2. War of Zone.
3.1
Время Перемен 2.5
4.0
Под прикрытием смерти. Клондайк 2.0
4.0
Радиоактивное мясо. Схватка
3.0
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Модератор форума: 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
    Российская Федерация  atanda
    Понедельник, 01.01.2018, 20:46 | Сообщение # 31
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    denis2000, уже разобрался) просто при спавне костра в сдк оказалось, что визуальная часть костра это статическая геометрия(статический объект, а не спавн элемент), а перекомпиливать весь уровень из-за одного костра для моего железа не вариант.
      Злобная реклама
    Понедельник, 01.01.2018, 20:46
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Российская Федерация  Overfirst
    Понедельник, 01.01.2018, 20:48 | Сообщение # 32
    Статус:
    Бывалый:
    Сообщений: 1081
    Награды: 19
    Регистрация: 11.06.2015

    buffy, можно что угодно комбинировать.
      Злобная реклама
    Понедельник, 01.01.2018, 20:48
    Статус:
    Сообщений: 666
    Регистрация: 11.06.2015
    Российская Федерация  R_Gamer_
    Понедельник, 01.01.2018, 20:54 | Сообщение # 33
    Статус:
    Гость:
    Сообщений: 56
    Награды: 3
    Регистрация: 08.10.2015

    Добрый день, столкнулся с очень странной проблемой. Попытался сделать динамический объект с анимацией. Пользуюсь плагинами от den stash'a. Модель экспортировал, настроил. Без анимации (motion) в сдк всё работает. Но после того как добавляю, мне вылетает ошибка (Line: 235) при попытке поставить её в левел-эдиторе или включить от вида "engine". Вот фото. Я не знаю, может я как-то неправильно экспортирую motion? (выделяю кости)

    Вопрос снят, нужно было в актор-эдиторе нажать кнопочку "bone parts", затем "reset to default".
    Сообщение отредактировал R_Gamer_ - Понедельник, 01.01.2018, 21:54
      Злобная реклама
    Понедельник, 01.01.2018, 20:54
    Статус:
    Сообщений: 666
    Регистрация: 08.10.2015
    Российская Федерация  atanda
    Понедельник, 01.01.2018, 20:54 | Сообщение # 34
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    BoBaH_671, угу, только сейчас в голову что-то шибануло и начал это понимать 10
    Сообщение отредактировал buffy - Понедельник, 01.01.2018, 20:59
      Злобная реклама
    Понедельник, 01.01.2018, 20:54
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Российская Федерация  yobakun
    Понедельник, 01.01.2018, 22:43 | Сообщение # 35
    Статус:
    Новичок:
    Сообщений: 270
    Награды: 5
    Регистрация: 30.07.2016

    В коке есть вот такой коллбэк
    Код
    -- called when an inventory item is eaten/used
    -- returning false will prevent the item from being used
    function CInventory__eat(npc,item)
        local return_flag = true
        SendScriptCallback("on_before_item_use",npc,item,return_flag)
        return return_flag
    end

    По идее чтобы с ним работать нужно сделать что-то вроде этого:
    Код
    --если игрок пытается использовать аптечку, то ничего не происходит
    function on_before_item_use(npc,item,return_flag)
    if item:section() == "medkit" then
    return_flag = false
    end
    end

    Но не работает. Может это как-то по другому делается?
      Злобная реклама
    Понедельник, 01.01.2018, 22:43
    Статус:
    Сообщений: 666
    Регистрация: 30.07.2016
    Российская Федерация  atanda
    Вторник, 02.01.2018, 11:15 | Сообщение # 36
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    yobakun, английским же языком написано
    Цитата yobakun ()
    returning false will prevent the item from being used

    т.е. если CInventory__eat возвращает значение false, то предмет не будет юзаться.
    А сама функция, смелю предположить, вызывается из движка.
    Сообщение отредактировал buffy - Вторник, 02.01.2018, 11:16
      Злобная реклама
    Вторник, 02.01.2018, 11:15
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Российская Федерация  sinaps
    Вторник, 02.01.2018, 11:51 | Сообщение # 37
    Статус:
    Ветеран:
    Сообщений: 4757
    Награды: 4
    Регистрация: 02.04.2016

    Цитата denis2000 ()
    объект на базе lights_hanging_lamp

    Ему class = SO_HLAMP присваивать? Где можно посмотреть пример конфигурационного файла такого предмета?
      Злобная реклама
    Вторник, 02.01.2018, 11:51
    Статус:
    Сообщений: 666
    Регистрация: 02.04.2016
    Российская Федерация  makdm
    Вторник, 02.01.2018, 13:02 | Сообщение # 38
    Время Альянса
    Статус:
    Опытный:
    Сообщений: 1787
    Награды: 19
    Регистрация: 22.11.2012

    Цитата sinaps ()
    Где можно посмотреть пример конфигурационного файла такого предмета?

    Распакуйте утилитой ac/dc all.spawn Зова Припяти.
    Все станет наглядно ясно что содержит нет-пакет того либо иного объекта.

    Цитата sinaps ()
    Ему class = SO_HLAMP присваивать?

    В том же ac/dc файл scan.pm содержит все классы объектов в соответствии с их секциями.

    Это вам бесплатный справочник по секциям и классам.
    В вашем случае в файле есть запись:

    'lights_hanging_lamp' => 'SO_HLAMP'
      Злобная реклама
    Вторник, 02.01.2018, 13:02
    Статус:
    Сообщений: 666
    Регистрация: 22.11.2012
    Российская Федерация  sinaps
    Вторник, 02.01.2018, 13:49 | Сообщение # 39
    Статус:
    Ветеран:
    Сообщений: 4757
    Награды: 4
    Регистрация: 02.04.2016

    Цитата makdm ()
    Распакуйте all.spawn

    Ах вот оно где, спасибо, всё увидел.
    Это то есть его только в all.spawn и просто на локации поставить? И в инвентарь ГГ (НПС) положить будет нельзя? :'(
    Цитата makdm ()
    файл scan.pm содержит все классы объектов

    Конфиги тоже содержат. Я в system.ltx посмотрел. wink
      Злобная реклама
    Вторник, 02.01.2018, 13:49
    Статус:
    Сообщений: 666
    Регистрация: 02.04.2016
    Российская Федерация  yobakun
    Вторник, 02.01.2018, 22:51 | Сообщение # 40
    Статус:
    Новичок:
    Сообщений: 270
    Награды: 5
    Регистрация: 30.07.2016

    Цитата buffy ()
    т.е. если CInventory__eat возвращает значение false, то предмет не будет юзаться.

    И как же заставить ее вернуть false? Нужен пример.
    Сообщение отредактировал yobakun - Вторник, 02.01.2018, 22:52
      Злобная реклама
    Вторник, 02.01.2018, 22:51
    Статус:
    Сообщений: 666
    Регистрация: 30.07.2016
    Российская Федерация  atanda
    Вторник, 02.01.2018, 23:04 | Сообщение # 41
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    yobakun, а можно документацию(знаю, что не будет). Так вот, что это за функция? Что она делает? непонятно...
    Цитата yobakun ()
    SendScriptCallback

    Но если предпологать, то твой код и так должен срабатывать.
    ...
    Хотя нет, разве есть предмет чья секция называется
    Цитата yobakun ()
    medkit

    Правильно, нет. Поэтому лучше сделать так:
      Злобная реклама
    Вторник, 02.01.2018, 23:04
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Российская Федерация  yobakun
    Среда, 03.01.2018, 00:15 | Сообщение # 42
    Статус:
    Новичок:
    Сообщений: 270
    Награды: 5
    Регистрация: 30.07.2016

    buffy, сделал так
    Код
    function CInventory__eat(npc,item)
        local return_flag = true
        if string.find(item:section(), "medkit") ~= nil then
    return_flag = false
    end
        SendScriptCallback("on_before_item_use",npc,item,return_flag)
        return return_flag
    end

    Теперь аптечка юзается, но не исчезает. Повторно использовать нельзя.
      Злобная реклама
    Среда, 03.01.2018, 00:15
    Статус:
    Сообщений: 666
    Регистрация: 30.07.2016
    Российская Федерация  svo6o9a
    Среда, 03.01.2018, 10:51 | Сообщение # 43
    Статус:
    Новичок:
    Сообщений: 236
    Награды: 2
    Регистрация: 19.11.2017

    Как заспавнить мертвые тела? Ну допустим как в ТЧ когда монолит лежит уже такой "прогнивший" немного и обыскать нельзя еще
      Злобная реклама
    Среда, 03.01.2018, 10:51
    Статус:
    Сообщений: 666
    Регистрация: 19.11.2017
    Российская Федерация  atanda
    Среда, 03.01.2018, 11:19 | Сообщение # 44
    Статус:
    Бывалый:
    Сообщений: 672
    Награды: 7
    Регистрация: 12.07.2017

    yobakun, а что ты хотел, видимо так всё и задумано в СоС!

    Добавлено (03.01.2018, 11:13)
    ---------------------------------------------
    svo6o9a, если я правильно понимаю вы про статическую геометрию локации? Если вы про это, то никак т.к. это статическая геометрия локации или сделать отдельную модель(динамическую геом. локации) и заспавнить.
    Это?

    Добавлено (03.01.2018, 11:19)
    ---------------------------------------------
    yobakun, и если я правильно понимаю проектировщиков СоС, то выглядеть должно примерно так:

    Сообщение отредактировал buffy - Среда, 03.01.2018, 11:16
      Злобная реклама
    Среда, 03.01.2018, 11:19
    Статус:
    Сообщений: 666
    Регистрация: 12.07.2017
    Российская Федерация  denis2000
    Среда, 03.01.2018, 12:05 | Сообщение # 45
    Время Альянса
    Статус:
    Ветеран:
    Сообщений: 4070
    Награды: 16
    Регистрация: 19.07.2013

    Цитата sinaps ()
    Это то есть его только в all.spawn и просто на локации поставить? И в инвентарь ГГ (НПС) положить будет нельзя?

    Спавниться скриптом прекрасно. Можно но только подменяя объект на носимый (так например сделаны переносные тайники в SGM). А вообще если нужен объект со специфическими свойствами - редактируете движек, не хотите редактировать - используйте существующие классы и скриптовые механизмы.
      Злобная реклама
    Среда, 03.01.2018, 12:05
    Статус:
    Сообщений: 666
    Регистрация: 19.07.2013
    Поиск: