Infectado 0 Report post Posted May 15, 2010 Encontre esto por ahi =) Les dejo a su criterio. _______________________________________________________ En Game.cpp buscar case MSGID_REQUEST_INITDATA: y pegar el codigo escrito a continuaci?n: Codigo: case MSGID_REQUEST_INITDATA: // Anti Bump if (m_pClientList[iClientH]->m_bIsClientConnected == TRUE) { if (m_pClientList[iClientH] == NULL) break; wsprintf(G_cTxt, "(!!!) Client (%s) connection closed!. Sniffer suspect!.", m_pClientList[iClientH]->m_cCharName); PutLogList(G_cTxt); ZeroMemory(cData, sizeof(cData)); cp = (char *)cData; *cp = GSM_DISCONNECT; cp++; memcpy(cp, m_pClientList[iClientH]->m_cCharName, 10); cp += 10; bStockMsgToGateServer(cData, 11); m_pMapList[m_pClientList[iClientH]->m_cMapIndex]->ClearOwner(2, iClientH, DEF_OWNERTYPE_PLAYER, m_pClientList[iClientH]->m_sX, m_pClientList[iClientH]->m_sY); bRemoveFromDelayEventList(iClientH, DEF_OWNERTYPE_PLAYER, NULL); bSendMsgToLS(MSGID_REQUEST_SAVEPLAYERDATALOGOUT, iClientH, FALSE); if ((dwTime - m_dwGameTime2) > 3000) { // 3 segs m_pClientList[iClientH]->m_bIsClientConnected = FALSE; m_iTotalClients--; delete m_pClientList[iClientH]; m_pClientList[iClientH] = NULL; } break; } else { m_pClientList[iClientH]->m_bIsClientConnected = TRUE; RequestInitDataHandler(iClientH, pData, cKey); } break; ______________________________________________ En Client.h agregar: Codigo: BOOL m_bIsClientConnected; ______________________________________________ En Client.cpp agregar: Codigo: m_bIsClientConnected = FALSE; ______________________________________________ En Game.cpp buscar m_iTotalClients y borrarle m_pClientList[iClientH]-> Despues buscar en Game.cpp: void CGame::MsgProcess() y abajo de las variables declaradas agregar Codigo: char *cp, cData[120]; DWORD dwTime; dwTime = timeGetTime(); Share this post Link to post Share on other sites
letrita 0 Report post Posted May 15, 2010 habria que testearlo Share this post Link to post Share on other sites
Audioslave 0 Report post Posted May 17, 2010 Te cuento, ese anti bumper lo hice yo hace un tiempo para la comunidad de DTU-P! (De todo un poko). En realidad lo que esto hacia era evitar el "hack" que habia de moda para bumpear los mapas y llenar los espacios libres y de esta forma hacer crashear el Server. //-- I made this code a few years ago for a Development Forum to avoid one kind of hack that occupies all tiles available in a map and in consequence the server crashes. This code was a fix for that. Share this post Link to post Share on other sites
letrita 0 Report post Posted May 17, 2010 Te cuento, ese anti bumper lo hice yo hace un tiempo para la comunidad de DTU-P! (De todo un poko). En realidad lo que esto hacia era evitar el "hack" que habia de moda para bumpear los mapas y llenar los espacios libres y de esta forma hacer crashear el Server. //-- I made this code a few years ago for a Development Forum to avoid one kind of hack that occupies all tiles available in a map and in consequence the server crashes. This code was a fix for that. che, pero yo hago una pregunta desde mi ignorancia codera, no se puede hacer algo para que cuando te bumpeas no te tire la tipica "trabadita" que todos conocemos.. onda que en vez de bumpearte te desvie directamente a un cuadrado de al lado o algo asi por que cuando te pasa, es una cagada el bump.. ya se q es parte del juego y todo, pero el efecto de rebotar, que se te trabe todo y el "AUCH!" quedan horribles visualmente. Share this post Link to post Share on other sites