You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Fivem Lua客户端Marker绘制脚本报Config全局空值错误求助

Fivem脚本attempt to index a nil value (global 'Config')报错修复方案

报错根因

客户端逻辑代码执行时,全局Config变量还未完成初始化,本质是资源脚本加载顺序错误或配置文件路径不匹配。

修复步骤

  • 第一步:确认配置文件路径正确
    检查你__resource.lua中声明的client/config.lua路径是否真实存在,确保config.lua确实放在client文件夹下,路径拼写完全匹配,大小写也需要注意(Linux服务器对大小写敏感)。
  • 第二步:调整资源脚本加载顺序
    修改__resource.lua配置,确保配置文件优先于客户端逻辑代码加载,参考配置如下:
    -- 仅服务端需要用到Config时保留shared_script配置
    -- shared_script 'client/config.lua'
    client_scripts {
        'client/config.lua', -- 把配置文件放在客户端脚本最前面
        'client/main.lua'
    }
    server_scripts {
        'server/main.lua'
    }
    
  • 第三步:添加加载防御判断
    修改客户端逻辑代码,等待Config初始化完成后再执行绘制逻辑,避免重载资源时的瞬时报错:
    Citizen.CreateThread(function()
        -- 等待Config加载,最多等待5秒避免异常死循环
        local waitCount = 0
        while not Config and waitCount < 500 do
            Citizen.Wait(10)
            waitCount = waitCount + 1
        end
        if not Config then
            print("[错误] Config配置加载失败,请检查文件路径")
            return
        end
        -- 原有绘制逻辑
        while true do
            Citizen.Wait(1)
            DrawMarker(Config.MarkerType, 400.3, -1157.4, 28.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 4.0, 4.0, 4.0, 255, 0, 0, 170, false, true, 2, nil, nil," ", false)
        end
    end)
    
  • 第四步:检查全局变量覆盖
    你在客户端开头声明的ESX = nil不会影响Config变量,排查所有客户端代码中是否存在不小心给Config赋值为nil的逻辑。

内容的提问来源于stack exchange,提问作者Pakuss

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 07:06:00