Experienced Elementalist
- Joined
- Nov 17, 2016
- Messages
- 279
- Reaction score
- 11
How to trigger or disable restriction for Multi Client?
I want to enable Multi Client.
Thanks
I want to enable Multi Client.
Thanks
Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!
Join Today!#fixed
but i keep get this error
AHNHS_ACTAPC_DETECT_HOOKFUNCTION
HackShield Detect D3D Hack.
Simply remove the said case as there's no effect on client whether it is present or not .
Guide how to Integrate HackShield for your RAN Online Private Server
Prerequisites:
1. HackShield SDK 5.6.6.1 (v235) [You must be registered to see links]
2. RAN Online Source Code
3. Once your RanOnline.exe done compiling, rename it to MiniA.exe
Steps:
1. Put the HackShield SDK to your Source Code Folder, and name it HackShield SDK then put the Files inside HackShield_ToClient.rar to your RAN Server Folder.
On Solution Explorer, Right Click Basic ► Properties ► Linker ► Input
Paste this below the list
PHP:"$(SolutionDir)/HackShield SDK/Lib/Win/x86/Single-Threaded/HShield/HShield.lib" "$(SolutionDir)/HackShield SDK/Lib/Win/x86/Single-Threaded/Update/HSUpChk.lib"
Find UINT_QUEUE g_AuthMsgBuffer;
Paste this below the said line
PHP:TCHAR g_szHShieldPath[MAX_PATH] = {0,}; TCHAR g_szIniPath[MAX_PATH] = {0,};
2. Go to your SourceBasic then Open BasicWndD3d.cpp
Paste this below #include ".basicwnd.h"
PHP:#include "../HackShield SDK/Include/HShield.h" #include "../HackShield SDK/Include/HSUpChk.h" #pragma comment(lib,"../HackShield SDK/Lib/Win/x86/Single-Threaded/HShield/HShield.lib") #pragma comment(lib,"../HackShield SDK/Lib/Win/x86/Single-Threaded/Update/HSUpChk.lib")
3. Find the function BOOL CALLBACK NPGameMonCallback(DWORD dwMsg, DWORD dwArg)
Paste this below the said function
PHP:/** HackShield Start - Glory to God to the Highest! SeiferXIII **/ int __stdcall AhnHS_Callback(long lCode, long lParamSize, void* pParam) { bool bAppExit( false ); LPCTSTR lpszMsg( NULL ); switch(lCode) { //Engine Callback case AHNHS_ENGINE_DETECT_GAME_HACK: { TCHAR msg[128]={0}; _stprintf(msg, _T("Game Hack foundn%s"), (char*)pParam); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ENGINE_DETECT_WINDOWED_HACK: { //ShowMsgAndExitWithTimer(_T("Windowed Hack found.")); break; } case AHNHS_ACTAPC_DETECT_SPEEDHACK: { TCHAR msg[128]={0}; _stprintf(msg, _T("Speed Hack found.")); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_KDTRACE: case AHNHS_ACTAPC_DETECT_KDTRACE_CHANGED: { TCHAR msg[128]={0}; _stprintf(msg, _T("AHNHS_ACTAPC_DETECT_KDTRACE_CHANGED"), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_AUTOMACRO: { TCHAR msg[128]={0}; _stprintf(msg, _T("AHNHS_ACTAPC_DETECT_AUTOMACRO"), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_ABNORMAL_FUNCTION_CALL: { TCHAR msg[128]={0}; _stprintf(msg, _T("Detect Abnormal Memory Accessn%s"), (char*)pParam); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_ABNORMAL_MEMORY_ACCESS: { TCHAR msg[128]={0}; _stprintf(msg, _T("Detect Memory Accessn%s"), (char*)pParam); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_AUTOMOUSE: { TCHAR msg[128]={0}; _stprintf(msg, _T("HackShield DETECT_AUTOMOUSE."), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_DRIVERFAILED: { TCHAR msg[128]={0}; _stprintf(msg, _T("HackShield DETECT_DRIVERFAILED."), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_HOOKFUNCTION: { TCHAR msg[128]={0}; _stprintf(msg, _T("HackShield Detect D3D Hack. (%s)"), (char*)pParam); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_MESSAGEHOOK: { TCHAR msg[128]={0}; _stprintf(msg, _T("HackShield DETECT_MESSAGEHOOK."), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_MODULE_CHANGE: { TCHAR msg[128]={0}; _stprintf(msg, _T("HackShield DETECT_MODULE_CHANGE."), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_ENGINEFAILED: { TCHAR msg[128]={0}; _stprintf(msg, _T("HackShield DETECT_ENGINEFAILED."), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case HS_ERR_ALREADY_GAME_STARTED: { TCHAR msg[128]={0}; _stprintf(msg, _T("HackShield already started."), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); } break; case AHNHS_ACTAPC_DETECT_CODEMISMATCH: { TCHAR msg[128]={0}; _stprintf(msg, _T("HackShield CODEMISMATCH."), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_MEM_MODIFY_FROM_LMP: case AHNHS_ACTAPC_DETECT_LMP_FAILED: { TCHAR msg[128]={0}; _stprintf(msg, _T("HackShield Detect memory modify."), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); break; } case AHNHS_ACTAPC_DETECT_ABNORMAL_HACKSHIELD_STATUS: { TCHAR msg[128]={0}; _stprintf(msg, _T("HackShield Service Error"), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); break; //} } case AHNHS_ACTAPC_DETECT_PROTECTSCREENFAILED: { TCHAR msg[128]={0}; _stprintf(msg, _T("HackShield PROTECTSCREENFAILED."), lCode); DxGlobalStage::GetInstance().CloseGame( msg ); break; } return FALSE; }return TRUE; }
4. Find the function HRESULT CBasicWnd::InitDeviceObjects()
Paste this inside the said function after HRESULT hr = S_OK;
PHP:/** HackShield Start - Glory to God to the Highest! SeiferXIII **/ { int antihackNotFound = 0; TCHAR *pEnd = NULL; TCHAR szFullFileName[MAX_PATH] = { 0, }; TCHAR szMsg[255]; int nRet; GetModuleFileName(NULL, szFullFileName, MAX_PATH); pEnd = _tcsrchr( szFullFileName, _T('\')) + 1; if (!pEnd) { return FALSE; } *pEnd = _T('\0'); _stprintf(g_szIniPath, _T("%s"), szFullFileName); _stprintf(g_szHShieldPath, _T("%s\HackShield"), szFullFileName); _tcscat(szFullFileName, _T("HackShield\EhSvc.dll")); _tcscat(g_szIniPath, _T("MiniAEnv.INI")); nRet = _AhnHS_Initialize(szFullFileName, AhnHS_Callback, 1000, "B228F2916A48AC24", AHNHS_CHKOPT_ALL|AHNHS_SELFDESTRUCTION_RATIO_FAST| AHNHS_DISPLAY_HACKSHIELD_TRAYICON|AHNHS_CHKOPT_STANDALONE| AHNHS_CHKOPT_LOADLIBRARY|AHNHS_CHKOPT_LOCAL_MEMORY_PROTECTION, AHNHS_SPEEDHACK_SENSING_RATIO_GAME); if (nRet != HS_ERR_OK) { _stprintf(szMsg, _T("HackShield Initialize Error. (Error Code = %x)."), nRet); MessageBox(szMsg, "GameSama.com", MB_OK); return FALSE; } nRet = _AhnHS_StartService(); assert(nRet != HS_ERR_NOT_INITIALIZED); assert(nRet != HS_ERR_ALREADY_SERVICE_RUNNING); if (nRet != HS_ERR_OK) { _stprintf(szMsg, _T("HackShield Start Error. (Error Code = %x)."), nRet); MessageBox(szMsg, "GameSama.com", MB_OK); return FALSE; }} /** HackShield End - To God be the Glory!**/
5. Now you're done!
not working.
this is working fine .. as long as you know how to follow whats post on instructions
please re share this HackShield Client Files . thanks
ok here .. and dont forget to press like if helps for you
You must be registered to see links
Rename your Game.exe to MiniA.exe
i ended in here, i repeat 6 times the instructions.
how to solve this error, already rename game.exe to MiniA.exe but still come out this error.
how did you fixed this issue sir?
pEnd = _tcsrchr( szFullFileName, _T('\')) + 1;
if (!pEnd)
{
return FALSE;
}
*pEnd = _T('\0');
_stprintf(g_szIniPath, _T("%s"), szFullFileName);
_stprintf(g_szHShieldPath, _T("%s\HackShield"), szFullFileName);
_tcscat(szFullFileName, _T("HackShield\EhSvc.dll"));
pEnd = _tcsrchr( szFullFileName, _T('\\')) + 1;
if (!pEnd)
{
return FALSE;
}
*pEnd = _T('\0');
_stprintf(g_szIniPath, _T("%s"), szFullFileName);
_stprintf(g_szHShieldPath, _T("%s\\HackShield"), szFullFileName);
_tcscat(szFullFileName, _T("HackShield\\EhSvc.dll"));
OK hot fix
for
to
it works but i have another issue about hackshield using dual client i get bugtrap
see the photo
You must be registered to see links
Not true, you can modifly hackshield flag on source to allow multiple instanceno multiple client is allowed in hackshield.
Not true, you can modifly hackshield flag on source to allow multiple instance