Случайная подборка модов
Зона поражения 2: Ответный удар
4.1
Зимний путь
3.4
Зимний Снайпер
3.8
STCoP Weapon Pack 3.3
4.4
Объединенный Пак 2.1
3.1
Время перемен v3.0
3.6
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
⚙ Модострой: Вопросница
Российская Федерация  Wolfstalker
Среда, 24.02.2016, 00:25 | Сообщение # 1
Статус:
Легенда:
Сообщений: 2258
Награды: 15
Регистрация: 05.04.2010

В данной теме вы можете задавать любые вопросы касательно S.T.A.L.K.E.R. моддинга


• Не флудить
• Предварительно просматривайте раздел, ведь ответ на ваш вопрос может быть там
• В своем вопросе указывайте платформу моддинга — Тень Чернобыля, Чистое небо или Зов Припяти




F.A.Q

  Злобная реклама
Среда, 24.02.2016, 00:25
Статус:
Сообщений: 666
Регистрация: 05.04.2010
Российская Федерация  Krt0ki
Суббота, 12.11.2016, 18:51 | Сообщение # 4546
Статус:
Опытный:
Сообщений: 1258
Награды: 7
Регистрация: 19.04.2015

DamonOZER, так же - ищешь нужное число и смотришь контекст - если подходит по смыслу то меняешь.
  Злобная реклама
Суббота, 12.11.2016, 18:51
Статус:
Сообщений: 666
Регистрация: 19.04.2015
Российская Федерация  ins33
Суббота, 12.11.2016, 22:26 | Сообщение # 4547
Dream Reader Mod
Статус:
Опытный:
Сообщений: 2269
Награды: 1
Регистрация: 17.01.2012

Спрошу ещё раз, может, что подскажите.

Собрал спавн в СДК, побегал, по первым 2-ум локам, всё работает.
Подключаю m_timer c se_stor, и при загрузке ловлю вылет по магазинному питанию:
Код
[error]Expression    : fatal error
[error]Function      : CScriptEngine::lua_error
[error]File          : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp
[error]Line          : 73
[error]Description   : <no expression>
[error]Arguments     : LUA error: ....t.a.l.k.e.r\gamedata\scripts\kirag_take_drop.script:35: attempt to index field 'actor' (a nil value)


Код
35   if db.actor:is_talking() then -- получение предмета в диалоге или при торговле
Возвращаю старый спавн, модули работают. В итоге, спавн с модулями работают друг без друга на ура, а вместе, не хотят.
Мне думается, это косяк в спавне, но, как его найти ума не приложу.
Спасайте.
Сообщение отредактировал ins33 - Воскресенье, 13.11.2016, 00:15
  Злобная реклама
Суббота, 12.11.2016, 22:26
Статус:
Сообщений: 666
Регистрация: 17.01.2012
Украина  _S_k_i_F_
Воскресенье, 13.11.2016, 11:03 | Сообщение # 4548
Золотой Обоз
Статус:
Опытный:
Сообщений: 1311
Награды: 9
Регистрация: 09.08.2015

Такой вопрос: как-то можно в ЗП скриптово загрузить последний сейв? Зараннее спасибо!
  Злобная реклама
Воскресенье, 13.11.2016, 11:03
Статус:
Сообщений: 666
Регистрация: 09.08.2015
Российская Федерация  Overfirst
Воскресенье, 13.11.2016, 11:08 | Сообщение # 4549
Статус:
Бывалый:
Сообщений: 1081
Награды: 19
Регистрация: 11.06.2015

_S_k_i_F_, можно:
Код
get_console():execute("load_last_save")

Будет работать только при загруженном сейве.
  Злобная реклама
Воскресенье, 13.11.2016, 11:08
Статус:
Сообщений: 666
Регистрация: 11.06.2015
Российская Федерация  denis2000
Воскресенье, 13.11.2016, 15:27 | Сообщение # 4550
Время Альянса
Статус:
Ветеран:
Сообщений: 4070
Награды: 16
Регистрация: 19.07.2013

Цитата ins33 ()
Мне думается, это косяк в спавне, но, как его найти ума не приложу.

Косяк не в спавне, косяк в скриптах которые пытаются использовать db.actor даже не проверяя, что его еще нет.
Сообщение отредактировал denis2000 - Воскресенье, 13.11.2016, 15:28
  Злобная реклама
Воскресенье, 13.11.2016, 15:27
Статус:
Сообщений: 666
Регистрация: 19.07.2013
Российская Федерация  ins33
Воскресенье, 13.11.2016, 15:59 | Сообщение # 4551
Dream Reader Mod
Статус:
Опытный:
Сообщений: 2269
Награды: 1
Регистрация: 17.01.2012

denis2000, Да делал я проверку на его наличие, и
Код
if db.actor then
потом
Код
if device().precache_frame >1 then
Лог меняется, ругается опять же на актора в mob_alife_mgr.script затем на mob_home.script. После всех проверок наличая актора, вылетает с логом на _g.script exit()
Полный лог, чуть позже добавлю.

Подскажите, есть ли возможность скриптом проверить работоспособность графпоинтов на всех уровнях не заходя на них?
  Злобная реклама
Воскресенье, 13.11.2016, 15:59
Статус:
Сообщений: 666
Регистрация: 17.01.2012
Российская Федерация  denis2000
Воскресенье, 13.11.2016, 16:53 | Сообщение # 4552
Время Альянса
Статус:
Ветеран:
Сообщений: 4070
Награды: 16
Регистрация: 19.07.2013

Цитата ins33 ()
Да делал я проверку на его наличие

Цитата ins33 ()
ругается опять же на актора в mob_alife_mgr.script затем на mob_home.script

Понятно, значит спавн... Найдете причину обязательно сообщите.

Пробуйте зайти на все локации, возможно найдете кривую.
Сообщение отредактировал denis2000 - Воскресенье, 13.11.2016, 16:56
  Злобная реклама
Воскресенье, 13.11.2016, 16:53
Статус:
Сообщений: 666
Регистрация: 19.07.2013
Российская Федерация  ins33
Воскресенье, 13.11.2016, 17:11 | Сообщение # 4553
Dream Reader Mod
Статус:
Опытный:
Сообщений: 2269
Награды: 1
Регистрация: 17.01.2012

denis2000, Одну локу уже нашёл:
Код
Expression    : header().graph_guid() == ai().game_graph().header().guid()
Function      : CALifeSpawnRegistry::load
File          : E:\stalker\sources\trunk\xr_3da\xrGame\alife_spawn_registry.cpp
Line          : 167
Description   : Spawn doesn't correspond to the graph : REBUILD SPAWN!
Это подземелье Агропрома 2. В комментариях графпоинтов была указана другая лока labx8 вместо cs_agroprom_underground. Причина косяка мне известна... По середине склейки графоф, я изменил конфиги, game_graphs.ltx, game_levels.ltx и game_maps_single.ltx, упорядочив локи. Потом сделал исправления, но судя по всему не всех лок. К сожалению, это не единственная лока, по этому выше и спросил:
Подскажите, есть ли возможность скриптом проверить работоспособность\валидность графпоинтов на всех уровнях не заходя на них?

Подскажите, какие файлы нужны для
Код
@bins\compiler_ai_SOC\xrai -m
@bins\compiler_ai_SOC\xrai -no_separator_check -noverbose -s
И если я добавил спавн элемент на локацию, то надо ли собирать граф? Или достаточно сделать
Код
@bins\compiler_ai_SOC\xrai -no_separator_check -noverbose -s
Сообщение отредактировал ins33 - Воскресенье, 13.11.2016, 19:08
  Злобная реклама
Воскресенье, 13.11.2016, 17:11
Статус:
Сообщений: 666
Регистрация: 17.01.2012
Российская Федерация  Reunited_
Воскресенье, 13.11.2016, 17:53 | Сообщение # 4554
Статус:
Гость:
Сообщений: 32
Награды: 0
Регистрация: 31.10.2014

Кто может помочь по адаптированию оружия из OGR в SGM 2.2? Напишите в лс.
  Злобная реклама
Воскресенье, 13.11.2016, 17:53
Статус:
Сообщений: 666
Регистрация: 31.10.2014
Украина  _S_k_i_F_
Воскресенье, 13.11.2016, 19:39 | Сообщение # 4555
Золотой Обоз
Статус:
Опытный:
Сообщений: 1311
Награды: 9
Регистрация: 09.08.2015

Такой вопрос: отчего может тормозить логика НПС? Вот есть переход логики
Код
on_info = {+info} walker@get_out

Но после получения поршня НПС переходит в другую секцию логики только через несколько секунд. Вроде некритично - но в случаях катсцен эти несколько секунд очень портят весь вид. Есть ли какое-то решение? Зараннее спасибо!
  Злобная реклама
Воскресенье, 13.11.2016, 19:39
Статус:
Сообщений: 666
Регистрация: 09.08.2015
Российская Федерация  Overfirst
Воскресенье, 13.11.2016, 19:43 | Сообщение # 4556
Статус:
Бывалый:
Сообщений: 1081
Награды: 19
Регистрация: 11.06.2015

_S_k_i_F_, пожалуйста:
Код
function stop_animation(actor, npc,p)
local state_mgr = db.storage[npc:id()].state_mgr
    if state_mgr == nil then return end

    local planner = npc:motivation_action_manager()

    state_mgr.animation:set_state(nil, true)
    state_mgr.animation:set_state() --set_control()
    state_mgr.animstate:set_state(nil, true)
    state_mgr.animstate:set_state() --set_control()

    state_mgr:set_state("idle", nil, nil, nil, {fast_set = true})

    state_mgr:update()
    state_mgr:update()
    state_mgr:update()
    state_mgr:update()
    state_mgr:update()
    state_mgr:update()
    state_mgr:update()

    npc:set_body_state(move.standing)
    npc:set_mental_state(anim.free)
end

Код
on_info = {+info} walker@get_out %=stop_animation%

Я юзаю сам. Очень удобная штука.
  Злобная реклама
Воскресенье, 13.11.2016, 19:43
Статус:
Сообщений: 666
Регистрация: 11.06.2015
Соединенные Штаты  Joni_009
Понедельник, 14.11.2016, 01:17 | Сообщение # 4557
Статус:
Бывалый:
Сообщений: 1008
Награды: 14
Регистрация: 25.05.2014

Всем привет! Возможно ли сделать так, чтобы во время дождя костер не горел, платформа ЗП.
  Злобная реклама
Понедельник, 14.11.2016, 01:17
Статус:
Сообщений: 666
Регистрация: 25.05.2014
Российская Федерация  castle
Понедельник, 14.11.2016, 01:43 | Сообщение # 4558
Статус:
Новичок:
Сообщений: 262
Награды: 2
Регистрация: 11.01.2014

Joni_009, Попробуйте

Код
    local wm = level_weathers.get_weather_manager()
    if wm.current_state == "rain" then
  if self.campfire:is_on() then
    self.campfire:turn_off()

  end
    end


Прописать в function campfire_binder:update(delta)

Еще, чтобы не было конфликта думаю добавить проверку на погоду в smart_terrain.script

Вместо этого


Сделать:


Или лучше заменить проверку погоды на такую?

db.actor ~= nil and level.rain_factor() > 0
Сообщение отредактировал castle - Понедельник, 14.11.2016, 05:44
  Злобная реклама
Понедельник, 14.11.2016, 01:43
Статус:
Сообщений: 666
Регистрация: 11.01.2014
Украина  _S_k_i_F_
Понедельник, 14.11.2016, 20:26 | Сообщение # 4559
Золотой Обоз
Статус:
Опытный:
Сообщений: 1311
Награды: 9
Регистрация: 09.08.2015

Такая проблема: в ГУИ на нажатие кнопки есть такая функция
Код
function ui_razblok_pda:OnButton_unlock_clicked()
local timer = time_global()
for i=1,100 do
    if (time_global()-timer<1000) then
  self.percent:SetText(i.." %")
    end
    if i=100 then
  if (not has_alife_info("jup_pr_killer_lokot_squad_death")) and (not has_alife_info("jup_pr_gotlib_pda_unlock")) then
   give_info("jup_pr_gotlib_pda_unlock")
   xr_effects.podmena(nil, nil, {"jup_pr_gotlib_pda","jup_pr_gotlib_pda_unlock"})
  end    
  if (has_alife_info("jup_pr_killer_lokot_squad_death")) and (not has_alife_info("jup_pr_lokot_pda_unlock")) then
   give_info("jup_pr_lokot_pda_unlock")
   xr_effects.podmena(nil, nil, {"jup_pr_lokot_pda","jup_pr_lokot_pda_unlock"})
  end    
  self.button_close:Enable(true)
    end    
end
end

Но при запуске ГУИ вылетает. Проверил в синтакс чекере - проблема в строке
Код
if i=100 then

Пишет - что перед = нужно then Но почему? Зараннее спасибо!
  Злобная реклама
Понедельник, 14.11.2016, 20:26
Статус:
Сообщений: 666
Регистрация: 09.08.2015
Российская Федерация  ins33
Понедельник, 14.11.2016, 20:41 | Сообщение # 4560
Dream Reader Mod
Статус:
Опытный:
Сообщений: 2269
Награды: 1
Регистрация: 17.01.2012

  Злобная реклама
Понедельник, 14.11.2016, 20:41
Статус:
Сообщений: 666
Регистрация: 17.01.2012
Поиск: