У меня проблема с сгм 2.2 ганслингер
у меня частые вылеты Expression : fatal error
Function : CScriptEngine::lua_error
File : E:\stalker\sources\trunk\xr_3da\xrGame\script_engine.cpp
Line : 73
Description : <no expression>
Arguments : LUA error: ...a.l.k.e.r. Тень Чернобыля\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value)
вот например
Понял, у тебя ошибка в моде SGM 2.2 Ganslinger для S.T.A.L.K.E.R., связанная с Lua-скриптами.
Сообщение об ошибке говорит, что проблема в файле:
gamedata\scripts\_g.script
строка: 20
Суть ошибки:
Lua-функция string.format (в коде может быть записано просто format) получила не строку, а nil (пустое значение) во втором аргументе.
bad argument #2 to 'format' (string expected, got no value)
Это значит, что скрипт ожидал, что там будет строка (например, имя предмета или сообщение), а на деле переменная оказалась пустой.
Как исправить
Открыть файл скрипта
Перейди в папку с игрой:
...\S.T.A.L.K.E.R. Тень Чернобыля\gamedata\scripts\Найди файл _g.script
Открой его в Notepad++ или другом текстовом редакторе.
Найти строку 20
Там будет что-то вроде:
12local msg = string.format("%s: %s", someVar, anotherVar)или
12format("%s - %s", var1, var2)
Понять, что за переменная пустая
Скорее всего, anotherVar или второй аргумент не инициализируется, потому что игра не нашла нужный предмет/НПС/диалог.
Защитить код от nil
Можно подставить пустую строку, если переменная пуста:
12local msg = string.format("%s: %s", tostring(someVar or ""), tostring(anotherVar or ""))или
12format("%s - %s", tostring(var1 or ""), tostring(var2 or ""))
Сохранить файл и перезапустить игру
💡 Частая причина — в SGM 2.2 Ganslinger иногда вылетает из-за багнутых переводов или отсутствия строчек в string_table (xml-файлах с текстом).
Если второй аргумент — это game.translate_string(...), а он возвращает nil (строка не найдена в xml), нужно проверить gamedata\configs\text\<lang>\ и убедиться, что строка есть.
А причем тут тч?
я ничегго не поня
я не могу найти
Ты ничего не попутал? СГМ 2.2 так-то мод для Зова Припяти.
Или ты лог не тот нашёл.
нет