AI Core
Grundlagenai-lib

ai-lib

Die gemeinsame Spieler-UI, die jedes Skript nutzt (Benachrichtigungen, Fortschrittsbalken, Hinweise, Menüs, Eingabedialoge, Minispiele), und die AI-Core-Helfer für Lua- und JavaScript-Ressourcen.

ai-lib erfüllt zwei Aufgaben:

  1. Die Spieler-UI, die sich alle Skripte teilen. Benachrichtigungskarten, der Fortschrittsbalken und seine Abbruchtaste, die Hinweise rechts auf dem Bildschirm und die Interaktionstaste, Menüs, Eingabedialoge sowie die Minispiele Schlossknacken und Geschicklichkeitstest. Jedes ai-*-Skript, die Brücke von AI Core (ESX- und QB-Skripte) und deine eigenen Skripte zeichnen darüber, sodass der ganze Server gleich aussieht.
  2. Die AI-Core-Helfer für andere Ressourcen. Eine Lua-Ressource fügt ihrem Manifest eine Zeile hinzu und bekommt aiLib.notify, aiLib.Points, aiLib.addCommand, aiLib.progress und den Rest. Reine JavaScript-Ressourcen laden seine Bundles. So nutzen Lua-Skripte AI Core genauso wie TypeScript-Skripte.

Die UI läuft ohne ai-core, du kannst ai-lib also allein nutzen. Die Helfer, die Spieler, Geld oder Items lesen, brauchen ai-core.

Was es im Spiel macht

  • Benachrichtigungen. Karten in vier Arten (Erfolg, Fehler, Info, Warnung), standardmäßig 4 Sekunden.
  • Fortschrittsbalken. Ein Balken für jedes Skript. Der Spieler bricht eine abbrechbare Aktion mit der Rücktaste ab.
  • Hinweise. Boxen „Drücke E, um ...“ rechts oder schwebend über einem Weltpunkt (einer Tür). Eine Interaktionstaste (E) für jedes Skript; der neueste Hinweis liegt oben.
  • Menüs und Eingabedialoge. Listen mit Symbolen, Untermenüs (Escape geht zurück, Escape halten schließt), Schalter und Formulare mit Text- und Zahlenfeldern.
  • Minispiele. Ein Schlossknacker (den Dietrich bewegen, das Schloss drehen) und ein Geschicklichkeitstest (auf dem Grün drücken).
  • Immer im Vordergrund. Menüs und Benachrichtigungen erscheinen über jedem anderen Bildschirm, auch über dem Charakterbildschirm.

Installation

Das txAdmin-Rezept von AI Core installiert es. Von Hand: Lege den Ordner in resources/[ai]/ und füge ensure ai-lib in der server.cfg ein, nach ensure ai-core, wenn du AI Core nutzt. Es braucht OneSync. Es hat keine Datenbanktabelle.

Panel-Einstellungen

ai-lib hat keinen eigenen Tab. Zwei Einstellungen im Tab General von AI Core ändern es:

Einstellung (Tab General)Was sie ändertStandard
Karte Notifications, Notification scriptWo Benachrichtigungskarten erscheinen: die eigenen Karten von ai-lib oder ein anderes Benachrichtigungsskript, das du installiert hast. Wenn dieses Skript stoppt, kommen die Karten von ai-lib zurück. Hinweise bleiben immer die von ai-lib.ai-lib
Karte Interaction, Interaction stylePrompt and key (die Hinweise von ai-lib) oder Target eye (ein Target-Skript wie ai-target).Prompt and key

Befehle

Keine.

Tastenbelegungen

StandardtasteWas sie machtName in den GTA-Einstellungen
EBenutzt den obersten Hinweis (oder den fokussierten Target-Marker)Interact with the prompt on screen
RücktasteBricht die laufende Aktion ab (einen Fortschrittsbalken, der das erlaubt)Cancel the running action

Ändere die Standardtaste für alle im Panel-Tab Keybinds; jeder Spieler kann seine eigene in den Tasteneinstellungen von GTA ändern.

Zusammenspiel mit anderen Skripten

  • UI von ESX und QB. Die Brücke von AI Core zeichnet esx_context, esx_textui, esx_notify, esx_progressbar, esx_menu_*, qb-menu, qb-input und progressbar mit den Menüs, Hinweisen, Karten und dem Balken von ai-lib, sodass diese Skripte wie der Rest des Servers aussehen.
  • Andere Benachrichtigungsskripte können die Karten übernehmen (Tab General, siehe oben).

Bekannte Grenzen

  • Die Namen der Menüsymbole sind eine feste Font-Awesome-Liste; ein unbekannter Name zeigt einen Punkt.
  • Lua-Ressourcen prüfen ihre eigenen Zonen und Modellpunkte; JavaScript-Ressourcen übergeben ihre an ai-lib, das sie alle mit einem Timer prüft.

Auf dieser Seite