Перейти к содержанию

s-Naofumi-s

Сталкеры
  • Публикаций

    2
  • Зарегистрирован

  • Посещение

Репутация

0 Нейтральная

Информация о s-Naofumi-s

  • Звание
    Новичок
  1. Файл wpn_ak74.dds может быть поврежден. Проверьте его размер и целостность. Если он отличается от ожидаемого размера или файл отсутствует, попробуйте заменить его на рабочую копию из резервного источника или оригинальных файлов игры. Дополнено 30 минуты спустя чекай в АМК 349 https://www.amk-team.ru/forum/faq/7-spravochnik-vyletov-line-201-line-400/#elQuestion-108
  2. В Сталкере ЧН в лицухе версии 1.5.10 при клике на сейвы в меню игры, моментально вылетает игра. До этого я прошел в переход в нору/подземелье из НИИ Агропрома, и игра также сразу вылетела. И никак загрузить сохранения не могу. В АМК 180-ой строки нет. Вот лог: [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:\priquel\sources\engine\xrServerEntities\script_engine.cpp [error]Line : 180 [error]Description : <no expression> [error]Arguments : LUA error: ...\common\stalker clear sky\gamedata\scripts\_g.script:975: bad argument #2 to 'format' (string expected, got nil) Помогите, как решить эту проблему! UPD: Я смог решить эту проблему. Для начала вам нужно скачать распаковщик архивов, подойдет S.T.A.L.K.E.R. Universal Extractor 1.3. Скачали, запустили exe, указав корневой каталог игры. Далее создается папка gamedataUE, переименовываете ее в gamedata. Откройте файл с помощью notepad++(предварительно скачайте его) _g.script (он находится по пути ...\STALKER Clear Sky\gamedata\scripts) и найдите строку 975. Вставьте след код, выделив целиком область кода, основываясь на этом: function abort(fmt, ...) local reason = string.format(fmt, ...) -- Проверка на nil и замена на строку по умолчанию, если необходимо if reason == nil then reason = "Неизвестная ошибка" end assert("ERROR: " .. reason) error_log("ERROR: " .. reason) -- Исправляем форматирование для логирования log(string.format("%s", reason)) end Сохраните и закройте. Откройте файл minigames_manager.script и найдите строку 71. Вставьте след код: -- Load manager function CMinigames:load(thread) set_save_marker(thread, "load", false, "CMinigames") local n = thread:r_u16() self.minigames = {} self.minigames_params = {} for i = 1, n do local key = thread:r_stringZ() self.minigames[key] = {} local profile = thread:r_stringZ() -- Инициализируем game_profile в зависимости от значения profile if profile == "CMGCrowKiller" then self.minigames[key].game_profile = minigame_crowkiller.CMGCrowKiller() elseif profile == "CMGShooting" then self.minigames[key].game_profile = minigame_shooting.CMGShooting() else -- Логирование незнакомого профиля log("Unknown game profile: " .. profile) self.minigames[key].game_profile = nil end self.minigames[key].state = thread:r_stringZ() self.minigames_params[key] = {} -- Проверяем, что game_profile инициализирован перед вызовом load if self.minigames[key].game_profile then self.minigames[key].game_profile:load(thread, self.minigames_params[key]) else -- Логируем ошибку, если game_profile не инициализирован log("Error: game_profile is nil for key: " .. key) end end set_save_marker(thread, "load", true, "CMinigames") end Сохраните и закройте. Откройте файл minigames_manager.script и найдите строку 48. Вставьте след код: -- Save manager function CMinigames:save(thread) set_save_marker(thread, "save", false, "CMinigames") local n = 0 -- Подсчет количества мини-игр for k, v in pairs(self.minigames) do n = n + 1 end -- Сохранение количества мини-игр thread:w_u16(n) -- Сохранение данных каждой мини-игры for k, v in pairs(self.minigames) do thread:w_stringZ(k) -- Проверяем, что game_profile инициализирован перед вызовом метода if v.game_profile then thread:w_stringZ(v.game_profile:get_profile_name()) else -- Логируем ошибку и используем значение по умолчанию log("Error: game_profile is nil for key: " .. k) thread:w_stringZ("UnknownProfile") -- Используйте значение по умолчанию end thread:w_stringZ(self.minigames[k].state) -- Проверяем, что game_profile инициализирован перед вызовом метода save if v.game_profile then v.game_profile:save(thread, self.minigames_params[k]) else -- Логируем ошибку log("Error: game_profile is nil for key: " .. k) end end set_save_marker(thread, "save", true, "CMinigames") end Сохраните и закройте.