Случайная подборка модов
SZA: The Second Project
3.9
В западне
3.9
Возвращение
3.0
Dead Autumn 2: Другая реальность
4.1
Новое Время
3.2
Call of Misery
4.1
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
Модострой:Вопросница
Российская Федерация  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
    Российская Федерация  MoDoStRoY
    Пятница, 14.12.2012, 17:11 | Сообщение # 1486
    Статус:
    Бывалый:
    Сообщений: 602
    Награды: 4
    Регистрация: 03.04.2012

    Всем привет! Хочу сделать жажду, но для меня работа с переменными как тёмный лес... Помогите понять, что к чему

    Вот код, который будет отвечать за жажду (Warning! Таймеры писать умею, поэтому тут их не буду писать)

    -- Проверяем нужно ли попить. Вызывается каждые 2 игровые минуты
    function need_water()
    amk.save_variable("water",amk.load_variable("water",0)+1)
    amk.g_start_timer("water",0,0,2)
    need_water_degres_health()
    end

    -- Уменьшение здоровья, если долго не пил
    function need_water_degres_health()
    local tmp = amk.load_variable("water",0)
    if tmp > 2 then
    if db.actor.health > 0.15 then
    db.actor.health = - 0.15
    end
    end
    end
    -- Употребление воды
    function water_item(oid, time)
    if alife():object(oid)==nil then
    local tmp = amk.load_variable("kur",0) - time*10
    if tmp < 0 then tmp = 0 end
    amk.save_variable("water", tmp)
    need_water_degres_health()
    end
    end
    Сообщение отредактировал MoDoStRoY - Пятница, 14.12.2012, 17:12
      Злобная реклама
    Пятница, 14.12.2012, 17:11
    Статус:
    Сообщений: 666
    Регистрация: 03.04.2012
    Украина  BozKurt
    Пятница, 14.12.2012, 17:34 | Сообщение # 1487
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    MoDoStRoY, помочь разобраться с чем? Ты хотя бы вопрос задай.
      Злобная реклама
    Пятница, 14.12.2012, 17:34
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  MoDoStRoY
    Пятница, 14.12.2012, 17:42 | Сообщение # 1488
    Статус:
    Бывалый:
    Сообщений: 602
    Награды: 4
    Регистрация: 03.04.2012

    Как сделать в игре жажду, по средствам переменных, хотя если есть другой вариант с радостью выслушаю

    Добавлено (14.12.2012, 17:42)
    ---------------------------------------------
    в награду + в репу

      Злобная реклама
    Пятница, 14.12.2012, 17:42
    Статус:
    Сообщений: 666
    Регистрация: 03.04.2012
    Украина  BozKurt
    Пятница, 14.12.2012, 17:57 | Сообщение # 1489
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    MoDoStRoY, по средствам переменных? Никак! Нужны еще как минимум штатные функции.
    Ты не очень правильно себя позиционируешь, задавая далеко не конкретный вопрос и по сути ожидая готовый ответ. Магу подсказать алгоритм:
    Есть предмет - бутылка воды.
    Периодически проверяется время последнего приёма воды, если оно больше какого-то - начинают действовать какие-то последствия (уменьшение выносливости, уменьшение сытости или ещё чего). При этом запоминается время, для периодической проверки. Когда выпиваем воды, время сбрасывается, как и последствия. Логично, что это должно "висеть" на биндере актора или твоего собственного.
    Вот несколько абстрактно, но в то же время вполне достаточно.
    P.S. Кстати, код у тебя уже есть...
    Сообщение отредактировал ColR_iT - Пятница, 14.12.2012, 17:58
      Злобная реклама
    Пятница, 14.12.2012, 17:57
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  CRAZY_stalkER6665
    Пятница, 14.12.2012, 19:19 | Сообщение # 1490
    Статус:
    Новичок:
    Сообщений: 268
    Награды: 0
    Регистрация: 01.07.2012

    Столкнулся со странным вылетом.

    FATAL ERROR

    [error]Expression : fatal error
    [error]Function : CInifile::r_string
    [error]File : E:\stalker\patch_1_0004\xrCore\Xr_ini.cpp
    [error]Line : 352
    [error]Description : <no expression>
    [error]Arguments : Can't find variable 07:00:00 in [sect_radar]

    Вышло при переходе на радар. Смысл примерно таков - нету переменной 07:00:00 в секторе радар. Может это из-за погоды???

    Добавлено (14.12.2012, 19:16)
    ---------------------------------------------
    Точно нашел такую тему в погодных файлах. И что сделать?

    Добавлено (14.12.2012, 19:19)
    ---------------------------------------------
    О исправил вылет. Просто переименовал фаил погоды на янтаре. Хехе интересная вещь этот сталкер)))

      Злобная реклама
    Пятница, 14.12.2012, 19:19
    Статус:
    Сообщений: 666
    Регистрация: 01.07.2012
    Российская Федерация  Advisor890
    Пятница, 14.12.2012, 19:39 | Сообщение # 1491
    Статус:
    Отмычка:
    Сообщений: 115
    Награды: 1
    Регистрация: 07.07.2012

    Такой вопрос: Как сделать что бы НПС после определенного диалога шел в указанное место?
      Злобная реклама
    Пятница, 14.12.2012, 19:39
    Статус:
    Сообщений: 666
    Регистрация: 07.07.2012
    Российская Федерация  DarkFace
    Пятница, 14.12.2012, 20:27 | Сообщение # 1492
    Let it be
    Статус:
    Бывалый:
    Сообщений: 1169
    Награды: 2
    Регистрация: 26.03.2012

    Понимаю, всех это достало, но не дадите логику что бы НПС стоял на месте?))
      Злобная реклама
    Пятница, 14.12.2012, 20:27
    Статус:
    Сообщений: 666
    Регистрация: 26.03.2012
    Российская Федерация  Advisor890
    Пятница, 14.12.2012, 20:30 | Сообщение # 1493
    Статус:
    Отмычка:
    Сообщений: 115
    Награды: 1
    Регистрация: 07.07.2012

    DarkFace,

    [logic]
    active = remark1
    danger = danger_ignore

    [danger_ignore]
    ignore_distance = 5

    [remark1]
    no_move = true

    [smart_terrains]
    none = true
      Злобная реклама
    Пятница, 14.12.2012, 20:30
    Статус:
    Сообщений: 666
    Регистрация: 07.07.2012
    Украина  BozKurt
    Пятница, 14.12.2012, 20:32 | Сообщение # 1494
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    DarkFace, если хочешь, чтобы НПС всегда стоял на одном месте, то совет Advisor890 не подходит.


    Advisor890, написал не обдумано, а главное не зная что именно.
      Злобная реклама
    Пятница, 14.12.2012, 20:32
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  Advisor890
    Пятница, 14.12.2012, 20:34 | Сообщение # 1495
    Статус:
    Отмычка:
    Сообщений: 115
    Награды: 1
    Регистрация: 07.07.2012

    ColR_iT,

    Ну тогда я не знаю, я так всегда делал.
      Злобная реклама
    Пятница, 14.12.2012, 20:34
    Статус:
    Сообщений: 666
    Регистрация: 07.07.2012
    Российская Федерация  DarkFace
    Пятница, 14.12.2012, 20:46 | Сообщение # 1496
    Let it be
    Статус:
    Бывалый:
    Сообщений: 1169
    Награды: 2
    Регистрация: 26.03.2012

    ColR_iT, а тогда что? надо что бы он тупо стоял, и не на что не отвлекался
      Злобная реклама
    Пятница, 14.12.2012, 20:46
    Статус:
    Сообщений: 666
    Регистрация: 26.03.2012
    Украина  BozKurt
    Пятница, 14.12.2012, 21:07 | Сообщение # 1497
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    Advisor890, мне жаль.


    DarkFace, правильнее всего будет использовать схему walker и использовать оверрайд игнорирования боя и игрока.
      Злобная реклама
    Пятница, 14.12.2012, 21:07
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  chuvak1121
    Пятница, 14.12.2012, 21:16 | Сообщение # 1498
    Статус:
    Отмычка:
    Сообщений: 147
    Награды: 2
    Регистрация: 03.06.2011

    Народ что не так,почему вылет?
    Expression : !m_error_code
    Function : raii_guard::~raii_guard
    File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
    Line : 748
    Description : ...l.k.e.r. - Зов Припяти\gamedata\scripts\utils.script:469: bad argument #1 to 'gsub' (string expected, got nil)

    В заранее спасибо!
      Злобная реклама
    Пятница, 14.12.2012, 21:16
    Статус:
    Сообщений: 666
    Регистрация: 03.06.2011
    Украина  BozKurt
    Пятница, 14.12.2012, 21:22 | Сообщение # 1499
    Статус:
    Опытный:
    Сообщений: 1753
    Награды: 3
    Регистрация: 25.05.2012

    chuvak1121, не может "активироваться" какая-то из схем логики, если быть точным, то не указана схема, на которую нужно переходить.
    Вероятно, где-то не правильно составил логику, если составлял. Ведь, при каких обстоятельствах произошёл вылет, ты не удосужился сказать...
      Злобная реклама
    Пятница, 14.12.2012, 21:22
    Статус:
    Сообщений: 666
    Регистрация: 25.05.2012
    Российская Федерация  chuvak1121
    Пятница, 14.12.2012, 21:51 | Сообщение # 1500
    Статус:
    Отмычка:
    Сообщений: 147
    Награды: 2
    Регистрация: 03.06.2011

    ColR_iT,
    Давай в ЛС.
    Сообщение отредактировал chuvak1121 - Пятница, 14.12.2012, 22:17
      Злобная реклама
    Пятница, 14.12.2012, 21:51
    Статус:
    Сообщений: 666
    Регистрация: 03.06.2011
    Поиск: