Опубликовано
lxr 21 Янв 2019 в 18:08
Ошибка Info string length exceeded возникает в Counter-Strike 1.6 тогда, когда количество данных, которые необходимо записать в setinfo, превышает количество выделенной под эти данные памяти. Простыми словами - когда через setinfo пытаются записать очень много данных. Такое часто возникает, когда игрок посещает несколько серверов, каждый из которых хранит свои настройки у клиента в setinfo, а потом игрок пытается прописать себе пароль, используя setinfo _pw "пароль". Отсюда вывод - чтобы исправить эту ошибку, нужно удалить всё лишнее из setinfo. Чаще всего забиваются такие переменные как
bottomcolor,
lang,
_gm и
model, соответственно первое, что вы можете попробовать, это зайти в консоль игры и прописать там следующее:
setinfo model ""
setinfo bottomcolor ""
setinfo lang ""
setinfo _gm ""
Возможно этого будет достаточно и ошибка пропадет, однако мы настоятельно рекомендуем почистить ваш конфиг. Если вы хотите посмотреть какие ещё данные у вас хранятся в setinfo, то это можно легко сделать, выполнив команду
setinfo в консоле. В результате вы увидите что-то похожее на это:
У меня чистый конфиг, и здесь нет каких-то «левых» значений, но если вдруг вы увидите что-нибудь в духе такого:
setinfo "asdfxc" "bcvd456agrmkgaeln4a543n543oi5a34nokm4a3n54a3543a", то можете удалить. Однако не стоит забывать, что хотя такие настройки и забивают без того маленькую область setinfo мусором, тем не менее многие сервера хранят там настройки игрока (например язык, транслит, модель и другие параметры), поэтому бездумно удалять всё возможно не стоит.
Для защиты от такого можем порекомендовать устанавливать атрибут «Только для чтения» на ваши конфиги:
autoexec.cfg,
config.cfg,
userconfig.cfg