Expression m error code

Рекомендуемые сообщения
  • Назад
  • 1
  • 2
  • 3
  • 4
  • 5
  • Далее
  • Страница 2 из 5  

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

 

image.png

Автор оригинала: BozKurt
Ссылка на тему на архивном сайте: Ссылка

Тема-справочник по вылетам S.T.A.L.K.E.R в большей степени ориентирован на чистый ТЧ, но в большинстве случаев причина и решение вылета одинакова для всех частей. Информация собиралась со всего интернета, посему указывать источники не вижу смысла, если кого обидел — прошу прощения.

Спойлер

Файл лога находится в папке которая указана в качестве параметра «app_data_root» в файле «fsgame.ltx», который находится в корневой директории игры.

$app_data_root$=true|false| C:|Documents and SettingsAll UsersDocumentsSTALKER-SHOC

В конце файла *.log, в случае вылета, после строк FATAL ERROR сохраняется описание ошибки (к сожалению в большинстве случаев не совсем очевидное), по которой можно попытаться определить причину вылета и исправить её.

Если же после вылета *.log файл пуст, то определить причину вылета становиться практически невозможным.


Спойлер

Открываете поиск в браузере на «Ctrl+F» и введите неизменяемое выражение из строк вылета.

Например, если у Вас в логе ошибка: Can’t find texture ‘actact_corp_monolit’, то не нужно вводить в поиске название текстуры, с 99% гарантией говорю, что таковой здесь нет, из-за чего поиск ничего не найдёт. Введите выражение «Can’t find texture» — это движковая запись и она никогда не изменится. Тоже самое касается остального: моделей, звуков, шейдеров, партиклов, имён файлов, функций и секции и т.д.

Либо Вы можете просмотреть все вылеты подряд. Для облегчения поиска вылеты расположены в порядке возрастания значения строки Line в логе.


Спойлер

НЕ ЗАХЛАМЛЯЙТЕ ТЕМУ!
В ином случае, администрации придется принять меры!

  • Пожалуйста, если Вы наткнулись на вылет, которого нет в данной теме — не поленитесь сообщить об этом здесь. Возможно кому-то в дальнейшем это поможет решить свою проблему.
  • Прошу не писать в данной теме уже те вылеты, которые здесь есть, по причине того, что Вы не понимаете чего-то.
  • Не нужно писать сюда и посты с тем, что у Вас вылетает какой-то мод, с каким-то логом. Зачастую такой вылет скриптовый и никому кроме Вас он не нужен, лучше будет, если Вы обратитесь к разработчикам данного мода.
  • Не нужно писать всякие любезности, для этого есть личка.

Внимание! Данный справочник не гарантирует того, что Вы найдёте решение проблемы (хотя я на это очень надеюсь), так как указанные причины и способы лечения могут не соответствовать истинной причине вылета.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Злобная реклама

 

Vodka Все, спасибо, навел меня на мыслишку. Я все исправил, теперь вылетает другой лог, связанный с логикой, сейчас посмотрю и попробую с ним сделать что-нибудь 


Дополнено 8 минуты спустя


Дополнено 15 минуты спустя

Vodka Я извиняюсь, но есть еще какая-то дичь, я не знаю с чем это связано, в скриптах у меня 5 файлов — это pda, sim_board, smart_terrain, surge_manage, xr_effects

[error]Expression    : !m_error_code
[error]Function      : raii_guard::~raii_guard
[error]File          : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
[error]Line          : 748
[error]Description   : …l.k.e.r — call of pripyatgamedatascripts_g.script:263: bad argument #1 to ‘gfind’ (string expected, got nil)

ВОЗМОЖНО это что-то про место для сна или что-то там с выбросами, есть идея?


Изменено 23 сентября, 2021 пользователем BadTrip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

BadTrip если _g.script оригинальный зп-шный — что-то неправильно передается в общую функцию parse_names. Тут только искать ее вызов по файлам и по внесенным ранее правкам предполагать, что именно может неправильно передаваться. Или вообще всё проверять


Изменено 23 сентября, 2021 пользователем vader_33


  • Жму руку


    1


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

BadTrip «gfind» это какие-то очетяпки в логике. Я встречал такое с НПС, когда не правильно писал стартовую секцию логики в [exclusive], и она не совпадала с той что идёт в логике. То что ответил vader_33 думаю не должно касаться тебя, ибо тут идёт проблема с которой ты наврятли взаимодействовал.


  • Лайк


    1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

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

«gfind» это какие-то очетяпки в логике

это может быть что угодно, string.gfind — стандартная луашная функция с поиском, она именно к логике не привязана. Если помнишь, что ковырял до вылета — хорошо, а если давно ничего не ковырял, и вылетело — надо уже искать вызов функции, в теле которого этот вылетающий string.gfind. Так-то parse_names, который вылетел, вызывается и с биндера аномальных зон, и с death manager, и с dialog manager, много где, из-за разных правленых конфигов может такой вылет быть, не только из-за логики

Поэтому, BadTrip , лучше писать, что именно делали до вылета


  • Лайк


    1


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

vader_33 Vodka  Ну вообще я недавно понял в чем проблема, я просто удалял с карты в сдк все, что могло бы вызвать ошибку. В итоге я пришел к выводу что дело в аномальной зоне. Но я не понимаю какого чёрта! Вроде как, я делал все правильно. И возникал еще один странный вылет связанный с вэй поинтами. Я расставлял эти вэи для бандитов, в том числе и в зданиях, но когда я подходил к точке с бандитами — игра вылетала! И это точно из-за их вэйпоинтов, так как когда я просто убрал их всех, то все было стабильно. И я вообще не понимаю, почему нпс не могут зайти в здание и встать на свою точку? В чем может быть причина такого поведения? Япока не могу скинуть лог, как будет доступ — я дополню сообщение.

Вот лог по вылету от вэйпоинтов 

[error]Expression    : !m_error_code
[error]Function      : raii_guard::~raii_guard
[error]File          : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
[error]Line          : 748
[error]Description   : ….e.r — call of pripyatgamedatascriptsutils.script:355: attempt to perform arithmetic on local ‘t_pos’ (a nil value)

Это фактическая ошибка какая-то?
 


Изменено 26 сентября, 2021 пользователем BadTrip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

BadTrip не особо разбираюсь в путях и сдк, судя по скрипту — ошибка в названии, там что-то должно писаться через знак «=», вот что-то с ним. Лучше спрашивать в ковырялке cop или в теме по сдк, тут все-таки справочник


  • Мастер!


    1


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Я все поправил и поисправлял, но возникла еще одна проблема. При убийстве какого-то нпс вылетает игра. (в дополнение скажу что я добавил и  прописал 2 новые группировки) Такой лог:

[error]Expression    : !m_error_code
[error]Function      : raii_guard::~raii_guard
[error]File          : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
[error]Line          : 748
[error]Description   : …all of pripyatgamedatascriptsdeath_manager.script:150: attempt to index field ‘?’ (a nil value)

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

8 часов назад, BadTrip сказал:

И да, я заходил в этот файл и прописал там 2 моих новых группировки

в death_manager.script в «local community_list»? В файл configsmiscdeath_items_by_communities.ltx добавляли группировки?


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

vader_33 Я прописал death_manager.script вот так: local community_list = { «stalker», «dolg», «freedom», «bandit», «army», «zombied», «ecolog», «killer», «monolith», «clear_sky», «renegat» }

В death_items_by_communities.ltx  я тоже прописал. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

BadTrip похоже, в death_items_count.ltx ошибка


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

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

Та же ошибка

Но вот дело в том, что я проверял как и на смартах с эксклюзивными нпс так и с обычными, вот я пришел на другой эксклюзивный смарт и там ошибка такова

Expression    : !m_error_code
Function      : raii_guard::~raii_guard
File          : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
Line          : 748
Description   : … — call of pripyatgamedatascriptsstate_mgr.script:489: attempt to index field ‘?’ (a nil value)


Изменено 29 сентября, 2021 пользователем BadTrip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

BadTrip это не из-за группировок. Со сложностями игры что-нибудь делали? Или может с оригинальными секциями предметов (редактировали название секции или вообще убрали)

12 часов назад, BadTrip сказал:

state_mgr.script:489: attempt to index field ‘?’ (a nil value)

что-то с анимацией, может неправильную указали. Лучше в этой теме спрашивайте, раз сюда никто не заходит https://ap-pro.ru/forums/topic/92-cop-modostroy-voprosnica/


  • Спасибо


    1


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 


  • Спасибо


    1


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

В 30.09.2021 в 01:49, BadTrip сказал:

Description   : … — call of pripyatgamedatascriptsstate_mgr.script:489: attempt to index field ‘?’ (a nil value)

Скорее всего state_name == nil! Неправильная передача анимации, возможна синтаксическая ошибка в state_lib, а также проблемы с планировщиком или некорректная логика. Попробуйте раскомментировать abort

В 29.09.2021 в 04:12, BadTrip сказал:

[error]Description   : …all of pripyatgamedatascriptsdeath_manager.script:150: attempt to index field ‘?’ (a nil value)

Аналогично! Будет больше информации по вылету, если раскомментировать abort в _g.script


Изменено 2 октября, 2021 пользователем Mass


  • Жму руку


    1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Здравствуйте еще раз! Я очень долго пытался практиковаться, делать заселение, в итоге, у меня начало получатся, но вот с квест нпс или там, механиками, торговцами, медиками у меня проблема каждый раз…

Expression    : !m_error_code
Function      : raii_guard::~raii_guard
File          : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
Line          : 748
Description   : ….e.r — call of pripyatgamedatascriptsutils.script:469: bad argument #1 to ‘gsub’ (string expected, got nil)

Это же у меня ошибка в коде какая-то? Если да, то мне бы по подробнее узнать как найти корень проблемы. Делал по гайду одного создателя модов, я, наверное, 5 раз переделываю. НО ЭТОТ ЛОГ ВЫСКАКИВАЕТ КАЖДЫЙ РАЗ КОГДА Я НАЧИНАЮ НОВУЮ ИГРУ. Что бы я не делал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

BadTrip а ты каждый шаг проверяешь? Примерно после чего появляется вылет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

27 минут назад, BadTrip сказал:

utils.script:469: bad argument #1 to ‘gsub’ (string expected, got nil)

По логу можно прочитать что игра не понимает /не находит значение #1 у параметра gsub в файле utils.script. Либо сам параметр gsub понять не может. Копай где-то там



ASUS z87-k, I5-4670 @3.40GHz, MSI GTX 1050ti, 16gb ОЗУ, SSD 100gb, 2xHDD 500gb,
Windows 10 Pro. Аномали на ультрах летает. Вместе с компом по комнате.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

AziatkaVictor Ну про каждый шаг скорее частично, потому что я в последний раз вообще все названия смартов с гайда взял. Ну то есть проблемы типа «неправильно расположил файл» не должно быть. Синт. ошибка, возможно, но, маловероятно, ведь я копирую и вставляю просто. Вылет происходит когда я начинаю новую игру, проходит сек. 2 — 3 и вылет, но игра хоть запускается. И странно то, что эта ошибка всегда была, я не думаю, что просто могу ошибиться в одном месте несколько раз… Но все возможно. Если бы у меня был доступ к рабочим файлам с нпс, я бы тестировал и сравнивал свои файлы нпс и другие, но нигде таковых я не нашел.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

В 26.11.2021 в 04:22, BadTrip сказал:

Description   : ….e.r — call of pripyatgamedatascriptsutils.script:469: bad argument #1 to ‘gsub’ (string expected, got nil)

Ошибка в логике нпс, скорее всего, неправильно указали активную схему. Потому что в xr_logic.activate_by_section section равна nil. 


  • Жму руку


    1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Mass Ну, я раньше не оформлял схемы, так что я даже не знаю, где может быть ошибка, но делал по гайду, вот так выглядит схема одного из нпс, схема — walk :

[logic@esc_exclusive_smart_medic]
active = walker@esc_exclusive_smart_medic
suitable = {=check_npc_name(esc_exclusive_smart_medic)}true
prior = 90
level_spot = medic
trade = misctradetrade_esc_exclusive_smart_medic.ltx

[walker@esc_exclusive_smart_medic]
path_walk = medic_walk
path_look = medic_look
meet = meet@esc_exclusive_smart_medic
combat_ignore_cond = true
combat_ignore_keep_when_attacked = true
invulnerable = true
gather_items_enabled = false
help_wounded_enabled = true
corpse_detection_enabled = false

[meet@esc_exclusive_smart_medic]
close_anim         = nil
close_victim     = nil
far_anim         = nil
far_victim         = nil
close_distance     = 0
far_distance     = 0
use = {=actor_enemy} false, {=dist_to_actor_le(3)} true, false
snd_on_use = {!dist_to_actor_le(3)} nil
meet_on_talking = false

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

А где сам смарт? Также пути проверьте. Да проще,  раскомментируйте  сточки printf в xr_logic.activate_by_section и скиньте мне лог в лч

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Добрый день. 

Столкнулся с проблемой вылета при подгрузке нового, добавленного мною, оружия в инвентаре торговца в ОП-2.2 

Перекапал тонну форумов с проблемой, но в данном логе видимо что-то не совсем конкретное. Я бы написал в AMK форум, но там все такие злые когда ошибаешься и пишешь не по теме форума.

 Кароче. 

Expression    : fatal error
Function      : CInifile::r_section
File          : Xr_ini.cpp
Line          : 397
Description   : Can’t open section ‘%s’
Arguments     : wpn_sayga12_sk2

Вроде бы добавил сайгу из ООП, вроде бы все идентити, дескрипшены, партикли проверил на наличие. Сделал всё по инструкции которую мне скинули, но что-то упустил. 

Буду признателен всем тем, кто хоть чуть продвинет в этом вопросе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 


В беге за рассветом приближаешь свой закат

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

vader_33 в арсенал мод добавлял (shotguns), так как текст отвечающий за описание именовался как арсенал, а другого не было. Если про то разговор. Просто не совсем понимаю, что такое секция.


Изменено 25 февраля, 2022 пользователем Kankasev

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • Назад
  • 1
  • 2
  • 3
  • 4
  • 5
  • Далее
  • Страница 2 из 5  

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Войти

Уже есть аккаунт? Войти в систему.

Войти

Содержание

  1. Причины вылетов игры (разбираем логи)
  2. Материал из S.T.A.L.K.E.R. Inside Wiki
  3. Безлоговый вылет
  4. Error expression m error code

Причины вылетов игры (разбираем логи)

Материал из S.T.A.L.K.E.R. Inside Wiki

Привет всем! Игра S.T.A.L.K.E.R., а конкретно сам движок X-Ray довольно капризный, и зачастую как в процессе модификации, так и во время игры игра «вылетает». Чтобы мы знали причину вылета, движок нам оставляет лог вылета. Лог вылета можно посмотреть несколькими способами:

  • В текстовом редакторе нажать Ctrl+V (Вставить)
  • Посмотреть лог игры включая лог вылета в файле xray_имя_пользователя.log в папке C:Documents and SettingsAll UsersДокументыSTALKER-***logs
  • Посмотреть непосредственно в окне багтрекера (только в ЧН и ЗП).

Ну приступим. Начнём с простых:

Здесь игра не может открыть звуковой OGG-файл под названием sound в папке d:stalkergamedatasoundsmusic

Не может найти текстуру act_corp_monolit из папки texturesact

Не найдена трёхмерная OGF-модель mesh.ogf из папки meshesphysics.

Не найдена система частиц (партикл) hit_water_00 в директории hit_fx файла particles.xr (подробно опишу позже).

Не установлен интервал (время) проигрывания группы/эффекта партиклов. В Particle Group -> End Time(s) укажите время, через которое частицы должны исчезнуть. Заодно проверьте particle effect -> Kill Old -> Age limit.

Не найден шейдер modelsantigas_glass в библиотеке шейдеров.

Тут проблема вся в том, что неправильно закомпилился шейдер, при компиляции уровня на качестве, более высоком чем Draft. Нужно скачивать исправление шейдеров от товарища Haron. Для ЗП (ЧН) это может ещё быть из-за отсутствия thm-ок для текстур террейна уровня!

Нехватка оперативной памяти.

Неправильно настроены шейдеры. В настройках шейдера, во вкладке R2-A поставьте текстуру, которая вдальнейшем будет накладываться на террейн.

Не найдена переменная ammo_mag_size в секции [wpn_addon_grenade_launcher].

Переполнение стека. Смотрим внимательно: lua_error. Ошибка, возможно, в скриптах.

Какая то вершина (вейпоинт) пути sniper_3_walk стоит в неположенном месте (например не на аи-сетке). Объект stalker_0002 (в данном случае сталкер) который якобы двигался по пути sniper_3_walk попал на эту точку, а заодно ушёл за аи-сетку. Этого движок не терпит.

То же самое произойдет если координаты(вейпоинт) пути sniper_3_walk совпадет с координатами места, где НПС запрещено находиться, будь то рестриктор или аномалия в схеме обхода аномалий. Также этот вылет наблюдается при попытке отправить НПС за пределы места работ параметр out_rest = «имя_рестриктора» в файле загрузки работ гулага. Попробуйте любого сталкера из лагеря новичков отправить, допустим, к остановке — получите этот самый вылет.

Возникают иногда произвольно при смерти неписей. Причина — движок, отрабатывая лут, изредка теряет серверный объект уничтожаемой вещи, в итоге происходит вылет.

Ошибка распространённая. На первый взгляд кажется, что ошибка как раз в скриптах, но всё может быть иначе. В одной из пиратских версий игры этот вылет наблюдается особенно часто из-за криво модифицированного файла «XR_3DA.exe». Если же вы уверены, что у вас лицензионная версия игры, можно попробовать сделать так: открываем файл _g.script блокнотом, закомменчиваем 20 строку (ставим перед строкой —) и идём к тому месту где поймали вылет. Так мы получим более развёрнутый ответ.

Участник: Призрак: Автор прав в том что вылет очень распространен, но так его исправлять нельзя, так как nil передается в эту функцию только при каком-то форс-мажоре. Поэтому необходимо перейти в _g.script в функцию printf и перед log1(string.format(fmr. )) дописать: get_console():execute(«load «..fmt). После этого запустить еще раз игру и посмотреть при передачи какой строки игра вылетает. Потом найти эту строку в скриптах игры и прикинуть почему аргумент (у нас это аргумент №2 (bad argument #2)) равен nil. Возможность такового вылета из — за слишком быстрой скорости актера, слишком высокому прыжку. (Редактировать: config/creatures/actor.ltx)

Проблема возникает при убийстве НПСмутанта. Типичный вылет по нехватке ресурсов. Встречается в основном на больших локациях. Но не на всех. На болотах из ЧН такой вылет встречается, а вот с локации aver от Кости V такого вылета нет. Однако для данного вылета есть таблетка, в виде правленого экзешника. Искать на АМК-форуме.

Неправильный визуал (модель) НПС.

В диалоге esc_dialog нет доступной для отображения фразы (скажем, все заткнуты инфопоршенами).

Игра не нашла в модели трёхмерную анимацию с именем death_init.

Причина вылета в том что игра не понимает значения 0 в danger_ignore.Проще говоря в логике какого то персонажа параметр danger_ignore = 0 либо в минусовом значении. Либо его вообще нету

P.S. Также может быть причина в том, что в логике у какого-то АИ что-то неправильно указано. Для исправления рекомендую вставить строчку перед 116: get_console():execute(self.object:name()). То имя в логе, которое будет последним после вылета, указывает на персонажа с кривой логикой.

Не найден класс персонажа. Возможно, НПС не прописан под своим классом в gamedatanpc_profile.xml, либо в creaturesspawn_section.ltx, либо в gameplaycharacter_desc.xml

Игра не может найти секцию. Это может быть предмет, НПС и многое другое. Возможно, вы написали название с ошибками. Либо когда добавляли его в: продажу, скрипт, НПС , выпадение из НПС, а в редких случаях это может быть иммунитет чего либо(определить потом трудно). Часто такое бывает связано с названием секции.

Не найдена переменная remove_time в секции [vehicle_btr]. А в данном случае ошибка в том что если вы делали предмет как физическую модель(то бишь, которую нельзя использовать, говорить и вообще он похож на декорации типа деревьев, столов и прочего хлама) то необходимо указывать remove_time в его секции.

Метод обращения в игре не предусмотрен. Возможно, стоит пересмотреть подход к тому или иному скрипту.

На мультиплеерной карте не найдены точки респавна игроков. В SDK должен быть красный пацанчик. Настроить Team = 0

Такое иногда бывает, когда ты (ГГ) или НПС заряжает дробовик или другое оружие со значением tri_state_reload = true. Это глюк. в игре что-то сбивается, и когда у дробовика максимальное количество заряженных патронов скажем 6, он заряжается за 6 и дальше.. дальше.. дальше.. и так пока не произойдёт вылет с вышеуказанным логом. вылет не значительный и редкий, но если он случается слишком часто, можно в конфигах всех дробовиков и ружей поменять значение tri_state_reload = true на tri_state_reload = false.

Такой лог бывает когда подключаешь локацию из ТЧ в ЗП. Причина проста — в ЗП уровнях файл строчка bound_rect пишется в файле gamedatalevelsимя_уровняlevel.ltx, а в ТЧ строка bound_rect для каждого уровня непосредственно в файле gamedataconfiggame_maps_single.ltx .
Исправить просто, нужно изменить файл gamedatalevelsимя_уровняlevel.ltx в подключенной локации, просто перенести строку bound_rect из game_maps_single.ltx в level.ltx перед строчкой texture.

Случается когда одна из dll некорректна. Например такой вылет бывает если подсунуть в ТЧ 1.0004 xrGame от 6 патча.

Вылет встречается только на 6 патче при попытке хаванья из трупа. Ищите, исправленную Kolmogor’om, xrGame.dll в Интернете

Данный вылет бывает когда у какого либо из объектов установлено некорректное значение (читал, сам не получал его) Или же если данный вылет происходит при вызове класса, то проблема в том что в методе __init() класса прописано super()

Вылет происходит в двух случаях — когда скрипт пытается вызвать функцию из несуществующего файла или когда в файле допущена синтаксическая ошибка.

Происходит при попытке вызвать класс, которого не существует

Небольшой пример из практики по определению ошибки в особых случаях(для начинающих): Игра зависла, картинка на экране не меняется, на Ctrl + Alt+ Delete не реагирует. Только «Холодная перезагрузка» reset. Но при этом обычно в логе нет записи и обычным Ctrl + V ошибку не увидеть. Я пользуюсь программой Punto Switcher. Есть в ней опция «дневник», она ведёт запись всех нажатий клавиш и по нажатию сочетаний клавиш содержимое памяти может записывать в дневник. теперь когда игра зависла и картинка на экране не меняется, нажимаете Ctrl + Alt+ Delete. Внешне ничего не изменится, но ОС будет реагировать на клавиши, нажимаете сочетание клавиш «записать в дневник». Делаете перезагрузку, открываете дневник — Ваша ошибка записана. «дядя Саша»

Возникает при создании или добавлении чужих артефактов. В artefacts.ltx, в секции af_base есть параметр particles_bone=link. Это имя косточки, которая принимается за центр при проигрывании партикла. Если кость в артефакте называется по иному, например joint2, и это не указанно в секции нового арта, которая наследуется от базовой и подразумевает естественно наличие link, получаем вылет. Решается конвертированием модели арта в .object, просмотром в sdk и выяснением имени косточки с занесением в конфиг.

Вылет заканчивающийся строкой, то что выше не указываю роли не играет, здесь роль играет только «bad argument #3». Если это появилось значит у Вас ошибка в файле с расширением .ltx (обращаю внимание, не путать с файлами .script), которая находится между [. ] квадратными скобками в файле. Это может быть секция предмета, секция логики, секция пути файла way_, т.е. там где присутствуют квадратные скобки.

Скорее всего, отсутствует файл level.ai. Возможно после правки уровня в SDK и компиляции AI, вы забыли его скопировать в папку уровня. Важно помнить, что level.ai нужно обновлять для всех уровней, а не только для тех, которые подвергались правке.

Безлоговый вылет

Вылет, при котором лог отсутствует. Причины такого вылета:

1. Безлоговые вылеты бывают в основном из-за завышенных настроек видео.

Решение: В папке с игрой открыть папку gamedata, папку config, в ней файл alife, открыть любым текстовым редактором (блокнотом, или лучше word pad’ом) и найти строку switch distance = и изменить значение на 5, сохранить изменения. Это только одна (не сильно вероятная) причина безлогового вылета. если вы знаете ещё одну причину, пожалуйста напишите здесь.

2. Вторая причина неправильно указано название пути в логике НПС или он полностью отсутствует в файле way_ all.spawn. Вылетать будет когда дойдёт время до спавна этого НПС.

3. Также, безлоговые вылеты происходят из-за ошибок в диалогах.

Источник

Error expression m error code

Что такое LOG ошибки, и как его найти?

Это система отладки происходивших вылетов, которая подается игрой в форме текста, хотя не всегда.
Для того чтоб найти LOG необходимо зайти вот сюда:

C:Documents and SettingsAll UsersДокументыS.T.A.L.K.E.R. — Зов Припятиlogs

Затем открываете первый файл в формате TXT, и в нем отбираете с низу 25 строчек. После кидаете эти 25 строчек в сообщение на форум.

C:UsersPublicDocumentsS.T.A.L.K.E.R. — Зов Припятиlogs

как вариант: если по указанным адресам вы не нашли папку с логами, то вбейте в поисковике своего компьтера слово logs или logs*, и если эти данные имеют место быть, поисковик выдаст вам все адреса нахождения этих данных. останется выбрать только тот который необходим.

Если вы играете на статическом освещении, и игра, мягко говоря, подтормаживает — установите поверх мода — мод NO BUMP, от Celdor

Игра будет идти практически без тормозов, почти как в оригинале, но ценой отключенных аномалий мода, и мин-ловушек.

Ошибка: * [win32]: free[65320 K], reserved[98608 K], committed[1933160 K]
* [ D3D ]: textures[687435 K]
* [x-ray]: crt heap[454760 K], process heap[9774 K], game lua[60032 K], render[5882 K]
* [x-ray]: economy: strings[54097 K], smem[11933 K]
FATAL ERROR
[error]Expression : fatal error
[error]Function : out_of_memory_handler
[error]File : D:prog_repositorysourcestrunkxrCorexrDebugNew.cpp
[error]Line : 336
[error]Description :
[error]Arguments : Out of memory. Memory request: 3629 K
Причина: Нехватка оперативной памяти
Когда возникает: В любой момент игры при увеличении количества обрабатываемых объектов: Загрузка сохранений, Переход между локациями, Приближение к местам с большим количеством NPC (Скадовск, Янов и тд), .
Решение: Windows XP 32 bit
1. На системном диске находим и открываем блокнотом файл boot.ini.
Файл системный, поэтому будет скрыт, необходимо будет в свойствах
проводника включить отображение системных файлов.
2. Сделайте копию boot.ini, откройте файл boot.ini, выберите «Сохранить как», имя файла boot.ini.bak.
3. С командной строки (зайти в «Старт Меню»->«Выполнить. » или нажать Win+R) выполните команду:
bootcfg /raw «/3GB /userva=2500» /A /ID 1
где «1» — это номер конфигурации в файле boot.ini. По умолчанию есть всего одна конфигурация.
Если вы продвинутый пользователь, то параметры «/3GB /userva=2500» можно добавить самостоятельно
в файл boot.ini с помощью текстового редактора.
4. После применения настроек необходимо перегрузить компьютер.
В случае неудачи с загрузкой ОС, придётся зайти в безопасном режиме и восстановить настройки из
бекапа, просто переименовав файл boot.ini.bak в boot.ini

Windows Vista/Seven 32bit:
1. Запускаем командную строку (cmd.exe) с привилегиями администратора (правой кнопкой по ярлыку/запуск от имени администратора). В появившемся окне пропишите:
bcdedit /export «C:BCDBackup»
нажать «enter»
bcdedit /set IncreaseUserVa 2500
нажать «enter».
2. Перезагрузить компьютер.
3. Запускаем игру.
Если ОС удачно не загрузилась, придётся зайти в безопасном режиме и выполнить первый
пункт прописав в командной строке:
bcdedit /import «C:BCDBackup»

Ошибка [error]Expression : data
[error]Function : CVirtualFileReader::CVirtualFileReader
[error]File : D:prog_repositorysourcestrunkxrCoreFS.cpp
[error]Line : 545
[error]Description : d:program filesgsc world publishings.t.a.l.k.e.r. — Зов Припятиgamedataspawnsall.spawn
[error]Arguments : Not enough storage is available to process this command.
Причина «Недостаточно ресурсов для выполнения команды». Применительно к «Зову Припяти» — Менеджеру Памяти ОС WINDOWS не удается выделить память из выгружаемого пула.
Когда возникает На любой локации., При повторной загрузке игры., . [
Решение 1. Увеличить размер выгружаемого пула памяти.
2. Сократить объем заполнения пула, после чего , Менеджер Памяти начнет урезать память.
Для решения проблемы делаем следующее:
(зайти в «Старт >«Выполнить. »)
Запускаем REGEDIT (Редактор реестра).
Идем по адресу:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory Management
Устанавливаем максимальный размер пула в 4 Гига.
«PagedPoolSize»=dword:ffffffff
Урезаем память при заполнении пула на 40 %. (По умолчанию установлено 80%).
«PoolUsageMaximum»=dword:00000028

Перезагружаем компьютер. Проблема должна быть решена.
P.S Если нет строчки «PagedPoolSize» , то её нужно создать самому

raii_guard
File : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
Line : 748
Description : . a.l.k.e.r. — Зов Припятиgamedatascripts_g.script:4413: attempt to index local ‘file’ (a nil value)
Причина Изменен метод сохранения переменных. Если игра установлена на Системном диске и запускается с правами Пользователя, Система блокирует доступ игры к ресурсам системного диска.
Решение Запустить игру от имени Администратора: Ярлык запуска — «Свойства» — «Совместимость» — Поставить галочку «Выполнять эту программу от имени Администратора».
Либо установить игру на неСистемный диск.

Ошибка FATAL ERROR

[error]Expression : !m_error_code
[error]Function : raii_guard::

raii_guard
[error]File : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
[error]Line : 748
[error]Description : . r. call of pripyatgamedatascriptssgm_utils.script:102: attempt to compare number with nil
Причина Изменен метод сохранения переменных.
Когда возникает После переустановки игры.
[cut noguest=Лечение]Перед переустановкой надо сохранить папку gamedataconfigsmod_parameters и после закинуть на место. Вероятность 90%

=nil and dik==DIK_keys.DIK_F5 then
self:mod_options()

3. Добавляем строкой ниже:
elseif db.actor

=nil and dik==DIK_keys.DIK_F6 then
give_object_to_actor(«pri_a25_explosive_charge_item»)
give_info(«pri_a22_actor_in_zone_pri_a22_find_squad»)
give_info(«pri_a22_scene_done»)

4. Загрузив нужное Сохранение, выходим в основное меню (ESC), нажимаем F6, закрываем основное меню и возвращаемся в игру (ESC).
5. В рюкзаке ГГ появится взрывчатка с таймером и завершится суб-квест «Обыскать тело солдата». Дальше можно будет идти взрывать дверь детсада (появится следующий соответствующий суб-квест + проиграется ролик на движке игры).

=nil and dik==DIK_keys.DIK_F5 then
self:mod_options()

3. Добавляем строкой ниже:
elseif db.actor

=nil and dik==DIK_keys.DIK_F6 then
give_info(«zat_b103_lost_merc_spez_actor_come_to_osman»)

Кто не умеет: http://rghost.ru/38166447. Распаковать; свой сбэкапить, заменить на скачанный.
4. В игре Esc-F6-Esc и идем к Сёме — будет говорить.
или

Поставить фикс от makdm — способ требует Новой Игры

Ошибка . Вылет при загрузке, даже если начать новую игру
FATAL ERROR

[error]Expression : !m_error_code
[error]Function : raii_guard::

Источник

Привет всем! Игра S.T.A.L.K.E.R., а конкретно сам движок X-Ray довольно капризный, и зачастую как в процессе модификации, так и во время игры игра «вылетает». Чтобы мы знали причину вылета, движок нам оставляет лог вылета. Лог вылета можно посмотреть несколькими способами:

  • В текстовом редакторе нажать Ctrl+V (Вставить)
  • Посмотреть лог игры включая лог вылета в файле xray_имя_пользователя.log в папке C:Documents and SettingsAll UsersДокументыSTALKER-***logs
  • Посмотреть непосредственно в окне багтрекера (только в ЧН и ЗП).

Ну приступим. Начнём с простых:


Expression    : wave&&wave->length()
Function      : CSoundRender_Source::LoadWave
File          : E:stalkerpatch_1_0004xrSoundSoundRender_Source_loader.cpp
Line          : 65
Description   : Can't open wave file:
Arguments     : d:stalkergamedatasoundsmusicsound.ogg

Здесь игра не может открыть звуковой OGG-файл под названием sound в папке d:stalkergamedatasoundsmusic


Expression    : fatal error
Function      : CRender::texture_load
File          : E:stalkerpatch_1_0004xr_3daxrRenderTexture.cpp
Line          : 295
Description   : <no expression>
Arguments     : Can't find texture 'actact_corp_monolit'

Не может найти текстуру act_corp_monolit из папки texturesact


Expression    : fatal error
Function      : CModelPool::Instance_Load
File          : E:stalkerpatch_1_0004xr_3daxrRenderModelPool.cpp
Line          : 111
Description   : <no expression>
Arguments     : Can't find model file 'physicsmesh.ogf'.

Не найдена трёхмерная OGF-модель mesh.ogf из папки meshesphysics.


Expression    : SG
Function      : CRender::model_CreateParticles
File          : E:stalkerpatch_1_0004xr_3daxrRender_R2r2.cpp
Line          : 330
Description   : Particle effect or group doesn't exist
Arguments     : hit_fxhit_water_00

Не найдена система частиц (партикл) hit_water_00 в директории hit_fx файла particles.xr (подробно опишу позже).


Expression    : !m_bAutoRemove
Function      : CParticlesObject::Init
File          : D:prog_repositorysourcestrunkxrGameParticlesObject.cpp
Line          : 50
Description   : Can't set auto-remove flag for looped particle system.
Arguments     : snow_stepsstep

Не установлен интервал (время) проигрывания группы/эффекта партиклов. В Particle Group -> End Time(s) укажите время, через которое частицы должны исчезнуть. Заодно проверьте particle effect -> Kill Old -> Age limit.


Expression    : fatal error
Function      : CResourceManager::_GetBlender
File          : E:stalkerpatch_1_0004xr_3daResourceManager.cpp
Line          : 49
Description   : <no expression>
Arguments     : Shader 'modelsantigas_glass' not found in library.

Не найден шейдер modelsantigas_glass в библиотеке шейдеров.


Expression    : fs
Function      : CResourceManager::_CreateVS
File          : E:stalkerpatch_1_0004xr_3daResourceManager_Resources.cpp
Line          : 185
Description   : shader file doesnt exist
Arguments     : d:stalkergamedatashadersr2deffer_impl_flat.vs

Тут проблема вся в том, что неправильно закомпилился шейдер, при компиляции уровня на качестве, более высоком чем Draft. Нужно скачивать исправление шейдеров от товарища Haron.
Для ЗП (ЧН) это может ещё быть из-за отсутствия thm-ок для текстур террейна уровня!


Expression : fatal error
Function : out_of_memory_handler
File : D:prog_repositorysourcestrunkxrCorexrDebugNew.cpp
Line : 336
Description : <no expression>
Arguments : Out of memory. Memory request: 55965 K 

Нехватка оперативной памяти.


[error]Expression : assertion failed
[error]Function : CBuild::Load
[error]File : .Build_Load.cpp
[error]Line : 98
[error]Description : B.dwMaterialGame<65536

Неправильно настроены шейдеры. В настройках шейдера, во вкладке R2-A поставьте текстуру, которая вдальнейшем будет накладываться
на террейн.


Expression : fatal error
Function : CInifile::r_string
File :E:stalkersourcestrunkxrCoreXr_ini.cpp
Line : 352
Description : <no expression>
Arguments : Can't find variable ammo_mag_size in [wpn_addon_grenade_launcher]

Не найдена переменная ammo_mag_size в секции [wpn_addon_grenade_launcher].


Expression    : fatal error
Function      : CScriptEngine::lua_error
File          : D:xray-svnxr_3daxrGamescript_engine.cpp
Line          : 74
Description   : <no expression>
Arguments     : LUA error: C stack overflow

Переполнение стека. Смотрим внимательно: lua_error. Ошибка, возможно, в скриптах.


Expression : vertex || show_restrictions(m_object)
Function : CPatrolPathManager::select_point
File : E:stalkersourcestrunkxr_3daxrGamepatrol_path_manager.cpp
Line : 155
Description : any vertex in patrol path [sniper_3_walk] in inaccessible for object [stalker_0002]

Какая то вершина (вейпоинт) пути sniper_3_walk стоит в неположенном месте (например не на аи-сетке). Объект stalker_0002 (в данном случае сталкер) который якобы двигался по пути sniper_3_walk попал на эту точку, а заодно ушёл за аи-сетку. Этого движок не терпит.

То же самое произойдет если координаты(вейпоинт) пути sniper_3_walk совпадет с координатами места, где НПС запрещено находиться, будь то рестриктор или аномалия в схеме обхода аномалий.
Также этот вылет наблюдается при попытке отправить НПС за пределы места работ параметр out_rest = «имя_рестриктора» в файле загрузки работ гулага. Попробуйте любого сталкера из лагеря новичков отправить, допустим, к остановке — получите этот самый вылет.


Expression : e_entity
Function : xrServer::Process_event_reject
File : E:stalkersourcestrunkxr_3daxrGamexrServer_process_event_reject.cpp
Line : 12
Description : entity not found. id_parent=7540 id_entity=44047 frame=2075050

Возникают иногда произвольно при смерти неписей. Причина — движок, отрабатывая лут, изредка теряет серверный объект уничтожаемой вещи, в итоге происходит вылет.


Expression : fatal error
Function : CScriptEngine::lua_error
File : D:xray-svnxr_3daxrGamescript_engine.cpp
Line : 74
Description : <no expression>
Arguments : LUA error: e:stalkergamedatascripts_g.script:20: bad argument #2 to 'format' (string expected, got no value)

Ошибка распространённая. На первый взгляд кажется, что ошибка как раз в скриптах, но всё может быть иначе. В одной из пиратских версий игры этот вылет наблюдается особенно часто из-за криво модифицированного файла «XR_3DA.exe». Если же вы уверены, что у вас лицензионная версия игры, можно попробовать сделать так: открываем файл _g.script блокнотом, закомменчиваем 20 строку (ставим перед строкой —) и идём к тому месту где поймали вылет. Так мы получим более развёрнутый ответ.

Участник: Призрак: Автор прав в том что вылет очень распространен, но так его исправлять нельзя, так как nil передается в эту функцию только при каком-то форс-мажоре. Поэтому необходимо перейти в _g.script в функцию printf и перед log1(string.format(fmr,..)) дописать: get_console():execute(«load «..fmt). После этого запустить еще раз игру и посмотреть при передачи какой строки игра вылетает. Потом найти эту строку в скриптах игры и прикинуть почему аргумент (у нас это аргумент №2 (bad argument #2)) равен nil. Возможность такового вылета из — за слишком быстрой скорости актера, слишком высокому прыжку. (Редактировать: config/creatures/actor.ltx)


Expression    : assertion failed
Function      : _VertexStream::Lock
File          : E:stalkerpatch_1_0004xr_3daR_DStreams.cpp
Line          : 44
Description   : (bytes_need<=mSize) && vl_Count

Проблема возникает при убийстве НПСмутанта. Типичный вылет по нехватке ресурсов. Встречается в основном на больших локациях. Но не на всех. На болотах из ЧН такой вылет встречается, а вот с локации aver от Кости V такого вылета нет. Однако для данного вылета есть таблетка, в виде правленого экзешника. Искать на АМК-форуме.


Expression    : fatal error
Function      : IRender_Visual::Load
File          : E:stalkerpatch_1_0004xr_3daFBasicVisual.cpp
Line          : 58
Description   : <no expression>
Arguments     : Invalid visual

Неправильный визуал (модель) НПС.


Expression    : !phrase_dialog->m_PhraseVector.empty()
Function      : CPhraseDialog::SayPhrase
File          : E:stalkerpatch_1_0004xr_3daxrGamePhraseDialog.cpp
Line          : 140
Description   : No available phrase to say, dialog[esc_dialog]

В диалоге esc_dialog нет доступной для отображения фразы (скажем, все заткнуты инфопоршенами).


Expression    : motion_ID.valid()
Function      : CKinematicsAnimated::ID_Cycle
File          : D:prog_repositorysourcestrunkLayersxrRenderSkeletonAnimated.cpp
Line          : 210
Description   : ! MODEL: can't find cycle:
Arguments     : death_init

Игра не нашла в модели трёхмерную анимацию с именем death_init.


Expression    : fatal error
Function      : CScriptEngine::lua_error
File          : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp
Line          : 73
Description   : <no expression>
Arguments     : LUA error: ...hadow of chernobylgamedatascriptsxr_danger.script:116: attempt to index field 'ignore_types' (a nil value)

Причина вылета в том что игра не понимает значения 0 в danger_ignore.Проще говоря в логике какого то персонажа параметр danger_ignore = 0 либо в минусовом значении. Либо его вообще нету

P.S. Также может быть причина в том, что в логике у какого-то АИ что-то неправильно указано. Для исправления рекомендую вставить строчку перед 116: get_console():execute(self.object:name()). То имя в логе, которое будет последним после вылета, указывает на персонажа с кривой логикой.


Expression    : fatal error
Function      : CInifile::r_string
File          : E:stalkerpatch_1_0004xrCoreXr_ini.cpp
Line          : 352
Description   : <no expression>
Arguments     : Can't find variable class in [test_no_klass_npc]

Не найден класс персонажа. Возможно, НПС не прописан под своим классом в gamedatanpc_profile.xml, либо в creaturesspawn_section.ltx, либо в gameplaycharacter_desc.xml


Expression    : fatal error
Function      : CInifile::r_section
File          : E:stalkerpatch_1_0004xrCoreXr_ini.cpp
Line          : 342
Description   : <no expression>
Arguments     : Can't open section 'bandage_test_kick1'

Игра не может найти секцию. Это может быть предмет, НПС и многое другое. Возможно, вы написали название с ошибками. Либо когда добавляли его в: продажу, скрипт, НПС , выпадение из НПС, а в редких случаях это может быть иммунитет чего либо(определить потом трудно). Часто такое бывает связано с названием секции.


Expression    : fatal error
Function      : CInifile::r_string
File          : E:stalkerpatch_1_0004xrCoreXr_ini.cpp
Line          : 352
Description   : <no expression>
Arguments     : Can't find variable remove_time in [vehicle_btr]

Не найдена переменная remove_time в секции [vehicle_btr]. А в данном случае ошибка в том что если вы делали предмет как физическую модель(то бишь, которую нельзя использовать, говорить и вообще он похож на декорации типа деревьев, столов и прочего хлама) то необходимо указывать remove_time в его секции.


Expression    : fatal error
Function      : CScriptEngine::lua_error
File          : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp
Line          : 73
Description   : <no expression>
Arguments     : LUA error: ...dow of chernobylgamedatascriptstest_kick.script:34: attempt to call method 'section' (a nil value)

Метод обращения в игре не предусмотрен. Возможно, стоит пересмотреть подход к тому или иному скрипту.


Expression    : rpoints[0].size()
Function      : game_sv_Deathmatch::Create
File          : D:prog_repositorysourcestrunkxrGamegame_sv_deathmatch.cpp
Line          : 99
Description   : rpoints for players not found

На мультиплеерной карте не найдены точки респавна игроков. В SDK должен быть красный пацанчик. Настроить Team = 0


Expression    : fatal error
Function      : xrServer::Process_update
File          : E:stalkerpatch_1_0004xr_3daxrGamexrServer_process_update.cpp
Line          : 37
Description   : <no expression>
Arguments     : Beer from the creator of 'WP_SHOTG'

Такое иногда бывает, когда ты (ГГ) или НПС заряжает дробовик или другое оружие со значением tri_state_reload = true.
Это глюк. в игре что-то сбивается, и когда у дробовика максимальное количество заряженных патронов скажем 6, он заряжается за 6 и дальше.. дальше.. дальше.. и так пока не произойдёт вылет с вышеуказанным логом. вылет не значительный и редкий, но если он случается слишком часто, можно в конфигах всех дробовиков и ружей поменять значение tri_state_reload = true на tri_state_reload = false.


Expression    : fatal error
Function      : CInifile::r_string
File          : D:prog_repositorysourcestrunkxrCoreXr_ini.cpp
Line          : 477
Description   : <no expression>
Arguments     : Can't find variable bound_rect in [level_map]

Такой лог бывает когда подключаешь локацию из ТЧ в ЗП. Причина проста — в ЗП уровнях файл строчка bound_rect пишется в файле gamedatalevelsимя_уровняlevel.ltx, а в ТЧ строка bound_rect для каждого уровня непосредственно в файле gamedataconfiggame_maps_single.ltx …

Исправить просто, нужно изменить файл gamedatalevelsимя_уровняlevel.ltx в подключенной локации, просто перенести строку bound_rect из game_maps_single.ltx в level.ltx перед строчкой texture.


Expression : hGame
Function : CEngineAPI::Initialize
File : E:stalkerpatch_1_0004xr_3daEngineAPI.cpp
Line : 65
Description : Game DLL raised exception during loading or there is no game DLL at all

Случается когда одна из dll некорректна. Например такой вылет бывает если подсунуть в ТЧ 1.0004 xrGame от 6 патча.


Expression    : assertion failed
Function      : CInventory::Eat
File          : E:stalkersourcestrunkxr_3daxrGameInventory.cpp
Line          : 892
Description   : pIItem->m_pCurrentInventory==this

Вылет встречается только на 6 патче при попытке хаванья из трупа. Ищите, исправленную Kolmogor’om, xrGame.dll в Интернете


[error]Expression    : error handler is invoked!
[error]Function      : invalid_parameter_handler
[error]File          : E:stalkersourcestrunkxrCorexrDebugNew.cpp
[error]Line          : 804
[error]Description   : 

Данный вылет бывает когда у какого либо из объектов установлено некорректное значение (читал, сам не получал его)
Или же если данный вылет происходит при вызове класса, то проблема в том что в методе __init() класса прописано super()


Expression : !m_error_code
Function : raii_guard::~raii_guard
File : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
Line : 748
Description : d:stalker copgamedatascriptsbind_stalker.script:231: attempt to index global 'ИМЯ_ФАЙЛА' (a nil value)

Вылет происходит в двух случаях — когда скрипт пытается вызвать функцию из несуществующего файла или когда в файле допущена синтаксическая ошибка.


Expression    : fatal error
Function      : CScriptEngine::lua_error
File          : E:stalkersourcestrunkxr_3daxrGamescript_engine.cpp
Line          : 73
Description   : <no expression>
Arguments     : LUA error: attempt to call a nil value

Происходит при попытке вызвать класс, которого не существует


Небольшой пример из практики по определению ошибки в особых случаях(для начинающих):
Игра зависла, картинка на экране не меняется, на Ctrl + Alt+ Delete не реагирует. Только «Холодная перезагрузка» reset. Но при этом обычно в логе нет записи и обычным Ctrl + V ошибку не увидеть.
Я пользуюсь программой Punto Switcher. Есть в ней опция «дневник», она ведёт запись всех нажатий клавиш и по нажатию сочетаний клавиш содержимое памяти может записывать в дневник.
теперь когда игра зависла и картинка на экране не меняется, нажимаете Ctrl + Alt+ Delete. Внешне ничего не изменится, но ОС будет реагировать
на клавиши, нажимаете сочетание клавиш «записать в дневник». Делаете перезагрузку, открываете дневник — Ваша ошибка записана.
«дядя Саша»


Expression    : bone_id!=BI_NONE
Function      : SArtefactDetectorsSupport::SetVisible
File          : D:prog_repositorysourcestrunkxrGameArtefact.cpp
Line          : 525
Description   : link

Возникает при создании или добавлении чужих артефактов. В artefacts.ltx, в секции af_base есть параметр particles_bone=link. Это имя косточки, которая принимается за центр при проигрывании партикла. Если кость в артефакте называется по иному, например joint2, и это не указанно в секции нового арта, которая наследуется от базовой и подразумевает естественно наличие link, получаем вылет. Решается конвертированием модели арта в .object, просмотром в sdk и выяснением имени косточки с занесением в конфиг.


Expression    : error handler is invoked!
Function      : invalid_parameter_handler
File          : D:prog_repositorysourcestrunkxrCorexrDebugNew.cpp
Line          : 815
Description   : bad argument #3 to 'format' (string expected, got no value)

Вылет заканчивающийся строкой, то что выше не указываю роли не играет, здесь роль играет только «bad argument #3». Если это появилось значит у Вас ошибка в файле с расширением .ltx (обращаю внимание, не путать с файлами .script), которая находится между [….] квадратными скобками в файле. Это может быть секция предмета, секция логики, секция пути файла way_, т.е. там где присутствуют квадратные скобки.


Expression    : cross_table().header().level_guid() == level_graph().header().guid()
Function      : CAI_Space::load
File          : D:prog_repositorysourcestrunkxrGameai_space.cpp
Line          : 113
Description   : cross_table doesn't correspond to the AI-map

Скорее всего, отсутствует файл level.ai. Возможно после правки уровня в SDK и компиляции AI, вы забыли его скопировать в папку уровня. Важно помнить, что level.ai нужно обновлять для всех уровней, а не только для тех, которые подвергались правке.


Безлоговый вылет

Вылет, при котором лог отсутствует. Причины такого вылета:

1. Безлоговые вылеты бывают в основном из-за завышенных настроек видео.

Решение:
В папке с игрой открыть папку gamedata, папку config, в ней файл alife, открыть любым текстовым редактором (блокнотом, или лучше word pad’ом) и найти строку switch distance = и изменить значение на 5, сохранить изменения. Это только одна (не сильно вероятная) причина безлогового вылета. если вы знаете ещё одну причину, пожалуйста напишите здесь.

2. Вторая причина неправильно указано название пути в логике НПС или он полностью отсутствует в файле way_ all.spawn. Вылетать будет когда дойдёт время до спавна этого НПС.

3. Также, безлоговые вылеты происходят из-за ошибок в диалогах.



  • Автор статьи — Pihan13
  • Дополнительный справочник «вылетов» игры

Не стесняемся — дополняем, если знаем о чём идёт речь.

Expression    : !m_error_code
Function    : raii_guard::~raii_guard
File        : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
Line        : 748
Description    : ...gamedatascriptsxxx.script:<номер_строки>: attempt to index global 'имя_функции|имя_файла' (a nil value)

Причина:

Если в ошибке указано имя функции, то игра не может определить данную функцию в указанном файле. Причин на это три: либо её действительно нет; либо её имя написано с ошибкой; либо в некоторых случаях, функция находится ниже по коду от того места, где идёт её вызов.
Если же в ошибке указано имя файла, то либо файла не существует (возможно неправильное имя файла), либо в указанном файле синтаксическая ошибка.

Лечение:

Найти и исправить ошибку.

[hr]

Expression : !m_error_code
Function : raii_guard::~raii_guard
File : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
Line : 748
Description : ...- copgamedatascriptsui_si.script:383: attempt to perform arithmetic on a string value
Expression : !m_error_code
Function : raii_guard::~raii_guard
File : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
Line : 748
Description : ...- copgamedatascriptsui_si.script:383: attempt to compare string with number

Причина:
В одном из скриптов Вы пытаетесь выполнять арифметические операции со строкой либо сравнивать её с числом .

Лечение:
Возможно, вы забыли вызвать tostring, либо вместо операции ‘..’ (конкатенация строк) использовали ‘+’ (сложение чисел).
Если ничего из вышеописанного вы не делали, то так как LUA — язык с динамической типизацией, вполне возможно, что что-то изменило тип вашей переменной

Уточнение:

Expression : !m_error_code
Function : raii_guard::~raii_guard
File : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
Line : 748
Description : ...- copgamedatascriptsui_si.script:383: attempt to call global 'qwe' (a nil value)

Возможен и такой вариант вылета при отсутствующей функции

[hr]

Вылет ЗП:

[error]Expression    : !m_error_code
[error]Function      : raii_guard::~raii_guard
[error]File          : D:prog_repositorysourcestrunkxrServerEntitiesscript_storage.cpp
[error]Line          : 748
[error]Description   : ...l.k.e.r. - Зов Припятиgamedatascriptsutils.script:355: attempt to perform arithmetic on local 't_pos' (a nil value)

stack trace:
0023:69737365 DINPUT8.dll

Причина: как правило, ошибки в описаниях анимаций в точках look вей-поинтов.

Лечение: внимательность, внимательность и еще раз внимательность…

Категории

для тех кто хочет создать свой мод но не знает как.
!!!!ЧИТАЕМ ПЕРВЫЙ ПУНКТ!!!!

В: Как изменить переодичность выброса?
О: Файл surge_manager.script
переменные:
local START_MIN_SURGE_TIME = 2*60*60
local START_MAX_SURGE_TIME = 4*60*60
первая — минимальное количество дней между выбросами, вторая — максимальное. Стандартно стоит раз в 2-4 дня.

В:как поставить бесконечные деньги?
О:
gamedataconfigsgameplaycharacter_desc_general.xml — в самом начале:
, ставьте, сколько надо, а если вместо infinitive=»0″ поставить единицу, то у вас будут бесконечные деньги.

Как увеличить максимальный переносимый вес?

откройте файл gamedataconfigscreaturesactor.ltx, найдите там строку max_walk_weight =60, это максимальный вес(60кг), в файле gamedataconfigssystem.ltx найдите
строку max_weight = 50 (если несёте больше этого веса, то быстро расходуется сила), поменяйте эти значения на желаемые.

Как сделать главного героя бессмертным, бесконечно выносливым?

Параметры, отвечающие за потерю НР находятся в файле gamedataconfigscreaturesactor.ltx, эти строки:
….
satiety_critical = 0.0 ;критическое значения сытости (в процентах от 0..1) когда здоровье начианает уменьшаться
radiation_health_v = 0.004 ;уменьшение здоровья при воздействии радиации
health_hit_part = 1.0 ;процент хита, уходящий на отнимание здоровья
power_hit_part = 0.1 ;процент хита, уходящий на отнимание силы
bleeding_v = 0.002 ;0.0005 ;потеря крови при номинальной ране в секунду

сделайте их равными 0.0 и вы бессмертны

wound_incarnation_v = 0.0001 ;0.003 ;скорость заживления раны
min_wound_size = 0.0256 ;минимальный размер раны, после которого она считается зажившей
psy_health_v = 0.001 ;скорость восстановления psy-здоровья

увеличьте эти параметры в несколько раз
для бесконечной выносливости обнулите эти параметры:
walk_power = 0.00001 ;умешьшение силы за секнду во время ходьбы без учета веса ноши
walk_weight_power = 0.00005; ;умешьшение силы за секнду во время ходьбы с учетом веса ноши, для максимального допустимого веса
для увеличения высоты прыжка, измените этот параметр:
jump_speed = 6

Как изменить длину палочки прицела?

в gamedataconfigssystem.ltx отредактировать эти строки:
[hud_cursor]
;все размерv в процентах от длинv экрана
cross_length = 0.015 ;длина «палочки» прицела
min_radius = 0.0 ;минимальнvй радиус прицела (при нулевой дисперсии)
max_radius = 1.0 ;максимальнvй радиус
radius_lerp_speed = 0.08 ;скорость интерполљции положений прицела
cross_color = 0.7,0.7,0.7,0.5 ;цвет прицела
disp_scale = 0.08 ;масштаб прицела (относительно радиан)

Как изменить параметры конкретного оружия?

Параметры стволов заданы в конфигурационных файлах по адресу gamedataconfigsweapons
Возьмем, для примера, конфиг w_g36.ltx. Он делится на разделы:

Первый раздел
Здесь хранится общая информация о оружии — его класс, тип, ссылки на спавн и т.д. Нас интересуют следующие строки:

description = enc_weapons1_wpn-g36 — ссылка на string_id, из которого игра подгружает описание этого оружия.
ef_main_weapon_type = 2 — основной тип, к которому принадлежит оружие
ef_weapon_type = 6 — подтип, к которому принадлежит оружие

Второй раздел
Содержит модификаторы, которые даются к углу зрения/дальности обзора NPC, держащего это оружие в руках:
holder_range_modifier = 1.85 — во сколько раз увеличивается eye_range
holder_fov_modifier = 0.3 — во сколько раз увеличивается eye_fov

Третий раздел
Содержит данные о самом оружии, его некоторых характеристиках:
cost = 18000 — базовая цена (торговцы умножают её на некоторый коэффициент)
weapon_class = assault_rifle — класс оружия (здесь — штурмовая винтовка)
ammo_mag_size = 30 — размер магазина
ammo_class = ammo_5.56x45_ss190, ammo_5.56x45_ap — типы используемых патронов
grenade_class = ammo_m209 — тип используемых гранат
fire_modes = 1, -1 — режимы ведения огня
hand_dependence = 1 — засивимость о рук (?) — возможно, речь идет о качании ствола
single_handed = 0 — держится ли только в одной руке
slot = 2 — слот в инвентаре
animation_slot = 2 — вид анимации (для пистолета/для винтовки)
inv_name = wpn-g36 — ссылка на имя, отображаемое в инвентаре, тоже берется из string table, как и описание
inv_name_short = wpn-g36 — короткое имя; в данном случае используется то же самое
inv_weight = 3.6 — вес
inv_grid_width = 5 — координаты первого угла иконки по x
inv_grid_height = 2 — координаты первого угла иконки по y
inv_grid_x = 0 — координаты второго угла иконки по x
inv_grid_y = 10 — координаты второго угла иконки по y

Четвертый раздел
В четвертом разделе хранится информация о износе/отдаче оружия. Практически все параметры там снабжены комментариями, поэтому приведу лишь самые интересные:
cam_relax_speed = 5.7 — скорость возврата в исходное положение
cam_dispersion = 0.2 — увеличения угла (в градусах) с каждым выстрелом
fire_dispersion_condition_factor = 5 — увеличение дисперсии в процентах при максимальном износе
misfire_probability = 0.003 — вероятность осечки при максимальном износе
misfire_condition_k = 0.05 — порог (в данном случае — 5%), после которого оружие может заклинивать
condition_shot_dec = 0.0002 — увеличение износа при каждом выстреле

Пятый раздел
Здесь хранится множество параметров, из которых наиболее интересны эти:
PDM_disp_base = 3.0 — множитель, на который умножается базовая дисперсия оружия, когда ГГ (Главный Герой) стоит на месте в полный рост;
PDM_disp_vel_factor = 1.3 — множитель, на который умножается базовая дисперсия оружия, когда ГГ крутит оружием или бежит;
PDM_disp_accel_factor = 1.3 — множитель, на который умножается базовая дисперсия оружия, когда ГГ бежит в спринте;
PDM_crouch = 1.0 — множитель, на который умножается базовая дисперсия оружия, когда ГГ идет пригнувшись;
PDM_crouch_no_acc = 1.0 — множитель, на который умножается базовая дисперсия оружия, когда ГГ стоит на месте, пригнувшись;
hit_power = 0.50, 0.54, 0.57, 0.60 — сила выстрела
hit_impulse = 105 — импульс пули (сила, которую летящая пуля передает жертве, влияет на поведение ragdoll-тела)
hit_type = fire_wound — тип причиняемых повреждений, в данном случае — пулевые ранения (параметр в синглплеере ни на что не влияет)
fire_distance = 600 — максимальная дистанция для выстрела
bullet_speed = 925 — начальная скорость пули
hud = wpn_g36_hud — внешний вид оружия

Шестой раздел
position = -0.026, -0.132, 0.0 — позиция по отношению к игроку (?)
orientation = 0, 0, 0 — направление, в которое смотрит ствол (?)

Седьмой раздел
Содержит описания визуальной стороны оружия и некоторые другие параметры:
startup_ammo = 90 — как нетрудно догадаться, стартовое количество патронов (в синглплеере ни на что не влияет)
visual = weaponsg36wpn_g36.ogf — модель оружия, используемая NPC, а также игроком при виде от третьего лица
ph_mass = 4 — физическая масса, используемая при расчетах
scope_status = 1 — ситуация со съемным прицелом
silencer_status = 0 — ситуация со съемным глушителем
grenade_launcher_status = 0 — ситуация с подствольным гранатометом
Параметры:
0 — нет, новый прикрепить нельзя
1 — уже есть, несъемный
2 — нет, но можно установить новый
zoom_enabled = true — есть ли зум (прицеливание)
scope_zoom_factor = 33.3 — какой зум дает прицеливание (здесь — 1.8х)
scope_texture = wpnwpn_crosshair_g36 — текстура прицельной сетки
shell_point = 0.15, 0.0, -0.05 — точка вылета гильз
shell_dir = 0.0, 1.0, 0.0
fire_point = -0.000000,0.062000,0.134000 — точка выстрела
fire_point2 = 0.30, 0.00, 0.05 — точка выстрела (2)
fire_bone = wpn_body
orientation = 0, 0, 0 — направление
position = 0, 0, 0 — позиция
visual = weaponsg36wpn_g36_hud.ogf — модель, отображаемая у нас в руках

Изменение описаний
Описания оружия хранятся в файле: …S.T.A.L.K.E.Rgamedataconfigtextrusstring_table_enc_weapons.xml

В нем хранятся строки с названиями и описаниями, на которые ссылаются конфиги оружия. Например, тот же G36 ссылается сюда:

[…]

Штурмовая винтовка немецкого производства, представляющая собой первоклассный образец
современного оружия — лёгкого, надёжного и эргономичного.n Боеприпасы:n обычный 5,56×45 мм
SS109,n бронебойный 5,56×45 мм АР.
[…]

ГП37
[…]Меняя их содержимое, мы меняем описания/названия данного оружия.

Как изменить параметры конкретного боеприпаса?

Параметры амуниции заданы в файле по адресу gamedataconfigsweaponsweapons.ltx
например:
visual = weaponsammoammo_556x45_ss190.ogf — модель коробки с патронами
description = enc_weapons1_ammo_ammo-5.56×45-ss190 — ссылка на string_id, из которого игра подгружает описание этого типа патронов
cost = 320 — стоимость одной коробки
box_size = 30 — количество патронов в одной коробке
inv_name = ammo-5.56×45-ss190 — ссылка на string_id, содержащий имя для инвентаря
inv_name_short = ammo-5.56×45-ss190_s — ссылка на string_id, содержащий краткое имя для инвентаря
inv_weight = 0.33 — вес
inv_grid_width = 2 — координаты первого угла иконки по x
inv_grid_height = 1 — координаты первого угла иконки по y
inv_grid_x = 14 — координаты второго угла иконки по x
inv_grid_y = 11 — координаты второго угла иконки по y
k_dist = 1 — коэффициент дальности, сама дальность — в стволе, тупо расстояние.
k_disp = 2.5 — кучность, завязана с кучностью в стволе
k_hit = 1 — убойность, завязана с убойностью в стволе
k_impulse = 1 — чисто наскока эффектно ногами непись дрыгнет во время кердыка
k_pierce = 1 — коэффициент наскока испорится броня при попадании
impair = 1 — коэффициент износа ствола от пули
buck_shot = 1 — кол-во составляющих в пуле (напр картечь — 4, пуля — 1)
tracer = on — является ли патрон трассирующим (on/off)
wm_size = 0.05 — визуальный размер дырки на стене от пули

Как заставить фонарик светить дальше?

в файле gamedataconfigsmodelsobjectslight_night.ltx увеличьте range-параметры
Подробное описание конфигов:
[torch_definition]
range = 30 ; дистанция в метрах.
range_r2 = 30 ; дистанция в метрах (для динамического освещения).
color = 0.22,0.22,0.22,0.2 ; цвет, из 4 компонентов значением от 0 до 3.
color_r2 = 1.1,1.1,1.1,0.0 ; цвет, из 4 компонентов значением от 0 до 3
(для динамического освещения).
omni_range = 3 ; дистанция освещения от фонариков неписей в метрах.
omni_range_r2 = 3 ; дистанция освещения от фонариков неписей в метрах (для динамического
освещения).
omni_color = 1.0,1.0,1.0,0.1 ; цвет фонариков неписей, из 4 компонентов
значением от 0 до 3.
omni_color_r2 = 1.0,1.0,1.0,0.1 ; цвет фонариков неписей, из 4 компонентов
значением от 0 до 3 (для динамического освещения).
color_animator = empty ; цвет аниматора (empty — аниматор не используется).
spot_texture = internalinternal_light_torch_r2 ; текстура яркой точки (для динамического
освещения).
spot_angle = 45 ; угол освещения в градусах.
glow_texture = glowglow_torch_r2 ; текстура свечения фонарика, когда он направлен в глаза
(обязательный параметр).
glow_radius = 0.3 ; радиус свечения в метрах.
guide_bone = lights_bone ; кость, к направлению которой привязывается фонарик (изменять
строго не рекомендуется).

Как редактировать торговцев, торговлю с обычными сталкерами?
все настройки, связанные с ассортиментом торговцев в игре, находятся в файлах gamedataconfigsmisctrade_***.ltx
для всех остальных сталкеров — gamedataconfigsmisctrade_generic.ltx
Структура файла
Секция [trader_generic_buy]
Эта секция описывает какие товары торговец будет покупать.
Название предмета = минимальная цена покупки, максимальная цена покупки
Например:
wpn_vintorez = 0.5, 0.7Это значит что торговец купит оружие от 50% полной его стоимости до 70%, т.е. если Винторез стоит 1000, то торговец купит его в диапазоне от 500 до
700 рублей. Диапазон зависит от отношения торговца к Меченому — чем лучше, тем дороже купит

Секция [supplies_start]
Эта секция описывает какие товары у торговца будут вначале.
Название предмета = количество, вероятность появления
Например:
bandage = 5, 1Это значит что у торговеца всегда будут 5 бинтов, с 100 процентной вероятностью появления в магазине.
bandage = 5, 0.6 А тут уже вероятность появления 60%. Т.е. бинты не всегда будут.

Секция [supplies_after_***]
Тоже самое, что в секции [supplies_start], но после выполнения квестов торговца.

Секция [trader_start_sell]
Эта секция описывает за какую цену торговец будет продавать.
Название предмета = минимальная цена продажи, максимальная цена продажиНапример:
wpn_vintorez = 1, 2Это значит что торговец продаст оружие от 100% полной его стоимости до 200%, т.е. если Винторез стоит 1000, то торговец продаст его в диапазоне от
1000 до 2000 рублей. Диапазон зависит от отношения торговца к Меченому — чем лучше, тем дешевле продаст

Секция [trader_after_***_sell]
Тоже самое, что в секции [trader_start_sell], но после выполнения квестов торговца.

деньги торговцев правятся в character_desc_название локации.xml, например, в character_desc_escape.xml такая строка:
(если infinitive=»1″ — бесконечные деньги)

Как редактировать костюмы?

Итак, секции с параметрами находятся в файле:
configmiscoutfit.ltx
Рассмотрим, например, параметры классического костюма сталкера.
[stalker_outfit]:outfit_base
; название секции костюма. именно к нему игра будет обращаться. outfit_base —
базовая (наследуемая) секция (изменять строго не рекомендуется).

visual = equipmentsstalker_suit ; модель, используемая для сложенного костюма,
лежащего на земле.
actor_visual = actorsherostalker_hood.ogf ; модель, используемая для игрока, когда
на нем надет костюм.
inv_name = stalker_outfit_name ; название в инвентаре.
inv_name_short = stalker_outfit_name ; название в инвентаре (в принципе, можно
здесь продублировать значение предыдущего параметра — так чаще всего и делают).
description = stalker_outfit_description ; ссылка на текстовую строку
с описанием.
inv_weight = 5.0 ; вес.

; далее идут параметры иконки в инвентаре.

inv_grid_width = 2
inv_grid_height = 3
inv_grid_x = 6
inv_grid_y = 15
full_icon_name = npc_icon_stalker_outfit ; название иконки.

cost = 15000 ; базовая цена (см. примечание 2).
full_scale_icon = 14,11 ; иконка сталкера в костюме в полный рост (отображается в инвентаре справа).
nightvision_sect = effector_nightvision_bad ; тип ПНВ («плохой» — зеленый, «хороший» — синий).

; ниже идут параметры защиты владельца от различных типов воздействий,
обеспечиваемые костюмом.
burn_protection = 0.5 ; защита от воздействия огня (костры, аномалия «Жарка» и т.д.).
strike_protection = 0.5 ; защита от ударов (наносятся мутантами, например, псевдогигантом).
shock_protection = 0.5 ; защита от поражения электричеством.
wound_protection = 0.4 ; защита от ранений (наносятся мутантами, например, собаками, кровососами и т.д.).
radiation_protection = 0.5 ; защита от радиации.
telepatic_protection = 0.0 ; защита от пси-воздействия (например, присутствие контроллера серьезно влияет на psy_health).
chemical_burn_protection = 0.5 ; защита от химического воздействия.
explosion_protection = 0.3 ; защита от взрывов/осколков.
fire_wound_protection = 0.3 ; защита от огнестрельного оружия (наиболее важный параметр для большинства костюмов).
power_loss = 0.87
bones_koeff_protection = gilet_antigas_damage

[sect_stalker_outfit_immunities] ; коэффициенты иммунитета самого костюма, то есть — то, насколько сильно он сам подвержен повреждениям от различных типов воздействий. по значениям каждого типа — см. выше.
burn_immunity = 0.03
strike_immunity = 0.01
shock_immunity = 0.03
wound_immunity = 0.015
radiation_immunity = 0.00
telepatic_immunity = 0.00
chemical_burn_immunity = 0.03
explosion_immunity = 0.03
fire_wound_immunity = 0.01

Как сделать так, чтобы стволы не убирались сами?

Изменить эти строки в файле gamedatascriptssr_no_weapon.script

function action_no_weapon:zone_enter()
self.state = state_inside
bind_stalker.restore_weapon(self.object:id())
end
function action_no_weapon:zone_leave()
self.state = state_outside
bind_stalker.restore_weapon(self.object:id())
end

Как сделать вид от третьего лица?

В конце файла C:Documents and SettingsAll UsersDocumentsSTALKER-STCSuser.ltx (путь к папке STALKER-STCS может быть другим) добавить эти строки:
bind cam_1 kF1
bind cam_2 kF2
bind cam_3 kF3
bind cam_4 kF4

Как редактировать гранаты?

Конфиги лежат по адресу gamedataconfigsweapons в файлах w_f1.ltx для Ф1 и w_rgd5.ltx для РГД-5;
важные параметры:
destroy_time = 1800 ; Время детонации 1.8 секунды
blast = 3.0 ; Урон наносимый фугасным воздействием
blast_r = 8 ; радиус фугасного воздействия
blast_impulse = 550 ; Сила удара от фугаса
frags = 300 ; Количество осколков
frags_r = 25 ; Радиус разлета осколков
frag_hit = 3.50; Урон от осколка
frag_hit_impulse = 300 ; Сила удара от осколков
fragment_speed = 500 ; Скорость осколков

Как реализовать качание прицела?

Конфиги, отвечающие за эту особенность, в файле gamedataconfigsmisceffectors.ltx:
[zoom_inertion_effector]
camera_move_epsilon = 0.03 ;разница между двумя векторами направления камера, когда считается что камера двинулась
disp_min = 0.01
speed_min = 0.00001
zoom_aim_disp_k = 1.0 ;коэффициенты соотношения полной дисперсии стрельбы
zoom_aim_speed_k = 0.0025 ;и покачивания прицела
delta_time = 3000 ;время через которое эффектор меняет направление движения (в милисекундах)

Как отключить вспышку выстрела у винтореза, вала, ПБ?

Теперь после выстрела появляется легкая дымка, как при стрельбе с обычным глушителем, для этого в файлах
gamedataconfigsweaponsw_vintorez.ltx, gamedataconfigsweaponsw_val.ltx, gamedataconfigsweaponsw_pb.ltx
изменить параметр
flame_particles = weaponsgeneric_shoot_00

Как «изменить» рост главного героя?

В файле gamedataconfigscreaturesactor.ltx поменять параметр camera_height_factor = 0.92

Где лежат конфиги сталкеров и существ Зоны?

В файлах gamedatabigconfigscreaturesm_название объекта.ltx

Где лежат конфиги артефактов?

Все артефакты описаны в файле gamedatabigconfigsmiscartefacts.ltx

Предыдущая тема:
Ответы на ваши вопросы по модам! v1
Ответы на ваши вопросы по модам! v2
Ответы на ваши вопросы по модам! v3

Понравилась статья? Поделить с друзьями:
  • Expression error параметр csv document columns недопустим
  • Expression error доступ к ресурсу запрещен power bi
  • Expression error аргументы 2 были переданы функции которая ожидает 1 excel
  • Expression error we cannot convert the value null to type logical
  • Expression error unable to find faction