בעיות בפאנל מקוון של Knight (אינטרנט) ובסנכרון מסדי נתונים של משחקים
בשרתי pvp של Knight Online, פאנל האינטרנט (רישום, דירוג, Pus/Max) ושרת המשחקים משתמשים ישירות באותו מסד נתונים של SQL Server. למרות פתיחת חברות חדשה דרך האתר, קבלת שגיאת "מזהה או סיסמה שגויה" בעת הכניסה למשחק או סכום המזומן/KC שהתקבל מהאתר לא מופיע במשחק סנכרון (חוסר התאמה של נתונים) היא הבעיה. במדריך זה נבחן את הגורמים והפתרונות העיקריים לבעיה.
סיבה 1: גרסה שונה (v1299 / v2xx) טבלה ומבני נוהל
ייתכן שטבלאות SQL המופעלות על ידי חלונית האינטרנט שבה אתה משתמש בעת שליחת רשומות למסד הנתונים לא תואמות לטבלאות הנקראות על ידי קובצי המשחק.
פתרון:
- חברות בתשתיות v1299 הן בדרך כלל
TB_USERתוך כדי רישום בטבלה, במסדי נתונים נוכחיים v2xx ומעלהACCOUNT_CHARאוVERSION_DATAטבלאות נוספות כמו שצריך גם למלא. - בתיקיית הניהול של פאנל האינטרנט שלך
config.phpאו על ידי פתיחת קובץ הגדרות מסד הנתונים, בדוק איזה פרוצדורה (לדוגמה: `LOAD_USER_DATA` או `CREATE_NEW_ACCOUNT`) הפאנל מפעיל בעת לחיצה על חברות והאם הליך זה זמין ב-SQL Server.
סיבה 2: הרשאות חיבור מרחוק של SQL Server
אם האירוח/שרת שבו מתארח האתר שלך ושרת המשחקים שלך נמצאים בכתובות IP שונות, ייתכן ששרת המשחקים שלך חוסם בקשות נתונים מהאתר מסיבות אבטחת סייבר.
פתרון:
- פתח את SQL Server Management Studio, לחץ לחיצה ימנית על שם השרת שלך ו נכסים לומר.
- חיבורים עבור ללשונית ו "אפשר חיבורים מרוחקים לשרת זה" ודא כי (אפשר חיבורים מרוחקים לשרת זה) מסומן.
- יציאה של SQL Server לרשת החיצונית דרך חומת האש של Windows 1433 הוסף כלל נכנס ליציאה, המאפשר רק את כתובת ה-IP של האתר שלך.
סיבה 3: אי התאמה של שיטת ההצפנה MD5
ייתכן שפאנל האינטרנט שלך שומר סיסמאות של שחקנים ב-SQL כ-MD5 (hashs מוצפן) כדי להבטיח אבטחה. עם זאת, אם Ebenezer/DbAgent מתוכנת לקרוא סיסמאות בטקסט רגיל, שחקנים לא יכולים להיכנס למשחק.
- כבה את תכונת ההצפנה של MD5 בהגדרות הפאנל שלך או השתמש בגרסאות תואמות MD5 (נתמכות על ידי soaps/guard) של קבצי ה-exe של המשחק שלך.
מאמר זה הוכן במיוחד עבור PvPServer.