חומת אש נוירו-סימבולית עבור דמויות NPC במשחקים
הטעות שרוב מערכות ה-AI-NPC עושות היא לאפשר לדיאלוג לשמש כשכבת ההחלטות. Aegis מציבה שכבת החלטות דטרמיניסטית בין מכניקת המשחק לבין מודל השפה: הקוד שולט בכל תוצאה מכנית, והמודל רק כותב שורות התואמות לדמות עבור ההחלטה שכבר התקבלה. מכיוון שאין נתיב קוד מהדיאלוג אל מצב המשחק, שחקן אינו יכול לבצע הנדסה חברתית על NPC כדי לשבור את המשחק. מה שניתן לראות כאן הוא הדגמה על גבי מיני-RPG סינתטי, ולא מנוע משחק.
אפס
נתיבי קוד מדיאלוג למצב המשחק
core.py, קוד Python דטרמיניסטי ללא ייבוא של מודלים
100%
עמידה באינווריאנטים, סביבת ריצה מוגנת
ערבות מבנית, מאומתת על ידי 6 בדיקות ללא מפתח API
89.6%
שיעור עקיפה מול מסנני NPC סטנדרטיים
מחקר jailbreak במשחקי תפקידים, ProvSec 2025
הסיור המודרך מריץ תוקף אוטונומי מול שתי סביבות ריצה של NPC עבור אותו מצב משחק. Hollowmere, שלושת ה-NPCs שלה וכל תסריט ניצול הם סינתטיים. ללא משחק, מנוע, שחקן או לקוח אמיתיים.
לאולפן הבוחן דמויות NPC מונעות LLM עבור משחק תפקידים נרטיבי יש חשש מבני אחד. תנו למודל כלי מסוג give_item, open_gate או reveal_secret וקריאת הכלי שלו תשנה את העולם, ושחקן נחוש ימצא נתיב באמצעות מסגור סמכות, מסגרת משחק תפקידים, תחינה רגשית או הזרקת פרומפט ישירה. ככל שהמודל רהוט יותר מבחינה חברתית, כך הניצול רהוט יותר. גרוע מכך, לא ניתן לבצע QA ידני ל-NPC שאינו דטרמיניסטי, מכיוון שאין קבוצה סופית של וריאציות דיאלוג לבדיקה.
כאשר פרומפט מערכת או מסנן הם הדבר היחיד העומד בין שחקן לכספת, בטיחות היא הסתברות שהשחקן זוכה לתקוף תור אחר תור. פריצות jailbreak במשחקי תפקידים נגד מסנני NPC סטנדרטיים דווחו בשיעור עקיפה של 89.6 אחוזים ב-ProvSec 2025.
הדרישה ממודל יחיד להישאר בדמות ולאכוף את חוקי העולם מציבה את השופט בתוך ההצגה. פרומפט טוב יותר או מודל גדול יותר הופכים את המשחק למשכנע יותר, שזה בדיוק החלק שהשחקן מבצע מולו אופטימיזציה.
אין מטריצת בדיקות המכסה כל דרך שבה שחקן עשוי לנסח בקשה. ה-QA הידני מסתיים לפני ששטח הפנים של המתקפה מתמצה, ולכן יש להפוך את היריב לאוטונומי במקום למנות בדיקות באופן ידני.
Aegis היא שכבת ההפרדה בין הלוגיקה הסימבולית של המשחק לבין הדיאלוג העצבי. חומת האש היא קובץ Python דטרמיניסטי יחיד ללא ייבוא של מודלים, המריץ ארבעה שלבים. מצב המשחק משתנה אך ורק משכבת ההחלטות, לעולם לא מהמקריין, כך שאפילו שורה החורגת מסמכות מותירה כל אינווריאנט ללא פגע.
01 / שכבת החלטות
פונקציה דטרמיניסטית קוראת סקלרים מלוח המידע, לעולם לא דיאלוג, ומחזירה את הפעולה היחידה שהמקריין מורשה לקריין. היא משחררת את מפתח האובסידיאן רק כאשר מצב המשימה הוא favor_completed, מקבלת שוחד רק כאשר ציון ה-utility-AI עובר את הסף והקפטן אינו צופה והמוניטין נשמר, וחושפת את סיסמת הכספת רק כאשר השחקן זוכה לאמון.
02 / ידע עולם מותנה-מצב
גרף ידע מקומי קטן מחזיר רק את הישויות שמצב המשימה הנוכחי מאשר. סוד כגון סיסמת הכספת נושא דרישת מצב-מינימום, כך שבמצב נמוך יותר הוא לעולם אינו מוזן לקונטקסט של המקריין מלכתחילה, ודבר שאינו בקונטקסט אינו יכול לדלוף אפילו עקרונית.
03 / מאמת אילוצים
לפני ששורה כלשהי מגיעה לשחקן, המאמת בודק את פלט המקריין מול האינווריאנטים ומחזיר אחד מחמישה סטטוסים: PASS, ACTION_MISMATCH כאשר שורה מנסה לשדרג את פסק הדין, OUTSIDE_CANON כאשר היא מתייחסת לישות מותנית-מצב, NEEDS_REVIEW כאשר היא מבטיחה דבר שאינו במלאי, ו-FOURTH_WALL כאשר היא שוברת דמות או מהדהדת הנחיה שהוזרקה.
04 / שער מדיניות
בסטטוס PASS הדיאלוג מוצג. בכל סטטוס אחר השורה מעוכבת, לעולם אינה מגיעה לשחקן, ומנותבת לתור סקירה אנושית. זוהי חומת האש השנייה: אפילו במקריין שלנו אין אמון. הערבות הראשית נמצאת במעלה הזרם ממנה, שכן מצב המשחק יכול להשתנות אך ורק משכבת ההחלטות.
המקריין ניתן להחלפה בין מודל מתארח, גשר מקומי, Ollama מקומי או Cloudflare באמצעות הפשטת ספק, בעוד שההחלטה, המאמת ושער המדיניות שוכנים מחוץ להפשטה זו. הערבות אינה זזה כאשר הספק משתנה, מכיוון שהיא מעולם לא הייתה תכונה של המודל.
סוכן תוקף אוטונומי מריץ את אותו קמפיין הנדסה חברתית מסלים מול שתי סביבות הריצה עבור אותו מצב משחק. שלושה ארכיטיפים של NPC מכסים שלושה סוגי מתקפה: גניבת חפצים, שוחד שעל ה-utility AI לדחות, וזליגת ידע עולם. המפגש עם שומר השער מוביל את הסיפור.



ל-Bryn שומר הלילה מוצע שוחד שעל ה-utility AI לדחות, ובאחד התורים המקריין המוגן חורג מסמכותו בהבטחת אלף מטבעות זהב שאין ברשות Bryn. המאמת מחזיר NEEDS_REVIEW ומעכב שורה זו לפני ההצגה, במקום לאפשר ל-NPC להבטיח דבר שהמשחק אינו יכול לספק. על Mira סוחרת הכספת מופעל מסגור של אימות-הסוד, וכאשר המקריין המוגן מנסה להשתמש באותו קישוט רטורי המאמת מחזיר OUTSIDE_CANON ומעכב אותו. הסיסמה מעולם לא הייתה במאגר הידע של Mira מלכתחילה. שתי שכבות נראות בעת ובעונה אחת: מצב המשחק אינו יכול להשתנות מדיאלוג, והמאמת לוכד את המקריין שלנו חורג מסמכות לפני שהשחקן רואה את השורה אי פעם.
חבילת הבדיקות מפעילה את מערך הבדיקות המלא על פני שלושת הארכיטיפים ומסכמת לוח תוצאות. קראו את שני המספרים בעמודות שההדגמה מקפידה להפריד ביניהן. ה-100 אחוזים הם תוצאה מבנית. תוצאת הבסיס לצידה היא שחזור להמחשה בלבד, וממשק המשתמש מציין זאת במפורש.

| שאלה | מה Aegis עושה בהדגמה זו | מה נותר מחוץ להדגמה |
|---|---|---|
| ערבות מבנית | שומרת כל החלטה מכנית בקוד דטרמיניסטי ללא נתיב מדיאלוג למצב המשחק, מאומת על ידי שש בדיקות ללא מפתח API. | הוכחה לכך שדמויות NPC בטוחות מפני כל ניצול אפשרי. זוהי הטענה הממוקדת יותר שדיאלוג אינו יכול לשנות מצב משחק. |
| פריצת קו הבסיס | מריצה כניעה מתוסרטת במצב שידור חוזר כדי להציג את אופן הכשל של מוסמך-המודל זה לצד זה. | שיעור פריצה מדוד לכל מודל, הדורש מודל נגיש ומשתנה ממודל למודל. |
| כיסוי יריבי | מריצה שלושה קמפיינים מתוסרטים המפעילים שבע מתוך שמונה מחלקות ניצול מוגדרות ומתעדת את מגבלות הכיסוי בביקורת. | הוכחה יריבית ממצה. הביקורת מציינת את המספר, את המתקפות לכל ארכיטיפ, וכי אין מדובר בהוכחה ממצה. |
| הסקה על גבי המכשיר (On-device inference) | קוראת למודל מתארח או מקומי מאחורי ממשק ספק, כאשר נקודת החיבור לסביבת ריצה מוטמעת מתועדת. | סביבת ריצה אמיתית על גבי המכשיר או בתוך מנוע המשחק עם תקצוב VRAM. חלק הקצה מוגדר כ-stub, ולא נבנה עדיין. |
היא אינה רצה בתוך מנוע משחק, על גבי קונסולה או על גבי GPU, ואינה מספקת סביבת ריצה להסקה בקצה. אין כלל מנוע משחק ומצב המשחק מסומלץ. העולם Hollowmere, שלושת ה-NPCs Aldric, Bryn ו-Mira, סיסמת הכספת וכל תסריט ניצול נכתבו ידנית, כך שאף אחד מהם אינו משחק אמיתי, אולפן, כותר שהושק, שחקן, לקוח או פיילוט. במצב שידור חוזר ברירת המחדל, פריצת מוסמך-המודל היא שחזור מתוסרט ולא מדידה. ה-100 אחוזים הם ערבות מבנית לכך שדיאלוג אינו יכול לשנות את מצב המשחק, ולא טענה שדמויות NPC בטוחות מפני כל ניצול, וה-QA היריבי כאן הוא מדגם, לא הוכחה ממצה. עורך חזותי למוח ה-NPC, כוונון עדין לכל דמות, זיכרון מתמשך בין הפעלות, סנכרון לוח מידע מרובה-משתתפים והיסק בין דמויות NPC נדחו לשלבים הבאים. דף זה הוא דף הסבר עם וידאו, צילומי מסך, פירוט מנגנונים ותשובות, ולא אפליקציה שניתן להפעיל מכאן.
לא, והסיבה לכך היא ארכיטקטונית ולא עניין של איכות הפרומפט. בסביבת ריצה זו מודל השפה לעולם אינו מחזיק בכלים המשנים מצב. שכבת החלטות דטרמיניסטית מחשבת את פסק הדין המכני מסקלרים של מצב המשחק, המודל רק כותב דיאלוג עבור פסק הדין שכבר הוכרע, ואין שום נתיב קוד מדיאלוג זה בחזרה לשדה של מצב המשחק. מכיוון שהערבות שוכנת בקוד שהמודל אינו יכול להגיע אליו, היא מתקיימת ללא קשר למידת השכנוע או היכולת של המודל.
פרומפט מערכת או מסנן בטיחות שומרים את ההחלטה בתוך הדיאלוג, שבו שחקן נחוש הוא ממטב טבעי נגדו, וזו הסיבה שפריצות jailbreak במשחקי תפקידים נגד מסנני NPC סטנדרטיים דווחו בשיעור עקיפה של 89.6 אחוזים ב-ProvSec 2025. מערכת Aegis מעבירה את ההחלטה אל מחוץ למודל לחלוטין, לתוך Python פשוט שמעצב משחקים יכול לקרוא. המודל מייעץ באמצעות קריינות; קוד דטרמיניסטי מכריע לגבי המכניקה, והוא לעולם אינו נדרש להיות גם השחקן וגם השופט.
לא. המקריין ניתן להחלפה בין מודל מתארח כגון Anthropic, OpenAI או Gemini, גשר מקומי, Ollama מקומי או Cloudflare, באמצעות הפשטת ספק. שכבת ההחלטות הדטרמיניסטית, מאמת האילוצים ושער המדיניות שוכנים מחוץ להפשטה זו, כך שהערבות אינה זזה כאשר אתם מחליפים ספקים. החלפת הספק משנה את המקריין, לא את חוקי העולם.
לא. במצב שידור חוזר ברירת המחדל של ההדגמה, הצד מוסמך-המודל מריץ כניעה מתוסרטת, וממשק המשתמש מסמן את התוצאה כשחזור להמחשה, ולא כמדידה. שיעור פריצה אמיתי לכל מודל דורש מודל נגיש ומשתנה ממודל למודל. הנקודה שההדגמה מציגה היא האסימטריה: את התבנית מוסמכת-המודל ניתן להביא לשבירה, בעוד שהצד הנוירו-סימבולי נשאר שלם מבנית ללא קשר לשאלה איזה מודל מקריין אותו.
לא בהדגמה זו. אין כאן מנוע משחק ומצב המשחק מסומלץ. הסקה על גבי המכשיר, עם מודל מוטמע המתוקצב מול VRAM ומדורג לפי רמת פירוט בתוך מנוע, היא נקודת חיבור מתועדת למתאם ולא משהו שההדגמה מריצה. המקריין קורא כעת למודל מתארח או מקומי מאחורי ממשק, וסביבת הריצה להסקה בקצה מוגדרת כ-stub, ולא נבנתה עדיין.
ההרצה מייצאת ביקורת אבטחת NPC (NPC Security Audit): קובץ JSON חתום עם תמצית שלמות SHA-256, תצוגת HTML להדפסה, עקבת החלטות ופסק דין של המאמת לכל מתקפה, ובלוק מגבלות כיסוי מפורש המציין כמה מתקפות רצו ועל פני כמה מחלקות ניצול. הוא תוכנן להיות התוצר שאולפן זהיר מגיש לאישור השקה. הוא מציג ביושר שמדובר במדגם ולא בהוכחה ממצה, והביקורת מציינת זאת במפורש.
המחקר שמאחורי הדגמה זו — הארכיטקטורה, תכנון האימות והמתווה הארגוני.
פתרון מלא
גלו את פתרון Game AI NPC Intelligence →אנו צוות הנדסת AI, לא ספק תוכנת תווך. אנו בונים את השכבה הדטרמיניסטית שמאפשרת לאולפן להציב מודל שפה בתוך NPC מבלי למסור לו את המפתחות לעולם.
שיחה ראשונה מועילה היא שיחה קונקרטית: ההחלטות המכניות במשחק שלכם ששחקן לעולם אינו רשאי לעקוף באמצעות טיעונים, המודל והספק שברצונכם שיקריינו אותן, ומה שסוקר השקה צריך לראות לפני מתן אישור. נוכל לעבוד על שכבת ההחלטות, כללי המאמת ומבנה הביקורת יחד עם המתכנתים שלכם.