Случайная подборка модов
Хроники Кайдана. Вторая серия
4.0
Путь Бандита
2.0
Альтернатива 1.2
3.0
G.L.A.D.I.A.T.O.R. II Время Альянса
3.4
Priboi story
4.1
STCoP Weapon Pack 3.3
4.4
Последние обновленные темы Прямой эфир Самые популярные темы Последние новости
Архив - только для чтения
⚙ Модострой: Вопросница
Российская Федерация  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
Российская Федерация  STALKER_Game
Вторник, 26.09.2017, 17:23 | Сообщение # 8101
Статус:
Отмычка:
Сообщений: 84
Награды: 6
Регистрация: 16.02.2016

Как полностью отключить респавн(обновление популяции) NPC и мутантов?
Платформа: сталкер ТЧ 1.0006
  Злобная реклама
Вторник, 26.09.2017, 17:23
Статус:
Сообщений: 666
Регистрация: 16.02.2016
Российская Федерация  makdm
Вторник, 26.09.2017, 17:40 | Сообщение # 8102
Время Альянса
Статус:
Опытный:
Сообщений: 1787
Награды: 19
Регистрация: 22.11.2012

Цитата _S_k_i_F_ ()
Такая проблема: написал функцию для замены визуала НПС

Методы движка работают корректно при переходе НПС из OFFLINE в ONLINE
Прописываются в скриптах в методах net_spawn(sobject)

Поэтому я делал по другому:
НПС "ждал", когда ГГ "отвернется". Тогда быстрый перевод НПС в offline и возврат в online с заиеной визуала и группировки.

З.Ы. И не забывайте, что движковый метод set_visual_name "писался" разрабами под кат-сцены с ГГ. Поэтому такая смена визуала у НПС автоматом включает его бессмертие.
Сообщение отредактировал makdm - Вторник, 26.09.2017, 18:21
  Злобная реклама
Вторник, 26.09.2017, 17:40
Статус:
Сообщений: 666
Регистрация: 22.11.2012
Украина  _S_k_i_F_
Вторник, 26.09.2017, 19:04 | Сообщение # 8103
Золотой Обоз
Статус:
Опытный:
Сообщений: 1311
Награды: 9
Регистрация: 09.08.2015

makdm, сделал с переводом в он/офф-лайн, вылетает без лога stack trace:
Код
function wf_a3_set_npc_zombied(actor, npc, p)
local visual = npc:get_visual_name()
alife():set_switch_offline(npc.id, true)
alife():set_switch_online(npc.id, false)
npc:set_character_community("zombied", 0, 0)
npc:set_visual_name(tostring(visual.."_zombied"))
alife():set_switch_online(npc.id, true)
alife():set_switch_offline(npc.id, false)
end

Если написать так, то не вылетает, но и не переводит в он/офф-лайн
Код
function wf_a3_set_npc_zombied(actor, npc, p)
local visual = npc:get_visual_name()
alife():set_switch_offline(npc:id(), true)
alife():set_switch_online(npc:id(), false)
npc:set_character_community("zombied", 0, 0)
npc:set_visual_name(tostring(visual.."_zombied"))
alife():set_switch_online(npc:id(), true)
alife():set_switch_offline(npc:id(), false)
end
Сообщение отредактировал _S_k_i_F_ - Вторник, 26.09.2017, 19:16
  Злобная реклама
Вторник, 26.09.2017, 19:04
Статус:
Сообщений: 666
Регистрация: 09.08.2015
Российская Федерация  xr_Sanya
Вторник, 26.09.2017, 21:52 | Сообщение # 8104
Статус:
Бывалый:
Сообщений: 876
Награды: 4
Регистрация: 19.08.2015

ЗП. Можно ли както получить информацию о деньгах НПС в ОФФЛАЙНЕ? Насколько я знаю инфа о деньгах НПС запакована в net packet, МБ есть способ получения денег нпс без нет пакета?
Сообщение отредактировал xr_Sanya - Вторник, 26.09.2017, 21:52
  Злобная реклама
Вторник, 26.09.2017, 21:52
Статус:
Сообщений: 666
Регистрация: 19.08.2015
Российская Федерация  makdm
Среда, 27.09.2017, 14:02 | Сообщение # 8105
Время Альянса
Статус:
Опытный:
Сообщений: 1787
Награды: 19
Регистрация: 22.11.2012

Цитата _S_k_i_F_ ()
сделал с переводом в он/офф-лайн, вылетает без лога stack trace:

_S_k_i_F_, немного не так.
Вот так пишите в xr_effects.script:



А в xr_motivator.script в метод motivator_binder:net_spawn(sobject) пишите:



Еще раз говорю, что метод set_visual_name написан для кат-сцен. Там ведь как, проспавнили чувака, поменяли его визуал на визуал ГГ, отыграли сцену и удалили чувака.
Поэтому метод меняет только UPDATE часть нет-пакета. После сейв\лоад у чувака будет старый визуал.
Для изменения визуала "навсегда" нужен другой подход : перевод НПС в оффлайн, перепаковка STATE части нет-пакета, возврат НПС в онлайн.
Но... это совсем другие скрипты.

Добавлено (27.09.2017, 14:02)
---------------------------------------------
Цитата xr_Sanya ()
МБ есть способ получения денег нпс без нет пакета?

xr_Sanya, Нет такого способа.
А вас что, смущает нет-пакет?
Не нужно его бояться. Нужно просто приложить усилие и разобраться в нем.
Получение денег у НПС по его story_id:
Где-то в каком-то скрипте получаем количество денег у НПС со story_id = stalker_has_story_id :

local money = get_money_by_story_id("stalker_has_story_id ")

В _G.script пишем функцию:



Вот и всех делов - то.
Сообщение отредактировал makdm - Среда, 27.09.2017, 14:04
  Злобная реклама
Среда, 27.09.2017, 14:02
Статус:
Сообщений: 666
Регистрация: 22.11.2012
Российская Федерация  atanda
Среда, 27.09.2017, 15:24 | Сообщение # 8106
Статус:
Бывалый:
Сообщений: 672
Награды: 7
Регистрация: 12.07.2017

Нашёл метод для тушения костра в зп, написал кое какой код, вставил в actor_binder:update и при заходе в игру ловлю вот такой вот вылет:
Код

Expression    : !m_error_code
Function      : raii_guard::~raii_guard
File          : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
Line          : 748
Description   : No such operator defined


Вот, собственно, код:
Код

for i = 1, 65535 do
    local s = alife():object(i)
    if s then
  local o = level.object_by_id(s.id)
  if o then
   local cf = o:get_campfire()
   if cf and o:position():distance_to(db:actor():position()) < 5 then
    cf:turn_off()
   end
  end
    end
end
  Злобная реклама
Среда, 27.09.2017, 15:24
Статус:
Сообщений: 666
Регистрация: 12.07.2017
Российская Федерация  denis2000
Среда, 27.09.2017, 15:55 | Сообщение # 8107
Время Альянса
Статус:
Ветеран:
Сообщений: 4070
Награды: 16
Регистрация: 19.07.2013

buffy, Зачем писать настолько кривой код если достаточно в скрипте bind_campfire.script расскоментировать строки отвечающие за управление кострами? И сделать этот код таким каким тебе нужно.
Сообщение отредактировал denis2000 - Среда, 27.09.2017, 15:59
  Злобная реклама
Среда, 27.09.2017, 15:55
Статус:
Сообщений: 666
Регистрация: 19.07.2013
Российская Федерация  atanda
Среда, 27.09.2017, 16:07 | Сообщение # 8108
Статус:
Бывалый:
Сообщений: 672
Награды: 7
Регистрация: 12.07.2017

denis2000,
Да я так для теста написал, ну ладно и на этом спасибо. Так в чём собственно была то ошибка, как я понял какого-то оператора нет.

Добавлено (27.09.2017, 16:07)
---------------------------------------------
denis2000,
И да, а где происходит инициализация этого метода campfire_binder:__init? ну а точнее есть ли экземпляр этого класса?

  Злобная реклама
Среда, 27.09.2017, 16:07
Статус:
Сообщений: 666
Регистрация: 12.07.2017
Российская Федерация  denis2000
Среда, 27.09.2017, 16:32 | Сообщение # 8109
Время Альянса
Статус:
Ветеран:
Сообщений: 4070
Награды: 16
Регистрация: 19.07.2013

buffy, Всякий ли объект имеет такой метод: local cf = o:get_campfire()? Скорее всего не каждый. Что будет если вызвать отсутствующий метод? Правильно - вылет.
  Злобная реклама
Среда, 27.09.2017, 16:32
Статус:
Сообщений: 666
Регистрация: 19.07.2013
Российская Федерация  atanda
Среда, 27.09.2017, 16:45 | Сообщение # 8110
Статус:
Бывалый:
Сообщений: 672
Награды: 7
Регистрация: 12.07.2017

denis2000,
Хм, у меня что-то нет идей как раелизовать проверку на то, что объект например нпс или тот же самый костёр wacko
  Злобная реклама
Среда, 27.09.2017, 16:45
Статус:
Сообщений: 666
Регистрация: 12.07.2017
Российская Федерация  denis2000
Среда, 27.09.2017, 16:58 | Сообщение # 8111
Время Альянса
Статус:
Ветеран:
Сообщений: 4070
Награды: 16
Регистрация: 19.07.2013

Цитата buffy ()
что объект например нпс

Уже сделано за вас GSC в _g.script:
Код
function IsStalker (object, class_id)
  local id = class_id or get_clsid(object)
  return stalker_classes[id] == true
end

Для костров делаете по аналогии. У костров clsid.zone_campfire = 206 (см. lua_help.script)
Сообщение отредактировал denis2000 - Среда, 27.09.2017, 17:01
  Злобная реклама
Среда, 27.09.2017, 16:58
Статус:
Сообщений: 666
Регистрация: 19.07.2013
Сомали  WolfHeart
Среда, 27.09.2017, 21:19 | Сообщение # 8112
Статус:
Опытный:
Сообщений: 3154
Награды: 18
Регистрация: 06.06.2017

Цитата VovanFitisov ()
Нужна оригинальная gamedata со всеми файлами для ЗП

А сам распаковать, не можешь?
Вот распаковщик: S.T.A.L.K.E.R. Universal Extractor 2.0
Там все подробно расписано.

Сообщение отредактировал WolfHeart - Среда, 27.09.2017, 21:20
  Злобная реклама
Среда, 27.09.2017, 21:19
Статус:
Сообщений: 666
Регистрация: 06.06.2017
Российская Федерация  topdog
Среда, 27.09.2017, 22:18 | Сообщение # 8113
Статус:
Неопытный:
Сообщений: 412
Награды: 5
Регистрация: 09.10.2013

VovanFitisov, ну так посмотри в resources и levels. Вдруг что и найдется. smile Да и в patches тоже заглянуть не помешает.
Сообщение отредактировал topdog - Среда, 27.09.2017, 22:20
  Злобная реклама
Среда, 27.09.2017, 22:18
Статус:
Сообщений: 666
Регистрация: 09.10.2013
Сомали  WolfHeart
Среда, 27.09.2017, 22:25 | Сообщение # 8114
Статус:
Опытный:
Сообщений: 3154
Награды: 18
Регистрация: 06.06.2017

Цитата VovanFitisov ()
Никаких .db архивов нет, все облазил.

Как это нет?
Что папки levels, localization, mp, patches и resources, пустые? surprised
Так тогда может и папка bin пустая? biggrin
Цитата VovanFitisov ()
И ссылка твоя нерабочая

Как это не рабочая??? Я прежде чем что-то давать, проверяю.


Сообщение отредактировал WolfHeart - Среда, 27.09.2017, 22:26
  Злобная реклама
Среда, 27.09.2017, 22:25
Статус:
Сообщений: 666
Регистрация: 06.06.2017
Российская Федерация  NEO
Среда, 27.09.2017, 23:10 | Сообщение # 8115
Статус:
Ветеран:
Сообщений: 4497
Награды: 11
Регистрация: 24.05.2012

VovanFitisov, Вот в этих папках все нужные архивы:

А вот тебе распаковщик с инструкцией http://rgho.st/6qPS8clnB
  Злобная реклама
Среда, 27.09.2017, 23:10
Статус:
Сообщений: 666
Регистрация: 24.05.2012
Поиск: