Register for your free account! | Forgot your password?

Go Back   elitepvpers > General Gaming > General Gaming Discussion
You last visited: Today at 13:23

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Eden Eternal Simple Bot

Discussion on Eden Eternal Simple Bot within the General Gaming Discussion forum part of the General Gaming category.

Closed Thread
 
Old 08/17/2011, 12:07   #346
 
blinko's Avatar
 
elite*gold: 0
Join Date: Aug 2005
Posts: 499
Received Thanks: 131
Quote:
Originally Posted by cazirrez View Post
hey mate.. still cant get the char to load into the bot? i mean does nothing.. and if i click on the inputs.. it keeps repeating the 11234512345 sequence
It's supposed to repeat a sequence its a bot. Dont start the bot before setting the hotkeys. I don't know exactly what you mean.

Quote:
Originally Posted by KyRoN View Post
Yep, now i have my name shown, my stats shown aswell, but it still shift click stuff, to a point that it's even impossible to close with del, and even pretty complicated to kill the process since it seems to hold my shift key down, i don't understand why.
I have no idea why it would be holding down the shift key..that's really weird I've not this issue yet. I'll see what I can think of but for now I must sleep..I got work tomorrow. I'll get back to you tonight
blinko is offline  
Old 08/17/2011, 12:39   #347
 
elite*gold: 0
Join Date: Jan 2005
Posts: 62
Received Thanks: 5
Quote:
Originally Posted by blinko View Post
I have no idea why it would be holding down the shift key..that's really weird
And it really is just that, holding the shift key. Being curious, i rebinded all my bar 1 hotkeys to shift+1, shift+2 etc, and obviously disabling the bar shifting since anyway i don't use it.

Well the bot worked just fine, of course it's unplayable for me because i can't play with shift+stuff, but the bot does

Even if the bot doesn't "really" work for me i still have some suggestion:

A tower mode, like for example, even if it wouldn't work really well for melee, disable the movement keys, so my toon doesn't cross the map all the way to the other side.

Or eventually a text box where we'd have to enter a mob name, and the bot would only kill that.

Another technique would be to give it a center starting point, and a distance value, if the value is reached, go back to the center point.
KyRoN is offline  
Old 08/17/2011, 17:21   #348
 
elite*gold: 0
Join Date: Aug 2011
Posts: 4
Received Thanks: 0
sir blinko can this eebot answer captcha?
cavitec is offline  
Old 08/17/2011, 17:53   #349
 
elite*gold: 0
Join Date: Jul 2011
Posts: 25
Received Thanks: 0
Quote:
Originally Posted by blinko View Post
Updated !

New Wizard Hat update got it lol. New Base Address, New target address.
Zoom hack address (Zoom Hack function) currently inoperable.

The rest seems to work fine :P I even included the EEAutoPilot.settings

As Before...

Code:
F1 - enable/disable transparent background

F2 -hides visible gui for when you minimize it, having an issue where it will not change its ontop status while EE is minimized.

F5 - RunMiniBot
F6 - ZoomHack (inoperable)
F7 - ShowStats (displays more stats si check for correct values test function for personal use i didnt remove)

DEL (delete key) - Closes the application
The text color for the GUI overlay can be changed in the settings file.
The win_trans=45 is the windows alpha when you decide to use the F1 hotkey so you can move it freely. 255 is max (fully visible) and 0 is invisible.

isTrans=1 - if the value is 1 then it will load inside the game client.
isTrans=0 - if it is 0 then you can freely move it unto you use the F1 hotkey.
F2 controls the isTrans setting

Pretty much self explanatory.

I will be releaseing the source codes again once I've cleaned them up. As of now picking through it would be a pain it's a complete mess of code to get everything all transparent and what not.
Also having some issues getting the WinSetOntop function to deactivate if the window is minimized
why your bot so slow to attack can u make it fast like a normal attack?cause its like 1 to 2 mins before to attack the mobs! thank u....

_________________________
I have added cool emoticons to this message.
To see them go to
tobebenjo is offline  
Old 08/17/2011, 18:47   #350
 
elite*gold: 0
Join Date: Oct 2008
Posts: 23
Received Thanks: 0
program spam numbers all the time omg and if bot start work he hit all mobs and die in a sec omg
maverik13 is offline  
Old 08/17/2011, 19:02   #351
 
elite*gold: 0
Join Date: Oct 2009
Posts: 2
Received Thanks: 0
Firstly I apologize for not understanding the easy explanation that u guys gave. So to start up, this is what i do: Open Eden Eternal, Start -> Choose Character -> Go into the desired field -> Open EEbot_1.2.exe -> Player Name:Name Hidden, Player Level:0, Class Level:0
so what i get is the bot doesnt read my character stats. Prolly sum ppl think im a ****** for not understanding what to do... but to be honest I always tried to learn to bot, but never manage to operate one -.-

I hope some ppl can give an insight, Thanks
subpc91 is offline  
Old 08/17/2011, 19:50   #352
 
blinko's Avatar
 
elite*gold: 0
Join Date: Aug 2005
Posts: 499
Received Thanks: 131
most issues can be resolved by making sure the EEAutoPilot.settings is in the same location as the exe. Which would be one reason why all the memory values show 0 on the gui. Also there may be some windows OS issues who knows I don't know what everyone is running. I'll just try and clean my source and post it.
blinko is offline  
Old 08/17/2011, 22:09   #353
 
elite*gold: 0
Join Date: Aug 2011
Posts: 1
Received Thanks: 0
how do you overcome the anti-bot system?
jnwee is offline  
Old 08/18/2011, 00:15   #354
 
elite*gold: 0
Join Date: Jan 2005
Posts: 62
Received Thanks: 5
Quote:
Originally Posted by OmieBoy View Post
File name:
EEBot_v1.2.exe
Submission date:
2011-08-17 19:03:31 (UTC)...
Mate, i'm sure if you try hard enough, you'll find bad stuff in bible online...

This file is as clean as it can be, really...
KyRoN is offline  
Old 08/18/2011, 03:25   #355
 
elite*gold: 0
Join Date: Jan 2005
Posts: 23
Received Thanks: 2
Am i missing something? Sorry if this has been covered I haven't yet read through all 36 pages but I start the Bot, it opens OK, I set all the values for skills and hp/mp then press F5 and nothing happens... the bot won't start or anything. Any help?

Also, I am using the latest uploaded bot (from page 35 I believe). Thanks!
Eldrad is offline  
Old 08/18/2011, 05:04   #356
 
elite*gold: 0
Join Date: Jul 2011
Posts: 9
Received Thanks: 0
It works fine, but it takes about a minute to move on too the next target. thnx.
JohnSmithWonderful is offline  
Old 08/18/2011, 06:19   #357
 
elite*gold: 0
Join Date: Aug 2011
Posts: 1
Received Thanks: 0
can someone tell me how to make this bot use other skill, it only spams one key, i dont know why but when i press battle start it only spams number 3 skill.
org555 is offline  
Old 08/18/2011, 09:36   #358
 
blinko's Avatar
 
elite*gold: 0
Join Date: Aug 2005
Posts: 499
Received Thanks: 131
Quote:
Originally Posted by OmieBoy View Post
File name:
EEBot_v1.2.exe
Submission date:
2011-08-17 19:03:31 (UTC)
Current status:
queued queued analysing finished
Result:
1/ 44 (2.3%)

K7AntiVirus 9.109.5026 2011.08.17
I'll be damned I scanned it myself....I have no idea why that would pop up so I guess I created a Trojan ! Well that means I got to post the source code before I get a chance to clean it up. So here it is somewhat organized, but most of it sloppy.

EEMem.au3 - Slightly modified to make use of the EEAutoPilot.settings file.

Code:
#include-once

Func _EEMemOpen($DWACCESS = 0x1F0FFF, $DWINHERITHANDLE = 1)

$DWPROCID = ProcessExists(IniRead(@WorkingDir & "\EEAutoPilot.settings","main","exe",""))

If $DWPROCID = 0 then
	MsgBox(0,"","Process Doesn't Exist!" & @crlf & "If however it DOES, then something is terribly wrong !")
	exit 0
EndIf

	local $DWHANDLES[2] = [DllOpen("kernel32.dll")]
	If @error Then
		SetError(2)
		Return 0
	EndIf
	Local $DWOPENPROC = DllCall($DWHANDLES[0], "int", "OpenProcess", "int", $DWACCESS, "int", $DWINHERITHANDLE, "int", $DWPROCID)
	If @error Then
		SetError(3)
		Return 0
	EndIf
	$DWHANDLES[1] = $DWOPENPROC[0]
	Return $DWHANDLES
EndFunc

Func _EEMemClose($DWHANDLES)
	If Not IsArray($DWHANDLES) Then
		SetError(1)
		Return 0
	EndIf
	DllCall($DWHANDLES[0], "int", "CloseHandle", "int", $DWHANDLES[1])
	If Not @error Then
		DllClose($DWHANDLES[0])
		Return 1
	Else
		DllClose($DWHANDLES[0])
		SetError(2)
		Return 0
	EndIf
EndFunc

Func _EEMemRead($DWADDRESS, $DWTYPE = "dword")
	$DWHANDLES = _EEMemOpen()
	If Not IsArray($DWHANDLES) Then
		SetError(1)
		Return 0
	EndIf
	Local $DWBUFFER = DllStructCreate($DWTYPE)
	If @error Then
		SetError(@error + 1)
		Return 0
	EndIf
	DllCall($DWHANDLES[0], "int", "ReadProcessMemory", "int", $DWHANDLES[1], "int", $DWADDRESS, "ptr", DllStructGetPtr($DWBUFFER), "int", DllStructGetSize($DWBUFFER), "int", "")
	If Not @error Then
		Local $DWVALUE = DllStructGetData($DWBUFFER, 1)
		_EEMemClose($DWHANDLES)
		Return $DWVALUE
	Else
		SetError(6)
		Return 0
	EndIf
EndFunc

Func _EEMemWrite($DWADDRESS, $DWDATA, $DWTYPE = "dword")
	$DWHANDLES = _EEMemOpen()
	If Not IsArray($DWHANDLES) Then
		SetError(1)
		Return 0
	EndIf
	Local $DWBUFFER = DllStructCreate($DWTYPE)
	If @error Then
		SetError(@error + 1)
		Return 0
	Else
		DllStructSetData($DWBUFFER, 1, $DWDATA)
		If @error Then
			SetError(6)
			Return 0
		EndIf
	EndIf
	DllCall($DWHANDLES[0], "int", "WriteProcessMemory", "int", $DWHANDLES[1], "int", $DWADDRESS, "ptr", DllStructGetPtr($DWBUFFER), "int", DllStructGetSize($DWBUFFER), "int", "")
	If Not @error Then
		Return 1
	Else
		SetError(7)
		Return 0
	EndIf
	_EEMemClose($DWHANDLES)
EndFunc
;

EEData.au3 - This is where the applications GUI will gather all of its information. The Memory reading is done here. All addresses will be directed through the EEAutoPilot.settings file. I'm still working on retrieving the zoom address. Highly altered from before. New functions the GUI uses itself such as dragging around the application while the form is visible, rounding the applications corners etc..

DLL calls made from this script file. (Maybe why it's now classified as a Trojan)
Code:
DllCall("user32.dll", "int", "SetLayeredWindowAttributes", "hwnd", $hwnd, "long", $i_transcolor, "byte", $Transparency, "long", $LWA_COLORKEY + $LWA_ALPHA)

DllCall("gdi32.dll", "long", "CreateRoundRectRgn", "long", $i_x1, "long", $i_y1, "long", $pos[2], "long", $pos[3], "long", $i_x3,"long", $i_y3)

DllCall("user32.dll", "long", "SetWindowRgn", "hwnd", $h_win, "long", $ret[0], "int", 1)
Also added new custom functions for creating Labels, ComboBoxes and Input Boxes, that better suited my personal programming where simple foreground & complicated background code work well together.

Code:
New Custom Functions !

Borrowed script snippets from random forums, seems one was done by a person known as Prog@ndy

DragWindow($gui,$controls) ;allows dragging of widget
 _API_SetLayeredWindowAttributes($hwnd, $i_transcolor, $Transparency, $isColorRef = False)
_GuiRoundCorners($h_win, $i_x1, $i_y1, $i_x3, $i_y3)

Description: Format( $value )
This was made to imitate Visual Basic's Format Function.
Where (Example Text1 = Format( Text1, "###,###" )
If Text1.text = 1000
then Format(Text1, "###,###") = 1,000
However AutoIt doesnt have a function for this. So i made one up.

Usage: Format($expression, $separator, $nSize)
As the Above Example u want a string like 100000 to read as 100,000
You simply say for example Format('100000' , ',' , 3)
Usage Example: GuiCtrlSetData( $Label, Format(GetPlayerGold(), ',' , 3)
 You may also use "," instead of ',' it does not matter :P

Using these I can setup a label with text,postion x&y, width & height, the fontsize, the backcolor (for the transparent background piece), and the text color. Pretty much similar with the input and combo boxes.

_GuiCreateLabel($caption,$left,$top,$width,$height,$fontsize,$bkcolor,$txtcolor)
_GuiCreateCombo($caption,$left,$top,$width,$height,$fontsize,$bkcolor,$txtcolor,$str)
_GuiCreateInput($caption,$left,$top,$width,$height,$fontsize,$bkcolor,$txtcolor)
-Source-
Code:
;EEBot - Data Source
#include 'EEMem.au3'
#include <Misc.au3>
#include <StaticConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Constants.au3>
#include <WinAPI.au3>

#Region====MISC FUNCTIONS==========================================================================
;GUICtrlCreateLabel("Label2", 5, 80, 150, 17)
func _GuiCreateLabel($caption,$left,$top,$width,$height,$fontsize,$bkcolor,$txtcolor)
	$label = GuiCtrlCreateLabel($caption,$left,$top,$width,$height)
	GuiCtrlSetBkColor(-1,$bkcolor)
	GuiCtrlSetColor(-1,$txtcolor)
	GuiCtrlSetFont(-1,$fontsize,1)
	return $label
	$label = ""
EndFunc

func _GuiCreateCombo($caption,$left,$top,$width,$height,$fontsize,$bkcolor,$txtcolor,$str)

	$combo = GuiCtrlCreateCombo($caption,$left,$top,$width,$height)
	GuiCtrlSetBkColor(-1,$bkcolor)
	GuiCtrlSetColor(-1,$txtcolor)
	GuiCtrlSetFont(-1,$fontsize,1)
	GUICtrlSetData(-1, $str)
	return $combo
	$combo = ""
EndFunc

func _GuiCreateInput($caption,$left,$top,$width,$height,$fontsize,$bkcolor,$txtcolor)

	$input = GuiCtrlCreateInput($caption,$left,$top,$width,$height)
	GuiCtrlSetBkColor(-1,$bkcolor)
	GuiCtrlSetColor(-1,$txtcolor)
	GuiCtrlSetFont(-1,$fontsize,1)
	return $input
	$input = ""
EndFunc

Func DragWindow($gui,$controls) ;allows dragging of widget and click to exit
$dll = DllOpen("user32.dll")
Local $PosDiff[2]
While 1

$MousePos = MouseGetPos ()
$WinPos = WinGetPos ($gui,"")
$PosDiff[0] = $WinPos[0] - $MousePos[0]
$PosDiff[1] = $WinPos[1] - $MousePos[1]

While _IsPressed ("01", $dll)
$MousePos = MouseGetPos ()
 WinMove ($gui, "", $MousePos[0] + $PosDiff[0], $MousePos[1] + $PosDiff[1])
 WinMove ($controls, "", $MousePos[0] + $PosDiff[0], $MousePos[1] + $PosDiff[1])
$WinPos = WinGetPos ("","")


 WEnd
ExitLoop

 WEnd

_WinAPI_RedrawWindow($gui,"","",BitOR($RDW_ERASE,$RDW_INVALIDATE,$RDW_UPDATENOW,$RDW_FRAME,$RDW_ALLCHILDREN))
 _WinAPI_RedrawWindow($controls,"","",BitOR($RDW_ERASE,$RDW_INVALIDATE,$RDW_UPDATENOW))
 DLLCLose($dll)
EndFunc
;===============================================================================
;
; Function Name: _API_SetLayeredWindowAttributes
; Description::  Sets Layered Window Attributes:) See MSDN for more informaion
; Parameter(s):
;    &nbsp;$hwnd - Handle of GUI to work on
;     $i_transcolor - Transparent color
;     $Transparency - Set Transparancy of GUI
;     $isColorRef - If True, $i_transcolor is a COLORREF-Strucure, else an RGB-Color
; Requirement(s): &nbsp;Layered Windows
; Return Value(s): Success: 1
;     Error: 0
;     @error: 1 to 3 - Error from DllCall
;     @error: 4 - Function did not succeed - use
;         _WinAPI_GetLastErrorMessage or _WinAPI_GetLastError to get more information
; Author(s):   Prog@ndy
;
;===============================================================================
;
Func _API_SetLayeredWindowAttributes($hwnd, $i_transcolor, $Transparency, $isColorRef = False)

Local Const $AC_SRC_ALPHA = 1
Local Const $ULW_ALPHA = 2
Local Const $LWA_ALPHA = 0x2
Local Const $LWA_COLORKEY = 0x1

 If Not $isColorRef Then
  $i_transcolor = Hex(String($i_transcolor), 6)
  $i_transcolor = Execute('0x00' & StringMid($i_transcolor, 5, 2) & StringMid($i_transcolor, 3, 2) & StringMid($i_transcolor, 1, 2))

  EndIf
  Local $Ret = DllCall("user32.dll", "int", "SetLayeredWindowAttributes", "hwnd", $hwnd, "long", $i_transcolor, "byte", $Transparency, "long", $LWA_COLORKEY + $LWA_ALPHA)
  Select
  Case @error
    Return SetError(@error,0,0)

  Case $ret[0] = 0
    Return SetError(4,0,0)
  Case Else

    Return 1
  EndSelect
EndFunc;==>_API_SetLayeredWindowAttributes

Func _GuiRoundCorners($h_win, $i_x1, $i_y1, $i_x3, $i_y3)
 Dim $pos, $ret, $ret2
 $pos = WinGetPos($h_win)
  $ret = DllCall("gdi32.dll", "long", "CreateRoundRectRgn", "long", $i_x1, "long", $i_y1, "long", $pos[2], "long", $pos[3], "long", $i_x3,"long", $i_y3)

 If $ret[0] Then
   $ret2 = DllCall("user32.dll", "long", "SetWindowRgn", "hwnd", $h_win, "long", $ret[0], "int", 1)
  If $ret2[0] Then
  Return 1
   Else

  Return 0
  EndIf
 Else
  Return 0
 EndIf
EndFunc ;==>_GuiRoundCorners
;~ Function-'Format'-Description-------------------------------------------------------
;~ Format Function Created by Blinko
;~ Description: Format( $value )
;~       This was made to imitate Visual Basic's Format Function.
;~ 		 Where (Example Text1 = Format( Text1, "###,###" )
;~ 		 If Text1.text = 1000
;~ 		 then Format(Text1, "###,###") = 1,000
;~ 		 However AutoIt doesnt have a function for this. So i made one up.
;~
;~ Usage: Format($expression, $separator, $nSize)
;~      As the Above Example u want a string like 100000 to read as 100,000
;~      You simply say for example Format('100000' , ',' , 3)
;~      Usage Example: GuiCtrlSetData( $Label, Format(GetPlayerGold(), ',' , 3) )
;~      You may also use "," instead of ',' it does not matter :P
;~ ---------------------------------------------------------------------------------------

Func Format($expression, $separator, $nSize)
	Local $split = StringSplit($expression, "")
    Local $newText = ""
    Local $counter = 0
    If StringLen($expression) > $nSize Then
        For $i = $split[0] To 1 Step -1
            If $counter = $nSize Then
                $newText = $split[$i] & $separator & $newText
                $counter = 0
            Else
                $newText = $split[$i] & $newText
            EndIf
            $counter +=1
        Next
	Else
		$expression = $expression
		Return $expression
    EndIf

	Return $newText
EndFunc

#EndRegion===========================================================================================================================
#Region====EEAutoPilot.settings Info===============================================================
;~ local $app_base = 0x00C71E98
;~ local $Zoom_ADDR = 0x00C7157C
;~ local $ptarget = 0x00C71EAC

local $app_base = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","app_base","")
local $app_base_offset = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","app_base_offset","")
local $Zoom_ADDR = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","Zoom_ADDR","")
local $pname = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","pname","") ;static name
local $ptarget = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","ptarget","")
local $ZOOM_OFFSET1 = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","ZOOM_OFFSET1","")
local $OFFSET_CurHP = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_CurHP","")
local $OFFSET_MaxHP = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_MaxHP","")
local $OFFSET_CurMP = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_CurMP","")
local $OFFSET_MaxMP = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_MaxMP","")
local $OFFSET_TARGET = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_TARGET","")
local $OFFSET_EXP = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_EXP","")
local $OFFSET_CEXP = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_CEXP","")
local $OFFSET_CLASSLVL = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_CLASSLVL","")
local $OFFSET_BASELVL = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_BASELVL","")
local $OFFSET_PDEF = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_PDEF","")
local $OFFSET_PCRIT = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_PCRIT","")
local $OFFSET_PACC = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_PACC","")
local $OFFSET_PSTR = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_PSTR","")
local $OFFSET_PAGI = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_PAGI","")
local $OFFSET_PINT = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_PINT","")
local $OFFSET_PWIS = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_PWIS","")
local $OFFSET_PLCK = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_PLCK","")
local $OFFSET_GUILDTITLE = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_GUILDTITLE","")
local $OFFSET_PNAME = IniRead(@WorkingDir & "\EEAutoPilot.settings","main","OFFSET_PNAME","") ;offset for player name from app base address
#endregion============================================================================================================================
#region====BASE ADDRESS + OFFSETS==================================================================
func GetBaseAddress()
	local $base = _EEMemRead($app_base)
	local $ptr =  '0x' & Hex($base + $app_base_offset)
	local $base_address = _EEMemRead($ptr)
	return $base_address
EndFunc


local $CurHP = '0x' & Hex(GetBaseAddress() + $OFFSET_CurHP)
local $MaxHP = '0x' & Hex(GetBaseAddress() + $OFFSET_MaxHP)
local $CurMP = '0x' & Hex(GetBaseAddress() + $OFFSET_CurMP)
local $MaxMP = '0x' & Hex(GetBaseAddress() + $OFFSET_MaxMP)
local $CurEXP = '0x' & Hex(GetBaseAddress() + $OFFSET_EXP)

local $CurCEXP = '0x' & Hex(GetBaseAddress() + $OFFSET_CEXP)

local $ClassLVL = '0x' & Hex(GetBaseAddress() + $OFFSET_CLASSLVL)
local $BaseLVL = '0x' & Hex(GetBaseAddress() + $OFFSET_BASELVL)
local $PlayerDEF = '0x' & Hex(GetBaseAddress() + $OFFSET_PDEF)
local $PlayerPCRIT = '0x' & Hex(GetBaseAddress() + $OFFSET_PCRIT)
local $PlayerPSTR = '0x' & Hex(GetBaseAddress() + $OFFSET_PSTR)
local $PlayerPAGI = '0x' & Hex(GetBaseAddress() + $OFFSET_PAGI)
local $PlayerPINT = '0x' & Hex(GetBaseAddress() + $OFFSET_PINT)
local $PlayerPWIS = '0x' & Hex(GetBaseAddress() + $OFFSET_PWIS)
local $PlayerPLCK = '0x' & Hex(GetBaseAddress() + $OFFSET_PLCK)
local $PlayerPACC = '0x' & Hex(GetBaseAddress() + $OFFSET_PACC)
local $PlayerGuildTitle = '0x' & Hex(GetBaseAddress() + $OFFSET_GUILDTITLE)
local $PlayerPNAME = '0x' & Hex(GetBaseAddress() + $OFFSET_PNAME)
#endregion=======================================================================================================================
#region====ReadEE/WriteEE Functions================================================================
func ReadEE($type)

		switch $type

			case "player_name"
				$p_name = _EEMemRead($PlayerPNAME, "char[16]")
			return String($p_name)

			case "player_guild_title"
				$p_guildt = _EEMemRead($PlayerGuildTitle, "char[16]")
			return String($p_guildt)

			case "player_str"
				$p_str = _EEMemRead($PlayerPSTR, "dword")
			return Int($p_str)

			case "player_agi"
				$p_agi = _EEMemRead($PlayerPAGI, "dword")
			return Int($p_agi)

			case "player_int"
				$p_int = _EEMemRead($PlayerPINT, "dword")
			return Int($p_int)

			case "player_acc"
				$p_acc = _EEMemRead($PlayerPACC, "float")
			return Int($p_acc)

			case "player_crit"
				$p_crit = _EEMemRead($PlayerPCRIT, "float")
			return Int($p_crit)

			case "player_def"
				$p_def = _EEMemRead($PlayerDEF, "dword")
			return Int($p_def)

			case "base_lvl"
				$base_lvl = _EEMemRead($BaseLVL, "dword")
			return Int($base_lvl)

			case "class_lvl"
				$class_lvl = _EEMemRead($ClassLVL, "dword")
			return Int($class_lvl)

			case "current_cexp"
				$cur_cexp = _EEMemRead($CurCEXP, "dword")
			return Int($cur_cexp)


			case "current_exp"
				$cur_exp = _EEMemRead($CurEXP, "dword")
			return Int($cur_exp)


			case "player_target"
				$targetbaseADDR = _EEMemRead($ptarget,"dword")
				$target =  '0x' & Hex($targetbaseADDR + $OFFSET_TARGET)
				$targeted = '0x' & Hex($target)
				$target = _EEMemRead($targeted, "dword")
				Return Int($target)

			case "name"
				$name = _EEMemRead($pname, "char[16]")
			return String($name)

			case "current_hp"
				$cur_hp = _EEMemRead($CurHP, "dword")
				return Int($cur_hp)

			case "max_hp"
				$max_hp = _EEMemRead($MaxHP)
			return Int($max_hp)

			case "current_mp"
				$cur_mp = _EEMemRead($CurMP)
			return Int($cur_mp)

			case "max_mp"
				$max_mp = _EEMemRead($MaxMP)
			return Int($max_mp)

		EndSwitch

EndFunc



func WriteEE($address,$offset,$value)
	;"1198383360" zoom hack value
	;1098383360 normal value

	$1 = _EEMemRead($address, "dword")
	_EEMemWrite($1 + $offset, $value, "dword")
EndFunc

#endregion=========================================================================================================================



#region====Control Functions=======================================================================
Func ZoomHack()
	WriteEE($Zoom_ADDR,$ZOOM_OFFSET1,"1198383360")
EndFunc
#endregion=========================================================================================
EEBot_v1.2.au3 - GUI/Bot Setup

Hmm...what to say there's alot of stuff happening here. Application checks it the game is window mode..currently it only supposrts the Window Mode: 800x600 because that's what I always end up using beacuse it's easy to use other tools and software while the game is running in a smaller window..so this may or may not be causing some of the issues people are having with delays I don't know. By doing this is checks the windows width and if the windows width is 800 or less it'll attach to a set area o nthe left side of the client. If it's not thne its still just attached to the left o.o. I'm actually i nthe middle of changing this to fix these types of errors..but meh I basically got called out for a virus so here this is early.

Functions used in EEBot_v1.2.au3
Code:
Drag()

enable_disable_trans() - enables/disables the transparent background (visible or transparent)

hidewin() - having an issue having the GUI stay on top of other windows while game client is not active I need to fix this to work only with the game client while the game is not active it should also remain in the background so it dont interfere with other activities.

CLOSE() - closes the application.

UpdateInfo() - updates player informationc: calls on the EEData.au3 functions

CheckHP()  - hp check loop is here : calls on the EEData.au3 functions

CheckMP() - mp check loop as well : calls on the EEData.au3 functions

CheckTarget() - check player target : calls on the EEData.au3 functions

ShowStats() - shows unseen memory values being read, or available this was my personal test function for displaying stats to see if they were accurate.

RunMiniBot() - runs bot functions

_API_SetLayeredWindowAttributes($guicontrols, 0xc1c1c1, 255) - sets some window layer attributes for making the background behind the labels or input boxes appear transparent instead of its default color. Basically instead of calling the GUICtrlSetBkColor to change the labels background to the same color as the form or else it'll be a big box of color on the gui around the text..this just makes the background invisible so only the forms background color shows through. As with the example above is directly fro mmy source. Changes the background color thats 0xC1C1C1 (or #c1c1c1 in html) transparent. So now i just create a new label with that background color $Label1 = _GuiCreateLabel("Label",x,y,w,h,font-size,0xc1c1c1,$text_color ) you can set this to any color you wish to make transparent. Reads from the EEAutoPilot.settings file

_GuiRoundCorners($Form1,0, 0, 30, 30)  - rounds the corners of the GUI
-Source-
Code:
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=..\..\Icon Entry_1.ico
#AutoIt3Wrapper_outfile=EEBot_v1.2.exe
#AutoIt3Wrapper_UseUpx=n
#AutoIt3Wrapper_Add_Constants=n
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#CS--------------------------------------------------------------------
;~ 	Brought to you by Blinko of Blinko's Box 2001-2011
;~ 	   ______                            ______
;~   (, /    ) /) ,     /)     /       (, /    )
;~     /---(  //   __  (/_  ___ _        /---(  _____/
;~  ) / ____)(/__(_/ (_/(__(_) /_)_   ) / ____)(_)  /(__
;~ (_/ (                             (_/ (         /


#CE--------------------------------------------------------------------

#include 'EEData.au3'
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIComboBoxEx.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

opt("GuiOnEventMode",1)
global $running,$hastarget,$stopped = 0
local $trans_back,$hide

$text_color = Int(IniRead(@WorkingDir & "\EEAutoPilot.settings","settings","txt_color",""))
$bgcolor = IniRead(@WorkingDir & "\EEAutoPilot.settings","settings","bgtrans","")

HotKeySet("{F1}","enable_disable_trans")
HotKeySet("{F2}","hidewin")
HotKeySet("{F5}","RunMiniBot")
HotKeySet("{F6}","ZoomHack")
HotKeySet("{F7}","ShowStats")
HotKeySet("{DEL}","Close")
$win = WinGetTitle("EE Auto-Pilot")
If WinExists($win) Then
	MsgBox(0,"Warning","Bot already open")
	Exit
EndIf



$win = WinGetPos("Eden Eternal","")
$x = $win[0]
$y = $win[1]
$a = $win[3]

if $a <= 800 Then
	$Form1 = GUICreate("EE Auto-Pilot", 233, 296, $x, $y+175,$WS_POPUP,$WS_EX_TOOLWINDOW)
	GUISetOnEvent ($GUI_EVENT_PRIMARYDOWN, "Drag" )

$guicontrols=GUICreate("controls",233, 296, $x, $y+175,$WS_POPUP,$WS_EX_LAYERED,$Form1)
GUISetBkColor($bgcolor)
WinSetOnTop("EE Auto-Pilot","",1)
WinSetOnTop("controls","",1)
WinActivate("Eden Eternal","")
Else
	$Form1 = GUICreate("EE Auto-Pilot", 233, 296, $x, $y+375,$WS_POPUP,$WS_EX_TOOLWINDOW)
	GUISetOnEvent ($GUI_EVENT_PRIMARYDOWN, "Drag" )
$guicontrols=GUICreate("controls",233, 296, $x, $y+375,$WS_POPUP,$WS_EX_LAYERED,$Form1)
GUISetBkColor($bgcolor)
WinSetOnTop("EE Auto-Pilot","",1)
WinSetOnTop("controls","",1)
WinActivate("Eden Eternal","")
endif



$lbl_name = _GuiCreateLabel("Name Hidden",5,8,165,17,8,$bgcolor,$text_color )
$Label1 = _GuiCreateLabel("",5,64,150,17,8,$bgcolor,$text_color )
$Label2 = _GuiCreateLabel("",5,80,150,17,8,$bgcolor,$text_color )
$Label3 = _GuiCreateLabel("",5,96,150,17,8,$bgcolor,$text_color )
$lbl_exp = _GuiCreateLabel("",5,113,200,17,8,$bgcolor,$text_color )
$Label4 = _GuiCreateLabel("Pot HP <= ",5,154,70,17,8,$bgcolor,$text_color )
$Label5 = _GuiCreateLabel("Pot MP <= ",5,181,70,17,8,$bgcolor,$text_color )
$Label6 = _GuiCreateLabel("Skill 1:",5,208,35,17,8,$bgcolor,$text_color )
$Label7 = _GuiCreateLabel("Skill 2:",5,232,35,17,8,$bgcolor,$text_color )
$Label8 = _GuiCreateLabel("Skill 3:",5,257,35,17,8,$bgcolor,$text_color )
$lbl_classexp = _GuiCreateLabel("Class Exp:",5,129,200,17,8,$bgcolor,$text_color )
$Label9 = _GuiCreateLabel("",5,28,200,17,8,$bgcolor,$text_color )
$Label10 = _GuiCreateLabel("",5,45,290,17,8,$bgcolor,$text_color )


$Input1 = _GuiCreateInput("250",75,154,50,21,8,$bgcolor,$text_color)
$Input2 = _GuiCreateInput("250",75,181,50,21,8,$bgcolor,$text_color)

$Combo1 = _GuiCreateCombo("",48,208,49,25,7,$bgcolor,$text_color,"1|2|3|4|5|6|7|8|9|0")
$Combo2 = _GuiCreateCombo("",48,232,49,25,7,$bgcolor,$text_color,"1|2|3|4|5|6|7|8|9|0")
$Combo3 = _GuiCreateCombo("",48,256,49,25,7,$bgcolor,$text_color,"1|2|3|4|5|6|7|8|9|0")
$Combo4 = _GuiCreateCombo("",128,154,49,25,7,$bgcolor,$text_color,"1|2|3|4|5|6|7|8|9|0")
$Combo5 = _GuiCreateCombo("",128,181,49,25,7,$bgcolor,$text_color,"1|2|3|4|5|6|7|8|9|0")



GUISetBkColor(0x000000,$Form1)

_API_SetLayeredWindowAttributes($guicontrols, $bgcolor, 255)
GUISetState(@SW_SHOW, $Form1)
GUISetState(@SW_SHOW, $guicontrols)
_GuiRoundCorners($Form1,0, 0, 30, 30) ; makes the background have round corners
GUISwitch($guicontrols)


func Drag()
	DragWindow($Form1,$guicontrols)
EndFunc

func enable_disable_trans()
	$trans = IniRead(@WorkingDir & "\EEAutoPilot.settings","settings","istrans","")

	if $trans = 1 then
	INIWrite(@WorkingDir & "\EEAutoPilot.settings","settings","istrans",0)
	$wTrans = IniRead(@WorkingDir & "\EEAutoPilot.settings","settings","win_trans","")
WinSetTrans($Form1,"",$wTrans)
$wTrans = ""

Elseif $trans = 0 Then
INIWrite(@WorkingDir & "\EEAutoPilot.settings","settings","istrans",1)
WinSetTrans($Form1,"",0)

endif

EndFunc

func hidewin()
	$hide = NOT $hide
	while $hide

		GUISetState(@SW_hide, $Form1)
		GUISetState(@SW_hide, $guicontrols)

WEnd

		GUISetState(@SW_show, $Form1)
		GUISetState(@SW_show, $guicontrols)


EndFunc

func CLOSE()
	WinSetTitle("EEBot_v1.1","","Eden Eternal")
	exit 0
EndFunc

func UpdateInfo()
	GuiCtrlSetData($Label1,Format(ReadEE("current_hp"),",",3) & " / " & Format(ReadEE("max_hp"),",",3) & " : " & Round(Int(ReadEE("current_hp")) / Int(ReadEE("max_hp")) * 100,2) & " %")
	GuiCtrlSetData($Label2,Format(ReadEE("current_mp"),",",3) & " / " & Format(ReadEE("max_mp"),",",3) & " : " & Round(Int(ReadEE("current_mp")) / Int(ReadEE("max_mp")) * 100,2) & " %")
	GuiCtrlSetData($lbl_exp,"Exp: " & Format(ReadEE("current_exp"),",",3))
	GuiCtrlSetData($lbl_classexp,"Class Exp: " & Format(ReadEE("current_cexp"),",",3) )
    GuiCtrlSetData($Label3,"Player Target: " & ReadEE("player_target"))
	GuiCtrlSetData($Label9,"Player Level: " & ReadEE("base_lvl") & "     " & "Player DEF: " & ReadEE("player_def") )
	GuiCtrlSetData($Label10,"Class Level: " & ReadEE("class_lvl") & "     " & "Player CRIT: " & ReadEE("player_crit"))
	GuiCtrlSetData($lbl_name,"Player Name: " & ReadEE("player_name"))
	Sleep(300)
EndFunc


func CheckHP()
		$hp = Int(ReadEE("current_hp"))
		$hp_pot = Int(GuiCtrlRead($Input1))

	if Int($hp) < Int($hp_pot) Then

		$key4 = Int(GuiCtrlRead($Combo4))
		Send($key4,0)

	EndIf


EndFunc

func CheckMP()
		$mp = Int(ReadEE("current_mp"))
		$mp_pot = Int(GuiCtrlRead($Input2))

	if Int($mp) < Int($mp_pot) Then

		$key5 = Int(GuiCtrlRead($Combo5))
		Send($key5,0)

	EndIf


EndFunc

Func CheckTarget()
	$target = Int(ReadEE("player_target"))

	if Int($target) == 0 Then
		Send("{TAB}",0)

	EndIf
	Return Int(ReadEE("player_target"))
EndFunc

func ShowStats()
$msg = "Current HP: " & ReadEE("current_hp") & @crlf
$msg &= "Max HP: " & ReadEE("max_hp") & @crlf
$msg &= "Current MP: " & ReadEE("current_mp") & @crlf
$msg &= "Max MP: " & ReadEE("max_mp") & @crlf
$msg &= "STR: " & ReadEE("player_str") & @crlf
$msg &= "AGI: " & ReadEE("player_agi") & @crlf
$msg &= "INT: " & ReadEE("player_int") & @crlf
$msg &= "P-Crit: " & ReadEE("player_crit") & @crlf
$msg &= "ACC: " &  ReadEE("player_acc") & @crlf
$msg &= "DEF: " & ReadEE("player_def") & @crlf
$msg &= "BASE LVL: " & ReadEE("base_lvl") & @crlf
$msg &= "CLASS LVL: " & ReadEE("class_lvl") & @crlf
$msg &= "Current Class EXP: " & ReadEE("current_cexp") & @crlf
$msg &= "Current EXP: " & ReadEE("current_exp") & @crlf
$msg &= "Current TARGET: " & ReadEE("player_target") & @crlf
$msg &= "Player Name: " & ReadEE("player_name") & @crlf
$msg &= "Guild Name: " & ReadEE("player_guild_title")
MsgBox(0,"",$msg)
EndFunc


func RunMiniBot()
	$running = NOT $running

while $running

	UpdateInfo()
	CheckTarget()
	CheckHP()
	CheckMP()

		$key1 = Int(GuiCtrlRead($Combo1))
		Send($key1,0)

		$key2 = Int(GuiCtrlRead($Combo2))
		Send($key2,0)

		$key3 = Int(GuiCtrlRead($Combo3))
		Send($key3,0)

Wend

EndFunc

WinSetTrans($Form1,"",0)

While 1

$w = WinGetPos("Eden Eternal","")
$x1 = $w[0]
$y1 = $w[1]
$a = $w[3]

$pos = WinGetPos("EE Auto-Pilot","")
$x2 = $pos[0]
$y2 = $pos[1]

$trans_back = IniRead(@WorkingDir & "\EEAutoPilot.settings","settings","istrans","")



If $trans_back = 1 then

if $a < 800 Then

If $x1 <> $x2 or $y1 <> $y2 Then
	WinMove("EE Auto-Pilot","",$x1,$y1+175)
	WinMove("controls","",$x1,$y1 + 175)
EndIf
endif
elseif $trans_back = 0 Then

EndIf

	UpdateInfo()
	Sleep(100)
WEnd
Enjoy the Trojan guys !

Had to Edit ! I always forget the damn EEAutoPilot.settings file so here that is too. Just paste into notepad or any text editing software and save as EEAutoPilot.settings file. Or rename .txt to .settings. whatever...or change the actual code and use a diff file name.

Code:
[main]
exe=_Launcher.exe
--1.1app_base = 0x00C7AED8
app_base = 0x00C7CED8
app_base_offset = 0xC
--1.1Zoom_ADDR = 0x00C7A5BC
Zoom_ADDR = 0x00C7D7F4
pname = 0x00C7CDC4
ptarget = 0x00C7CEEC
ZOOM_OFFSET1 = 0x54
OFFSET_CurHP = 0x4
OFFSET_MaxHP = 0x4C
OFFSET_CurMP = 0x8
OFFSET_MaxMP = 0x50
OFFSET_TARGET = 0x08
OFFSET_EXP = 0x18
OFFSET_CEXP = 0x20
OFFSET_CLASSLVL = 0x24
OFFSET_BASELVL = 0x1C
OFFSET_PDEF = 0x64
OFFSET_PCRIT = 0x11C
OFFSET_PACC = 0x118
OFFSET_PSTR = 0x148
OFFSET_PAGI = 0x150
OFFSET_PINT = 0x14C
OFFSET_PWIS = 0x154
OFFSET_PLCK = 0x158
OFFSET_GUILDTITLE = 0x1F0
OFFSET_PNAME = 0x1B8

[settings]
bgcolor=0xc1c1c1
txt_color=0xff00ff
win_trans=45
isTrans=1
blinko is offline  
Old 08/18/2011, 11:57   #359
 
elite*gold: 0
Join Date: Jan 2005
Posts: 62
Received Thanks: 5
Why do you post this, are you giving up on us ?
KyRoN is offline  
Old 08/18/2011, 12:06   #360
 
blinko's Avatar
 
elite*gold: 0
Join Date: Aug 2005
Posts: 499
Received Thanks: 131
Quote:
Originally Posted by KyRoN View Post
Why do you post this, are you giving up on us ?
No I just don't like when people try and get others worked up over false positives. So I scanned it and sure enough it said it was infected even if it's 1/44 I know how people get. It's got no Trojan in it, and there's the proof now :P besides there's still some bugs to work through, and a few other things to add to it; at least until they patch again lol. If anyone can work around the huge mess of code.

So have fun with what ya can I guess I'll make a new one ^^ (or at least add on to it).
blinko is offline  
Closed Thread


Similar Threads Similar Threads
Eden Eternal bot issue
08/21/2011 - AutoIt - 7 Replies
Im trying to use my own bot in the game Eden Eternal. But I'm not getting to use the _SendMessage and _PostMessage functons, i tried a lot to make it work but i didn't obtain success... just the Send function worked... Code, doesnt work (the $HANDLER is working, i think. It just write into the chat): ;_SendMessage($HANDLE, 256, 112); ;_SendMessage($HANDLE, 0x4d, 0); ;_PostMessage($HANDLE, 256, 49, 0x20001); ;_PostMessage($HANDLE, 257, 49, 0x20001); ;ControlSend($HANDLE, "", "",...
Eden Eternal
08/16/2011 - General Gaming Discussion - 2 Replies
Hallo Leute. Ich wollte fragen ob ihr bei der CB von Eden Eternal dabei wart, was ihr davon haltet und ob es eventuell Server files oder Language patches für die Japanische version gibt. Danke im vorraus. Kexxi
WTS Eden Eternal Account.
07/11/2011 - Trading - 17 Replies
Hello! Selling my Eden Eternal account from this site here: Eden Eternal - Eden Eternal - A free MMORPG from Aeria Games Game is open to ANYONE and EVERYONE. Meaning you can play from anywhere. Germany, Europe, Australia, Hawaii, United States, Canada, etc. Server: Aquamarine Details: Maverick Trait (10% AGI, 5% ATK Speed)
eden eternal hacks needed
07/01/2011 - General Coding - 3 Replies
any1 gonna make hacks for eden eternal ?
Eternal Eden OB!
06/16/2011 - General Gaming Discussion - 0 Replies
Eden Eternal - Eden Eternal - A free MMORPG from Aeria Games signup here! ^ OB starts today experience the fun!



All times are GMT +1. The time now is 13:23.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.