Jump to content
xisto Community
Thunder

Need Very Good C++ Programer!

Recommended Posts

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

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

change what to C++OR
change C++ to what?

Share this post


Link to post
Share on other sites

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

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

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

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

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

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

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

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

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 application
what 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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.