AI Core

Visão geral

Como o AI Core é construído - repositórios, o build, as regras que todo script segue.

O AI Core é TypeScript de ponta a ponta. Cada recurso segue a estrutura do overextended/fivem-ts; Lua é usado só para a ponte ESX / QB / Qbox dentro do ai-core e para o lado Lua do ai-lib.

Repositórios

RepositórioO quê
Pasta do servidorserver.cfg e os outros arquivos cfg, recipe/ (txAdmin), tools/, template/, as regras e a documentação para ferramentas de IA. Também é a raiz do workspace do bun.
ai-core e cada ai-*Um repositório por script. O build (dist/, fxmanifest.lua) é commitado, então os servidores rodam sem ferramentas de build.
packagesOs pacotes npm: @aicore-fivem/lib (helpers), @aicore-fivem/mysql (motor de banco de dados), @aicore-fivem/shared (contratos entre recursos), @aicore-fivem/build (etapas de build).

Build

bun install            # na pasta do servidor: liga os pacotes e cada recurso
bun run build          # cada recurso (cerca de 40 s), ou: bun run build ai-core ai-fuel
bun run typecheck
bun run lint

Dentro de um recurso, os mesmos scripts rodam só para aquele recurso; bun run dev fica observando. O fxmanifest.lua é gerado a partir do package.json: nunca o edite à mão. Depois de um build, reinicie o recurso (bun tools/rcon.ts "ensure ai-fuel") ou tudo depois do ai-core (bun tools/restart.ts).

Regras que todo script segue

  • O servidor decide. Cada pedido do cliente passa pelo portão da lib (onClientEvent / onClientCallback): verificação de jogador real, limite de taxa, guards (admin, tem personagem, perto de um ponto), um parser de argumentos. Dinheiro, itens e permissões nunca mudam no cliente.
  • Snapshot e delta. Dados ao vivo vão para os clientes como um snapshot, depois só as mudanças, só para quem precisa delas. Sem polling, sem sinais de "mudou, busque de novo".
  • A lib primeiro. Pontos de interação, blips, zonas, keybinds, comandos, menus, progresso, veículos, state bags e trabalho periódico vêm do @aicore-fivem/lib; uma segunda cópia escrita à mão é um defeito.
  • Tudo no painel. As configurações que o dono do servidor ajusta ficam no painel de administração (schema.ts + data/*.json), nunca em um arquivo de config.
  • Através do AI Core. Itens, chaves de veículos, alertas, celular, clima, prisão, roupas e mortes passam pelas camadas do AI Core, nunca pelos exports de um script específico.
  • Escala primeiro. As coleções são planejadas para milhões de registros e medidas com benchmarks.

As regras completas estão na pasta do servidor: CLAUDE.md e .claude/rules/.

Nesta página