Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 12:45

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

Advertisement



Nostale LVL Bot Hilfe

Discussion on Nostale LVL Bot Hilfe within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jul 2009
Posts: 492
Received Thanks: 126
Question Nostale LVL Bot Hilfe

Ich versuche schon seid einiger zeit einen lvlbot für nostale zu basteln.
Nur wenn man in einer Input box einträgt wielange und ab wann man schlafen möchte, funktioniert das nicht.Lass ich die werte so wie ich sie eingetragen habe beim Skripten, funktioniert alles, nur wenn ich dort die werte ändere setzt er sich sovort steht wieder auf und das immerwieder.

Hier mein bisheriges Skript:

Code:
#RequireAdmin
$windowname = "NosTale"

$zeit1 = TimerInit() ;---------Sitzen
$zeit2 = TimerInit() ;--------Sammeln
$zeit3 = TimerInit() ;--------Angriff





#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <EditConstants.au3>
#include <GUIConstants.au3>


;Hauptfenster START
#Region ### START Koda GUI section ### Form=C:\Users\Jan\Desktop\AutoIt\Nostale Bot\NosBot vers. 1.2\NosBotfenster.kxf
$NosBotfenster = GUICreate("NosBot Vers. 1.2 By WiiZocker", 362, 389, 192, 124)
GUISetFont(8, 800, 0, "MS Sans Serif")
$Label1 = GUICtrlCreateLabel("NosBot Vers. 1.2 By WiiZocker", 56, 16, 252, 23)
GUICtrlSetFont(-1, 11, 800, 0, "MS Reference Sans Serif")
$Benutzen = GUICtrlCreateGroup("Was soll benutzt werden?", 0, 48, 177, 281)
GUICtrlSetFont(-1, 8, 800, 0, "MS Reference Sans Serif")
$ChkSchlafen = GUICtrlCreateCheckbox("Schlafen", 16, 96, 97, 17)
$ChkSammeln = GUICtrlCreateCheckbox("Aufsammeln", 16, 136, 105, 17)
$ChkSkills = GUICtrlCreateCheckbox("Skills benutzen?", 16, 296, 129, 17)
$Hinweis1 = GUICtrlCreateLabel("X = Wird benutzt", 24, 64, 112, 19)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Einstellungen = GUICtrlCreateGroup("Einstellungen", 176, 48, 185, 281)
GUICtrlSetFont(-1, 8, 800, 0, "MS Reference Sans Serif")
$BtnSchlafen = GUICtrlCreateButton("Schlafen", 184, 88, 171, 33, 0)
$BtnSammeln = GUICtrlCreateButton("Aufsammeln", 184, 128, 171, 33, 0)
$BtnSkills = GUICtrlCreateButton("Skills", 184, 288, 171, 33, 0)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Start = GUICtrlCreateButton("START", 88, 336, 171, 49, 0)
GUICtrlSetFont(-1, 10, 800, 0, "MS Reference Sans Serif")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
;Hauptfenster ENDE


;Hinsetzenfenster START
#Region ### START Koda GUI section ### Form=C:\Users\Jan\Desktop\AutoIt\Nostale Bot\NosBot vers. 1.2\Hinsetzenfenster.kxf
$Hinsetzenfenster = GUICreate("Hinsetzenfenster", 587, 59, 191, 372)
$Sitzen1 = GUICtrlCreateLabel("Nach", 8, 16, 40, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Reference Sans Serif")
$AbWannSitzen = GUICtrlCreateInput("10000", 48, 16, 57, 21)
$Sitzen2 = GUICtrlCreateLabel("Millisekunden für", 112, 16, 126, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Reference Sans Serif")
$WielangeSitzen = GUICtrlCreateInput("20000", 240, 16, 57, 21)
$Sitzen3 = GUICtrlCreateLabel("Millisekunden hinsetzen.", 304, 16, 182, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Reference Sans Serif")
$Schliessen3 = GUICtrlCreateButton("Schließen", 488, 8, 91, 41, 0)
GUISetState(@SW_HIDE)
#EndRegion ### END Koda GUI section ###
;Hinsetzenfenster ENDE

;Aufsammelfenster START
#Region ### START Koda GUI section ### Form=C:\Users\Jan\Desktop\AutoIt\Nostale Bot\NosBot vers. 1.2\Aufsammelfenster.kxf
$Aufsammelfenster = GUICreate("Aufsammeln", 507, 50, 507, 275)
$AufsammelLabel1 = GUICtrlCreateLabel("Alle", 8, 16, 31, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Reference Sans Serif")
$WannSammeln = GUICtrlCreateInput("2500", 40, 16, 41, 21)
$AufsammelLabel2 = GUICtrlCreateLabel("Millisekunden mit der Taste", 88, 16, 202, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Reference Sans Serif")
$AufsammelTaste = GUICtrlCreateInput("x", 296, 16, 17, 21)
$AufsammelLabel3 = GUICtrlCreateLabel("Aufsammeln.", 320, 16, 100, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Reference Sans Serif")
$Schliessen2 = GUICtrlCreateButton("Schließen", 424, 8, 75, 33, 0)
GUISetState(@SW_HIDE)
#EndRegion ### END Koda GUI section ###
;Aufsammelfenster ENDE


;Skillfenster START
#Region ### START Koda GUI section ### Form=c:\users\jan\desktop\autoit\nostale bot\nosbot vers. 1.2\skillfenster.kxf
$Skillfenster = GUICreate("Skills", 282, 472, 402, 227)
$Group1 = GUICtrlCreateGroup("Tasten", 0, 8, 137, 401)
GUICtrlSetFont(-1, 8, 800, 0, "MS Reference Sans Serif")
$Taste0 = GUICtrlCreateCheckbox("Taste-0", 56, 392, 73, 17)
$Taste1 = GUICtrlCreateCheckbox("Taste-1", 56, 32, 73, 17)
$Taste2 = GUICtrlCreateCheckbox("Taste-2", 56, 72, 73, 17)
$Taste3 = GUICtrlCreateCheckbox("Taste-3", 56, 112, 73, 17)
$Taste5 = GUICtrlCreateCheckbox("Taste-5", 56, 192, 73, 17)
$Taste6 = GUICtrlCreateCheckbox("Taste-6", 56, 232, 73, 17)
$Taste4 = GUICtrlCreateCheckbox("Taste-4", 56, 152, 73, 17)
$Taste7 = GUICtrlCreateCheckbox("Taste-7", 56, 272, 73, 17)
$Taste8 = GUICtrlCreateCheckbox("Taste-8", 56, 312, 73, 17)
$Taste9 = GUICtrlCreateCheckbox("Taste-9", 56, 352, 73, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("Zeit", 136, 8, 145, 401)
GUICtrlSetFont(-1, 8, 800, 0, "MS Reference Sans Serif")
$Label1 = GUICtrlCreateLabel("Alle", 144, 32, 29, 19)
$Label2 = GUICtrlCreateLabel("Millisek", 224, 32, 53, 19)
$Input1 = GUICtrlCreateInput("10000", 176, 32, 49, 23)
$Label6 = GUICtrlCreateLabel("Alle", 144, 272, 29, 19)
$Label7 = GUICtrlCreateLabel("Alle", 143, 313, 29, 19)
$Label10 = GUICtrlCreateLabel("Alle", 145, 350, 29, 19)
$Label11 = GUICtrlCreateLabel("Alle", 143, 387, 29, 19)
$Label3 = GUICtrlCreateLabel("Alle", 144, 232, 29, 19)
$Label4 = GUICtrlCreateLabel("Alle", 144, 192, 29, 19)
$Label5 = GUICtrlCreateLabel("Alle", 144, 152, 29, 19)
$Label8 = GUICtrlCreateLabel("Alle", 144, 112, 29, 19)
$Label9 = GUICtrlCreateLabel("Alle", 144, 72, 29, 19)
$Input2 = GUICtrlCreateInput("12000", 176, 72, 49, 23)
$Input3 = GUICtrlCreateInput("14000", 176, 112, 49, 23)
$Input4 = GUICtrlCreateInput("16000", 176, 152, 49, 23)
$Input5 = GUICtrlCreateInput("18000", 176, 192, 49, 23)
$Input6 = GUICtrlCreateInput("20000", 176, 232, 49, 23)
$Input7 = GUICtrlCreateInput("22000", 176, 272, 49, 23)
$Input8 = GUICtrlCreateInput("24000", 176, 312, 49, 23)
$Input0 = GUICtrlCreateInput("28000", 176, 384, 49, 23)
$Input9 = GUICtrlCreateInput("26000", 176, 352, 49, 23)
$Label12 = GUICtrlCreateLabel("Millisek", 224, 72, 53, 19)
$Label13 = GUICtrlCreateLabel("Millisek", 224, 112, 53, 19)
$Label14 = GUICtrlCreateLabel("Millisek", 224, 152, 53, 19)
$Label15 = GUICtrlCreateLabel("Millisek", 224, 192, 53, 19)
$Label16 = GUICtrlCreateLabel("Millisek", 224, 232, 53, 19)
$Label17 = GUICtrlCreateLabel("Millisek", 224, 272, 53, 19)
$Label18 = GUICtrlCreateLabel("Millisek", 224, 312, 53, 19)
$Label19 = GUICtrlCreateLabel("Millisek", 224, 352, 53, 19)
$Label20 = GUICtrlCreateLabel("Millisek", 224, 384, 53, 19)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Schliessen1 = GUICtrlCreateButton("Schließen", 56, 440, 171, 25, 0)
$Hinweis2 = GUICtrlCreateLabel("X = Wird benutzt", 78, 417, 126, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Reference Sans Serif")
GUISetState(@SW_HIDE)
#EndRegion ### END Koda GUI section ###
;Skillfenster ENDE

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
			
		;Haupt/Schlaffenster START
		
		Case $BtnSchlafen
			GUISetState(@SW_SHOW, $Hinsetzenfenster)
			
			Case $ChkSchlafen
			;UNDEFINIERT!!!
			
			Case $ChkSammeln
			;UNDEFINIERT!!!
			
			Case $ChkSkills
			;UNDEFINIERT!!!
			
		
			
		
			
			
		Case $Schliessen3
			GUISetState(@SW_HIDE, $Hinsetzenfenster)
		;Haupt/Schlaffenster ENDE
			
			
			
			
			
		;Sammelfenster START
		Case $BtnSammeln
			GUISetState(@SW_SHOW, $Aufsammelfenster)
			
		Case $Schliessen2
			GUISetState(@SW_HIDE, $Aufsammelfenster)
		;Sammelfenster ENDE
			
			
			
			
		;Skillfenster START
		Case $BtnSkills
			GUISetState(@SW_SHOW, $Skillfenster)
			
		Case $Schliessen1
			GUISetState(@SW_HIDE, $Skillfenster)
		;Skillfenster ENDE
		
		
		;Hauptskript START
		
		Case $Start
		$DL = 0 ;durchlauf
	

While 2
	

	
	If(ZeitZumSitzen()) Then
              Sitzen()
		  EndIf

    If(ZeitZumSammeln()) Then
		      Sammeln()
			EndIf

           If(Angriff()) Then
			Angreifen()
		  EndIf


$DL = $DL + 1


WEnd
		
		;Hauptskript ENDE
	EndSwitch
WEnd


;---------Sitzen:

Func ZeitZumSitzen()
 If TimerDiff($zeit1 >= GUICtrlRead($AbWannSitzen)) Then
         return True
    Else
        return False
    EndIf
EndFunc

Func Sitzen()
	
	 ControlSend($windowname, '', '', "c")
     Sleep($WielangeSitzen)
	 ControlSend($windowname, '', '', "c")
	 $zeit1 = TimerInit()
EndFunc


;--------Sammeln:

Func ZeitZumSammeln()
 If TimerDiff($zeit2 >= GUICtrlRead($WannSammeln)) Then
         return True
    Else
        return False
    EndIf
EndFunc


Func Sammeln()
	ControlSend($windowname, '', '', GUICtrlRead($AufsammelTaste))
	$zeit2 = TimerInit()
	 EndFunc


;--------Angriff:

Func Angriff()
 If TimerDiff($zeit3 <= GUICtrlRead($AbWannSitzen)) Then
         return True
    Else
        return False
    EndIf
EndFunc

Func Angreifen()
	ControlSend($windowname, '', '', " ")
	 Sleep(150)
	 ControlSend($windowname, '', '', " ")
	$zeit3 = TimerInit()
	EndFunc
Ich hoffe das mir jemand helfen kann.
WiiZocker is offline  
Old 07/16/2010, 20:47   #2
 
elite*gold: 0
Join Date: May 2010
Posts: 39
Received Thanks: 4
das es sich manche leute so schwer tun o.o

dein script ist zu lang !
das geht doch bestimmt einfacher ! xD

Übersicht = 0 ;nur beim ersten blick hat man ja schon kb das zu lesen xD

schaff da mal ordnung dann wirst du eher hilfe bekommen xD
DBShinigami is offline  
Old 07/16/2010, 21:41   #3
 
elite*gold: 0
Join Date: Jul 2009
Posts: 492
Received Thanks: 126
Denn hier mal das was ich für wichtig halte^^
Hoffe das es so übersichtlicher ist, sonst kopiere den Code von oben mal in Scite rein, vllt ist es so übersichtlicher.

Code:
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <EditConstants.au3>
#include <GUIConstants.au3>

$windowname = "NosTale"
$zeit1 = TimerInit() ;---------Sitzen


;Hinsetzenfenster START
#Region ### START Koda GUI section ### Form=C:\Users\Jan\Desktop\AutoIt\Nostale Bot\NosBot vers. 1.2\Hinsetzenfenster.kxf
$Hinsetzenfenster = GUICreate("Hinsetzenfenster", 587, 59, 191, 372)
$Sitzen1 = GUICtrlCreateLabel("Nach", 8, 16, 40, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Reference Sans Serif")
$AbWannSitzen = GUICtrlCreateInput("10000", 48, 16, 57, 21)
$Sitzen2 = GUICtrlCreateLabel("Millisekunden für", 112, 16, 126, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Reference Sans Serif")
$WielangeSitzen = GUICtrlCreateInput("20000", 240, 16, 57, 21)
$Sitzen3 = GUICtrlCreateLabel("Millisekunden hinsetzen.", 304, 16, 182, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Reference Sans Serif")
$Schliessen3 = GUICtrlCreateButton("Schließen", 488, 8, 91, 41, 0)
GUISetState(@SW_HIDE)
#EndRegion ### END Koda GUI section ###
;Hinsetzenfenster ENDE


While 2

	If(ZeitZumSitzen()) Then
              Sitzen()
		  EndIf

$DL = $DL + 1
WEnd


Func ZeitZumSitzen()
 If TimerDiff($zeit1 >= GUICtrlRead($AbWannSitzen)) Then
         return True
    Else
        return False
    EndIf
EndFunc

Func Sitzen()
	
	 ControlSend($windowname, '', '', "c")
     Sleep($WielangeSitzen)
	 ControlSend($windowname, '', '', "c")
	 $zeit1 = TimerInit()
EndFunc
WiiZocker is offline  
Old 07/16/2010, 21:56   #4
 
elite*gold: 0
Join Date: May 2010
Posts: 39
Received Thanks: 4
Quote:
Originally Posted by WiiZocker View Post
...kopiere den Code von oben mal in Scite rein, vllt ist es so übersichtlicher.
auch wieder wahr ^^

tauchen fehler meldungen auf ?
wenn ja in welcher Linie ?

ich nehme mal an das da absichtlich bei der Func Angriff was fehlt oder ? ^^

übrigens
While 1 nicht While 2 , weil es die erste schleife ist , ist logischer obs direkten einfluss hat weiß ich nicht habs nie probiert, wozu auch ? ^^


hab einen fehler entdeckt...
ich nehme mal an das er keine befehle an den clienten sendet...
der grund ist
ControlSend($windowname, '', '', "c")
da darf kein $(i-was) sein sonst geht es nicht
hab das auch schon versucht, als ich dann einfach den fensternamen direkt reingeschrieben habe ging es ^^
DBShinigami is offline  
Old 07/17/2010, 00:18   #5
 
elite*gold: 0
Join Date: Jul 2009
Posts: 492
Received Thanks: 126
Hmm normalerweise geht das mit der $windowname, hat netmax tut mir beigebracht...
Und mit der while weiß ich auch ned, ich stell es gleich ma um.
Und xD
Nein, es kommen keine fehler, sonst hätt ich ihn wohl gefunden.^^

Er lvlt einfach nicht wenn man die schlafzeit ändert.

EDIT: Habe alles so geändert wie du es geschrieben hast, hat mir nix gebracht, dafür dachte ich,
vllt macht das Sleep($WielangeSitzen) das das programm steht und somit nicht angreift.Daraufhin habe ich einen Timer eingebaut aber trotzdem funktioniert nix.

Hier mal das skript wo ich was geändert habe, es sind nur brauchstücke^^
Code:
$zeit4 = TimerInit() ;---------WielangeSitzen

;Hier wäre iwo die Gui^^


Case $Start
		$DL = 0 ;durchlauf
	

While 1
	

	
	If(ZeitZumSitzen()) Then
              Sitzen()
		  EndIf

    If(ZeitZumSammeln()) Then
		      Sammeln()
			EndIf

           If(Angriff()) Then
			Angreifen()
		  EndIf


$DL = $DL + 1


WEnd


Func ZeitZumSitzen()
 If TimerDiff($zeit1 >= GUICtrlRead($AbWannSitzen)) Then
         return True
    Else
        return False
    EndIf
EndFunc

Func Sitzen()
	
	ControlSend($windowname, '', '', "c")
	$zeit1 = TimerInit()
    If TimerDiff($zeit4 = GUICtrlRead($WielangeSitzen)) Then ;Das ist der Timer statt das sleep.Muss ich Guictrlread benutzen oder reicht die variable alleine?
	 ControlSend($windowname, '', '', "c")
	 $zeit4 = TimerInit()
EndIf
EndFunc




;ab hier wird wohl unwichtig, aber habs trotzdem hier reingeschrieben falls dort fehler sind.
;--------Sammeln:

Func ZeitZumSammeln()
 If TimerDiff($zeit2 >= GUICtrlRead($WannSammeln)) Then
         return True
    Else
        return False
    EndIf
EndFunc


Func Sammeln()
	ControlSend($windowname, '', '', GUICtrlRead($AufsammelTaste))
	$zeit2 = TimerInit()
	 EndFunc


;--------Angriff:

Func Angriff()
 If TimerDiff($zeit3 <= GUICtrlRead($AbWannSitzen)) Then
         return True
    Else
        return False
    EndIf
EndFunc

Func Angreifen()
	ControlSend($windowname, '', '', "{SPACE}")
	 Sleep(100)
	$zeit3 = TimerInit()
	EndFunc
WiiZocker is offline  
Old 07/18/2010, 17:35   #6
 
elite*gold: 0
Join Date: Jul 2009
Posts: 492
Received Thanks: 126
Hoffe ich darf das Pushen da ich echt nicht weiter komme )=
Sonst kann mir pls wer per PN helfen?
Ich hänge schon eine ewigkeit an diesem doofen fehler, habe 1 Woche lang versucht den fehler selber zu finden was aber leider nicht funktioniert hat-.-

Pls helft mir doch *-*
WiiZocker is offline  
Old 07/18/2010, 18:09   #7
 
Shadow992's Avatar
 
elite*gold: 77
Join Date: May 2008
Posts: 5,430
Received Thanks: 5,878
Quote:
Originally Posted by WiiZocker View Post
Hoffe ich darf das Pushen da ich echt nicht weiter komme )=
Sonst kann mir pls wer per PN helfen?
Ich hänge schon eine ewigkeit an diesem doofen fehler, habe 1 Woche lang versucht den fehler selber zu finden was aber leider nicht funktioniert hat-.-

Pls helft mir doch *-*
What the hell are you doing?
PHP Code:
If TimerDiff($zeit4 GUICtrlRead($WielangeSitzen)) Then 
Diesen Skript-Teil könntest du auch so schreiben:
PHP Code:
$variable=($zeit4 GUICtrlRead($WielangeSitzen))
If 
TimerDiff($variableThen 
Zuerst sagst du AutoIt: "Überprüfe mir mal ob $zeit4 und GUICtrlRead($WielangeSitzen) gleich groß sind".
Wenn die beiden Werte gleich groß sind, liefert AutoIt eine 1 zurück, ansonsten eine 0. Als nächstes sagst du: "Schau mal ob die Differenz von der jetzigen Zeit und der variable [also entweder 1 oder 0] gleich 1 ist".
Und dann wunderst du dich, dass es nicht geht?
So sollte es gehen:
PHP Code:
If TimerDiff($zeit4)>=GUICtrlRead($WielangeSitzenThen 
Musst halt nur noch überall ausbessern, danach sollte er laufen.
Shadow992 is offline  
Thanks
1 User
Old 07/18/2010, 18:25   #8
 
elite*gold: 0
Join Date: Jul 2009
Posts: 492
Received Thanks: 126
Es funktioniert noch immer nicht, habe alles so geändert wie oben, hier mal die Funktionen:
Code:
;---------Sitzen:

Func ZeitZumSitzen()
 If TimerDiff($zeit1) >= GUICtrlRead($AbWannSitzen) Then
         return True
    Else
        return False
    EndIf
EndFunc

Func Sitzen()
	
	ControlSend($windowname, '', '', "c")
	$zeit1 = TimerInit()
	If TimerDiff($zeit4) >= GUICtrlRead($WielangeSitzen) Then  
	 ControlSend($windowname, '', '', "c")
	 $zeit4 = TimerInit()
EndIf
EndFunc


;--------Sammeln:

Func ZeitZumSammeln()
 If TimerDiff($zeit2) >= GUICtrlRead($WannSammeln) Then
         return True
    Else
        return False
    EndIf
EndFunc


Func Sammeln()
	ControlSend($windowname, '', '', GUICtrlRead($AufsammelTaste))
	$zeit2 = TimerInit()
	 EndFunc


;--------Angriff:

Func Angriff()
 If TimerDiff($zeit3) <= GUICtrlRead($AbWannSitzen) Then
         return True
    Else
        return False
    EndIf
EndFunc

Func Angreifen()
	ControlSend($windowname, '', '', "{SPACE}")
	 Sleep(100)
	$zeit3 = TimerInit()
	EndFunc
Habe ich hier vieleicht nochwas falsch? oder liegt es am oberen skript?
WiiZocker is offline  
Old 07/18/2010, 19:35   #9
 
Shadow992's Avatar
 
elite*gold: 77
Join Date: May 2008
Posts: 5,430
Received Thanks: 5,878
Quote:
Originally Posted by WiiZocker View Post
Es funktioniert noch immer nicht, habe alles so geändert wie oben, hier mal die Funktionen:
Code:
;---------Sitzen:

Func ZeitZumSitzen()
 If TimerDiff($zeit1) >= GUICtrlRead($AbWannSitzen) Then
         return True
    Else
        return False
    EndIf
EndFunc

Func Sitzen()
	
	ControlSend($windowname, '', '', "c")
	$zeit1 = TimerInit()
	If TimerDiff($zeit4) >= GUICtrlRead($WielangeSitzen) Then  
	 ControlSend($windowname, '', '', "c")
	 $zeit4 = TimerInit()
EndIf
EndFunc


;--------Sammeln:

Func ZeitZumSammeln()
 If TimerDiff($zeit2) >= GUICtrlRead($WannSammeln) Then
         return True
    Else
        return False
    EndIf
EndFunc


Func Sammeln()
	ControlSend($windowname, '', '', GUICtrlRead($AufsammelTaste))
	$zeit2 = TimerInit()
	 EndFunc


;--------Angriff:

Func Angriff()
 If TimerDiff($zeit3) <= GUICtrlRead($AbWannSitzen) Then
         return True
    Else
        return False
    EndIf
EndFunc

Func Angreifen()
	ControlSend($windowname, '', '', "{SPACE}")
	 Sleep(100)
	$zeit3 = TimerInit()
	EndFunc
Habe ich hier vieleicht nochwas falsch? oder liegt es am oberen skript?
Ich habs jetzt nicht ausprobiert, aber es sollte jetzt klappen.
Ich habe einiges geändert, weil es sonst echt zu unübersichtlich ist.
Hier der Code:
PHP Code:
#RequireAdmin
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <EditConstants.au3>
#include <GUIConstants.au3>

$windowname "NosTale"

;Hauptfenster START
#region ### START Koda GUI section ### Form=C:\Users\Jan\Desktop\AutoIt\Nostale Bot\NosBot vers. 1.2\NosBotfenster.kxf
$NosBotfenster GUICreate("NosBot Vers. 1.2 By WiiZocker"362389192124)
GUISetFont(88000"MS Sans Serif")
$Label1 GUICtrlCreateLabel("NosBot Vers. 1.2 By WiiZocker"561625223)
GUICtrlSetFont(-1118000"MS Reference Sans Serif")
$Benutzen GUICtrlCreateGroup("Was soll benutzt werden?"048177281)
GUICtrlSetFont(-188000"MS Reference Sans Serif")
$ChkSchlafen GUICtrlCreateCheckbox("Schlafen"16969717)
$ChkSammeln GUICtrlCreateCheckbox("Aufsammeln"1613610517)
$ChkSkills GUICtrlCreateCheckbox("Skills benutzen?"1629612917)
$Hinweis1 GUICtrlCreateLabel("X = Wird benutzt"246411219)
GUICtrlCreateGroup("", -99, -9911)
$Einstellungen GUICtrlCreateGroup("Einstellungen"17648185281)
GUICtrlSetFont(-188000"MS Reference Sans Serif")
$BtnSchlafen GUICtrlCreateButton("Schlafen"18488171330)
$BtnSammeln GUICtrlCreateButton("Aufsammeln"184128171330)
$BtnSkills GUICtrlCreateButton("Skills"184288171330)
GUICtrlCreateGroup("", -99, -9911)
$Start GUICtrlCreateButton("START"88336171490)
GUICtrlSetFont(-1108000"MS Reference Sans Serif")
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
;Hauptfenster ENDE


;Hinsetzenfenster START
#region ### START Koda GUI section ### Form=C:\Users\Jan\Desktop\AutoIt\Nostale Bot\NosBot vers. 1.2\Hinsetzenfenster.kxf
$Hinsetzenfenster GUICreate("Hinsetzenfenster"58759191372)
$Sitzen1 GUICtrlCreateLabel("Nach"8164020)
GUICtrlSetFont(-1108000"MS Reference Sans Serif")
$AbWannSitzen GUICtrlCreateInput("10000"48165721)
$Sitzen2 GUICtrlCreateLabel("Millisekunden für"1121612620)
GUICtrlSetFont(-1108000"MS Reference Sans Serif")
$WielangeSitzen GUICtrlCreateInput("20000"240165721)
$Sitzen3 GUICtrlCreateLabel("Millisekunden hinsetzen."3041618220)
GUICtrlSetFont(-1108000"MS Reference Sans Serif")
$Schliessen3 GUICtrlCreateButton("Schließen"488891410)
GUISetState(@SW_HIDE)
#endregion ### END Koda GUI section ###
;Hinsetzenfenster ENDE

;Aufsammelfenster START
#region ### START Koda GUI section ### Form=C:\Users\Jan\Desktop\AutoIt\Nostale Bot\NosBot vers. 1.2\Aufsammelfenster.kxf
$Aufsammelfenster GUICreate("Aufsammeln"50750507275)
$AufsammelLabel1 GUICtrlCreateLabel("Alle"8163120)
GUICtrlSetFont(-1108000"MS Reference Sans Serif")
$WannSammeln GUICtrlCreateInput("2500"40164121)
$AufsammelLabel2 GUICtrlCreateLabel("Millisekunden mit der Taste"881620220)
GUICtrlSetFont(-1108000"MS Reference Sans Serif")
$AufsammelTaste GUICtrlCreateInput("x"296161721)
$AufsammelLabel3 GUICtrlCreateLabel("Aufsammeln."3201610020)
GUICtrlSetFont(-1108000"MS Reference Sans Serif")
$Schliessen2 GUICtrlCreateButton("Schließen"424875330)
GUISetState(@SW_HIDE)
#endregion ### END Koda GUI section ###
;Aufsammelfenster ENDE


;Skillfenster START
#region ### START Koda GUI section ### Form=c:\users\jan\desktop\autoit\nostale bot\nosbot vers. 1.2\skillfenster.kxf
$Skillfenster GUICreate("Skills"282472402227)
$Group1 GUICtrlCreateGroup("Tasten"08137401)
GUICtrlSetFont(-188000"MS Reference Sans Serif")
$Taste0 GUICtrlCreateCheckbox("Taste-0"563927317)
$Taste1 GUICtrlCreateCheckbox("Taste-1"56327317)
$Taste2 GUICtrlCreateCheckbox("Taste-2"56727317)
$Taste3 GUICtrlCreateCheckbox("Taste-3"561127317)
$Taste5 GUICtrlCreateCheckbox("Taste-5"561927317)
$Taste6 GUICtrlCreateCheckbox("Taste-6"562327317)
$Taste4 GUICtrlCreateCheckbox("Taste-4"561527317)
$Taste7 GUICtrlCreateCheckbox("Taste-7"562727317)
$Taste8 GUICtrlCreateCheckbox("Taste-8"563127317)
$Taste9 GUICtrlCreateCheckbox("Taste-9"563527317)
GUICtrlCreateGroup("", -99, -9911)
$Group2 GUICtrlCreateGroup("Zeit"1368145401)
GUICtrlSetFont(-188000"MS Reference Sans Serif")
$Label1 GUICtrlCreateLabel("Alle"144322919)
$Label2 GUICtrlCreateLabel("Millisek"224325319)
$Input1 GUICtrlCreateInput("10000"176324923)
$Label6 GUICtrlCreateLabel("Alle"1442722919)
$Label7 GUICtrlCreateLabel("Alle"1433132919)
$Label10 GUICtrlCreateLabel("Alle"1453502919)
$Label11 GUICtrlCreateLabel("Alle"1433872919)
$Label3 GUICtrlCreateLabel("Alle"1442322919)
$Label4 GUICtrlCreateLabel("Alle"1441922919)
$Label5 GUICtrlCreateLabel("Alle"1441522919)
$Label8 GUICtrlCreateLabel("Alle"1441122919)
$Label9 GUICtrlCreateLabel("Alle"144722919)
$Input2 GUICtrlCreateInput("12000"176724923)
$Input3 GUICtrlCreateInput("14000"1761124923)
$Input4 GUICtrlCreateInput("16000"1761524923)
$Input5 GUICtrlCreateInput("18000"1761924923)
$Input6 GUICtrlCreateInput("20000"1762324923)
$Input7 GUICtrlCreateInput("22000"1762724923)
$Input8 GUICtrlCreateInput("24000"1763124923)
$Input0 GUICtrlCreateInput("28000"1763844923)
$Input9 GUICtrlCreateInput("26000"1763524923)
$Label12 GUICtrlCreateLabel("Millisek"224725319)
$Label13 GUICtrlCreateLabel("Millisek"2241125319)
$Label14 GUICtrlCreateLabel("Millisek"2241525319)
$Label15 GUICtrlCreateLabel("Millisek"2241925319)
$Label16 GUICtrlCreateLabel("Millisek"2242325319)
$Label17 GUICtrlCreateLabel("Millisek"2242725319)
$Label18 GUICtrlCreateLabel("Millisek"2243125319)
$Label19 GUICtrlCreateLabel("Millisek"2243525319)
$Label20 GUICtrlCreateLabel("Millisek"2243845319)
GUICtrlCreateGroup("", -99, -9911)
$Schliessen1 GUICtrlCreateButton("Schließen"56440171250)
$Hinweis2 GUICtrlCreateLabel("X = Wird benutzt"7841712620)
GUICtrlSetFont(-1108000"MS Reference Sans Serif")
GUISetState(@SW_HIDE)
#endregion ### END Koda GUI section ###
;Skillfenster ENDE

While 1
    $nMsg 
GUIGetMsg()
    Switch 
$nMsg
        
Case $GUI_EVENT_CLOSE
            
Exit
        Case 
$BtnSchlafen
            GUISetState
(@SW_SHOW$Hinsetzenfenster)
        Case 
$ChkSchlafen
        
Case $ChkSammeln
        
Case $ChkSkills
        
Case $Schliessen3
            GUISetState
(@SW_HIDE$Hinsetzenfenster)
        Case 
$BtnSammeln
            GUISetState
(@SW_SHOW$Aufsammelfenster)

        Case 
$Schliessen2
            GUISetState
(@SW_HIDE$Aufsammelfenster)
        Case 
$BtnSkills
            GUISetState
(@SW_SHOW$Skillfenster)
        Case 
$Schliessen1
            GUISetState
(@SW_HIDE$Skillfenster)
        Case 
$Start
            $DL 
;durchlauf
            $zeit1 
TimerInit() ;---------Sitzen
            $zeit2 
TimerInit() ;--------Sammeln
            $zeit3 
TimerInit() ;--------Angriff
            $zeit4 
TimerInit()
            While 
1
                
If (ZeitZumSitzen()) Then
                    Sitzen
()
                    
$zeit1 TimerInit()
                EndIf

                If (
ZeitZumSammeln()) Then
                    Sammeln
()
                    
$zeit2 TimerInit()
                EndIf

                If (
Angriff()) Then
                    Angreifen
()
                    
$zeit3 TimerInit()
                EndIf
                
$DL $DL 1
            WEnd
            
;Hauptskript ENDE
    
EndSwitch
WEnd


;---------Sitzen:

Func ZeitZumSitzen()
    If 
TimerDiff($zeit1) >= GUICtrlRead($AbWannSitzenThen
        
Return True
    
Else
        Return 
False
    
EndIf
EndFunc   ;==>ZeitZumSitzen

Func Sitzen
()
    
ControlSend($windowname''''"c")
;~     If 
TimerDiff($zeit4) >= GUICtrlRead($WielangeSitzenThen
    Sleep
(GUICtrlRead($WielangeSitzen))
    
ControlSend($windowname''''"c")
    
$zeit4 TimerInit()
;~     EndIf
EndFunc   ;==>Sitzen


;--------Sammeln:

Func ZeitZumSammeln()
    If 
TimerDiff($zeit2) >= GUICtrlRead($WannSammelnThen
        
Return True
    
Else
        Return 
False
    
EndIf
EndFunc   ;==>ZeitZumSammeln


Func Sammeln
()
    
ControlSend($windowname''''GUICtrlRead($AufsammelTaste))
EndFunc   ;==>Sammeln


;--------Angriff:

Func Angriff()
    If 
TimerDiff($zeit3) >= GUICtrlRead($AbWannSitzenThen
        
Return True
    
Else
        Return 
False
    
EndIf
EndFunc   ;==>Angriff

Func Angreifen
()
    
ControlSend($windowname''''"{SPACE}")
    
Sleep(100)
EndFunc   ;==>Angreifen 
Shadow992 is offline  
Thanks
1 User
Old 07/18/2010, 20:36   #10
 
bladerofdarknes's Avatar
 
elite*gold: 0
Join Date: Mar 2008
Posts: 1,524
Received Thanks: 285
ich mach das zwar auch immer so an den rand mit den guis, aber weil da viele oberflächen verwendet werden und diese alle bündig am rand sind sieht es verwirrend aus mach doch als mal eine durchgehende ;------------------------------------ rein
außerdem brauchste nur das include: #include <GUIConstantsEx.au3>
wieso du #require-admin drinn hast weiß ich auch nicht, du suchst ja nur pixels etc.
bladerofdarknes is offline  
Old 07/18/2010, 22:04   #11
 
elite*gold: 0
Join Date: Jul 2009
Posts: 492
Received Thanks: 126
Ich teste das mal Danke Shadow.
@bladerofdarknes
Wo verwende ich Pixel?

@Shadow:
Hmm, er macht garnichts, ich versuche das problem mal zu finden^^
Mal gucken...
WiiZocker is offline  
Old 07/18/2010, 22:06   #12
 
bladerofdarknes's Avatar
 
elite*gold: 0
Join Date: Mar 2008
Posts: 1,524
Received Thanks: 285
habs nur überflogen
aber bei lvl bot vermute ich mal das du pixelsearch benutzt, denn mit autoit das ohne pixel zu machen is das schwer
bladerofdarknes is offline  
Old 07/18/2010, 23:22   #13
 
elite*gold: 0
Join Date: Jul 2009
Posts: 492
Received Thanks: 126
Nö^^
Muss nur die Tastendrücke simmulieren per controlsend ;D

@Shadow992
Er funktionert jetzt, ich musste wegen dem angreifen das > zu < ändern und wegen dem setzen,sag ich nur LOL.
Der timer(zeit4) zählt ja von anfang an und da er dann schon höher als $WielangeSitzen ist, ist er auch sovort aufgestanden hier die lösung xD:
Code:
Func Sitzen()
    ControlSend($windowname, '', '', "c")
	$zeit4 = TimerInit() ;Das war der fehlende baustein o.O
    If TimerDiff($zeit4) > GUICtrlRead($WielangeSitzen) Then ;;;;;;;;;;
    ControlSend($windowname, '', '', "c")
    $zeit4 = TimerInit()
	EndIf
EndFunc   ;==>Sitzen
WiiZocker is offline  
Old 07/21/2010, 01:13   #14
 
elite*gold: 0
Join Date: Jul 2009
Posts: 492
Received Thanks: 126
Push, weil ich ne neue Frage habe

Ich möchte meinem Bot einbauen das er die HP erkennt, aber wie mache ich das?
Ich verstehe es weder Von Netmax Tutorial,Wiki oder anderem.
Welche Adressen muss der Spieler eingeben?

Die adresse ist klar,dann noch bei wieviel Hp er sich setzen soll und austehen soll.Brauche ich noch irgendwelche daten?
WiiZocker is offline  
Old 07/21/2010, 11:51   #15
 
elite*gold: 0
Join Date: May 2010
Posts: 15
Received Thanks: 1
Also kann ich mal fragen wozu er die Hp erkennen soll?

Ich zock das Game auch und hab da gestern nen Steinbruch Bot erstellt der mit Pixelsearch arbeitet...

Naja was ich sagen will nach ca. 4 Std. intensiver Arbeit mit Pixelsearch würd ich einfach die Hp über den Befehl PixelGetColor erkennen lassen.

->
Code:
While 1
If PixelGetColor(x,y) = 0xff0000 then
Send("{Pott-taste}")
EndIf
WEnd
Wenn du diesen Code verwendest musst du natürlich die x und y Pixeladdresse austauschen und die Farbe. Bei diesem Code würde ich empfehlen den Pixel anzusetzten wenn die Hp gerade rot wird.
Diquachillar is offline  
Reply

Tags
autoit, code, nostale bot, programm, skript fehler




All times are GMT +1. The time now is 12:49.


Powered by vBulletin®
Copyright ©2000 - 2026, 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 ©2026 elitepvpers All Rights Reserved.