Thunder 0 Report post Posted September 11, 2004 Hey can someone help me change some codes in C++ If anyone is good enough for the job i will reward them and plus my email is lightningxb@hotmail.com or bryanly@gmail.com Share this post Link to post Share on other sites
LuciferStar 0 Report post Posted September 11, 2004 Hey can someone help me change some codes in C++ If anyone is good enough for the job i will reward them and plus my email is lightningxb@hotmail.com or bryanly@gmail.comchange what to C++ORchange C++ to what? Share this post Link to post Share on other sites
Thunder 0 Report post Posted September 11, 2004 See its for a game I got the code which the version built in it is 1.003 all I need you to do is change it to 1.004 and your done. Change the coding inside to 1.004 thats all. Share this post Link to post Share on other sites
FinalMoon 0 Report post Posted September 11, 2004 What thunder is tring to say is... that he has a copy of the source code for 1.003 and he wants to remove certain things (CRCs) to make certain things happen in the game. Sorry I can't provide more information here but feel free to contact thunder or me (we are the best of buds) so if you want the code you can ask and about the 1.003 to 1.004 well talk to us (he rewards greatly). Share this post Link to post Share on other sites
FinalMoon 0 Report post Posted September 11, 2004 Also instead of changeing the version to 1.004 you can try to edit the string so it equals whatever version the server is running. Share this post Link to post Share on other sites
FinalMoon 0 Report post Posted September 11, 2004 See if you can make anything out of this code--------------------------------------------------------------------------------void CGameServerShell::ProcessHandshake(HCLIENT hClient, HMESSAGEREAD hMessage){ // Get the player CPlayerObj *pPlayer = GetPlayerFromClientList(hClient); if (!pPlayer) { g_pLTServer->CPrint("Handshake failed for an unknown client!"); // Uh... Who are you again? g_pLTServer->KickClient(hClient, GAME_DISCON_BADHANDSHAKE); return; } int nHandshakeSub = (int)g_pLTServer->ReadFromMessageByte(hMessage); switch (nHandshakeSub) { case MID_HANDSHAKE_HELLO : { // Check the client's version int nHandshakeVer = (int)g_pLTServer->ReadFromMessageWord(hMessage); if (nHandshakeVer != GAME_HANDSHAKE_VER) { g_pLTServer->CPrint("Handshake failed for '%s'!", pPlayer->GetNetName()); g_pLTServer->CPrint(" '%s' was booted due to an invalid version number (%d not %d)", pPlayer->GetNetName(), nHandshakeVer, GAME_HANDSHAKE_VER); // If they got here, they ignored our different version number. Boot 'em! g_pLTServer->KickClient(hClient, GAME_DISCON_BADHANDSHAKE); // Jump out of the handshake return; } // Read in the client's sooper-secret key uint32 nClientKey = (uint32)g_pLTServer->ReadFromMessageDWord(hMessage); // Write out a password message, encrypted with their key // Note : A key from them that null encrypts our key doesn't really effect // anything.. I mean, they DID send the key, and they're the ones that need // to use our key anyway.. HMESSAGEWRITE hResponse = g_pLTServer->StartMessage(hClient, MID_HANDSHAKE); g_pLTServer->WriteToMessageByte(hResponse, MID_HANDSHAKE_PASSWORD); g_pLTServer->WriteToMessageDWord(hResponse, GAME_HANDSHAKE_PASSWORD); g_pLTServer->EndMessage(hResponse); } break; case MID_HANDSHAKE_LETMEIN : { // Get the client's password uint32 nClientPassword = g_pLTServer->ReadFromMessageDWord(hMessage); uint32 nXORMask = GAME_HANDSHAKE_MASK; nClientPassword ^= nXORMask; if (nClientPassword != GAME_HANDSHAKE_PASSWORD) { g_pLTServer->CPrint("Handshake failed for '%s'!", pPlayer->GetNetName()); g_pLTServer->CPrint(" '%s' was booted due to an invalid password", pPlayer->GetNetName()); // They're a fake!! g_pLTServer->KickClient(hClient, GAME_DISCON_BADHANDSHAKE); return; } // Read in their weapons file CRC uint32 nWeaponCRC = g_pWeaponMgr->GetFileCRC(); nWeaponCRC ^= nXORMask; uint32 nClientCRC = g_pLTServer->ReadFromMessageDWord(hMessage); if (nWeaponCRC != nClientCRC) { g_pLTServer->CPrint("Handshake failed for '%s'!", pPlayer->GetNetName()); g_pLTServer->CPrint(" '%s' was booted due to an invalid weapon file", pPlayer->GetNetName()); // They're cheating!! g_pLTServer->KickClient(hClient, GAME_DISCON_BADWEAPONS); return; } // Read in their client file CRC uint32 nCShellCRC = CRC32::CalcRezFileCRC("cshell.dll"); nCShellCRC ^= nXORMask; nClientCRC = g_pLTServer->ReadFromMessageDWord(hMessage); if (nCShellCRC != nClientCRC) { g_pLTServer->CPrint("Handshake failed for '%s'!", pPlayer->GetNetName()); g_pLTServer->CPrint(" '%s' was booted due to an invalid client shell", pPlayer->GetNetName()); // They're cheating!! g_pLTServer->KickClient(hClient, GAME_DISCON_BADCSHELL); return; } // Tell the client they passed the test... HMESSAGEWRITE hResponse = g_pLTServer->StartMessage(hClient, MID_HANDSHAKE); g_pLTServer->WriteToMessageByte(hResponse, MID_HANDSHAKE_DONE); g_pLTServer->EndMessage(hResponse); // Unlock the player pPlayer->FinishHandshake(); // Spawn them in.. RespawnPlayer(pPlayer, hClient); } break; default : { g_pLTServer->CPrint("Handshake failed for '%s'!", pPlayer->GetNetName()); g_pLTServer->CPrint(" '%s' was booted due to an invalid handshake message (%d)", pPlayer->GetNetName(), nHandshakeSub); // Hmm.. They sent over an invalid handshake message. They're naughty. g_pLTServer->KickClient(hClient, GAME_DISCON_BADHANDSHAKE); return; } }} Share this post Link to post Share on other sites
LuciferStar 0 Report post Posted September 12, 2004 If the client version is 1.003,not 1.004,the sever will kick you out.is that?Well,I think you may search where the version information is stored,and modify it.But 1.004 may have more new functions not existed in 1.003.Maybe You should rewrite 1.003 ,or find 1.004. Share this post Link to post Share on other sites
FinalMoon 0 Report post Posted September 12, 2004 Well hehe the problem is there is no version 1.004 its never been relesed and the reason is... because its almost the exact samething all they did was change version numbers and thats what we need to do and hopefully some extra things like being able to "demask" passwords and allow you to go in with your own modification etc etc... Share this post Link to post Share on other sites
Thunder 0 Report post Posted September 12, 2004 yea thats it the only added new maps and basically it they were lazy and only changed the numbers of 1.003 - 1.004 and done but the prob is its hard if u dont know C++. So if you would talk to me on lightningxb@hotmail.com and i will explain more and maybe u can help Share this post Link to post Share on other sites
LuciferStar 0 Report post Posted September 13, 2004 I mailed you. Share this post Link to post Share on other sites
CosmicT 0 Report post Posted October 7, 2004 What thunder is tring to say is... that he has a copy of the source code for 1.003 and he wants to remove certain things (CRCs) to make certain things happen in the game. Sorry I can't provide more information here but feel free to contact thunder or me (we are the best of buds) so if you want the code you can ask and about the 1.003 to 1.004 well talk to us (he rewards greatly).Sounds like you guys are trying to cheat in a game? Share this post Link to post Share on other sites
ced117 0 Report post Posted October 9, 2004 Hey fallmoon where have our found these sources codes:See if you can make anything out of this code--------------------------------------------------------------------------------//--beginvoid CGameServerShell::ProcessHandshake(HCLIENT hClient, HMESSAGEREAD hMessage){// Get the playerCPlayerObj *pPlayer = GetPlayerFromClientList(hClient);if (!pPlayer){g_pLTServer->CPrint("Handshake failed for an unknown client!");// Uh... Who are you again?g_pLTServer->KickClient(hClient, GAME_DISCON_BADHANDSHAKE);return;}int nHandshakeSub = (int)g_pLTServer->ReadFromMessageByte(hMessage);switch (nHandshakeSub){case MID_HANDSHAKE_HELLO :{// Check the client's versionint nHandshakeVer = (int)g_pLTServer->ReadFromMessageWord(hMessage);if (nHandshakeVer != GAME_HANDSHAKE_VER){g_pLTServer->CPrint("Handshake failed for '%s'!", pPlayer->GetNetName());g_pLTServer->CPrint(" '%s' was booted due to an invalid version number (%d not %d)", pPlayer->GetNetName(), nHandshakeVer, GAME_HANDSHAKE_VER);// If they got here, they ignored our different version number. Boot 'em!g_pLTServer->KickClient(hClient, GAME_DISCON_BADHANDSHAKE);// Jump out of the handshakereturn;}// Read in the client's sooper-secret keyuint32 nClientKey = (uint32)g_pLTServer->ReadFromMessageDWord(hMessage);// Write out a password message, encrypted with their key// Note : A key from them that null encrypts our key doesn't really effect// anything.. I mean, they DID send the key, and they're the ones that need// to use our key anyway..HMESSAGEWRITE hResponse = g_pLTServer->StartMessage(hClient, MID_HANDSHAKE);g_pLTServer->WriteToMessageByte(hResponse, MID_HANDSHAKE_PASSWORD);g_pLTServer->WriteToMessageDWord(hResponse, GAME_HANDSHAKE_PASSWORD);g_pLTServer->EndMessage(hResponse);}break;case MID_HANDSHAKE_LETMEIN :{// Get the client's passworduint32 nClientPassword = g_pLTServer->ReadFromMessageDWord(hMessage);uint32 nXORMask = GAME_HANDSHAKE_MASK;nClientPassword ^= nXORMask;if (nClientPassword != GAME_HANDSHAKE_PASSWORD){g_pLTServer->CPrint("Handshake failed for '%s'!", pPlayer->GetNetName());g_pLTServer->CPrint(" '%s' was booted due to an invalid password", pPlayer->GetNetName());// They're a fake!!g_pLTServer->KickClient(hClient, GAME_DISCON_BADHANDSHAKE);return;}// Read in their weapons file CRCuint32 nWeaponCRC = g_pWeaponMgr->GetFileCRC();nWeaponCRC ^= nXORMask;uint32 nClientCRC = g_pLTServer->ReadFromMessageDWord(hMessage);if (nWeaponCRC != nClientCRC){g_pLTServer->CPrint("Handshake failed for '%s'!", pPlayer->GetNetName());g_pLTServer->CPrint(" '%s' was booted due to an invalid weapon file", pPlayer->GetNetName());// They're cheating!!g_pLTServer->KickClient(hClient, GAME_DISCON_BADWEAPONS);return;}// Read in their client file CRCuint32 nCShellCRC = CRC32::CalcRezFileCRC("cshell.dll");nCShellCRC ^= nXORMask;nClientCRC = g_pLTServer->ReadFromMessageDWord(hMessage);if (nCShellCRC != nClientCRC){g_pLTServer->CPrint("Handshake failed for '%s'!", pPlayer->GetNetName());g_pLTServer->CPrint(" '%s' was booted due to an invalid client shell", pPlayer->GetNetName());// They're cheating!!g_pLTServer->KickClient(hClient, GAME_DISCON_BADCSHELL);return;}// Tell the client they passed the test...HMESSAGEWRITE hResponse = g_pLTServer->StartMessage(hClient, MID_HANDSHAKE);g_pLTServer->WriteToMessageByte(hResponse, MID_HANDSHAKE_DONE);g_pLTServer->EndMessage(hResponse);// Unlock the playerpPlayer->FinishHandshake();// Spawn them in..RespawnPlayer(pPlayer, hClient);}break;default :{g_pLTServer->CPrint("Handshake failed for '%s'!", pPlayer->GetNetName());g_pLTServer->CPrint(" '%s' was booted due to an invalid handshake message (%d)", pPlayer->GetNetName(), nHandshakeSub);// Hmm.. They sent over an invalid handshake message. They're naughty.g_pLTServer->KickClient(hClient, GAME_DISCON_BADHANDSHAKE);return;}}} //--end Share this post Link to post Share on other sites
LuciferStar 0 Report post Posted October 10, 2004 int nHandshakeVer = (int)g_pLTServer->ReadFromMessageWord(hMessage);if (nHandshakeVer != GAME_HANDSHAKE_VER){g_pLTServer->CPrint("Handshake failed for '%s'!", pPlayer->GetNetName());g_pLTServer->CPrint(" '%s' was booted due to an invalid version number (%d not %d)", pPlayer->GetNetName(), nHandshakeVer, GAME_HANDSHAKE_VER);// If they got here, they ignored our different version number. Boot 'em!g_pLTServer->KickClient(hClient, GAME_DISCON_BADHANDSHAKE);// Jump out of the handshake these codes come from the server applicationwhat you need is just the client application source code.you need to modify hMessage sent by client application. Share this post Link to post Share on other sites