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

Шпаргалка AMK: Основы

Общая информация


Введение

ШПАРГАЛКА (ver. 6)
по "ковырянию" сталкера с модом АМК


Сей документ составлен из вопросов и ответов пользователей форума.


Составил: @n6260
Оформил: @Виталий Зверь


Как найти лог вылета?

Сразу после вылета открыть любой текстовый редактор и выбрать в меню "правка" (или в контекстном меню по правой кнопке мышки) пункт "Вставить".
Полученный текст и будет логом вылета. Или же смотрим последние строки в текстовом документе по пути:
C:\Documents and Settings\All Users\Документы\STALKER-SHOC\logs (т.е. общие документы\папка Сталкер)
ВНИМАНИЕ! Перед всеми издевательствами и добавлении новых модов\аддонов в игру советую делать бэкап папки "геймдата".


Софт для ковыряния

Софт для "ковыряния"
 
Программы для работы с файлами игры (чем пользуюсь я). Все эти программы\утилиты можно найти на сайтах посвященных игре Сталкер, сайтах комп. софта и в интернет-поисковиках :
1.Total Commander – файловый менеджер (+прекрасно ищет файлы с указанным куском (словом) текста)
2.Любой текстовый редактор (блокнот) (я пользуюсь Notepad++ и EmEditor)
3. Araxis.Merge.Professional.2007 – Программа для сравнивания двух текстовых файлов (поддержка кучи форматов  + всякие навороты)
4.Фотошоп с плагином DDS (для просмотра\редактирования текстур)
5.Архиваторы Win RAR и 7-Zip (эти распакуют и запакуют что угодно)
6.Нех-редактор xvi32 (или любой другой, для более глубокого «ковыряния»)
7.Ltx Editor (правим патроны, предметы, броню и прочее)
8.STALKER_Data_Unpacker – утилита для распаковки файлов игры
9.iconviewer – определяет координаты иконки.
10. xrSpawner - Программа для редактирования all.spawn игры S.T.A.L.K.E.R. (честно скажу – не пользовал – но на всякий случай упоминаю).
11. X-Ray SDK – многофункциональная прога от разработчиков для серьезного «ковыряния»  игры S.T.A.L.K.E.R.
12.S.T.A.L.K.E.R. utilities pack - Пакет утилит для разработчика модификаций игры S.T.A.L.K.E.R. (сам не использовал, но перечень «комплекта» впечатляет)
13. Beepa.Fraps.v2.9.4 – для учета FPS и видеозаписи игрового процесса (работает не только со Сталкером).
14.Ну и для работы со звуком – хороший звуковой редактор...
Вроде все перечислил... Есть еще всякие другие утилиты, но мне хватает этого набора...


Структура основных папок и файлов

Структура основных папок и файлов

Структура папок и файлов в корневом каталоге игры:

...\S.T.A.L.K.E.R\gamedata\anims – папка содержит исполнительные файлы эффектов (например от ПНВ).

...\S.T.A.L.K.E.R\gamedata\config – папка содержит основные конфигурационные файлы (т. е. большинство настроек игры)

...\S.T.A.L.K.E.R\gamedata\meshes – содержит модели игровых предметов и персонажей...

...\S.T.A.L.K.E.R\gamedata\scripts – папка со скриптами (рабочими файлами содержащими в себе наборы функций) – основная папка, отвечающая за ответные действия игры и действия производимых игроком в игре.

...\S.T.A.L.K.E.R\gamedata\shaders – папка содержит в себе конфигурационные файлы шейдеров.

...\S.T.A.L.K.E.R\gamedata\sounds – здесь находятся все звуки игры (разложены по своим каталогам и папкам)

...\S.T.A.L.K.E.R\gamedata\spawns – содержит файл спавна – очень важный файл – не трогать без нужды!!!

...\S.T.A.L.K.E.R\gamedata\textures – содержит разложенные по каталогам и папкам текстуры используемые в игре.

              Теперь разберем папки в каталоге «config»

          ...\S.T.A.L.K.E.R\gamedata\config\creatures  - содержит массу конфигурационных файлов, в основном отвечающих за взаимодействие Главного героя игры (в дальнейшем ГГ) и прочего окружения в игре и ТТХ самого ГГ.

          ...\S.T.A.L.K.E.R\gamedata\config\gameplay – содержит конфиг. файлы персонажей игры (НПС) отвечающие за внешний вид, статус, снаряжение.
Файлы: character_desc_ххх (где ххх – название локации) и character_desc_general (отвечает за зомбированного персонажа).
Также содержит файлы диалогов и профилей НПС.

           …\S.T.A.L.K.E.R\gamedata\config\misc – конфиг.файлы торговцев (папки с именами торговцев), артефактов, брони, квестовых предметов, уникальных предметов, файл отвечающий за награды за автозадания, файл эффектов (алкоголизма, ранения, ПНВ и прочих)...

           …\S.T.A.L.K.E.R\gamedata\config\mp – среди прочих содержит важный файл mp_ranks – отвечающий за выпадение оружия и патронов из рук ГГ и НПС – без прописывания добавляемого в игру оружия в этот файл при выпадении нового оружия из рук ГГ\НПС будут следовать вылеты.

           …\S.T.A.L.K.E.R\gamedata\config\text\rus – содержит файлы описаний всего и вся находящегося в игре (брони, артефактов, оружия, предметов и прочего).

           …\S.T.A.L.K.E.R\gamedata\config\weapons – содержит конфиг.файлы оружия и боеприпасов используемых в игре.

            …\S.T.A.L.K.E.R\gamedata\config\weathers – содержит конфиг.файлы настройки погоды на локациях.

                Теперь немного подробнее о файлах.

...\S.T.A.L.K.E.R\gamedata\config\misc:

Папка amk_artefacts – содержит конфиг. файлы модификатов (модифицированых артефактов).

Папка shop_ххх (ххх – имя торговца) – содержит конфиг.файлы ассортимента торговца.

amk_mod_outfits – содержит секции конфигов костюмов от АМК-тайм.

artefacts -  содержит секции конфигов артефактов.

items -  содержит секции конфигов предметов.

monster_items - содержит секции конфигов частей монстров

outfit -  содержит секции конфигов костюмов.

postprocess -  содержит секции конфигов пост. процессов (например: ПНВ).

quest_items  -  содержит секции конфигов квестовых предметов.

task_manager -  содержит секции наград за автоквесты.
0
unique_items -  содержит секции конфигов уникального оружия и костюмов.


Вылеты и баги

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

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

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

Можно так открыть:
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".


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