Início › Documentação › Configuração · origen_inventory

Configuração · origen_inventory

origen_inventory é configurado através de config.lua, config_sv.lua e dos ficheiros modulares dentro da pasta config/. Esta página documenta todas as variáveis agrupadas por área.


Geral — config.lua

Variável Tipo Por omissão Descrição
Config.Debug boolean true Ativa o registo de depuração em todos os subsistemas. Desativa em produção.
Config.Language string "es" Idioma carregado a partir de locales/translations/. Aceita es ou en.
Config.Framework string deteção automática "qbx", "esx", "qbcore" ou "NONE". Devolvido por AutoSelectFramework().
Config.Phone.Resource string "qs-smartphone-pro" Integração com o telemóvel. Aceita "qs-smartphone-pro", "lb-phone", "none".
Config.Progressbar string "default" Fornecedor da barra de progresso. Um de default, esx_progressbar, qb-core, qs-progressbar, ox_lib.
Config.UseInventoryComsumables boolean true Ativa a gestão integrada de consumíveis de comer/beber/álcool.
Config.CreateStashIfNoExists boolean true Cria automaticamente uma linha de stash quando se abre um ID de stash desconhecido.
Config.DefaultOpenKey string "F2" Tecla atribuída apenas à primeira vez para abrir o inventário. Depois do registo, os jogadores alteram-na nas teclas de atalho do FiveM.
Config.HotbarOpenKey string "TAB" Tecla atribuída para alternar a hotbar. Só é usada quando Config.UI.Hotbar = true.
Config.DisableEscOnInventoryOpen boolean true Desativa ESC enquanto a interface do inventário está aberta.
Config.DisableMovementOnInventoryOpen boolean false Imobiliza o jogador enquanto a interface está aberta.
Config.DisablePKey boolean true Desativa a tecla do mapa predefinida (P) enquanto o inventário está aberto.
Config.NotifyExports.GiveItem boolean true Envia uma notificação ao jogador quando giveItem é usado.
Config.NotifyExports.RemoveItem boolean true Envia uma notificação ao jogador quando removeItem é usado.

Definições de drops

Variável Tipo Por omissão Descrição
Config.Drop.MaxWeight number 100000 Peso total máximo por drop no chão.
Config.Drop.MaxSlots number 10 Número máximo de slots por drop no chão.

Cores dos marcadores

lua
Config.MarkerColors = {
    give_player = vec4(0, 0, 0, 255),
}

Flags experimentais

Variável Tipo Por omissão Descrição
Config.Experimentals.giveItemAlgorithm string "no_stack" Algoritmo usado ao dar itens. stack_unique permite dar stacks de itens únicos, slot_based atribui slots automaticamente às armas e no_stack é o comportamento antigo de um único item.

As flags experimentais podem corromper os dados do inventário em casos extremos. Ativa-as primeiro apenas num servidor de testes.


Jogador — config/player.lua

Variável Tipo Por omissão Descrição
Config.Player.GiveDistance number 3.5 Distância máxima em metros para dar itens a outro jogador.
Config.Player.DropMarkerDistance number 3.0 Distância a que o marcador do drop no chão se torna visível.
Config.Player.MaxWeight number 120000 Peso total máximo do inventário (gramas).
Config.Player.MaxInventorySlots number 40 Número máximo de slots.
Config.Player.SaveInterval number 40 Intervalo de gravação automática em minutos.
Config.Player.ShopTimeout number 2 Tempo de espera em segundos antes de voltar a abrir uma loja.

Proteção anti-batota

Variável Tipo Por omissão Descrição
Config.Player.CheatProtect.Enable boolean true Interruptor geral das medidas anti-batota. Ignorado para os administradores detetados por Bridge.IsAdmin.
Config.Player.CheatProtect.MaxDistanceRemoteOpen number 10.0 Distância máxima permitida entre o jogador e o inventário que está a abrir.
Config.Player.CheatProtect.EnableNoItemWeapons boolean true Remove as armas dadas ao jogador sem passar pelo inventário (scripts de terceiros).

Clothes-As-Item (CAI)

Variável Tipo Por omissão Descrição
Config.Player.ClothesAsItem.Enable boolean true Ativa o subsistema Clothes-As-Item. Requer origen_clothing.

Money-As-Item (MAI)

Variável Tipo Por omissão Descrição
Config.Player.MoneyAsItem.Enable boolean true Ativa o Money-As-Item. O recurso regista automaticamente o item de dinheiro.
Config.Player.MoneyAsItem.Accounts table ver abaixo Contas associadas a itens do inventário.
lua
Config.Player.MoneyAsItem.Accounts = {
    [DetectMoneyOrCash()] = {
        account = DetectMoneyOrCash(),
        label = 'Dinero',
        description = 'El mundo gira a su alrededor',
        weight = 0,
    },
    -- black_money = {
    --     account = 'black_money',
    --     label = 'Black Money',
    --     description = 'Black Money',
    --     weight = 0,
    -- }
}

Interface

Variável Tipo Por omissão Descrição
Config.UI.Mini boolean true Ao abrir um inventário secundário (stash, mala, etc.), oculta o inventário do jogador até o secundário ser fechado.
Config.UI.ShowPlayerNameOnGiveItem boolean true Mostra o nome do destinatário no aviso de dar um item.
Config.UI.Hotbar boolean true Ativa a hotbar.
Config.UI.ShowCraftingIndicator boolean true Mostra um pequeno indicador enquanto uma ação de criação está em curso.
Config.UI.PlayerInventoryLabel string "Inventory" Etiqueta apresentada no topo do separador do inventário do jogador.
Config.UI.Color string "default" Tema de cores da interface.
Config.UI.DelayNuiFocusForTabKey boolean false Atrasa o foco NUI ao premir TAB (corrige problemas de entrada em alguns clientes).
Config.UI.EnableTabs table ver abaixo Ativa ou desativa a visibilidade e as subações dos separadores do inventário.
lua
Config.UI.EnableTabs = {
    personal = {
        enable = true,
        clothes = true,
        enableActions = true,
        actions = {
            toggleHair = true,
            searchPlayer = true,
            carry = true,
            piggyback = true,
            rockstarEditor = true,
        }
    },
    settings = {
        enable = true,
        keybinds = true,
        appearance = true
    },
    vehicle = {
        enable = true,
    }
}

Animações

Config.Animations.Carry e Config.Animations.Piggyback definem os dicionários e clipes de animação usados pelas ações de carregar ao colo e às cavalitas. Consulta config/player.lua para ver a tabela completa.


Veículos — config/vehicles.lua

Variável Tipo Por omissão Descrição
Config.OpenTrunkAnywhere boolean false Permite abrir a mala independentemente da posição do jogador em volta do carro.
Config.TrunkOpenDistance number 3.0 Distância máxima à mala para a abrir (quando OpenTrunkAnywhere = false).
Config.BackEngineVehicles string[] ver ficheiro Veículos cujo motor/mala está à frente. A posição da mala é invertida automaticamente para estes.
Config.Trunks.vehicles table ver abaixo Capacidade da mala por veículo. A chave default aplica-se a qualquer veículo sem configuração própria.
Config.Gloveboxes.vehicles table ver abaixo Capacidade do porta-luvas por veículo.
lua
Config.Trunks.vehicles = {
    default = {
        slots = 35,
        maxweight = 60000,
        label = 'Maletero',
    },
    [`speedo`] = {
        slots = 2,
        maxweight = 40000,
        label = 'Speedo Trunk',
        bone = 'door_dside_r',
    }
}
 
Config.Gloveboxes.vehicles = {
    default = {
        slots = 5,
        maxweight = 12500,
        label = 'Glovebox',
    },
    [`sultan`] = {
        slots = 5,
        maxweight = 12500,
        label = 'Sultan Glovebox',
    },
}

Usa acentos graves (`) à volta do nome do modelo do veículo, não aspas simples nem duplas. O script calcula internamente o hash do nome de spawn.


Stashes — config/stashes.lua

lua
Config.Stashes = {
    default = {
        slots = 30,
        maxweight = 120000,
    },
    ['example'] = {
        label = 'ORIGEN TEST',
        slots = 8,
        marker = {
            type = 20,
            size = vector3(0.3, 0.3, 0.3),
            color = { r = 0, g = 0, b = 0, a = 255 },
        },
        locations = { vector3(-1319.3, -2493.41, 14.95) },
        -- job = 'police',
        -- job_gradeup = 0,
        -- job_gradedown = 2,
        -- gang = 'origen',
        -- gang_gradeup = 0,
        -- gang_gradedown = 3,
    },
}
Campo Descrição
slots Número de slots deste stash.
maxweight Peso total permitido (só válido em default).
label Etiqueta apresentada.
locations Array de vector3. O stash é criado em cada posição.
marker type, size e color opcionais para o marcador no mundo.
job / job_gradeup / job_gradedown Restringe o acesso a um intervalo de graus de trabalho.
gang / gang_gradeup / gang_gradedown Igual ao anterior, para gangues.

Lojas — config/shops.lua

O ficheiro de lojas divide-se em três partes:

lua
Config.Shops = {
    ['weapons'] = {
        label = 'Shop',
        slots = 4,
        marker = {
            type = 20,
            size = vector3(0.3, 0.3, 0.3),
            color = { r = 0, g = 0, b = 0, a = 255 },
            distanceView = 5,
            distanceInteract = 1,
        },
        blip = {
            enabled = true,
            sprite = 52,
            color = 2,
            scale = 0.8,
            name = 'ORIGEN Shop Armas',
        },
        locations = { vector3(-1299.95, -2458.56, 13.94) },
        items = Config.ShopItems['weapons'],
    },
}

Cada entrada de item dentro de Config.ShopItems aceita:

Campo Tipo Descrição
name string Nome do item ou da arma.
price number Custo por unidade.
amount number Stock apresentado na loja.
metadata table Metadados opcionais aplicados ao item comprado (p. ex. o número de série de uma arma).
type string Por omissão 'item'.

As restrições de trabalho e gangue (job, job_gradeup, job_gradedown, gang, gang_gradeup, gang_gradedown) funcionam como nos stashes.


World Points — config/worldpoints.lua

O sistema de world points é o motor que desenha os sprites e marcadores de stashes, lojas, bancadas de criação e drops.

Variável Tipo Por omissão Descrição
Config.WorldPoints.Enabled boolean true Interruptor geral. Se o desativares, todos os world points são removidos.
Config.WorldPoints.ForceGroundZ boolean true Força os pontos ao nível do chão ao copiar as coordenadas.
Config.WorldPoints.BlipsShortRange boolean true Os blips só são visíveis perto, em vez de aparecerem sempre no minimapa.
Config.WorldPoints.UseDropModel boolean true Gera um prop nos sacos de itens largados.
Config.WorldPoints.DefaultDropModel hash prop_med_bag_01b Prop usado quando UseDropModel = true, ou seja, o prop gerado nos sacos.
Config.WorldPoints.MarkerColors table ver ficheiro Cores do marcador por tipo de ponto.
Config.WorldPoints.DefaultMarkers table ver ficheiro Definições de marcador por omissão para stash, shop e crafting.
Config.WorldPoints.PointTypes table ver ficheiro Sprite, marcador, hooks e comportamento por tipo de ponto.
Config.WorldPoints.Initialization table ver ficheiro Atrasos de arranque em milissegundos.
Config.WorldPoints.Interaction.keys.interact number 38 (E) Tecla de interação.
Config.WorldPoints.Interaction.behavior.cooldownMs number 100 Tempo de espera entre interações.
Config.WorldPoints.Interaction.behavior.allowInteractionInVehicle boolean false Indica se as interações são permitidas dentro de um veículo.
Config.WorldPoints.Interaction.feedback.playSounds boolean true Ativa os sons de interação.
Config.WorldPoints.VisualEffects.sprites.enableFloatingLight boolean true Acrescenta uma luz flutuante por baixo dos sprites.
Config.WorldPoints.Debug.enabled boolean Config.Debug Ativa os registos detalhados e os elementos visuais de depuração.
Config.WorldPoints.Security.maxInteractionsPerSecond number 1 Limite de frequência anti-spam.
Config.WorldPoints.Security.checkPlayerState boolean true Desativa as interações enquanto o jogador está morto.

Armas — config/weaponoptions.lua

Variável Tipo Por omissão Descrição
Config.Weapons.InventoryWeaponSystem boolean true Ativa o sistema de armas integrado (acessórios, sincronização, reparação, recarga, colete). Desativa apenas se usares um sistema de armas externo.
Config.Weapons.DisableDecay boolean false Desativa o desgaste de durabilidade das armas.
Config.Weapons.RepairSystem.enabled boolean true Ativa as oficinas de reparação de armas.
Config.Weapons.RepairSystem.points table ver ficheiro Definições dos pontos de reparação: location, restrictions (trabalho/itens) e time em minutos.
Config.Weapons.Draw.enabled boolean true Ativa o subsistema de sacar armas.
Config.Weapons.Draw.variants number[] { 130, 122, 3, 6, 8 } Variantes de componente desenhadas no coldre.
Config.Weapons.Draw.weapons string[] ver ficheiro Armas compatíveis com o saque do coldre.
Config.Weapons.Draw.weapon_reload_animation.enable boolean true Reproduz uma animação de recarga. Desativa se quiseres que a arma recarregue instantaneamente.
Config.Weapons.Draw.weapon_reload_animation.progress boolean true Mostra uma barra de progresso durante a animação de recarga.
Config.Weapons.AmmoReloadTime table ver ficheiro Tempo de recarga por tipo de munição, em milissegundos.
Config.Weapons.FastReload.enabled boolean true Ativa a tecla de recarga rápida.
Config.Weapons.FastReload.key string "R" Tecla de recarga rápida.
Config.Weapons.FastReload.NeedAmmoInHotbar boolean false Se for true, exige munição nos slots 1–6 para a recarga rápida.
Config.Weapons.Throwables table ver ficheiro Lista branca de armas de arremesso.
Config.Weapons.Melee table ver ficheiro Lista branca de armas corpo a corpo.
Config.Weapons.AmmoTypes table ver ficheiro Associa os itens de munição a tipos de munição e tamanho do carregador.
Config.DurabilityMultiplier table ver ficheiro Multiplicador de durabilidade por arma (mais baixo = desgasta-se mais devagar).
Config.DurabilityBlockedWeapons string[] ver ficheiro Armas isentas de durabilidade.
Config.WeaponTints table ver ficheiro Mapa de nome de item → ID de tinta.
Config.Armors table armor = 50, heavyarmor = 100 Quantidade de armadura por item de armadura.
Config.MaximumAmmoValues table weapon_pistol = 10 Limite máximo apenas visual na NUI.
Config.WeaponAttachments table ver ficheiro Itens de acessório associados a hashes de componente por arma.
Config.Weapons.list string[] ver ficheiro Registo mestre de armas.

Criação — config/crafting.lua

Variável Tipo Por omissão Descrição
Config.Crafting.enable boolean true Ativa o sistema de criação.
Config.Crafting.items table ver ficheiro Receitas. Cada entrada define ingredients, resultItem opcional, resultCount e time em milissegundos.
Config.Crafting.zones table ver ficheiro Zonas de criação com enable, locations, radius, label e a lista de items disponíveis.
lua
["tosti"] = {
    ingredients = {
        ["sandwich"]     = 2,
        ["water_bottle"] = 1,
        ["weapon_pistol"] = 1,
    },
    resultCount = 1,
    time = 5000,
}

Airdrops — config/airdrops.lua

O sistema de airdrops está marcado como WIP no código-fonte. Usa-o primeiro em ambientes de teste.

Variável Tipo Por omissão Descrição
Config.Airdrop.CrateModel string "prop_box_wood02a_pu" Modelo do prop da caixa.
Config.Airdrop.ParachuteModel string "prop_v_parachute" Modelo do prop do paraquedas.
Config.Airdrop.DropHeight number 100.0 Altura de lançamento em metros acima do chão.
Config.Airdrop.LandingTime number 10000 Tempo de aterragem em milissegundos (0 = colocação instantânea no chão).
Config.Airdrop.StashSlots number 20 Número máximo de slots dentro do stash do airdrop.
Config.Airdrop.Smoke.enable boolean true Ativa o fumo da aterragem.
Config.Airdrop.Smoke.particle table dict = "scr_ar_planes", name = "scr_ar_trail_smoke" Dicionário e nome da partícula.
Config.Airdrop.Smoke.scale number 0.8 Escala da partícula.
Config.Airdrop.Smoke.color table { r = 170, g = 30, b = 80 } Cor da partícula (limitada pela compatibilidade da partícula).

Drift — config/drift.lua

Variável Tipo Por omissão Descrição
Config.EnableDriftMode boolean false Ativa o interruptor do modo drift (exports.origen_inventory:ToggleDriftMode(true)).
Config.DriftHandling.InitialDragCoeff number 90.22 Resistência aerodinâmica durante o drift.
Config.DriftHandling.DriveInertia number 0.31 Inércia de tração. Mais alto = aceleração mais lenta.
Config.DriftHandling.SteeringLock number 22 Ângulo máximo de viragem.
Config.DriftHandling.TractionCurveMax number -1.1 Tração máxima em curva. Os valores negativos são intencionais.
Config.DriftHandling.TractionCurveMin number -0.4 Tração mínima em curva.
Config.DriftHandling.TractionCurveLateral number 2.5 Aderência lateral nas curvas.
Config.DriftHandling.LowSpeedTractionLossMult number -0.57 Multiplicador de perda de tração a baixa velocidade.

Animações de revista — config/search.lua

Config.SearchAnims é uma lista de pares de animação (dict, anim) usados aleatoriamente quando um jogador é revistado. Edita o ficheiro para adicionar ou remover animações.


Webhooks — config_sv.lua

URLs de webhooks do Discord apenas para o servidor. Substitui cada valor WEBHOOK_URL_HERE pela tua URL real ou deixa o marcador para desativar esse canal.

lua
Config.Webhook = {
    default  = "WEBHOOK_URL_HERE",
    giveItem = "WEBHOOK_URL_HERE",
    search   = "WEBHOOK_URL_HERE",
    stash    = "WEBHOOK_URL_HERE",
    trunks   = "WEBHOOK_URL_HERE",
    glovebox = "WEBHOOK_URL_HERE",
    drops    = "WEBHOOK_URL_HERE",
    money    = "WEBHOOK_URL_HERE",
}

Peças de roupa — config/clothes.lua

Define Config.Clothings.Standalone, Config.Clothings.DefaultHairy, Config.Clothings.Variations, Config.Clothings.Drawables e Config.Clothings.Props. Estas tabelas controlam as trocas de componentes de roupa usadas pelo separador de roupa do inventário.

Este ficheiro é grande porque lista todas as variações de componentes por género. Normalmente só o editas para adicionar variações personalizadas com AddNewVariation(category, gender, source, target, single).