carvariations.meta e carcols.meta explicados
O carvariations.meta define a aparência que um modelo de veículo pode ter: combinações de cores, liveries, mod kit, configurações de luz e de sirene. O carcols.meta é a biblioteca para onde essas configurações apontam: ele define os mod kits com suas peças de tuning, as configurações de sirene e as de luz. Um veículo só precisa de carcols.meta quando traz kit, sirene ou luzes próprios.
Qual é a diferença entre carvariations.meta e carcols.meta?
| carvariations.meta | carcols.meta | |
|---|---|---|
| Elemento raiz | CVehicleModelInfoVariation | CVehicleModelInfoVarGlobal |
| Escopo | Uma entrada por modelo de veículo | Definições compartilhadas que qualquer veículo pode referenciar |
| Contém | Combinações de cores, liveries, nomes de kit, índice de luz e de sirene | Kits (peças de tuning), Sirens, Lights, cores, rodas |
| data_file no FiveM | VEHICLE_VARIATION_FILE | CARCOLS_FILE |
| Necessário em um add-on? | Recomendado para todo veículo | Só com peças de tuning, sirenes ou luzes personalizadas |
Como se monta uma entrada do carvariations.meta?
Cada <Item> em variationData pertence ao veículo indicado em modelName. Ele lista as combinações de cores, os kits que o veículo pode usar e dois números que escolhem uma configuração de luz e uma de sirene.
<?xml version="1.0" encoding="UTF-8"?>
<CVehicleModelInfoVariation>
<variationData>
<Item>
<modelName>mycar</modelName>
<colors>
<Item>
<indices content="char_array">
1
4
4
156
111
111
</indices>
<liveries>
<Item value="false" />
<Item value="false" />
</liveries>
</Item>
</colors>
<kits>
<Item>0_default_modkit</Item>
</kits>
<windowsWithExposedEdges />
<plateProbabilities>
<Probabilities />
</plateProbabilities>
<lightSettings value="1" />
<sirenSettings value="0" />
</Item>
</variationData>
</CVehicleModelInfoVariation>
| Campo | Significado |
|---|---|
modelName | O veículo ao qual esta entrada se aplica. Tem que ser igual ao modelName do vehicles.meta. |
colors | Lista de combinações de cores. O jogo escolhe uma delas quando o veículo dá spawn sem um script definir as cores. |
kits | Nomes dos mod kits que o veículo usa, definidos no carcols.meta. |
windowsWithExposedEdges | Nomes das janelas cujas bordas ficam visíveis. |
plateProbabilities | Probabilidade de cada estilo de placa. |
lightSettings | ID de uma entrada Lights do carcols.meta. |
sirenSettings | ID de uma entrada Sirens do carcols.meta. 0 para veículos sem sirene. |
Como funcionam os índices de cor?
Cada combinação de cores tem seis números. Cada número é um índice na lista de cores de veículo do jogo (0 é preto metálico, 111 é branco metálico e assim por diante). Os seis slots são fixos:
| Posição | Slot | Native do jogo que define |
|---|---|---|
| 1 | Cor primária | SET_VEHICLE_COLOURS |
| 2 | Cor secundária | SET_VEHICLE_COLOURS |
| 3 | Perolado | SET_VEHICLE_EXTRA_COLOURS |
| 4 | Cor das rodas | SET_VEHICLE_EXTRA_COLOURS |
| 5 | Cor do interior | SET_VEHICLE_EXTRA_COLOUR_5 |
| 6 | Cor do painel | SET_VEHICLE_EXTRA_COLOUR_6 |
A lista liveries dentro de cada combinação diz com quais liveries aquela combinação pode dar spawn. Um veículo pode ter até 30 liveries. O Coil S-Cooter, por exemplo, traz nove combinações de cores nesse arquivo, e elas podem ser editadas à vontade porque os metas ficam abertos.
Como funcionam as liveries?
O sistema clássico de livery troca uma textura. O veículo precisa de FLAG_HAS_LIVERY no vehicles.meta e de texturas com o sufixo _sign_1, _sign_2 e assim por diante no dicionário de texturas dele; o jogo conta essas texturas quando o modelo carrega. Os scripts alternam entre elas com a native SET_VEHICLE_LIVERY.
O segundo sistema é um slot de tuning: peças de mod kit do tipo VMT_LIVERY_MOD, com os nomes de exibição listados em liveryNames do kit.
O que é um mod kit e por que o ID do kit importa?
Um mod kit é a lista de peças de tuning e upgrades de desempenho que um veículo pode receber. Os kits ficam na seção Kits do carcols.meta. Cada kit tem um nome, um ID numérico e um tipo.
<?xml version="1.0" encoding="UTF-8"?>
<CVehicleModelInfoVarGlobal>
<Kits>
<Item>
<kitName>mycar_modkit</kitName>
<id value="850" />
<kitType>MKT_SPECIAL</kitType>
<visibleMods>
<Item>
<modelName>mycar_spoiler_a</modelName>
<modShopLabel>MYCAR_SPL_A</modShopLabel>
<linkedModels />
<turnOffBones />
<type>VMT_SPOILER</type>
<bone>chassis</bone>
<collisionBone>chassis</collisionBone>
<cameraPos>VMCP_DEFAULT</cameraPos>
<audioApply value="1.000000" />
<weight value="0" />
<turnOffExtra value="false" />
<disableBonnetCamera value="false" />
<allowBonnetSlide value="true" />
</Item>
</visibleMods>
<linkMods />
<statMods>
<Item>
<identifier />
<modifier value="25" />
<audioApply value="1.000000" />
<weight value="0" />
<type>VMT_ENGINE</type>
</Item>
</statMods>
<slotNames />
<liveryNames />
</Item>
</Kits>
</CVehicleModelInfoVarGlobal>
| Campo | Significado |
|---|---|
kitName | Nome do kit. É isso que o carvariations.meta referencia. |
id | ID numérico do kit. Tem que ser único entre todos os kits carregados no servidor. |
kitType | MKT_STANDARD, MKT_SPORT, MKT_SUV ou MKT_SPECIAL. |
visibleMods | Peças com modelo 3D: aerofólios, para-choques, saias e assim por diante. |
linkMods | Modelos que só aparecem junto com outra peça. |
statMods | Upgrades de desempenho sem modelo: motor, freios, câmbio, suspensão, blindagem. |
slotNames | Renomeia um slot de tuning no menu da oficina de tuning. |
liveryNames | Nomes de exibição das liveries do kit. |
O jogo mantém uma única tabela de IDs de kit. Quando chega um segundo kit com um ID que já está em uso, o carregador registra no log um ID de kit duplicado e dá a ele outro ID livre. Esse é o motivo mais comum de peças de tuning sumirem depois de adicionar mais veículos: dois resources trazem o mesmo id. Dê a cada kit um número próprio.
Para ligar o kit ao veículo, coloque o nome dele no carvariations.meta:
<!-- carvariations.meta -->
<kits>
<Item>mycar_modkit</Item>
</kits>
Um veículo sem peças personalizadas pode usar o 0_default_modkit original, que dá a ele os upgrades de desempenho padrão. Um <kits /> vazio tira o tuning do veículo.
Para achar quais IDs de kit, sirene e luz estão repetidos entre todos os seus resources, solte os arquivos no verificador de conflito de IDs do carcols.
Quais são os campos de uma peça de tuning?
Cada item em visibleMods é uma peça. modelName é o nome do arquivo de modelo da peça na pasta stream. type é o slot de tuning em que ela aparece, e bone é o bone do veículo em que ela fica presa.
| Campo | Significado |
|---|---|
modelName | Modelo da peça. |
modShopLabel | Text label mostrado na oficina de tuning. |
linkedModels | Link mods presos junto com esta peça. |
turnOffBones | Peças originais a esconder quando a peça é instalada (por exemplo o para-choque original). |
type | Slot: VMT_SPOILER, VMT_BUMPER_F, VMT_BUMPER_R, VMT_SKIRT, VMT_EXHAUST, VMT_CHASSIS, VMT_GRILL, VMT_BONNET, VMT_WING_L, VMT_WING_R, VMT_ROOF e outros. |
bone, collisionBone | Bone em que a peça fica presa, e o bone habilitado para colisão extra: chassis, bodyshell, bumper_f, bumper_r, bonnet, boot, misc_a e assim por diante. |
cameraPos | Para onde vai a câmera da oficina de tuning: VMCP_DEFAULT, VMCP_FRONT, VMCP_REAR, VMCP_LEFT, VMCP_RIGHT, VMCP_TOP e outras. |
weight | Mudança de peso causada pela peça, de 0 a 100 por cento. |
turnOffExtra | Se for true, a peça esconde os extras no mesmo bone. |
Os stat mods usam os slots VMT_ENGINE, VMT_BRAKES, VMT_GEARBOX, VMT_SUSPENSION, VMT_ARMOUR e VMT_HORN, com modifier como a intensidade do upgrade.
Como funcionam lightSettings e sirenSettings?
lightSettings e sirenSettings no carvariations.meta são IDs. Eles selecionam uma entrada com o mesmo id na seção Lights ou Sirens de um carcols.meta. Se o número não existir, o jogo cai para a primeira entrada.
- Uma entrada
Lightsdefine intensidade, falloff, ângulos do cone e cor das setas, lanternas traseiras, faróis e luzes de ré, e o tamanho e a intensidade das coronas delas. - Uma entrada
Sirensguarda até 20 luzes de sirene. Cada uma tem cor, intensidade, rotação e padrão de piscada (sequencer), e a entrada define o ritmo comsequencerBpm.
Assim como os IDs de kit, os IDs de sirene e de luz são compartilhados pelo servidor inteiro, então dois veículos de emergência que trazem o ID de sirene 1 vão entrar em conflito. Use um ID diferente para cada configuração de sirene e coloque o mesmo número em sirenSettings.
Como os dois arquivos são carregados no FiveM?
Os dois arquivos entram em files no fxmanifest.lua. O carcols.meta ganha uma linha data_file 'CARCOLS_FILE' e o carvariations.meta uma linha data_file 'VEHICLE_VARIATION_FILE'. Coloque a linha do carcols primeiro, já que o carvariations se refere aos kits pelo nome. O manifest completo está em como adicionar um veículo add-on ao FiveM, e as regras de ordem na referência de data_file. Se as peças ou as cores não aparecem no jogo, confira a seção de tuning do guia de solução de problemas.
Perguntas frequentes
- Preciso de carcols.meta em um carro add-on?
- Só quando o carro tem peças de tuning, configuração de sirene ou configuração de luz próprias. Um carro que usa um mod kit original e configurações de luz originais só precisa do carvariations.meta.
- Por que minhas peças de tuning estão faltando ou erradas no FiveM?
- A causa mais comum é um ID de kit duplicado: dois arquivos carcols.meta definem um kit com o mesmo valor de id. Troque um deles para um número que nenhum outro veículo usa e mantenha o mesmo nome de kit no carvariations.meta.
- Como adiciono mais cores a um veículo?
- Adicione outro Item com seis índices à lista colors do veículo no carvariations.meta. A ordem é primária, secundária, perolado, rodas, interior e painel.
- Quantas liveries um veículo pode ter?
- O jogo suporta até 30 liveries por veículo no sistema de troca de textura.
- O que significa sirenSettings 0?
- Seleciona a entrada de sirene 0, que é a usada pelos veículos sem sirene.
Fontes
Produtos deste guia
Todos os guias
- Como instalar um resource FiveM do Cfx.re Escrow (Granted Assets)
- Como adicionar um veículo custom num servidor ESX, QBCore ou QBox
- O que são LODs em veículos FiveM?
- Como adicionar um veículo add-on a um servidor FiveM
- vehicles.meta explicado, campo por campo
- handling.meta explicado: campos, unidades e flags
- vehiclelayouts.meta explicado: assentos, pontos de entrada e animações
- Referência de data_file do fxmanifest para veículos
- Arquivos de modelo do veículo (yft, _hi.yft, ytd) e o aviso de asset grande demais
- Solução de problemas de veículo add-on no FiveM: causas e correções
- Como resolver "You lack the required entitlement" em um servidor FiveM
- Como converter um mod de carro single-player do GTA 5 em add-on de FiveM
- Como um hoverboard de FiveM funciona sem script
- Como fazer um veículo de FiveM no Blender com o Sollumz 2.9
- Como otimizar um veículo de FiveM: polígonos, LODs e orçamento de texturas
- Como configurar a colisão de veículo no Sollumz
- Comprar veículos FiveM: o que conferir antes de pagar
- Pack de carros FiveM vs veículos avulsos
- Carro de marca real no FiveM: pode ou não?
- CodeWalker vs Sollumz: qual ferramenta usar em veículos de FiveM?
