KI und Ich

Ein Blog über KI, Auswirkungen und Experimente von Karlheinz Agsteiner

Ein teures Hobby - Tag 4 meines RPGMaker Experiments

Ziemlich gut vorangekommen

Heute war ein guter Tag. Mit ChatGPT folgende neuen Features in mein Plugin eingebaut:
- Man kann wie im Spiel Position und Durchsichtigkeit des Chat-Fensters bestimmen. Allerdings nur global für jeden Chat, den jeder NPC sagt.
- Immer über das Menü zu gehen, um zu chatten, war unpraktisch. Drum gibt's jetzt zwei weitere Möglichkeiten (konfigurierbar): einen (ziemlich hässlichen) Chat-Button unten in der Mitte des Bildschirms und das praktische Kontextmenü - wenn der NPC etwas sagt, kann man entweder "antworten" oder "weiter" auswählen. Will man antworten, erscheint ein Dialog zum Eintippen des Textes.
- Ein NPC kann jetzt dem Spieler Gegenstände geben. Das LLM kann das entscheiden und als Aktion auswählen.

Ich hab auch viel ausprobiert; meistens funktionieren die AI-NPCs recht gut. Allerdings ist der Text, den man als Beschreibung des NPCs oder als Ziel eingibt, ein Prompt, und man muss manchmal sehr präzise sein, was man sagt, damit das LLM das Richtige sagt und tut.

So sieht das aus

Was zu tun ist

Mir ist noch unklar, wie man als Spieler einem NPC einen Gegenstand geben kann. Auch glaube ich, die Fähigkeit, einen Spielschalter zu verändern, hat Potential, aber ich habe es noch nicht ausprobiert.

Und ein paar kleine Bugs gibt's auch noch. Wie immer.

Kosten, Kosten, Kosten

Das geht ganz schön ins Geld, ein LLM mit der gesamten Historie von Aktionen und einem ziemlich umfangreichen Prompt mehrfach pro Sekunde zu rufen. Leider ist der Umstonst-Tier von Mistral auf eine Anfrage pro Sekunde beschränkt. Das reicht nicht.

fast 5 Euro in 3 Tagen mit Mistral Large

Also als nächstes: Lokale kleine Modelle in LMStudio laufen lassen und es mit denen versuchen. Das wird spannend, denn die sind weniger verlässlich.

Alternativ sollte ich an cleveren Ideen arbeiten, wie man die Anfragen an die LLMs reduzier - etwa "NPCs, die weiter als 3 Schritte entfernt sind, machen gar nichts. Würde natürlich Optionen wie "Hey du, komm mal her!" rufende Händler wegnehmen.

Und weil's funktioniert, auf Github

Zum Plugin auf Github