A lib
@aicore-fivem/lib - os helpers com que todo script ai-* é construído, e o ai-lib para Lua.
O @aicore-fivem/lib substitui o ox_lib no AI Core: tudo o que os scripts escreveriam à mão fica aqui, feito para escalar e verificado com benchmarks. Recursos em TypeScript o importam (@aicore-fivem/lib/client, /server, /shared); recursos em Lua o carregam do ai-lib (shared_script '@ai-lib/init.lua', depois aiLib.<name>), e recursos em JavaScript sem bundler carregam @ai-lib/dist/client.js / server.js.
Entrada do cliente e do servidor
| Helper | O quê |
|---|---|
onClientCallback, onClientEvent | Pedidos do cliente pelo portão: taxa, guards (isAdmin, hasCharacter, near), parser de argumentos, uma chamada por vez (lock). |
triggerServerCallback, callAction | O lado do cliente; callAction mostra a recusa traduzida sozinho. |
fail("KEY"), ActionResult | Recusas com uma chave de idioma. |
readInt, readId, readText, readVec3, readVec4, oneArg | Leitores rígidos para valores do cliente. |
progressFor | Uma ação cronometrada que o servidor executa: a barra de progresso do ai-lib no cliente do jogador, verdadeira só quando terminou lá e passou tempo suficiente no servidor. |
minigameFor | Um minigame de que um fluxo do servidor precisa (lockpick, skill check): ganhou, perdeu ou quebrou, decidido no cliente do jogador, e o servidor ainda confere. |
PendingActions | Diálogos que o servidor aguarda (o texto de um bilhete): token, liberado quando o jogador sai. |
PlayerMap, Cooldowns, KeyedCooldowns, onCharacter | Estado por jogador que se limpa sozinho quando o jogador sai ou troca de personagem. |
Mundo
| Helper | O quê |
|---|---|
Points | Cada lugar que os jogadores usam: prompt ou target (escolha do dono), NPCs, blips, pontos por modelo (caixas eletrônicos, bombas), pontos em veículos. |
Zones, Blips, LocalPed | Áreas, blips, peds locais. |
hasJob, inGang, onDutyIn, onMembershipChange | Verificações de vínculo para canShow. |
player, cache, onCache | O ped local: teleporte com carregamento de colisão, animações, congelar; ped, veículo, assento e arma em cache. |
spawnVehicle, vehicleKeys, vehicleFromNet, pedFromNet | Veículos do servidor com placa, chaves, combustível, visual e assentos em uma chamada. |
EntityState, PlayerState, GlobalKey, GlobalGroup | State bags sem o custo por leitura. |
raycast, groundZ, locationName, vehicleLabel, pedHeadshot | Sondagens e nomes. |
AreaStream, AreaFollower | Objetos do mundo (drops, plantas, corpos, props) transmitidos aos jogadores ao redor deles: um snapshot das células ao redor do jogador, depois só as mudanças. |
UI e fluxo
| Helper | O quê |
|---|---|
notify, progress, menu, input, itemPicker | A UI compartilhada, desenhada pelo ai-lib (o seletor de itens pelo ai-core). progress aceita uma animação ou cenário, um ponto para encarar, controles bloqueados, congelar, tecla de cancelar. |
skillCheck, lockpick | Minigames desenhados pelo ai-lib: um anel de skill check (o formato de dificuldade do ox_lib) e um lockpick com pinos e gazuas. |
NuiScreen | A página de tela cheia de um recurso: foco, HUDs escondidos, a mensagem de fechar e os callbacks da página em uma classe. |
Keybind, addCommand | Teclas (mostradas no painel e na lista de teclas) e comandos (verificados por ACE, listados no painel). |
every(ms, fn) | O único agendador do recurso para trabalho periódico. |
hud, keyHints, radial, controls | Esconder HUDs em UI de tela cheia, ajuda de teclas, itens do menu radial, controles desativados. |
Através do AI Core
inventory, vehicleKeys, dispatch, phone, world (hora e clima), prison, medical, appearance, money.transfer, buckets, online (jogadores, empregos, serviço, nomes), isPrimeTime: cada um encaminha para o script que o servidor roda para aquela tarefa.
A lista completa e atual é .claude/rules/lib.md, na pasta do servidor.