Client Addons Source v.1.0.0.2

Page 3 of 3 FirstFirst 123
Results 51 to 63 of 63
  1. #51
    Novice bolivarmu is offline
    MemberRank
    Jun 2010 Join Date
    1Posts

    Re: Client Addons Source v.1.0.0.2

    Please re upload the link :)

  2. #52
    Account Upgraded | Title Enabled! ezramod is offline
    MemberRank
    Jun 2010 Join Date
    322Posts

    Re: Client Addons Source v.1.0.0.2

    verry nice

  3. #53
    Account Upgraded | Title Enabled! thevjfla is offline
    MemberRank
    Apr 2012 Join Date
    203Posts

    Re: Client Addons Source v.1.0.0.2

    Can u help me to fix the black spaces?
    Im using main 1.04D GMO protocol.


  4. #54
    DeV MuCMS Developer reseter is offline
    MemberRank
    Jun 2013 Join Date
    Error 404Location
    476Posts

    Re: Client Addons Source v.1.0.0.2

    Quote Originally Posted by Brain View Post
    Little Description









    A Little More Description


    Main Addons

    Developed by Mr.Kernighan

    # First version: 1.0.0.1



    # Update to version: 1.0.0.2

    • Increased the limit load the textures of objects and weapons.
    • Increased the slots of added items and weapons. (Max. 127 for each category)
    • Problems with the closing of the client on different operating systems of Windows. Fixed
    • The problem with the braking when using Skill Bird character DarkLord. Fixed
    • Low cpu usage (Thanks for giving Hybrid source). Fixed
    • Support for new stones used RMST server. (Thanks for giving SmallHabit source code). Added
    • Separation of system messages from the game chat (Thanks for giving Hybrid source). Added


    Configuration file
    Code:
    ; #########################
    ; 3D Camera settings   
    ; #########################
    
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [3D]
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    IsActive  = 1 ; 
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    Sensivity = 8 ; 
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    
    
    ; #########################
    ; Linear smoothing settings
    ; #########################
    
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Smoothing]
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    IsEnabled = 1     
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    
    ; #########################
    ; Linear fog settings
    ; #########################
    
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Fog]
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    IsEnabled = 1     
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    Start = 1600.0    
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    End = 2100.0      
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    
    ; #########################
    
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Default]
    red = 0.0
    green = 0.0
    blue = 0.0
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Lorencia]
    red = 0.83
    green = 0.8025
    blue = 0.2805
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Dungeon]
    red = 0.83
    green = 0.7581
    blue = 0.6142
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Devias]
    red = 0.6643
    green = 0.8158
    blue = 0.91
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Noria]
    red = 0.3689
    green = 0.58
    blue = 0.2552
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [LostTower]
    red = 0.0
    green = 0.0
    blue = 0.0
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Stadium]
    red = 0.56
    green = 0.4424
    blue = 0.308
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Atlans]
    red = 0.451
    green = 0.6478
    blue = 0.82
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Tarkan]
    red = 0.83
    green = 0.667
    blue = 0.3154
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Icarus]
    red = 0.077
    green = 0.1318
    blue = 0.22
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Kalima]
    red = 0.1736
    green = 0.3475
    blue = 0.56
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [ValeyOfLoren]
    red = 0.85
    green = 0.3156
    blue = 0.1872
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [LandOfTrial]
    red = 0.0
    green = 0.0
    blue = 0.0
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Aida]
    red = 0.3403
    green = 0.47
    blue = 0.3008
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [CryWolf]
    red = 0.39
    green = 0.3156
    blue = 0.1872
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Kanturu]
    red = 0.18
    green = 0.1708
    blue = 0.1494
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [BalgasBarrack]
    red = 0.47
    green = 0.1363
    blue = 0.1363
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Elbeland]
    red = 0.76
    green = 0.76
    blue = 0.76
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [Raklion]
    red = 0.6643
    green = 0.8158
    blue = 0.91
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    [SantaTown]
    red = 0.6643
    green = 0.8158
    blue = 0.91
    ; ~~~~~~~~~~~~~~~~~~~~~~~~~
    Link: MEGAUPLOAD - The leading online storage and file delivery service

    Credits: Brain aka Mr.Kernighan, SmallHabbit, Gembrid aka Hybrid, ZergNM.
    Estj vazhmozhnastj peredelatj etat source pod 1.04E main.exe?

    ENG.
    Its possible to adapt source for 1.04E main.exe?

  5. #55
    Account Upgraded | Title Enabled! thevjfla is offline
    MemberRank
    Apr 2012 Join Date
    203Posts

    Re: Client Addons Source v.1.0.0.2

    Quote Originally Posted by reseter View Post
    Estj vazhmozhnastj peredelatj etat source pod 1.04E main.exe?

    ENG.
    Its possible to adapt source for 1.04E main.exe?
    Yes brother, im using that in 1.04D, and it's the same shit lol

  6. #56
    DeV MuCMS Developer reseter is offline
    MemberRank
    Jun 2013 Join Date
    Error 404Location
    476Posts

    Re: Client Addons Source v.1.0.0.2

    Quote Originally Posted by thevjfla View Post
    Yes brother, im using that in 1.04D, and it's the same shit lol
    Maybe u can share it here? I want to try it on 1.04E main.exe

  7. #57
    Account Upgraded | Title Enabled! thevjfla is offline
    MemberRank
    Apr 2012 Join Date
    203Posts

    Re: Client Addons Source v.1.0.0.2

    Quote Originally Posted by reseter View Post
    Maybe u can share it here? I want to try it on 1.04E main.exe
    Yeap, i only used the 3d cam.

    3DCamera.cpp
    Code:
    #include "Stdafx.h"
    #include "3DCamera.h"
    
    
    //1.04D OFFSETS
    #define CAMERA_ZOOM   0x00D27BFC
    #define CAMERA_ROTY   0x00D27B88
    #define CAMERA_ROTZ   0x087933D8
    #define CAMERA_POSZ   0x00D255AC
    #define CAMERA_CLIPX  0x00D2C848
    #define CAMERA_CLIPY  0x00D2C894
    #define CAMERA_GLCLIP 0x00D2570C 
    
    #define Main_PrintGlobal 00597630H;
    
    
    int *MAIN_STATE_ADDR  = (int*)0x00E609E8; 
    int *MAP_CHECKER_ADDR = (int*)0x00E61E18;  
    
    
    #define CAM_DEFAULT (*Camera_PosZ != 150.0f || *Camera_RotZ != -45.0f || *Camera_RotY != -48.5f || *Camera_Zoom != 35.0f)
    
    enum MAINSTATE {
    	SELECT_SERVER    = 2,
    	SELECT_CHARACTER = 4,
    	SELECT_GAME      = 5,
    };
    
    bool CAM_Init = true;
    bool CAM_Move = false;
    bool VK_IsPressed = false;
    
    
    void Message(int ColorId, char* Message)
    {
    	_asm
    	{
    		Mov Edi,Main_PrintGlobal
            Push ColorId
            Push Message
            Call Edi
    		Add Esp,0x8
    	}
    }
    
    //int Is3D = 1; //GetPrivateProfileIntA("3D", "IsEnabled", true, "./Custom/Settings.ini");
    int CAM_IsActive = 1;
    //int CAM_IsActive = GetPrivateProfileIntA("3D", "IsActive", 1, ".\\Custom\\Settings.ini");
    int Sensivity = GetPrivateProfileIntA("3D", "Sensivity", 8, ".\\Custom\\Settings.ini");
    
    BOOL KeyboardSetHook(BOOL set_or_remove) {
    	if(set_or_remove == TRUE) {
    		if(KeyboardHook == NULL) {
    			KeyboardHook = SetWindowsHookEx(WH_KEYBOARD, (HOOKPROC)KeyboardProc, hInstance, GetCurrentThreadId());
    			if(!KeyboardHook) { return FALSE; }
    		}
    	} 
    	else {
    		KeyboardHook = NULL;
    		return UnhookWindowsHookEx(KeyboardHook);
    	}
    	return TRUE;
    }
    
    BOOL MouseSetHook(BOOL set_or_remove) {
    	if(set_or_remove == TRUE) {
    		if(MouseHook == NULL) {
    			MouseHook = SetWindowsHookEx(WH_MOUSE, MouseProc, hInstance, GetCurrentThreadId());
    			if(!MouseHook) { return FALSE; }
    		}
    	} 
    	else { 
    		MouseHook = NULL;
    		return UnhookWindowsHookEx(MouseHook); 
    	}
    	return TRUE;
    }
    
    float GetMemBuffer(DWORD *dwpAddress) {
    	float pBuffer;
    	if (ReadProcessMemory(GetCurrentProcess(), dwpAddress, (float*)&pBuffer, 4, 0) == TRUE) 
    		return pBuffer;
    	else return 0;
    }
    
    void UnProtect(DWORD *dwpAddress, float pBuffer) {
    	DWORD dwOldProtect = 0;
    	HANDLE hWnd = GetCurrentProcess();
    	VirtualProtectEx(hWnd, dwpAddress, 4, PAGE_EXECUTE_READWRITE, &dwOldProtect);
    	WriteProcessMemory(hWnd, dwpAddress, (void*)&pBuffer, 4, 0);
    	VirtualProtectEx(hWnd, dwpAddress, 4, PAGE_EXECUTE_READWRITE, &dwOldProtect);
    }
    
    LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam) {	
    	if (((lParam >> 31) & 1) && (nCode == HC_ACTION)) {
    		
    		if (wParam == VK_F10)	{
    			if (VK_IsPressed == false && CAM_IsActive == true)	{
    				VK_IsPressed = true; CAM_IsActive = false;
    				Message(1,"Camera OFF");
    			}
    			else	{
    				VK_IsPressed = false; CAM_IsActive = true;
    				Message(1,"Camera ON");
    			}
    		}
    
    		if (wParam == VK_F9) {
    			_beginthread(CAMDefault, 0, NULL); 
    			Message(1,"Camera Reseted");
    		}
    	}	
    	return CallNextHookEx(KeyboardHook, nCode, wParam, lParam);
    }
    
    
    LRESULT CALLBACK MouseProc(int code, WPARAM wParam, LPARAM lParam){
    	MOUSEHOOKSTRUCTEX* mhs = (MOUSEHOOKSTRUCTEX*)lParam;
    	HWND MuWnd = FindWindow("MU", NULL);
    
    	if (*MAIN_STATE_ADDR == SELECT_CHARACTER || *MAP_CHECKER_ADDR == 0x1E || *MAP_CHECKER_ADDR == 0x3E) {
    		InitCamera = false;
    		UnProtect((DWORD*)Camera_ClipX, Camera.ClipX);
    		UnProtect((DWORD*)Camera_ClipY, Camera.ClipY); 
    		UnProtect((DWORD*)Camera_GlClip, Camera.GlClip);
    		UnProtect((DWORD*)Camera_PosZ, 150.0f); 
    		UnProtect((DWORD*)Camera_RotY, -48.5f);
    		UnProtect((DWORD*)Camera_RotZ, -45.0f);
    		UnProtect((DWORD*)Camera_Zoom, 35.0f);
    	} 
    
    	if (CAM_IsActive) {
    		if (GetForegroundWindow() == MuWnd) {
    			if (InitCamera) {		
    				Camera.ClipX = *Camera_ClipX; Camera.ClipY = *Camera_ClipY; Camera.GlClip = *Camera_GlClip;
    				Camera.PosZ = *Camera_PosZ; Camera.RotY = *Camera_RotY; Camera.RotZ = *Camera_RotZ; Camera.Zoom = *Camera_Zoom;
    				InitCamera = false;
    			}
    			else if (wParam == WM_MOUSEWHEEL) {
    				int direction = mhs->mouseData;
    				if (direction > 0) {
    					if(*Camera_Zoom < 60) { 
    						UnProtect((DWORD*)Camera_Zoom, (GetMemBuffer((DWORD*)CAMERA_ZOOM))+2);
    					}
    				}
    				else if (direction < 0) {
    					if (*Camera_Zoom > 12) { 
    						UnProtect((DWORD*)Camera_Zoom, (GetMemBuffer((DWORD*)CAMERA_ZOOM))-2);
    					}
    				}
    
    				float Aux = abs(GetMemBuffer((DWORD*)CAMERA_POSZ) - 100) * 3;
    				UnProtect((DWORD*)Camera_ClipX, 1190.0f + Aux + 3000.0f);
    				UnProtect((DWORD*)Camera_ClipY, 2400.0f + Aux + 3000.0f);
    				UnProtect((DWORD*)Camera_GlClip, 3000.0f + Aux + 1500.0f);
    			}
    			else if (wParam == WM_MBUTTONDOWN) {
    				MouseX = mhs->pt.x;
    				MouseY = mhs->pt.y;
    				MoveCamera = true;
    			}
    			else if (wParam == WM_MBUTTONUP) {
    				MoveCamera = false;
    			}
    			else if (wParam == WM_MOUSEMOVE) {
    				if (MoveCamera) {
    					if (MouseX < mhs->pt.x) {
    						UnProtect((DWORD*)Camera_RotZ, (GetMemBuffer((DWORD*)CAMERA_ROTZ))+Sensivity);
    						if (*Camera_RotZ > 315) {
    							UnProtect((DWORD*)Camera_RotZ, -45.0f);
    						}
    					}
    					else if (MouseX > mhs->pt.x) {
    						UnProtect((DWORD*)Camera_RotZ, (GetMemBuffer((DWORD*)CAMERA_ROTZ))-Sensivity);
    						if (*Camera_RotZ < -405) {
    							UnProtect((DWORD*)Camera_RotZ, -45.0f);
    						}
    					}
    					if (MouseY < mhs->pt.y) {
    						if (*Camera_RotY < -45) {	
    							UnProtect((DWORD*)Camera_PosZ, (GetMemBuffer((DWORD*)CAMERA_POSZ))-44);;
    							UnProtect((DWORD*)Camera_RotY, (GetMemBuffer((DWORD*)CAMERA_ROTY))+2.42f);		
    						}
    					}
    					else if (MouseY > mhs->pt.y) {
    						if (*Camera_RotY > -90) {
    							UnProtect((DWORD*)Camera_PosZ, (GetMemBuffer((DWORD*)CAMERA_POSZ))+44);
    							UnProtect((DWORD*)Camera_RotY, (GetMemBuffer((DWORD*)CAMERA_ROTY))-2.42f);
    						}
    					}
    
    					MouseX = mhs->pt.x;
    					MouseY = mhs->pt.y;
    			
    					float Aux = abs(GetMemBuffer((DWORD*)CAMERA_POSZ) - 150) * 3;
    					UnProtect((DWORD*)Camera_ClipX, 1190.0f + Aux + 3000.0f);
    					UnProtect((DWORD*)Camera_ClipY, 2400.0f + Aux + 3000.0f);
    					UnProtect((DWORD*)Camera_GlClip, 3000.0f + Aux + 1500.0f);
    				}
    			}
    		}
    	}
    	return CallNextHookEx(MouseHook, code, wParam, lParam);
    }
    
    void CAMDefault(void *lParam)
    {
    	while (CAM_DEFAULT)
    	{
    		(*Camera_PosZ > 150.0f) ? UnProtect((DWORD*)Camera_PosZ, (GetMemBuffer((DWORD*)CAMERA_POSZ))-5.0f) : UnProtect((DWORD*)Camera_PosZ, (GetMemBuffer((DWORD*)CAMERA_POSZ))+5.0f);
    		if (*Camera_PosZ > 146.0f && *Camera_PosZ < 152.0f)
    			UnProtect((DWORD*)Camera_PosZ, 150.0f);
    
    		(*Camera_RotZ > -45.0f) ? UnProtect((DWORD*)Camera_RotZ, (GetMemBuffer((DWORD*)CAMERA_ROTZ))-1.0f) : UnProtect((DWORD*)Camera_RotZ, (GetMemBuffer((DWORD*)CAMERA_ROTZ))+1.0f);
    		if (*Camera_RotZ > -47.0f && *Camera_RotZ < -43.0f)
    			UnProtect((DWORD*)Camera_RotZ, -45.0f);
    
    		(*Camera_RotY > -48.5f) ? UnProtect((DWORD*)Camera_RotY, (GetMemBuffer((DWORD*)CAMERA_ROTY))-0.5f) : UnProtect((DWORD*)Camera_RotY, (GetMemBuffer((DWORD*)CAMERA_ROTY))+0.5f);
    		if (*Camera_RotY > -50.5f && *Camera_RotY < -46.5f)
    			UnProtect((DWORD*)Camera_RotY, -48.5f);
    
    		(*Camera_Zoom > 35.0f) ? UnProtect((DWORD*)Camera_Zoom, (GetMemBuffer((DWORD*)CAMERA_ZOOM))-1.0f) : UnProtect((DWORD*)Camera_Zoom, (GetMemBuffer((DWORD*)CAMERA_ZOOM))+1.0f);
    		if (*Camera_Zoom > 33.0f && *Camera_Zoom < 37.0f)
    			UnProtect((DWORD*)Camera_Zoom, 35.0f);
    
    		Sleep(2);
    	}
    	_endthread();
    };

    3DCamera.h
    Code:
    #pragma once 
    #include "StdAfx.h"
    
    #ifndef __LALA_H_
    #define __LALA_H_
    
    static HINSTANCE hInstance;
    
    #pragma data_seg(".SHAREDDATA")
    static HHOOK MouseHook = NULL; 
    static HHOOK KeyboardHook = NULL;
    #pragma data_seg()
    
    #pragma comment(linker, "/SECTION:.SHAREDDATA,RWS")
    
    struct CameraStruct 
    {
    		float Zoom;
    		float RotY;
    		float RotZ;
    		float PosZ;
    		float ClipX;
    		float ClipY;
    		float GlClip;
    } Camera;
    
    
    float *Camera_Zoom    = (float*) 0x00D27BFC;
    float *Camera_RotY    = (float*) 0x00D27B88;
    float *Camera_RotZ    = (float*) 0x087933D8;
    float *Camera_PosZ    = (float*) 0x00D255AC;
    float *Camera_ClipX   = (float*) 0x00D2C848;
    float *Camera_ClipY   = (float*) 0x00D2C894;
    float *Camera_GlClip  = (float*) 0x00D2570C;
    
    int MouseX; 
    int MouseY; 
    
    bool InitCamera = true; 
    bool MoveCamera = false;
    
    BOOL KeyboardSetHook(BOOL set_or_remove);
    BOOL MouseSetHook(BOOL set_or_remove);
    LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam);
    LRESULT CALLBACK MouseProc(int code, WPARAM wParam, LPARAM lParam);
    
    float GetMemBuffer(DWORD *dwpAddress);
    void UnProtect(DWORD *dwpAddress, float Buffer);
    
    void CAMDefault(void *lParam);
    
    #endif // __LALA_H_
    The BOOL of StdAfx.h and the dll entry.
    Code:
    BOOL MouseSetHook(BOOL);
    BOOL KeyboardSetHook(BOOL);

    Just, i can't make it work correcty with the zoom out...



    I think it's the float <> double convertion of the ClipX, but, i get compiler warning if use double.

  8. #58
    DeV MuCMS Developer reseter is offline
    MemberRank
    Jun 2013 Join Date
    Error 404Location
    476Posts

    Re: Client Addons Source v.1.0.0.2

    Quote Originally Posted by thevjfla View Post
    Yeap, i only used the 3d cam.

    3DCamera.cpp
    Code:
    #include "Stdafx.h"
    #include "3DCamera.h"
    
    
    //1.04D OFFSETS
    #define CAMERA_ZOOM   0x00D27BFC
    #define CAMERA_ROTY   0x00D27B88
    #define CAMERA_ROTZ   0x087933D8
    #define CAMERA_POSZ   0x00D255AC
    #define CAMERA_CLIPX  0x00D2C848
    #define CAMERA_CLIPY  0x00D2C894
    #define CAMERA_GLCLIP 0x00D2570C 
    
    #define Main_PrintGlobal 00597630H;
    
    
    int *MAIN_STATE_ADDR  = (int*)0x00E609E8; 
    int *MAP_CHECKER_ADDR = (int*)0x00E61E18;  
    
    
    #define CAM_DEFAULT (*Camera_PosZ != 150.0f || *Camera_RotZ != -45.0f || *Camera_RotY != -48.5f || *Camera_Zoom != 35.0f)
    
    enum MAINSTATE {
        SELECT_SERVER    = 2,
        SELECT_CHARACTER = 4,
        SELECT_GAME      = 5,
    };
    
    bool CAM_Init = true;
    bool CAM_Move = false;
    bool VK_IsPressed = false;
    
    
    void Message(int ColorId, char* Message)
    {
        _asm
        {
            Mov Edi,Main_PrintGlobal
            Push ColorId
            Push Message
            Call Edi
            Add Esp,0x8
        }
    }
    
    //int Is3D = 1; //GetPrivateProfileIntA("3D", "IsEnabled", true, "./Custom/Settings.ini");
    int CAM_IsActive = 1;
    //int CAM_IsActive = GetPrivateProfileIntA("3D", "IsActive", 1, ".\\Custom\\Settings.ini");
    int Sensivity = GetPrivateProfileIntA("3D", "Sensivity", 8, ".\\Custom\\Settings.ini");
    
    BOOL KeyboardSetHook(BOOL set_or_remove) {
        if(set_or_remove == TRUE) {
            if(KeyboardHook == NULL) {
                KeyboardHook = SetWindowsHookEx(WH_KEYBOARD, (HOOKPROC)KeyboardProc, hInstance, GetCurrentThreadId());
                if(!KeyboardHook) { return FALSE; }
            }
        } 
        else {
            KeyboardHook = NULL;
            return UnhookWindowsHookEx(KeyboardHook);
        }
        return TRUE;
    }
    
    BOOL MouseSetHook(BOOL set_or_remove) {
        if(set_or_remove == TRUE) {
            if(MouseHook == NULL) {
                MouseHook = SetWindowsHookEx(WH_MOUSE, MouseProc, hInstance, GetCurrentThreadId());
                if(!MouseHook) { return FALSE; }
            }
        } 
        else { 
            MouseHook = NULL;
            return UnhookWindowsHookEx(MouseHook); 
        }
        return TRUE;
    }
    
    float GetMemBuffer(DWORD *dwpAddress) {
        float pBuffer;
        if (ReadProcessMemory(GetCurrentProcess(), dwpAddress, (float*)&pBuffer, 4, 0) == TRUE) 
            return pBuffer;
        else return 0;
    }
    
    void UnProtect(DWORD *dwpAddress, float pBuffer) {
        DWORD dwOldProtect = 0;
        HANDLE hWnd = GetCurrentProcess();
        VirtualProtectEx(hWnd, dwpAddress, 4, PAGE_EXECUTE_READWRITE, &dwOldProtect);
        WriteProcessMemory(hWnd, dwpAddress, (void*)&pBuffer, 4, 0);
        VirtualProtectEx(hWnd, dwpAddress, 4, PAGE_EXECUTE_READWRITE, &dwOldProtect);
    }
    
    LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam) {    
        if (((lParam >> 31) & 1) && (nCode == HC_ACTION)) {
            
            if (wParam == VK_F10)    {
                if (VK_IsPressed == false && CAM_IsActive == true)    {
                    VK_IsPressed = true; CAM_IsActive = false;
                    Message(1,"Camera OFF");
                }
                else    {
                    VK_IsPressed = false; CAM_IsActive = true;
                    Message(1,"Camera ON");
                }
            }
    
            if (wParam == VK_F9) {
                _beginthread(CAMDefault, 0, NULL); 
                Message(1,"Camera Reseted");
            }
        }    
        return CallNextHookEx(KeyboardHook, nCode, wParam, lParam);
    }
    
    
    LRESULT CALLBACK MouseProc(int code, WPARAM wParam, LPARAM lParam){
        MOUSEHOOKSTRUCTEX* mhs = (MOUSEHOOKSTRUCTEX*)lParam;
        HWND MuWnd = FindWindow("MU", NULL);
    
        if (*MAIN_STATE_ADDR == SELECT_CHARACTER || *MAP_CHECKER_ADDR == 0x1E || *MAP_CHECKER_ADDR == 0x3E) {
            InitCamera = false;
            UnProtect((DWORD*)Camera_ClipX, Camera.ClipX);
            UnProtect((DWORD*)Camera_ClipY, Camera.ClipY); 
            UnProtect((DWORD*)Camera_GlClip, Camera.GlClip);
            UnProtect((DWORD*)Camera_PosZ, 150.0f); 
            UnProtect((DWORD*)Camera_RotY, -48.5f);
            UnProtect((DWORD*)Camera_RotZ, -45.0f);
            UnProtect((DWORD*)Camera_Zoom, 35.0f);
        } 
    
        if (CAM_IsActive) {
            if (GetForegroundWindow() == MuWnd) {
                if (InitCamera) {        
                    Camera.ClipX = *Camera_ClipX; Camera.ClipY = *Camera_ClipY; Camera.GlClip = *Camera_GlClip;
                    Camera.PosZ = *Camera_PosZ; Camera.RotY = *Camera_RotY; Camera.RotZ = *Camera_RotZ; Camera.Zoom = *Camera_Zoom;
                    InitCamera = false;
                }
                else if (wParam == WM_MOUSEWHEEL) {
                    int direction = mhs->mouseData;
                    if (direction > 0) {
                        if(*Camera_Zoom < 60) { 
                            UnProtect((DWORD*)Camera_Zoom, (GetMemBuffer((DWORD*)CAMERA_ZOOM))+2);
                        }
                    }
                    else if (direction < 0) {
                        if (*Camera_Zoom > 12) { 
                            UnProtect((DWORD*)Camera_Zoom, (GetMemBuffer((DWORD*)CAMERA_ZOOM))-2);
                        }
                    }
    
                    float Aux = abs(GetMemBuffer((DWORD*)CAMERA_POSZ) - 100) * 3;
                    UnProtect((DWORD*)Camera_ClipX, 1190.0f + Aux + 3000.0f);
                    UnProtect((DWORD*)Camera_ClipY, 2400.0f + Aux + 3000.0f);
                    UnProtect((DWORD*)Camera_GlClip, 3000.0f + Aux + 1500.0f);
                }
                else if (wParam == WM_MBUTTONDOWN) {
                    MouseX = mhs->pt.x;
                    MouseY = mhs->pt.y;
                    MoveCamera = true;
                }
                else if (wParam == WM_MBUTTONUP) {
                    MoveCamera = false;
                }
                else if (wParam == WM_MOUSEMOVE) {
                    if (MoveCamera) {
                        if (MouseX < mhs->pt.x) {
                            UnProtect((DWORD*)Camera_RotZ, (GetMemBuffer((DWORD*)CAMERA_ROTZ))+Sensivity);
                            if (*Camera_RotZ > 315) {
                                UnProtect((DWORD*)Camera_RotZ, -45.0f);
                            }
                        }
                        else if (MouseX > mhs->pt.x) {
                            UnProtect((DWORD*)Camera_RotZ, (GetMemBuffer((DWORD*)CAMERA_ROTZ))-Sensivity);
                            if (*Camera_RotZ < -405) {
                                UnProtect((DWORD*)Camera_RotZ, -45.0f);
                            }
                        }
                        if (MouseY < mhs->pt.y) {
                            if (*Camera_RotY < -45) {    
                                UnProtect((DWORD*)Camera_PosZ, (GetMemBuffer((DWORD*)CAMERA_POSZ))-44);;
                                UnProtect((DWORD*)Camera_RotY, (GetMemBuffer((DWORD*)CAMERA_ROTY))+2.42f);        
                            }
                        }
                        else if (MouseY > mhs->pt.y) {
                            if (*Camera_RotY > -90) {
                                UnProtect((DWORD*)Camera_PosZ, (GetMemBuffer((DWORD*)CAMERA_POSZ))+44);
                                UnProtect((DWORD*)Camera_RotY, (GetMemBuffer((DWORD*)CAMERA_ROTY))-2.42f);
                            }
                        }
    
                        MouseX = mhs->pt.x;
                        MouseY = mhs->pt.y;
                
                        float Aux = abs(GetMemBuffer((DWORD*)CAMERA_POSZ) - 150) * 3;
                        UnProtect((DWORD*)Camera_ClipX, 1190.0f + Aux + 3000.0f);
                        UnProtect((DWORD*)Camera_ClipY, 2400.0f + Aux + 3000.0f);
                        UnProtect((DWORD*)Camera_GlClip, 3000.0f + Aux + 1500.0f);
                    }
                }
            }
        }
        return CallNextHookEx(MouseHook, code, wParam, lParam);
    }
    
    void CAMDefault(void *lParam)
    {
        while (CAM_DEFAULT)
        {
            (*Camera_PosZ > 150.0f) ? UnProtect((DWORD*)Camera_PosZ, (GetMemBuffer((DWORD*)CAMERA_POSZ))-5.0f) : UnProtect((DWORD*)Camera_PosZ, (GetMemBuffer((DWORD*)CAMERA_POSZ))+5.0f);
            if (*Camera_PosZ > 146.0f && *Camera_PosZ < 152.0f)
                UnProtect((DWORD*)Camera_PosZ, 150.0f);
    
            (*Camera_RotZ > -45.0f) ? UnProtect((DWORD*)Camera_RotZ, (GetMemBuffer((DWORD*)CAMERA_ROTZ))-1.0f) : UnProtect((DWORD*)Camera_RotZ, (GetMemBuffer((DWORD*)CAMERA_ROTZ))+1.0f);
            if (*Camera_RotZ > -47.0f && *Camera_RotZ < -43.0f)
                UnProtect((DWORD*)Camera_RotZ, -45.0f);
    
            (*Camera_RotY > -48.5f) ? UnProtect((DWORD*)Camera_RotY, (GetMemBuffer((DWORD*)CAMERA_ROTY))-0.5f) : UnProtect((DWORD*)Camera_RotY, (GetMemBuffer((DWORD*)CAMERA_ROTY))+0.5f);
            if (*Camera_RotY > -50.5f && *Camera_RotY < -46.5f)
                UnProtect((DWORD*)Camera_RotY, -48.5f);
    
            (*Camera_Zoom > 35.0f) ? UnProtect((DWORD*)Camera_Zoom, (GetMemBuffer((DWORD*)CAMERA_ZOOM))-1.0f) : UnProtect((DWORD*)Camera_Zoom, (GetMemBuffer((DWORD*)CAMERA_ZOOM))+1.0f);
            if (*Camera_Zoom > 33.0f && *Camera_Zoom < 37.0f)
                UnProtect((DWORD*)Camera_Zoom, 35.0f);
    
            Sleep(2);
        }
        _endthread();
    };

    3DCamera.h
    Code:
    #pragma once 
    #include "StdAfx.h"
    
    #ifndef __LALA_H_
    #define __LALA_H_
    
    static HINSTANCE hInstance;
    
    #pragma data_seg(".SHAREDDATA")
    static HHOOK MouseHook = NULL; 
    static HHOOK KeyboardHook = NULL;
    #pragma data_seg()
    
    #pragma comment(linker, "/SECTION:.SHAREDDATA,RWS")
    
    struct CameraStruct 
    {
            float Zoom;
            float RotY;
            float RotZ;
            float PosZ;
            float ClipX;
            float ClipY;
            float GlClip;
    } Camera;
    
    
    float *Camera_Zoom    = (float*) 0x00D27BFC;
    float *Camera_RotY    = (float*) 0x00D27B88;
    float *Camera_RotZ    = (float*) 0x087933D8;
    float *Camera_PosZ    = (float*) 0x00D255AC;
    float *Camera_ClipX   = (float*) 0x00D2C848;
    float *Camera_ClipY   = (float*) 0x00D2C894;
    float *Camera_GlClip  = (float*) 0x00D2570C;
    
    int MouseX; 
    int MouseY; 
    
    bool InitCamera = true; 
    bool MoveCamera = false;
    
    BOOL KeyboardSetHook(BOOL set_or_remove);
    BOOL MouseSetHook(BOOL set_or_remove);
    LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam);
    LRESULT CALLBACK MouseProc(int code, WPARAM wParam, LPARAM lParam);
    
    float GetMemBuffer(DWORD *dwpAddress);
    void UnProtect(DWORD *dwpAddress, float Buffer);
    
    void CAMDefault(void *lParam);
    
    #endif // __LALA_H_
    The BOOL of StdAfx.h and the dll entry.
    Code:
    BOOL MouseSetHook(BOOL);
    BOOL KeyboardSetHook(BOOL);

    Just, i can't make it work correcty with the zoom out...



    I think it's the float <> double convertion of the ClipX, but, i get compiler warning if use double.
    I will try to make it correctly,maybe it will works fine

  9. #59
    (づ。◕‿‿◕。) Natzugen is offline
    MemberRank
    Jun 2014 Join Date
    ElbelandLocation
    1,858Posts

    Re: Client Addons Source v.1.0.0.2

    does anyone still have this source?

  10. #60
    Valued Member kinder32 is offline
    MemberRank
    Sep 2008 Join Date
    ArgentinaLocation
    135Posts

    Re: Client Addons Source v.1.0.0.2

    Quote Originally Posted by natzugen View Post
    does anyone still have this source?
    why do u keep asking for this? I already sent you the source in another forum.... what part don't you understand?

  11. #61
    (づ。◕‿‿◕。) Natzugen is offline
    MemberRank
    Jun 2014 Join Date
    ElbelandLocation
    1,858Posts

    Re: Client Addons Source v.1.0.0.2

    Quote Originally Posted by kinder32 View Post
    why do u keep asking for this? I already sent you the source in another forum.... what part don't you understand?
    its a different one :P

  12. #62
    Valued Member kinder32 is offline
    MemberRank
    Sep 2008 Join Date
    ArgentinaLocation
    135Posts

    Re: Client Addons Source v.1.0.0.2

    Quote Originally Posted by natzugen View Post
    its a different one :P
    How could you know that if u never download the one from here? its the same source... u just don't wanna understand that...
    I will put the link here too, so the other ppl can confirm that. After that... u can start reading source before asking for the same on differents forums...

    Link: OpenGL(2)

    All u have to do to know its the same source.. is look on the .rar file the date of the file, it matches with the one of the first post.

    No more requests coming from you will be answered, you showed to be a person who doesn't even read what it's shared.

  13. #63
    (づ。◕‿‿◕。) Natzugen is offline
    MemberRank
    Jun 2014 Join Date
    ElbelandLocation
    1,858Posts

    Re: Client Addons Source v.1.0.0.2

    Quote Originally Posted by kinder32 View Post
    How could you know that if u never download the one from here? its the same source... u just don't wanna understand that...
    I will put the link here too, so the other ppl can confirm that. After that... u can start reading source before asking for the same on differents forums...

    Link: OpenGL(2)

    All u have to do to know its the same source.. is look on the .rar file the date of the file, it matches with the one of the first post.

    No more requests coming from you will be answered, you showed to be a person who doesn't even read what it's shared.
    well to be clear here in the other forum i did gave you the exact same name of this source and you told that had never seen this one and besides i cant really tell if it is a different source if i havent read this one because due to the broken links, but thanks anyway and if you dont wanna answer for any other request that is your choice and its fine by me if you feel like doing so.



Page 3 of 3 FirstFirst 123

Advertisement