Forum
 
Go Back   D3scene > Hot Games > Warcraft 3 forum > Warcraft 3 Hacks

Simple Maphack - OpenSource - Delphi

This is a discussion on Simple Maphack - OpenSource - Delphi within the Warcraft 3 Hacks forum part of the Warcraft 3 forum category; hello, some weeks ago I decided to make a maphack myself and since I didn't have any source of other ...

Welcome on D3scene.com! Make sure to register - it's free and very quick! You have to register before you can post and participate in our discussions with 35000 other registered members. Downloads, user profiles and some forums can only be seen by registered members. After you create your free account you will be able to customize many options, you will have the full access to new hacks, latest cheats and last but not least will see no advertisements at all. We would love to see you around in our community!
Reply
 
LinkBack Thread Tools Display Modes
  #1  
Old 08-02-2008, 05:52 AM
Wannabe Member
 
Join Date: Jan 2008
Location: germany
Posts: 13
Reputation: 18
Rep Power: 1
Ygasmy is on a distinguished road
Send a message via ICQ to Ygasmy
Simple Maphack - OpenSource - Delphi

hello,
some weeks ago I decided to make a maphack myself and since I didn't have any source of other Maphacks I started from nothing and after 4 hours of trying i finally got my maphack working. (well, nothing = being a programmer for 8 years now)

It's not the best one and it's also highly detectable so DO NOT use it on ladder games - or even better - refrain from using it at all. I made it just to see how maphacks work and if I can compete with other so called "advanced hackers".

It's coded in delphi because I was too lazy to install/download any IDEs/compilers for C++ and the Delphi IDE was already installed on my pc.
If you can't code pascal/delphi but C++ it should be kinda easy to translate this into C++ because the main commands are windows APIs, how they work can be researched in the MSDN:

MSDN: Microsoft Developer Network


Bare source of my program, having just a single button on the form:

Code:
{
 This program was written on 14th July 2008.
 Original Author: tndz
 I did NOT rip ANY code off other maphacks or hacks
 nor did I use any tutorial which has something to
 do with game-hacking/cracking or whatsoever. This
 program-source was made by me, though the DebugPrivilege
 part and some infos on how to use WriteProcessMemory were
 taken from the MSDN (microsoft developer network) and
 Joachim Rohde and Marcus Roming's book "Assembler".
}


unit maphack;

interface

uses
  Windows, SysUtils, Controls, Forms, StdCtrls, ExtCtrls, Classes,
  Graphics;

type
  TmainF = class(TForm)
    btn_on: TButton;
    procedure btn_onClick(Sender: TObject);
    function SetDebugPrivilege: Boolean;
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  mainF: TmainF;



implementation

{$R *.dfm}

procedure TmainF.btn_onClick(Sender: TObject);
var
  Wc3: Hwnd;                                                           //declaring variables
  ProcessId: Integer;
  Bytes: Cardinal;
  Stat: array of Byte;
begin
setlength(stat,2);                                                     //declare our array (could also have used 3 different variables or reassign values)
SetDebugPrivilege;                                                     //grant our process Debug-rights (important!)
wc3 := FindWindow (nil,'Warcraft III');                                //find wc3 handle
GetWindowThreadProcessId(Wc3, @ProcessId);                             //find PID by Phandle
wc3 := OpenProcess(PROCESS_ALL_ACCESS, False, ProcessId);              //open wc3 process with all rights
Bytes := 1;                                                            //not needed for this tbh
                                                                        {
                                                                        We need to store what we want to write
                                                                        in a variable(array) first. Byte variable
                                                                        in Delphi is 0..255, decimal-system. Since
                                                                        we want to write into memory, we need hex-values.
                                                                        I just calculated them from hex to decimal via
                                                                        windows calculator instead of recalculating them
                                                                        via program-code.
                                                                        }

stat[0] := 185;                                                        //185 = B9h
stat[1] := 15;                                                         //15 = Fh
stat[2] := 00;                                                         //00 = 0h
                                                                        {
                                                                         B9 0F 00 is part of
                                                                         MOV ECX,000F
                                                                         which means:
                                                                         COPY 000F into ECX
                                                                         so what we do is:
                                                                         we overwrite a part of
                                                                         the drawing engine which
                                                                         checks if a unit is visible
                                                                         to a player or not.
                                                                        }
WriteProcessMemory(wc3, ptr($6F3A0474), @Stat[0], 1, Bytes);          //write first bytepair
WriteProcessMemory(wc3, ptr($6F3A0475), @Stat[1], 1, Bytes);          //2nd
WriteProcessMemory(wc3, ptr($6F3A0476), @Stat[2], 1, Bytes);          //3rd
end;


function TmainF.SetDebugPrivilege: Boolean;
var
  hToken: THandle;
  TP: TTokenPrivileges;
  lpLuid: TLargeInteger;
  dwReturnLength: DWORD;
begin
  Result := False;
  if OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then
  begin
    if LookupPrivilegeValue(nil, 'SeDebugPrivilege', lpLuid) then
    begin
      TP.PrivilegeCount := 1;
      TP.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
      TP.Privileges[0].Luid := lpLuid;
      Result := AdjustTokenPrivileges(hToken, False, TP, sizeof(TP), nil, dwReturnLength);
    end;
    CloseHandle(hToken);
  end;
end;

end.
Here is the PE (aka .exe) compiled with this source. (I added a picture though :p)
RapidShare: Easy Filehosting
http://www.megaupload.com/?d=5OTH8YED
(MD5: 81899ffa99e7246b7e6192bdbe16a8f3)

Since I don't trust anyone posting results of malware scanners, download it and go check it on virusscan.jotti.org, its only 172kb in size (packed).


cya,
tndz aka Ygasmy.

Last edited by Ygasmy; 09-21-2008 at 03:41 PM.
Reply With Quote
D3scene
Welcome to D3scene - probably the best location for all Gamers.

To participate in our friendly environment you have to register. After completing registration you will have full access to all threads and features. We care about members and try to make your stay as pleasant as possible. We are unique with the following feature for members - you will not see a single Advertisement!


The best: registration is completely free. It will not cost you a single penny or harm you in any way. You will lose nothing except 1 minute of your time. So why not register? We would be happy to see you around!
  #2  
Old 08-02-2008, 02:03 PM
Guru
 
Join Date: May 2008
Posts: 86
Reputation: 22
Rep Power: 0
safd is on a distinguished road
edit:gj ^^

Last edited by safd; 08-04-2008 at 07:20 PM.
Reply With Quote
  #3  
Old 08-02-2008, 06:50 PM
Wannabe Member
 
Join Date: Jan 2008
Location: germany
Posts: 13
Reputation: 18
Rep Power: 1
Ygasmy is on a distinguished road
Send a message via ICQ to Ygasmy
edit: ty :p

Last edited by Ygasmy; 09-11-2008 at 06:58 PM. Reason: answer to a deleted post != useful
Reply With Quote
  #4  
Old 08-04-2008, 10:16 AM
PinkHair's Avatar
Advanced Hacker
 
Join Date: Mar 2008
Posts: 289
Reputation: 41
Rep Power: 1
PinkHair is on a distinguished road
Send a message via ICQ to PinkHair Send a message via MSN to PinkHair
gj , thank you.
Reply With Quote
  #5  
Old 08-10-2008, 12:51 AM
Wilfred's Avatar
Member
 
Join Date: Aug 2008
Location: Western Australia
Posts: 37
Reputation: 14
Rep Power: 1
Wilfred is on a distinguished road
You could make a tutorial on how to make and compile your own maphack.
Reply With Quote
  #6  
Old 09-05-2008, 04:18 PM
Wannabe Member
 
Join Date: Sep 2008
Posts: 12
Reputation: 0
Rep Power: 1
UnrealPwner12 is an unknown quantity at this point
c++

can i have this in C++

can u convert it and show me the source code
Reply With Quote
  #7  
Old 09-10-2008, 06:51 AM
TyranO's Avatar
Custom User Title
 
Join Date: Aug 2008
Location: Azeroth
Posts: 195
Reputation: 484
Rep Power: 3
TyranO is a glorious beacon of lightTyranO is a glorious beacon of lightTyranO is a glorious beacon of lightTyranO is a glorious beacon of lightTyranO is a glorious beacon of light
Good work. +rep
Reply With Quote
  #8  
Old 09-10-2008, 01:00 PM
Bendik's Avatar
Banned User
 
Join Date: Dec 2007
Location: I live in a small village up north in Norway, Called Beiarn (Google pictures it!)
Posts: 326
Reputation: 260
Rep Power: 0
Bendik is a jewel in the roughBendik is a jewel in the roughBendik is a jewel in the rough
Send a message via ICQ to Bendik Send a message via AIM to Bendik Send a message via MSN to Bendik Send a message via Yahoo to Bendik Send a message via Skype™ to Bendik
This one is undetected at the moment. As Warden is not active at all, SO in other words: It is impossible to make a detectable maphack atm
Reply With Quote
  #9  
Old 09-10-2008, 04:49 PM
WinneR's Avatar
Wc3 + C & C RA3 Mod :)
 
Join Date: May 2008
Location: Denmark (Hilleroed)
Posts: 751
Reputation: 379
Rep Power: 2
WinneR is just really niceWinneR is just really niceWinneR is just really niceWinneR is just really nice
Send a message via MSN to WinneR
Nice one bendik So you can use Shadowfrench in ladder? Or someone you MAKE now ? O_O
Reply With Quote
  #10  
Old 09-10-2008, 05:13 PM
Bendik's Avatar
Banned User
 
Join Date: Dec 2007
Location: I live in a small village up north in Norway, Called Beiarn (Google pictures it!)
Posts: 326
Reputation: 260
Rep Power: 0
Bendik is a jewel in the roughBendik is a jewel in the roughBendik is a jewel in the rough
Send a message via ICQ to Bendik Send a message via AIM to Bendik Send a message via MSN to Bendik Send a message via Yahoo to Bendik Send a message via Skype™ to Bendik
Yeah you can use Shadowfrench or any other hack you want.

And i am working on BMap v4.0 (:
Reply With Quote
  #11  
Old 09-11-2008, 03:58 PM
Wannabe Member
 
Join Date: Jan 2008
Location: germany
Posts: 13
Reputation: 18
Rep Power: 1
Ygasmy is on a distinguished road
Send a message via ICQ to Ygasmy
ive added some features other maphacks have and made it look nice


(bad jpg quality sry)


RapidShare: Easy Filehosting


ill upload the source later
Reply With Quote
  #12  
Old 09-17-2008, 05:05 AM
TyranO's Avatar
Custom User Title
 
Join Date: Aug 2008
Location: Azeroth
Posts: 195
Reputation: 484
Rep Power: 3
TyranO is a glorious beacon of lightTyranO is a glorious beacon of lightTyranO is a glorious beacon of lightTyranO is a glorious beacon of lightTyranO is a glorious beacon of light
Quote:
Originally Posted by Ygasmy View Post
ive added some features other maphacks have and made it look nice


(bad jpg quality sry)


RapidShare: Easy Filehosting


ill upload the source later
May I ask which offset you use for tiehack?
Reply With Quote
  #13  
Old 09-20-2008, 06:42 AM
Newbie
 
Join Date: Sep 2008
Posts: 4
Reputation: 0
Rep Power: 1
Jayclone is an unknown quantity at this point
Rapidshare doesnt work for me can reupload somewhere else? =(
Reply With Quote
  #14  
Old 09-21-2008, 03:40 PM
Wannabe Member
 
Join Date: Jan 2008
Location: germany
Posts: 13
Reputation: 18
Rep Power: 1
Ygasmy is on a distinguished road
Send a message via ICQ to Ygasmy
@gaypimp
tiehack offset is 6F285204h,
btw its really easy to find out which offsets are used by a specific hack

@jayclone
MEGAUPLOAD - The leading online storage and file delivery service
Reply With Quote
  #15  
Old 09-24-2008, 06:25 PM
TyranO's Avatar
Custom User Title
 
Join Date: Aug 2008
Location: Azeroth
Posts: 195
Reputation: 484
Rep Power: 3
TyranO is a glorious beacon of lightTyranO is a glorious beacon of lightTyranO is a glorious beacon of lightTyranO is a glorious beacon of lightTyranO is a glorious beacon of light
Quote:
Originally Posted by Ygasmy View Post
@gaypimp
tiehack offset is 6F285204h,
btw its really easy to find out which offsets are used by a specific hack

@jayclone
MEGAUPLOAD - The leading online storage and file delivery service
I know, I could find some of your offsets (some were from another public maphack btw), but not the tiehack one, thanks.

Last edited by TyranO; 09-24-2008 at 06:44 PM.
Reply With Quote
  #16  
Old 10-16-2008, 03:56 AM
Newbie
 
Join Date: Oct 2008
Posts: 1
Reputation: 0
Rep Power: 1
cosmix is an unknown quantity at this point
it for 1.22 my server is 1.21b warcraft where need i change the code ?
Reply With Quote
  #17  
Old 11-18-2008, 04:51 AM
Newbie
 
Join Date: Nov 2008
Posts: 4
Reputation: 0
Rep Power: 1
entice is an unknown quantity at this point
Ygasmy, anyway you can make this into c++ code and upload updated source? Thanks!
Reply With Quote
D3scene
Welcome to D3scene - probably the best location for all Gamers.

To participate in our friendly environment you have to register. After completing registration you will have full access to all threads and features. We care about members and try to make your stay as pleasant as possible. We are unique with the following feature for members - you will not see a single Advertisement!


The best: registration is completely free. It will not cost you a single penny or harm you in any way. You will lose nothing except 1 minute of your time. So why not register? We would be happy to see you around!
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
MousePad's Maphack 7.2 [CRACKED] xHack Diablo 2 Hacks 3 08-01-2008 09:13 AM


All times are GMT +1. The time now is 08:07 AM.


vBulletin style developed by Transverse Styles
Powered by vBulletin® Version 3.7.2
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

»About D3scene »Navigation