פתרון שגיאת כיבוי שרת של Knight Online AIServer
מה זה AIServer?
AIServer הוא אחד השירותים העיקריים המאפשרים תפעול של אספסוף (mob), תנועות NPC, מערכות התקפה ובינה מלאכותית במשחק בשרת Knight Online.
אם AIServer נכבה:
- האספסוף לא זז
- NPCs לא עובדים
- שחקנים לא יכולים להשתמש במיומנויות
- גם אם השרת לא קורס לחלוטין, המשחק הופך לבלתי ניתן לשחק.
מדוע AIServer קורס?
יכולות להיות סיבות רבות ושונות לבעיית הכיבוי של AIServer. הסיבות השכיחות ביותר הן:
- קווי NPC או מפלצת שבורים
- חסרים קבצי אזור/נתיב
- תסריטי אירועים שגויים
- עריכות שגויות במסד הנתונים
- גלישת זיכרון
- פעולות הוספת מפה שגויות
- חסרים קבצי LUA או AI
בדוק תחילה קבצי יומן
הדבר הראשון שצריך לעשות בבעיות קריסה של AIServer הוא לבחון את קובצי יומן העסקאות.
ממוקם בתיקיית AIServer:
AIServer.log
פתח את הקובץ.
בדרך כלל ניתן לראות כאן את סוגי השגיאות הבאים:
Invalid NPC ID Region Load Failed Path Not Found Monster Table Error
בדוק את טבלאות NPC
אם ה- AIServer מתחיל לקרוס, במיוחד לאחר הוספת NPC חדש, ככל הנראה הבעיה נגרמת על ידי שורות שגויות במסד הנתונים.
בדוק את הטבלאות האלה ב-SQL Server:
- K_NPC
- K_MONSTER
- K_NPCPOS
שימו לב לדברים הבאים:
- חסר מזהה NPC
- מספר אזור שגוי
- ערכי קואורדינטות גרועים
- סוג מפלצת שגוי
קבצי אזור חסרים או פגומים
קבצי אזור חסרים במפות מסוימות גורמים לקריסה מיידית של AIServer.
בפרט:
- הוספת מפה חדשה
- התקנת אזור מותאם אישית
- שימוש ישן בלקוח
לאחר מכן, בעיה זו מתרחשת לעתים קרובות.
בדוק את קבצי הנתיב
AIServer מנהל את נתיבי התנועה של יצורים דרך קבצי נתיב.
קבצי נתיב חסרים או פגומים:
- התקנת אספסוף
- לאחור בשרת
- בעיית קריסה של AIServer
עלול לגרום.
בדוק את השימוש בזיכרון ובמעבד
זיכרון RAM לא מספיק או שימוש מוגזם במעבד עלולים לגרום גם לשירות AIServer להיסגר.
בפרט:
- 1000+ שחקנים מקוונים
- שרצת אספסוף גבוה
- אירועים לא מותאמים
זה יוצר עומס רציני על השרת.
פעולות מומלצות לפתרון
- נקה קווי NPC שבורים
- התקן מחדש קבצי אזור חסרים
- הפחת את צפיפות האספסוף
- בדוק סקריפטים של אירועים מותאמים אישית
- ביצוע תחזוקה של SQL
- תזמן אתחול מחדש של השרת
טעויות נפוצות
- עריכת מסד נתונים מבלי לקחת גיבוי
- שימוש בקובץ מפה לא נבדק
- שימוש בקבצי שרת חדשים עם לקוח ישן
- לא בודק התנגשויות מזהה NPC
מסקנה
בעיות קריסה של AIServer נגרמות בדרך כלל מקווי מסד נתונים פגומים או קבצי משחק חסרים. ניתן למנוע את הבעיות הללו במידה רבה באמצעות בקרת יומן רגילה ומבנה שרת אופטימלי.
מאמר זה הוכן במיוחד עבור PvPServer.