Comparação: Envs vs LCK_* Variables
📊 Tabela Comparativa Detalhada
Aspecto
Envs Variables
LCK_* Variables
Definição
Painel do servidor
Sistema automático
Modificação
Admin pode alterar
Impossível modificar
Conteúdo
Configurações personalizadas
Dados do usuário/sistema
Atualização
A cada 10 minutos
A cada 10 minutos
Escopo
Por resource
Por usuário/sessão
Tipo de Dados
Sempre strings
Strings (com dados específicos)
Uso Principal
Configurações editáveis
Informações dinâmicas
Segurança
Configurável
Protegido automaticamente
🎯 Quando Usar Cada Um
Use Envs Variables para:
-- ✅ Controles de resource pelo desenvolvedor
local systemEnabled = LockSystem.Envs.Get("SYSTEM_ENABLED") == "true"
-- ✅ Kill switches e emergency controls
local emergencyShutdown = LockSystem.Envs.Get("EMERGENCY_SHUTDOWN") == "true"
-- ✅ Controle de features
local premiumEnabled = LockSystem.Envs.Get("FEATURE_PREMIUM_ENABLED") == "true"
-- ✅ Debug e telemetria
local debugLevel = tonumber(LockSystem.Envs.Get("DEBUG_LEVEL")) or 0
-- ✅ Configurações de comportamento da resource
local maxUsers = tonumber(LockSystem.Envs.Get("MAX_CONCURRENT_USERS")) or 100
Use LCK_ Variables* para:
-- ✅ Informações do usuário autenticado
local discordId = LockSystem.LCK.Get("LCK_DISCORD_ID")
-- ✅ Recursos que o usuário possui
local userResources = LockSystem.LCK.Get("LCK_USER_RESOURCES")
-- ✅ Estatísticas dinâmicas
local activeUsers = LockSystem.LCK.Get("LCK_RESOURCE_ACTIVE_USERS")
-- ✅ Informações da loja/contexto
local shopName = LockSystem.LCK.Get("LCK_SHOP_NAME")
🔗 Usando Ambos Juntos
local function adaptiveResourceBehavior()
-- Usar Envs para controles do desenvolvedor
local systemEnabled = LockSystem.Envs.Get("SYSTEM_ENABLED") == "true"
local debugMode = LockSystem.Envs.Get("DEBUG_ENABLED") == "true"
local maxUsers = tonumber(LockSystem.Envs.Get("MAX_CONCURRENT_USERS")) or 100
if not systemEnabled then
outputServerLog("❌ Resource desabilitada pelo desenvolvedor")
return false
end
-- Usar LCK_* para dados dinâmicos
local activeUsers = tonumber(LockSystem.LCK.Get("LCK_RESOURCE_ACTIVE_USERS")) or 0
local shopName = LockSystem.LCK.Get("LCK_SHOP_NAME") or "Unknown"
local userResources = LockSystem.LCK.Get("LCK_USER_RESOURCES")
-- Combinar: controle do dev + dados reais
if activeUsers > maxUsers then
outputServerLog("⚠️ Limite definido pelo dev excedido: " .. activeUsers .. "/" .. maxUsers)
-- Dev definiu o limite, sistema aplica baseado em dados reais
return false
end
if debugMode then
outputServerLog("🔍 DEBUG: Shop=" .. shopName .. " Users=" .. activeUsers)
end
return true
end
Atualizado