Crie seu primeiro YMAP para FiveM

Posicione um pequeno grupo de objetos existentes, calcule os limites do mapa e transforme o resultado em um recurso que você pode testar.

Neste guia

Um YMAP com três objetos que carrega a partir do seu próprio recurso FiveM.

Antes de começarCodeWalker instalado · Acesso a um servidor FiveM de desenvolvimento

Monte um pequeno conjunto de objetos antes de criar um interior. Um banco e dois objetos relacionados bastam. Este exercício ensina posicionamento, nomenclatura, salvamento e implantação sem o trabalho extra de modelos personalizados, ambientes e portais.

Este é um exercício de adição ao mapa. Ele não ensina a remover um prédio existente, substituir colisão original ou editar um recurso protegido de outra pessoa.

Escolha um local simples

Escolha uma área plana e aberta no servidor de desenvolvimento. Anote uma coordenada próxima e um ponto de referência reconhecível. Evite locais já modificados por outro recurso; caso contrário, sua primeira sessão de diagnóstico pode tratar de conflitos, não do seu mapa.

Use objetos disponíveis na versão do jogo que seu servidor realmente executa. Inspecione um objeto adequado no CodeWalker e anote o nome do arquétipo. Não presuma que um objeto exibido com uma seleção de DLC exista em todas as versões de destino.

Crie o projeto e o mapa

Abra Project Window, crie um projeto e salve-o no diretório de trabalho. Crie um novo YMAP nesse projeto e dê a ele um nome distinto, como cw_workshop_practice.

Adicione uma entidade ao novo mapa. Defina o arquétipo como o objeto inspecionado e mova e gire até a posição desejada. Adicione outras duas entidades para formar um conjunto reconhecível. Confira a árvore do projeto após cada operação: você quer seu novo mapa, não uma alteração involuntária em um YMAP existente do jogo.

O README do CodeWalker documenta Project Window e a edição de entidades. Seu exemplo antigo de modo de um jogador usa um nível histórico específico de DLC. Não trate esse exemplo como uma instrução universal de configuração FiveM.

Faça o mapa exportado representar a área correta

Inspecione as posições das três entidades. Um objeto posicionado longe dos demais pode tornar o mapa muito maior do que o pretendido.

Use os controles de cálculo de flags e extensões do YMAP e salve-o. O guia de posicionamento do Sollumz documenta essa etapa de cálculo. Repita após mover ou adicionar entidades; não presuma que uma extensão calculada anteriormente ainda descreva o novo mapa.

Mantenha o arquivo do projeto junto da fonte editável. Coloque o arquivo efetivamente salvo .ymap no recurso pronto para implantação. Renomear um arquivo de intercâmbio não o converte em um asset do jogo.

Empacote o menor recurso útil

Neste exercício, o recurso apenas posiciona arquétipos existentes do jogo. Ele não define um YTYP personalizado.

resources/
  [maps]/
    cw_workshop_practice/
      fxmanifest.lua
      stream/
        cw_workshop_practice.ymap

Crie este arquivo fxmanifest.lua:

fx_version 'cerulean'
game 'gta5'

this_is_a_map 'yes'

O indicador de mapa é documentado na referência de manifestos do Cfx.re. Quando adicionar arquétipos personalizados depois, o pacote terá requisitos adicionais; use o tutorial de recursos em vez de copiar este exemplo mínimo sem alterações.

Teste em um servidor de desenvolvimento

Adicione o recurso ao seu servidor de desenvolvimento. No console do servidor, detecte os recursos recém-adicionados e inicie este:

refresh
ensure cw_workshop_practice

Adicione ensure cw_workshop_practice à configuração do servidor para as próximas inicializações. Vá ao local registrado e confirme que os três objetos aparecem. Não teste apenas reiniciando o recurso enquanto está sobre ele: reconecte-se e aproxime-se de outro local também.

Confira espaçamento, orientação e contato com o chão. Faça uma captura e registre uma correção. No CodeWalker, faça apenas essa mudança, recalcule o necessário, exporte e repita. O objetivo é um ciclo repetível de edição, exportação e teste, não um primeiro mapa impressionante.

Quando nada aparece

Confira primeiro o nome do recurso, o nome do manifesto e a extensão exportada. Confirme que o servidor realmente iniciou o recurso e que você visitou as coordenadas corretas. Depois, verifique se os arquétipos escolhidos existem na versão de destino do jogo.

Não comece logo apagando caches ou instalando outro editor. Um caminho de recurso errado e um modelo ausente são causas diferentes. O guia de diagnóstico de interiores ausentes mostra como separar problemas de empacotamento, posicionamento e assets.

Pratique com a fonte original de três objetos

Baixe o projeto e XML de três objetos. O JSON contém exatamente três posicionamentos de prop_roadcone02a nas posições locais X 0, 2 e 4, com rotações de identidade. Ele não contém malhas do jogo. A origem de mundo zero e os limites ilustrativos são padrões de aprendizagem, não um local verificado nem um exemplo de validação nativa.

Abra o JSON no Map Studio. Selecione o objeto do meio, altere apenas sua coordenada Y local e salve uma nova cópia JSON. Reabra essa cópia e compare os três posicionamentos. Os dois objetos externos devem permanecer iguais, e o do meio deve mudar; registre a alteração pretendida antes de exportar.

Escolha uma posição livre no mundo do seu jogo e aplique a origem conscientemente. Não confunda coordenadas locais com coordenadas finais do mundo. Exporte a fonte e inspecione-a no CodeWalker com os assets reais antes da compilação nativa. Mantenha o XML exportado separado do mapa nativo que irá para o recurso.

Ações de posicionamento do CodeWalker a verificar

O de posicionamento do Cfx.re documenta esta sequência: abra o painel de projeto e use File → New → Ymap File, selecione esse YMAP e use Ymap → New Entity. Defina o arquétipo e a transformação da entidade. Quando os posicionamentos estiverem prontos, selecione o YMAP e execute Calculate Extents e Calculate All Flags antes de salvar.

Neste exercício, compare a quantidade de entidades e todas as transformações com seu registro da fonte. Feche e reabra o mapa nativo salvo; isso evita confundir um estado não salvo do editor com uma saída correta. Ainda não afirme sucesso dentro do jogo.

Use o gerador de manifestos com YTYP personalizado desativado apenas quando todos os arquétipos referenciados estiverem disponíveis no jogo de destino. Depois, siga a instalação de recursos, caminhe ao redor dos três objetos e repita após reconectar. Registre a edição/versão do jogo e as versões de todas as ferramentas. Se a fonte veio de um trainer, e não do CodeWalker, use o guia de conversão XML primeiro.

Confira seu trabalho.

O progresso da lista de verificação fica neste navegador quando o JavaScript está ativado.

Fontes e leituras adicionais

O comportamento das ferramentas segue a documentação primária vinculada. Exercícios, nomes de exemplos e planos de teste são orientações editoriais, não uma afirmação de verificação dentro do jogo.

Guarde seu progresso. Sem precisar de conta.
Conecte Blender, Sollumz e CodeWalker

Pesquisar no guia prático

Comece a digitar para encontrar uma ferramenta ou um guia.

    Pesquisa ferramentas, títulos e textos dos artigos. As consultas ficam no seu navegador.esc para fechar