Register for your free account! | Forgot your password?

Go Back   elitepvpers > Aion > Aion Hacks, Bots, Cheats & Exploits
You last visited: Today at 23:39

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

 

Aion AutoIt Bot Beta [Open Source]

Reply
 
Old   #211
 
elite*gold: 0
Join Date: Apr 2009
Posts: 41
Received Thanks: 1
Er meint die Dateiendung ".txt" weglassen



blun0r is offline  
Old   #212
 
elite*gold: 0
Join Date: Feb 2009
Posts: 198
Received Thanks: 5
Funktioniert hat es vorhin, allerdings hat er keine Mobs angegriffen.


Posthardcore is offline  
Old   #213
 
elite*gold: 0
Join Date: Oct 2009
Posts: 295
Received Thanks: 103
Some hints if im allowed to ... if i find some time ill edit the source
(works without focus on AiON Window... helps a lot for debuging ;D )


ControlSend("AION Client","","",$attack1)
ControlSend("AION Client","","","{w down}",0) ;;; should work without the ,0 ...
ControlSend("AION Client","","",$rot_down)
chefes78 is offline  
Old   #214
 
elite*gold: 0
Join Date: Oct 2008
Posts: 314
Received Thanks: 160
Quote:
Originally Posted by chefes78 View Post
Some hints if im allowed to ... if i find some time ill edit the source
(works without focus on AiON Window... helps a lot for debuging ;D )


ControlSend("AION Client","","",$attack1)
ControlSend("AION Client","","","{w down}",0) ;;; should work without the ,0 ...
ControlSend("AION Client","","",$rot_down)
up and down commands didnot work with a controlsend. i already opened a thread in the autoit section



unknown661 is offline  
Old   #215
 
elite*gold: 0
Join Date: Oct 2009
Posts: 31
Received Thanks: 2
mal ne frage:
bei mir hängt er immer im kampf 2 sekunden bei "starting attack 6"
kann man das irgendwie weg machen?
challe is offline  
Old   #216
 
elite*gold: 0
Join Date: Oct 2009
Posts: 3
Received Thanks: 0
Ein Grundsaetzlicher Denkanstoss von mir zur Anti Bot Detection.

Was machen die, wenn sie auf ihrer DB nach BOTs suchen:

Sie schauen 3 Dinge nach:

1) Die Total Session time...da kannst wenig machen
2) gleichartige Schemen wie skills benutzt werden
3) Wegpunkte die immer gleich sind

Hier die idee die relativ einfach zu implementieren waere:

Einfach ne abfrage bevor es in die Kampfroutine geht:

K = Random (2) machen lassen

Wenn 1 macht er skillabfolge die unter (1) definiert ist
Wenn 2 macht er skillabfolge die unter (2) definiert ist

Das verwirrt saemtliche automatischen Auswertungstools weil kein Muster zu finden ist.

Des weiteren koennte man 2 Weg defenieren, die er genauso zufaellig auswaehlt..

Einfach bei Bewegungen und Skillauswahl viel mit Random machen...
aurian1 is offline  
Old   #217
 
elite*gold: 0
Join Date: Oct 2009
Posts: 42
Received Thanks: 6
Zu der "Anti Bot Detection" Geschichte...

1. Total session time stimmt wohl - ok
2. Skills werde doch wohl immer in der gleichen Reihenfolge genutzt, ich würde als Mage auch nicht mit meiner Nahkampf-Attacke anfangen! - Das darf kein Kriterium sein.
3. Wegpunkte definieren wir für uns selbst, es wäre also ein Vergleich der abgelaufenen Koordinaten. - Wird wohl kaum gespeichert - einfach mal überlegen, was das für ein Aufwand wäre und wie groß dann die Datenbank ist.

Was also viel wahrscheinlicher ist - meiner Meinung nach:
1. Kleine Incentives für diejenigen die Botter jagen und reporten - so würde ich das jedenfalls als Firma machen
2. Übliche Botterstellen mit Gamemastern überwachen
3. Wie bei Silkroad Anti-Bot Gegner einbinden

Ansonsten ist der Vorschlag mit 2 Wegen nicht schlecht, könnte aber auch einfach durch einen wesentlich längeren Weg behoben werden.
Und Random ist eigentlich immer gut, da gibt es wirklich nichts gegen einzusetzen.



Am wahrscheinlichsten ist es aber wohl, dass sie erstmal ihrem Gameguard aktivieren und dann Zugriffe auf "ihren" Speicherbereich genau überwachen - das wird dann wohl zum Bann führen.
ShrekIII is offline  
Old   #218
 
elite*gold: 0
Join Date: Oct 2009
Posts: 295
Received Thanks: 103
Quote:
Originally Posted by unknown661 View Post
up and down commands didnot work with a controlsend. i already opened a thread in the autoit section


try this...

Code:
Opt("SendKeyDownDelay", 500)
...
ControlSend("My Window", '', '', "d"
Only thing is, it also makes other key presses last 500ms.
just reset to default after waypoints()

should work i think


OR ...

change line 16 to:
GuiCreate("AutoAion v0.7", 300,600, -1, -1, -1,$WS_EX_TOPMOST)

now you just need to at a Start / Stop button ... here an expl:

Code:
#include <GUIConstantsEx.au3>
#include <Timers.au3>

$Form1_1 = GUICreate("AION KeepAlive v5", 343, 195, 192, 124)
$Label1 = GUICtrlCreateLabel("Ready to keep AION alive", 64, 16, 198, 20)
GUICtrlSetFont(-1, 10, 400, 0, "Goudy Old Style")
$Label11 = GUICtrlCreateLabel("Press Start/Stop Button", 64, 36, 198, 20)
GUICtrlSetFont(-1, 10, 400, 0, "Goudy Old Style")
$Label111 = GUICtrlCreateLabel("", 64, 56, 198, 20)
GUICtrlSetFont(-1, 10, 400, 0, "Goudy Old Style")
$Button1 = GUICtrlCreateButton( "Start", 216, 104, 75, 25)
$Button2 = GUICtrlCreateButton( "Stop", 216, 144, 75, 25)

GUICtrlSetState($button2, $GUI_DISABLE)

GUISwitch($Form1_1)
GUISetState(@SW_SHOW)
$button1Loop = False

While 1
$nMsg = GUIGetMsg(1)

Select
 Case $nMsg[0] = $Button2
  MsgBox(0,"Button2","Stop button clicked")
  $button1Loop = False
  GUICtrlSetState($button1, $GUI_ENABLE)
  GUICtrlSetState($button2, $GUI_DISABLE)
  GUICtrlSetData($label1, "All Done")
  case $nMsg[0] = $Button1
   MsgBox(0, "AION KeepAlive", "Started")
   Global $time = _Timer_Init()
   $button1Loop = True
  GUICtrlSetState($button2, $GUI_ENABLE)
  GUICtrlSetState($button1, $GUI_DISABLE)
   Button1()

  case $nMsg[0] = $GUI_EVENT_CLOSE and $nMsg[1] = $Form1_1
   ExitLoop
EndSelect

if $button1Loop Then
 Button1()
EndIf

WEnd

Func Button1()
sleep(10)
;~ Local $time = _Timer_Init()
sleep(10)
GUICtrlSetData($Label1, "Keeping AION alive: ")
sleep(10)
GUICtrlSetData($Label11, "" )
sleep(10)
ControlSend("AION Client","","","p")
sleep(10)
GUICtrlSetData($Label111,  "" &TimerDiff($time))


EndFunc
chefes78 is offline  
Thanks
1 User
Old   #219
 
elite*gold: 0
Join Date: Aug 2009
Posts: 2
Received Thanks: 1
Little suggestion:
in "Func KillEnemy()":
Code:
if GetEnemyLvl() = 1 Then
	Send("{Tab}")
	Sleep(100)
	if GetEnemyLvl() = 1 Then
		return 0
	EndIf
EndIf
This way the level 1 monsters are less annoying.
dagfsdfhstrzh is offline  
Old   #220
 
elite*gold: 0
Join Date: Oct 2009
Posts: 31
Received Thanks: 2
Quote:
Originally Posted by dagfsdfhstrzh View Post
Little suggestion:
in "Func KillEnemy()":
Code:
if GetEnemyLvl() = 1 Then
	Send("{Tab}")
	Sleep(100)
	if GetEnemyLvl() = 1 Then
		return 0
	EndIf
EndIf
This way the level 1 monsters are less annoying.
There are animals which are lvl2, too
challe is offline  
Old   #221
 
elite*gold: 0
Join Date: Nov 2007
Posts: 22
Received Thanks: 7
Hallo Leute,

Änderungen bei Komboattacken, war bisher das "D.A."
Bei "D.A." hat er die Taste aber nur zweimal gedrückt.
Ihr könnt den Bot mit "F5" anhalten. Er killt das mob noch zu Ende
und hört dann auf. Neustart einfach mit dem "Start"-Button.
Ist nicht viel, aber wesentlich effektiver und angenehmer.

Bei Komboattacken einen Haken setzen und im Feld danach
die Wiederholungen eintragen.

Viele Grüsse

Der Quellcode basiert auf Version 0.6

------------------------------------------------------------------------
#AutoIT3Wrapper_UseUpx=n
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_outfile=AutoAion_V06_plany123.exe
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****


#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <GuiConstants.au3>
#Include <file.au3>
#include <NoMadMemory.au3>


GuiCreate("AutoAion v0.6 by Plany123", 270,505, -1, -1, -1)
GUISetState(@SW_SHOW)


HotKeySet("{F5}","stop")
HotKeySet("{NUMPADADD}","_keyboardToWpInterface")

Global $Run = False ;neu
Global $enemyKillCount = 0
Global $enemyEpCount = 0
Global $playerEnergy
Global $playerEnergyMax
Global $playerHP
Global $playerHPMax
Global $playerEP
Global $playerEPMax
Global $targetHPpercent
Global $AionRun = False
Global $pid = 0
Global $openmem = 0
Global $baseADDR = 0
Global $finalADDR = 0
Global $wpField[1000]
Global $count =1
Global $countMax=0
global $pi = 3.14159265
global $file1 = "data.txt"
global $attack1 = "x"
global $attack2 = "x"
global $attack3 = "x"
global $attack4 = "x"
global $attack5 = "x"
global $attack6 = "x"
global $attack7 = "x"
global $attack8 = "x"
global $loot = "x"
global $reg = "x"
Global $i =0
global $attack1c = "0"
global $attack2c = "0"
global $attack3c = "0"
global $attack4c = "0"
global $attack5c = "0"
global $attack6c = "0"
global $attack7c = "0"
global $attack8c = "0"

global $attack1Cd = "0"
global $attack2Cd = "0"
global $attack3Cd = "0"
global $attack4Cd = "0"
global $attack5Cd = "0"
global $attack6Cd = "0"
global $attack7Cd = "0"
global $attack8Cd = "0"

global $attack1LastCast = "0"
global $attack2LastCast = "0"
global $attack3LastCast = "0"
global $attack4LastCast = "0"
global $attack5LastCast = "0"
global $attack6LastCast = "0"
global $attack7LastCast = "0"
global $attack8LastCast = "0"

global $killCount
global $status
global $TimeCount

global $attack1_da
global $attack2_da
global $attack3_da
global $attack4_da
global $attack5_da
global $attack6_da

global $multiattack1_da = "0" ;neu
global $multiattack2_da = "0"
global $multiattack3_da = "0"
global $multiattack4_da = "0"
global $multiattack5_da = "0"
global $multiattack6_da = "0"
global $multiattack7_da = "0"
global $multiattack8_da = "0"

global $attack8hp = 20
global $reg_minLife = 40
global $reg_minMana = 10

global $timeDiff = 0;
global $lastTime = 0;
global $newTime = 0;
global $avgTime = 0;

global $rot_down = "a down"
global $rot_up = "a up"

$attack1_da = GUICtrlCreateCheckbox(" ", 210, 30, 20, 20)
$attack2_da = GUICtrlCreateCheckbox(" ", -1, 60, -1,-1)
$attack3_da = GUICtrlCreateCheckbox(" ",-1, 90, -1,-1)
$attack4_da = GUICtrlCreateCheckbox(" ", -1, 180, -1,-1)
$attack5_da = GUICtrlCreateCheckbox(" ", -1, 120, -1,-1)
$attack6_da = GUICtrlCreateCheckbox(" ", -1, 150, -1,-1)

$mattack7_da = 0
$mattack8_da = 0


readKeys()

$Label1 = GUICtrlCreateLabel("Key", 65, 10, 60, 17)
$Label1 = GUICtrlCreateLabel("Casttime", 100, -1, 60, 17)
$Label1 = GUICtrlCreateLabel("Cooldown", 150, -1, 60, 17)
$Label1 = GUICtrlCreateLabel("Multiattack", 210, -1, 60, 17) ;neu

$Label1 = GUICtrlCreateLabel("Kill Count:", 150, 270, 60, 17)
$killCount = GUICtrlCreateLabel($enemyKillCount, 200, 270, 100, 17)
$Label1 = GUICtrlCreateLabel("EP Count:", 150, 290, 60, 17)
$epCount = GUICtrlCreateLabel($enemyEpCount, 200, 290, 100, 17)
$Label1 = GUICtrlCreateLabel("Lvl-up in:", 150, 310, 60, 17)
$TimeCount = GUICtrlCreateLabel($avgTime, 200, 310, 100, 17)

$Label1 = GUICtrlCreateLabel("Attack 1:", 15, 32, 44, 17)
$attack1Key = GUICtrlCreateInput($attack1, 65, 30, 20, 21)
$attack1Cast = GUICtrlCreateInput($attack1c, 100, 30, 40, 21)
$attack1Cooldown = GUICtrlCreateInput($attack1Cd, 150, 30, 40, 21)
$mattack1_da = GUICtrlCreateInput($multiattack1_da, 240, 30, 20, 20) ;neu

$Label2 = GUICtrlCreateLabel("Attack 2:", 15, 62, 44, 17)
$attack2Key = GUICtrlCreateInput($attack2, 65, 60, 20, 21)
$attack2Cast = GUICtrlCreateInput($attack2c, 100, 60, 40, 21)
$attack2Cooldown = GUICtrlCreateInput($attack2Cd, 150, 60, 40, 21)
$mattack2_da = GUICtrlCreateInput($multiattack2_da, 240, -1, 20, 20);neu

$Label3 = GUICtrlCreateLabel("Attack 3:", 15, 92, 44, 17)
$attack3Key = GUICtrlCreateInput($attack3, 65, 90, 20, 21)
$attack3Cast = GUICtrlCreateInput($attack3c, 100, 90, 40, 21)
$attack3Cooldown = GUICtrlCreateInput($attack3Cd, 150, 90, 40, 21)
$mattack3_da = GUICtrlCreateInput($multiattack3_da, 240, -1, 20, 20);neu

$Label5 = GUICtrlCreateLabel("Attack 4:", 15, 122, 44, 17)
$attack5Key = GUICtrlCreateInput($attack5, 65, 120, 20, 21)
$attack5Cast = GUICtrlCreateInput($attack5c, 100, 120, 40, 21)
$attack5Cooldown = GUICtrlCreateInput($attack5Cd, 150, 120, 40, 21)
$mattack5_da = GUICtrlCreateInput($multiattack5_da, 240, -1, 20, 20);neu

$Label6 = GUICtrlCreateLabel("Attack 5:", 15, 152, 44, 17)
$attack6Key = GUICtrlCreateInput($attack6, 65, 150, 20, 21)
$attack6Cast = GUICtrlCreateInput($attack6c, 100, 150, 40, 21)
$attack6Cooldown = GUICtrlCreateInput($attack6Cd, 150, 150, 40, 21)
$mattack6_da = GUICtrlCreateInput($multiattack6_da, 240, -1, 20, 20);neu

$Label4 = GUICtrlCreateLabel("PreCast:", 17, 182, 50, 17)
$attack4Key = GUICtrlCreateInput($attack4, 65, 180, 20, 21)
$attack4Cast = GUICtrlCreateInput($attack4c, 100, 180, 40, 21)
$attack4Cooldown = GUICtrlCreateInput($attack4Cd, 150, 180, 40, 21)
$mattack4_da = GUICtrlCreateInput($multiattack4_da, 240, -1, 20, 20);neu

$Label7 = GUICtrlCreateLabel("PostCast:", 14, 212, 50, 17)
$attack7Key = GUICtrlCreateInput($attack7, 65, 210, 20, 21)
$attack7Cast = GUICtrlCreateInput($attack7c, 100, 210, 40, 21)
$attack7Cooldown = GUICtrlCreateInput($attack7Cd, 150, 210, 40, 21)

$Label8 = GUICtrlCreateLabel("Em Cast:", 14, 242, 50, 17)
$attack8Key = GUICtrlCreateInput($attack8, 65, 240, 20, 21)
$attack8Cast = GUICtrlCreateInput($attack8c, 100, 240, 40, 21)
$attack8Cooldown = GUICtrlCreateInput($attack8Cd, 150, 240, 40, 21)
$Label8 = GUICtrlCreateLabel("HP:", 191, 242, 18, 17)
$attack8hitPoint = GUICtrlCreateInput($attack8hp, 210, 240, 20, 21)
$Label8 = GUICtrlCreateLabel("%", 232, 242, 10, 17)


$Label3 = GUICtrlCreateLabel("Loot:", 35, 272, 25, 17)
$lootKey = GUICtrlCreateInput($loot, 65, 270, 20, 21)


$Label3 = GUICtrlCreateLabel("Reg:", 36, 302, 22, 17)
$regKey = GUICtrlCreateInput($reg, 65, 300, 20, 21)
$Label3 = GUICtrlCreateLabel("HP:", 90, 302, 19, 15)
$Label3 = GUICtrlCreateLabel("MA:", 90, 330, 19, 15)
$regMin = GUICtrlCreateInput($reg_minLife, 110, 300, 20, 21)
$regMinMana = GUICtrlCreateInput($reg_minMana, 110, 327, 20, 21)
$Label3 = GUICtrlCreateLabel("%", 130, 302, 10, 17)
$Label3 = GUICtrlCreateLabel("%", 130, 330, 10, 17)



$Label6 = GUICtrlCreateLabel("Filename:", 40,360, 70, 17)
$wpFileInput = GUICtrlCreateInput("", 140, 377, 70, 20)
$Label6 = GUICtrlCreateLabel("Filename:", 150,360, 70, 17)
$wpSaveInput = GUICtrlCreateInput("", 30, 377, 70, 20)
; status field
$status = GUICtrlCreateLabel("Start Bot-Engine... done!"&getCredits(), 5,460, 230, 40)
;buttons
$buttonSave = GuiCtrlCreateButton("Save", 30,430,70,20)
$buttonRun = GuiCtrlCreateButton("Run Bot", 140,430,70,20)
$buttonAddWayPoint = GuiCtrlCreateButton("Add WP", 30,400,70,20)
$buttonOpenWayPoint = GuiCtrlCreateButton("Open WP", 140,400,70,20)


Func stop()
Send("{w up}")
$Run = False ;neu
EndFunc


;#################################################
;interface functions
;#################################################
func readKeys()
if FileExists($file1) Then

$attack1 = FileReadLine($file1,"1")
$attack2 = FileReadLine($file1,"2")
$attack3 = FileReadLine($file1,"3")
$loot = FileReadLine($file1,"4")
$reg = FileReadLine($file1,"5")
$attack1c = FileReadLine($file1,"6")
$attack2c = FileReadLine($file1,"7")
$attack3c = FileReadLine($file1,"8")
$attack1Cd = FileReadLine($file1,"9")
$attack2Cd = FileReadLine($file1,"10")
$attack3Cd = FileReadLine($file1,"11")
$reg_minLife = FileReadLine($file1,"12")
$reg_minMana = FileReadLine($file1,"13")
$attack4 = FileReadLine($file1,"14")
$attack4c = FileReadLine($file1,"15")
$attack4Cd = FileReadLine($file1,"16")

if (FileReadLine($file1,"17") == 1) Then
GUICtrlSetState($attack1_da,$GUI_CHECKED)
EndIf
if (FileReadLine($file1,"18") == 1) Then
GUICtrlSetState($attack2_da,$GUI_CHECKED)
EndIf
if (FileReadLine($file1,"19") == 1) Then
GUICtrlSetState($attack3_da,$GUI_CHECKED)
EndIf
if (FileReadLine($file1,"20") == 1) Then
GUICtrlSetState($attack4_da,$GUI_CHECKED)
EndIf
if (FileReadLine($file1,"21") == 1) Then
GUICtrlSetState($attack5_da,$GUI_CHECKED)
EndIf
if (FileReadLine($file1,"22") == 1) Then
GUICtrlSetState($attack6_da,$GUI_CHECKED)
EndIf

$attack5 = FileReadLine($file1,"23")
$attack5c = FileReadLine($file1,"24")
$attack5Cd = FileReadLine($file1,"25")
$attack6 = FileReadLine($file1,"26")
$attack6c = FileReadLine($file1,"27")
$attack6Cd = FileReadLine($file1,"28")
$attack7 = FileReadLine($file1,"29")
$attack7c = FileReadLine($file1,"30")
$attack7Cd = FileReadLine($file1,"31")

$attack8 = FileReadLine($file1,"32")
$attack8c = FileReadLine($file1,"33")
$attack8Cd = FileReadLine($file1,"34")
$attack8hp = FileReadLine($file1,"35")

$multiattack1_da = FileReadLine($file1,"36")
$multiattack2_da = FileReadLine($file1,"37")
$multiattack3_da = FileReadLine($file1,"38")
$multiattack4_da = FileReadLine($file1,"39")
$multiattack5_da = FileReadLine($file1,"40")
$multiattack6_da = FileReadLine($file1,"41")
$multiattack7_da = FileReadLine($file1,"42")
$multiattack8_da = FileReadLine($file1,"43")


GUICtrlSetData($status,"Save and Load new Values")
EndIf
EndFunc



Func saveKeys()
$readAttack1 = GuiCtrlRead($attack1Key)
$readAttack2 = GuiCtrlRead($attack2Key)
$readAttack3 = GuiCtrlRead($attack3Key)
$readAttack4 = GuiCtrlRead($attack4Key)
$readAttack5 = GuiCtrlRead($attack5Key)
$readAttack6 = GuiCtrlRead($attack6Key)
$readAttack7 = GuiCtrlRead($attack7Key)
$readAttack8 = GuiCtrlRead($attack8Key)

$readAttack1cast = GuiCtrlRead($attack1Cast)
$readAttack2cast = GuiCtrlRead($attack2Cast)
$readAttack3cast = GuiCtrlRead($attack3Cast)
$readAttack4cast = GuiCtrlRead($attack4Cast)
$readAttack5cast = GuiCtrlRead($attack5Cast)
$readAttack6cast = GuiCtrlRead($attack6Cast)
$readAttack7cast = GuiCtrlRead($attack7Cast)
$readAttack8cast = GuiCtrlRead($attack8Cast)

$readAttack1cd = GuiCtrlRead($attack1Cooldown)
$readAttack2cd = GuiCtrlRead($attack2Cooldown)
$readAttack3cd = GuiCtrlRead($attack3Cooldown)
$readAttack4cd = GuiCtrlRead($attack4Cooldown)
$readAttack5cd = GuiCtrlRead($attack5Cooldown)
$readAttack6cd = GuiCtrlRead($attack6Cooldown)
$readAttack7cd = GuiCtrlRead($attack7Cooldown)
$readAttack8cd = GuiCtrlRead($attack8Cooldown)

$readAttack1da = GuiCtrlRead($attack1_da)
$readAttack2da = GuiCtrlRead($attack2_da)
$readAttack3da = GuiCtrlRead($attack3_da)
$readAttack4da = GuiCtrlRead($attack4_da)
$readAttack5da = GuiCtrlRead($attack5_da)
$readAttack6da = GuiCtrlRead($attack6_da)

$readmultiAttack1da = GuiCtrlRead($mattack1_da)
$readmultiAttack2da = GuiCtrlRead($mattack2_da)
$readmultiAttack3da = GuiCtrlRead($mattack3_da)
$readmultiAttack4da = GuiCtrlRead($mattack4_da)
$readmultiAttack5da = GuiCtrlRead($mattack5_da)
$readmultiAttack6da = GuiCtrlRead($mattack6_da)
$readmultiAttack7da = GuiCtrlRead($mattack7_da)
$readmultiAttack8da = GuiCtrlRead($mattack8_da)

$readAttack8hp = GuiCtrlRead($attack8hitPoint)
$reg_minLife = GuiCtrlRead($regMin)
$reg_minMana = GuiCtrlRead($regMinMana)

$readLoot = GuiCtrlRead($lootKey)
$readReg = GuiCtrlRead($regKey)

;neu kein File-Delete mehr, sondern ersetzen, das beste ist die
;Zeilenangabe im zweiten Parameter.Übersichtlicher
_FileWriteToLine($file1,1,$readAttack1,1) ;1
_FileWriteToLine($file1,2,$readAttack2,1) ;2
_FileWriteToLine($file1,3,$readAttack3,1) ;3
_FileWriteToLine($file1,4,$readLoot,1) ;4
_FileWriteToLine($file1,5,$readReg,1) ;5
_FileWriteToLine($file1,6,$readAttack1cast,1) ;6
_FileWriteToLine($file1,7,$readAttack2cast,1) ;7
_FileWriteToLine($file1,8,$readAttack3cast,1) ;8
_FileWriteToLine($file1,9,$readAttack1cd,1) ;9
_FileWriteToLine($file1,10,$readAttack2cd,1) ;10
_FileWriteToLine($file1,11,$readAttack3cd,1) ;11
_FileWriteToLine($file1,12,$reg_minLife,1) ;12
_FileWriteToLine($file1,13,$reg_minMana,1) ;13
_FileWriteToLine($file1,14,$readAttack4,1) ;14
_FileWriteToLine($file1,15,$readAttack4cast,1) ;15
_FileWriteToLine($file1,16,$readAttack4cd,1) ;16

_FileWriteToLine($file1,17,$readAttack1da,1) ;17
_FileWriteToLine($file1,18,$readAttack2da,1) ;18
_FileWriteToLine($file1,19,$readAttack3da,1) ;19
_FileWriteToLine($file1,20,$readAttack4da,1) ;20

_FileWriteToLine($file1,21,$readAttack5da,1) ;21
_FileWriteToLine($file1,22,$readAttack6da,1) ;22
_FileWriteToLine($file1,23,$readAttack5,1) ;23
_FileWriteToLine($file1,24,$readAttack5cast,1) ;24
_FileWriteToLine($file1,25,$readAttack5cd,1) ;25
_FileWriteToLine($file1,26,$readAttack6,1) ;26
_FileWriteToLine($file1,27,$readAttack6cast,1) ;27
_FileWriteToLine($file1,28,$readAttack6cd,1) ;28
_FileWriteToLine($file1,29,$readAttack7,1) ;29
_FileWriteToLine($file1,30,$readAttack7cast,1) ;30
_FileWriteToLine($file1,31,$readAttack7cd,1) ;31
_FileWriteToLine($file1,32,$readAttack8,1) ;32
_FileWriteToLine($file1,33,$readAttack8cast,1) ;33
_FileWriteToLine($file1,34,$readAttack8cd,1) ;34
_FileWriteToLine($file1,35,$readAttack8hp,1) ;35

_FileWriteToLine($file1,36,$readmultiAttack1da,1) ;36
_FileWriteToLine($file1,37,$readmultiAttack2da,1) ;37
_FileWriteToLine($file1,38,$readmultiAttack3da,1) ;38
_FileWriteToLine($file1,39,$readmultiAttack4da,1) ;39
_FileWriteToLine($file1,40,$readmultiAttack5da,1) ;40
_FileWriteToLine($file1,41,$readmultiAttack6da,1) ;41
_FileWriteToLine($file1,42,$readmultiAttack7da,1) ;42
_FileWriteToLine($file1,43,$readmultiAttack8da,1) ;43

readKeys()
EndFunc


Func _toolTip($msg)
GUICtrlSetData($status,$msg)
EndFunc

;#################################################
;Memory Read/write functions
;#################################################


Func OpenAionMemory()
$pid = ProcessExists("AION.bin")
If $pid == -1 Then
Return
EndIf
$openmem = _MemoryOpen($pid)
If @error Then
Return
EndIf
$AionRun = True
EndFunc


Func MemReadDLLEnemyHP($offset)
$StaticOffset = Dec($offset)
Global $pid
Global $CUROffset[1]
$CUROffset[0] = 0
$baseADDR = _MemoryModuleGetBaseAddress($pid, "Game.dll")
$finalADDR = "0x" & Hex($baseADDR + $StaticOffset)
$MemTest = _MemoryRead($finaladdr,$openmem)
$MemTest = _memoryread( $MemTest+ 0x01C4,$openmem)
$MemTest = _memoryread( $MemTest + 0x0034, $openmem,"byte" )
Return $MemTest
EndFunc

Func MemReadDLL($offset)
$StaticOffset = Dec($offset)
Global $pid
Global $CUROffset[1]
$CUROffset[0] = 0
$baseADDR = _MemoryModuleGetBaseAddress($pid, "Game.dll")
$finalADDR = "0x" & Hex($baseADDR + $StaticOffset)
$MemTest = _MemoryRead($finaladdr,$openmem)

Return $MemTest
EndFunc

Func MemReadDLLFloat($offset)
$StaticOffset = Dec($offset)
Global $pid
Global $CUROffset[1]
$CUROffset[0] = 0
$baseADDR = _MemoryModuleGetBaseAddress($pid, "Game.dll")
$finalADDR = "0x" & Hex($baseADDR + $StaticOffset)
$MemTest = _MemoryRead($finaladdr,$openmem,"float")
Return $MemTest
EndFunc

Func MemWriteDLL($offset, $data)
$StaticOffset = Dec($offset)
Global $pid
Global $CUROffset[1]
$CUROffset[0] = 0
$baseADDR = _MemoryModuleGetBaseAddress($pid, "Game.dll")
$finalADDR = "0x" & Hex($baseADDR + $StaticOffset)

_MemoryWrite($finalADDR,$openmem,$data,"float")
Return
EndFunc

; the HP of the TargetEnemy
Func CheckEnemyDead()
return MemReadDLLEnemyHP("4F68FC")
EndFunc

Func playerCurrectEP()
return MemReadDLL("8EEEA8")
EndFunc

Func PlayerMaxEP()
return MemReadDLL("8EEE98")
EndFunc

Func playerCurrectMana()
return MemReadDLL("8EEEC0")
EndFunc

Func PlayerMaxMana()
return MemReadDLL("8EEEBC")
EndFunc

Func playerCurrectHp()
return MemReadDLL("8EEEB8")
EndFunc

Func playerCurrectHpPercent()
$val = MemReadDLL("8EEEB8")
$Pval = ($val * 100) / PlayerMaxHp()
return Round($Pval)
EndFunc

Func PlayerMaxHp()
return MemReadDLL("8EEEB4")
EndFunc

Func PlayerXPos()
return MemReadDLLFloat("8E6944")
EndFunc

Func PlayerYPos()
return MemReadDLLFloat("8E6940")
EndFunc

Func PlayerZPos()
return MemReadDLLFloat("8E6948")
EndFunc

; Angel of the Player 360° / 2
Func GetPlayerPos()
Return MemReadDLLFloat("8E40C0")
EndFunc

Func ReadMemValues()
$playerHP = playerCurrectHp()
$playerHPMax = PlayerMaxHp()

$playerEP = playerCurrectEP()
$playerEPMax = PlayerMaxEP()

$playerEnergy = playerCurrectMana()
$playerEnergyMax = PlayerMaxMana()
EndFunc

;#################################################
;fight functions
;#################################################

Func KillEnemy()

_toolTip("looking for mobs")
Sleep(200)
Send("{Tab}")
;while MemReadDLLEnemyHP("4F68FC") <>100
; Send("{Tab}")

;WEnd
Sleep(300)
if CheckEnemyDead() <> 0 And CheckEnemyDead() > 98 then
$timeDiff = _TimeGetStamp()
_toolTip("start attacking")
if $attack4 <> "x" then
F_buff()
EndIf
Sleep(1000);
while CheckEnemyDead() <> 0
if $attack1 <> "x" then
F_arttack1()
EndIf
if $attack2 <> "x" then
F_arttack2()
EndIf
if $attack3 <> "x" then
F_arttack3()
EndIf
if $attack5 <> "x" then
F_arttack5()
EndIf
if $attack6 <> "x" then
F_arttack6()
EndIf
WEnd
_toolTip("Mob down")
; add 1 to the kill counter
$enemyKillCount = $enemyKillCount + 1
GUICtrlSetData( $killCount, $enemyKillCount)
Sleep(1800)
; ep counter
$newEp = playerCurrectEP() - $playerEP
$playerEP = playerCurrectEP()
$enemyEpCount = $enemyEpCount + $newEp
GUICtrlSetData($epCount , $enemyEpCount)
; loot

_toolTip("start Looting")
Send($loot)
calcTime($newEp)
Sleep(3000)
if $attack7 <> "x" then
F_PostAttack()
EndIf
if ((playerCurrectHp()/$playerHPMax)*100) < $reg_minLife Or ((playerCurrectMana()/$playerEnergyMax)*100) < $reg_minMana Then
_toolTip("start Reging")
Send($reg)
while PlayerMaxHp() <> playerCurrectHp()
Sleep(2000)
WEnd
while PlayerMaxMana() <> playerCurrectMana()
Sleep(2000)
WEnd
Send($reg)
EndIf
return 1
EndIf
return 0

EndFunc


;################################################
; Action functions
;################################################

Func F_arttack1()
Local $i

F_EmCast()
if(($attack1LastCast + $attack1Cd) < _TimeGetStamp() and CheckEnemyDead() <> 0) Then
_toolTip("start attack Nr1")
Send($attack1)
Sleep($attack1c)
$attack1LastCast = _TimeGetStamp()
;ergänzt mit multiattack
if(GuiCtrlRead($attack1_da) == 1 And CheckEnemyDead() <> 0 And $multiattack1_da >0) Then
For $i = 1 to $multiattack1_da
Send($attack1)
Sleep($attack1c)
Next
EndIf
EndIf
EndFunc

Func F_arttack2()
F_EmCast()
if(($attack2LastCast + $attack2Cd) < _TimeGetStamp() and CheckEnemyDead() <> 0) Then
_toolTip("start attack Nr2")
Send($attack2)
Sleep($attack2c)
$attack2LastCast = _TimeGetStamp()
;ergänzt mit multiattack
if(GuiCtrlRead($attack2_da) == 1 And CheckEnemyDead() <> 0 And $multiattack2_da >0) Then
For $i = 1 to $multiattack2_da
Send($attack2)
Sleep($attack2c)
Next
EndIf
EndIf
EndFunc

Func F_arttack3()
F_EmCast()
if(($attack3LastCast + $attack3Cd) < _TimeGetStamp() and CheckEnemyDead() <> 0) Then
_toolTip("start attack Nr3")
Send($attack3)
Sleep($attack3c)
$attack3LastCast = _TimeGetStamp()
;ergänzt mit multiattack
if(GuiCtrlRead($attack3_da) == 1 And CheckEnemyDead() <> 0 And $multiattack3_da >0) Then
For $i = 1 to $multiattack3_da
Send($attack3)
Sleep($attack3c)
Next
EndIf
EndIf
EndFunc

Func F_arttack5()
F_EmCast()
if(($attack5LastCast + $attack5Cd) < _TimeGetStamp() and CheckEnemyDead() <> 0) Then
_toolTip("start attack Nr5")
Send($attack5)
Sleep($attack5c)
$attack5LastCast = _TimeGetStamp()
;ergänzt mit multiattack
if(GuiCtrlRead($attack5_da) == 1 And CheckEnemyDead() <> 0 And $multiattack5_da >0) Then
For $i = 1 to $multiattack5_da
Send($attack5)
Sleep($attack5c)
Next
EndIf
EndIf
EndFunc

Func F_arttack6()
F_EmCast()
if(($attack6LastCast + $attack6Cd) < _TimeGetStamp() and CheckEnemyDead() <> 0) Then
_toolTip("start attack Nr6")
Send($attack6)
Sleep($attack6c)
$attack5LastCast = _TimeGetStamp()
;ergänzt mit multiattack
if(GuiCtrlRead($attack6_da) == 1 And CheckEnemyDead() <> 0 And $multiattack6_da >0) Then
For $i = 1 to $multiattack6_da
Send($attack6)
Sleep($attack6c)
Next
EndIf
EndIf
EndFunc

Func F_buff()
if(($attack4LastCast + $attack4Cd) < _TimeGetStamp()) Then
_toolTip("starting PreCast")
Send($attack4)
Sleep($attack4c)
$attack4LastCast = _TimeGetStamp()
;ergänzt mit multiattack
if(GuiCtrlRead($attack4_da) == 1 And $multiattack4_da >0) Then
For $i = 1 to $multiattack4_da
Send($attack4)
Sleep($attack4c)
Next
EndIf
EndIf
EndFunc

Func F_PostAttack()
if(($attack7LastCast + $attack7Cd) < _TimeGetStamp()) Then
_toolTip("starting PostCast")
Send($attack7)
Sleep($attack7c)
$attack7LastCast = _TimeGetStamp()
EndIf
EndFunc

Func F_EmCast()
if ($attack8 <> "x") then
if(($attack8LastCast + $attack8Cd) < _TimeGetStamp() and playerCurrectHpPercent() <= $attack8hp) Then
_toolTip("starting Emergency Cast")
Send($attack8)
Sleep($attack8c)
$attack8LastCast = _TimeGetStamp()
EndIf
EndIf
EndFunc


;#################################################
;waypoint functions
;#################################################

Func _keyboardToWpInterface()
OpenAionMemory()
addWP()
EndFunc

Func addWP()

$playerX = PlayerXPos()
$playerY = PlayerYPos()
$playerZ = PlayerZPos()

$WPFile = "wp"

$openFile = GuiCtrlRead($wpSaveInput)
$wpSave = FileOpen($openFile, 1)

FileWriteLine($wpSave ,Round($playerX,2))
FileWriteLine($wpSave ,Round($playerY,2))
FileWriteLine($wpSave ,Round($playerZ,2))
FileClose($wpSave)
_toolTip("WayPoint: "&Round($playerX,0)&" - "&Round($playerY,0)&" - "&Round($playerZ,0)&" added")
EndFunc

Func readWP()
$countMax=0
$count = 1
$openFile = GuiCtrlRead($wpFileInput)
$readWPfile = FileOpen($openFile, 0)

While 1
$x1 = FileReadLine($readWPfile,$count)

if $x1 = "" Then
$count = 1
ExitLoop
EndIf

If @error = -1 Then ExitLoop
$count = $count +1
$countMax = $countMax +1
$x2 = FileReadLine($readWPfile,$count)
$count = $count +1
$countMax = $countMax +1
$x3 = FileReadLine($readWPfile,$count)
$count = $count +1
$countMax = $countMax +1


Wend
FileClose($readWPfile)


$openFile = GuiCtrlRead($wpFileInput)
$readWPfile = FileOpen($openFile, 0)

While 1

$x1 = FileReadLine($readWPfile,$count)

if $x1 = "" Then

$count = 1
ExitLoop
EndIf

If @error = -1 Then ExitLoop

$wpField[$count-1] = $x1

$count = $count +1

$x2 = FileReadLine($readWPfile,$count)
$wpField[$count-1] = $x2

$count = $count +1

$x3 = FileReadLine($readWPfile,$count)
$wpField[$count-1] = $x3

$count = $count +1




Wend
_toolTip("Waypoints loaded ... "&$countMax/3&" found" )
FileClose($readWPfile)

EndFunc

Func getCredits()
return @LF&""&@LF &"developed by: Plany, Unknown"
EndFunc

Func calcTime($nep)
$ntime = _TimeGetStamp() - $timeDiff
$tmpMep = PlayerMaxEP()
$tmpCep = playerCurrectEP()
$timeToLevelUp =(($tmpMep - $tmpCep) / $nep ) * $ntime
$newTime = Round(($timeToLevelUp/60)/60,2)
if($lastTime <> 0) Then
if($newTime > $lastTime) Then
$difftime = $newTime - $lastTime
$avgTime = $difftime + $lastTime
Elseif($lastTime > $newTime) Then
$difftime = $lastTime - $newTime
$avgTime = $difftime + $newTime
EndIf
$lastTime = $newTime
Else
$lastTime = $newTime
$avgTime = $newTime;
EndIf
GUICtrlSetData($TimeCount, timeToHuman($avgTime))
EndFunc

;#################################################
;navigate functions
;#################################################


Func calcDist($xa,$ya)

return sqrt( ($xa-PlayerXPos())^2 + ($ya-PlayerYPos())^2 )

EndFunc

Func _switchRotate($target, $now)
if($target < 0 And $now < 0) Then
if($target < $now) Then
$rot_down = "d down"
$rot_up = "d up"
Else
$rot_down = "a down"
$rot_up = "a up"
EndIf
ElseIf($target > 0 And $now < 0) Then
$tc = (360 - ($now * -1)) - $target
if($tc > 180) Then
$rot_down = "a down"
$rot_up = "a up"
Else
$rot_down = "d down"
$rot_up = "d up"
EndIf
ElseIf($target < 0 And $now > 0) Then
$tt = (360 - ($target * -1)) - $now
if($tt > 180) Then
$rot_down = "d down"
$rot_up = "d up"
Else
$rot_down = "a down"
$rot_up = "a up"
EndIf
ElseIf($target > 0 And $now > 0) Then
_toolTip("4")
if($target > $now) Then
$rot_down = "a down"
$rot_up = "a up"
Else
$rot_down = "d down"
$rot_up = "d up"
EndIf
Else
$rot_down = "a down"
$rot_up = "a up"
EndIf


EndFunc

Func walkPoints()

while $i < ($countMax-1)

_toolTip("Move to waypoint "&($i/3)+1)
$xCoord=$wpField[$i]
$yCoord=$wpField[$i+1]
$zCoord=$wpField[$i+2]
$i=$i+3
$playerXcoord = PlayerXPos()
$playerYcoord = PlayerYPos()
$playerZcoord = PlayerZPos()
$diffY = Round($yCoord - $playerYcoord,2)
$diffX = Round($xCoord - $playerXcoord,2)

if $diffX > 0 and $diffY > 0 Then
$angle = ATan($diffY/$diffX)
$angle = ($angle * 180.0 )/ $pi
$gameRotationAngle = (180 -$angle)
$gameRotationAngle = Round($gameRotationAngle,2)
WinActivate("AION Client")
WinWaitActive("AION Client")
Sleep(100)

$maxAngle = $gameRotationAngle + 3
If $maxAngle > 180 Then
$maxAngle = 180
EndIf
$nowAng = GetPlayerPos()
_switchRotate($gameRotationAngle, $nowAng)
While ($gameRotationAngle - 3) > $nowAng Or ($maxAngle) < $nowAng
Send("{"&$rot_down&"}")
$nowAng = GetPlayerPos()
WEnd
Send("{"&$rot_up&"}")


$Distance = calcDist($xCoord,$yCoord)
while $Distance > 2
$Distance = calcDist($xCoord,$yCoord)
Send("{w down}")
WEnd
Send("{w up}")

EndIf

if $diffX > 0 and $diffY < 0 Then
$angle = ATan($diffY/$diffX)
$angle = ($angle * 180.0 )/ $pi
$gameRotationAngle = (-180 -$angle)
$gameRotationAngle = Round($gameRotationAngle,2)
WinActivate("AION Client")
WinWaitActive("AION Client")
Sleep(100)

$minAngle = $gameRotationAngle - 3
If $minAngle < -180 Then
$minAngle = -179.99
EndIf
$nowAng = GetPlayerPos()
_switchRotate($gameRotationAngle, $nowAng)
While ($gameRotationAngle + 3) < $nowAng Or ($minAngle) > $nowAng
Send("{"&$rot_down&"}")
$nowAng = GetPlayerPos()
WEnd
Send("{"&$rot_up&"}")



$Distance = calcDist($xCoord,$yCoord)
while $Distance > 2
$Distance = calcDist($xCoord,$yCoord)
Send("{w down}")
WEnd
Send("{w up}")
EndIf

if $diffX < 0 and $diffY < 0 Then
$angle = ATan($diffY/$diffX)
$angle = ($angle * 180.0 )/ $pi
$gameRotationAngle = (0 -$angle)
$gameRotationAngle = Round($gameRotationAngle,2)
WinActivate("AION Client")
WinWaitActive("AION Client")
Sleep(100)

$minAngle = $gameRotationAngle + 3
If $minAngle > 0 Then
$minAngle = 0.1
EndIf
$nowAng = GetPlayerPos()
_switchRotate($gameRotationAngle, $nowAng)
While ($gameRotationAngle - 3) > $nowAng Or ($minAngle) < $nowAng
Send("{"&$rot_down&"}")
$nowAng = GetPlayerPos()
WEnd

Send("{"&$rot_up&"}")



$Distance =calcDist($xCoord,$yCoord)
while $Distance > 2
$Distance = calcDist($xCoord,$yCoord)
Send("{w down}")
WEnd
Send("{w up}")

EndIf

if $diffX < 0 and $diffY > 0 Then
$angle = ATan($diffY/$diffX)
$angle = ($angle * 180.0 )/ $pi
$gameRotationAngle = (0 -$angle)
$gameRotationAngle = Round($gameRotationAngle,2)
WinActivate("AION Client")
WinWaitActive("AION Client")
Sleep(100)

$minAngle = $gameRotationAngle - 3
If $minAngle < 0 Then
$minAngle = 0
EndIf

$nowAng = GetPlayerPos()
_switchRotate($gameRotationAngle, $nowAng)
While ($gameRotationAngle + 3) < $nowAng Or ($minAngle) > $nowAng
Send("{"&$rot_down&"}")
$nowAng = GetPlayerPos()
WEnd
Send("{"&$rot_up&"}")


$Distance = calcDist($xCoord,$yCoord)
while $Distance > 2
$Distance = calcDist($xCoord,$yCoord)
Send("{w down}")
WEnd
Send("{w up}")
EndIf
$killed =0

$killed = KillEnemy()
if $killed = 1 Then
$i = $i-3

EndIf
If $Run = False Then ExitLoop ;neu Exit Loop wenn HotKey "F5" gedrückt wurde
WEnd

$i=0

EndFunc

;#################################################
; unix Timestamp / useable Function
;#################################################

Func timeToHuman($time)
$st = Round($time,0)
$mi = (Round($time,2) - $st)* 100
if($mi < 0) Then
$mi = $mi * -1
EndIf
return $st&"H "&Round($mi)&"M"
EndFunc

Func _TimeGetStamp()
Local $av_Time
$av_Time = DllCall('CrtDll.dll', 'long:cdecl', 'time', 'ptr', 0)
If @error Then
SetError(99)
Return False
EndIf
Return $av_Time[0]
EndFunc


Func _DecimalToHex($hx_dec, $hx_length = 6)

If IsInt($hx_dec) = 0 Then
SetError(1)
MsgBox(0,"Error","Wrong input, try again ...")
Return ""
EndIf
Local $ret = "", $Ii, $hx_tmp, $hx_max
If $hx_dec < 4294967296 Then
If $hx_length < 9 Then Return Hex($hx_dec, $hx_length)
If $hx_length = 21 Then
$ret = Hex($hx_dec)
While StringLeft($ret, 1) = "0"
$ret = StringMid($ret, 2)
WEnd
Return $ret
EndIf
EndIf
For $Ii = $hx_length - 1 To 0 Step -1
$hx_max = 16 ^ $Ii - 1
If $ret = "" And $hx_length = 21 And $hx_max > $hx_dec Then ContinueLoop
$hx_tmp = Int($hx_dec/($hx_max+1))
If $ret = "" And $hx_length = 21 And $Ii > 0 And $hx_tmp = 0 Then ContinueLoop
;$ret &= StringMid($HX_REF, $hx_tmp+1, 1)
$hx_dec -= $hx_tmp * ($hx_max + 1)
Next
$ret=String($ret)
If $hx_length < 21 And StringLen($ret) < $hx_length Then SetError(1)
Return $ret
EndFunc ;==>_DecToHex()



;#################################################
;gui loop
;#################################################


While 1
$msg = GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
Exit
Case $buttonSave
saveKeys()
Case $buttonAddWayPoint
OpenAionMemory()
addWP()
Case $buttonOpenWayPoint
readWP()
Case $buttonRun
$Run = True
OpenAionMemory()
ReadMemValues()
while $Run = True
walkPoints()
WEnd
EndSwitch
WEnd

;0 4 8 C hex 4bit jumps
;For $i = 9361000 To 9369000
; GUICtrlSetData($status,"SCAN VAR "&$i)
; $var = MemReadDLL(_DecimalToHex($i))
; if( Round($var,2) > 1000 And Round($var,2) < 6900000) Then
; _FileWriteToLine("mem.txt",_DecimalToHex($i)&" = "&Round($var,2))
; EndIf
;Next
bluebone is offline  
Thanks
1 User
Old   #222
 
elite*gold: 0
Join Date: May 2008
Posts: 33
Received Thanks: 3
Also geht er nicht mehr komplett aus, sonder hält nur noch an auf F5 ?
Das ist in der tat praktisch =) aber ich denke ich werde auf die version 0.9 warten =) Da ich nicht selber in den Data Datein was verändenr möchste. xD
Ich habe jetzt irgendwie eine Einstellung gefunden das es geht wie es soll.

Sonst noch was ...

Mir ist aufgefallen das es kleinere Mängel gibt, k.p ob das schon gesagt worden ist aber ich erwähne es einfach nochmal.

- Der Bot lootet nicht immer ... erst habe ich gedacht es liegt an der REG ... das er sich halt erst reggen möchte und dann looten aber er lootet auch manchmal vor dme reg und lootet manchmal nicht wenner noch 80% HP hat er tuts einfach nicht und rennt weiter. Ist das schon bekannt ?

- Einstellungen ?
Irgendwie habe ich es noch nicht ganz begriffen
DA ist Doppelte Attake ... oky aber was genau bringt das drückt er dann 2 mal die attake ? Was ist wenns 3 Stufen der Kombo gibt ? Und was taugen diese zahlen ... ich habe einmal bei castzeit 0 eingegeben weil es keine castzeit gibt bei meinem skill da hat er iwie nicht gesagt und dann habe ich diese auf 100 gesetzt dann ging es :/ ich checks nicht wikrlich cooldown is ja verständlich da habe ich 12 und 18 sekunden drin und bei meinen skills wo er normal angreift 0 ...

Stuff?
Wird es eine Version geben wo man beides minimiren kann und was anderes an seinem rechner unternehmen kann? Momentan muss ich immer am Laptop sitzten und hier schrieben in der zeit wo mein bot läuft
Wäre sau praktisch sowas zu haben Oder sogar ncoh besser wie ein RagnarokBOT (OpenKore) der ganz ohne das eigentliche Spiel laufen kann. Sowas ist das beste.
Aja und wird er was schrieben können wenn er angeshrieben wird ? Oder lasst ihr das raus ?
Calcifer is offline  
Old   #223
 
elite*gold: 0
Join Date: Oct 2009
Posts: 6
Received Thanks: 1
also sorry falls das thema bereits schon diskutiert wurde habe es zumindest nicht direkt gefunden auf den 22 seiten...

aber warum ist das so eingestellt, dass nach jedem kill zum WP gelaufen werden muss.
kann man nicht einfach nochmal TAB wenn mob down ist und so immer die nächsten mobs killen bis spot leer ist dann erst zum WP?
das würde immens den grindspeed erhöhen und nicht so offensichtlich nach bot aussehen wie es jetzt gerade ist.

tyall
dawn4000 is offline  
Old   #224
 
elite*gold: 0
Join Date: Oct 2009
Posts: 7
Received Thanks: 0
Quote:
Originally Posted by Calcifer View Post
Und was taugen diese zahlen ... ich habe einmal bei castzeit 0 eingegeben weil es keine castzeit gibt bei meinem skill da hat er iwie nicht gesagt und dann habe ich diese auf 100 gesetzt dann ging es :/ ich checks nicht wikrlich cooldown is ja verständlich da habe ich 12 und 18 sekunden drin und bei meinen skills wo er normal angreift 0 ...
Das mit der Casttime hat mit der Latenz zu tun, soweit ich weiß. Bei dem Bot muss die Verzögerung vom Server angegeben werden damit die Attacke korrekt ausgeführt wird, deshalb eine Castzeit eingeben. Sollte das nicht stimmen bitte verbessern

Quote:
Originally Posted by Calcifer View Post
Stuff?
Wird es eine Version geben wo man beides minimiren kann und was anderes an seinem rechner unternehmen kann?
Das würde ich mir auch wünschen, ich meine hier stand schon etwas wegen dem Backgroundmode.

Wäre es auch möglich ein Elite-Ignore einzubauen? Das er z.B. nicht in Altgard Gulux ins Target nimmt.
hlx is offline  
Old   #225
 
elite*gold: 0
Join Date: Oct 2008
Posts: 314
Received Thanks: 160
Quote:
Originally Posted by dawn4000 View Post
also sorry falls das thema bereits schon diskutiert wurde habe es zumindest nicht direkt gefunden auf den 22 seiten...

aber warum ist das so eingestellt, dass nach jedem kill zum WP gelaufen werden muss.
kann man nicht einfach nochmal TAB wenn mob down ist und so immer die nächsten mobs killen bis spot leer ist dann erst zum WP?
das würde immens den grindspeed erhöhen und nicht so offensichtlich nach bot aussehen wie es jetzt gerade ist.

tyall
das habe ich deshalb so gemacht da er ansonsten zu weit vom wegpunkt abkommen kann und somit leichter hängen bleiben/den wegpunkt verfehlen kann.

bezüglich des backgroundmodes: ich arbeite daran, leider hab ich noch keine möglichkeit gefunden {down/up} keys an inaktive fenster zu schicken.

bezüglich der casttime: zeit wie lange das ausführen des zaubers braucht + delay


unknown661 is offline  
Reply



« Previous Thread | Next Thread »



All times are GMT +2. The time now is 23:39.


Powered by vBulletin®
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy
Copyright ©2017 elitepvpers All Rights Reserved.