Meine KI arbeitet mit sogenannten Paketen, die nacheinander abgearbeitet werden. Jedes Paket hat bestimmte Abbruchbedingungen oder kann manuell gestoppt werden und wird so lange ausgeführt, bis dies eintritt.
Die zentrale Steuerungseinheit überprüft die "Sinne" und Attribute des NSCs und führt dann entsprechende Aktionen aus. U.a. ist diese auch für Kommunikation zuständig, die über Scans mit entsprechend gesetzten signals ablaufen. Auf diese Weise werden auch das Hören, die Verwaltung von Weltevents, z.B. wenn etwas gestohlen wird, und versch. Attacks gesteuert. Jeder NSC hat zu jedem anderen einen Sympathiewert, der bei taktischen Überlegungen auch berücksichtigt, und von den Aktionen der anderen NSC gegenüber ihm beeinflusst wird.
Als Pathfinding-Lösung nehm ich die Router-Geschichte, da das, wie ich finde, den besten Kompromiss zwischen Schnelligkeit und Komfort darstellt.
Meine Daten werden über eine C++ Klasse verwaltet, jeder NSC bekommt so eine Klasse reserviert, auf die er dann über bestimmte funcs zugreifen kann.

Mir ist bei der Entwicklung meines RPG v.a. eine größtmögliche Flexibilität wichtig, denn bei sehr vielen NSCs spart man sich später die Arbeit, die man am Anfang investieren muss.