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

[SoC] Ковыряемся в файлах

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

4 часа назад, Чешский сказал:

Искал везде, но ответ не могу найти уже несколько лет.

Ищите плагин для проверки синтаксиса Lua в Notepad, от Charsi. Он тут где-то на форуме был.

Изменено пользователем Zander_driver

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий
2 часа назад, Zander_driver сказал:

Ищите плагин для проверки синтаксиса Lua в Notepad, от Charsi. Он тут где-то на форуме был.

Я не знаю стоит ли проверять death_manager - он остался неизменным. Я даже не клал его в геймдату, игра берет скрипт из игрового архива. На всякий случай я проверил скрипт с плагином на синтаксис - я не совсем понимаю как он работает. Установил плагин, в нотпаде запустил проверку синтаксиса и... Ничего. Попробовал рандомно вписать кириллицу в скрипт - тоже не реагирует. Да и, повторюсь, мне кажется, что дело не в скрипте, я работал только с конфигами. 

5 минут назад, naxac сказал:

@Чешский, а можно увидеть 139 строку из вашего death_manager.script?

Да, конечно. 

            local number = math.ceil(math.random(count_by_level[k].min, count_by_level[k].max))

Это строка из оригинала, сам скрипт я не трогал. 

Ссылка на комментарий
9 часов назад, Чешский сказал:

зарегал их в _g.script

Это как? Не припомню, чтобы это требовалось при введении новых патронов и вообще предметов. Сам никогда не трогал _г.скрипт в таких случаях и все было хорошо.

  • Согласен 1

GTA 3 MAP X-Ray | NFS U:2 MAP X-Ray | RTCW MAP X-Ray | L2D | Куча раритетных модов на моем облаке — на память о былом.

JNCR — Coming Soon...

i5-10400F / RAM 16GB / GTX 1660 Super / 1TB HDD+256GB SSDm2 / Win 11 PRO x64 / Samsung Curved 27" x2

Ссылка на комментарий

Подскажите, можно ли создать какую-нибудь зону, где будет отключаться игровая музыка, прописанная для данной локации и включаться прописанная для данной зоны? и желательно плавно переключалась при входе\выходе из зоны.

Аналогично и с эмбиентом - всякими криками, шумом ветра и листвы и т.д. Тоже какой-нибудь рестриктор, при нахождении в котором выключается амбиент локации и подключается амбиент какой-нибудь подземки?

 

Изменено пользователем RSFSR
Ссылка на комментарий
8 минут назад, HellRatz сказал:

Это как? Не припомню, чтобы это требовалось при введении новых патронов и вообще предметов. Сам никогда не трогал _г.скрипт в таких случаях и все было хорошо.

Я пробовал и с _g и без - вылет один и тот же. А вообще, подсмотрел на одном из форумов про то, что регистрация патрона там необходима. В этом скрипте есть в самом конце таблица с патронами и квестовыми предметами. 

Ссылка на комментарий
только что, Чешский сказал:

local number = math.ceil(math.random(count_by_level[k].min, count_by_level[k].max))

Выводите в лог, чему равны k, и что представляет собою count_by_level, выше этой строки.

Тут уже, собственно, все очевидно.

 

8 часов назад, Чешский сказал:

death_manager.script:139: attempt to index field '?' (a nil value)

Скрипт пытается взять элемент таблицы по ключу k, либо поле в этом элементе. А там обнаруживается nil.

Проблема в некорректности данных

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий

@Чешский, Новые патроны нужно прописывать в:

misc\death_generic.ltx

misc\death_items_count.ltx

misc\death_items_by_levels.ltx

misc\death_items_by_communities.ltx.

  • Согласен 2

S.T.A.L.K.E.R. CoP Objects (upd 10.04.24)

Ссылка на комментарий
18 минут назад, Zander_driver сказал:

Выводите в лог, чему равны k, и что представляет собою count_by_level, выше этой строки.

Тут уже, собственно, все очевидно.


Извиняюсь, но не могу вдуплить... А как это значение в лог вывести?
 

Скрипт пытается взять элемент таблицы по ключу k, либо поле в этом элементе. А там обнаруживается nil.

Проблема в некорректности данных

Извиняюсь, но не могу вдуплить... А как это значение в лог вывести?
 

Скрипт пытается взять элемент таблицы по ключу k, либо поле в этом элементе. А там обнаруживается nil.

Проблема в некорректности данных

Как я понимаю, "k"  это коэфициент для предмета в death_by_level? Ну типа x вот тут? 

;Аммуниция
ammo_7.62x39_fmj                 = x

Я прописал в этом конфиге свой патрон и выставил коэффициент 1. Честно, я не знаю языков программирования и полез заниматься моддингом исключительно по туторам.

 

18 минут назад, WinCap сказал:

@Чешский, Новые патроны нужно прописывать в:

misc\death_generic.ltx

misc\death_items_count.ltx

misc\death_items_by_levels.ltx

misc\death_items_by_communities.ltx.


Я прописал во всех этих файлах. В count для каждого уровня сложности отдельно, по два значения через запятую (от x до y) 

Добавлено  Опричник,

Изучите "Правила цитирования". https://www.amk-team.ru/forum/topic/13514-obyavleniya/

Ссылка на комментарий
только что, Чешский сказал:

Как я понимаю, "k"  это коэфициент для предмета в death_by_level? Ну типа x вот тут? 

Это может быть что угодно. В зависимости от контекста скрипта.

Но в данном случае это адрес, по которому должны браться данные из таблицы count_by_level. И скрипт по этому адресу не находит то, что ожидает.

только что, Чешский сказал:

А как это значение в лог вывести?

Я бы рекомендовал модуль zander_log оттуда.

Но счас набегут советчики других инструментов... каждый хвалит свои костыли.

  • Нравится 1

Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine.

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист.

AMD Ryzen 9 7950X (16 ядер, 5.7ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD.

Ссылка на комментарий
1 час назад, Чешский сказал:

Скрипт пытается взять элемент таблицы по ключу k, либо поле в этом элементе. А там обнаруживается nil.

Правильно.

Таблица count_by_level по индексу "ammo_7.62x39_fmj" должна содержать значения min и max. Эти значения считываются из файла misc\death_items_count.ltx. Проверьте правильно ли прописаны патроны в этом файле.

S.T.A.L.K.E.R. CoP Objects (upd 10.04.24)

Ссылка на комментарий
только что, naxac сказал:

@RSFSR, в SDK можно создавать подобные зоны.

и как? какая-то логика существует? не путай со звуковыми зонами, которые sound_env - кубы, где звуку придается эхо

Добавлено  Опричник,

Изучите "Правила цитирования". https://www.amk-team.ru/forum/topic/13514-obyavleniya/

Ссылка на комментарий

@naxac, нет, нужно менять фоновую музыку, прописанную в game_levels_music.ltx и окружающие звуки прописанные в профилях погоды: Например в weather_default.ltx:

env_ambient        =    ambient_env_night

и в файле env_ambient.ltx

Ссылка на комментарий

@Zander_driver, я подрубил твой модуль (кинул в бин расширение RvP, создал файл zander_log.script со скриптом из спойлера и объявил функцию через _g.script), но я не совсем понял как пользоваться этим: 

zander_log(любое, число, каких-то, ваших, переменных)

 

1 час назад, WinCap сказал:

misc\death_items_count.ltx


Может быть, death_items_by_counts*? Там я всё проверил, прописаны для каждого уровня сложности (новичок, сталкер, ветеран, мастер) и тип боеприпаса, и количество в 2-х значениях. Пример:

[item_count_0]
;Аммуниция
ammo_9x18_fmj            = 20, 40
***
ammo_7.62x39_fmj                 = 20, 40

 

Ссылка на комментарий
1 час назад, Чешский сказал:

Может быть, death_items_by_counts*?

У меня death_items_count.ltx, точно.

В файле death_generic.ltx, в #include, какой прописан?

  • Полезно 1

S.T.A.L.K.E.R. CoP Objects (upd 10.04.24)

Ссылка на комментарий

@WinCap, я сейчас изменил название файла на death_items_count.ltx и всё заработало. У меня тупо несколько лет на компе лежал файл с неправильным названием. Как такое вышло - понятия не имею, я никогда не трогал файлы из распакованных архивов, правил только скопированные в новую геймдату. Мда... А на инклуды я всегда смотрел только мельком - я не думал, что в файле, на котором работала игра, могла быть ошибка. Может я сам когда-то, зачем-то поменял файлу название, а может и программа что-то не так распаковала. В любом случае огромное человеческое спасибо за помощь и за то, что откликнулись, народ. 

Ссылка на комментарий
2 часа назад, RSFSR сказал:

какая-то логика существует?

Существует только на отыгрыш звука при попадании в рестриктор. Соответственно ты сможешь запустить звук, но вот для отключения эмбиента и прочих твоих хотелок надо уже писать отдельную логику (а может и править движок до кучи, чтобы была возможность управлять эмбиентом).

GTA 3 MAP X-Ray | NFS U:2 MAP X-Ray | RTCW MAP X-Ray | L2D | Куча раритетных модов на моем облаке — на память о былом.

JNCR — Coming Soon...

i5-10400F / RAM 16GB / GTX 1660 Super / 1TB HDD+256GB SSDm2 / Win 11 PRO x64 / Samsung Curved 27" x2

Ссылка на комментарий

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

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    Ни один зарегистрированный пользователь не просматривает эту страницу.

AMK-Team.ru

×
×
  • Создать...