完美国际FB穿墙飞天外挂

来源:百度文库 编辑:神马文学网 时间:2024/04/19 13:24:49
完美国际FB穿墙飞天外挂的源代码 

{完美已经变味了.从对盗号的姑息,到周年庆的敛财.一个不以用户为根本的东东,是存不长久的.

顺便说一下,完美世界的服务器文件在网络上已经出现.恐怕完美离当年的传奇不远了.

既然这样,我为它的腐朽再加把力吧.

下面披露FB外挂的源代码.Delphi. v7平台调试通过.

基址是68-71的都可以用的一般三周换一次基址.以后基址改了.大家就自己换吧.注意,本程序基址用的二字节的,与平常网上找到的四字节数据有所不同.

顺便提醒一下,下面源码没有做防封处理.一般会在10-30分钟左右被封,想进一步做更好的,就自己学点破解吧.

转载请注明出处,谢谢---------时光牧者}

unit rom;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;

type
TForm1 = class(TForm)
    CheckBox1: TCheckBox;
    CheckBox2: TCheckBox;
    CheckBox3: TCheckBox;
    CheckBox4: TCheckBox;
    CheckBox6: TCheckBox;
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure CheckBox1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure CheckBox2MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure CheckBox6MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure CheckBox4MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure CheckBox3MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
private
function FindproHandle():boolean;
    { Private declarations }
public
    { Public declarations }
Wnd:hwnd;
pid:longint;
ProHandle:THandle;
ycadd:longint;
ftadd:longint;
cqadd:longint;
yyadd:longint;
fxadd:longint;
Num:cardinal;
yc1,yc2,cq1,cq2,ft1,ft2,yy1,yy2,fx1,fx2:integer;


end;

var
Form1: TForm1;


implementation
{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
cqadd:=$0000405223;   //穿墙
ycadd:=$000041EB06;   //隐藏
ftadd:=$0000450445;   //无限跳
yyadd:=$0000461898; //空中漫步,游泳基址没找到;
fxadd:=$00004584F1; //飞行
num:=0;
cq1:=49881;
cq2:=49625;
yc1:=49881;
yc2:=49369;
ft1:=362;
ft2:=2666;
yy1:=32373;//31349;
yy2:=32372;//31348;
fx1:=4469;
fx2:=4468;
end;

function TForm1.FindproHandle():boolean;
var
flag:boolean;
begin
num:=0;
flag:=true;
Wnd := FindWindow(nil,'Element Client');//查找窗口
GetWindowThreadProcessId(Wnd, @PID); //得到pID
//以完全访问权限打开进程句柄
ProHandle := OpenProcess(PROCESS_ALL_ACCESS, False, PID);
if PID=0 then
    begin
    showmessage('进程读取失败,可能是游戏没有启动!');
    flag:=false;
    end;
FindproHandle:=flag;
end;

//不在状态栏显示
procedure TForm1.FormShow(Sender: TObject);
begin
ShowWindow(Application.Handle, SW_HIDE);
end;

 

procedure TForm1.CheckBox1MouseUp(Sender: TObject; Button: TMouseButton;//穿墙
Shift: TShiftState; X, Y: Integer);
begin
    if FindproHandle() then
    begin
    if Form1.CheckBox1.Checked then
      WriteProcessMemory(ProHandle,Pointer(Form1.cqadd),@Form1.cq1,2,num)
    else
      WriteProcessMemory(ProHandle,Pointer(Form1.cqadd),@Form1.cq2,2,num);
    CloseHandle(ProHandle);
    end
else
    CheckBox1.Checked:=false;
end;

procedure TForm1.CheckBox2MouseUp(Sender: TObject; Button: TMouseButton;//隐藏建筑
Shift: TShiftState; X, Y: Integer);
begin
if FindproHandle() then
    begin
    if Form1.CheckBox2.Checked then
      WriteProcessMemory(ProHandle,Pointer(Form1.ycadd),@Form1.yc1,2,num)
    else
      WriteProcessMemory(ProHandle,Pointer(Form1.ycadd),@Form1.yc2,2,num);
    CloseHandle(ProHandle);
    end
else
    CheckBox2.Checked:=false;
end;

procedure TForm1.CheckBox6MouseUp(Sender: TObject; Button: TMouseButton;//飞行
Shift: TShiftState; X, Y: Integer);
begin
if FindproHandle() then
    begin
    if Form1.CheckBox6.Checked then
      WriteProcessMemory(ProHandle,Pointer(Form1.fxadd),@Form1.fx1,2,num)
    else
      WriteProcessMemory(ProHandle,Pointer(Form1.fxadd),@Form1.fx2,2,num);
    CloseHandle(ProHandle);
    end
else
    CheckBox6.Checked:=false;
end;

procedure TForm1.CheckBox4MouseUp(Sender: TObject; Button: TMouseButton;//空中漫步
Shift: TShiftState; X, Y: Integer);
begin
    if FindproHandle() then
    begin
   if Form1.CheckBox4.Checked then
      WriteProcessMemory(ProHandle,Pointer(Form1.yyadd),@Form1.yy1,2,num)
   else
      WriteProcessMemory(ProHandle,Pointer(Form1.yyadd),@Form1.yy2,2,num);
    CloseHandle(ProHandle);
   end
else
    CheckBox4.Checked:=false;
end;

procedure TForm1.CheckBox3MouseUp(Sender: TObject; Button: TMouseButton;//无限跳
Shift: TShiftState; X, Y: Integer);
begin
      if FindproHandle() then
    begin
    if Form1.CheckBox3.Checked then
      WriteProcessMemory(ProHandle,Pointer(Form1.ftadd),@Form1.ft1,2,num)
    else
      WriteProcessMemory(ProHandle,Pointer(Form1.ftadd),@Form1.ft2,2,num);
    CloseHandle(ProHandle);
    end
else
    CheckBox3.Checked:=false;
end;

end.