выгрузка карты

  • 2
  • 0
у некоторых серверов, как magic и т.п. подблочена карта где то, скорее всего, на клиенте. возможно ли выгрузить файл этой карты? ну естественно ее в maps нет
 
  • 142
  • 3
  • 18
у некоторых серверов, как magic и т.п. подблочена карта где то, скорее всего, на клиенте. возможно ли выгрузить файл этой карты? ну естественно ее в maps нет
они в воркшопе должны быть, а не в папках игрока
 
  • 142
  • 3
  • 18
  • Anarchistz
  • Информация отсутствует
  • 85
  • 2
  • 11
у некоторых серверов, как magic и т.п. подблочена карта где то, скорее всего, на клиенте. возможно ли выгрузить файл этой карты? ну естественно ее в maps нет
она возможно закинулась в GarrysMod\garrysmod\download\maps
 
  • 571
  • 9
  • 102
заходишь на сервер запускаешь смотришь папку data
JavaScript:
Развернуть Свернуть Копировать
local function log(...)
    print("[obkak]", ...)
end

local function sanitize_name(n)
    log("исходное имя:", n)
    n = n:gsub("[^%a%d%._%- ]", "")
    log("после удаления запрещённых символов:", n)
    n = n:gsub("%s+", " ")
    log("после схлопывания пробелов:", n)
    n = string.Trim(n)
    log("после Trim:", n)
    if n == "" then
        n = "map_dump"
    end
    log("итоговое имя:", n)
    return n
end

local function main()
    log("запускаю скрипт")
    local m = game.GetMap() or "map"
    log("текущая карта:", m)

    local p = "maps/" .. m .. ".bsp"
    log("путь к BSP:", p)

    if not file.Exists(p, "GAME") then
        log("ERROR: BSP не найден")
        return
    end

    log("BSP существует, читаю...")
    local d = file.Read(p, "GAME")
    if not d then
        log("ERROR: не удалось прочитать BSP!")
        return
    end

    log("BSP успешно прочитан, размер:", #d, "байт")
    local fn = sanitize_name(m) .. ".dat"
    log("итоговое имя файла:", fn)
    file.Write(fn, d)
    log("записано в data/" .. fn)
    log("Готово.")
end

local function on_error(err)
    print("[obkak][ERROR]", tostring(err))
    if debug and debug.traceback then
        print("[obkak][TRACEBACK]", debug.traceback(err, 2))
    end
end

xpcall(main, on_error)
а вообще это в экзекхаке сто лет есть уже
 
Назад
Сверху Снизу