Перейти к содержанию
Кефир

Правочная по NLC Improved

Рекомендуемые сообщения

 

banner-pravki-nlc-improved.png

Просим, спрашиваем, модифицируем самостоятельно — всё это здесь и по NLC Improved.

↓↓↓

Тема оригинального мода здесь
https://ap-pro.ru/forums/topic/12275-nlc-improved

↑↑↑

Основа, актуальный патч, некоторые разрешённые дополнения именно там.


Таблица по планам в реализации:  image.png

Если вы устанавливаете правки, то лишаетесь технической поддержки на официальном сервере в Discord.


Сохранения где угодно (для обновления от 29.07.2025):

Спойлер

aYXLbZ2.png


Я не знаю насколько это работоспособная штуковина на перспективу дальнейшего прохождения игры, но вот. ¯\_(ツ)_/¯

————————————————————————————————————————————————————————————————————————————

                 РЕКОМЕНДОВАНО НЕ СОХРАНЯТЬСЯ РЯДОМ С СИДОРОВИЧЕМ! ВЫСОК ШАНС ЕГО ИСЧЕЗНОВЕНИЯ!

————————————————————————————————————————————————————————————————————————————

1. А как установить?

      Закинуть папку mods в папку с игрой. Проверить работоспособность поможет красная надпись в главном меню.

————————————————

А как сделать самому, если я не хлеб с лицом Сенко-сан?

   0) Ссылка на распаковщик:

https://github.com/mcmilk/7-Zip-zstd/releases/download/v24.09-v1.5.7-R1/7z24.09-zstd-x64.exe

      Это другая версия 7-Zip, которая может распаковать игровые архивы в этом моде.

————————————————

   1) gamedata/scripts/binders/bind_monster.script

      Найдите конец файла и добавьте на пустых строчках: 

bind_monster.misc = {force_offline = function() end} 

      Это исправит исчезновение Сидоровича при загрузке сохранения, сделанного рядом с ним.
      Подсказал: ap-pro.ru/profile/2634-av661194
     (Напомнил, что подсказывал ещё в 2023, но у автора правок деменция: ap-pro.ru/profile/16073-gomes)

————————————————

   2) gamedata/scripts/ogse/ogse_campfire.script

      Найдите:

function check_near_en_flame()
    if not (_G.flag_can_save and is_actor_alive()) then return end
    local kamp = get_nearest_active_campfire(db.actor:position(), 10)
    local obj = kamp and kamp.object
    if obj and obj:position():distance_to_sqr(db.actor:position()) < DIST_TO_ACTOR then
        return true
    end
end

      и замените весь этот текст на: 

function check_near_en_flame()
    return (_G.flag_can_save and is_actor_alive())
end

————————————————

   3) Запакуйте файлы любой удобной версией программы в формат xdb.

      Например, этой: https://disk.yandex.ru/d/qOTsRufrY8ShJw
      В архиве инструкция по использованию находится в файле read_soc_mp.txt.

   Затем переименуйте готовый файл и переместите его в папку mods в папке с игрой (если таковой не имеется, то создайте её вручную).

————————————————

Таким образом активируется возможность сохранения через пронумерованные быстрые сохранения (user_quicksave_*, где * — цифра/число), сохранения через отдельные варианты с указанием дня, времени и локации (День *. **-**. названиелокации, где * — номер дня, **-** — игровое время) и через специальное меню в главном меню при загруженной игре.

Быстрое открытие рюкзака (для обновления от 29.07.2025):

Спойлер

aYXLbZ2.png


1. А как установить?

      Закинуть папку mods в папку с игрой. Проверить работоспособность поможет красная надпись в главном меню.

————————————————

2. В архиве лежит адаптация и для HD-интерфейса. Как ей воспользоваться?

      Состав бутерброда должен получиться таким:
      1) Основной мод;
      2) Адд-он на HD-интерфейс;
      3) Данная правка для чистой версии;
      4) Адаптация для HD-интерфейса.

———————————————————————————————————————————

А как сделать самому, если я не хлеб с лицом Сенко-сан?

   0) Ссылка на распаковщик:

https://github.com/mcmilk/7-Zip-zstd/releases/download/v24.09-v1.5.7-R1/7z24.09-zstd-x64.exe

      Это другая версия 7-Zip, которая может распаковать игровые архивы в этом моде.

————————————————

   1) gamedata/scripts/ui/ui_cheat_inv_buttons.script

      Найдите:

--полное открытие рюкзака (долго ковыряется)
level.disable_input()    --обездвиживаю ГГ
vergas_lib.s_play("rykzack\\rykzack_open_long",1)
schedule.add("show_full_rucksack", "inv_buttons_use.open_inventory(4)", 4000)
razgruzka.open_inventory() -- подготовить инвентарь с скрытием избыточных предметов

      и замените строчки

vergas_lib.s_play("rykzack\\rykzack_open_long",1)
schedule.add("show_full_rucksack", "inv_buttons_use.open_inventory(4)", 4000) 

      на:

vergas_lib.s_play("rykzack\\rykzack_open_short",1)
schedule.add("show_full_rucksack", "inv_buttons_use.open_inventory(4)", 4)

————————————————

   2) gamedata/sounds/rykzack/rykzack_open_short.ogg

      Данный файл из архива должен быть по пути выше, иначе при открытии рюкзака будет слышен звук по умолчанию.

————————————————

   3) Запакуйте файлы любой удобной версией программы в формат xdb.

      Например, этой: https://disk.yandex.ru/d/qOTsRufrY8ShJw
      В архиве инструкция по использованию находится в файле read_soc_mp.txt.

   Затем переименуйте готовый файл и переместите его в папку mods в папке с игрой (если таковой не имеется, то создайте её вручную).

————————————————

Таким образом активируется возможность быстрее открыть рюкзак.

Увеличенный объём ящика (для обновления от 29.07.2025):

Спойлер

aYXLbZ2.png


ПРИ БОЛЬШОМ КОЛИЧЕСТВЕ ПРЕДМЕТОВ В ЯЩИКЕ ИГРА НАЧИНАЕТ СЪЕДАТЬ ОПЕРАТИВНУЮ ПАМЯТЬ!

———————————————————————————————————————————

1. А как установить?

      Закинуть папку mods в папку с игрой. Проверить работоспособность поможет красная надпись в главном меню.

————————————————

А как сделать самому, если я не хлеб с лицом Сенко-сан?

   0) Ссылка на распаковщик:

https://github.com/mcmilk/7-Zip-zstd/releases/download/v24.09-v1.5.7-R1/7z24.09-zstd-x64.exe

      Это другая версия 7-Zip, которая может распаковать игровые архивы в этом моде.

————————————————

   1) gamedata/scripts/binders/bind_physic_object.script

      Найдите:

function generic_physics_binder:reinit()
    object_binder.reinit(self)
    db.storage[self.object:id()] = {}
    self.st = db.storage[self.object:id()]
    local sec, name = self.object:section(), self.object:name()
    if sec_confirm(sec, name) == true then
        self.object:set_callback(callback.on_inv_box_item_take, self.on_inv_box_item_take_callback, self)
        self.object:set_callback(callback.on_inv_box_item_drop, self.on_inv_box_item_drop_callback, self)
        self.pos = self.object:position()
        self.st["max_weight"] = 50
        if is_paid_box(self.object:name()) then
            local add_weight = 50 * math.floor(db.actor:character_rank() / 300)
            self.st["max_weight"] = 200 + add_weight
        end
    end

      и замените строчки

        self.st["max_weight"] = 50
        if is_paid_box(self.object:name()) then
            local add_weight = 50 * math.floor(db.actor:character_rank() / 300)
            self.st["max_weight"] = 200 + add_weight

      на:

        self.st["max_weight"] = 999999
        if is_paid_box(self.object:name()) then
            local add_weight = 999999
            self.st["max_weight"] = add_weight


————————————————

   2) gamedata/scripts/binders/bind_physic_object.script

      Найдите:

function set_counter(id, rem)
    local box = id and client_obj(id)
    if box and not rem then
        if is_paid_box(box:name()) then
            local add_weight = 50 * math.floor(db.actor:character_rank() / 300)
            db.storage[id]["max_weight"] = 200 + add_weight
        end
    end

      и замените строчки

            local add_weight = 50 * math.floor(db.actor:character_rank() / 300)
            db.storage[id]["max_weight"] = 200 + add_weight

      на:

            local add_weight = 999999
            db.storage[id]["max_weight"] = add_weight

————————————————

   3) Запакуйте файлы любой удобной версией программы в формат xdb.

      Например, этой: https://disk.yandex.ru/d/qOTsRufrY8ShJw
      В архиве инструкция по использованию находится в файле read_soc_mp.txt.

   Затем переименуйте готовый файл и переместите его в папку mods в папке с игрой (если таковой не имеется, то создайте её вручную).

————————————————

Таким образом активируется возможность класть больше предметов что в обычные ящики, что в платные.

Увеличенный шанс выпадения частей мутантов (для обновления от 29.07.2025):

Спойлер

aYXLbZ2.png


Если что-то не устраивает, то снизу будет, насколько это возможно, всё подробно расписано.

————————————————

Изменения относительно оригинальных файлов:

• Кровосос (все вариации):
   — 0.25 → 0.7;

• Кабан (все вариации):
   — 0.2 → 0.7;

• Бюрер (все вариации):
   — 0.2 → 0.8;

• Кот (все вариации):
   — 0.2 → 0.7;

• Химера (все вариации):
   — 0.2 → 1;

• Контролёр (все вариации):
   — 0.7 → 1;

• Слепой пёс (все вариации):
   — 0.2 → 0.7;

• Плоть (все вариации):
   — 0.2 → 0.8;

• Псевдогигант (все вариации, кроме квестовых):
   — 0.75 → 1;

• Полтергейст (все вариации):
   — 0.2 → 1;

• Псевдособака (все вариации):
   — 0.2 → 0.8;

• Псевдособака_френд (?):
   — 0.2 → 0.8;

• Снорк:
   — 0.2 → 0.8;

• Тушкан (все вариации, кроме квестовых):
   — 0.2 → 0.7;

• Зомби (все вариации):
   — 0.25 → 0.75;

————————————————

1. А как установить?

      Закинуть папку mods в папку с игрой. Проверить работоспособность поможет красная надпись в главном меню.

———————————————————————————————————————————

А как сделать самому, если я не хлеб с лицом Сенко-сан?

   0) Ссылка на распаковщик:

https://github.com/mcmilk/7-Zip-zstd/releases/download/v24.09-v1.5.7-R1/7z24.09-zstd-x64.exe

      Это другая версия 7-Zip, которая может распаковать игровые архивы в этом моде.

————————————————

Список мутантов:
   1) m_bloodsucker.ltx — кровососы;
   2) m_boar.ltx — кабаны;
   3) m_burer.ltx — бюреры;
   3) m_cat.ltx — коты;
   4) m_chimera.ltx — химеры;
   5) m_controller.ltx — контролёры;
   6) m_dog.ltx — слепые псы;
   7) m_flesh.ltx — плоти;
   8) m_giant.ltx — псевдогиганты;
   9) m_poltergeist.ltx — полтергейсты;
   10) m_pseudodog.ltx — псевдособаки;
   11) m_pseudodogfrend.ltx — какие-то другие псевдособаки (?);
   12) m_snork.ltx — снорки;
   13) m_tushkano.ltx — тушканы;
   14) m_zombie.ltx — зомби;
   
————————————————   

   1) gamedata/config/creatures/m_***.ltx (любой файл из названных в списке выше)

      Через поиск по файлу найдите параметр:

Spawn_Inventory_Item_Probability

      и замените число после знака «=» на любое от 0 до 1 (после точки рекомендую писать только три числа, т.е. десятые, сотые и тысячные).

————————————————

   2) Уточнения:
      
      • Если вы делаете редактуру сами, а не используете готовые файлы, то помните, что в одном файле может быть несколько секций мутантов, и у каждой есть своё значение вышеизложенного параметра, поэтому редактируйте файлы с должным вниманием.

      • Если вы делаете редактуру сами, а не используете готовые файлы, то помните, что в некоторых файлах присутствуют секции с вышеизложенным параметром где значение равно нулю. Рекомендую оставить их как есть и лишний раз не редактировать.

————————————————

   3) Запакуйте файлы любой удобной версией программы в формат xdb.

      Например, этой: https://disk.yandex.ru/d/qOTsRufrY8ShJw
      В архиве инструкция по использованию находится в файле read_soc_mp.txt.

      Затем переименуйте готовый файл и переместите его в папку mods в папке с игрой (если таковой не имеется, то создайте её вручную).

————————————————

Таким образом активируется увеличенный шанс выпадения частей мутантов.

 

Изменено пользователем Кефир
  • Лайк 4
  • Хабар 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Части монстров не тухнут.

Путь: gamedata\scripts\sak\sak.script

Ищем строку: if strpos(nname,"green_kolbasa") then 

new_cond=0.00 и меняем на 0

Спойлер

elseif strpos(nname,"kolbasa") then
                new_cond=0.00
            elseif strpos(nname,"mutant_chimera_kogot") then
                new_cond=0.00
            elseif strpos(nname,"mutant_krovosos_jaw") then
                new_cond=0.00
            elseif strpos(nname,"mutant_poltergeist_glas") then
                new_cond=0.00
            elseif strpos(nname,"mutant_hand_kontroler") then
                new_cond=0.00
            elseif strpos(nname,"mutant_psevdogigant_hand") then
                new_cond=0.00
            elseif strpos(nname,"mutant_e_chimera_kidney") then
                new_cond=0.000
            elseif strpos(nname,"mutant_boar_leg") then
                new_cond=0.000    
            elseif strpos(nname,"mutant_zombie_hand") then
                new_cond=0.00
            elseif strpos(nname,"mutant_fracture_spleen") then
                    new_cond=0.00
            end

P.S. Не знаю как на этой версии, на ЗБТ работало!
                


      

Изменено пользователем Denikius
  • Хабар 2
  • Спасибо 1

Ибо когда настанет судный день нас не спросят, что мы читали, а спросят, что мы сделали.

Вышел ежик из тумана, выжрал ежик пол стакана, поглядел в пустой стакан и опять ушел в туман)))

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
2 часа назад, Denikius сказал:

Части монстров не тухнут.

Путь: gamedata\scripts\sak\sak.script

Ищем строку: if strpos(nname,"green_kolbasa") then 

new_cond=0.00 и меняем на 0

  Показать контент

elseif strpos(nname,"kolbasa") then
                new_cond=0.00
            elseif strpos(nname,"mutant_chimera_kogot") then
                new_cond=0.00
            elseif strpos(nname,"mutant_krovosos_jaw") then
                new_cond=0.00
            elseif strpos(nname,"mutant_poltergeist_glas") then
                new_cond=0.00
            elseif strpos(nname,"mutant_hand_kontroler") then
                new_cond=0.00
            elseif strpos(nname,"mutant_psevdogigant_hand") then
                new_cond=0.00
            elseif strpos(nname,"mutant_e_chimera_kidney") then
                new_cond=0.000
            elseif strpos(nname,"mutant_boar_leg") then
                new_cond=0.000    
            elseif strpos(nname,"mutant_zombie_hand") then
                new_cond=0.00
            elseif strpos(nname,"mutant_fracture_spleen") then
                    new_cond=0.00
            end

P.S. Не знаю как на этой версии, на ЗБТ работало!
                


      

А с износом артефактов реально ли то же самое сделать? 
Есть ли возможность выложить этот файл распакованный под актуальный патч (а в идеале еще и actor.ltx)? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
15 минут назад, walet сказал:

А с износом артефактов реально ли то же самое сделать? 

На ЗБТ нет, а тут не смотрел.


Ибо когда настанет судный день нас не спросят, что мы читали, а спросят, что мы сделали.

Вышел ежик из тумана, выжрал ежик пол стакана, поглядел в пустой стакан и опять ушел в туман)))

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

balance_light не работает, проверял. А больше нигде не смог найти.


Дополнено 24 минуты спустя

И да, с выпадением частей монстров переборщили по моему мнению. Хватило бы увеличения на 0.2, чтобы шанс был около 0.4 у слабых особей и 05 у матёрых. Иначе весь азарт пропадает, а спустя пару дней у игрока будут просто тонны этого добра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Если тут кто-то пробирается сквозь «502 Bad Gateaway», то закидываю на тесты вариант отключить насовсем уменьшение состояния частей мутантов и артефактов. Если начинать новую игру, то после разговора с Доктором будет выдан небольшой стартовый набор с десятком снотворных (невозможность спать сразу после пробуждения (даже если было принято снотворное) отключено), можете пробовать проверять через сон.

https://drive.google.com/file/d/1NYieWiyVF03vMqln3n-quJyBpVoXMwKP/view?usp=sharing

Изменено пользователем Кефир
  • Лайк 1
  • Мастер! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
55 минут назад, Кефир сказал:

невозможность спать сразу после пробуждения (даже если было принято снотворное) отключено

Привет.
Кефир, подскажи пожалуйста в каком файле и как отключается ограничение на действие снотворного сразу после пробуждения?
Хочу сам поправить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
16 минут назад, huser сказал:

Хочу сам поправить.

Спойлер

image.png

  1. gamedata/scripts/allcore_hide.script;
  2. Ищите нужную часть кода по строке:
    •  function sleeping_pill_used()
  3. Перед строчкой:
    • if has_alife_info("sleep_abuse_timer_info") then return end

ставите два тире («--») или удаляете строчку.


Запакуйте файлы любой удобной версией программы в формат xdb.

      Например, этой: https://disk.yandex.ru/d/qOTsRufrY8ShJw
      В архиве инструкция по использованию находится в файле read_soc_mp.txt.

Затем переименуйте готовый файл и переместите его в папку mods в папке с игрой (если таковой не имеется, то создайте её вручную).

UPD: готовый файл, его нужно переместить в папку mods в папке с игрой (если таковой не имеется, то создайте её вручную) — pills_abuse_on.xdb0.

Изменено пользователем Кефир
  • Лайк 1
  • Мастер! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
2 часа назад, kosti.kalars сказал:

спустя пару дней у игрока будут просто тонны этого добра.

Справедливости ради - не будет
Ты в день можешь срезать 25 целых частей и около 20 коцаных - тебе просто ножей не хватит 


Дополнено 1 минуту спустя
1 час назад, Кефир сказал:

то закидываю на тесты вариант убрать уменьшение состояния частей мутантов и артефактов

А оно уменьшено или отключено вообще? 
Если только уменьшено (в таблице речь об уменьшении) - возможно ли сделать и версию чтобы вообще не портились? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 минуту назад, walet сказал:

А оно уменьшено или отключено вообще? 

Отключено. Приношу свои извинения за неточность.

  • Мастер! 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
2 минуты назад, Кефир сказал:

Отключено. Приношу свои извинения за неточность.

Благодарю за ответ, будем пробовать

2 часа назад, kosti.kalars сказал:

Хватило бы увеличения на 0.2, чтобы шанс был около 0.4 у слабых особей и 05 у матёрых

Там вроде как есть подробная инструкция как регулировать самому кстати, можно под себя настроить легко 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Порчу артефактов на ноль лучше не ставить, потому что неизвестно как поведёт себя чёрная метка. Вдруг она тоже портиться не будет. Лучше уменьшить скорость раз в десять и ускорить порчу чёрной метки настолько же. Плюс теперь ещё остался вопрос с разрядом аккумуляторов.
P.S: снотворное работает как надо.
 


Дополнено 8 минуты спустя

walet Я уже давно всё под себя настроил. Оставалось только порча артефактов и аккумуляторов, потому что разрабы отключили "balance_light", он теперь не фурычит. С кострами тоже пришлось решать методом увеличения спичек в коробке.

Изменено пользователем kosti.kalars

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Кефир а чего рекомендация не сейвиться рядом с Сидором, если уже есть решение?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
Только что, Hunter сказал:

а чего рекомендация не сейвиться рядом с Сидором, если уже есть решение?

На всякий случай, так как пути работоспособности правок неисповедимы. :u1F643:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Кефир а в чем прикол с обратным запаковыванием? Типа, открытую геймдату НЛС не читает?


Дополнено 1 минуту спустя

Предлагаю правку на убирание времени ремонта, как в других модах: Подошел-заплатил-забрал ствол починенный сразу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
3 часа назад, Hunter сказал:

Предлагаю правку на убирание времени ремонта, как в других модах: Подошел-заплатил-забрал ствол починенный сразу.

Идея интересная, как вариант вообще на все в целом - ремонт, зарядка, варка, вскрытие капсул, пропитка и тд


Дополнено 1 минуту спустя
3 часа назад, Hunter сказал:

чем прикол с обратным запаковыванием

Подозреваю, что это связано с "защитой от дурака"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Короче, нашёл я разряд аккумуляторов. В sak.script раздел: function sak.discharge_accum().

Строка local coef = coef_add * 0.055 / 100.0 or 0.001 отвечает за разряд аккумуляторов, а строка local coef = 0.125 * tmr_art_discharge:elapsed(true) / 60.0 за порчу артефактов. Фонарик в dsh_torch.script, там легко разобраться.

Изменено пользователем kosti.kalars
  • Хабар 1
  • Спасибо 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
7 часов назад, Hunter сказал:

Типа, открытую геймдату НЛС не читает?

Читает... и не даёт сохраняться. Такой вот античит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   3 пользователя онлайн