Chắc có nhiều bạn cũng đang tìm hiểu cái này. mấy hôm trước có người hỏi mình cách fix sau khi so sánh packet attack của 1.07h và 1.07P+ thì đây là cách fix protocols attack + magic skill .
Cái này rất quan trọng nếu bạn nào muốn develop cho bản ss5 ep4 hoặc ss6
Trong source của ACG hoặc bắt cứ source nào bạn vào hàm hook socket
aRecv ở đây là packet mà hàm hooks socket trong gameserver nhận về sau khi giải mã
int FixProtocol[24]; //
//Magic skill
aRecv[2] ==0x19
PHP Code:
aRecv[2]==0x1E
PHP Code:
aRecv[2]==0xD7
PHP Code:
//attack
aRecv[2]==0xDC
PHP Code:
new protocols attack này thực ra là webzen thay đổi vị trí các byte và nếu bạn nào nghiên cứu kĩ sẽ thấy được các chỉ số như index skill, vi trí x,y v.v.v.v.v
Cái này rất quan trọng nếu bạn nào muốn develop cho bản ss5 ep4 hoặc ss6
Trong source của ACG hoặc bắt cứ source nào bạn vào hàm hook socket
aRecv ở đây là packet mà hàm hooks socket trong gameserver nhận về sau khi giải mã
int FixProtocol[24]; //
//Magic skill
aRecv[2] ==0x19
PHP Code:
- Code:
FixProtocol[0] = aRecv[6];
FixProtocol[1] = aRecv[7];
FixProtocol[2] = aRecv[8];
FixProtocol[3] = aRecv[9];
aRecv[2] = 0x08;
aRecv[5] = FixProtocol[0];
aRecv[6] = FixProtocol[1];
aRecv[7] = FixProtocol[2];
aRecv[8] = FixProtocol[3];
aRecv[2]==0x1E
PHP Code:
- Code:
FixProtocol[0] = aRecv[5];
FixProtocol[1] = aRecv[6];
FixProtocol[2] = aRecv[3];
FixProtocol[3] = aRecv[4];
aRecv[3] = FixProtocol[0];
aRecv[4] = FixProtocol[1];
aRecv[5] = FixProtocol[2];
aRecv[6] = FixProtocol[3];
aRecv[2]==0xD7
PHP Code:
- Code:
FixProtocol1[0] = aRecv[3];
FixProtocol1[1] = aRecv[4];
FixProtocol1[2] = aRecv[5];
FixProtocol1[3] = aRecv[6];
FixProtocol1[4] = aRecv[7];
FixProtocol1[5] = aRecv[8];
FixProtocol1[6] = aRecv[9];
FixProtocol1[7] = aRecv[10];
FixProtocol1[8] = aRecv[11];
FixProtocol1[9] = aRecv[12];
FixProtocol1[10] = aRecv[13];
FixProtocol1[11] = aRecv[14];
FixProtocol1[12] = aRecv[15];
FixProtocol1[13] = aRecv[16];
FixProtocol1[14] = aRecv[17];
FixProtocol1[15] = aRecv[18];
FixProtocol1[16] = aRecv[19];
FixProtocol1[17] = aRecv[20];
FixProtocol1[18] = aRecv[21];
FixProtocol1[19] = aRecv[22];
FixProtocol1[20] = aRecv[23];
FixProtocol1[21] = aRecv[24];
FixProtocol1[22] = aRecv[25];
FixProtocol1[23] = aRecv[26];
aRecv[3] = FixProtocol1[4];
aRecv[4] = FixProtocol1[5];
aRecv[5] = FixProtocol1[0];
aRecv[6] = FixProtocol1[1];
aRecv[7] = FixProtocol1[2];
aRecv[8] = FixProtocol1[3];
aRecv[9] = FixProtocol1[7];
aRecv[10] = FixProtocol1[8];
aRecv[11] = FixProtocol1[9];
aRecv[12] = FixProtocol1[10];
aRecv[13] = FixProtocol1[11];
aRecv[14] = FixProtocol1[12];
aRecv[15] = FixProtocol1[13];
aRecv[16] = FixProtocol1[14];
aRecv[17] = FixProtocol1[15];
aRecv[18] = FixProtocol1[16];
aRecv[19] = FixProtocol1[17];
aRecv[20] = FixProtocol1[18];
aRecv[21] = FixProtocol1[19];
aRecv[22] = 0x00;
aRecv[23] = FixProtocol1[20];
aRecv[24] = FixProtocol1[21];
aRecv[25] = FixProtocol1[22];
aRecv[26] = FixProtocol1[23];
//attack
aRecv[2]==0xDC
PHP Code:
- Code:
FixProtocol[0] = aRecv[5];
FixProtocol[1] = aRecv[6];
FixProtocol[2] = aRecv[3];
FixProtocol[3] = aRecv[4];
aRecv[3] = FixProtocol[0];
aRecv[4] = FixProtocol[1];
aRecv[5] = FixProtocol[2];
aRecv[6] = FixProtocol[3];
new protocols attack này thực ra là webzen thay đổi vị trí các byte và nếu bạn nào nghiên cứu kĩ sẽ thấy được các chỉ số như index skill, vi trí x,y v.v.v.v.v