Como adicionar carros mod no seu servidor de FiveM
A estrutura de pastas otimizada que aguenta 30 carros sem virar bagunça, com o fxmanifest pronto e o passo que quase todo mundo erra.
Colocar um carro mod na cidade não é só jogar arquivo dentro do servidor. Se você fizer isso, ou o carro não aparece, ou aparece quebrado, ou você monta uma bagunça que fica impossível de manter quando chegar no décimo veículo.
Este guia mostra a estrutura certa desde o começo: uma pasta só para todos os seus carros, organizada de um jeito que você adiciona o vigésimo veículo com o mesmo trabalho do primeiro.
O exemplo usa um Nissan Skyline R34, mas serve para qualquer mod.
Prefere assistir? O processo completo está no nosso tutorial em vídeo. O passo a passo escrito continua abaixo.
1. Crie a pasta de veículos
Conecte na sua VPS, abra a base e entre em resources, que é a raiz dos seus recursos.
Crie ali uma pasta para os seus carros. O nome é escolha sua, e no exemplo é Veiculos.
Atenção: essa pasta é para todos os veículos, não uma por carro. É justamente isso que deixa a estrutura otimizada, porque o servidor carrega um resource só em vez de trinta.
Dentro dela, crie duas pastas:
- data
- stream

2. Crie o fxmanifest
Ainda dentro da pasta de veículos, crie um arquivo chamado fxmanifest.lua.
Uma forma rápida de abrir um editor ali: clique na barra de endereço da pasta,
digite cmd e dê Enter. No terminal que abrir, digite code . para abrir o VS
Code já na pasta certa.
Este é o conteúdo do arquivo:

fx_version 'adamant'
game 'gta5'
files {
"data/**/*.meta"
}
data_file 'HANDLING_FILE' 'data/**/handling.meta'
data_file 'VEHICLE_METADATA_FILE' 'data/**/vehicles.meta'
data_file 'CARCOLS_FILE' 'data/**/carcols.meta'
data_file 'VEHICLE_VARIATION_FILE' 'data/**/carvariations.meta'
data_file 'VEHICLE_LAYOUTS_FILE' 'data/**/vehiclelayouts.meta'
Salve e feche.
É esse arquivo que faz tudo funcionar. Ele é o responsável por carregar o
que está nas pastas data e stream. Sem ele, o seu mod simplesmente não
existe para o servidor.
O detalhe que torna a estrutura escalável são os **. Eles significam "procure
em qualquer subpasta", então esse mesmo arquivo serve para um carro ou para
cinquenta. Você nunca mais precisa mexer nele.
3. Mande os modelos para o stream
Abra a pasta do mod que você baixou. Os arquivos que interessam são os
.yft e .ytd, que são o modelo 3D e as texturas do carro.
Selecione todos e jogue dentro da pasta stream.

"Mas vai virar bagunça quando eu tiver o R34, o R35 e o R32 tudo junto aí
dentro?" Não. Na pasta stream é assim mesmo, tudo solto no mesmo lugar. É
a pasta data que precisa ser organizada, e é o próximo passo.
4. Descubra o nome de spawn
Aqui está o passo que a maioria erra.
Na pasta do mod também existem vários arquivos .meta. São eles que
configuram o carro:
- handling.meta: a física, ou seja, velocidade, freio, curva, peso
- carcols.meta e carvariations.meta: cores e variações
- vehicles.meta: o registro do veículo no jogo
Você vai jogar todos eles na pasta data, mas não soltos. Se fizer isso,
o segundo carro que você adicionar vai ter arquivos com o mesmo nome e dar
conflito.
A solução é criar, dentro de data, uma pasta com o nome de spawn do
veículo. E para descobrir esse nome, abra o handling.meta num editor.

Logo nas primeiras linhas está a tag <handlingName>. O que está dentro dela é
o nome de spawn.

No exemplo é nissanskyliner34. Copie.
5. Organize a pasta data
Dentro de data, crie uma pasta com esse nome e mova todos os arquivos .meta
para dentro dela.

A estrutura final fica assim:
resources/
└── Veiculos/
├── fxmanifest.lua
├── data/
│ ├── nissanskyliner34/
│ │ ├── handling.meta
│ │ ├── carcols.meta
│ │ ├── carvariations.meta
│ │ └── vehicles.meta
│ └── outrocarro/
│ └── ...
└── stream/
├── nissanskyliner34.yft
├── nissanskyliner34.ytd
└── ...
Toda vez que você adicionar um carro novo, o procedimento é o mesmo: .yft
e .ytd soltos no stream, e uma pasta nova no data com o nome de spawn
daquele veículo.
Se você tem 30 carros, vai ter 30 pastas dentro de data. E o fxmanifest
continua o mesmo, sem uma linha a mais.
6. Inicie a pasta no servidor
Falta dizer ao servidor para carregar esse resource. Procure o arquivo de configuração que lista os seus recursos, normalmente resources.cfg, server.cfg ou config.cfg.
Adicione uma linha com o nome da pasta que você criou:
ensure Veiculos

Salve. Como todos os carros ficam dentro dessa pasta, essa linha é a única que você precisa, agora e sempre.
7. Confira no console
Inicie o servidor e abra o console. Cada arquivo carregado aparece como Asset, em azul.

Se o nome do seu carro aparece ali, ele foi carregado. Com 30 veículos, o console vai ficar cheio dessas linhas azuis, e é normal.
Repare também no Started resource Veiculos logo depois. É a confirmação de
que a pasta subiu inteira.
8. Teste no jogo
Entre no servidor, aperte F8 e digite o comando de spawn com o nome que você descobriu no passo 4:
car nissanskyliner34

Se o carro aparecer, está tudo certo.
Se não funcionar
Os motivos são quase sempre estes:
- Nome de spawn errado. O comando usa o que está no
handlingName, não o nome da pasta do mod nem o nome do arquivo. - Faltou o
ensure. Sem a linha no arquivo de configuração, o servidor nem tenta carregar. .metasolto nodata. Precisa estar dentro da pasta com o nome de spawn..yftdentro de uma subpasta dostream. Nostreamé tudo solto.- O carro aparece mas sem textura. Faltou o
.ytd.
Se o console mostrar erro em vermelho que você não entende, dá para resolver mandando o print para uma IA, como mostramos em como corrigir erros do FiveM com IA.
Próximo passo: som de motor
Carro mod costuma vir mudo, ou com o ronco genérico de um carro qualquer do GTA. Com a estrutura acima já montada, dá para adicionar som próprio para cada veículo aproveitando essa mesma pasta.
O passo a passo está em como colocar som de motor personalizado nos carros.
Cuidado com o peso na sua cidade
Cada carro mod são dezenas de megabytes que todo jogador baixa antes de entrar. Uma frota grande de veículos é uma das principais causas de gente reclamando que demora demais para conectar.
Esse gargalo não é da máquina, é da entrega dos arquivos, e quem resolve é o cache externo, que passa o download para uma CDN e é gratuito para clientes WyzeHost.
Se quiser conferir se a base está aguentando o que você vem adicionando, o diagnóstico está em como saber se a sua base precisa de otimização.
E se a cidade ainda não está no ar, os planos de FiveM da WyzeHost já vêm com proteção DDoS, cache externo e endereço personalizado inclusos.


