Game NPC orchestration
Uzun oyun oturumlarında kalıcı, karakterde NPC'ler. Ensemble ilişkileriyle çoklu karakterli sahneler. Büyücünün yavaşça sarkastik bir AI'a dönüşmemesi için voice drift kontrolleri.
LLM-tabanlı NPC'lerdeki acı şu ki, drift'lerler. Kampanyaya soğuk ve hesaplı başlayan bir villain üçüncü oturumun sonunda sıcak ve yardımsever olur — yazar bunu istediği için değil, prompt context penceresinden düştüğü için. Moonborn'un runtime'ı zıt sonuç için kurulmuş: uzun yaylar boyunca karakterde kalan karakterler.
Bu ne zaman uyar
- Oyuncunun küçük bir kadroyla saatler geçireceği RPG / interactive fiction prototipleri.
- Çoklu karakterli sahneler — çatışmada iki NPC, bir lonca toplantısı, rakipler arası diyalog.
- Anlatı tutarlılığı audit'leri — bitmiş bir bölümü karakter bible'ına karşı kontrol etme.
- Kod olarak sürdürülen NPC kadro bible'ları — yazarların karakterleri pull request'lerde diff'lemesi için Persona-as-code ile eşle.
Moonborn ne sağlar
- Voice fingerprint — üretimde elli senaryolu baseline embed'lenir; her yanıt buna karşı skorlanır.
- Konfigüre edilebilir eşiklerle Drift detection — merkezi villain'lar için daha sıkı, kalabalık NPC'ler için daha gevşek.
- Ensemble ilişkileri — çoklu karakterli sahne prompt'larına enjekte edilen tipli edge'ler (rival, ex-lover, mentor).
- Lineage — "kasaba sarhoşu" archetype'unu kişiliklerini yeniden yazmadan 12 spesifik NPC'ye fork'la.
- Long-term memory — oyuncular NPC'lerin üç oturum önce verdiği sözleri hatırlar.
Moonborn ne sağlamaz
Scope'u açıkça yazıyoruz: Moonborn karakter katmanı, oyun motoru değil. Hâlâ sahiplenirsin:
- Sahne state'i, tur sırası, branching narrative.
- Savaş sistemi, ekonomi, dünya simülasyonu.
- Save/load + replay altyapısı.
- Oyuncuların dokunduğu UI.
Moonborn'u oyun motorunla (Unity, Godot, Twine, custom) eşle.
Moonborn diyalog trigger'ının arkasında yaşar;
chat.sendMessage'ı ne çağırırsa senin sorumluluğun.
Pattern: kod olarak kadro bible'ı
- Kadroyu bir markdown dosyasında taslakla: ad, rol, iki-satırlık pitch.
- Her birini üretmek için Build your first persona kullan.
- Audit + tune et; villain'ları kalabalık karakterlerden daha sıkı refine et.
- İlişkileri deklare et: Multi-character scenes tutorial.
- Bible'ın repo'nda yaşaması için Git sync bağla (Persona-as-code).
- Engine'de, her NPC diyalog trigger'ı eşleşen personaya karşı bir oturuma map'lenir.
NPC'ler için drift eşikleri
Başlangıç default'ları:
- Ana villain / antagonist:
0.20(sıkı; sesleri bir plot device). - Yoldaş karakterler:
0.25(tutarlı, ama insan varyasyonu kabul edilebilir). - Kalabalık / minör NPC'ler:
0.35(daha gevşek; çoğunlukla immersion'ı kırmamalarını istiyoruz).
Bunları workspace-genelinde değil, persona başı set'le — merkezi villain bütçeyi hak ediyor; han sahibi etmiyor.
Release başı kalite gate'i
Yeni bir bölümü göndermeden önce, her adlı NPC'ye karşı provocation test suite'ı çalıştır. Hatalar oyuncu-enjekteli garipliğin altında kırılacak karakterleri işaret eder — Reddit thread'lerinde çıkan türde failure mode.
Tarif
Pro ve üstü.
Sonraki
- Kadroyu kur: Multi-character scenes tutorial.
- Bible'ı Git'te tut: Persona-as-code use case.
- Voice drift derin dalış: Drift detection.