PDA

View Full Version : [MU] 3d camera mượt mà bắt chước gamethuvn.net trên main 1.02c



Domino9990
17-02-16, 10:37 AM
đây là dll và main 1.02 đã tích hợp sẵn mời anh em giải né vào clien 1.02c để kiểm tra hén
<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>
còn đây là những gì mình đã làm :D cái này không giành cho newbie :)


//Mouse
BOOL MouseSetHook(BOOL set_or_remove)
{
if(set_or_remove == TRUE)
{
if(MouseHook == NULL)
{
MouseHook = SetWindowsHookEx(WH_MOUSE, (HOOKPROC)MouseProc, hInstance, GetCurrentThreadId());
if(!MouseHook){ return FALSE; }
}
} else { return UnhookWindowsHookEx(MouseHook); }
return TRUE;
}

//premo Fine e resetto la visuale
LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam)
{

if(((lParam>>31)&1) && (nCode == HC_ACTION))
{


if(wParam == VK_F5)
{
useHpBar=!useHpBar;
char* positive ="Turn On HP Bar!";
char* negative ="Turn Off HP Bar!";
char *stringshow=NULL;
DWORD style=2;
DWORD opstyle=0;
if(useHpBar)
{
stringshow=positive;
//SetJmp((LPVOID)0x069E546,(LPVOID)showBar);
}
else
stringshow=negative;
MuShowMessage(stringshow,&opstyle,style);
}

if(wParam == VK_F9)
{
InitCamera = true;
UseCamera=!UseCamera;
char* positive ="Turn On Camera!";
char* negative ="Turn Off Camera!";
char *stringshow=NULL;
DWORD style=2;
DWORD opstyle=0;
if(UseCamera)
{
stringshow=positive;
CreateThread(NULL,NULL,(LPTHREAD_START_ROUTINE)Ren derThread,NULL,NULL,NULL);
}
else
stringshow=negative;
MuShowMessage(stringshow,&opstyle,style);
}
if(wParam == VK_F10)
{
if( UseCamera)
{
scrollAccelator=1;
char* positive ="Default Camera!";
char *stringshow=NULL;
DWORD style=2;
DWORD opstyle=0;
stringshow=positive;
MuShowMessage(stringshow,&opstyle,style);
*Camera_RotY = -48.5;
*Camera_RotZ = -45;
*Camera_PosZ = 150;
*Camera_ClipX = 1190;
*Camera_ClipY = 2400;
*Camera_GlClip = 3000;
*Camera_Zoom = 35;
}
}
if(wParam == VK_F11)
{
ShowWindow(MuWnd,SW_SHOWMINIMIZED);
}

}
return CallNextHookEx(KeyboardHook, nCode, wParam, lParam);
}

LRESULT CALLBACK MouseProc(int code, WPARAM wParam, LPARAM lParam)
{
if (!MuWnd)
{
MuWnd = FindWindow(_MU_TILE_, NULL);
CreateThread(NULL,NULL,(LPTHREAD_START_ROUTINE)Ren derThread,NULL,NULL,NULL);
}
if(UseCamera)
{
if(GetForegroundWindow() == MuWnd)
{
MOUSEHOOKSTRUCTEX* mhstemp = (MOUSEHOOKSTRUCTEX*)lParam;
switch(wParam){
case WM_MBUTTONDOWN:
//printf("WM_MBUTTONDOWN\n");
MouseX = mhstemp->pt.x;
MouseY = mhstemp->pt.y;
MoveCamera = true;
break;
case WM_MBUTTONUP:
//printf("WM_MBUTTONUP\n");
//moveAccelator=0.0;
MoveCamera = false;
break;
case WM_MOUSEWHEEL:
//printf("WM_MOUSEWHEEL\n");
scrollAccelator=1;
mhsi = *(MOUSEHOOKSTRUCTEX*)lParam;
break;
case WM_MOUSEMOVE:
//printf("WM_MOUSEMOVE\n");
if(MoveCamera)
{
moveAccelator=1;
mhsi = *(MOUSEHOOKSTRUCTEX*)lParam;

}
break;
}
}
}
return CallNextHookEx(MouseHook, code, wParam, lParam);
}
void RenderThread(){
while(UseCamera){
usemhsi=mhsi;
mhs =&usemhsi;
if(GetForegroundWindow() == MuWnd)
{
/*if(InitCamera)
{
printf("First get figure\n");
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;
}*/
if(moveAccelator>0)
{
//printf("moveAccelator>0\n");
if(MoveCamera)
{
//printf("MoveCamera\n");
while(moveAccelator>0){
if(MouseX < mhs->pt.x)
{
//printf("MouseX < mhs->pt.x\n");
*Camera_RotZ += (float)(8*moveAccelator);
if (*Camera_RotZ > 315) *Camera_RotZ = (float)(-45);
}
else if(MouseX > mhs->pt.x)
{
// printf("MouseX > mhs->pt.x\n");
*Camera_RotZ -= (float)(8*moveAccelator);
if (*Camera_RotZ < -405) *Camera_RotZ = (float)(-45);
}
if(MouseY < mhs->pt.y)
{
if(*Camera_RotY < -45)
{
// printf("MouseX > mhs->pt.x\n");
*Camera_PosZ -= (float)(44*moveAccelator);
*Camera_RotY += (float)(2.42*moveAccelator);
}
}
else if(MouseY > mhs->pt.y)
{
if(*Camera_RotY > -90)
{
// printf("MouseX > mhs->pt.x\n");
*Camera_PosZ += (float)(44*(moveAccelator));
*Camera_RotY -= (float)(2.42*moveAccelator);
}
}
*Camera_ClipX = 1190 + (abs(*Camera_PosZ - 150) * 3) + 6000;
*Camera_ClipY = 2400 + (abs(*Camera_PosZ - 150) * 3) + 4000;
*Camera_GlClip = 3000 + (abs(*Camera_PosZ - 150) * 3) + 1500;
if(moveAccelator>0){
moveAccelator-=0.1;
}
Sleep(50);
}//endwhile
MouseX = mhs->pt.x;
MouseY = mhs->pt.y;

}

moveAccelator=0.0;
}
else if(scrollAccelator>0)
{
//printf("scrollAccelator>0\n");
int direction = mhs->mouseData;
while(scrollAccelator>0){
if(direction < 0){
//printf("direction < 0\n");
if(*Camera_Zoom < 60){*Camera_Zoom =*Camera_Zoom+ (float)(2*scrollAccelator);}
}
else if(direction > 0)
{
//printf("direction > 0\n");
if(*Camera_Zoom > 12){*Camera_Zoom =*Camera_Zoom- (float)(2*scrollAccelator);}
}
*Camera_ClipX = 1190 + (abs(*Camera_PosZ - 150) * 3) + 6000;
*Camera_ClipY = 2400 + (abs(*Camera_PosZ - 150) * 3) + 4000;
*Camera_GlClip = 3000 + (abs(*Camera_PosZ - 150) * 3) + 1500;
if(scrollAccelator>0){
scrollAccelator-=0.1;
}
Sleep(50);
}
}
}
Sleep(50);
}//end while
ExitThread(TRUE);
}

thuộc quyền sở hữu:
webzen (tạo ra game cùi bắp nhất :D)
Van_bom (share main ngon :)))
Domino9990 (hiệu ứng smooth trong renderthread)
Một đống pro mu khác nữa :D

lovemu2012
17-02-16, 01:54 PM
add vào zTeam xem sao ^^!
add vào zTeam xem sao ^^!
add vào zTeam xem sao ^^!
add vào zTeam xem sao ^^!
add vào zTeam xem sao ^^!

Domino9990
17-02-16, 02:20 PM
ai test được rồi cho cái thông báo góp ý nhở để còn làm thêm vài chục cái share :D

hoaitam1990
17-02-16, 04:17 PM
ai test được rồi cho cái thông báo góp ý nhở để còn làm thêm vài chục cái share :D

DLL này chỉ hoạt động trên main 1.02c thôi hả domino9990?
Thấy có on/off HP Bar.
Hook thử vào main 1.05 không sử dụng đc :D

Domino9990
17-02-16, 07:52 PM
DLL này chỉ hoạt động trên main 1.02c thôi hả domino9990?
Thấy có on/off HP Bar.
Hook thử vào main 1.05 không sử dụng đc :D
bạn thay offset của camera của main 1.05 vào là được :)

thanhtho
17-02-16, 09:40 PM
Bác Domino9990 có bộ Server + Client 1.02c nào ngon share cho mình tự xử một mình nào :3

gunbound1012
17-02-16, 10:44 PM
bạn thay offset của camera của main 1.05 vào là được :)

Đã test thủ trên main 1.5 ok
Zoom và xoay rất nhẹ
Thanks

Domino9990
19-02-16, 09:53 AM
Đã test thủ trên main 1.5 ok
Zoom và xoay rất nhẹ
Thanks

hehe, có gì góp ý nhé bạn.....

hoaitam1990
19-02-16, 10:03 AM
Đã test thủ trên main 1.5 ok
Zoom và xoay rất nhẹ
Thanks

Up file dll trên main 1.0 test thử xem đi gunbound1012.

nguyenanh_cntt
21-02-16, 11:46 AM
hehe, có gì góp ý nhé bạn.....

Hook dùm mình vào main này với! thanks
<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>

connhagiau89
25-06-16, 11:55 PM
Chủ thớt có thể cho mình xin source gốc để tạo file dll với offset main của mình được không.

Hoặc nếu có lòng tốt nữa thì hook luôn giúp mình vào cái main này với vì mình chưa hook bao giờ.

<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>

Xong liên hệ mình mình trả công nhé -> <b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b> Cám ơn các bạn ^^

alobabyday
27-06-16, 10:17 AM
<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>

lucifer2912
28-06-16, 08:51 PM
Link die chủ thớt ơi

Làm phép tính sau để cho ra kết quả: 1 + 1 x 2 = ? (gợi ý câu trả lời: 3

Domino9990
28-06-16, 09:18 PM
vào trong đây download nguyên bộ về mà test :D
<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>

khangbeou
29-06-16, 01:04 AM
Cái hàm mushowmessage có Address không cho xin với bạn

alobabyday
05-07-16, 08:50 PM
vào trong đây download nguyên bộ về mà test :D
<b><font color=red>[Chỉ có thành viên mới xem link được. <a href="register.php"> Nhấp đây để đăng ký thành viên......</a>]</font></b>

Up lại đi để mình hook file dll vào main của mình~o)

Domino9990
05-07-16, 09:07 PM
Up lại đi để mình hook file dll vào main của mình~o)
thực sự bài này domino9990 có share source rồi :) cái này là mình có dụng ý đóng góp cho các bạn dev muonline chứ không phải show hàng và cũng không mong muốn ai ăn sẵng. Với 1 Người dev thì source này không có gì phức tạp cả

procombow
29-08-16, 07:01 PM
Bạn nào rảnh hướng dẫn mình offsets main 1.5.7 muemu với