Перейти к контенту

LunInFog

Пользователи
  • Число публикаций

    3
  • Регистрация

  • Последнее посещение

  • AMKoin

    67 [Подарить AMKoin]

Баланс оценок

1

Недавние посетители профиля

450 просмотров профиля
  1. @mole venomous , спасибо за ответ! Уже находил этот код на другом сайте с тем же readme, но до конца не понял. Раз тут посоветовали, то сел дальше его изучать и заметил, что он использует методы, которые, если я правильно понял, не являются стандартными для чистого SoC без модов. Например в строке "amk.convert_npc[id] = true". Поиск метода convert_npc по файлам gamedata папок, которые я сейчас использую ("config", "scripts", "sounds", "spawns", "textures") не дал результата. То же самое и с методами "read_stalker_params", "write_stalker_params". Не нашёл в lua_help.script: updhealth; killerid; game_death_time[number]; skeleton_flags; Стандартные: heart:parent() - насколько я понял, возвращает родителя для объекта (артефакта). Если он лежит в трупе, то это мёртвый NPC. class game_object {}. function id() - class game_object {} по lua_help.script, возвращает id объекта. level.main_input_receiver() - возвращает текущее активное окно. alife() - класс alife_simulator - получаем сам объект класса alife_simulator. function set_switch_online(number, boolean) - class alife_simulator {} - видимо установить статус онлайн объекта с идентификатором id при boolean = true (перевести объект в онлайн). set_switch_offline(id, boolean) - class alife_simulator {} - установить статус оффлайн объекта с идентификатором id при boolean = true (перевести объект в оффлайн). level.object_by_id(number) - клиентский объект по его id. Возвращает nil, если объект не в онлайне или не существует. Пространство имён level. function object() - class entity_action {} - ??? property health - class game_object {} - параметр "здоровье" объекта?.. function log(string) - ?.. (логирование куда-то?) @AndreySol понял. all.spawn уже распакованным болтается, но через него манипуляций пока не пробовал проводить, только изучал структуру. Получается, мне нужен файл, полученный из all.spawn, с префиксом "alife_", далее номер уровня и имя нужной локации с NPC ("alife_l05_bar.ltx"). В нём я уже находил секцию Петренко. Вот её код. И в таком случае номером секции будет являться число в квадратных скобках "[]" = 7212? Думал, что это служебный ID, который присваивает перепаковщик, чтобы корректно запаковывать потом all.spawm обратно и сама игра про него не знает. Файл "alife_l05_bar.ltx" нужно куда-то подсовывать игре, или в директории игры вообще может не быть распакованного "all.spawn", и игра уже знает про номер секции, хоть этот ID и не имеет отношения к ID объекта? И, получается, раз есть функция для спавна по номеру секции, если про него знает игра, то возможно есть функция спавна по имени объекта (name = bar_dolg_petrenko)? Как только попробую оба способа, отпишусь.
  2. LunInFog

    У Костра XXI

    Доброго всем времени суток! Я тут не был несколько лет. Форум видимо переезжал. Аккаунт цел, а сообщения (их не много было), получается, пропали?..
  3. Доброго времени суток! По идее это должна быть избитая тема, но два дня гуглежа и экспериментов не дали ответа. Как можно "оживить" уникального NPC в стоковом STALKER SoC? Конкретно интересует Петренко из Долга на локации Бар. Вообще почему я этим озаботился. Вступил в Свободу, используя стандартную в игре оставшуюся для этого возможность (выполнение квестов на Военных Складах в нужной последовательности). Дальше столкнулся с тем, что учёные стали агрессивными для ГГ. Поправил "\gamedata\config\creatures\game_relations.ltx" (между freedom - ecolog, ecolog - freedom и ecolog - act_fre, actor_freedom - ecolog, хотя саму freedom наверное трогать лишнее). Далее выяснил, что возможность получить СВДм-2 на среднем этапе игры есть только у Петренко и после выполнения квеста на Бульдог. А я же вступив в Свободу каждый раз продирался к Бармену с боем... И Петренко видимо в один из моих прорывов вылез на меня. То есть его труп уже давно лежит, и даже к нему в инвентарь заспавнить уже живому СВДм-2, чтобы отыграть, что типа с боем заполучил СВДм-2 (а такое, кстати, вроде возможно и так из-за бага, при котором он меняет старое вооружение на СВДм-2 после выполнения квеста на Бульдог, только не имеет смысла, так как тогда уже проще купить, она в продажу поступает). Нашёл конфиг Петренко в "\gamedata\config\gameplay\character_desc_bar.xml", но там у него какой-то странный синтаксис. По крайней мере в Sublime Text Editor 3 подсветка такая, будто весь блок закомментирован (видимо из-за не валидного использования символов "----" внутри комментария: Сам блок описания Петренко: Я ему там прописать хочу в блок <supplies> wpn_svd и ammo_7.62x54_7h1. Тут я вижу, что вроде как id уникального персонажа "bar_dolg_petrenko". Он же фигурирует в распакованном all.spawn. Но попытка заспавнить его функцией приводит к ошибке Не подскажете, как в итоге можно осуществить спавн уникального NPC, если он был убит до этого, без старта новой игры? Спавн обычных сталкеров через alife():create() происходил успешно.
×
×
  • Создать...