AI Core

Überblick

Wie AI Core aufgebaut ist - Repositories, der Build, die Regeln, denen jedes Skript folgt.

AI Core ist durchgehend TypeScript. Jede Ressource folgt dem Aufbau von overextended/fivem-ts; Lua wird nur für die ESX- / QB- / Qbox-Brücke in ai-core und für die Lua-Seite von ai-lib verwendet.

Repositories

RepositoryWas
Server-Ordnerserver.cfg und die anderen cfg-Dateien, recipe/ (txAdmin), tools/, template/, die Regeln und die Doku für KI-Tools. Er ist auch die Wurzel des Bun-Workspace.
ai-core und jedes ai-*Ein Repository pro Skript. Der Build (dist/, fxmanifest.lua) wird mit committet, sodass Server ohne Build-Tools laufen.
packagesDie npm-Pakete: @aicore-fivem/lib (Helfer), @aicore-fivem/mysql (Datenbank-Engine), @aicore-fivem/shared (Verträge zwischen Ressourcen), @aicore-fivem/build (Build-Schritte).

Build

bun install            # im Server-Ordner: verknüpft die Pakete und jede Ressource
bun run build          # jede Ressource (etwa 40 s), oder: bun run build ai-core ai-fuel
bun run typecheck
bun run lint

In einer Ressource laufen dieselben Skripte nur für diese Ressource; bun run dev beobachtet Änderungen. fxmanifest.lua wird aus package.json erzeugt: Bearbeite sie nie von Hand. Starte nach einem Build die Ressource neu (bun tools/rcon.ts "ensure ai-fuel") oder alles nach ai-core (bun tools/restart.ts).

Regeln, denen jedes Skript folgt

  • Der Server entscheidet. Jede Client-Anfrage geht durch das Gate der Lib (onClientEvent / onClientCallback): Prüfung auf echten Spieler, Rate-Limit, Guards (Admin, hat einen Charakter, nahe an einem Punkt), ein Argument-Parser. Geld, Items und Berechtigungen ändern sich nie auf dem Client.
  • Snapshot und Delta. Live-Daten gehen als ein Snapshot an die Clients, danach nur die Änderungen, nur an die, die sie brauchen. Kein Polling, keine „geändert, neu laden“-Signale.
  • Zuerst die Lib. Interaktionspunkte, Blips, Zonen, Keybinds, Befehle, Menüs, Fortschritt, Fahrzeuge, State Bags und periodische Arbeit kommen aus @aicore-fivem/lib; eine zweite, von Hand geschriebene Kopie ist ein Fehler.
  • Alles im Panel. Einstellungen, die ein Serverbetreiber anpasst, stehen im Admin-Panel (schema.ts + data/*.json), nie in einer Config-Datei.
  • Über AI Core. Items, Fahrzeugschlüssel, Alarme, Handy, Wetter, Gefängnis, Kleidung und Tode laufen über die Ebenen von AI Core, nie über die Exports eines bestimmten Skripts.
  • Skalierung zuerst. Sammlungen sind für Millionen Datensätze geplant und mit Benchmarks gemessen.

Die vollständigen Regeln stehen im Server-Ordner: CLAUDE.md und .claude/rules/.

Auf dieser Seite