Главная » Статьи » Статьи » Моддинг

Вылеты и баги

Игра сильно тормозит в одной части локации.

Скорее всего где-то поблизости есть растяннутая текстура животного\НПС -надо ее найти и полоснуть
ножом или выстрелить по ней...

Не открываается дверь в ....., как открыть?

Можно так открыть:
1.Подойди к двери вплотную со стороны петель под углом где-то 45 градусов.
2.Берёшь в руки ствол подлиннее,желательно СВД и пихаешь между петлями.
3.Нажимаешь в инвентаре "выбросить оружие".
Попыток этак с 10 дверь открывается настолько,что можно протиснуться вовнутрь,а винтовочку
забираем уже с той стороны.Таким методом я открывал без кода эту дверь и закрытый сейф на базе
монолита в Припяти (в оригинальной игре и в моде 1.3.1, но думаю,ничего не изменилось). Но хочу
предупредить -может и зашибить дверью, иногда наглухо (поэтому больше не пользуюсь, в случае смерти ГГя
теперь всегда начинаю игру заново).


Expression : assertion failed
Function : CSafeFixedRotationState::create
File : e:\stalker\patch_1_0004\xr_3da\xrgame\phvalidevalues.h
Line : 81
Description : dBodyStateValide(b)


Лечится это или нет?
это из-за контролера -рецепт лечения:


gamedata\config\creatures\m_controller.ltx


строка:
Max_Controlled_Count = 10;4
сделай:
Max_Controlled_Count = 0


И вот -переход на АС и вылет. Неизлечимый. (object 'khutor_zone2': section 'sr_idle1': field
'on_npc_in_zone': there is no object with story_id '719'). Эта же ошибка была, когда после отключения выжигателя

хотел вернуться на АС, поэтому тогда сразу на Припять пошёл. Так накрылся фриплей. Чего же
делать?


[/i
Я боролся с этой напастью так:


В логовском файле (та папка, где сейвы к игре) в самом низу прописывается fatal error. В последней строке
ссылка на файл g_script. И указывается строка с командой, которая вызывает вылет. Заходишь через
блокнот в этот файл в корневой папке script (сохранив данную версию куда-нибудь) и вырезаешь все
несколько строк с командой про крэш. Сохранился. Запустил игру с автосейва. Вылет. Опять открываешь
лог. Там будет ссылка (скорее всего ) на файл xr_logic. Повторяешь аналогичную операцию, как и с предыдущим.
Запускаешь игру с автосейва. У меня загрузились склады. Я все сделал на них. Потом перешел
на бар. Сохранился. вышел. Сохранил измененные скриптовые файлы и вернул сохраненные начальные
версии. Опять загрузился и пошел дальше. Ну а каждый раз заходя на склады менял скриповые файлы.
Это так по-слесарски. Хотя наверное есть и другие способы бороться с этой ошибкой.

Надоели вылеты из-за указанной выше строки (проблемы с вылетом 1121), а так как уже не раз говорилось,
что она сделана для диагностики, то я плюнул и отключил эту функцию -пусть что-то там не работает,
а игра не вылетает -всё равно оно не работает, а грузить игру опять надо.
В результате всю субботу пробегал в игру, не раз заходил на Припять, вот в воскресенья с обеда и до вечера
бегаю опять же по Припяти (выполняю задания Болотного Доктора и Сяка) и... ни одного вылета, ни
одной испорченной записи. Все записи сделанные на Припяти, после Припяти, переходы с Припяти работают.
Есть только вылеты без лога после непрерывной игры 1-2 часа, но после загрузки с последнего
сделанного сохранения -ручного или быстрого -неважно, игра спокойно продолжается. Скорее это косячит
мой NoDVD.

По-этому рассказываю, что я сделал -пробуйте, может и вам поможет:

1. находим файл _g.script
2. делаем его копию, на всякий случай, копируем его с именем _g.script.BAK
3. открываем его на редактирование и находим строку "function abort(fmt, ...)"
4. Видим пере собой строки:
function abort(fmt, ...)
local reason = (...==nil and fmt) or string.format(fmt, ...)
--assert("ERROR: " .. reason)
get_console():execute("load ~~~ " .. reason) get_console():execute("flush")
string.format("%s")
end
5. изменяем их следующим образом:
function abort(fmt, ...)
--local reason = (...==nil and fmt) or string.format(fmt, ...)
--assert("ERROR: " .. reason)
--get_console():execute("load ~~~ " .. reason)
--get_console():execute("flush")
--string.format("%s")
end
6. сохраняем и пробуем играть.
Если кому интересно, нашел решение проблемы с вылетом 1121 на милитари, где парой строчек выше
стояло


! Cannot find saved game ~~~ object 'khutor_zone': section 'sr_idle1': field 'on_npc_in_zone': there is no object
with story_id '710'


Вылет происходит, если на милитари уничтожено тело (например, в аномалии) Павлика (предателя свободы).


Чтоб не вылетало, надо подредактировать файл сохранения (обычно *_autosave.sav) в любом hex-редакторе.


Ищем там текст 710, затем из всех найденных смотрим тот, рядом с которым стоит sr_idle1 , on_npc_d или
нечто подобное, и это 710 заменяем на 500.
Пробуем играть. Если снова вылет, но уже с 709, то делаем то же самое, но уже для 709.
У меня пошло, вроде без глюков.


Постоянно без причины растет радиация.

Если при этом постоянно растет уровень радиации (особенно когда снят костюм) и остаются кровоподтеки
на стенах, когда стоишь возле них, после смерти ГГ камера периодически подёргивается --то это остаточная
радиация.

Проявляется при нахождении в "блокирующих" зонах повышенной радиации (на границах уровней и т.п.) и
переходе после этого на другой уровень (и, возможно, еще какого-то "удачного" стечения обстоятельств).
Такое было у меня с АМК 1.3.1.


По утверждениям знающих людей -баг оригинала. Очень часто проявлялся на "чистой" игре при переходе
со Свалки на Агропром и со Свалки на Кордон.
На оф. форуме много по этому поводу написано, большинство предложений -начать игру заново.


По памяти могу описать где-то почерпнутое решение, которое мне помогло:
1) извлечь из архивов gamedata.*** файл xr_detector.script (он не использовался в АМК 1.3.1, поэтому в
папке gamedata с модом его нет) -в данном файле в том числе описаны процедуры сохранения и загрузки
уровня радиации, полученной при нахождении в этих "блокирующих" зонах;


2) изменить процедуру загрузки ранее сохраненного уровня радиации так, чтобы этот уровень заражения
не загружался (закомментить несколько строк);

3) измененный файл поместить в нужное место папки gamedata;
4) загрузить сохраненную игру -при этом уровень радиации не загружается, далее всё должно быть нормально.


При этом уровень обычной радиации нормально сохраняется-загружается. Если теперь сохранить игру и
вернуть оригинальное содержимое файла xr_detector.script, то остаточной радиации уже не будет. По
крайней мере, до следующего "удачного" стечения обстоятельств.


Лечение вылетов с неправильным именем текстуры (пример):

Can't find texture -игра не может найти текстуру с указанным именем.
В данном случае у тебя нет текстуры сетки прицела с именем "l-85-amk-t"
Идешь по пути: ...S.T.A.L.K.E.R\gamedata\textures\wpn
Ищешь файлик с похожим именем, там обычно последняя буква отличается, и копируешь с в ту же папку с требуемым именем "l-85-amk-t". 

Категория: Моддинг | Добавил: Hardtmuth (13.07.2012)
Просмотров: 10874 | Рейтинг: 2.8/4
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

Меню сайта

Свежие прохождения






Категории раздела

Мини-чат

Поиск

Статистика

Онлайн всего: 55
Гостей: 55
Пользователей: 0


Сегодня посетили:













Форма входа


Войти Зарегистрироваться