Merge pull request #28 from savisxss/main

removed matrix
This commit is contained in:
d1str4ught
2025-11-13 18:53:39 +01:00
committed by GitHub
7 changed files with 0 additions and 220 deletions

View File

@@ -57,39 +57,6 @@ void CAccountConnector::Disconnect()
__OfflineState_Set();
}
bool CAccountConnector::SendRunupMatrixCardPacket(const char * c_szMatrixCardString)
{
TPacketCGRunupMatrixAnswer answerPacket;
answerPacket.bHeader = HEADER_CG_RUNUP_MATRIX_ANSWER;
strncpy(answerPacket.szAnswer, c_szMatrixCardString, RUNUP_MATRIX_ANSWER_MAX_LEN);
answerPacket.szAnswer[RUNUP_MATRIX_ANSWER_MAX_LEN] = '\0';
if (!Send(sizeof(answerPacket), &answerPacket))
{
TraceError("SendRunupMatrixCardPacketError");
return false;
}
return SendSequence();
}
bool CAccountConnector::SendChinaMatrixCardPacket(const char * c_szMatrixCardString)
{
TPacketCGChinaMatrixCard MatrixCardPacket;
MatrixCardPacket.bHeader = HEADER_CG_CHINA_MATRIX_CARD;
strncpy(MatrixCardPacket.szAnswer, c_szMatrixCardString, CHINA_MATRIX_ANSWER_MAX_LEN);
MatrixCardPacket.szAnswer[CHINA_MATRIX_ANSWER_MAX_LEN] = '\0';
if (!Send(sizeof(MatrixCardPacket), &MatrixCardPacket))
{
Tracen("SendLogin Error");
return false;
}
CPythonNetworkStream::Instance().SetWaitFlag();
m_isWaitKey = TRUE;
return SendSequence();
}
void CAccountConnector::Process()
{
CNetworkStream::Process();
@@ -162,12 +129,6 @@ bool CAccountConnector::__AuthState_Process()
if (!__AnalyzePacket(HEADER_GC_LOGIN_FAILURE, sizeof(TPacketGCAuthSuccess), &CAccountConnector::__AuthState_RecvAuthFailure))
return true;
if (!__AnalyzePacket(HEADER_GC_CHINA_MATRIX_CARD, sizeof(TPacketGCChinaMatrixCard), &CAccountConnector::__AuthState_RecvChinaMatrixCard))
return true;
if (!__AnalyzePacket(HEADER_GC_RUNUP_MATRIX_QUIZ, sizeof(TPacketGCRunupMatrixQuiz), &CAccountConnector::__AuthState_RecvRunupMatrixQuiz))
return true;
if (!__AnalyzePacket(HEADER_GC_HANDSHAKE, sizeof(TPacketGCHandshake), &CAccountConnector::__AuthState_RecvHandshake))
return false;
@@ -386,41 +347,6 @@ bool CAccountConnector::__AuthState_RecvAuthFailure()
return true;
}
bool CAccountConnector::__AuthState_RecvRunupMatrixQuiz()
{
TPacketGCRunupMatrixQuiz kMatrixQuizPacket;
if (!Recv(sizeof(TPacketGCRunupMatrixQuiz), &kMatrixQuizPacket))
return false;
PyCallClassMemberFunc(m_poHandler, "BINARY_OnRunupMatrixQuiz", Py_BuildValue("(s)", kMatrixQuizPacket.szQuiz));
return true;
}
#define ROW(rows, i) ((rows >> ((4 - i - 1) * 8)) & 0x000000FF)
#define COL(cols, i) ((cols >> ((4 - i - 1) * 8)) & 0x000000FF)
bool CAccountConnector::__AuthState_RecvChinaMatrixCard()
{
TPacketGCChinaMatrixCard kMatrixCardPacket;
if (!Recv(sizeof(TPacketGCChinaMatrixCard), &kMatrixCardPacket))
return false;
if (m_poHandler)
{
PyObject * pyValue = Py_BuildValue("(iiiiiiii)", ROW(kMatrixCardPacket.dwRows, 0),
ROW(kMatrixCardPacket.dwRows, 1),
ROW(kMatrixCardPacket.dwRows, 2),
ROW(kMatrixCardPacket.dwRows, 3),
COL(kMatrixCardPacket.dwCols, 0),
COL(kMatrixCardPacket.dwCols, 1),
COL(kMatrixCardPacket.dwCols, 2),
COL(kMatrixCardPacket.dwCols, 3));
PyCallClassMemberFunc(m_poHandler, "OnMatrixCard", pyValue);
}
return true;
}
#ifdef _IMPROVED_PACKET_ENCRYPTION_
bool CAccountConnector::__AuthState_RecvKeyAgreement()
{

View File

@@ -21,9 +21,6 @@ class CAccountConnector : public CNetworkStream, public CSingleton<CAccountConne
void SetLoginInfo(const char * c_szName, const char * c_szPwd);
void ClearLoginInfo( void );
bool SendChinaMatrixCardPacket(const char * c_szMatrixCardString);
bool SendRunupMatrixCardPacket(const char * c_szMatrixCardString);
bool Connect(const char * c_szAddr, int iPort, const char * c_szAccountAddr, int iAccountPort);
void Disconnect();
void Process();
@@ -52,8 +49,6 @@ class CAccountConnector : public CNetworkStream, public CSingleton<CAccountConne
bool __AuthState_SendPong();
bool __AuthState_RecvAuthSuccess();
bool __AuthState_RecvAuthFailure();
bool __AuthState_RecvChinaMatrixCard();
bool __AuthState_RecvRunupMatrixQuiz();
bool __AuthState_RecvPanamaPack();
#ifdef _IMPROVED_PACKET_ENCRYPTION_
bool __AuthState_RecvKeyAgreement();

View File

@@ -117,7 +117,6 @@ enum
HEADER_CG_HACK = 105,
HEADER_CG_CHANGE_NAME = 106,
HEADER_CG_SMS = 107,
HEADER_CG_CHINA_MATRIX_CARD = 108,
HEADER_CG_LOGIN2 = 109,
HEADER_CG_DUNGEON = 110,
HEADER_CG_LOGIN3 = 111,
@@ -126,8 +125,6 @@ enum
HEADER_CG_SCRIPT_SELECT_ITEM = 114,
HEADER_CG_LOGIN4 = 115,
HEADER_CG_RUNUP_MATRIX_ANSWER = 201,
HEADER_CG_DRAGON_SOUL_REFINE = 205,
HEADER_CG_STATE_CHECKER = 206,
@@ -256,7 +253,6 @@ enum
HEADER_GC_SEPCIAL_EFFECT = 114,
HEADER_GC_NPC_POSITION = 115,
HEADER_GC_CHINA_MATRIX_CARD = 116,
HEADER_GC_CHARACTER_UPDATE2 = 117,
HEADER_GC_LOGIN_KEY = 118,
HEADER_GC_REFINE_INFORMATION_NEW = 119,
@@ -295,8 +291,6 @@ enum
HEADER_GC_HYBRIDCRYPT_SDB = 153, // SDB means Supplmentary Data Blocks
//HYBRID CRYPT
HEADER_GC_RUNUP_MATRIX_QUIZ = 201,
HEADER_GC_SPECIFIC_EFFECT = 208,
HEADER_GC_DRAGON_SOUL_REFINE = 209,
HEADER_GC_RESPOND_CHANNELSTATUS = 210,
@@ -359,11 +353,6 @@ enum
REFINE_MATERIAL_MAX_NUM = 5,
CHINA_MATRIX_ANSWER_MAX_LEN = 8,
RUNUP_MATRIX_QUIZ_MAX_LEN = 8,
RUNUP_MATRIX_ANSWER_MAX_LEN = 4,
WEAR_MAX_NUM = 11,
SHOP_TAB_NAME_MAX = 32,
@@ -998,18 +987,6 @@ typedef struct command_crc_report
uint32_t dwRootPackCRC32;
} TPacketCGCRCReport;
typedef struct command_china_matrix_card
{
uint8_t bHeader;
char szAnswer[CHINA_MATRIX_ANSWER_MAX_LEN + 1];
} TPacketCGChinaMatrixCard;
typedef struct command_runup_matrix_answer
{
uint8_t bHeader;
char szAnswer[RUNUP_MATRIX_ANSWER_MAX_LEN + 1];
} TPacketCGRunupMatrixAnswer;
enum EPartyExpDistributionType
{
PARTY_EXP_DISTRIBUTION_NON_PARITY,
@@ -2315,19 +2292,6 @@ enum EBlockAction
BLOCK_PARTY_REQUEST = (1 << 5),
};
typedef struct packet_china_matrixd_card
{
uint8_t bHeader;
uint32_t dwRows;
uint32_t dwCols;
} TPacketGCChinaMatrixCard;
typedef struct packet_runup_matrixd_quiz
{
uint8_t bHeader;
char szQuiz[RUNUP_MATRIX_QUIZ_MAX_LEN + 1];
} TPacketGCRunupMatrixQuiz;
typedef struct packet_login_key
{
uint8_t bHeader;

View File

@@ -147,8 +147,6 @@ class CMainPacketHeaderMap : public CNetworkPacketHeaderMap
Set(HEADER_GC_NPC_POSITION, CNetworkPacketHeaderMap::TPacketType(sizeof(TPacketGCNPCPosition), DYNAMIC_SIZE_PACKET));
Set(HEADER_GC_CHANGE_NAME, CNetworkPacketHeaderMap::TPacketType(sizeof(TPacketGCChangeName), STATIC_SIZE_PACKET));
Set(HEADER_GC_CHINA_MATRIX_CARD, CNetworkPacketHeaderMap::TPacketType(sizeof(TPacketGCChinaMatrixCard), STATIC_SIZE_PACKET));
Set(HEADER_GC_RUNUP_MATRIX_QUIZ, CNetworkPacketHeaderMap::TPacketType(sizeof(TPacketGCRunupMatrixQuiz), STATIC_SIZE_PACKET));
Set(HEADER_GC_LOGIN_KEY, CNetworkPacketHeaderMap::TPacketType(sizeof(TPacketGCLoginKey), STATIC_SIZE_PACKET));
Set(HEADER_GC_AUTH_SUCCESS, CNetworkPacketHeaderMap::TPacketType(sizeof(TPacketGCAuthSuccess), STATIC_SIZE_PACKET));

View File

@@ -300,8 +300,6 @@ class CPythonNetworkStream : public CNetworkStream, public CSingleton<CPythonNet
// Login Phase
bool SendLoginPacket(const char * c_szName, const char * c_szPassword);
bool SendLoginPacketNew(const char * c_szName, const char * c_szPassword);
bool SendChinaMatrixCardPacket(const char * c_szMatrixCardString);
bool SendRunupMatrixAnswerPacket(const char * c_szMatrixCardString);
bool SendDirectEnterPacket(const char * c_szName, const char * c_szPassword, UINT uChrSlot);
bool SendEnterGame();
@@ -403,8 +401,6 @@ class CPythonNetworkStream : public CNetworkStream, public CSingleton<CPythonNet
bool __RecvLoginSuccessPacket4();
bool __RecvLoginFailurePacket();
bool __RecvEmpirePacket();
bool __RecvChinaMatrixCardPacket();
bool __RecvRunupMatrixQuizPacket();
bool __RecvLoginKeyPacket();
// Select Phase

View File

@@ -418,29 +418,6 @@ PyObject* netSendLoginPacket(PyObject* poSelf, PyObject* poArgs)
return Py_BuildNone();
}
PyObject* netSendChinaMatrixCardPacket(PyObject* poSelf, PyObject* poArgs)
{
char* szMatrixCardString;
if (!PyTuple_GetString(poArgs, 0, &szMatrixCardString))
return Py_BuildException();
CAccountConnector & rkAccountConnector = CAccountConnector::Instance();
rkAccountConnector.SendChinaMatrixCardPacket(szMatrixCardString);
return Py_BuildNone();
}
PyObject* netSendRunupMatrixCardPacket(PyObject* poSelf, PyObject* poArgs)
{
char* szMatrixCardString;
if (!PyTuple_GetString(poArgs, 0, &szMatrixCardString))
return Py_BuildException();
CAccountConnector & rkAccountConnector = CAccountConnector::Instance();
rkAccountConnector.SendRunupMatrixCardPacket(szMatrixCardString);
return Py_BuildNone();
}
PyObject* netDirectEnter(PyObject* poSelf, PyObject* poArgs)
{
int nChrSlot;
@@ -1751,8 +1728,6 @@ void initnet()
{ "ConnectToAccountServer", netConnectToAccountServer, METH_VARARGS },
{ "SendLoginPacket", netSendLoginPacket, METH_VARARGS },
{ "SendChinaMatrixCardPacket", netSendChinaMatrixCardPacket, METH_VARARGS },
{ "SendRunupMatrixCardPacket", netSendRunupMatrixCardPacket, METH_VARARGS },
{ "SendSelectEmpirePacket", netSendSelectEmpirePacket, METH_VARARGS },
{ "SendSelectCharacterPacket", netSendSelectCharacterPacket, METH_VARARGS },
{ "SendChangeNamePacket", netSendChangeNamePacket, METH_VARARGS },

View File

@@ -38,17 +38,6 @@ void CPythonNetworkStream::LoginPhase()
return;
break;
case HEADER_GC_CHINA_MATRIX_CARD:
if (__RecvChinaMatrixCardPacket())
return;
break;
case HEADER_GC_RUNUP_MATRIX_QUIZ:
if (__RecvRunupMatrixQuizPacket())
return;
break;
case HEADER_GC_LOGIN_KEY:
if (__RecvLoginKeyPacket())
return;
@@ -293,69 +282,6 @@ bool CPythonNetworkStream::SendLoginPacketNew(const char * c_szName, const char
return true;
}
bool CPythonNetworkStream::__RecvRunupMatrixQuizPacket()
{
TPacketGCRunupMatrixQuiz kMatrixQuizPacket;
if (!Recv(sizeof(TPacketGCRunupMatrixQuiz), &kMatrixQuizPacket))
return false;
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_LOGIN], "BINARY_OnRunupMatrixQuiz", Py_BuildValue("(s)", kMatrixQuizPacket.szQuiz));
return true;
}
bool CPythonNetworkStream::SendRunupMatrixAnswerPacket(const char * c_szMatrixCardString)
{
TPacketCGRunupMatrixAnswer answerPacket;
answerPacket.bHeader = HEADER_CG_RUNUP_MATRIX_ANSWER;
strncpy(answerPacket.szAnswer, c_szMatrixCardString, RUNUP_MATRIX_ANSWER_MAX_LEN);
answerPacket.szAnswer[RUNUP_MATRIX_ANSWER_MAX_LEN] = '\0';
if (!Send(sizeof(answerPacket), &answerPacket))
{
TraceError("SendRunupMatrixCardPacketError");
return false;
}
return SendSequence();
}
bool CPythonNetworkStream::SendChinaMatrixCardPacket(const char * c_szMatrixCardString)
{
TPacketCGChinaMatrixCard MatrixCardPacket;
MatrixCardPacket.bHeader = HEADER_CG_CHINA_MATRIX_CARD;
strncpy(MatrixCardPacket.szAnswer, c_szMatrixCardString, CHINA_MATRIX_ANSWER_MAX_LEN);
MatrixCardPacket.szAnswer[CHINA_MATRIX_ANSWER_MAX_LEN]='\0';
if (!Send(sizeof(MatrixCardPacket), &MatrixCardPacket))
{
Tracen("SendLogin Error");
return false;
}
m_isWaitLoginKey = TRUE;
return SendSequence();
}
#define ROW(rows, i) ((rows >> ((4 - i - 1) * 8)) & 0x000000FF)
#define COL(cols, i) ((cols >> ((4 - i - 1) * 8)) & 0x000000FF)
bool CPythonNetworkStream::__RecvChinaMatrixCardPacket()
{
TPacketGCChinaMatrixCard kMatrixCardPacket;
if (!Recv(sizeof(TPacketGCChinaMatrixCard), &kMatrixCardPacket))
return false;
PyObject * pyValue = Py_BuildValue("(iiiiiiii)", ROW(kMatrixCardPacket.dwRows, 0),
ROW(kMatrixCardPacket.dwRows, 1),
ROW(kMatrixCardPacket.dwRows, 2),
ROW(kMatrixCardPacket.dwRows, 3),
COL(kMatrixCardPacket.dwCols, 0),
COL(kMatrixCardPacket.dwCols, 1),
COL(kMatrixCardPacket.dwCols, 2),
COL(kMatrixCardPacket.dwCols, 3));
PyCallClassMemberFunc(m_apoPhaseWnd[PHASE_WINDOW_LOGIN], "OnMatrixCard", pyValue);
return true;
}
bool CPythonNetworkStream::__RecvLoginKeyPacket()
{
TPacketGCLoginKey kLoginKeyPacket;