[GWCA] - Tutorial Bot Package

03/04/2010 14:24 ¤Rikul¤#1
Soo, alles nochmal überarbeitet und funktioniert nun auch mit der neuen Rev.

[Only registered and activated users can see links. Click Here To Register...]

[Banditen]:
Stadt: Aschfurt Abtei
Klasse: E/Mö bzw. Mö/E
Stufe: mind. 4
Benötigte Quests: [Only registered and activated users can see links. Click Here To Register...] und [Only registered and activated users can see links. Click Here To Register...]
Skills: 1. Feuersturm ; 2. Schützende Hände ; 3. Symbol des Zorns

[Skale]:
Stadt: Fort Ranik
Klasse: E/X bzw. X/E
Stufe: mind. 8
Skills: 1. Feuersturm

[Gargoyles]:
Stadt: Barradins Anwesen
Klasse: im Prinzip egal, Empfehlung: Krieger
Waffe: mind. 12 dmg

[Level]:
Stadt: Ascalon
Stufe: mind. 2
Waffe: Bogen

Verkauft werden immer nur Rucksack + Gürteltasche.
Auswählen: Nächster Gegner ist auf "TAB", da Cmd($CA_TargetNextFoe) nicht funktionierte.
Verbesserungsvorschläge o.ä. ist erwünscht.

Hier zum Schluss noch der Source, jedoch ist der Verkauf gefixt worden und funktioniert jetzt normalerweise:
PHP Code:
#include <GWCAConstants.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

Global $Skill_FS 1
Global $Skill_SH 2
Global $Skill_SoW 3
Global $Begin
Global $TLoad "4000"
Global $Paused

#Region ### START Koda GUI section ### Form=
$cGUI GUICreate("Tutorial Bot Package"266110246147)
GUISetBkColor(0x800000)
$Group1 GUICtrlCreateGroup("CharacterName"104515344)
GUICtrlCreateInput(""1122113719BitOR($ES_CENTER,$ES_AUTOHSCROLL))
GUICtrlSetColor(-10xFFFFFF)
GUICtrlSetBkColor(-10x000000)
GUICtrlCreateGroup("", -99, -9911)
$BanditenRadio GUICtrlCreateRadio("Banditen Bot"888917)
$SkalRadio GUICtrlCreateRadio("Skal Bot"8348917)
$GargoyleRadio GUICtrlCreateRadio("Gargoyle Bot"8608917)
$LevelRadio GUICtrlCreateRadio("LvL Bot"8868917)
$StartButton GUICtrlCreateButton("Start"104597341$WS_GROUP)
$ExitButton GUICtrlCreateButton("Exit"184597341$WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
        
Case $GUI_EVENT_CLOSE
            
Exit
        Case 
$StartButton
            
If GUICtrlRead ($BanditenRadio) = 1 Then
                RecomeBanditen
()
                While 
1
                    Banditen
()
                
WEnd
            
ElseIf GUICtrlRead ($SkalRadio) = 1 Then
                RecomeSkale
()
                While 
1
                    Skale
()
                
WEnd
            
ElseIf GUICtrlRead ($GargoyleRadio) = 1 Then
                
While 1
                    Gargoyles
()
                
WEnd
            
ElseIf GUICtrlRead ($LevelRadio) = 1 Then
                RecomeLevel
()
                While 
1
                    Level
()
                
WEnd
            
EndIf
        Case 
$ExitButton
            ToggleExit
()
    EndSwitch
WEnd

Func RecomeBanditen
()
    
MoveToEx(-11495.55, -6230.97)
    
MoveToEx(-11380.07, -6230.28)
    
LoadOut()
    
MoveToEx(-11086.20, -6230.11)
    
LoadOut()
EndFunc

Func Banditen
()
    
$CBType "int"
    
CmdCB($CA_FindEmptySlot 2)
    
$EmptySlot $CBVar[1] - 1
    
If $EmptySlot >= 1 Then
        MoveToEx
(-11453.56, -6377.42)
        
$Spence GetNearestAgentToCoords(24410.03, -10705.75)
        
Cmd($CA_GoNPC$Spence)
        
SleepRandom10001500 ))
        
Sell()
    EndIf
    
MoveToEx(-11380.07, -6230.28)
    
LoadOut()
    
MoveToEx(-8445.58, -6201.02)
    
MoveToEx(-6256.31, -2917.05)
    
CmdCB($CA_TargetNearestFoe)
    
SleepRandom100150 ))
        
UseSkillEx($Skill_FS, -1)
        
UseSkillEx($Skill_SH, -1)
        
UseSkillEx($Skill_SoW, -1)
    Do
        
$HP CmdCB($CA_GetHp, -1)
        
SleepRandom100120 ))
    
Until $HP[0] = 0
    Sleep
Random15002000 ))
    
PickupItems 7250 )
    
Resign()
    
LoadIn()
EndFunc

Func RecomeSkale
()
    If 
CheckArea 23127.0013963.00 ) = 1 Then
        MoveToEx
(23054.1011521.26)
        
MoveToEx(22873.0110456.56)
        
MoveToEx(22636.239233.00)
        
MoveToEx(22614.227334.20)
        
LoadOut()
    ElseIf 
CheckArea 25369.7514328.27 ) = 1 Then
        MoveToEx
(23063.8613583.41)
        
MoveToEx(23054.1011521.26)
        
MoveToEx(22873.0110456.56)
        
MoveToEx(22636.239233.00)
        
MoveToEx(22614.227334.20)
        
LoadOut()
    ElseIf 
CheckArea 22218.0011409.00 ) = 1 Then
        MoveToEx
(22746.6811463.84)
        
MoveToEx(23034.4211234.17)
        
MoveToEx(22701.259923.26)
        
MoveToEx(22609.049107.73)
        
MoveToEx(22614.227334.20)
        
LoadOut()
    Else
        
MoveToEx(22663.949970.94)
        
MoveToEx(22614.227334.20)
        
LoadOut()
    EndIf
EndFunc

Func Skale
()
    
$CBType "int"
    
CmdCB($CA_FindEmptySlot 2)
    
$EmptySlot $CBVar[1] - 1
    
If $EmptySlot >= 1 Then
        MoveToEx
(24505.1710412.09)
        
$Gram GetNearestAgentToCoords(24505.1710412.09)
        
Cmd($CA_GoNPC$Gram)
        
SleepRandom10001500 ))
        
Sell()
    EndIf
    If 
CheckArea 22798.0010205.00 ) = 1 Then
        $WayRnd 
Random 13)
        If 
$WayRnd 1 Then
            MoveToEx
(22479.359664.65)
            
MoveToEx(22430.228904.71)
            
MoveToEx(22424.147340.52)
        ElseIf 
$WayRnd 2 Then
            MoveToEx
(22717.939580.15)
            
MoveToEx(22685.858866.28)
            
MoveToEx(22707.797373.52)
        ElseIf 
$WayRnd 3 Then
            MoveToEx
(22560.379640.62)
            
MoveToEx(22509.638830.72)
            
MoveToEx(22556.548100.22)
            
MoveToEx(22544.977386.18)
        EndIf
    Else
        
MoveToEx(22798.0010205.00)
        
MoveToEx(22717.939580.15)
        
MoveToEx(22685.858866.28)
        
MoveToEx(22707.797373.52)
    EndIf
    
MoveToEx(21898.995564.88)
    
MoveToEx(19168.243159.84)
    
MoveToEx(16475.292697.43)
    
MoveToEx(16062.763370.27)
    
MoveToEx(14436.762310.74)
    
MoveToEx(14417.651630.65)
    
MoveToEx(15084.841171.42)
    
MoveToEx(16672.161769.53)
    
MoveToEx(17342.561755.70)
    
MoveToEx(17637.422194.39)
    
UseSkillEx($Skill_SH, -2)
    
SleepRandom150200 ))
    For 
$i 1 To 6 Step 1
        ControlSend 
$sGW"""""{TAB}" )
        
SleepRandom100200 ))
    
Next
    MoveToEx
(17434.882183.13)
    
SleepRandom200250 ))
    
UseSkillEx($Skill_FS, -1)
    Do
        
$HP CmdCB($CA_GetHp, -1)
        
SleepRandom100200 ))
    
Until $HP[0] = 0
    Sleep
Random10501150 ))
    
PickupItems 101400 )
    
Resign()
    
LoadIn()
EndFunc

Func Gargoyles
()
    
MoveToEx(-7011.341427.51)
    
MoveToEx(-7947.671430.92)
    
LoadOut()
    
MoveToEx(-7920.022443.14)
    
MoveToEx(-5423.895666.86)
    
MoveToEx(-5353.228277.59)
    
MoveToEx(-3961.498704.24)
    
MoveToEx(-3153.609152.69)
    
LoadOut()
    
MoveToEx(-7387.0615378.77)
    For 
$i 1 To 8 Step 1
        CmdCB
($CA_TargetNearestFoe)
        
Sleep 175 )
        
CmdCB($CA_Attack, -1)
        Do
            
$HP CmdCB($CA_GetHp, -1)
            
Sleep 200 )
        
Until $HP[0] = 0
    Next
    PickupItems 
43500 )
    
$CBType "int"
    
CmdCB($CA_FindEmptySlot 2)
    
$EmptySlot $CBVar[1] - 1
    
If $EmptySlot >= 1 Then
        Resign
()
        
LoadIn()
        
MoveToEx(-6416.731249.11)
        
$Riley GetNearestAgentToCoords(-6416.731249.11)
        
Cmd($CA_GONPC$Riley)
        
SleepRandom10001500 ))
        
Sell()
    Else
        
MoveToEx(-7277.1015473.53)
        
MoveToEx(-8607.1815310.31)
        
MoveToEx(-10849.9416032.98)
        
LoadOut()
    EndIf
EndFunc

Func RecomeLevel
()
    
MoveToEx(8032.955929.20)
    
MoveToEx(7291.855237.10)
    
LoadOut()
    
MoveToEx(7313.885250.29)
    
LoadOut()
EndFunc

Func Level
()
    
$Begin TimerInit()
    
MoveToEx(7563.8710622.45)
    
MoveToEx(5719.7210663.01)
    
$iQuest GetNearestNPCToCoords(5719.7210663.01)
    
Cmd($CA_GoNPC$iQuest)
    
Sleep 1000 )
    
Cmd($CA_Dialog8400385)
    
Sleep 750 )
    If 
CmdCB($CA_QuestCheck8400385) = 1 Then
        Sleep 
50 )
    Else
        
$iQuest GetNearestNPCToCoords(5719.7210663.01)
        
Cmd($CA_GONPC$iQuest)
        
Sleep 1000 )
        
Cmd($CA_Dialog8400385)
        
Sleep 750 )
    EndIf
    
MoveToEx(7576.2810613.87)
    
MoveToEx(7596.269021.46)
    
MoveToEx(7196.705765.78)
    
MoveToEx(7041.155399.12)
    
LoadOut()
    
MoveToEx(5954.244604.10)
    
Sleep 500 )
    
MoveToEx(4559.055627.33)
    
Sleep 1000 )
    
MoveToEx(3009.136450.57)
    
MoveToEx(87.326708.05)
    
Sleep 1500 )
    
MoveToEx(-3042.379498.23)
    
MoveToEx(-3081.6010946.84)
    
Sleep 1500 )
    
KillCharr()
    
KillCharr()
    
KillCharr()
    
Resign()
    ;
Sleep 2500 )
    
Cmd($CA_QuestAbandon, -1)
    If 
CmdCB($CA_QuestCheck8400385) = 1 Then
        Cmd
($CA_QuestAbandon, -1)
    EndIf
EndFunc

Func KillCharr
()
    
CmdCB($CA_TargetNearestFoe)
    
Sleep 175 )
    
CmdCB($CA_Attack, -1)
    Do
        
Cmd($CA_TargetNextFoe)
        
Sleep200 )
        
$LVL CmdCB($CA_GetLevel,-1)
        
$Diff TimerDiff $Begin )
    
Until $LVL[0] = Not 4 Or $LVL[0] = Not 5 Or $Diff >= 320000
EndFunc

Func Sell
()
    For 
$i 1 To 20 Step 1
        Cmd
($CA_SellItem 1$i)
        
SleepRandom250300 ))
    
Next
    
For $i 1 To 5 Step 1
        Cmd
($CA_SellItem 2$i)
        
SleepRandom250300 ))
    
Next
EndFunc

Func CheckArea
($xValue$yValue)
    
$Area False
    $CBType 
"float"
    
CmdCB($CA_GetCoords, -2)
    
$CurrX $CBVar[0]
    
$CurrY $CBVar[1]
    If (
$CurrX $xValue 250) And ($CurrX $xValue 250) And ($CurrY $yValue 250) And ($CurrY $yValue 250Then
        $Area 
True
    
EndIf
    Return 
$Area
EndFunc

Func Resign
()
    
Cmd($CA_RESIGN)
    Do
        
Sleep(500)
        
CmdCB($CA_GETDEAD)
    
Until $cbVar[0] = True
    
Do
        
Sleep(1000)
        
Cmd($CA_RETURNTOOUTPOST)
        
Sleep(1000)
        
CmdCB($CA_GETMAPLOADING)
    
Until $cbVar[0] = 0
EndFunc

Func ToggleExit
()
    
Cmd($CA_SETENGINEHOOK0)
    Exit 
0
EndFunc

Func TogglePause
()
    
$Paused NOT $Paused
    
While $Paused
        sleep
(100)
        
ToolTip('Script is "Paused"',0,0)
    
WEnd
    ToolTip
("")
EndFunc

Func Loadout
()
    
$cbType "int"
    
Do
        
Sleep(400)
        
CmdCB($CA_GETMAPLOADING)
    
Until $cbVar[0] = 1
    Sleep
($TLoad)
EndFunc

Func LoadIn
()
    
$cbType "int"
    
Do
        
Sleep(400)
        
CmdCB($CA_GETMAPLOADING)
    
Until $cbVar[0] = 0
    Sleep
($TLoad)
EndFunc 
03/04/2010 14:35 Oli_1994#2
hey Rikul sieht ja mal echt nice aus werde es auch mal testen
03/04/2010 16:30 _Vato#3
hmm hab immer ein problem mit dme injecten :(
Kannst du es vielleicht einbauen, dass er es selbst injectet?
03/04/2010 17:11 Frutex#4
Quote:
Originally Posted by LimondaOne View Post
hmm hab immer ein problem mit dme injecten :(
Kannst du es vielleicht einbauen, dass er es selbst injectet?
Yeah!
Guck Stickys -> Alles gut
03/04/2010 17:28 _Vato#5
Quote:
Originally Posted by indisturbalcha View Post
Yeah!
Guck Stickys -> Alles gut
Wer ist Sticky? ;)
03/04/2010 17:49 pr(o*o)wn#6
Quote:
Originally Posted by LimondaOne View Post
Wer ist Sticky? ;)
u made my day :D nice bot!
03/04/2010 18:02 Frutex#7
Quote:
Originally Posted by LimondaOne View Post
Wer ist Sticky? ;)
Wow, Leute geben sich wirklich nicht einmal Mühe zu lesen.
03/04/2010 18:04 Raxe#8
Bei mir funzt der Bot net.
03/04/2010 18:05 Frutex#9
Quote:
Originally Posted by Raxe View Post
Bei mir funzt der Bot net.
Beschreibung deines Problemes?
03/04/2010 18:12 _Vato#10
Quote:
Originally Posted by indisturbalcha View Post
Wow, Leute geben sich wirklich nicht einmal Mühe zu lesen.
ja und?
ist mir doch eig egal wer das ist QQ?
wenn du mir helfen willst, dann tue das, wenn nicht, dann **** und QQ nicht herum? QQ
QQ?
03/04/2010 18:15 Frutex#11
Quote:
Originally Posted by LimondaOne View Post
ja und?
ist mir doch eig egal wer das ist QQ?
wenn du mir helfen willst, dann tue das, wenn nicht, dann **** und QQ nicht herum? QQ
QQ?
Vor allem wer...
Und ich Q.Q gar nicht.
du bist der, der eine Beldeidigung wenn auch mit Sternchen benutzt hat.
Ich denke du solltest dir mal ernsthaft Gedanken machen, wie du dich benimmst.
Mit Sticky meine ich STICKY THREADS.
Da gibt es nämlich das [Only registered and activated users can see links. Click Here To Register...]
03/04/2010 18:19 Raxe#12
Es passiert nichts^^
03/04/2010 18:33 ¤Rikul¤#13
Quote:
Originally Posted by Raxe View Post
Es passiert nichts^^
Das hilft uns natürlich extrem weiter. Hast du die dll injected? Vllt. könntest du uns auch mal beschreiben, wie du vorgehst...
03/04/2010 18:56 -=ColdDeath=-#14
Scan? .... Sieht aber auf jedenfall mal nicht schlecht aus!
03/04/2010 19:04 Raxe#15
Sorry war mein Fehler^^