[Release] GR Autolooter

05/02/2013 23:13 x_art_x#76
Compiled into exe my auto-it script for auto looting. Using a long time on Win7x64. Writed for WvW and grinding, because Autoloot from Xereon on my PC worked unstable, very often skips loot etc.
I don't tryed run this script without installing auto-it, let's try. Needed run as administrator after loading a game. If you relogin in game, than you should exit and run script again. Later I will make auto searching for GW2 process but I'm so lazy ;)
Quote:
[Only registered and activated users can see links. Click Here To Register...]
05/03/2013 01:10 darkbluefirefly#77
meh, i'll give it a go. Read reviews about it, and meh, don't know if I should start it or not. Heard it was for die hard RPGers and not for casual =). Thanks though, and yea off topic.
05/03/2013 09:51 geshvader#78
Quote:
Originally Posted by sitapea1337 View Post
EDIT: Haven't tested that code, but since address seems to be correct, it should work. Though - one should make "chatbox/typing" check as well since it wouldn't be nice for script to spam "f" when chat is open and character is standing on loot.
Still - that script would be enough.
Quote:
Originally Posted by buFFy! View Post
just call interact or send the lootpacket

however:

Code:
if _memoryread(0x1699834, $hProcess, "dword") == 0 then loot()
added
05/03/2013 16:18 Cryswa#79
please give us new update autolooter on GW2 thanks ^^

please give me New Update for Autoloot on GW2 thanks^^
05/03/2013 17:26 Bertieboy7#80
Quote:
Originally Posted by x_art_x View Post
Compiled into exe my auto-it script for auto looting. Using a long time on Win7x64. Writed for WvW and grinding, because Autoloot from Xereon on my PC worked unstable, very often skips loot etc.
I don't tryed run this script without installing auto-it, let's try. Needed run as administrator after loading a game. If you relogin in game, than you should exit and run script again. Later I will make auto searching for GW2 process but I'm so lazy ;)
What is it supposed to do after running? It doesn't seem to pickup anything. I don't have auto it installed.
05/04/2013 21:27 kumpel100#81
@geshvader

can you pls post source code :handsdown:
05/04/2013 21:31 lul:#82
.
05/04/2013 23:22 buFFy!#83
Quote:
Originally Posted by lul: View Post
PHP Code:
ONAUTOITEXITREGISTER("OnExit")
$HWND=WINGETHANDLE("Guild Wars 2")
IF 
$HWND=="" THEN
MSGBOX
(16,"Error","Guildwars2 is not running!")
EXIT
ENDIF
FILEINSTALL("..\Release\autolooter.dll",@TEMPDIR&"\autolooter.dll",1)
GLOBAL CONST 
$DLLPATH=@TEMPDIR&"\autolooter.dll"
GLOBAL CONST $DLLNAME="autolooter.dll"
IF NOT FILEEXISTS($DLLPATH)THEN
MSGBOX
(16,"Error",$DLLPATH&" Not found!")
EXIT
ENDIF
$HMOD=GETMODULE($HWND,$DLLNAME)
IF 
$HMOD=0 THEN
$IDLL
=INJECTMODULE($HWND,$DLLPATH)
IF 
NOT @ERROR THEN
TRAYTIP
("","Injection Successfull",1)
ELSE
MSGBOX(16,"Error in DLL Injection","Couldn't inject dll to "&$HWND&@CRLF&"Code: "&@ERROR)
ENDIF
ELSE
TRAYTIP("",$DLLNAME&" was already injected: "&$HMOD,1)
ENDIF
EXIT
FUNC GETMODULE($HWND,$MODULENAME)
LOCAL CONST $MODULEENTRY32STRUCT=DLLSTRUCTCREATE("dword dwsize;"&"dword th32ModuleID;"&"dword th32ProcessId;"&"dword GlblcntUsage;"&"dword ProccntUsage;"&"dword modBaseAddr;"&"dword modBaseSize;"&"dword hModule;"&"char szModule[256];"&"char szExePath[260];")
LOCAL $SNAPSHOT=DLLCALL("Kernel32.dll","hwnd","CreateToolhelp32Snapshot","dword",8,"dword",WINGETPROCESS($HWND))
DLLSTRUCTSETDATA($MODULEENTRY32STRUCT,"dwsize",DLLSTRUCTGETSIZE($MODULEENTRY32STRUCT))
LOCAL $STATE=DLLCALL("Kernel32.dll","int","Module32First","hwnd",$SNAPSHOT[0],"ptr",DLLSTRUCTGETPTR($MODULEENTRY32STRUCT))
DO
$READMODULE=DLLSTRUCTGETDATA($MODULEENTRY32STRUCT,"szModule")
IF 
$READMODULE==$MODULENAME THEN RETURN "0x"&(HEX(DLLSTRUCTGETDATA($MODULEENTRY32STRUCT,"modBaseAddr")))
$STATE=DLLCALL("Kernel32.dll","int","Module32Next","hwnd",$SNAPSHOT[0],"ptr",DLLSTRUCTGETPTR($MODULEENTRY32STRUCT))
SLEEP(1)
UNTIL NOT $STATE[0]
DLLCALL("Kernel32.dll","int","CloseHandle","int",$SNAPSHOT[0])
RETURN 
0
ENDFUNC
FUNC INJECTMODULE
($HWND,$DLLPATH)
IF 
ISHWND($HWND)=0 THEN
SETERROR
(-1)
RETURN 
FALSE
ELSEIF STRINGLEN($DLLPATH)<=4 OR STRINGRIGHT($DLLPATH,4)<>".dll" THEN
SETERROR
(-2)
RETURN 
FALSE
ENDIF
LOCAL $PID,$PHANDLE,$PLIBREMOTE,$MODHANDLE,$LOADLIBRARYA,$HTHREAD
LOCAL $KERNEL32
=DLLOPEN("kernel32.dll")
IF 
$KERNEL32=-1 THEN
EXIT
ENDIF
$PID=DLLCALL("user32.dll","int","GetWindowThreadProcessId","hwnd",$HWND,"int*",0)
IF 
ISARRAY($PID)THEN
$PID
=$PID[2]
ELSE
SETERROR(-3)
RETURN 
FALSE
ENDIF
$PHANDLE=DLLCALL($KERNEL32,"int","OpenProcess","int",2035711,"int",0,"int",$PID)
IF 
ISARRAY($PHANDLE)AND $PHANDLE[0]>0 THEN
$PHANDLE
=$PHANDLE[0]
ELSE
SETERROR(-4)
RETURN 
FALSE
ENDIF
$PLIBREMOTE=DLLCALL($KERNEL32,"int","VirtualAllocEx","int",$PHANDLE,"short",0,"int",4096,"int",4096,"int",4)
IF 
ISARRAY($PLIBREMOTE)THEN
IF $PLIBREMOTE[0]>0 THEN
$PLIBREMOTE
=$PLIBREMOTE[0]
ELSE
SETERROR(-5)
RETURN 
FALSE
ENDIF
ELSE
SETERROR(-6)
RETURN 
FALSE
ENDIF
FOR 
$I=0 TO STRINGLEN($DLLPATH)
$RET=DLLCALL("kernel32.dll","int","WriteProcessMemory","int",$PHANDLE,"int",$PLIBREMOTE+$I,"int*",ASC(STRINGMID($DLLPATH,$I+1,1)),"int",1,"int",0)
IF 
ISARRAY($RET)THEN
IF $RET[0]=0 THEN
SETERROR
(-7)
RETURN 
FALSE
ENDIF
ELSE
SETERROR(-8)
RETURN 
FALSE
ENDIF
NEXT
$MODHANDLE
=DLLCALL($KERNEL32,"long","GetModuleHandle","str","kernel32.dll")
IF 
ISARRAY($MODHANDLE)THEN
IF $MODHANDLE[0]>0 THEN
$MODHANDLE
=$MODHANDLE[0]
ELSE
SETERROR(-9)
RETURN 
FALSE
ENDIF
ELSE
SETERROR(-10)
RETURN 
FALSE
ENDIF
$LOADLIBRARYA=DLLCALL($KERNEL32,"long","GetProcAddress","long",$MODHANDLE,"str","LoadLibraryA")
IF 
ISARRAY($LOADLIBRARYA)THEN
IF $LOADLIBRARYA[0]>0 THEN
$LOADLIBRARYA
=$LOADLIBRARYA[0]
ELSE
SETERROR(-11)
RETURN 
FALSE
ENDIF
ELSE
SETERROR(-12)
RETURN 
FALSE
ENDIF
$HTHREAD=DLLCALL($KERNEL32,"int","CreateRemoteThread","int",$PHANDLE,"int",0,"int",0,"long",$LOADLIBRARYA,"long",$PLIBREMOTE,"int",0,"int",0)
IF 
ISARRAY($HTHREAD)THEN
IF $HTHREAD[0]>0 THEN
$HTHREAD
=$HTHREAD[0]
ELSE
SETERROR(-13)
RETURN 
FALSE
ENDIF
ELSE
SETERROR(-14)
RETURN 
FALSE
ENDIF
DLLCALL($KERNEL32,"int","VirtualFreeEx","int",$PHANDLE,"int",$PLIBREMOTE,"int",4096,"int",32768)
DLLCALL($KERNEL32,"int","CloseHandle","int",$HTHREAD)
DLLCALL($KERNEL32,"int","CloseHandle","int",$PHANDLE)
DLLCLOSE($KERNEL32)
RETURN 
TRUE
ENDFUNC 
Made my day. That's clearly the injector.
05/05/2013 00:17 lul:#84
silly me.
I just found the autolooter and fired it in some decompiler...
05/14/2013 23:51 shradenmind#85
Could use an update.
05/15/2013 13:58 tinou214#86
update needed
05/15/2013 17:39 kumpel100#87
Yes , pls.
05/15/2013 18:23 geshvader#88
Guys, you have source code!!! I'm not a programmer at all.
Anyway need some motivation.
So....price - 5 Gold per user. PM if agree.
05/15/2013 20:57 figtheur#89
AH AH AH
05/15/2013 21:03 geshvader#90
No discounts, sorry.