watch sexy videos at nza-vids!
Trang chủ| Tìm kiếm| Game 1| Game 2| Video phim Hot
title Quảng cáo
Ứng dụng SMS chúc tết 2013 Ứng dụng SMS chúc tết 2013 Những mẫu SMS làm “rung động lòng người”. Bạn có biết SMS qua điện thoại cũng là một “món quà rất có ý nghĩa, rất dễ thương” giành cho người mình yêu quý Tải về máy

Hướng dẫn viết auto cho game

2T_V.I.P [On]
Đang xem: 1
Lượt xem: 19620

đi được.

Để làm được việc đó ta sẽ viết code gọi hàm gửi tin

đến server. Sau khi nghiên cứu, tôi đã tìm được địa

chỉ các hàm gửi lệnh RUN và hàm gửi lệnh WALK

trong game_y.exe. Cũng may là mấy hàm này ko

viết trong Class nên việc gọi cũng đỡ cực hơn. Trong

chương trình HookDll, các bạn bổ sung các đoạn code

sau:

Code:

//Global Functions

void 0(int, int);

void 0(int, int);

#define RUN_FUNC_ADD 0x004C41B7 // Send Client

DoRun Function

#define WLK_FUNC_ADD 0x004C4204 // Send Client

DoWalk Function

Và khởi tạo các địa chỉ hàm SendCmdRunToServer &

hàm SendCmdWalkToServer bằng cách chèn đoạn

code sau vào vị trí nào thích hợp (nhớ rằng chúng ta

phải thực hiện việc này trong HookProc, tức là đang ở

trong Process của Game. Việc gán trực tiếp bằng

toán tử gán ( = ) sẽ ko thực hiện được vì VC++ sẽ báo

lỗi nên ta dùng đoạn mã ASM.

Code:

__asm

{

mov SendCmdRunToServer, RUN_FUNC_ADD;

mov SendCmdWalkToServer, WLK_FUNC_ADD;

}

Đến đây chúng ta đã hoàn tất 90% công việc rồi,

quay trở lại phần code của chương trình chính, sau

khi ra đã gán các giá trị CmdKind, Param_X, Param_Y

ta phải gửi một thông điệp WM_HOOK_WRITE nữa để

báo HookProc chạy hàm SendCmdRunToServer hoặc

SendCmdWalkToServer.

Đoạn mã đó như sau:

Code:

//SendMessage(m_hVLWindow, WM_HOOK_WRITE,

2, 0); // Send Walk Cmd

SendMessage(m_hVLWindow, WM_HOOK_WRITE, 3,

0); // Send Run Cmd

Còn ở HookProc, các bạn cải tiến một chút như dưới

đây thì ta sẽ có được đoạn gửi lệnh RUN, WALK lên

Server.

Code:

#define pCW 0lParam)

LRESULT HookProc (int nCode, WPARAM wParam,

LPARAM lParam)

{

int nAdd = pCW->wParam;

int nVal = pCW->lParam;

int *pX, *pY;

switch (nAdd)

{

case 2: // DO WALK

pX = 04236;

pY = 04240;

SendCmdWalkToServer0;

break;

case 3: // DO RUN

pX = 04236;

pY = 04240;

SendCmdRunToServer0;

break;

default: // ASSIGN OTHER VALUES

pX = 0nAdd;

*pX = nVal;

}

}

Kết thúc loạt bài về viết chương trình AutoPlay. Từ

đây các bạn có thể cải tiến chương trình theo ý thích

của mình, làm bao nhiêu chức năng tùy ý. Và từ sau

bài này các bạn vào trao đổi và có cao kiến hay thắc

mắc gì cứ nêu ra chúng ta cùng bàn luận nhé. Các

đoạn code trên có nhiều chỗ tôi gõ trực tiếp lên đây

(ko phải copy từ chương trình ra vì chỉ cần lấy phần

cơ bản cho dễ hiểu) nên đôi khi gõ tắt hoặc gõ lỗi tí

xíu, các bạn tự sửa lấy nhé.


<<1 ... 345
Cùng Chuyên Mục:
Hướng dẫn viết auto cho game
? 2013-01-10 / 07:34:22

» Ads:

» Liên kết
Facebook Twitter
SEO : Bạn đến từ :
title Thống kê site
C-STAT
U-ON
Thời gian load trang: 0.005