;====================================================================
; D2HackIt.ini
; -------------------------------------------------------------------
; Main ini file for D2HackIt.
;
; <thohell@home.se>
;====================================================================



;====================================================================
; Misc options.
;
; Format:
; -------------------------------------------------------------------
; Autoload=plugin1,plugin2,...,pluginN
; InfoPrompt=ÿc3INFO
; ErrorPrompt=ÿc1ERROR
; VerbosePrompt=ÿc9VERBOSE
; Verbose=<on|off>
; -------------------------------------------------------------------
;
; D2HackIt! *is* maphack 4.1 (or above) compatible since it can load
; it as any other plugin. Rename d2maphack.dll to d2maphack.d2h and 
; move all files in your maphack directory to your D2HackIt 
; directory. Since maphack is not specifically build for D2HackIt
; and may conflict with D2HackIt modules (bind.d2h for example) it 
; should be loaded first, preferably first on the Autoload line :)
;
; If you do not want to do this, make sure you load maphack *before*
; loading D2HackIt. If you fail to do this, maphack will fail with
; 'Unknown game version' error.
;
; -------------------------------------------------------------------
[Misc]
Autoload=pickit
InfoPrompt=ÿc3::
ErrorPrompt=ÿc1::
VerbosePrompt=ÿc9::
Verbose=off
;
;====================================================================



;====================================================================
; Fingerprint definitions for D2HackIt v1.0. These fingerprints are 
; working under 1.0dcb.
;
; Format:
; -------------------------------------------------------------------
; Name=Module,patchsize,offset,fingerprint
; -------------------------------------------------------------------
;
; The first character in the fingerprint determines what type of 
; fingerprint this is:
;
; !				An ordinal inside	(ex. !NameOfFuntion or !10)
; #				An actual hexadecimal adress (ex. #6fba80b4)
; other			Fingerprint pattern (see below)
;
; Patterns are interpreted as a string of bytes. The value 00 to ff
; represents an actual value. A byte represented as 'xx' is not
; important to the fingerprint and are masked out. Example of masked
; bytes are absolute addresses/offsets inside the code that are
; likely to change location on blizzard patches.
;
; -------------------------------------------------------------------
[FingerprintData]

; This is now GrabIt! compatible.
GamePacketReceivedIntercept=D2Client.dll,7,13,8B5C2410xxxxxxxxxxxx8D145B8B0495
GamePacketReceivedIntercept2=D2Client.dll,7,18,85C9894C24xx0F8FxxxxxxxxFF05xxxxxxxx5F5E5D

; This lets us send packets even in single player games
GamePacketSentIntercept=D2Net.dll,5,0,!10005

; We hook this to set playerinfo when game starts/ends
GamePlayerInfoIntercept=D2Client.dll,6,10,E8xxxxxxxxE8xxxxxxxx8935xxxxxxxx5EC3

; Just a pointer to playerinfo, available any time
pPlayerInfoStruct=D2Client.dll,0,12,E8xxxxxxxxE8xxxxxxxx8935xxxxxxxx5EC3

; This is out entrypoint for displaying text
GamePrintStringLocation=D2Client.dll,0,0,81ECxxxxxxxx53558BE956578A45xx84C0

; This is the struct passed to us by the loader
; The modules searched for are actually: Game.exe, Diablo II.exe and D2Loader.exe
LoaderStruct=Game.exe,0,0,1d10abd1

; This is used by bind.d2h
GameKeyDownIntercept=D2Client.dll,5,5,8B770833D2xxxxxxxxxxxxC0668B41043BC6

; Thanks to Techwarrior for this info
GameSendPacketToGameLocation=d2net.dll,0,21,81EC0C010000538B1Dxxxxxxxx5556

; This lets us save&exit game safely (by Dan_Goon)
GameSaveAndExit=D2client.dll,0,0,33c9e8xxxxxxxxc705xxxxxxxxxxxxxxxxe8xxxxxxxxc705

; Can't find it in 1.10
GameSendMessageToChat=bnclient.dll,0,0,8BD181EC????????85D274??578BFA83C9FF

; Pointer to current game info, available at any time
;pGameInfoStruct=d2client.dll,0,2,8B0DxxxxxxxxBAxxxxxxxx516A00B9xxxxxxxx
;pGameInfoStruct=d2client.dll,0,0,#6FAA1F51
pGameInfoStruct=d2client.dll,0,0,@1F51

;====================================================================
